<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, May 28, 2015 at 6:24 AM, Ryan Kelly <span dir="ltr"><<a href="mailto:rfkelly@mozilla.com" target="_blank">rfkelly@mozilla.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br></span>Heh, this suggestion may come as a surprise to folks on this list.<br>
<br>
The context here is that to get an OAuth token, you must currently:<br>
<br>
 1) Get a sessionToken with the auth-server<br>
 2) Use it to sign a BrowserID identity certificate<br>
 3) Use that to generate a BrowserID identity assertion<br>
 4) Give that to the oauth-server to get an OAuth token<br>
<br>
But we have no plans to use BrowserID assertions in any new work going<br>
forward.  We need them in sync for legacy reasons, but all new<br>
FxA-attached services will be using OAuth and OAuth only.<br>
<br>
So it sure would be nice if you could go session token => OAuth token<br>
directly and cut out the middleman...<br></blockquote><div><br></div><div>As I was reading through the sequence of token bearing, I asked myself the same thing I've asked many times "why are BrowserID assertions even a part of this process?" What is the legacy reason that Sync needs them?<br><br></div><div><br></div><div><br><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Hypothetically, it might mean that the auth-server could grow a /oauth<br>
endpoint under which we expose the current oauth-server API,<br>
authenticated with session tokens rather than assertions.<br>
<br>
Note that we've no plans to actually go ahead with this, it's just an<br>
architectural musing.  I'd be interested in everyone's high-level<br>
reaction to the suggestion.<br></blockquote><div><br></div><div><br>Remove the steps that aren't strictly necessary. If BrowserID assertions are only needed for Sync, why not only generate them for Sync? For users not signing in to Sync, we would be able to remove several steps/XHR requests, possibly giving the user a marginally quicker experience once they click "Sign in".<br><br></div><div>Shane<br></div></div><br></div></div>