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

公開メンバ関数

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

公開変数類

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

限定公開メンバ関数

void checkReadonly ()
 

非公開変数類

String username
 
Long createdTimestamp = Time.currentTimeMillis()
 
String firstName
 
String lastName
 
String email
 
boolean emailVerified
 
boolean enabled
 
String realmId
 
Set< String > roleIds = new HashSet<>()
 
Set< String > groupIds = new HashSet<>()
 
MultivaluedHashMap< String, String > attributes = new MultivaluedHashMap<>()
 
Set< String > requiredActions = new HashSet<>()
 
String federationLink
 
String serviceAccountClientLink
 
KeycloakSession session
 
RealmModel realm
 
String id
 
boolean readonly
 

詳解

著者
Bill Burke
バージョン
Revision
1

構築子と解体子

◆ InMemoryUserAdapter()

org.keycloak.storage.adapter.InMemoryUserAdapter.InMemoryUserAdapter ( KeycloakSession  session,
RealmModel  realm,
String  id 
)
inline
67  {
68  this.session = session;
69  this.realm = realm;
70  this.id = id;
71 
72 
73  }
String id
Definition: InMemoryUserAdapter.java:64
RealmModel realm
Definition: InMemoryUserAdapter.java:63
KeycloakSession session
Definition: InMemoryUserAdapter.java:62

関数詳解

◆ addDefaults()

void org.keycloak.storage.adapter.InMemoryUserAdapter.addDefaults ( )
inline
75  {
76  DefaultRoles.addDefaultRoles(realm, this);
77 
78  for (GroupModel g : realm.getDefaultGroups()) {
79  joinGroup(g);
80  }
81 
82  }
RealmModel realm
Definition: InMemoryUserAdapter.java:63
void joinGroup(GroupModel group)
Definition: InMemoryUserAdapter.java:264
List< GroupModel > getDefaultGroups()

◆ addRequiredAction() [1/2]

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

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

178  {
179  checkReadonly();
180  requiredActions.add(action);
181 
182  }
Set< String > requiredActions
Definition: InMemoryUserAdapter.java:58
void checkReadonly()
Definition: InMemoryUserAdapter.java:88

◆ addRequiredAction() [2/2]

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

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

192  {
193  checkReadonly();
194  requiredActions.add(action.name());
195 
196  }
Set< String > requiredActions
Definition: InMemoryUserAdapter.java:58
void checkReadonly()
Definition: InMemoryUserAdapter.java:88

◆ checkReadonly()

void org.keycloak.storage.adapter.InMemoryUserAdapter.checkReadonly ( )
inlineprotected
88  {
89  if (readonly) throw new ReadOnlyException("In memory user model is not writable");
90  }
boolean readonly
Definition: InMemoryUserAdapter.java:65

◆ deleteRoleMapping()

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

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

360  {
361  roleIds.remove(role.getId());
362 
363  }
Set< String > roleIds
Definition: InMemoryUserAdapter.java:54

◆ equals()

boolean org.keycloak.storage.adapter.InMemoryUserAdapter.equals ( Object  o)
inline
366  {
367  if (this == o) return true;
368  if (o == null || !(o instanceof UserModel)) return false;
369 
370  UserModel that = (UserModel) o;
371  return that.getId().equals(getId());
372  }
String getId()
Definition: InMemoryUserAdapter.java:93

◆ getAttribute()

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

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

159  {
160  List<String> value = attributes.get(name);
161  if (value == null) {
162  return new LinkedList<>();
163  }
164  return value;
165  }
MultivaluedHashMap< String, String > attributes
Definition: InMemoryUserAdapter.java:57

◆ getAttributes()

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

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

168  {
169  return attributes;
170  }
MultivaluedHashMap< String, String > attributes
Definition: InMemoryUserAdapter.java:57

◆ getClientRoleMappings()

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

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

324  {
325  Set<RoleModel> result = new HashSet<RoleModel>();
326  Set<RoleModel> roles = getRoleMappings();
327 
328  for (RoleModel role : roles) {
329  if (app.equals(role.getContainer())) {
330  result.add(role);
331  }
332  }
333  return result;
334  }
Set< RoleModel > getRoleMappings()
Definition: InMemoryUserAdapter.java:350

◆ getCreatedTimestamp()

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

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

110  {
111  return createdTimestamp;
112  }
Long createdTimestamp
Definition: InMemoryUserAdapter.java:45

◆ getEmail()

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

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

229  {
230  return email;
231  }
String email
Definition: InMemoryUserAdapter.java:48

◆ getFederationLink()

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

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

286  {
287  return federationLink;
288  }
String federationLink
Definition: InMemoryUserAdapter.java:59

◆ getFirstAttribute()

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

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

154  {
155  return attributes.getFirst(name);
156  }
V getFirst(K key)
Definition: MultivaluedHashMap.java:86
MultivaluedHashMap< String, String > attributes
Definition: InMemoryUserAdapter.java:57

◆ getFirstName()

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

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

205  {
206  return firstName;
207  }
String firstName
Definition: InMemoryUserAdapter.java:46

