gluu
公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
org.xdi.oxauth.model.common.ImplicitGrant クラス
org.xdi.oxauth.model.common.ImplicitGrant の継承関係図
Inheritance graph
org.xdi.oxauth.model.common.ImplicitGrant 連携図
Collaboration graph

公開メンバ関数

 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< AccessTokengetAccessTokens ()
 
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< RefreshTokengetRefreshTokens ()
 
void setRefreshTokens (List< RefreshToken > refreshTokens)
 
RefreshToken getRefreshToken (String refreshTokenCode)
 
AbstractToken getAccessToken (String tokenCode)
 
String toString ()
 

限定公開変数類

AppConfiguration appConfiguration
 
ScopeChecker scopeChecker
 
final ConcurrentMap< String, AccessTokenaccessTokens = new ConcurrentHashMap<String, AccessToken>()
 
final ConcurrentMap< String, RefreshTokenrefreshTokens = new ConcurrentHashMap<String, RefreshToken>()
 

詳解

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

構築子と解体子

◆ ImplicitGrant() [1/2]

org.xdi.oxauth.model.common.ImplicitGrant.ImplicitGrant ( )
inline
44 {}

◆ ImplicitGrant() [2/2]

org.xdi.oxauth.model.common.ImplicitGrant.ImplicitGrant ( User  user,
Client  client,
Date  authenticationTime 
)
inline

Constructs an implicit grant.

引数
userThe resource owner.
clientAn application making protected resource requests on behalf of the resource owner and with its authorization.
authenticationTimeThe Claim Value is the number of seconds from 1970-01-01T0:0:0Z as measured in UTC until the date/time that the End-User authentication occurred.
55  {
57  }
Client client
Definition: AbstractAuthorizationGrant.java:49
Date authenticationTime
Definition: AbstractAuthorizationGrant.java:54
void init(User user, Client client, Date authenticationTime)
Definition: ImplicitGrant.java:59
User user
Definition: AbstractAuthorizationGrant.java:47

関数詳解

◆ asToken() [1/4]

TokenLdap org.xdi.oxauth.model.common.AuthorizationGrant.asToken ( IdToken  p_token)
inlineinherited
244  {
245  final TokenLdap result = asTokenLdap(p_token);
246  result.setTokenTypeEnum(org.xdi.oxauth.model.ldap.TokenType.ID_TOKEN);
247  return result;
248  }
Definition: ClientAuthorizations.java:1
TokenLdap asTokenLdap(AbstractToken p_token)
Definition: AuthorizationGrant.java:276
ID_TOKEN
Definition: TokenType.java:16
Definition: TokenType.java:15

◆ asToken() [2/4]

TokenLdap org.xdi.oxauth.model.common.AuthorizationGrant.asToken ( RefreshToken  p_token)
inlineinherited
250  {
251  final TokenLdap result = asTokenLdap(p_token);
252  result.setTokenTypeEnum(org.xdi.oxauth.model.ldap.TokenType.REFRESH_TOKEN);
253  return result;
254  }
REFRESH_TOKEN
Definition: TokenType.java:19
Definition: ClientAuthorizations.java:1
TokenLdap asTokenLdap(AbstractToken p_token)
Definition: AuthorizationGrant.java:276
Definition: TokenType.java:15

◆ asToken() [3/4]

TokenLdap org.xdi.oxauth.model.common.AuthorizationGrant.asToken ( AuthorizationCode  p_authorizationCode)
inlineinherited
256  {
257  final TokenLdap result = asTokenLdap(p_authorizationCode);
258  result.setTokenTypeEnum(org.xdi.oxauth.model.ldap.TokenType.AUTHORIZATION_CODE);
259  return result;
260  }
AUTHORIZATION_CODE
Definition: TokenType.java:20
Definition: ClientAuthorizations.java:1
TokenLdap asTokenLdap(AbstractToken p_token)
Definition: AuthorizationGrant.java:276
Definition: TokenType.java:15

◆ asToken() [4/4]

TokenLdap org.xdi.oxauth.model.common.AuthorizationGrant.asToken ( AccessToken  p_accessToken)
inlineinherited
262  {
263  final TokenLdap result = asTokenLdap(p_accessToken);
264  result.setTokenTypeEnum(org.xdi.oxauth.model.ldap.TokenType.ACCESS_TOKEN);
265  return result;
266  }
ACCESS_TOKEN
Definition: TokenType.java:17
Definition: ClientAuthorizations.java:1
TokenLdap asTokenLdap(AbstractToken p_token)
Definition: AuthorizationGrant.java:276
Definition: TokenType.java:15

◆ asTokenLdap()

