keycloak-service
公開メンバ関数 | 静的公開メンバ関数 | 静的公開変数類 | 限定公開メンバ関数 | 静的非公開メンバ関数 | 全メンバ一覧
org.keycloak.authentication.actiontoken.DefaultActionToken クラス
org.keycloak.authentication.actiontoken.DefaultActionToken の継承関係図
Inheritance graph
org.keycloak.authentication.actiontoken.DefaultActionToken 連携図
Collaboration graph

公開メンバ関数

 DefaultActionToken ()
 
String getCompoundAuthenticationSessionId ()
 
final void setCompoundAuthenticationSessionId (String authenticationSessionId)
 
Map< String, String > getNotes ()
 
String getNote (String name)
 
final String setNote (String name, String value)
 
final String removeNote (String name)
 
String serialize (KeycloakSession session, RealmModel realm, UriInfo uri)
 
String getUserId ()
 
String getActionId ()
 
UUID getActionVerificationNonce ()
 

静的公開メンバ関数

static DefaultActionTokenKey from (String serializedKey)
 

静的公開変数類

static final String JSON_FIELD_AUTHENTICATION_SESSION_ID = "asid"
 
static final Predicate< DefaultActionTokenKeyACTION_TOKEN_BASIC_CHECKS
 
static final String ACTION_TOKEN_USER_ID = "ACTION_TOKEN_USER"
 
static final String JSON_FIELD_ACTION_VERIFICATION_NONCE = "nonce"
 

限定公開メンバ関数

 DefaultActionToken (String userId, String actionId, int absoluteExpirationInSecs, UUID actionVerificationNonce)
 
 DefaultActionToken (String userId, String actionId, int absoluteExpirationInSecs, UUID actionVerificationNonce, String compoundAuthenticationSessionId)
 

静的非公開メンバ関数

static String getIssuer (RealmModel realm, UriInfo uri)
 

詳解

Part of action token that is intended to be used e.g. in link sent in password-reset email. The token encapsulates user, expected action and its time of expiry.

著者
hmlnarik

構築子と解体子

◆ DefaultActionToken() [1/3]

org.keycloak.authentication.actiontoken.DefaultActionToken.DefaultActionToken ( )
inline

Single-use random value used for verification whether the relevant action is allowed.

52  {
53  super(null, null, 0, null);
54  }

◆ DefaultActionToken() [2/3]

org.keycloak.authentication.actiontoken.DefaultActionToken.DefaultActionToken ( String  userId,
String  actionId,
int  absoluteExpirationInSecs,
UUID  actionVerificationNonce 
)
inlineprotected
引数
userIdUser ID
actionIdAction ID
absoluteExpirationInSecsAbsolute expiration time in seconds in timezone of Keycloak.
actionVerificationNonce
63  {
64  super(userId, actionId, absoluteExpirationInSecs, actionVerificationNonce);
65  }
UUID actionVerificationNonce
Definition: DefaultActionTokenKey.java:43

◆ DefaultActionToken() [3/3]

org.keycloak.authentication.actiontoken.DefaultActionToken.DefaultActionToken ( String  userId,
String  actionId,
int  absoluteExpirationInSecs,
UUID  actionVerificationNonce,
String  compoundAuthenticationSessionId 
)
inlineprotected
引数
userIdUser ID
actionIdAction ID
absoluteExpirationInSecsAbsolute expiration time in seconds in timezone of Keycloak.
actionVerificationNonce
74  {
75  super(userId, actionId, absoluteExpirationInSecs, actionVerificationNonce);
76  setCompoundAuthenticationSessionId(compoundAuthenticationSessionId);
77  }
final void setCompoundAuthenticationSessionId(String authenticationSessionId)
Definition: DefaultActionToken.java:85
UUID actionVerificationNonce
Definition: DefaultActionTokenKey.java:43

関数詳解

◆ from()

static DefaultActionTokenKey org.keycloak.authentication.actiontoken.DefaultActionTokenKey.from ( String  serializedKey)
inlinestaticinherited
74  {
75  if (serializedKey == null) {
76  return null;
77  }
78  String[] parsed = DOT.split(serializedKey, 4);
79  if (parsed.length != 4) {
80  return null;
81  }
82 
83  String userId;
84  try {
85  userId = new String(Base64.decode(parsed[0]), StandardCharsets.UTF_8);
86  } catch (IOException ex) {
87  userId = parsed[0];
88  }
89  return new DefaultActionTokenKey(userId, parsed[3], Integer.parseInt(parsed[1]), UUID.fromString(parsed[2]));
90  }
static final Pattern DOT
Definition: DefaultActionTokenKey.java:72
DefaultActionTokenKey()
Definition: DefaultActionTokenKey.java:45

◆ getActionId()

String org.keycloak.authentication.actiontoken.DefaultActionTokenKey.getActionId ( )
inlineinherited
63  {
64  return getType();
65  }

◆ getActionVerificationNonce()

UUID org.keycloak.authentication.actiontoken.DefaultActionTokenKey.getActionVerificationNonce ( )
inlineinherited
68  {
70  }
UUID actionVerificationNonce
Definition: DefaultActionTokenKey.java:43

◆ getCompoundAuthenticationSessionId()

String org.keycloak.authentication.actiontoken.DefaultActionToken.getCompoundAuthenticationSessionId ( )
inline
80  {
81  return (String) getOtherClaims().get(JSON_FIELD_AUTHENTICATION_SESSION_ID);
82  }
static final String JSON_FIELD_AUTHENTICATION_SESSION_ID
Definition: DefaultActionToken.java:39

◆ getIssuer()

static String org.keycloak.authentication.actiontoken.DefaultActionToken.getIssuer ( RealmModel  realm,
UriInfo  uri 
)
inlinestaticprivate
151  {
152  return Urls.realmIssuer(uri.getBaseUri(), realm.getName());
153  }

◆ getNote()

String org.keycloak.authentication.actiontoken.DefaultActionToken.getNote ( String  name)
inline
100  {
101  Object res = getOtherClaims().get(name);
102  return res instanceof String ? (String) res : null;
103  }

◆ getNotes()

Map<String, String> org.keycloak.authentication.actiontoken.DefaultActionToken.getNotes ( )
inline
91  {
92  Map<String, String> res = new HashMap<>();
93  if (getCompoundAuthenticationSessionId() != null) {
95  }
96  return res;
97  }
static final String JSON_FIELD_AUTHENTICATION_SESSION_ID
Definition: DefaultActionToken.java:39
String getCompoundAuthenticationSessionId()
Definition: DefaultActionToken.java:80

◆ getUserId()

String org.keycloak.authentication.actiontoken.DefaultActionTokenKey.getUserId ( )
inlineinherited
57  {
58  return getSubject();
59  }

◆ removeNote()

final String org.keycloak.authentication.actiontoken.DefaultActionToken.removeNote ( String  name)
inline

Removes given note, and returns original value (or

null

when no value was present)

戻り値
see description
120  {
121  Object res = getOtherClaims().remove(name);
122  return res instanceof String ? (String) res : null;
123  }

◆ serialize()

String org.keycloak.authentication.actiontoken.DefaultActionToken.serialize ( KeycloakSession  session,
RealmModel  realm,
UriInfo  uri 
)
inline

Updates the following fields and serializes this token into a signed JWT. The list of updated fields follows:

  • id
    : random nonce
  • issuedAt
    : Current time
  • issuer
    : URI of the given realm
  • audience
    : URI of the given realm (same as issuer)
引数
session
realm
uri
戻り値
139  {
140  String issuerUri = getIssuer(realm, uri);
141 
142  this
143  .issuedAt(Time.currentTime())
144  .id(getActionVerificationNonce().toString())
145  .issuer(issuerUri)
146  .audience(issuerUri);
147 
148  return session.tokens().encode(this);
149  }
UUID getActionVerificationNonce()
Definition: DefaultActionTokenKey.java:68
static String getIssuer(RealmModel realm, UriInfo uri)
Definition: DefaultActionToken.java:151

◆ setCompoundAuthenticationSessionId()

final void org.keycloak.authentication.actiontoken.DefaultActionToken.setCompoundAuthenticationSessionId ( String  authenticationSessionId)
inline
85  {
86  setOtherClaims(JSON_FIELD_AUTHENTICATION_SESSION_ID, authenticationSessionId);
87  }
static final String JSON_FIELD_AUTHENTICATION_SESSION_ID
Definition: DefaultActionToken.java:39

◆ setNote()

final String org.keycloak.authentication.actiontoken.DefaultActionToken.setNote ( String  name,
String  value 
)
inline

Sets value of the given note

戻り値
original value (or
null
when no value was present)
109  {
110  Object res = value == null
111  ? getOtherClaims().remove(name)
112  : getOtherClaims().put(name, value);
113  return res instanceof String ? (String) res : null;
114  }

メンバ詳解

◆ ACTION_TOKEN_BASIC_CHECKS

final Predicate<DefaultActionTokenKey> org.keycloak.authentication.actiontoken.DefaultActionToken.ACTION_TOKEN_BASIC_CHECKS
static
初期値:
= t -> {
if (t.getActionVerificationNonce() == null) {
throw new VerificationException("Nonce not present.");
}
return true;
}

◆ ACTION_TOKEN_USER_ID

final String org.keycloak.authentication.actiontoken.DefaultActionTokenKey.ACTION_TOKEN_USER_ID = "ACTION_TOKEN_USER"
staticinherited

The authenticationSession note with ID of the user authenticated via the action token

◆ JSON_FIELD_ACTION_VERIFICATION_NONCE

final String org.keycloak.authentication.actiontoken.DefaultActionTokenKey.JSON_FIELD_ACTION_VERIFICATION_NONCE = "nonce"
staticinherited

◆ JSON_FIELD_AUTHENTICATION_SESSION_ID

final String org.keycloak.authentication.actiontoken.DefaultActionToken.JSON_FIELD_AUTHENTICATION_SESSION_ID = "asid"
static

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