keycloak
公開メンバ関数 | 公開変数類 | 限定公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
org.keycloak.storage.adapter.AbstractUserAdapter クラスabstract
org.keycloak.storage.adapter.AbstractUserAdapter の継承関係図
Inheritance graph
org.keycloak.storage.adapter.AbstractUserAdapter 連携図
Collaboration graph

公開メンバ関数

 AbstractUserAdapter (KeycloakSession session, RealmModel realm, ComponentModel storageProviderModel)
 
Set< String > getRequiredActions ()
 
void addRequiredAction (String action)
 
void removeRequiredAction (String action)
 
void addRequiredAction (RequiredAction action)
 
void removeRequiredAction (RequiredAction action)
 
Set< GroupModelgetGroups ()
 
void joinGroup (GroupModel group)
 
void leaveGroup (GroupModel group)
 
boolean isMemberOf (GroupModel group)
 
Set< RoleModelgetRealmRoleMappings ()
 
Set< RoleModelgetClientRoleMappings (ClientModel app)
 
boolean hasRole (RoleModel role)
 
void grantRole (RoleModel role)
 
Set< RoleModelgetRoleMappings ()
 
void deleteRoleMapping (RoleModel role)
 
boolean isEnabled ()
 
void setEnabled (boolean enabled)
 
String getFederationLink ()
 
void setFederationLink (String link)
 
String getServiceAccountClientLink ()
 
void setServiceAccountClientLink (String clientInternalId)
 
String getId ()
 
void setUsername (String username)
 
Long getCreatedTimestamp ()
 
void setCreatedTimestamp (Long timestamp)
 
void setSingleAttribute (String name, String value)
 
void removeAttribute (String name)
 
void setAttribute (String name, List< String > values)
 
String getFirstAttribute (String name)
 
Map< String, List< String > > getAttributes ()
 
List< String > getAttribute (String name)
 
String getFirstName ()
 
void setFirstName (String firstName)
 
String getLastName ()
 
void setLastName (String lastName)
 
String getEmail ()
 
void setEmail (String email)
 
boolean isEmailVerified ()
 
void setEmailVerified (boolean verified)
 
boolean equals (Object o)
 
int hashCode ()
 
String getUsername ()
 

公開変数類

String USERNAME = "username"
 
String LAST_NAME = "lastName"
 
String FIRST_NAME = "firstName"
 
String EMAIL = "email"
 
String LOCALE = "locale"
 

限定公開メンバ関数

Set< GroupModelgetGroupsInternal ()
 
boolean appendDefaultGroups ()
 
boolean appendDefaultRolesToRoleMappings ()
 
Set< RoleModelgetRoleMappingsInternal ()
 

限定公開変数類

KeycloakSession session
 
RealmModel realm
 
ComponentModel storageProviderModel
 
StorageId storageId
 
long created = System.currentTimeMillis()
 

詳解

This abstract class provides implementations for everything but getUsername(). getId() returns a default value of "f:" + providerId + ":" + getUsername(). isEnabled() returns true. getRoleMappings() will return default roles. getGroups() will return default groups.

All other read methods return null, an empty collection, or false depending on the type. All update methods throw a ReadOnlyException.

Provider implementors should override the methods for attributes, properties, and mappings they support.

著者
Bill Burke
バージョン
Revision
1

構築子と解体子

◆ AbstractUserAdapter()

org.keycloak.storage.adapter.AbstractUserAdapter.AbstractUserAdapter ( KeycloakSession  session,
RealmModel  realm,
ComponentModel  storageProviderModel 
)
inline
57  {
58  this.session = session;
59  this.realm = realm;
61  }
RealmModel realm
Definition: AbstractUserAdapter.java:54
ComponentModel storageProviderModel
Definition: AbstractUserAdapter.java:55
KeycloakSession session
Definition: AbstractUserAdapter.java:53

関数詳解

◆ addRequiredAction() [1/2]

void org.keycloak.storage.adapter.AbstractUserAdapter.addRequiredAction ( String  action)
inline