TokenLdap org.xdi.oxauth.model.common.AuthorizationGrant.asTokenLdap ( AbstractToken  p_token)
inlineinherited
276  {
277  final String id = GrantService.generateGrantId();
278 
279  final TokenLdap result = new TokenLdap();
280 
281  result.setDn(grantService.buildDn(id, getGrantId(), getClientId()));
282  result.setId(id);
283  result.setGrantId(getGrantId());
284  result.setCreationDate(p_token.getCreationDate());
285  result.setExpirationDate(p_token.getExpirationDate());
286  result.setTokenCode(TokenHashUtil.getHashedToken(p_token.getCode()));
287  result.setUserId(getUserId());
288  result.setClientId(getClientId());
289  result.setScope(getScopesAsString());
290  result.setAuthMode(p_token.getAuthMode());
291  result.setSessionDn(p_token.getSessionDn());
292  result.setAuthenticationTime(getAuthenticationTime());
293 
294  final AuthorizationGrantType grantType = getAuthorizationGrantType();
295  if (grantType != null) {
296  result.setGrantType(grantType.getParamName());
297  }
298 
299  final AuthorizationCode authorizationCode = getAuthorizationCode();
300  if (authorizationCode != null) {
301  result.setAuthorizationCode(TokenHashUtil.getHashedToken(authorizationCode.getCode()));
302  }
303 
304  final String nonce = getNonce();
305  if (nonce != null) {
306  result.setNonce(nonce);
307  }
308 
309  final JwtAuthorizationRequest jwtRequest = getJwtAuthorizationRequest();
310  if (jwtRequest != null && StringUtils.isNotBlank(jwtRequest.getEncodedJwt())) {
311  result.setJwtRequest(jwtRequest.getEncodedJwt());
312  }
313  return result;
314  }
AuthorizationCode getAuthorizationCode()
Definition: AbstractAuthorizationGrant.java:105
String getNonce()
Definition: AbstractAuthorizationGrant.java:128
AuthorizationCode authorizationCode
Definition: AbstractAuthorizationGrant.java:58
JwtAuthorizationRequest getJwtAuthorizationRequest()
Definition: AbstractAuthorizationGrant.java:382
GrantService grantService
Definition: AuthorizationGrant.java:57
String getUserId()
Definition: AbstractAuthorizationGrant.java:305
synchronized String getGrantId()
Definition: AbstractAuthorizationGrant.java:90
String getScopesAsString()
Definition: AuthorizationGrant.java:268
Date getAuthenticationTime()
Definition: AbstractAuthorizationGrant.java:363
String nonce
Definition: AbstractAuthorizationGrant.java:60
String getClientId()
Definition: AbstractAuthorizationGrant.java:345
String buildDn(String p_uniqueIdentifier, String p_grantId, String p_clientId)
Definition: GrantService.java:81
AuthorizationGrantType getAuthorizationGrantType()
Definition: AbstractAuthorizationGrant.java:328

◆ checkExpiredTokens()

void org.xdi.oxauth.model.common.AuthorizationGrant.checkExpiredTokens ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

336  {
337  // do nothing, clean up is made via grant service:
338  // org.xdi.oxauth.service.GrantService.cleanUp()
339  }

◆ checkScopesPolicy()

String org.xdi.oxauth.model.common.AuthorizationGrant.checkScopesPolicy ( String  scope)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

96  {
97  final String result = super.checkScopesPolicy(scope);
98  save();
99  return result;
100  }
void save()
Definition: AuthorizationGrant.java:103

◆ createAccessToken()

AccessToken org.xdi.oxauth.model.common.AuthorizationGrant.createAccessToken ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

158  {
159  try {
160  final AccessToken accessToken = super.createAccessToken();
161  if (getClient().isAccessTokenAsJwt()) {
162  accessToken.setCode(createAccessTokenAsJwt(accessToken));
163  }
164  if (accessToken.getExpiresIn() > 0) {
165  persist(asToken(accessToken));
166  }
167  return accessToken;
168  } catch (Exception e) {
169  log.error(e.getMessage(), e);
170  return null;
171  }
172  }
TokenLdap asToken(IdToken p_token)
Definition: AuthorizationGrant.java:244
void persist(TokenLdap p_token)
Definition: AuthorizationGrant.java:236
static final Logger log
Definition: AuthorizationGrant.java:51
String createAccessTokenAsJwt(AccessToken accessToken)
Definition: AuthorizationGrant.java:174
Client getClient()
Definition: AbstractAuthorizationGrant.java:340

◆ createIdToken() [1/2]

