Authorization server discovery. > On Feb 25, 2016, at 8:10 PM, Mike Jones <michael.jo...@microsoft.com> wrote: > > Thanks for your thoughts, Vladimir. I’m increasingly inclined to accept your > suggestion to change the title from “OAuth 2.0 Discovery” to “OAuth 2.0 > Authorization Server Discovery”. While the abstract already makes it clear > that the scope of the document is AS discovery, doing so in the title seems > like it could help clarify things, given that a lot of the discussion seems > to be about resource discovery, which is out of scope of the document. > > I’m not saying that resource discovery isn’t important – it is – but unlike > authorization server discovery, where there’s lots of existing practice, > including using the existing data format for describing OAuth implementations > that aren’t being used with OpenID Connect, there’s no existing practice to > standardize for resource discovery. The time to create a standard for that > seems to be after existing practice has emerged. It *might* or might not use > new metadata values in the AS discovery document, but that’s still to be > determined. The one reason to leave the title as-is is that resource > discovery might end up involving extensions to this metadata format in some > cases. > > I think an analogy to the core OAuth documents RFC 6749 and RFC 6750 applies. > 6749 is about the AS. 6750 is about the RS. The discovery document is > about the AS. We don’t yet have a specification or existing practice for RS > discovery, which would be the 6750 analogy. > > In summary, which title do people prefer? > · “OAuth 2.0 Discovery” > · “OAuth 2.0 Authorization Server Discovery” > > -- Mike > <> > From: OAuth [mailto:oauth-boun...@ietf.org] On Behalf Of Vladimir Dzhuvinov > Sent: Thursday, February 25, 2016 12:59 AM > To: oauth@ietf.org > Subject: Re: [OAUTH-WG] OAuth 2.0 Discovery Location > > In OIDC the discovery doc is of great utility to developers and integrators. > Developers also tend to find it a more accurate and complete description of > how to set up a client for a particular deployment, compared to traditional > online docs, which may be not be up to date, or even missing. Very much like > auto-generated Swagger and JavaDocs. > > Here are some example OIDC discovery docs: > > https://accounts.google.com/.well-known/openid-configuration > <https://accounts.google.com/.well-known/openid-configuration> > > https://www.paypalobjects.com/.well-known/openid-configuration > <https://www.paypalobjects.com/.well-known/openid-configuration> > > https://login.microsoftonline.com/fabrikamb2c.onmicrosoft.com/v2.0/.well-known/openid-configuration > > <https://login.microsoftonline.com/fabrikamb2c.onmicrosoft.com/v2.0/.well-known/openid-configuration> > > > With this discovery document in place setup of identity federation can then > be easily scripted. For example: > > http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc_verify-thumbprint.html > > <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc_verify-thumbprint.html> > > > Now, does that dictate any particular app architecture? My reading of the > spec is that it doesn't, and it shouldn't either. By staying neutral on the > topics of RS discovery and registering RPs with RSs. And how one arrives at > the ".well-known/...". I'm not even sure that resource discovery should be a > topic of this WG. Perhaps to this end, and to prevent confusion that the spec > is trying to do something more, a more specific title would suit it better. > E.g. "AS Discovery". > > Cheers, > > Vladimir > > > > > On 25/02/16 02:25, Phil Hunt (IDM) wrote: > And so does oracle and so does google. Each different. > > So how can an app dictate it then unless we all go to a common architecture? > > Phil > > On Feb 24, 2016, at 16:04, Mike Jones <michael.jo...@microsoft.com> > <mailto:michael.jo...@microsoft.com> wrote: > > Azure defines ways for resource servers to be registered for use with a > client and for clients to dynamically request an access token for use at a > particular resource server. You can call that custom architecture if you > want. It’s well-defined but it’s not currently in the standards realm. I > know that Google has syntax for doing the same, as I’m sure do a lot of other > cloud OAuth deployments, such as Oracle’s. For what it’s worth, the working > group talked about possibly producing a standard version of syntax for making > these kinds of requests during our discussions in Prague (during the Token > Exchange discussion) but nobody has run with this yet. > > In this sense, yes, Azure is an application of the kind we’re talking about. > Azure already does define specific new OAuth 2.0 discovery metadata values > that are used in production. A registry just doesn’t yet exist in which it > can register those that are of general applicability. > > -- Mike > > From: Phil Hunt (IDM) [mailto:phil.h...@oracle.com > <mailto:phil.h...@oracle.com>] > Sent: Wednesday, February 24, 2016 3:52 PM > To: Mike Jones > Cc: <oauth@ietf.org> <mailto:oauth@ietf.org> > Subject: Re: [OAUTH-WG] OAuth 2.0 Discovery Location > > Mike > > Take a look at the assumptions you are making. > > You seem to be assuming application software dictates oauth infrastructure > architecture by suggesting that apps register in iana. > > Would ms azure allow custom arch? > > Phil > > On Feb 24, 2016, at 15:28, Mike Jones <michael.jo...@microsoft.com> > <mailto:michael.jo...@microsoft.com> wrote: > > The UserInfo Endpoint path isn’t fixed and so has to be discovered. > > I agree that for some OAuth profiles, one or more resource servers will have > to be discovered starting from the authorization server. Working group > members have also described wanting to discover authorization servers > starting from resource servers. There isn’t a standard practice for any of > this, which is why it’s intentionally left out of the current specification. > > Once the IANA OAuth Discovery Metadata Registry has been established, which > will happen after the current specification has been approved, it will be > easy for subsequent specifications to document existing practice for > different OAuth profiles and register discovery metadata values supporting > them. Some of those values will likely define ways to discover resource > servers, when applicable. > > But first, we need to finish the existing spec, so that the registry enabling > these extensions gets established in the first place. > > -- Mike > > From: Phil Hunt (IDM) [mailto:phil.h...@oracle.com > <mailto:phil.h...@oracle.com>] > Sent: Wednesday, February 24, 2016 2:13 PM > To: Mike Jones <michael.jo...@microsoft.com> > <mailto:michael.jo...@microsoft.com> > Cc: <oauth@ietf.org> <mailto:oauth@ietf.org> <oauth@ietf.org> > <mailto:oauth@ietf.org> > Subject: Re: [OAUTH-WG] OAuth 2.0 Discovery Location > > Yup. And because there many relations the client mist be able to discover it. > The client does not know if the res server is legit. > > The userinfo is always fix and so u dont need discovery. > > Phil > > On Feb 24, 2016, at 14:05, Mike Jones <michael.jo...@microsoft.com> > <mailto:michael.jo...@microsoft.com> wrote: > > In OpenID Connect, there’s a resource server called the UserInfo Endpoint > that returns claims about the authenticated user as a JSON data structure. > Its location is published in OpenID Connect discovery metadata as the > “userinfo_endpoint” metadata value, which is defined at > http://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata > <http://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata>. > > We didn’t include the UserInfo Endpoint in the generic OAuth discovery spec > since in OAuth, there are lots of possible relationships between > authorization servers and resource servers and they needn’t be one-to-one, as > is being actively discussed by the working group. For instance, see George > Fletcher’s recent contribution. > > Thanks for the good discussion, Phil. > > -- Mike > > From: Phil Hunt (IDM) [mailto:phil.h...@oracle.com > <mailto:phil.h...@oracle.com>] > Sent: Wednesday, February 24, 2016 1:25 PM > To: Mike Jones > Cc: <oauth@ietf.org> <mailto:oauth@ietf.org> > Subject: Re: [OAUTH-WG] OAuth 2.0 Discovery Location > > Where is the profile endpoint (oidc's resource server) published? (For the > non OIDC people on the list). > > Phil > > On Feb 24, 2016, at 13:09, Mike Jones <michael.jo...@microsoft.com> > <mailto:michael.jo...@microsoft.com> wrote: > > To the extent that generic OAuth 2.0 needs to publish some of the same > information as OpenID Connect – which is built on generic OAuth 2.0 – it > makes sense to publish that information using exactly the same syntax, since > that syntax is already in widespread use. That what this draft accomplishes. > > There’s nothing Connect-specific about using metadata response values like: > > "authorization_endpoint": "https://server.example.com/authorize" > <https://server.example.com/authorize>, > "token_endpoint": "https://server.example.com/token" > <https://server.example.com/token>, > "token_endpoint_auth_methods_supported": ["client_secret_basic", > "private_key_jwt"], > "registration_endpoint": "https://server.example.com/register" > <https://server.example.com/register>, > "response_types_supported": ["code", "token"], > "service_documentation": > "http://server.example.com/service_documentation.html" > <http://server.example.com/service_documentation.html>, > > Is there a reason that you would like the syntax for any of these or the > other generally applicable OAuth 2.0 metadata values to be different? I > don’t see any good reason for unnecessary differences to be introduced. > > -- Mike > > From: Phil Hunt (IDM) [mailto:phil.h...@oracle.com > <mailto:phil.h...@oracle.com>] > Sent: Wednesday, February 24, 2016 12:45 PM > To: Anthony Nadalin <tony...@microsoft.com> <mailto:tony...@microsoft.com> > Cc: Mike Jones <michael.jo...@microsoft.com> > <mailto:michael.jo...@microsoft.com>; <oauth@ietf.org> > <mailto:oauth@ietf.org> <oauth@ietf.org> <mailto:oauth@ietf.org> > Subject: Re: [OAUTH-WG] OAuth 2.0 Discovery Location > > Mike > > Publishing on dev pages does not work for software (esp open source) that is > deployed both in enterprises and on PaaS cloud providers. > > The current draft is may codify current OIDC practice and be appropriate for > oidc but it is not ready for generic oauth. There is no generic oauth > experience at this time. > > Phil > > On Feb 24, 2016, at 10:25, Anthony Nadalin <tony...@microsoft.com> > <mailto:tony...@microsoft.com> wrote: > > Sure there is, it is as you have now made it far easier and the security > considerations does not even address this > > From: Mike Jones > Sent: Wednesday, February 24, 2016 10:22 AM > To: Anthony Nadalin <tony...@microsoft.com> <mailto:tony...@microsoft.com> > Cc: <oauth@ietf.org> <mailto:oauth@ietf.org> <oauth@ietf.org> > <mailto:oauth@ietf.org> > Subject: RE: [OAUTH-WG] OAuth 2.0 Discovery Location > > As we’d discussed in person, there’s no effective security difference between > discovery information being published in an ad-hoc fashion on developer pages > and it being published in a standard format. “Security by obscurity” adds no > real security at all. > > -- Mike > > From: Anthony Nadalin > Sent: Wednesday, February 24, 2016 10:01 AM > To: Mike Jones <michael.jo...@microsoft.com> > <mailto:michael.jo...@microsoft.com>; Phil Hunt (IDM) <phil.h...@oracle.com> > <mailto:phil.h...@oracle.com>; Nat Sakimura <sakim...@gmail.com> > <mailto:sakim...@gmail.com> > Cc: <oauth@ietf.org> <mailto:oauth@ietf.org> <oauth@ietf.org> > <mailto:oauth@ietf.org> > Subject: RE: [OAUTH-WG] OAuth 2.0 Discovery Location > > The point of the WGLC is to finish standardizing the core discovery > functionality that’s already widely deployed. > > That may be widely deployed for OIDC but not widely deployed for OAuth. There > are some authentication mechanism discovery for endpoint that really should > not be in an OAuth standard since it’s really not dealt with. Now that all > this information is available it makes poking around the endpoint more > focused for people that want to disrupt your endpoints, that is really not > addressed in the security considerations section at all > > From: OAuth [mailto:oauth-boun...@ietf.org <mailto:oauth-boun...@ietf.org>] > On Behalf Of Mike Jones > Sent: Wednesday, February 24, 2016 9:54 AM > To: Phil Hunt (IDM) <phil.h...@oracle.com> <mailto:phil.h...@oracle.com>; Nat > Sakimura <sakim...@gmail.com> <mailto:sakim...@gmail.com> > Cc: <oauth@ietf.org> <mailto:oauth@ietf.org> <oauth@ietf.org> > <mailto:oauth@ietf.org> > Subject: Re: [OAUTH-WG] OAuth 2.0 Discovery Location > > The point of the WGLC is to finish standardizing the core discovery > functionality that’s already widely deployed. > > None of Nat or John or I are suggesting that additional related functionality > won’t be created. I’m sure it will be. Some applications will use WebFinger > to locate the discovery metadata. Some will possibly use link headers. Some > will possibly use application-specific .well-known values. I’m sure there’s > other things I haven’t even thought about. All of these depend upon having a > discovery metadata document format and none of them change it – other than > possibly to register additional discovery metadata values. > > So by all means, the working group should continue discussing inventing > possible new related mechanisms that make sense in some contexts. At the > same time, we can finish standardizing the already widely deployed core > functionality that all of these mechanisms will need. > > -- Mike > > From: OAuth [mailto:oauth-boun...@ietf.org <mailto:oauth-boun...@ietf.org>] > On Behalf Of Phil Hunt (IDM) > Sent: Wednesday, February 24, 2016 8:39 AM > To: Nat Sakimura <sakim...@gmail.com> <mailto:sakim...@gmail.com> > Cc: <oauth@ietf.org> <mailto:oauth@ietf.org> <oauth@ietf.org> > <mailto:oauth@ietf.org> > Subject: Re: [OAUTH-WG] OAuth 2.0 Discovery Location > > I am suggesting that part of the discovery solution has to be the client > indicating what resource endpoint it wants the oauth configuration data for. > > So if res.example.evil.com is not a valid resource endpoint for > as.example.com the authz discovery should fail in some way (eg return > nothing). > > There may be better ways to do this. Eg combine discovery. Or change the > order of discovery. > > One of OAuth's strength's and weaknesses is that the target of authorization > (the resource) is never specified. It is often bound up in the client > registration and an often implied 1:1 relationship between resource and as. > Given that in discovery phase registration has not yet occurred it seems > important that the client know it has a valid combination of endpoints etc. > > This is why I was disappointed about wglc on discovery. We had a starting > point for group adoption but we haven't really defined the full requirements > IMO. > > I am on vacation or I would put some thought into some draft changes or a new > draft. I apologize I can't do it now. > > Phil > > On Feb 24, 2016, at 08:12, Nat Sakimura <sakim...@gmail.com> > <mailto:sakim...@gmail.com> wrote: > > Hi Phil, > > Are you suggesting that the AS metadata should include the RS URIs? > Currently, it does not, but it can be done, I guess. > > The way oauth-meta works is that > > 1. RS tells the client where the AS is. > 2. AS tells the client which RS endpoints the token can be used. > > Even if there is a bad AS with a valid certs that proxies to the good RS, the > client will not send the token there as the authz server will say that is not > the place the client may want to send the token to. > > Nat > > 2016年2月24日(水) 23:59 Phil Hunt <phil.h...@oracle.com> > <mailto:phil.h...@oracle.com>: > Nat, > > I’m not sure that having the resource server tell the client where its > authorization server is secure by itself. The relationship between the > Authorization Server and the Resource server need to be bound together in one > of the discovery endpoints (the resource and/or the oauth service discovery). > > If a client discovers a fake resource server that is proxying for a real > resource server the current discovery spec will not lead the client to > understand it has the wrong resource server. Rather the fake resource service > will just have a fake discovery service. The hacker can now intercept > resource payload as well as tokens because they were able to convince the > client to use the legit authorization service but use the token against the > hackers proxy. > > The OAuth Discovery service needs to confirm to the client that the server is > able to issue tokens for a stated resource endpoint. > > This not only works in normal OAuth but should add security even to UMA > situations. > > Phil > > @independentid > www.independentid.com <http://www.independentid.com/> > phil.h...@oracle.com <mailto:phil.h...@oracle.com> > > > > > > On Feb 24, 2016, at 3:54 AM, Nat Sakimura <sakim...@gmail.com> > <mailto:sakim...@gmail.com> wrote: > > > Hi Thomas, > > inline: > > 2016年2月22日(月) 18:44 Thomas Broyer <t.bro...@gmail.com> > <mailto:t.bro...@gmail.com>: > Couldn't the document only describe the metadata? > I quite like the idea of draft-sakimura-oauth-meta if you really want to do > discovery, and leave it open to implementers / to other specs to define a > .well-known URL for "auto-configuration". > The metadata described here would then either be used as-is, at any URL, > returned as draft-sakimura-oauth-meta metadata at the RS; or as a basis for > other metadata specs (like OpenID Connect). > With draft-sakimura-oauth-meta's "duri" and the "scope" attribute of > WWW-Authenticate response header, you have everything you need to proceed > > Yup. That's one of the requirements to be RESTful, is it not? > > In OAuth's case, the resource and the authorization server are usually > tightly coupled. (Otherwise, you need another specs like UMA.) > So, the resource server should be able to tell either the location of the > authz endpoint. In some trusted environment, the resource may as well return > the location of the authz server configuration data. In these cases, you do > not have to decide on what .well-known uri as you say. This frees up > developers from configuration file location collisions etc. We should strive > not to pollute the uri space as much as possible. > > (well, except if there are several ASs each with different scopes; sounds > like an edge-case to me though; maybe RFC6750 should instead be updated with > such a parameter such that an RS could return several WWW-Authenticate: > Bearer, each with its own "scope" and "duri" value?) > > Yeah, I guess it is an edge case. I would rather like to see these authz > servers to develop a trust framework under which they can agree on a single > set of common scope parameter values. > > Cheers, > > Nat > > > > On Fri, Feb 19, 2016 at 10:59 PM Justin Richer <jric...@mit.edu> > <mailto:jric...@mit.edu> wrote: > The newly-trimmed OAuth Discovery document is helpful and moving in the right > direction. It does, however, still have too many vestiges of its OpenID > Connect origins. One issue in particular still really bothers me: the use of > “/.well-known/openid-configuration” in the discovery portion. Is this an > OAuth discovery document, or an OpenID Connect one? There is absolutely no > compelling reason to tie the URL to the OIDC discovery mechanism. > > I propose that we use “/.well-known/oauth-authorization-server” as the > default discovery location, and state that the document MAY also be reachable > from “/.well-known/openid-configuration” if the server also provides OpenID > Connect on the same domain. Other applications SHOULD use the same parameter > names to describe OAuth endpoints and functions inside their service-specific > discovery document. > > — Justin > _______________________________________________ > OAuth mailing list > OAuth@ietf.org <mailto:OAuth@ietf.org> > https://www.ietf.org/mailman/listinfo/oauth > <https://www.ietf.org/mailman/listinfo/oauth> > _______________________________________________ > OAuth mailing list > OAuth@ietf.org <mailto:OAuth@ietf.org> > https://www.ietf.org/mailman/listinfo/oauth > <https://www.ietf.org/mailman/listinfo/oauth> > _______________________________________________ > OAuth mailing list > OAuth@ietf.org <mailto:OAuth@ietf.org> > https://www.ietf.org/mailman/listinfo/oauth > <https://www.ietf.org/mailman/listinfo/oauth> > > _______________________________________________ > OAuth mailing list > OAuth@ietf.org <mailto:OAuth@ietf.org> > https://www.ietf.org/mailman/listinfo/oauth > <https://www.ietf.org/mailman/listinfo/oauth> > > > > > _______________________________________________ > OAuth mailing list > OAuth@ietf.org <mailto:OAuth@ietf.org> > https://www.ietf.org/mailman/listinfo/oauth > <https://www.ietf.org/mailman/listinfo/oauth> > > > -- > Vladimir Dzhuvinov :: vladi...@connect2id.com > <mailto:vladi...@connect2id.com>_______________________________________________ > OAuth mailing list > OAuth@ietf.org > https://www.ietf.org/mailman/listinfo/oauth
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ OAuth mailing list OAuth@ietf.org https://www.ietf.org/mailman/listinfo/oauth