org.keycloak.models.UserModelを実装しています。

69  {
70  throw new ReadOnlyException("user is read only for this update");
71 
72  }

◆ addRequiredAction() [2/2]

void org.keycloak.storage.adapter.AbstractUserAdapter.addRequiredAction ( RequiredAction  action)
inline

org.keycloak.models.UserModelを実装しています。

81  {
82  throw new ReadOnlyException("user is read only for this update");
83 
84  }

◆ appendDefaultGroups()

boolean org.keycloak.storage.adapter.AbstractUserAdapter.appendDefaultGroups ( )
inlineprotected

Should the realm's default groups be appended to getGroups() call? If your storage provider is not managing group mappings then it is recommended that this method return true

戻り値
107  {
108  return true;
109  }

◆ appendDefaultRolesToRoleMappings()

boolean org.keycloak.storage.adapter.AbstractUserAdapter.appendDefaultRolesToRoleMappings ( )
inlineprotected

Should the realm's default roles be appended to getRoleMappings() call? If your storage provider is not managing all role mappings then it is recommended that this method return true

戻り値
188  {
189  return true;
190  }

◆ deleteRoleMapping()

void org.keycloak.storage.adapter.AbstractUserAdapter.deleteRoleMapping ( RoleModel  role)
inline

org.keycloak.models.RoleMapperModelを実装しています。

206  {
207  throw new ReadOnlyException("user is read only for this update");
208 
209  }

◆ equals()

boolean org.keycloak.storage.adapter.AbstractUserAdapter.equals ( Object  o)
inline
374  {
375  if (this == o) return true;
376  if (o == null || !(o instanceof UserModel)) return false;
377 
378  UserModel that = (UserModel) o;
379  return that.getId().equals(getId());
380  }
String getId()
Definition: AbstractUserAdapter.java:271

◆ getAttribute()

List<String> org.keycloak.storage.adapter.AbstractUserAdapter.getAttribute ( String  name)
inline

org.keycloak.models.UserModelを実装しています。

325  {
326  return null;
327  }

◆ getAttributes()

Map<String, List<String> > org.keycloak.storage.adapter.AbstractUserAdapter.getAttributes ( )
inline

org.keycloak.models.UserModelを実装しています。

320  {
321  return new MultivaluedHashMap<>();
322  }

◆ getClientRoleMappings()

Set<RoleModel> org.keycloak.storage.adapter.AbstractUserAdapter.getClientRoleMappings ( ClientModel  app)
inline

org.keycloak.models.RoleMapperModelを実装しています。

152  {
153  Set<RoleModel> roleMappings = getRoleMappings();
154 
155  Set<RoleModel> roles = new HashSet<RoleModel>();
156  for (RoleModel role : roleMappings) {
157  RoleContainerModel container = role.getContainer();
158  if (container instanceof ClientModel) {
159  ClientModel appModel = (ClientModel) container;
160  if (appModel.getId().equals(app.getId())) {
161  roles.add(role);
162  }
163  }
164  }
165  return roles;
166  }
Set< RoleModel > getRoleMappings()
Definition: AbstractUserAdapter.java:197

◆ getCreatedTimestamp()

Long org.keycloak.storage.adapter.AbstractUserAdapter.getCreatedTimestamp ( )
inline

org.keycloak.models.UserModelを実装しています。

286  {
287  return created;
288  }
long created
Definition: AbstractUserAdapter.java:283

◆ getEmail()

String org.keycloak.storage.adapter.AbstractUserAdapter.getEmail ( )
inline

org.keycloak.models.UserModelを実装しています。

352  {
353  return null;
354  }

◆ getFederationLink()

String org.keycloak.storage.adapter.AbstractUserAdapter.getFederationLink ( )
inline

This method should not be overriden

戻り値

org.keycloak.models.UserModelを実装しています。

227  {
228  return null;
229  }

◆ getFirstAttribute()

String org.keycloak.storage.adapter.AbstractUserAdapter.getFirstAttribute ( String  name)
inline

org.keycloak.models.UserModelを実装しています。

315  {
316  return null;
317  }

◆ getFirstName()

String org.keycloak.storage.adapter.AbstractUserAdapter.getFirstName ( )
inline

org.keycloak.models.UserModelを実装しています。

330  {
331  return null;
332  }

◆ getGroups()

Set<GroupModel> org.keycloak.storage.adapter.AbstractUserAdapter.getGroups ( )
inline

org.keycloak.models.UserModelを実装しています。

112  {
113  Set<GroupModel> set = new HashSet<>();
114  if (appendDefaultGroups()) set.addAll(realm.getDefaultGroups());
115  set.addAll(getGroupsInternal());
116  return set;
117  }
boolean appendDefaultGroups()
Definition: AbstractUserAdapter.java:107
Set< GroupModel > getGroupsInternal()
Definition: AbstractUserAdapter.java:96
List< GroupModel > getDefaultGroups()
RealmModel realm
Definition: AbstractUserAdapter.java:54

◆ getGroupsInternal()

Set<GroupModel> org.keycloak.storage.adapter.AbstractUserAdapter.getGroupsInternal ( )
inlineprotected

Get group membership mappings that are managed by this storage provider

戻り値
96  {
97  return Collections.EMPTY_SET;
98  }

◆ getId()

String org.keycloak.storage.adapter.AbstractUserAdapter.getId ( )
inline

Defaults to 'f:' + storageProvider.getId() + ':' + getUsername()

戻り値

org.keycloak.models.UserModelを実装しています。

271  {
272  if (storageId == null) {
273  storageId = new StorageId(storageProviderModel.getId(), getUsername());
274  }
275  return storageId.getId();
276  }
String getId()
Definition: StorageId.java:94
String getId()
Definition: ComponentModel.java:55
ComponentModel storageProviderModel
Definition: AbstractUserAdapter.java:55
StorageId storageId
Definition: AbstractUserAdapter.java:263

◆ getLastName()

String org.keycloak.storage.adapter.AbstractUserAdapter.getLastName ( )
inline

org.keycloak.models.UserModelを実装しています。

341  {
342  return null;
343  }

◆ getRealmRoleMappings()

Set<RoleModel> org.keycloak.storage.adapter.AbstractUserAdapter.getRealmRoleMappings ( )
inline

org.keycloak.models.RoleMapperModelを実装しています。

138  {
139  Set<RoleModel> roleMappings = getRoleMappings();
140 
141  Set<RoleModel> realmRoles = new HashSet<RoleModel>();
142  for (RoleModel role : roleMappings) {
143  RoleContainerModel container = role.getContainer();
144  if (container instanceof RealmModel) {
145  realmRoles.add(role);
146  }
147  }
148  return realmRoles;
149  }
Set< RoleModel > getRoleMappings()
Definition: AbstractUserAdapter.java:197

◆ getRequiredActions()

Set<String> org.keycloak.storage.adapter.AbstractUserAdapter.getRequiredActions ( )
inline

org.keycloak.models.UserModelを実装しています。

64  {
65  return Collections.EMPTY_SET;
66  }

◆ getRoleMappings()

Set<RoleModel> org.keycloak.storage.adapter.AbstractUserAdapter.getRoleMappings ( )
inline

org.keycloak.models.RoleMapperModelを実装しています。

197  {
198  Set<RoleModel> set = new HashSet<>();
199  if (appendDefaultRolesToRoleMappings()) set.addAll(DefaultRoles.getDefaultRoles(realm));
200  set.addAll(getRoleMappingsInternal());
201  return set;
202  }
Set< RoleModel > getRoleMappingsInternal()
Definition: AbstractUserAdapter.java:192
RealmModel realm
Definition: AbstractUserAdapter.java:54
boolean appendDefaultRolesToRoleMappings()
Definition: AbstractUserAdapter.java:188

◆ getRoleMappingsInternal()

Set<RoleModel> org.keycloak.storage.adapter.AbstractUserAdapter.getRoleMappingsInternal ( )
inlineprotected
192  {
193  return Collections.EMPTY_SET;
194  }

◆ getServiceAccountClientLink()

String org.keycloak.storage.adapter.AbstractUserAdapter.getServiceAccountClientLink ( )
inline

This method should not be overriden

戻り値

org.keycloak.models.UserModelを実装しています。

248  {
249  return null;
250  }

◆ getUsername()

String org.keycloak.models.UserModel.getUsername ( )
inherited

◆ grantRole()

void org.keycloak.storage.adapter.AbstractUserAdapter.grantRole ( RoleModel  role)
inline

org.keycloak.models.RoleMapperModelを実装しています。

176  {
177  throw new ReadOnlyException("user is read only for this update");
178 
179  }

◆ hashCode()

int org.keycloak.storage.adapter.AbstractUserAdapter.hashCode ( )
inline
383  {
384  return getId().hashCode();
385  }
String getId()
Definition: AbstractUserAdapter.java:271

◆ hasRole()

boolean org.keycloak.storage.adapter.AbstractUserAdapter.hasRole ( RoleModel  role)
inline

org.keycloak.models.RoleMapperModelを実装しています。

169  {
170  Set<RoleModel> roles = getRoleMappings();
171  return RoleUtils.hasRole(roles, role)
172  || RoleUtils.hasRoleFromGroup(getGroups(), role, true);
173  }
Set< GroupModel > getGroups()
Definition: AbstractUserAdapter.java:112
Set< RoleModel > getRoleMappings()
Definition: AbstractUserAdapter.java:197

◆ isEmailVerified()

boolean org.keycloak.storage.adapter.AbstractUserAdapter.isEmailVerified ( )
inline

org.keycloak.models.UserModelを実装しています。

363  {
364  return false;
365  }

◆ isEnabled()

boolean org.keycloak.storage.adapter.AbstractUserAdapter.isEnabled ( )
inline

org.keycloak.models.UserModelを実装しています。

212  {
213  return true;
214  }

◆ isMemberOf()

boolean org.keycloak.storage.adapter.AbstractUserAdapter.isMemberOf ( GroupModel  group)
inline

org.keycloak.models.UserModelを実装しています。

132  {
133  Set<GroupModel> roles = getGroups();
134  return RoleUtils.isMember(roles, group);
135  }
Set< GroupModel > getGroups()
Definition: AbstractUserAdapter.java:112

◆ joinGroup()

void org.keycloak.storage.adapter.AbstractUserAdapter.joinGroup ( GroupModel  group)
inline

org.keycloak.models.UserModelを実装しています。

120  {
121  throw new ReadOnlyException("user is read only for this update");
122 
123  }

◆ leaveGroup()

void org.keycloak.storage.adapter.AbstractUserAdapter.leaveGroup ( GroupModel  group)
inline

org.keycloak.models.UserModelを実装しています。

126  {
127  throw new ReadOnlyException("user is read only for this update");
128 
129  }

◆ removeAttribute()

void org.keycloak.storage.adapter.AbstractUserAdapter.removeAttribute ( String  name)
inline

org.keycloak.models.UserModelを実装しています。

303  {
304  throw new ReadOnlyException("user is read only for this update");
305 
306  }

◆ removeRequiredAction() [1/2]

void org.keycloak.storage.adapter.AbstractUserAdapter.removeRequiredAction ( String  action)
inline

org.keycloak.models.UserModelを実装しています。

75  {
76  throw new ReadOnlyException("user is read only for this update");
77 
78  }

◆ removeRequiredAction() [2/2]

void org.keycloak.storage.adapter.AbstractUserAdapter.removeRequiredAction ( RequiredAction  action)
inline

org.keycloak.models.UserModelを実装しています。

87  {
88  throw new ReadOnlyException("user is read only for this update");
89  }

◆ setAttribute()

void org.keycloak.storage.adapter.AbstractUserAdapter.setAttribute ( String  name,
List< String >  values 
)
inline

org.keycloak.models.UserModelを実装しています。