◆ getGroups()

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

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

254  {
255  if (groupIds.size() == 0) return Collections.EMPTY_SET;
256  Set<GroupModel> groups = new HashSet<>();
257  for (String id : groupIds) {
258  groups.add(realm.getGroupById(id));
259  }
260  return groups;
261  }
RealmModel realm
Definition: InMemoryUserAdapter.java:63
GroupModel getGroupById(String id)
Set< String > groupIds
Definition: InMemoryUserAdapter.java:55

◆ getId()

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

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

93  {
94  return id;
95  }
String id
Definition: InMemoryUserAdapter.java:64

◆ getLastName()

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

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

217  {
218  return lastName;
219  }
String lastName
Definition: InMemoryUserAdapter.java:47

◆ getRealmRoleMappings()

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

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

310  {
311  Set<RoleModel> allRoles = getRoleMappings();
312 
313  // Filter to retrieve just realm roles
314  Set<RoleModel> realmRoles = new HashSet<RoleModel>();
315  for (RoleModel role : allRoles) {
316  if (role.getContainer() instanceof RealmModel) {
317  realmRoles.add(role);
318  }
319  }
320  return realmRoles;
321  }
Set< RoleModel > getRoleMappings()
Definition: InMemoryUserAdapter.java:350

◆ getRequiredActions()

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

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

173  {
174  return requiredActions;
175  }
Set< String > requiredActions
Definition: InMemoryUserAdapter.java:58

◆ getRoleMappings()

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

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

350  {
351  if (roleIds.size() == 0) return Collections.EMPTY_SET;
352  Set<RoleModel> roles = new HashSet<>();
353  for (String id : roleIds) {
354  roles.add(realm.getRoleById(id));
355  }
356  return roles;
357  }
Set< String > roleIds
Definition: InMemoryUserAdapter.java:54
RealmModel realm
Definition: InMemoryUserAdapter.java:63
RoleModel getRoleById(String id)

◆ getServiceAccountClientLink()

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

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

298  {
300  }
String serviceAccountClientLink
Definition: InMemoryUserAdapter.java:60

◆ getUsername()

String org.keycloak.storage.adapter.InMemoryUserAdapter.getUsername ( )
inline

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

98  {
99  return username;
100  }
String username
Definition: InMemoryUserAdapter.java:44

◆ grantRole()

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

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

344  {
345  roleIds.add(role.getId());
346 
347  }
Set< String > roleIds
Definition: InMemoryUserAdapter.java:54

◆ hashCode()

int org.keycloak.storage.adapter.InMemoryUserAdapter.hashCode ( )
inline
375  {
376  return getId().hashCode();
377  }
String getId()
Definition: InMemoryUserAdapter.java:93

◆ hasRole()

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

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

337  {
338  Set<RoleModel> roles = getRoleMappings();
339  return RoleUtils.hasRole(roles, role)
340  || RoleUtils.hasRoleFromGroup(getGroups(), role, true);
341  }
Set< GroupModel > getGroups()
Definition: InMemoryUserAdapter.java:254
Set< RoleModel > getRoleMappings()
Definition: InMemoryUserAdapter.java:350

◆ isEmailVerified()

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

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

242  {
243  return emailVerified;
244  }
boolean emailVerified
Definition: InMemoryUserAdapter.java:49

◆ isEnabled()

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

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

121  {
122  return enabled;
123  }
boolean enabled
Definition: InMemoryUserAdapter.java:50

◆ isMemberOf()

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

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

278  {
279  if (groupIds == null) return false;
280  if (groupIds.contains(group.getId())) return true;
281  Set<GroupModel> groups = getGroups();
282  return RoleUtils.isMember(groups, group);
283  }
Set< GroupModel > getGroups()
Definition: InMemoryUserAdapter.java:254
Set< String > groupIds
Definition: InMemoryUserAdapter.java:55

◆ joinGroup()

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

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