IdToken org.xdi.oxauth.model.common.AuthorizationGrant.createIdToken ( IAuthorizationGrant  grant,
String  nonce,
AuthorizationCode  authorizationCode,
AccessToken  accessToken,
Set< String >  scopes,
boolean  includeIdTokenClaims,
Function< JsonWebResponse, Void >  preProcessing 
) throws Exception
inlineinherited
88  {
89  JsonWebResponse jwr = idTokenFactory.createJwr(grant, nonce, authorizationCode, accessToken, scopes,
90  includeIdTokenClaims, preProcessing);
91  return new IdToken(jwr.toString(), jwr.getClaims().getClaimAsDate(JwtClaimName.ISSUED_AT),
92  jwr.getClaims().getClaimAsDate(JwtClaimName.EXPIRATION_TIME));
93  }
IdTokenFactory idTokenFactory
Definition: AuthorizationGrant.java:60
JsonWebResponse createJwr(IAuthorizationGrant grant, String nonce, AuthorizationCode authorizationCode, AccessToken accessToken, Set< String > scopes, boolean includeIdTokenClaims, Function< JsonWebResponse, Void > preProcessing)
Definition: IdTokenFactory.java:535
Set< String > scopes
Definition: AbstractAuthorizationGrant.java:50
AuthorizationCode authorizationCode
Definition: AbstractAuthorizationGrant.java:58
String nonce
Definition: AbstractAuthorizationGrant.java:60

◆ createIdToken() [2/2]

IdToken org.xdi.oxauth.model.common.AuthorizationGrant.createIdToken ( String  nonce,
AuthorizationCode  authorizationCode,
AccessToken  accessToken,
AuthorizationGrant  authorizationGrant,
boolean  includeIdTokenClaims,
Function< JsonWebResponse, Void >  preProcessing 
) throws SignatureException, StringEncrypter.EncryptionException, InvalidJwtException, InvalidJweException
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

213  {
214  try {
215  final IdToken idToken = createIdToken(this, nonce, authorizationCode, accessToken, getScopes(),
216  includeIdTokenClaims, preProcessing);
217  final String acrValues = authorizationGrant.getAcrValues();
218  final String sessionDn = authorizationGrant.getSessionDn();
219  if (idToken.getExpiresIn() > 0) {
220  final TokenLdap tokenLdap = asToken(idToken);
221  tokenLdap.setAuthMode(acrValues);
222  tokenLdap.setSessionDn(sessionDn);
223  persist(tokenLdap);
224  }
225 
226  setAcrValues(acrValues);
227  setSessionDn(sessionDn);
228  save();
229  return idToken;
230  } catch (Exception e) {
231  log.error(e.getMessage(), e);
232  return null;
233  }
234  }
TokenLdap asToken(IdToken p_token)
Definition: AuthorizationGrant.java:244
String sessionDn
Definition: AbstractAuthorizationGrant.java:66
String acrValues
Definition: AbstractAuthorizationGrant.java:65
void persist(TokenLdap p_token)
Definition: AuthorizationGrant.java:236
void save()
Definition: AuthorizationGrant.java:103
AuthorizationCode authorizationCode
Definition: AbstractAuthorizationGrant.java:58
void setAcrValues(String acrValues)
Definition: AbstractAuthorizationGrant.java:241
TokenLdap tokenLdap
Definition: AbstractAuthorizationGrant.java:55
static final Logger log
Definition: AuthorizationGrant.java:51
void setSessionDn(String sessionDn)
Definition: AbstractAuthorizationGrant.java:249
Set< String > getScopes()
Definition: AbstractAuthorizationGrant.java:377
String nonce
Definition: AbstractAuthorizationGrant.java:60
IdToken createIdToken(IAuthorizationGrant grant, String nonce, AuthorizationCode authorizationCode, AccessToken accessToken, Set< String > scopes, boolean includeIdTokenClaims, Function< JsonWebResponse, Void > preProcessing)
Definition: AuthorizationGrant.java:87
IdToken idToken
Definition: AbstractAuthorizationGrant.java:57

◆ createRefreshToken()

RefreshToken org.xdi.oxauth.model.common.ImplicitGrant.createRefreshToken ( )
inline

The authorization server MUST NOT issue a refresh token.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

67  {
68  throw new UnsupportedOperationException(
69  "The authorization server MUST NOT issue a refresh token.");
70  }

◆ getAccessToken()

AbstractToken org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getAccessToken ( String  tokenCode)
inlineinherited

Gets the access token instance from the id token list or the access token list given its code.

引数
tokenCodeThe code of the access token.
戻り値
The access token instance or null if not found.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

445  {
446 
447  String hashedTokenCode = TokenHashUtil.getHashedToken(tokenCode);
448 
449  final IdToken idToken = getIdToken();
450  if (idToken != null) {
451  if (idToken.getCode().equals(hashedTokenCode)) {
452  return idToken;
453  }
454  }
455 
456  final AccessToken longLivedAccessToken = getLongLivedAccessToken();
457  if (longLivedAccessToken != null) {
458  if (longLivedAccessToken.getCode().equals(hashedTokenCode)) {
459  return longLivedAccessToken;
460  }
461  }
462 
463  return accessTokens.get(hashedTokenCode);
464  }
AccessToken getLongLivedAccessToken()
Definition: AbstractAuthorizationGrant.java:198
final ConcurrentMap< String, AccessToken > accessTokens
Definition: AbstractAuthorizationGrant.java:68
IdToken getIdToken()
Definition: AbstractAuthorizationGrant.java:208
AccessToken longLivedAccessToken
Definition: AbstractAuthorizationGrant.java:56
IdToken idToken
Definition: AbstractAuthorizationGrant.java:57

