Class DefaultOpenIdUserDetailsMapper
- java.lang.Object
-
- io.micronaut.security.oauth2.endpoint.token.response.DefaultOpenIdUserDetailsMapper
-
- All Implemented Interfaces:
OpenIdUserDetailsMapper
@Singleton @Requires(configuration="io.micronaut.security.token.jwt") public class DefaultOpenIdUserDetailsMapper extends java.lang.Object implements OpenIdUserDetailsMapper
The default implementation ofOpenIdUserDetailsMapper
that uses the subject claim for the username and populates the attributes with the non JWT standard claims. If anOpenIdUserDetailsMapper
bean is created with a named qualifier that is the same name of the provider, that bean will be used instead of this one.- Since:
- 1.2.0
- Author:
- James Kleeh
-
-
Field Summary
-
Fields inherited from interface io.micronaut.security.oauth2.endpoint.token.response.OpenIdUserDetailsMapper
OPENID_TOKEN_KEY
-
-
Constructor Summary
Constructors Constructor Description DefaultOpenIdUserDetailsMapper(OpenIdAdditionalClaimsConfiguration openIdAdditionalClaimsConfiguration)
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.util.Map<java.lang.String,java.lang.Object>
buildAttributes(java.lang.String providerName, OpenIdTokenResponse tokenResponse, OpenIdClaims openIdClaims)
UserDetails
createUserDetails(java.lang.String providerName, OpenIdTokenResponse tokenResponse, OpenIdClaims openIdClaims)
protected java.util.List<java.lang.String>
getRoles(java.lang.String providerName, OpenIdTokenResponse tokenResponse, OpenIdClaims openIdClaims)
protected java.lang.String
getUsername(java.lang.String providerName, OpenIdTokenResponse tokenResponse, OpenIdClaims openIdClaims)
-
-
-
Constructor Detail
-
DefaultOpenIdUserDetailsMapper
public DefaultOpenIdUserDetailsMapper(OpenIdAdditionalClaimsConfiguration openIdAdditionalClaimsConfiguration)
Default constructor.- Parameters:
openIdAdditionalClaimsConfiguration
- The additional claims configuration
-
-
Method Detail
-
createUserDetails
@Nonnull public UserDetails createUserDetails(java.lang.String providerName, OpenIdTokenResponse tokenResponse, OpenIdClaims openIdClaims)
- Specified by:
createUserDetails
in interfaceOpenIdUserDetailsMapper
- Parameters:
providerName
- The OpenID provider nametokenResponse
- The token responseopenIdClaims
- The OpenID claims- Returns:
- A user details object
-
buildAttributes
protected java.util.Map<java.lang.String,java.lang.Object> buildAttributes(java.lang.String providerName, OpenIdTokenResponse tokenResponse, OpenIdClaims openIdClaims)
- Parameters:
providerName
- The OpenID provider nametokenResponse
- The token responseopenIdClaims
- The OpenID claims- Returns:
- The attributes to set in the
UserDetails
-
getRoles
protected java.util.List<java.lang.String> getRoles(java.lang.String providerName, OpenIdTokenResponse tokenResponse, OpenIdClaims openIdClaims)
- Parameters:
providerName
- The OpenID provider nametokenResponse
- The token responseopenIdClaims
- The OpenID claims- Returns:
- The roles to set in the
UserDetails
-
getUsername
protected java.lang.String getUsername(java.lang.String providerName, OpenIdTokenResponse tokenResponse, OpenIdClaims openIdClaims)
- Parameters:
providerName
- The OpenID provider nametokenResponse
- The token responseopenIdClaims
- The OpenID claims- Returns:
- The username to set in the
UserDetails
-
-