264  {
265  checkReadonly();
266  groupIds.add(group.getId());
267 
268  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
Set< String > groupIds
Definition: InMemoryUserAdapter.java:55

◆ leaveGroup()

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

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

271  {
272  checkReadonly();
273  groupIds.remove(group.getId());
274 
275  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
Set< String > groupIds
Definition: InMemoryUserAdapter.java:55

◆ removeAttribute()

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

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

147  {
148  checkReadonly();
149  attributes.remove(name);
150 
151  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
MultivaluedHashMap< String, String > attributes
Definition: InMemoryUserAdapter.java:57

◆ removeRequiredAction() [1/2]

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

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

185  {
186  checkReadonly();
187  requiredActions.remove(action);
188 
189  }
Set< String > requiredActions
Definition: InMemoryUserAdapter.java:58
void checkReadonly()
Definition: InMemoryUserAdapter.java:88

◆ removeRequiredAction() [2/2]

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

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

199  {
200  checkReadonly();
201  requiredActions.remove(action.name());
202  }
Set< String > requiredActions
Definition: InMemoryUserAdapter.java:58
void checkReadonly()
Definition: InMemoryUserAdapter.java:88

◆ setAttribute()

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

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

140  {
141  checkReadonly();
142  attributes.put(name, values);
143 
144  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
MultivaluedHashMap< String, String > attributes
Definition: InMemoryUserAdapter.java:57

◆ setCreatedTimestamp()

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

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

115  {
116  checkReadonly();
117  this.createdTimestamp = timestamp;
118  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
Long createdTimestamp
Definition: InMemoryUserAdapter.java:45

◆ setEmail()

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

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

234  {
235  checkReadonly();
236  if (email != null) email = email.toLowerCase();
237  this.email = email;
238 
239  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
String email
Definition: InMemoryUserAdapter.java:48

◆ setEmailVerified()

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

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

247  {
248  checkReadonly();
249  this.emailVerified = verified;
250 
251  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
boolean emailVerified
Definition: InMemoryUserAdapter.java:49

◆ setEnabled()

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

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

126  {
127  checkReadonly();
128  this.enabled = enabled;
129 
130  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
boolean enabled
Definition: InMemoryUserAdapter.java:50

◆ setFederationLink()

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

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

291  {
292  checkReadonly();
293  this.federationLink = link;
294 
295  }
String federationLink
Definition: InMemoryUserAdapter.java:59
void checkReadonly()
Definition: InMemoryUserAdapter.java:88

◆ setFirstName()

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

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

210  {
211  checkReadonly();
212  this.firstName = firstName;
213 
214  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
String firstName
Definition: InMemoryUserAdapter.java:46

◆ setLastName()

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

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

222  {
223  checkReadonly();
224  this.lastName = lastName;
225 
226  }
String lastName
Definition: InMemoryUserAdapter.java:47
void checkReadonly()
Definition: InMemoryUserAdapter.java:88

◆ setReadonly()

void org.keycloak.storage.adapter.InMemoryUserAdapter.setReadonly ( boolean  flag)
inline
84  {
85  readonly = flag;
86  }
boolean readonly
Definition: InMemoryUserAdapter.java:65

◆ setServiceAccountClientLink()

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

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

303  {
304  checkReadonly();
305  this.serviceAccountClientLink = clientInternalId;
306 
307  }
String serviceAccountClientLink
Definition: InMemoryUserAdapter.java:60
void checkReadonly()
Definition: InMemoryUserAdapter.java:88

◆ setSingleAttribute()

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

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

133  {
134  checkReadonly();
135  attributes.putSingle(name, value);
136 
137  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
void putSingle(K key, V value)
Definition: MultivaluedHashMap.java:40
MultivaluedHashMap< String, String > attributes
Definition: InMemoryUserAdapter.java:57

◆ setUsername()

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

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

103  {
104  checkReadonly();
105  this.username = username.toLowerCase();
106 
107  }
void checkReadonly()
Definition: InMemoryUserAdapter.java:88
String username
Definition: InMemoryUserAdapter.java:44

メンバ詳解

◆ attributes

MultivaluedHashMap<String, String> org.keycloak.storage.adapter.InMemoryUserAdapter.attributes = new MultivaluedHashMap<>()
private

◆ createdTimestamp

Long org.keycloak.storage.adapter.InMemoryUserAdapter.createdTimestamp = Time.currentTimeMillis()
private

◆ EMAIL

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

◆ email

String org.keycloak.storage.adapter.InMemoryUserAdapter.email
private

◆ emailVerified

boolean org.keycloak.storage.adapter.InMemoryUserAdapter.emailVerified
private

◆ enabled

boolean org.keycloak.storage.adapter.InMemoryUserAdapter.enabled
private

◆ federationLink

String org.keycloak.storage.adapter.InMemoryUserAdapter.federationLink
private

◆ FIRST_NAME

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

◆ firstName

String org.keycloak.storage.adapter.InMemoryUserAdapter.firstName
private

◆ groupIds

Set<String> org.keycloak.storage.adapter.InMemoryUserAdapter.groupIds = new HashSet<>()
private

◆ id

String org.keycloak.storage.adapter.InMemoryUserAdapter.id
private

◆ LAST_NAME

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

◆ lastName

String org.keycloak.storage.adapter.InMemoryUserAdapter.lastName
private

◆ LOCALE

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

◆ readonly

boolean org.keycloak.storage.adapter.InMemoryUserAdapter.readonly
private

◆ realm

RealmModel org.keycloak.storage.adapter.InMemoryUserAdapter.realm
private

◆ realmId

String org.keycloak.storage.adapter.InMemoryUserAdapter.realmId
private

◆ requiredActions

Set<String> org.keycloak.storage.adapter.InMemoryUserAdapter.requiredActions = new HashSet<>()
private

◆ roleIds

Set<String> org.keycloak.storage.adapter.InMemoryUserAdapter.roleIds = new HashSet<>()
private

◆ serviceAccountClientLink

String org.keycloak.storage.adapter.InMemoryUserAdapter.serviceAccountClientLink
private

◆ session

KeycloakSession org.keycloak.storage.adapter.InMemoryUserAdapter.session
private

◆ USERNAME

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

◆ username

String org.keycloak.storage.adapter.InMemoryUserAdapter.username
private

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