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

client_secret_jwt support at token endpoint #1355

Open
g7ed6e opened this issue May 17, 2023 · 1 comment
Open

client_secret_jwt support at token endpoint #1355

g7ed6e opened this issue May 17, 2023 · 1 comment

Comments

@g7ed6e
Copy link

g7ed6e commented May 17, 2023

Which version of Duende IdentityServer are you using?

6.2.*

Describe the bug

N/A

Additional context

The client authentication mechanism client_secret_jwt is not supported. please see OpenIdConnect Core - Client Authentication.

The JwtBearerClientAssertionSecretParser already support the parsing of the client assertion but it looks like it assumes that the authentication method can only be private_key_jwt.
There is no ISecretValidator that support client_secret_jwt authentication method.

A workaround is to register a custom ISecretValidator and register it in DI but the discovery document is not impacted.

@josephdecock
Copy link
Member

Hi, thanks for getting in touch. We'll consider this feature request for a future release. In the meantime, your workaround seems like a reasonable approach. The discovery document's token_endpoint_auth_methods_supported property is built by the ISecretsListParser.GetAvailableAuthenticationMethods method, which by default builds the list based on the registered ISecretParsers, as well as looking at mTLS settings. You could customize that method to change the discovery document. Another option to explore is to possibly implement the ISecretParser for client_secret_jwt, but it's not immediately obvious to me how you would distinguish client secret jwts vs private key jwts. Probably the simplest thing is to just customzie GetAvailableAuthenticationMethods.

@brockallen brockallen transferred this issue from DuendeSoftware/Support Jun 29, 2023
@brockallen brockallen added this to the Future milestone Jun 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants