Package io.jans.as.server.model.common
Class AuthorizationGrant
java.lang.Object
io.jans.as.server.model.common.AbstractAuthorizationGrant
io.jans.as.server.model.common.AuthorizationGrant
- All Implemented Interfaces:
IAuthorizationGrant
- Direct Known Subclasses:
AuthorizationCodeGrant
,CIBAGrant
,ClientCredentialsGrant
,DeviceCodeGrant
,ImplicitGrant
,ResourceOwnerPasswordCredentialsGrant
,SimpleAuthorizationGrant
,TokenExchangeGrant
Base class for all the types of authorization grant.
- Version:
- September 30, 2021
- Author:
- Javier Rojas Blum, Yuriy Movchan
-
Field Summary
Fields inherited from class io.jans.as.server.model.common.AbstractAuthorizationGrant
accessTokens, appConfiguration, logoutStatusJwts, refreshTokens, scopeChecker, txTokens
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
protected
AuthorizationGrant
(io.jans.as.common.model.common.User user, AuthorizationGrantType authorizationGrantType, io.jans.as.common.model.registration.Client client, Date authenticationTime) -
Method Summary
Modifier and TypeMethodDescriptionio.jans.model.token.TokenEntity
asToken
(AccessToken accessToken) io.jans.model.token.TokenEntity
asToken
(AuthorizationCode authorizationCode) io.jans.model.token.TokenEntity
io.jans.model.token.TokenEntity
asToken
(LogoutStatusJwt logoutStatusJwt) io.jans.model.token.TokenEntity
asToken
(RefreshToken token) io.jans.model.token.TokenEntity
io.jans.model.token.TokenEntity
asTokenEntity
(AbstractToken token) void
checkScopesPolicy
(String scope) Checks the scopes policy configured according to the type of the authorization grant to limit the issued token scopes.createAccessToken
(ExecutionContext context) createAccessTokenAsJwt
(AccessToken accessToken, ExecutionContext context) createIdToken
(String nonce, AuthorizationCode authorizationCode, AccessToken accessToken, RefreshToken refreshToken, String state, ExecutionContext executionContext) createLogoutStatusJwt
(ExecutionContext context) createRefreshToken
(ExecutionContext context) createRefreshToken
(ExecutionContext context, int lifetime) createRefreshToken
(ExecutionContext context, Date expirationDate) void
fillPayloadOfAccessTokenJwt
(io.jans.as.model.jwt.JwtClaims claims, AccessToken accessToken, ExecutionContext context) getSub()
void
init
(io.jans.as.common.model.common.User user, AuthorizationGrantType authorizationGrantType, io.jans.as.common.model.registration.Client client, Date authenticationTime) boolean
boolean
void
persist
(AuthorizationCode code) void
persist
(io.jans.model.token.TokenEntity token) void
void
save()
Saves changes asynchronouslyvoid
setIsCachedWithNoPersistence
(boolean isCachedWithNoPersistence) Methods inherited from class io.jans.as.server.model.common.AbstractAuthorizationGrant
getAccessToken, getAccessTokenLifetimeInSeconds, getAccessTokens, getAccessTokensCodes, getAcrValues, getAuthenticationTime, getAuthorizationCode, getAuthorizationGrantType, getAuthzDetails, getAuthzDetailsAsString, getClaims, getClient, getClientDn, getClientId, getCodeChallenge, getCodeChallengeMethod, getDpopJkt, getGrantId, getIdToken, getJwtAuthorizationRequest, getLogoutStatusJwt, getLogoutStatusJwts, getLogoutStatusJwtsCodes, getLongLivedAccessToken, getNonce, getReferenceId, getRefreshToken, getRefreshTokens, getRefreshTokensCodes, getScopes, getSessionDn, getStatusListIndex, getTokenBindingHash, getTokenEntity, getTxToken, getTxTokens, getUser, getUserDn, getUserId, getX5ts256, isAuthorizationChallenge, setAccessTokens, setAcrValues, setAuthenticationTime, setAuthorizationChallenge, setAuthorizationCode, setAuthzDetails, setClaims, setCodeChallenge, setCodeChallengeMethod, setDpopJkt, setGrantId, setIdToken, setJwtAuthorizationRequest, setLogoutStatusJwts, setLongLivedAccessToken, setNonce, setReferenceId, setRefreshTokens, setScopes, setSessionDn, setStatusListIndex, setTokenBindingHash, setTokenEntity, setTxTokens, setX5ts256, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface io.jans.as.server.model.common.IAuthorizationGrant
getGrantType
-
Constructor Details
-
AuthorizationGrant
protected AuthorizationGrant() -
AuthorizationGrant
protected AuthorizationGrant(io.jans.as.common.model.common.User user, AuthorizationGrantType authorizationGrantType, io.jans.as.common.model.registration.Client client, Date authenticationTime)
-
-
Method Details
-
init
public void init(io.jans.as.common.model.common.User user, AuthorizationGrantType authorizationGrantType, io.jans.as.common.model.registration.Client client, Date authenticationTime) - Overrides:
init
in classAbstractAuthorizationGrant
-
checkScopesPolicy
Description copied from class:AbstractAuthorizationGrant
Checks the scopes policy configured according to the type of the authorization grant to limit the issued token scopes.- Specified by:
checkScopesPolicy
in interfaceIAuthorizationGrant
- Overrides:
checkScopesPolicy
in classAbstractAuthorizationGrant
- Parameters:
scope
- A space-delimited list of values in which the order of values does not matter.- Returns:
- A space-delimited list of scopes
-
save
public void save()Description copied from interface:IAuthorizationGrant
Saves changes asynchronously -
isImplicitFlow
public boolean isImplicitFlow() -
createLogoutStatusJwt
-
createAccessToken
- Specified by:
createAccessToken
in interfaceIAuthorizationGrant
- Overrides:
createAccessToken
in classAbstractAuthorizationGrant
-
createAccessTokenAsJwt
public JwtSigner createAccessTokenAsJwt(AccessToken accessToken, ExecutionContext context) throws io.jans.util.security.StringEncrypter.EncryptionException, io.jans.as.model.exception.CryptoProviderException - Throws:
io.jans.util.security.StringEncrypter.EncryptionException
io.jans.as.model.exception.CryptoProviderException
-
fillPayloadOfAccessTokenJwt
public void fillPayloadOfAccessTokenJwt(io.jans.as.model.jwt.JwtClaims claims, AccessToken accessToken, ExecutionContext context) -
createRefreshToken
- Specified by:
createRefreshToken
in interfaceIAuthorizationGrant
- Overrides:
createRefreshToken
in classAbstractAuthorizationGrant
-
createRefreshToken
- Specified by:
createRefreshToken
in interfaceIAuthorizationGrant
- Overrides:
createRefreshToken
in classAbstractAuthorizationGrant
-
createRefreshToken
-
createIdToken
public IdToken createIdToken(String nonce, AuthorizationCode authorizationCode, AccessToken accessToken, RefreshToken refreshToken, String state, ExecutionContext executionContext) -
persist
public void persist(io.jans.model.token.TokenEntity token) -
persist
-
asToken
-
asToken
-
asToken
-
asToken
-
asToken
-
asToken
-
getScopesAsString
-
asTokenEntity
-
revokeAllTokens
public void revokeAllTokens() -
checkExpiredTokens
public void checkExpiredTokens() -
getSub
-
isCachedWithNoPersistence
public boolean isCachedWithNoPersistence() -
setIsCachedWithNoPersistence
public void setIsCachedWithNoPersistence(boolean isCachedWithNoPersistence)
-