[Openid-specs-ab] OpenID Connect Federation updated in preparation for third Implementer’s Draft review

Kristina Yasuda Kristina.Yasuda at microsoft.com
Wed Jun 30 18:33:12 UTC 2021


(Pawel, Roland, excuse me for continuing the SIOP conversation, I am genuinely interested if OpenID Fedenration spec can solve Registration issue in SIOP V2.)

In SIOP model, user can make the final choice of which RP to share the inf with, but they should not be choosing from the list of any RP. They should be choosing from the list of RPs that SIOP SW decided to trust based on RP metadata.

Trusting VC/VP based on cryptographic verifiability is different from trust between the entities exchanging those VC/VP.

Hence, claim requirements is not the only metadata that OP needs to know about RP in SIOP model. SIOP still needs to know id_token_signing_alg_values_supported, subject_identifier_types_supported, etc. (2.2.3. Relying Party Registration Metadata Values section in SIOP), so I think OIDC Federation ES are good candidates for registration in SIOP model, but this does mean more operations for SIOP SW.

Kindest Regards,
²î³öÈË: Openid-specs-ab <openid-specs-ab-bounces at lists.openid.net> ¤¬ David Chadwick via Openid-specs-ab <openid-specs-ab at lists.openid.net> ¤Î´úÀí¤ÇËÍÐÅ
ËÍÐÅÈÕ•r: 2021Äê6ÔÂ30ÈÕ 1:45
ÍðÏÈ: pawel.kowalik at 1und1.de <pawel.kowalik at 1und1.de>
CC: David Chadwick <d.w.chadwick at verifiablecredentials.info>; Artifact Binding/Connect Working Group <openid-specs-ab at lists.openid.net>
¼þÃû: Re: [Openid-specs-ab] OpenID Connect Federation updated in preparation for third Implementer¡¯s Draft review

On 30/06/2021 09:00, Pawel Kowalik wrote:
Hi David,

I think this is where Federation spec sets higher expectations when it comes to assuring RPs identity before releasing the credentials to them.
Leaving it purely up to the user (holder) is the current status quo, but it would be an added value of a federation to offer more security in this respect and protect the holder from malicious RPs.
Even in the real world there are risks involved in showing your ID card to a random person or a company.

Away from SIOP context, in the enterprise usage I see a lot of expectation for OP to only accept vetted RPs.

This is true also in the ISO mDL work. Similarly RPs might wish to only accept credentials from vetted wallets e.g. in banking. So I think different communities are going to place different restrictions on OPs, wallets and RPs that can participate in their eco-system. But the baseline case should be as unrestricted as possible, within legal limitations such as GDRP, to allow any OP to issue any claim to any user who can access any RP. Otherwise how would the public in general be able to use Google and Amazon and any services that they point to.

So I am not against constraints, but they should be optional, and should range from none (in legal limits) to maximal.

Kind regards


Kind Regards,

On Wed, 30 Jun 2021 at 09:44, David Chadwick <d.w.chadwick at verifiablecredentials.info<mailto:d.w.chadwick at verifiablecredentials.info>> wrote:

Hi Pawel

I have not had time to read the federation spec yet. Sorry about that.

The "Beauty" of the VC trust model is that it breaks the link between the OP and RP. The  OP no longer knows who the RP is. Therefore requiring the OP to trust the RP does not enter into the picture. With VCs, the user is put in charge. The user decides which RPs to trust and which RPs to give their VCs to. In the same way that users today decide who to give their plastic cards to, and the card issuer has no control over this, the VC world mirrors real life. Of course this allows unscrupulous RPs to rob a user of their privacy. But in the VC system that we have built, we require the RP to publish its claim requirements in a public repository, and our VC wallet will not release any VCs to any RP that has not done this. We are currently discussing supporting this type of claim reference in the SIOPv2 work. As an alternative to the RP publishing its meta data for federations, in the VC world it would publish its claim requirements in a public repository.

Kind regards


On 30/06/2021 07:38, Pawel Kowalik wrote:
Hi David,

The purpose of RP registration in the federation context is to verify whether the RP is legit part of the federation at all. The assumption is that OP may decide only to accept RPs they can trust based on their respective Entity Statements.
The Automatic Registration allows embedding all of that in one authentication step.

Entity Statements fulfill to a big extent the same function as VCs/VPs, just being a credential issued by federation trust anchor or intermediate towards OPs or RPs. I think it would be worth a while taking a look whether Federation spec would include extensibility elements to allow either ECs or VC/VP for this purpose.

Kind Regards,

On Tue, 29 Jun 2021 at 21:43, David Chadwick via Openid-specs-ab <openid-specs-ab at lists.openid.net<mailto:openid-specs-ab at lists.openid.net>> wrote:

Hi Roland

once SIOP is in use with user wallets, why is client registration needed? I ask this, because when I am using my browser I go to multiple web sites without knowing anything about them first. I might buy something from a RP that I have never visited before. No prior registration of either myself nor the RP is needed.

So why cannot it work in the same way with SIOP and VCs? The only meta data that is needed prior to any user involvement is that the RP has to know the meta data of the VC Issuers that it trusts. The RP has to know the the VC issuer's X.509 PKC and understand the schema of the VCs it will issue, and then we are good to go. The user visits the RP's web site, it sends its claim requirements to the user's SIOP wallet, the user chooses VCs that match this and returns a VP to the RP. The RP then validates PoP and that the VCs were issued by the trusted Issuers. Can you critically appraise this model please.

Kind regards


On 28/06/2021 08:49, Roland Hedberg via Openid-specs-ab wrote:
Hi !

Thanks Torsten for your comments. I¡¯ll start the answer with the design criteria we had:

- So far we¡¯ve seen a small number of federation models. One-to-many (Google's 1 OP, many RPs or Amazon's 1 RP and many OPs) and small to fairly large multi lateral federations like EduGAIN (~4400 OPs and 3300 RPs). All of them based on centralised static registration. In order to allow multi lateral federations to grow in size we think that it¡¯s necessary to move to decentralised dynamic registration (imaging if SIOP takes off).

- One-to-many OIDC federations normally uses dynamic provider info discovery but not dynamic client registration.
Which is not that surprising since classic OIDC client registration in essence is a leap of faith. There is no way you as an OP can
verify that the client metadata is correct. We would like to make client registration more robust and allow OPs to verify
the correctness of the client metadata.

- Federation policies will change over time (like moving from SHA1 to SHA256) we would like to support that and to have built-in
support for policies to change dynamically. Also, having decentralised entity registration we need a way to enforce federation policies.

- OIDC and OAuth2 both have defined APIs for provider info discovery and client registration the federation specification should
work equally well for both.

- The messages pushed around in this specification should not depend on TLS for their protection.

- We should when possible use functionally already present in OIDC libraries (like key handling, signed JWT verifications, JWKS, ..)

- We should only touch the initial OIDC RP<->OP communication phases (provider info discovery and client registration).
Now, this changed during the work of the specification so there now is one use case where we touch the authorization request.

- An entity (OP or RP) should be able to belong to more the one federation.

On 30 May 2021, at 18:38, Torsten Lodderstedt <torsten at lodderstedt.net<mailto:torsten at lodderstedt.net>> wrote:

I think an overview describing and motivating the design concepts and principles would be helpful to readers.

I would also appreciate an explanation why the federation draft design is better suited for the envisioned use cases than X.509 certificates. Deployments need to be convinced to invest into a pretty new solution with a lot of runtime overhead (latency and availability implications!) while X.509 is used for the same/similar (?) applications in the wild. I¡¯m pretty sure there a good arguments ;-).

¡ª Roland

Were it left to me to decide whether we should have a government without newspapers, or newspapers without a government, I should not hesitate a moment to prefer the latter. -Thomas Jefferson, third US president, architect, and author (1743-1826)

Openid-specs-ab mailing list
Openid-specs-ab at lists.openid.net<mailto:Openid-specs-ab at lists.openid.net>

Openid-specs-ab mailing list
Openid-specs-ab at lists.openid.net<mailto:Openid-specs-ab at lists.openid.net>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20210630/047cf796/attachment-0001.html>

More information about the Openid-specs-ab mailing list