Class ClientAuthenticationVerifier<T>
java.lang.Object
com.nimbusds.oauth2.sdk.auth.verifier.ClientAuthenticationVerifier<T>
Client authentication verifier.
Related specifications:
- OAuth 2.0 (RFC 6749), sections 2.3.1 and 3.2.1.
- OpenID Connect Core 1.0, section 9.
- JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants (RFC 7523).
- OAuth 2.0 Mutual TLS Client Authentication and Certificate Bound Access Tokens (RFC 8705), section 2.
-
Constructor Summary
ConstructorsConstructorDescriptionClientAuthenticationVerifier
(ClientCredentialsSelector<T> clientCredentialsSelector, ClientX509CertificateBindingVerifier<T> certBindingVerifier, Set<Audience> expectedAudience) Deprecated.ClientAuthenticationVerifier
(ClientCredentialsSelector<T> clientCredentialsSelector, PKIClientX509CertificateBindingVerifier<T> pkiCertBindingVerifier, Set<Audience> expectedAudience) Creates a new client authentication verifier.ClientAuthenticationVerifier
(ClientCredentialsSelector<T> clientCredentialsSelector, Set<Audience> expectedAudience) Creates a new client authentication verifier without support fortls_client_auth
. -
Method Summary
Modifier and TypeMethodDescriptionReturns the client credentials selector.Deprecated.Returns the permitted audience values in JWT authentication assertions.Returns the client X.509 certificate binding verifier for use intls_client_auth
.void
Verifies a client authentication request.
-
Constructor Details
-
ClientAuthenticationVerifier
@Deprecated public ClientAuthenticationVerifier(ClientCredentialsSelector<T> clientCredentialsSelector, ClientX509CertificateBindingVerifier<T> certBindingVerifier, Set<Audience> expectedAudience) Deprecated.Use the constructor withPKIClientX509CertificateBindingVerifier
Creates a new client authentication verifier.- Parameters:
clientCredentialsSelector
- The client credentials selector. Must not benull
.certBindingVerifier
- Optional client X.509 certificate binding verifier fortls_client_auth
,null
if not supported.expectedAudience
- The permitted audience (aud) claim values in JWT authentication assertions. Must not be empty ornull
. Should typically contain the token endpoint URI and for OpenID provider it may also include the issuer URI.
-
ClientAuthenticationVerifier
public ClientAuthenticationVerifier(ClientCredentialsSelector<T> clientCredentialsSelector, Set<Audience> expectedAudience) Creates a new client authentication verifier without support fortls_client_auth
.- Parameters:
clientCredentialsSelector
- The client credentials selector. Must not benull
.expectedAudience
- The permitted audience (aud) claim values in JWT authentication assertions. Must not be empty ornull
. Should typically contain the token endpoint URI and for OpenID provider it may also include the issuer URI.
-
ClientAuthenticationVerifier
public ClientAuthenticationVerifier(ClientCredentialsSelector<T> clientCredentialsSelector, PKIClientX509CertificateBindingVerifier<T> pkiCertBindingVerifier, Set<Audience> expectedAudience) Creates a new client authentication verifier.- Parameters:
clientCredentialsSelector
- The client credentials selector. Must not benull
.pkiCertBindingVerifier
- Optional client X.509 certificate binding verifier fortls_client_auth
,null
if not supported.expectedAudience
- The permitted audience (aud) claim values in JWT authentication assertions. Must not be empty ornull
. Should typically contain the token endpoint URI and for OpenID provider it may also include the issuer URI.
-
-
Method Details
-
getClientCredentialsSelector
Returns the client credentials selector.- Returns:
- The client credentials selector.
-
getClientX509CertificateBindingVerifier
@Deprecated public ClientX509CertificateBindingVerifier<T> getClientX509CertificateBindingVerifier()Deprecated.Returns the client X.509 certificate binding verifier for use intls_client_auth
.- Returns:
- The client X.509 certificate binding verifier,
null
if not specified.
-
getPKIClientX509CertificateBindingVerifier
Returns the client X.509 certificate binding verifier for use intls_client_auth
.- Returns:
- The client X.509 certificate binding verifier,
null
if not specified.
-
getExpectedAudience
Returns the permitted audience values in JWT authentication assertions.- Returns:
- The permitted audience (aud) claim values.
-
verify
public void verify(ClientAuthentication clientAuth, Set<Hint> hints, Context<T> context) throws InvalidClientException, com.nimbusds.jose.JOSEException Verifies a client authentication request.- Parameters:
clientAuth
- The client authentication. Must not benull
.hints
- Optional hints to the verifier, empty set ofnull
if none.context
- Additional context to be passed to the client credentials selector. May benull
.- Throws:
InvalidClientException
- If the client authentication is invalid, typically due to bad credentials.com.nimbusds.jose.JOSEException
- If authentication failed due to an internal JOSE / JWT processing exception.
-
PKIClientX509CertificateBindingVerifier