◆ getAccessTokens()

List<AccessToken> org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getAccessTokens ( )
inlineinherited

Returns a list with all the issued access tokens.

戻り値
List with all the issued access tokens.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

187  {
188  return new ArrayList<AccessToken>(accessTokens.values());
189  }
final ConcurrentMap< String, AccessToken > accessTokens
Definition: AbstractAuthorizationGrant.java:68

◆ getAccessTokensCodes()

Set<String> org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getAccessTokensCodes ( )
inlineinherited

Returns a list with all the issued access tokens codes.

戻り値
List with all the issued access tokens codes.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

177  {
178  return accessTokens.keySet();
179  }
final ConcurrentMap< String, AccessToken > accessTokens
Definition: AbstractAuthorizationGrant.java:68

◆ getAcrValues()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getAcrValues ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

237  {
238  return acrValues;
239  }
String acrValues
Definition: AbstractAuthorizationGrant.java:65

◆ getAuthenticationTime()

Date org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getAuthenticationTime ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

363  {
364  return authenticationTime;
365  }
Date authenticationTime
Definition: AbstractAuthorizationGrant.java:54

◆ getAuthorizationCode()

AuthorizationCode org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getAuthorizationCode ( )
inlineinherited

Returns the AuthorizationCode.

戻り値
The authorization code.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

105  {
106  return authorizationCode;
107  }
AuthorizationCode authorizationCode
Definition: AbstractAuthorizationGrant.java:58

◆ getAuthorizationGrantType()

AuthorizationGrantType org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getAuthorizationGrantType ( )
inlineinherited

Returns the AuthorizationGrantType.

戻り値
The authorization grant type.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

328  {
329  return authorizationGrantType;
330  }
AuthorizationGrantType authorizationGrantType
Definition: AbstractAuthorizationGrant.java:48

◆ getClaims()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getClaims ( )
inlineinherited
153  {
154  return claims;
155  }
String claims
Definition: AbstractAuthorizationGrant.java:63

◆ getClient()

Client org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getClient ( )
inlineinherited

Returns the org.xdi.oxauth.model.registration.Client. An application making protected resource requests on behalf of the resource owner and with its authorization.

戻り値
The client.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

340  {
341  return client;
342  }
Client client
Definition: AbstractAuthorizationGrant.java:49

◆ getClientDn()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getClientDn ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

354  {
355  if (client == null) {
356  return null;
357  }
358 
359  return client.getDn();
360  }
Client client
Definition: AbstractAuthorizationGrant.java:49
String getDn()
Definition: Client.java:226

◆ getClientId()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getClientId ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

345  {
346  if (client == null) {
347  return null;
348  }
349 
350  return client.getClientId();
351  }
String getClientId()
Definition: Client.java:275
Client client
Definition: AbstractAuthorizationGrant.java:49

◆ getCodeChallenge()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getCodeChallenge ( )
inlineinherited
137  {
138  return codeChallenge;
139  }
String codeChallenge
Definition: AbstractAuthorizationGrant.java:61

◆ getCodeChallengeMethod()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getCodeChallengeMethod ( )
inlineinherited
145  {
146  return codeChallengeMethod;
147  }
String codeChallengeMethod
Definition: AbstractAuthorizationGrant.java:62

◆ getGrantId()

synchronized String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getGrantId ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

90  {
91  return grantId;
92  }
String grantId
Definition: AbstractAuthorizationGrant.java:52

◆ getIdToken()

IdToken org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getIdToken ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

208  {
209  return idToken;
210  }
IdToken idToken
Definition: AbstractAuthorizationGrant.java:57

◆ getJwtAuthorizationRequest()

JwtAuthorizationRequest org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getJwtAuthorizationRequest ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

382  {
384  }
JwtAuthorizationRequest jwtAuthorizationRequest
Definition: AbstractAuthorizationGrant.java:53

◆ getLongLivedAccessToken()

AccessToken org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getLongLivedAccessToken ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

198  {
199  return longLivedAccessToken;
200  }
AccessToken longLivedAccessToken
Definition: AbstractAuthorizationGrant.java:56

◆ getNonce()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getNonce ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

128  {
129  return nonce;
130  }
String nonce
Definition: AbstractAuthorizationGrant.java:60

◆ getRefreshToken()

