/oauth/token
or /oauth/par
to verify a client’s identity against the or OpenID provider. With Private Key JWT Client Authentication, a signed client assertion JWT is passed to the OpenID provider instead of a client secret.
The client assertion JWT contains the following claims:
aud
() identifying the OpenID provider’s .jti
(JWT ID) to enable one-time use or replay protection.exp
(expiration time) that limits the token’s validity window.sub
and iss
identifying the .token_endpoint_auth_method=private_key_jwt
through either your Auth0 Dashboard or the Management API. To learn more, review the Configure Private Key JWT Client Authentication section.current
set, while the other set is labeled as next
to support key rotation.current
public key and upload the file to the Authorization Server, or:jwks_uri
to the Authorization Server.current
private key.
client_id
.
jwks_uri
was provided; otherwise, the server identifies the public key registered in step 2.
jwks_uri
was requested, Auth0 returns the public keys as JWKS.
current
public key, identified by kid
in the header of the client_assertion
JWT.
private_key_jwt
as a client authentication method in its metadata, you will not be able to set up Private Key JWT Client Authentication through the Auth0 Dashboard.connection.options
properties set appropriately:Property | Description |
---|---|
type | Set this property to back_channel . |
token_endpoint_auth_method | Set this property to private_key_jwt . Notes:
|
token_endpoint_auth_signing_alg | Set this property to RS256 . Notes:
|
Auth0 Dashboard
Management API
read:connections_keys
scope.Public JWKS URI
Auth0 Dashboard
Management API
create:connections_keys
and update:connections_keys
scopes.current
and next
keypair is generated. A key is only marked as previous
after rotation occurs.When rotating signing keys, the following changes occur:current
key is removed and revoked, and any JWTs signed with this key will fail verification with the IdP if the IdP was configured with the jwks_uri
.current
key is assigned the previous
status.next
key becomes the active key and is given the current
status. Going forward, client assertion JWTs will be signed with this key.next
status.