Subject: Re: [Ace] "default value" for authz-info endpoint

From: Seitz Ludwig <[email-masked]>
Date: Mon, 1 Jun 2020 09:13:13 +0000

Hi Ben,

I had a look at the well-known URI list at IANA and it seems that for vanilla OAuth 2.0 endpoints (authorization, token, introspect) there are no well-known URI:s either. What exists is an URI used by the authorization server to self-describe (including attributes giving the values of the endpoint's URIs).

So my interpretation would be that instead of defining a well-known URI for authz-info, we need to define an attribute that a Resource Server can include in its well-known information to identify the authz-info endpoint URI it is exposing. 

@Carsten (or other core experts): Would it make sense to define a new attribute in the /.well-known/core format for Resource Servers using coap?

/Ludwig

-----Original Message-----
From: Ace <[email-masked]> On Behalf Of Benjamin Kaduk
Sent: den 31 maj 2020 00:36
To: [email-masked]
Subject: [Ace] "default value" for authz-info endpoint

Hi all,

I was prompted by the discussion at the interim to look more closely at what we say about the "default name" for endpoint URIs, e.g., the authz-info endpoint.  The last paragraph of
https://tools.ietf.org/html/draft-ietf-ace-oauth-authz-33#section-5.8.1
says:

   The default name of this endpoint in an url-path is '/authz-info',
   however implementations are not required to use this name and can
   define their own instead.

I've gotten advice from some URI experts that this doesn't give an easy/discoverable path (pun intended) to using a non-default value, which is problematic from the perspective of BCP 190 (and we should expect to get discussed at IESG evaluation time).  This sort of issue goes away if we allocate a well-known URI for authz-info from https://www.iana.org/assignments/well-known-uris/well-known-uris.xhtml and have that be the default.  In particular, that wouldn't actually stop any deployments from using /authz-info, but it does mean they'd have to knowingly "opt in" to doing so.

What do people think?

Thanks,

Ben

_______________________________________________
Ace mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/ace

---

From: Carsten Bormann <[email-masked]>
Date: Mon, 1 Jun 2020 16:51:34 +0200

> @Carsten (or other core experts): Would it make sense to define a new attribute in the /.well-known/core format for Resource Servers using coap?

It would probably not be an attribute but a link relation and/or a resource type.

I would expect the authz-info resource would usually be the same for an entire server?
This might argue for the “hosts” link relationship and an rt= registration.

Registry:
Resource Type (rt=) Link Target Attribute Values
in
Constrained RESTful Environments (CoRE) Parameters

If the authz-info is often different for each resource, a link from the resource to the authz-info with an appropriate link relation would work best.

Registry:
Link Relations

Grüße, Carsten

---

From: Jim Schaad <[email-masked]>
Date: Mon, 1 Jun 2020 15:38:42 -0700

We should make sure to keep draft-tiloca-core-oscore-directory in mind for this.  It has a relation link defined for the Authorization server.

Jim

-----Original Message-----
From: Ace <[email-masked]> On Behalf Of Carsten Bormann
Sent: Monday, June 1, 2020 7:52 AM
To: Seitz Ludwig <[email-masked]>
Cc: Benjamin Kaduk <[email-masked]>; [email-masked]
Subject: Re: [Ace] "default value" for authz-info endpoint

Registry:
Resource Type (rt=) Link Target Attribute Values in Constrained RESTful Environments (CoRE) Parameters

Registry:
Link Relations

Grüße, Carsten

> I was prompted by the discussion at the interim to look more closely 
> at what we say about the "default name" for endpoint URIs, e.g., the 
> authz-info endpoint.  The last paragraph of

---

From: Benjamin Kaduk <[email-masked]>
Date: Mon, 1 Jun 2020 16:58:43 -0700

Hi Ludwig,

I'm confident that a well-known URI (or link relation) for discovery of RS
configuration/parameters would address the BCP 190 concerns.  What we need
is an obvious path to not stomp on the server owner's namespace, and
whether we do that by letting the server tell us what what path to use or
by constraining ourself to a well-specified cordoned-off corner reserved
for our use is up to us.

Thanks for all the ideas and follow-up discussion!

-Ben

---

From: Tomas Gustavsson <[email-masked]>
Date: Tue, 2 Jun 2020 07:19:22 +0200

Hi,

In most cases where I've been involved with implementing a single RFC
defined .well-known URL for actually servicing all end points, it ends
up being one .well-known for default configuration, and multiple other
(not .well-known) URLs in order to handle other configurations in
multi-tennant scenarios.
I hope whatever .well-known scheme is selected will handle
multi-tennancy, where thare can be differently configured service end
points servicing from the same host/ip.
I.e. can one host server multiple authz-info? (does that make sense?)

Regards,
Tomas

---

From: Seitz Ludwig <[email-masked]>
Date: Tue, 2 Jun 2020 10:08:58 +0000

Hi Tomas,

Thank you for your comment. 
Some observations and questions: 
I have a hard time seeing a reasonable use case where a resource server (RS) would need several authz-info endpoints, one could however imagine a use case with a powerful server hosting several virtual resource servers (RS) under the same IP address and thus several different authz-info endpoints (one for each RS), but this does not sound like the typical Constrained Environment scenario to me. 
In order to better understand what this is about: If you have such a multi-tenant situation with a  .well-known for a default configuration, how would clients discover the non-default configurations? 
Also if a RS were to use the default URI (which is <hostname>/authz-info), why would it need to announce this in a .well-known? I would assume that this is only necessary if a non-default URI is used.

@ACE: This is far away from my area of expertise and at this point I cannot devote the necessary time to "read up" on this. Can someone help us find a good solution that that we can move draft-ietf-oauth-authz forward?

/Ludwig

-----Original Message-----
From: Ace <[email-masked]> On Behalf Of Tomas Gustavsson
Sent: den 2 juni 2020 07:19
To: [email-masked]
Subject: Re: [Ace] "default value" for authz-info endpoint

Hi,

In most cases where I've been involved with implementing a single RFC defined .well-known URL for actually servicing all end points, it ends up being one .well-known for default configuration, and multiple other (not .well-known) URLs in order to handle other configurations in multi-tennant scenarios.
I hope whatever .well-known scheme is selected will handle multi-tennancy, where thare can be differently configured service end points servicing from the same host/ip.
I.e. can one host server multiple authz-info? (does that make sense?)

Regards,
Tomas

On 2020-06-02 01:58, Benjamin Kaduk wrote:
> Hi Ludwig,
> 
> I'm confident that a well-known URI (or link relation) for discovery 
> of RS configuration/parameters would address the BCP 190 concerns.  
> What we need is an obvious path to not stomp on the server owner's 
> namespace, and whether we do that by letting the server tell us what 
> what path to use or by constraining ourself to a well-specified 
> cordoned-off corner reserved for our use is up to us.
>