Class WebAuthnAuthentication
- All Implemented Interfaces:
Serializable,Principal,Authentication,CredentialsContainer
WebAuthnAuthentication is used to represent successful authentication with
WebAuthn.- Since:
- 6.4
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classA builder ofWebAuthnAuthenticationinstancesNested classes/interfaces inherited from class org.springframework.security.authentication.AbstractAuthenticationToken
AbstractAuthenticationToken.AbstractAuthenticationBuilder<B extends AbstractAuthenticationToken.AbstractAuthenticationBuilder<B>> -
Constructor Summary
ConstructorsConstructorDescriptionWebAuthnAuthentication(PublicKeyCredentialUserEntity principal, Collection<? extends GrantedAuthority> authorities) -
Method Summary
Modifier and TypeMethodDescription@Nullable ObjectThe credentials that prove the principal is correct.getName()The identity of the principal being authenticated.voidsetAuthenticated(boolean authenticated) SeeAuthentication.isAuthenticated()for a full description.Return anAuthentication.Builderbased on this instance.Methods inherited from class org.springframework.security.authentication.AbstractAuthenticationToken
equals, eraseCredentials, getAuthorities, getDetails, hashCode, isAuthenticated, setDetails, toString
-
Constructor Details
-
WebAuthnAuthentication
public WebAuthnAuthentication(PublicKeyCredentialUserEntity principal, Collection<? extends GrantedAuthority> authorities)
-
-
Method Details
-
setAuthenticated
public void setAuthenticated(boolean authenticated) Description copied from interface:AuthenticationSeeAuthentication.isAuthenticated()for a full description.Implementations should always allow this method to be called with a
falseparameter, as this is used by various classes to specify the authentication token should not be trusted. If an implementation wishes to reject an invocation with atrueparameter (which would indicate the authentication token is trusted - a potential security risk) the implementation should throw anIllegalArgumentException.- Specified by:
setAuthenticatedin interfaceAuthentication- Overrides:
setAuthenticatedin classAbstractAuthenticationToken- Parameters:
authenticated-trueif the token should be trusted (which may result in an exception) orfalseif the token should not be trusted
-
getCredentials
Description copied from interface:AuthenticationThe credentials that prove the principal is correct. This is usually a password, but could be anything relevant to theAuthenticationManager. Callers are expected to populate the credentials.- Returns:
- the credentials that prove the identity of the
Principal
-
getPrincipal
Description copied from interface:AuthenticationThe identity of the principal being authenticated. In the case of an authentication request with username and password, this would be the username. Callers are expected to populate the principal for an authentication request.The AuthenticationManager implementation will often return an Authentication containing richer information as the principal for use by the application. Many of the authentication providers will create a
UserDetailsobject as the principal.- Returns:
- the
Principalbeing authenticated or the authenticated principal after authentication.
-
getName
- Specified by:
getNamein interfacePrincipal- Overrides:
getNamein classAbstractAuthenticationToken
-
toBuilder
Description copied from interface:AuthenticationReturn anAuthentication.Builderbased on this instance. By default, returns a builder that builds aSimpleAuthentication.Although a
defaultmethod, allAuthenticationimplementations should implement this. The reason is to ensure that theAuthenticationtype is preserved whenAuthentication.Builder.build()is invoked. This is especially important in the event that your authentication implementation contains custom fields.This isn't strictly necessary since it is recommended that applications code to the
Authenticationinterface and that custom information is often contained in theAuthentication.getPrincipal()value.- Returns:
- an
Authentication.Builderfor building a newAuthenticationbased on this instance
-