You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Also reading the spec I think client_id should always be present and it's also included in the private_key_jwt (client_assertion/client_assertion_type) example of the spec:
Currently it's only possible to either specify the
clientId
or useclientAssertion
/clientAssertionType
.However some provider require the use of
clientId
together withclientAssertion
/clientAssertionType
e.g. Microsoft requires a
clientId
if the certificate credential is used see: https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-auth-code-flow#request-an-access-token-with-a-certificate-credentialand I think also keycloak requires clientId always to be present:
https://github.com/keycloak/keycloak/blob/5387aef0fa727ea5cae4816f682ec72798fabaa4/services/src/main/java/org/keycloak/protocol/oidc/endpoints/request/AuthorizationEndpointRequestParserProcessor.java#L119-L123
The code responsible for it is in:
vertx-auth/vertx-auth-oauth2/src/main/java/io/vertx/ext/auth/oauth2/impl/OAuth2API.java
Lines 184 to 194 in be97446
I guess this could be relaxed to only check if clientSecret is null and allow both
clientId
andclientAssertion
/clientAssertionType
.Happy to provide a PR for this.
The text was updated successfully, but these errors were encountered: