-
Notifications
You must be signed in to change notification settings - Fork 156
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
Does Zitadel support generating access_token using client_secret_jwt for the grant type of client_credentials #655
Comments
any progress? Can you confirm that the client_secret_jwt is for the time being not supported? The more complicated private_key_jwt is already supported, why is the easier one, client_secret_jwt is not supported? |
any feedback? it has been over 3 weeks. can your team either confirm it's bug and give a plan for fixing it, or deny it as a feature? |
We already support JWT Profile grant. You are probably doing something wrong.
Please don't push us for free support. Community support is based on the time we have available. |
@muhlemmer I just browsed through the link mentioned by you to this one : token_endpoint that lists 4 types:
As you can see, it doesn't list client_secret_jwt based on the shared secret, that is symmetric key, while, does support asymmetric key private_key_jwt, based on PKI RSA key |
My above observation fits well with your source code : https://github.com/zitadel/oidc/blob/main/pkg/oidc/discovery.go#L152-L156
|
both private_key_jwt and client_secret_jwt are introduced by https://www.rfc-editor.org/rfc/rfc8414.html. Zitadel/oidc is declared as OpenID certified OIDC implementation. I'm just wondering why this client_secret_jwt recommended by RFC8414 is left out by your project? for instance, it's supported by Spring Java web apps, https://docs.spring.io/spring-security/reference/reactive/oauth2/client/client-authentication.html#_authenticate_using_client_secret_jwt, and many Java backends might fail to communicate with your OIDC Provider So what's the rationale for client_secret_jwt is dropped by your oidc project, especially as OpenID certificated OIDC implementation? |
I don't see the term
Spring works fine the the methods we already provide: https://zitadel.com/docs/sdk-examples/java
We do not need to support all types of auth methods and signing algorithms to become certified. All we need to prove is support for
The above is pretty clear on what We do not plan to support symmetric keys at the moment. Because current methods work fine and are widely supported. So adding symmetric keys is an extra maintenance burden we are not interested in. Please consider this discussion closed. |
Preflight Checklist
Describe the docs your are missing or that are wrong
I can find neither documentation nor code example of testing client_credentials with client_secret_jwt to generate access token for machine-to-machine communication without sending the client secret to the authorization server.
I ran https://github.com/zitadel/oidc/blob/3b64e792ed1c01daf6bb3320a8da4ffa346753c2/example/server/main.go as OP and created a Go client that attempts to create access_token with client_secret_jwt.
But in the end, I've got this error message:
Error getting access token: failed to get access token: {"error":"invalid_client"}
I'm looking forward to your confirmation or shed light on how to use Zitadel OIDC for my requested purpose.
Additional Context
No response
The text was updated successfully, but these errors were encountered: