-
Notifications
You must be signed in to change notification settings - Fork 14
Adjust and simplify policy operator combinations #177
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adjust and simplify policy operator combinations #177
Conversation
…dual and merged metadata parameter policies (issue openid#129)
|
There is an error in the image: The "new" table states the check for The spec text is fine. |
@zachmann Thanks for spotting this, I fixed the table. |
|
Please, ignore this PR for the time being. I had a chat with Roland and we also want to investigate an alternative change where in combinations of the |
|
For value+superset_of in the Combination checks table, the text should be: |
|
@rohe Fixed the table to mark the add + superset_of combination as unconditional (green). |
@rohe Fixed that table cell too, thanks! |
selfissued
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are test vectors for this at https://connect2id.com/blog/metadata-policy-test-vectors-openid-federation
Addresses issues #11 , #129 , #180.
The chief aim of this PR is to make it easier for architects to devise metadata policies in federations with multiple Trust Anchors or federations with complex topologies. In a single-anchored federation the current, limited operator combinations were okay, because one can simply lookup the policies of the Superior(s) and tweak the local policy where necessary. When dealing with multiple Trust Anchors the limited combinations become a problem. This PR fixes that. It also fixes the
value+essentialcombination, which current spec may lead to policy conflict (#180).This PR incorporates the contributions of @zachmann from PRs #111 and #112 (thanks!), with slight edits , plus several additional combination changes.
The proposed combinations were implemented in the Nimbus OIDC / OAuth SDK and were tested, including tests against a suite of several thousand generated test vectors: https://connect2id.com/blog/metadata-policy-test-vectors-openid-federation
The proposed combinations changes + fix, as a table:
The combinations in draft 41, for comparison. Notice that the updated version has more green or yellow squares for policies to "land", as it covers all logical combinations.
This PR also tightens the language in a few places.