309  {
310  throw new ReadOnlyException("user is read only for this update");
311 
312  }

◆ setCreatedTimestamp()

void org.keycloak.storage.adapter.AbstractUserAdapter.setCreatedTimestamp ( Long  timestamp)
inline

org.keycloak.models.UserModelを実装しています。

291  {
292  throw new ReadOnlyException("user is read only for this update");
293 
294  }

◆ setEmail()

void org.keycloak.storage.adapter.AbstractUserAdapter.setEmail ( String  email)
inline

org.keycloak.models.UserModelを実装しています。

357  {
358  throw new ReadOnlyException("user is read only for this update");
359 
360  }

◆ setEmailVerified()

void org.keycloak.storage.adapter.AbstractUserAdapter.setEmailVerified ( boolean  verified)
inline

org.keycloak.models.UserModelを実装しています。

368  {
369  throw new ReadOnlyException("user is read only for this update");
370 
371  }

◆ setEnabled()

void org.keycloak.storage.adapter.AbstractUserAdapter.setEnabled ( boolean  enabled)
inline

org.keycloak.models.UserModelを実装しています。

217  {
218  throw new ReadOnlyException("user is read only for this update");
219  }

◆ setFederationLink()

void org.keycloak.storage.adapter.AbstractUserAdapter.setFederationLink ( String  link)
inline

This method should not be overriden

戻り値

org.keycloak.models.UserModelを実装しています。

237  {
238  throw new ReadOnlyException("user is read only for this update");
239 
240  }

◆ setFirstName()

void org.keycloak.storage.adapter.AbstractUserAdapter.setFirstName ( String  firstName)
inline

org.keycloak.models.UserModelを実装しています。

335  {
336  throw new ReadOnlyException("user is read only for this update");
337 
338  }

◆ setLastName()

void org.keycloak.storage.adapter.AbstractUserAdapter.setLastName ( String  lastName)
inline

org.keycloak.models.UserModelを実装しています。

346  {
347  throw new ReadOnlyException("user is read only for this update");
348 
349  }

◆ setServiceAccountClientLink()

void org.keycloak.storage.adapter.AbstractUserAdapter.setServiceAccountClientLink ( String  clientInternalId)
inline

This method should not be overriden

戻り値

org.keycloak.models.UserModelを実装しています。

258  {
259  throw new ReadOnlyException("user is read only for this update");
260 
261  }

◆ setSingleAttribute()

void org.keycloak.storage.adapter.AbstractUserAdapter.setSingleAttribute ( String  name,
String  value 
)
inline

org.keycloak.models.UserModelを実装しています。

297  {
298  throw new ReadOnlyException("user is read only for this update");
299 
300  }

◆ setUsername()

void org.keycloak.storage.adapter.AbstractUserAdapter.setUsername ( String  username)
inline

org.keycloak.models.UserModelを実装しています。

279  {
280  throw new ReadOnlyException("user is read only for this update");
281  }

メンバ詳解

◆ created

long org.keycloak.storage.adapter.AbstractUserAdapter.created = System.currentTimeMillis()
protected

◆ EMAIL

String org.keycloak.models.UserModel.EMAIL = "email"
inherited

◆ FIRST_NAME

String org.keycloak.models.UserModel.FIRST_NAME = "firstName"
inherited

◆ LAST_NAME

String org.keycloak.models.UserModel.LAST_NAME = "lastName"
inherited

◆ LOCALE

String org.keycloak.models.UserModel.LOCALE = "locale"
inherited

◆ realm

RealmModel org.keycloak.storage.adapter.AbstractUserAdapter.realm
protected

◆ session

KeycloakSession org.keycloak.storage.adapter.AbstractUserAdapter.session
protected

◆ storageId

StorageId org.keycloak.storage.adapter.AbstractUserAdapter.storageId
protected

◆ storageProviderModel

ComponentModel org.keycloak.storage.adapter.AbstractUserAdapter.storageProviderModel
protected

◆ USERNAME

String org.keycloak.models.UserModel.USERNAME = "username"
inherited

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