This is really fantastic news. Thank you for sharing that John. I’m a lot more optimistic about timely adoption.
Aloha, -- Jim Manico @Manicode Secure Coding Education +1 (808) 652-3805 > On May 18, 2018, at 12:53 PM, John Bradley <ve7...@ve7jtb.com> wrote: > > Token binding was just approved by the IESG (one more editorial pass to > include some non normative input then on to the RFC editor) . > > It is enabled by default for Edge and IE on win 10. It is configurable on > Chrome but currently defaulted to off. > I expect that to change in the near future. > > Mozilla could use more resources so they can prioritize it. > > Safari is of course anyone’s guess. > > I don’t expect it to be years before it deployed widely enough to support. > > John B. > > Sent from Mail for Windows 10 > > From: Jim Manico > Sent: Friday, May 18, 2018 6:43 PM > To: John Bradley > Cc: David Waite; Hannes Tschofenig; Brock Allen; oauth@ietf.org > Subject: Re: [OAUTH-WG] is updated guidance needed for JS/SPA apps? > > A few notes: > > > The session cookie should also be flagged as http only to protect it. > > This provides no real protection. If I get XSS into your site I don’t need to > steal the cookie. I can just force requests that will automatically send it > (client side or stored request forgery). So while it’s a standard suggestion, > it helps little. > > > Having a refresh token in local storrage may introduce new security issues > > unless it is token bound. > > Token binding is not live yet, right? If you need to store a token in a > browser please note there is no safe place to store it. LocalStorage can be > harvested by XSS and even the strongest cookies can be replayed as discussed > above. I can’t wait for browser based token binding! But it will likely take > years for this to be avail in the majority of browsers. > > > Understanding the security issues of the code flow in the browser is > > important, before any new recommendation. > > Well said. It looks to be the only secure workflow for browser based apps. > Love it how passwords are kept away from RP’s and high powered tokens are not > stored in the browser. > > Aloha, > -- > Jim Manico > @Manicode > Secure Coding Education > +1 (808) 652-3805 > > On May 18, 2018, at 12:27 PM, John Bradley <ve7...@ve7jtb.com> wrote: > > Yes that was the original intent to have the AT be short lived and refresh > the AT via the authorization endpoint based on the session cookie. > > The session cookie should also be flagged as http only to protect it. > > Having a refresh token in local storrage may introduce new security issues > unless it is token bound. > > Understanding the security issues of the code flow in the browser is > important, before any new recommendation. > > John B. > > From: Brock Allen > Sent: Friday, May 18, 2:46 PM > Subject: Re: [OAUTH-WG] is updated guidance needed for JS/SPA apps? > To: David Waite, Hannes Tschofenig > Cc: oauth@ietf.org > > > One thing I maybe should have listed in the pros/cons in my original email is > session management and token lifetime considerations, keeping in mind the > original intent of the implicit flow. > > What I mean is that with implicit grant type, the client's ability to get new > access tokens is limited to the user's session at the AS/OP. Obviously other > flows make more sense to obtain longer lived access (via refresh tokens), but > I don't know about a browser-based JS app. In a sense there's a bit of > protection for the end user built into that design by virtue of being tied to > the user's cookie at the AS/OP. > > Just throwing that out as an additional discussion point. > > -Brock > > On 5/18/2018 6:04:47 AM, David Waite <da...@alkaline-solutions.com> wrote: > I have written some guidance already (in non-RFC format) on preferring code > for single page apps, and other security practices (CORS, CSP). From the AS > point of view, it aligns well with the native apps BCP. There are benefits of > thinking about native and SPA apps just as ‘public clients’ from a > policy/properties point of view. It also greatly simplifies OAuth/OIDC > support on both the AS administrator and client developer side when > converting web properties into native apps using technologies like Electron > or Cordova. > > For the later requirements in the list around token policy, I am not sure > these are requirements for single page apps per se. I don’t believe the need > for a policy using short-lived refresh tokens, revoking at signout, or use of > the revocation endpoint are different from browser and native applications. > Rather they seem to be a function of usage patterns that an AS may need to > support, and we happen to sometimes associate those usage patterns with > typical usage of native apps vs of browser apps. For example, browser login > on a borrowed device can easily leak over to being app authorization - the > authentication/authorization are web-based processes to achieve SSO. > > I have been working on some guidance here around token lifetimes and > policies, but I don’t know whether that brings in too much AS/OP business > logic (and, likely implied product/deployment features) to be industry > practices. > > -DW > > On May 17, 2018, at 10:23 AM, Hannes Tschofenig <hannes.tschofe...@arm.com> > wrote: > > Hi Brock, > > there have been several attempts to start writing some guidance but so far we > haven’t gotten too far. > IMHO it would be great to have a document. > > Ciao > Hannes > > From: OAuth [mailto:oauth-boun...@ietf.org] On Behalf Of Brock Allen > Sent: 17 May 2018 14:57 > To: oauth@ietf.org > Subject: [OAUTH-WG] is updated guidance needed for JS/SPA apps? > > Much like updated guidance was provided with the "OAuth2 for native apps" > RFC, should there be one for "browser-based client-side JS apps"? I ask > because google is actively discouraging the use of implicit flow: > > https://github.com/openid/AppAuth-JS/issues/59#issuecomment-389639290 > > >From what I can tell, the complaints with implicit are: > * access token in URL > * access token in browser history > * iframe complexity when using prompt=none to "refresh" access tokens > > But this requires: > * AS/OP to support PKCE > * AS/OP to support CORS > * user-agent must support CORS > * AS/OP to maintain short-lived refresh tokens > * AS/OP must aggressively revoke refresh tokens at user signout (which is not > something OAuth2 "knows" about) > * if the above point can't work, then client must proactively use revocation > endpoint if/when user triggers logout > > Any use in discussing this? > > -Brock > > IMPORTANT NOTICE: The contents of this email and any attachments are > confidential and may also be privileged. If you are not the intended > recipient, please notify the sender immediately and do not disclose the > contents to any other person, use it for any purpose, or store or copy the > information in any medium. Thank you. > _______________________________________________ > OAuth mailing list > OAuth@ietf.org > https://www.ietf.org/mailman/listinfo/oauth > > > > _______________________________________________ > OAuth mailing list > OAuth@ietf.org > https://www.ietf.org/mailman/listinfo/oauth >
_______________________________________________ OAuth mailing list OAuth@ietf.org https://www.ietf.org/mailman/listinfo/oauth