RefreshToken org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getRefreshToken ( String  refreshTokenCode)
inlineinherited

Gets the refresh token instance from the refresh token list given its code.

引数
refreshTokenCodeThe code of the refresh token.
戻り値
The refresh token instance or null if not found.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

428  {
429  if (log.isTraceEnabled()) {
430  log.trace("Looking for the refresh token: " + refreshTokenCode + " for an authorization grant of type: "
432  }
433 
434  return refreshTokens.get(refreshTokenCode);
435  }
static final Logger log
Definition: AbstractAuthorizationGrant.java:39
final ConcurrentMap< String, RefreshToken > refreshTokens
Definition: AbstractAuthorizationGrant.java:69
AuthorizationGrantType getAuthorizationGrantType()
Definition: AbstractAuthorizationGrant.java:328

◆ getRefreshTokens()

List<RefreshToken> org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getRefreshTokens ( )
inlineinherited

Returns a list with all the issued refresh tokens.

戻り値
List with all the issued refresh tokens.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

411  {
412  return new ArrayList<RefreshToken>(refreshTokens.values());
413  }
final ConcurrentMap< String, RefreshToken > refreshTokens
Definition: AbstractAuthorizationGrant.java:69

◆ getRefreshTokensCodes()

Set<String> org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getRefreshTokensCodes ( )
inlineinherited

Returns a list with all the issued refresh tokens codes.

戻り値
List with all the issued refresh tokens codes.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

167  {
168  return refreshTokens.keySet();
169  }
final ConcurrentMap< String, RefreshToken > refreshTokens
Definition: AbstractAuthorizationGrant.java:69

◆ getScopes()

Set<String> org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getScopes ( )
inlineinherited

Returns a list of the scopes granted to the client.

戻り値
List of the scopes granted to the client.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

377  {
378  return scopes;
379  }
Set< String > scopes
Definition: AbstractAuthorizationGrant.java:50

◆ getScopesAsString()

String org.xdi.oxauth.model.common.AuthorizationGrant.getScopesAsString ( )
inlineinherited
268  {
269  final StringBuilder scopes = new StringBuilder();
270  for (String s : getScopes()) {
271  scopes.append(s).append(" ");
272  }
273  return scopes.toString().trim();
274  }
Set< String > scopes
Definition: AbstractAuthorizationGrant.java:50
Set< String > getScopes()
Definition: AbstractAuthorizationGrant.java:377

◆ getSessionDn()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getSessionDn ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

245  {
246  return sessionDn;
247  }
String sessionDn
Definition: AbstractAuthorizationGrant.java:66

◆ getSub()

String org.xdi.oxauth.model.common.AuthorizationGrant.getSub ( )
inlineinherited
341  {
342  final User user = getUser();
343  if (user == null) {
344  log.trace("User is null for grant " + getGrantId());
345  return "";
346  }
347  final String subjectType = getClient().getSubjectType();
348  if (SubjectType.PAIRWISE.equals(SubjectType.fromString(subjectType))) {
349  String sectorIdentifierUri = null;
350  if (StringUtils.isNotBlank(getClient().getSectorIdentifierUri())) {
351  sectorIdentifierUri = getClient().getSectorIdentifierUri();
352  } else {
353  sectorIdentifierUri = getClient().getRedirectUris()[0];
354  }
355 
356  String userInum = user.getAttribute("inum");
357  String clientId = getClientId();
358 
359  try {
360  PairwiseIdentifier pairwiseIdentifier = pairwiseIdentifierService.findPairWiseIdentifier(userInum, sectorIdentifierUri, clientId);
361  if (pairwiseIdentifier == null) {
362  pairwiseIdentifier = new PairwiseIdentifier(sectorIdentifierUri, clientId);
363  pairwiseIdentifier.setId(UUID.randomUUID().toString());
364  pairwiseIdentifier.setDn(pairwiseIdentifierService.getDnForPairwiseIdentifier(pairwiseIdentifier.getId(), userInum));
365  pairwiseIdentifierService.addPairwiseIdentifier(userInum, pairwiseIdentifier);
366  }
367  return pairwiseIdentifier.getId();
368  } catch (Exception e) {
369  log.error("Failed to get sub claim. PairwiseIdentifierService failed to find pair wise identifier.", e);
370  return "";
371  }
372  } else {
373  return user.getAttribute(appConfiguration.getOpenidSubAttribute());
374  }
375  }
String getDnForPairwiseIdentifier(String oxId, String userInum)
Definition: PairwiseIdentifierService.java:107
String [] getRedirectUris()
Definition: Client.java:387
User getUser()
Definition: AbstractAuthorizationGrant.java:233
AppConfiguration appConfiguration
Definition: AbstractAuthorizationGrant.java:42
String getSectorIdentifierUri()
Definition: Client.java:680
static final Logger log
Definition: AuthorizationGrant.java:51
synchronized String getGrantId()
Definition: AbstractAuthorizationGrant.java:90
Client getClient()
Definition: AbstractAuthorizationGrant.java:340
User user
Definition: AbstractAuthorizationGrant.java:47
void addPairwiseIdentifier(String userInum, PairwiseIdentifier pairwiseIdentifier)
Definition: PairwiseIdentifierService.java:100
String getClientId()
Definition: AbstractAuthorizationGrant.java:345
String getSubjectType()
Definition: Client.java:699
PairwiseIdentifierService pairwiseIdentifierService
Definition: AuthorizationGrant.java:66
String getOpenidSubAttribute()
Definition: AppConfiguration.java:509
PairwiseIdentifier findPairWiseIdentifier(String userInum, String sectorIdentifierUri, String clientId)
Definition: PairwiseIdentifierService.java:59

◆ getTokenBindingHash()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getTokenBindingHash ( )
inlineinherited
119  {
120  return tokenBindingHash;
121  }
String tokenBindingHash
Definition: AbstractAuthorizationGrant.java:59

◆ getTokenLdap()

TokenLdap org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getTokenLdap ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

218  {
219  return tokenLdap;
220  }
TokenLdap tokenLdap
Definition: AbstractAuthorizationGrant.java:55

◆ getUser()

User org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getUser ( )
inlineinherited

Returns the resource owner's.

戻り値
The resource owner's.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

233  {
234  return user;
235  }
User user
Definition: AbstractAuthorizationGrant.java:47

◆ getUserDn()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getUserDn ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

314  {
315  if (user == null) {
316  return null;
317  }
318 
319  return user.getDn();
320  }
User user
Definition: AbstractAuthorizationGrant.java:47

◆ getUserId()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.getUserId ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

305  {
306  if (user == null) {
307  return null;
308  }
309 
310  return user.getUserId();
311  }
User user
Definition: AbstractAuthorizationGrant.java:47

◆ init() [1/2]

void org.xdi.oxauth.model.common.ImplicitGrant.init ( User  user,
Client  client,
Date  authenticationTime 
)
inline
59  {
60  super.init(user, AuthorizationGrantType.IMPLICIT, client, authenticationTime);
61  }
Client client
Definition: AbstractAuthorizationGrant.java:49
Date authenticationTime
Definition: AbstractAuthorizationGrant.java:54
User user
Definition: AbstractAuthorizationGrant.java:47

◆ init() [2/2]

void org.xdi.oxauth.model.common.AuthorizationGrant.init ( User  user,
AuthorizationGrantType  authorizationGrantType,
Client  client,
Date  authenticationTime 
)
inlineinherited
83  {
85  }
AuthorizationGrantType authorizationGrantType
Definition: AbstractAuthorizationGrant.java:48
Client client
Definition: AbstractAuthorizationGrant.java:49
Date authenticationTime
Definition: AbstractAuthorizationGrant.java:54
User user
Definition: AbstractAuthorizationGrant.java:47

◆ isCachedWithNoPersistence()

boolean org.xdi.oxauth.model.common.AuthorizationGrant.isCachedWithNoPersistence ( )
inlineinherited
377  {
379  }
boolean isCachedWithNoPersistence()
Definition: AuthorizationGrant.java:377

◆ isImplicitFlow()

boolean org.xdi.oxauth.model.common.AuthorizationGrant.isImplicitFlow ( )
inlineinherited
125  {
126  return getAuthorizationGrantType() == null || getAuthorizationGrantType() == AuthorizationGrantType.IMPLICIT;
127  }
IMPLICIT
Definition: AuthorizationGrantType.java:39
AuthorizationGrantType getAuthorizationGrantType()
Definition: AbstractAuthorizationGrant.java:328

◆ isValid()

boolean org.xdi.oxauth.model.common.AuthorizationGrant.isValid ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

317  {
318  // final TokenLdap t = getTokenLdap();
319  // if (t != null) {
320  // if (new Date().after(t.getExpirationDate())) {
321  // return true;
322  // }
323  // }
324  return true;
325  }

◆ persist() [1/2]

void org.xdi.oxauth.model.common.AuthorizationGrant.persist ( TokenLdap  p_token)
inlineinherited
236  {
237  grantService.persist(p_token);
238  }
GrantService grantService
Definition: AuthorizationGrant.java:57
void persist(TokenLdap token)
Definition: GrantService.java:122

◆ persist() [2/2]

void org.xdi.oxauth.model.common.AuthorizationGrant.persist ( AuthorizationCode  p_code)
inlineinherited
240  {
241  persist(asToken(p_code));
242  }
TokenLdap asToken(IdToken p_token)
Definition: AuthorizationGrant.java:244
void persist(TokenLdap p_token)
Definition: AuthorizationGrant.java:236

◆ revokeAllTokens()

void org.xdi.oxauth.model.common.AuthorizationGrant.revokeAllTokens ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

328  {
329  final TokenLdap tokenLdap = getTokenLdap();
330  if (tokenLdap != null && StringUtils.isNotBlank(tokenLdap.getGrantId())) {
331  grantService.removeAllByGrantId(tokenLdap.getGrantId());
332  }
333  }
TokenLdap tokenLdap
Definition: AbstractAuthorizationGrant.java:55
GrantService grantService
Definition: AuthorizationGrant.java:57
void removeAllByGrantId(String p_grantId)
Definition: GrantService.java:374
TokenLdap getTokenLdap()
Definition: AbstractAuthorizationGrant.java:218

◆ save()

void org.xdi.oxauth.model.common.AuthorizationGrant.save ( )
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

103  {
105  if (getAuthorizationGrantType() == AuthorizationGrantType.AUTHORIZATION_CODE) {
106  saveInCache();
107  } else {
108  throw new UnsupportedOperationException(
109  "Grant caching is not supported for : " + getAuthorizationGrantType());
110  }
111  } else {
112  if (BooleanUtils.isTrue(appConfiguration.getUseCacheForAllImplicitFlowObjects()) && isImplicitFlow()) {
113  saveInCache();
114  return;
115  }
116  saveImpl();
117  }
118  }
boolean isImplicitFlow()
Definition: AuthorizationGrant.java:125
AppConfiguration appConfiguration
Definition: AbstractAuthorizationGrant.java:42
Boolean getUseCacheForAllImplicitFlowObjects()
Definition: AppConfiguration.java:952
void saveInCache()
Definition: AuthorizationGrant.java:120
void saveImpl()
Definition: AuthorizationGrant.java:129
boolean isCachedWithNoPersistence()
Definition: AuthorizationGrant.java:377
AuthorizationGrantType getAuthorizationGrantType()
Definition: AbstractAuthorizationGrant.java:328
AUTHORIZATION_CODE
Definition: AuthorizationGrantType.java:29

◆ setAccessTokens()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setAccessTokens ( List< AccessToken accessTokens)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

392  {
394  }
final ConcurrentMap< String, AccessToken > accessTokens
Definition: AbstractAuthorizationGrant.java:68
static< T extends AbstractToken > void put(ConcurrentMap< String, T > p_map, List< T > p_list)
Definition: AbstractAuthorizationGrant.java:396

◆ setAcrValues()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setAcrValues ( String  acrValues)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

241  {
242  this.acrValues = acrValues;
243  }
String acrValues
Definition: AbstractAuthorizationGrant.java:65

◆ setAuthenticationTime()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setAuthenticationTime ( Date  authenticationTime)
inlineinherited
367  {
369  }
Date authenticationTime
Definition: AbstractAuthorizationGrant.java:54

◆ setAuthorizationCode()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setAuthorizationCode ( AuthorizationCode  authorizationCode)
inlineinherited

Sets the AuthorizationCode.

引数
authorizationCodeThe authorization code.

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

115  {
117  }
AuthorizationCode authorizationCode
Definition: AbstractAuthorizationGrant.java:58

◆ setClaims()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setClaims ( String  claims)
inlineinherited
157  {
158  this.claims = claims;
159  }
String claims
Definition: AbstractAuthorizationGrant.java:63

