Skip to content
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

Enable direct_post* for x509_san_* without redirect_uri in the authz request #84

Merged
merged 9 commits into from
Feb 1, 2024

Conversation

awoie
Copy link
Contributor

@awoie awoie commented Jan 24, 2024

This PR fixes #83 :

  • added similar language for x509_san_* client ID schemes as we already had for redirect_uri client ID scheme
  • expanded exceptions for direct_post.jwt

@awoie awoie changed the title fix: fixes #83 Enable direct_post* for x509_san_* without redirect_uri in the authz request Jan 24, 2024
@awoie awoie added the bug label Jan 24, 2024
@cobward
Copy link
Contributor

cobward commented Jan 25, 2024

Agree with the sentiment of this PR, but I think there are a couple of problems.

  1. It is missing the nuance of the requirements for those client_id_schemes:

If the Wallet can establish trust in the Client Identifier authenticated through the certificate... If not, the FQDN of the redirect_uri value MUST match the Client Identifier.

  1. It does not remove the restriction on redirect_uri, which no longer serves a purpose.

For this reason I wonder if it is better to amend the restriction in the client_id_scheme definition itself, something like:

If not, the FQDN of the URI where the Wallet submits the response MUST match the Client Identifier, where "the URI where the Wallet submits the response" is redirect_uri or response_uri depending on the response_mode.

I think that wording is bad, but something to that effect?

@awoie
Copy link
Contributor Author

awoie commented Jan 25, 2024

Agree with the sentiment of this PR, but I think there are a couple of problems.

  1. It is missing the nuance of the requirements for those client_id_schemes:

If the Wallet can establish trust in the Client Identifier authenticated through the certificate... If not, the FQDN of the redirect_uri value MUST match the Client Identifier.

Good catch, I can update the PR to say that:

In case the `redirect_uri` is used in conjunction with the `client_identifier`, the `response_uri` MUST be used instead.

That should fix that problem.

  1. It does not remove the restriction on redirect_uri, which no longer serves a purpose.

There is no restriction on the redirect_uri value of the Response URI response parameter in this case. This also applies to client_id_scheme=redirect_uri using direct_post in conjunction with response_uri. Perhaps I misunderstood, what restriction are you missing?

For this reason I wonder if it is better to amend the restriction in the client_id_scheme definition itself, something like:

We already have a similar exception in Response Mode direct_post in that section, so I would like to keep it in the same place.

@awoie
Copy link
Contributor Author

awoie commented Jan 25, 2024

Agree with the sentiment of this PR, but I think there are a couple of problems.

  1. It is missing the nuance of the requirements for those client_id_schemes:

If the Wallet can establish trust in the Client Identifier authenticated through the certificate... If not, the FQDN of the redirect_uri value MUST match the Client Identifier.

Good catch, I can update the PR to say that:

In case the `redirect_uri` is used in conjunction with the `client_identifier`, the `response_uri` MUST be used instead.

That should fix that problem.

  1. It does not remove the restriction on redirect_uri, which no longer serves a purpose.

There is no restriction on the redirect_uri value of the Response URI response parameter in this case. This also applies to client_id_scheme=redirect_uri using direct_post in conjunction with response_uri. Perhaps I misunderstood, what restriction are you missing?

For this reason I wonder if it is better to amend the restriction in the client_id_scheme definition itself, something like:

We already have a similar exception in Response Mode direct_post in that section, so I would like to keep it in the same place.

@cobward I updated the PR, please review again.

Copy link
Contributor

@cobward cobward left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My second point was that this was adding another requirement on top of the existing requirement for matching client_id to request_uri, but your new wording fixes that issue IMO.

openid-4-verifiable-presentations-1_0.md Outdated Show resolved Hide resolved
@tlodderstedt tlodderstedt self-requested a review January 30, 2024 18:43
Copy link
Collaborator

@tlodderstedt tlodderstedt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I support Joseph's proposal.

openid-4-verifiable-presentations-1_0.md Outdated Show resolved Hide resolved
@Sakurann Sakurann removed the bug label Feb 1, 2024
@Sakurann Sakurann merged commit 41d0e33 into main Feb 1, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Enable x509_san_dns for direct_post without redirect_uri
8 participants