|
| ImplicitGrant () |
|
| ImplicitGrant (User user, Client client, Date authenticationTime) |
|
void | init (User user, Client client, Date authenticationTime) |
|
RefreshToken | createRefreshToken () |
|
boolean | isCachedWithNoPersistence () |
|
boolean | isImplicitFlow () |
|
void | init (User user, AuthorizationGrantType authorizationGrantType, Client client, Date authenticationTime) |
|
IdToken | createIdToken (IAuthorizationGrant grant, String nonce, AuthorizationCode authorizationCode, AccessToken accessToken, Set< String > scopes, boolean includeIdTokenClaims, Function< JsonWebResponse, Void > preProcessing) throws Exception |
|
IdToken | createIdToken (String nonce, AuthorizationCode authorizationCode, AccessToken accessToken, AuthorizationGrant authorizationGrant, boolean includeIdTokenClaims, Function< JsonWebResponse, Void > preProcessing) throws SignatureException, StringEncrypter.EncryptionException, InvalidJwtException, InvalidJweException |
|
String | checkScopesPolicy (String scope) |
|
void | save () |
|
AccessToken | createAccessToken () |
|
void | persist (TokenLdap p_token) |
|
void | persist (AuthorizationCode p_code) |
|
TokenLdap | asToken (IdToken p_token) |
|
TokenLdap | asToken (RefreshToken p_token) |
|
TokenLdap | asToken (AuthorizationCode p_authorizationCode) |
|
TokenLdap | asToken (AccessToken p_accessToken) |
|
String | getScopesAsString () |
|
TokenLdap | asTokenLdap (AbstractToken p_token) |
|
boolean | isValid () |
|
void | revokeAllTokens () |
|
void | checkExpiredTokens () |
|
String | getSub () |
|
void | setIsCachedWithNoPersistence (boolean isCachedWithNoPersistence) |
|
synchronized String | getGrantId () |
|
synchronized void | setGrantId (String p_grantId) |
|
AuthorizationCode | getAuthorizationCode () |
|
void | setAuthorizationCode (AuthorizationCode authorizationCode) |
|
String | getTokenBindingHash () |
|
void | setTokenBindingHash (String tokenBindingHash) |
|
String | getNonce () |
|
void | setNonce (String nonce) |
|
String | getCodeChallenge () |
|
void | setCodeChallenge (String codeChallenge) |
|
String | getCodeChallengeMethod () |
|
void | setCodeChallengeMethod (String codeChallengeMethod) |
|
String | getClaims () |
|
void | setClaims (String claims) |
|
Set< String > | getRefreshTokensCodes () |
|
Set< String > | getAccessTokensCodes () |
|
List< AccessToken > | getAccessTokens () |
|
void | setScopes (Collection< String > scopes) |
|
AccessToken | getLongLivedAccessToken () |
|
void | setLongLivedAccessToken (AccessToken longLivedAccessToken) |
|
IdToken | getIdToken () |
|
void | setIdToken (IdToken idToken) |
|
TokenLdap | getTokenLdap () |
|
void | setTokenLdap (TokenLdap p_tokenLdap) |
|
User | getUser () |
|
String | getAcrValues () |
|
void | setAcrValues (String acrValues) |
|
String | getSessionDn () |
|
void | setSessionDn (String sessionDn) |
|
String | getUserId () |
|
String | getUserDn () |
|
AuthorizationGrantType | getAuthorizationGrantType () |
|
Client | getClient () |
|
String | getClientId () |
|
String | getClientDn () |
|
Date | getAuthenticationTime () |
|
void | setAuthenticationTime (Date authenticationTime) |
|
Set< String > | getScopes () |
|
JwtAuthorizationRequest | getJwtAuthorizationRequest () |
|
void | setJwtAuthorizationRequest (JwtAuthorizationRequest p_jwtAuthorizationRequest) |
|
void | setAccessTokens (List< AccessToken > accessTokens) |
|
List< RefreshToken > | getRefreshTokens () |
|
void | setRefreshTokens (List< RefreshToken > refreshTokens) |
|
RefreshToken | getRefreshToken (String refreshTokenCode) |
|
AbstractToken | getAccessToken (String tokenCode) |
|
String | toString () |
|
The implicit grant is a simplified authorization code flow optimized for clients implemented in a browser using a scripting language such as JavaScript. In the implicit flow, instead of issuing the client an authorization code, the client is issued an access token directly (as the result of the resource owner authorization). The grant type is implicit as no intermediate credentials (such as an authorization code) are issued (and later used to obtain an access token).
When issuing an implicit grant, the authorization server does not authenticate the client. In some cases, the client identity can be verified via the redirection URI used to deliver the access token to the client. The access token may be exposed to the resource owner or other applications with access to the resource owner's user-agent.
Implicit grants improve the responsiveness and efficiency of some clients (such as a client implemented as an in-browser application) since it reduces the number of round trips required to obtain an access token. However, this convenience should be weighed against the security implications of using implicit grants, especially when the authorization code grant type is available.
- 著者
- Javier Rojas Blum Date: 09.29.2011
-
Yuriy Movchan