◆ setCodeChallenge()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setCodeChallenge ( String  codeChallenge)
inlineinherited
141  {
143  }
String codeChallenge
Definition: AbstractAuthorizationGrant.java:61

◆ setCodeChallengeMethod()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setCodeChallengeMethod ( String  codeChallengeMethod)
inlineinherited
149  {
151  }
String codeChallengeMethod
Definition: AbstractAuthorizationGrant.java:62

◆ setGrantId()

synchronized void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setGrantId ( String  p_grantId)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

95  {
96  grantId = p_grantId;
97  }
String grantId
Definition: AbstractAuthorizationGrant.java:52

◆ setIdToken()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setIdToken ( IdToken  idToken)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

213  {
214  this.idToken = idToken;
215  }
IdToken idToken
Definition: AbstractAuthorizationGrant.java:57

◆ setIsCachedWithNoPersistence()

void org.xdi.oxauth.model.common.AuthorizationGrant.setIsCachedWithNoPersistence ( boolean  isCachedWithNoPersistence)
inlineinherited
381  {
383  }
boolean isCachedWithNoPersistence()
Definition: AuthorizationGrant.java:377

◆ setJwtAuthorizationRequest()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setJwtAuthorizationRequest ( JwtAuthorizationRequest  p_jwtAuthorizationRequest)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

