keycloak-service
クラス | 公開メンバ関数 | 非公開変数類 | 全メンバ一覧
org.keycloak.services.resources.account.AccountCredentialResource クラス
org.keycloak.services.resources.account.AccountCredentialResource 連携図
Collaboration graph

クラス

class  PasswordDetails
 
class  PasswordUpdate
 

公開メンバ関数

 AccountCredentialResource (KeycloakSession session, EventBuilder event, UserModel user)
 
PasswordDetails passwordDetails ()
 
Response passwordUpdate (PasswordUpdate update)
 

非公開変数類

final KeycloakSession session
 
final EventBuilder event
 
final UserModel user
 
final RealmModel realm
 

詳解

構築子と解体子

◆ AccountCredentialResource()

org.keycloak.services.resources.account.AccountCredentialResource.AccountCredentialResource ( KeycloakSession  session,
EventBuilder  event,
UserModel  user 
)
inline
32  {
33  this.session = session;
34  this.event = event;
35  this.user = user;
36  realm = session.getContext().getRealm();
37  }
final EventBuilder event
Definition: AccountCredentialResource.java:28
final UserModel user
Definition: AccountCredentialResource.java:29
final KeycloakSession session
Definition: AccountCredentialResource.java:27
final RealmModel realm
Definition: AccountCredentialResource.java:30

関数詳解

◆ passwordDetails()

PasswordDetails org.keycloak.services.resources.account.AccountCredentialResource.passwordDetails ( )
inline
42  {
43  PasswordCredentialProvider passwordProvider = (PasswordCredentialProvider) session.getProvider(CredentialProvider.class, PasswordCredentialProviderFactory.PROVIDER_ID);
44  CredentialModel password = passwordProvider.getPassword(realm, user);
45 
46  PasswordDetails details = new PasswordDetails();
47  if (password != null) {
48  details.setRegistered(true);
49  details.setLastUpdate(password.getCreatedDate());
50  } else {
51  details.setRegistered(false);
52  }
53 
54  return details;
55  }
final UserModel user
Definition: AccountCredentialResource.java:29
final KeycloakSession session
Definition: AccountCredentialResource.java:27
final RealmModel realm
Definition: AccountCredentialResource.java:30

◆ passwordUpdate()

Response org.keycloak.services.resources.account.AccountCredentialResource.passwordUpdate ( PasswordUpdate  update)
inline
60  {
61  event.event(EventType.UPDATE_PASSWORD);
62 
63  UserCredentialModel cred = UserCredentialModel.password(update.getCurrentPassword());
64  if (!session.userCredentialManager().isValid(realm, user, cred)) {
65  event.error(org.keycloak.events.Errors.INVALID_USER_CREDENTIALS);
66  return ErrorResponse.error(Messages.INVALID_PASSWORD_EXISTING, Response.Status.BAD_REQUEST);
67  }
68 
69  if (update.getNewPassword() == null) {
70  return ErrorResponse.error(Messages.INVALID_PASSWORD_EXISTING, Response.Status.BAD_REQUEST);
71  }
72 
73  String confirmation = update.getConfirmation();
74  if ((confirmation != null) && !update.getNewPassword().equals(confirmation)) {
75  return ErrorResponse.error(Messages.NOTMATCH_PASSWORD, Response.Status.BAD_REQUEST);
76  }
77 
78  try {
79  session.userCredentialManager().updateCredential(realm, user, UserCredentialModel.password(update.getNewPassword(), false));
80  } catch (ModelException e) {
81  return ErrorResponse.error(e.getMessage(), e.getParameters(), Response.Status.BAD_REQUEST);
82  }
83 
84  return Response.ok().build();
85  }
final UserModel user
Definition: AccountCredentialResource.java:29
final KeycloakSession session
Definition: AccountCredentialResource.java:27
final RealmModel realm
Definition: AccountCredentialResource.java:30

メンバ詳解

◆ event

final EventBuilder org.keycloak.services.resources.account.AccountCredentialResource.event
private

◆ realm

final RealmModel org.keycloak.services.resources.account.AccountCredentialResource.realm
private

◆ session

final KeycloakSession org.keycloak.services.resources.account.AccountCredentialResource.session
private

◆ user

final UserModel org.keycloak.services.resources.account.AccountCredentialResource.user
private

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