- From: Adrian Gropper <agropper@healthurl.com>
- Date: Wed, 14 Jul 2021 18:09:16 -0400
- To: Justin Richer <jricher@mit.edu>
- Cc: Alan Karp <alanhkarp@gmail.com>, Manu Sporny <msporny@digitalbazaar.com>, W3C Credentials CG <public-credentials@w3.org>
- Message-ID: <CANYRo8i1X_ax8mLEy6uhZEWSa9=uO1=v9X_mxBbznF=rTM+Zig@mail.gmail.com>
The scope of the VC-HTTP API spec may still be an obstacle to consensus. Here's a series of statements that might clarify things for some of us: S1 - Data minimization is important for both security and privacy. S2 - An Issuer, acting as a secure resource server for a VC, has an identity-based relationship with the Subject of the VC. S3 - The Subject, authenticates to the Issuer to receive an authorization token to a VC. S4 - Data minimization requires that no further information be shared with the Issuer in order for the Issuer to provide an access token. . In other words, the Issuer SHOULD not know, in advance, anything about the client that will be presenting an authorization token. S5 - Data minimization requires that the authorization token allow for attenuation by the Subject. S6 - The mechanism of attenuation or delegation by the Subject is out of scope for VC-HTTP API. If you take issue with any of these, please let us know. - Adrian On Wed, Jul 14, 2021 at 4:02 PM Justin Richer <jricher@mit.edu> wrote: > I’m saying something separate but related: > > Before you can even think about delegating rights, you have to define the > rights that can be delegated, whether that delegation happens to a piece of > software, to another person, or anything else. > > I think that defining OAuth 2 with client credentials :in this spec: is a > mistake because it allows this very important question to be ignored until > it’s too late and there are already several competing proprietary solutions. > > — Justin > > On Jul 13, 2021, at 11:22 PM, Alan Karp <alanhkarp@gmail.com> wrote: > > As I understand it, RAR is a way to express the desire for an access token > with a subset of the permissions the requester is entitled to, but what if > the client wants to delegate those permissions? It will have to share its > client secret if there's no way to delegate. That's why I say that OAuth 2 > with client credentials and no delegation is a mistake. > > -------------- > Alan Karp > > > On Tue, Jul 13, 2021 at 7:31 PM Justin Richer <jricher@mit.edu> wrote: > >> Agreed, and it's exactly that "limitation of authority" that RAR is set >> to solve in an interoperable way. If we don't solve it here, it's going to >> be solved in a hundred worse ways. >> >> -Justin >> ________________________________________ >> From: Alan Karp [alanhkarp@gmail.com] >> Sent: Tuesday, July 13, 2021 8:58 PM >> To: Manu Sporny >> Cc: W3C Credentials CG >> Subject: Re: VC HTTP API Telecon Minutes for 2021-07-13 >> >> Adrian Gropper: Just to make sure how we are using Client >> Credentials: does that mean there can be no delegation? >> <justin_richer> yes, that's exactly what that means >> ... by the whoever is in control of the credential - whether >> the subject (typically)... >> ... Is this making a statement on the ability to delegate? >> Orie Steele: https://oauth.net/2/grant-types/client-credentials/ >> Manu Sporny: It is saying you cannot delegate if you are using >> OAuth2 Client Credentials, but not saying you can't use another >> protocol than Client Credentials >> >> There is a long history of trying to prevent delegation, SPKI ( >> https://datatracker.ietf.org/doc/html/rfc2692) being the most notable. >> The RFC even says, "but there's nothing to stop someone who wishes to >> delegate against the rules from also loaning out their private key." The >> inability to prevent credential sharing means that blocking delegation >> results in a system that is harder to use, because people must use ad hoc >> mechanisms to share the credentials, and less secure, because people end up >> granting much more authority than they need to. >> >> -------------- >> Alan Karp >> > >
Received on Wednesday, 14 July 2021 22:09:42 UTC