387  {
388  jwtAuthorizationRequest = p_jwtAuthorizationRequest;
389  }
JwtAuthorizationRequest jwtAuthorizationRequest
Definition: AbstractAuthorizationGrant.java:53

◆ setLongLivedAccessToken()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setLongLivedAccessToken ( AccessToken  longLivedAccessToken)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

203  {
205  }
AccessToken longLivedAccessToken
Definition: AbstractAuthorizationGrant.java:56

◆ setNonce()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setNonce ( String  nonce)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

133  {
134  this.nonce = nonce;
135  }
String nonce
Definition: AbstractAuthorizationGrant.java:60

◆ setRefreshTokens()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setRefreshTokens ( List< RefreshToken refreshTokens)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

416  {
418  }
final ConcurrentMap< String, RefreshToken > refreshTokens
Definition: AbstractAuthorizationGrant.java:69
static< T extends AbstractToken > void put(ConcurrentMap< String, T > p_map, List< T > p_list)
Definition: AbstractAuthorizationGrant.java:396

◆ setScopes()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setScopes ( Collection< String >  scopes)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

192  {
193  this.scopes.clear();
194  this.scopes.addAll(scopes);
195  }
Set< String > scopes
Definition: AbstractAuthorizationGrant.java:50

◆ setSessionDn()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setSessionDn ( String  sessionDn)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

249  {
250  this.sessionDn = sessionDn;
251  }
String sessionDn
Definition: AbstractAuthorizationGrant.java:66

◆ setTokenBindingHash()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setTokenBindingHash ( String  tokenBindingHash)
inlineinherited
123  {
125  }
String tokenBindingHash
Definition: AbstractAuthorizationGrant.java:59

◆ setTokenLdap()

void org.xdi.oxauth.model.common.AbstractAuthorizationGrant.setTokenLdap ( TokenLdap  p_tokenLdap)
inlineinherited

org.xdi.oxauth.model.common.IAuthorizationGrantを実装しています。

223  {
224  this.tokenLdap = p_tokenLdap;
225  }
TokenLdap tokenLdap
Definition: AbstractAuthorizationGrant.java:55

◆ toString()

String org.xdi.oxauth.model.common.AbstractAuthorizationGrant.toString ( )
inlineinherited
467  {
468  return "AbstractAuthorizationGrant{" + "user=" + user + ", authorizationCode=" + authorizationCode + ", client="
469  + client + ", grantId='" + grantId + '\'' + ", nonce='" + nonce + '\'' + ", acrValues='" + acrValues
470  + '\'' + ", sessionDn='" + sessionDn + '\'' + ", codeChallenge='" + codeChallenge + '\''
471  + ", codeChallengeMethod='" + codeChallengeMethod + '\'' + ", authenticationTime=" + authenticationTime
472  + ", scopes=" + scopes + ", authorizationGrantType=" + authorizationGrantType + ", tokenBindingHash=" + tokenBindingHash
473  + ", claims=" + claims + '}';
474  }
String tokenBindingHash
Definition: AbstractAuthorizationGrant.java:59
String sessionDn
Definition: AbstractAuthorizationGrant.java:66
AuthorizationGrantType authorizationGrantType
Definition: AbstractAuthorizationGrant.java:48
String acrValues
Definition: AbstractAuthorizationGrant.java:65
String codeChallenge
Definition: AbstractAuthorizationGrant.java:61
String claims
Definition: AbstractAuthorizationGrant.java:63
Set< String > scopes
Definition: AbstractAuthorizationGrant.java:50
AuthorizationCode authorizationCode
Definition: AbstractAuthorizationGrant.java:58
String codeChallengeMethod
Definition: AbstractAuthorizationGrant.java:62
Client client
Definition: AbstractAuthorizationGrant.java:49
Date authenticationTime
Definition: AbstractAuthorizationGrant.java:54
User user
Definition: AbstractAuthorizationGrant.java:47
String nonce
Definition: AbstractAuthorizationGrant.java:60
String grantId
Definition: AbstractAuthorizationGrant.java:52

メンバ詳解

◆ accessTokens

final ConcurrentMap<String, AccessToken> org.xdi.oxauth.model.common.AbstractAuthorizationGrant.accessTokens = new ConcurrentHashMap<String, AccessToken>()
protectedinherited

◆ appConfiguration

AppConfiguration org.xdi.oxauth.model.common.AbstractAuthorizationGrant.appConfiguration
protectedinherited

◆ refreshTokens

final ConcurrentMap<String, RefreshToken> org.xdi.oxauth.model.common.AbstractAuthorizationGrant.refreshTokens = new ConcurrentHashMap<String, RefreshToken>()
protectedinherited

◆ scopeChecker

ScopeChecker org.xdi.oxauth.model.common.AbstractAuthorizationGrant.scopeChecker
protectedinherited

このクラス詳解は次のファイルから抽出されました: