keycloak-service
公開メンバ関数 | 静的公開メンバ関数 | 限定公開変数類 | 静的限定公開変数類 | 非公開メンバ関数 | 非公開変数類 | 全メンバ一覧
org.keycloak.services.resources.admin.RealmAdminResource クラス
org.keycloak.services.resources.admin.RealmAdminResource 連携図
Collaboration graph

公開メンバ関数

 RealmAdminResource (AdminPermissionEvaluator auth, RealmModel realm, TokenManager tokenManager, AdminEventBuilder adminEvent)
 
ClientRepresentation convertClientDescription (String description)
 
AttackDetectionResource getAttackDetection ()
 
ClientsResource getClients ()
 
ClientScopesResource getClientTemplates ()
 
ClientScopesResource getClientScopes ()
 
List< ClientScopeRepresentation > getDefaultDefaultClientScopes ()
 
void addDefaultDefaultClientScope (@PathParam("clientScopeId") String clientScopeId)
 
void removeDefaultDefaultClientScope (@PathParam("clientScopeId") String clientScopeId)
 
List< ClientScopeRepresentation > getDefaultOptionalClientScopes ()
 
void addDefaultOptionalClientScope (@PathParam("clientScopeId") String clientScopeId)
 
void removeDefaultOptionalClientScope (@PathParam("clientScopeId") String clientScopeId)
 
ClientInitialAccessResource getClientInitialAccess ()
 
ClientRegistrationPolicyResource getClientRegistrationPolicy ()
 
ComponentResource getComponents ()
 
RoleContainerResource getRoleContainerResource ()
 
RealmRepresentation getRealm ()
 
Response updateRealm (final RealmRepresentation rep)
 
void deleteRealm ()
 
UsersResource users ()
 
ManagementPermissionReference getUserMgmtPermissions ()
 
ManagementPermissionReference setUsersManagementPermissionsEnabled (ManagementPermissionReference ref)
 
UserStorageProviderResource userStorage ()
 
AuthenticationManagementResource flows ()
 
RoleByIdResource rolesById ()
 
GlobalRequestResult pushRevocation ()
 
GlobalRequestResult logoutAll ()
 
void deleteSession (@PathParam("session") String sessionId)
 
List< Map< String, String > > getClientSessionStats ()
 
RealmEventsConfigRepresentation getRealmEventsConfig ()
 
void updateRealmEventsConfig (final RealmEventsConfigRepresentation rep)
 
List< EventRepresentation > getEvents (@QueryParam("type") List< String > types, @QueryParam("client") String client, @QueryParam("user") String user, @QueryParam("dateFrom") String dateFrom, @QueryParam("dateTo") String dateTo, @QueryParam("ipAddress") String ipAddress, @QueryParam("first") Integer firstResult, @QueryParam("max") Integer maxResults)
 
List< AdminEventRepresentation > getEvents (@QueryParam("operationTypes") List< String > operationTypes, @QueryParam("authRealm") String authRealm, @QueryParam("authClient") String authClient, @QueryParam("authUser") String authUser, @QueryParam("authIpAddress") String authIpAddress, @QueryParam("resourcePath") String resourcePath, @QueryParam("dateFrom") String dateFrom, @QueryParam("dateTo") String dateTo, @QueryParam("first") Integer firstResult, @QueryParam("max") Integer maxResults, @QueryParam("resourceTypes") List< String > resourceTypes)
 
void clearEvents ()
 
void clearAdminEvents ()
 
Response testLDAPConnection (@FormParam("action") String action, @FormParam("connectionUrl") String connectionUrl, @FormParam("bindDn") String bindDn, @FormParam("bindCredential") String bindCredential, @FormParam("useTruststoreSpi") String useTruststoreSpi, @FormParam("connectionTimeout") String connectionTimeout, @FormParam("componentId") String componentId)
 
Response testSMTPConnection (final @PathParam("config") String config) throws Exception
 
IdentityProvidersResource getIdentityProviderResource ()
 
List< GroupRepresentation > getDefaultGroups ()
 
void addDefaultGroup (@PathParam("groupId") String groupId)
 
void removeDefaultGroup (@PathParam("groupId") String groupId)
 
GroupsResource getGroups ()
 
GroupRepresentation getGroupByPath (@PathParam("path") String path)
 
Response partialImport (PartialImportRepresentation rep)
 
RealmRepresentation partialExport (@QueryParam("exportGroupsAndRoles") Boolean exportGroupsAndRoles, @QueryParam("exportClients") Boolean exportClients)
 
void clearRealmCache ()
 
void clearUserCache ()
 
void clearKeysCache ()
 
KeyResource keys ()
 

静的公開メンバ関数

static ManagementPermissionReference toUsersMgmtRef (AdminPermissionManagement permissions)
 

限定公開変数類

AdminPermissionEvaluator auth
 
RealmModel realm
 
KeycloakSession session
 
ClientConnection connection
 
HttpHeaders headers
 

静的限定公開変数類

static final Logger logger = Logger.getLogger(RealmAdminResource.class)
 

非公開メンバ関数

List< ClientScopeRepresentation > getDefaultClientScopes (boolean defaultScope)
 
void addDefaultClientScope (String clientScopeId, boolean defaultScope)
 
List< EventRepresentation > toEventListRep (List< Event > events)
 
List< AdminEventRepresentation > toAdminEventRep (List< AdminEvent > events)
 

非公開変数類

TokenManager tokenManager
 
AdminEventBuilder adminEvent
 

詳解

Base resource class for the admin REST api of one realm

Realms Admin

著者
Bill Burke
バージョン
Revision
1

構築子と解体子

◆ RealmAdminResource()

org.keycloak.services.resources.admin.RealmAdminResource.RealmAdminResource ( AdminPermissionEvaluator  auth,
RealmModel  realm,
TokenManager  tokenManager,
AdminEventBuilder  adminEvent 
)
inline
137  {
138  this.auth = auth;
139  this.realm = realm;
140  this.tokenManager = tokenManager;
141  this.adminEvent = adminEvent.realm(realm).resource(ResourceType.REALM);
142  }
TokenManager tokenManager
Definition: RealmAdminResource.java:125
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124
RealmModel realm
Definition: AdminEventBuilder.java:47

関数詳解

◆ addDefaultClientScope()

void org.keycloak.services.resources.admin.RealmAdminResource.addDefaultClientScope ( String  clientScopeId,
boolean  defaultScope 
)
inlineprivate
251  {
253 
254  ClientScopeModel clientScope = realm.getClientScopeById(clientScopeId);
255  if (clientScope == null) {
256  throw new NotFoundException("Client scope not found");
257  }
258  realm.addDefaultClientScope(clientScope, defaultScope);
259 
260  adminEvent.operation(OperationType.CREATE).resource(ResourceType.CLIENT_SCOPE).resourcePath(session.getContext().getUri()).success();
261  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder resource(ResourceType resourceType)
Definition: AdminEventBuilder.java:118
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ addDefaultDefaultClientScope()

void org.keycloak.services.resources.admin.RealmAdminResource.addDefaultDefaultClientScope ( @PathParam("clientScopeId") String  clientScopeId)
inline
247  {
248  addDefaultClientScope(clientScopeId,true);
249  }
void addDefaultClientScope(String clientScopeId, boolean defaultScope)
Definition: RealmAdminResource.java:251

◆ addDefaultGroup()

void org.keycloak.services.resources.admin.RealmAdminResource.addDefaultGroup ( @PathParam("groupId") String  groupId)
inline
1002  {
1004 
1005  GroupModel group = realm.getGroupById(groupId);
1006  if (group == null) {
1007  throw new NotFoundException("Group not found");
1008  }
1009  realm.addDefaultGroup(group);
1010 
1011  adminEvent.operation(OperationType.CREATE).resource(ResourceType.GROUP).resourcePath(session.getContext().getUri()).success();
1012  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder resource(ResourceType resourceType)
Definition: AdminEventBuilder.java:118
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ addDefaultOptionalClientScope()

void org.keycloak.services.resources.admin.RealmAdminResource.addDefaultOptionalClientScope ( @PathParam("clientScopeId") String  clientScopeId)
inline
296  {
297  addDefaultClientScope(clientScopeId, false);
298  }
void addDefaultClientScope(String clientScopeId, boolean defaultScope)
Definition: RealmAdminResource.java:251

◆ clearAdminEvents()

void org.keycloak.services.resources.admin.RealmAdminResource.clearAdminEvents ( )
inline

Delete all admin events

911  {
913 
914  EventStoreProvider eventStore = session.getProvider(EventStoreProvider.class);
915  eventStore.clearAdmin(realm.getId());
916  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124

◆ clearEvents()

void org.keycloak.services.resources.admin.RealmAdminResource.clearEvents ( )
inline

Delete all events

898  {
900 
901  EventStoreProvider eventStore = session.getProvider(EventStoreProvider.class);
902  eventStore.clear(realm.getId());
903  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124

◆ clearKeysCache()

void org.keycloak.services.resources.admin.RealmAdminResource.clearKeysCache ( )
inline

Clear cache of external public keys (Public keys of clients or Identity providers)

1129  {
1131 
1132  PublicKeyStorageProvider cache = session.getProvider(PublicKeyStorageProvider.class);
1133  if (cache != null) {
1134  cache.clearCache();
1135  }
1136 
1137  adminEvent.operation(OperationType.ACTION).resourcePath(session.getContext().getUri()).success();
1138  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ clearRealmCache()

void org.keycloak.services.resources.admin.RealmAdminResource.clearRealmCache ( )
inline

Clear realm cache

1095  {
1097 
1098  CacheRealmProvider cache = session.getProvider(CacheRealmProvider.class);
1099  if (cache != null) {
1100  cache.clear();
1101  }
1102 
1103  adminEvent.operation(OperationType.ACTION).resourcePath(session.getContext().getUri()).success();
1104  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ clearUserCache()

void org.keycloak.services.resources.admin.RealmAdminResource.clearUserCache ( )
inline

Clear user cache

1112  {
1114 
1115  UserCache cache = session.getProvider(UserCache.class);
1116  if (cache != null) {
1117  cache.clear();
1118  }
1119 
1120  adminEvent.operation(OperationType.ACTION).resourcePath(session.getContext().getUri()).success();
1121  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ convertClientDescription()

ClientRepresentation org.keycloak.services.resources.admin.RealmAdminResource.convertClientDescription ( String  description)
inline

Base path for importing clients under this realm.

戻り値
153  {
155 
156  if (realm == null) {
157  throw new NotFoundException("Realm not found.");
158  }
159 
160  for (ProviderFactory<ClientDescriptionConverter> factory : session.getKeycloakSessionFactory().getProviderFactories(ClientDescriptionConverter.class)) {
161  if (((ClientDescriptionConverterFactory) factory).isSupported(description)) {
162  return factory.create(session).convertToInternal(description);
163  }
164  }
165 
166  throw new BadRequestException("Unsupported format");
167  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124

◆ deleteRealm()

void org.keycloak.services.resources.admin.RealmAdminResource.deleteRealm ( )
inline

Delete the realm

450  {
452 
453  if (!new RealmManager(session).removeRealm(realm)) {
454  throw new NotFoundException("Realm doesn't exist");
455  }
456  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124

◆ deleteSession()

void org.keycloak.services.resources.admin.RealmAdminResource.deleteSession ( @PathParam("session") String  sessionId)
inline

Remove a specific user session. Any client that has an admin url will also be told to invalidate this particular session.

引数
sessionId
583  {
585 
586  UserSessionModel userSession = session.sessions().getUserSession(realm, sessionId);
587  if (userSession == null) throw new NotFoundException("Sesssion not found");
588  AuthenticationManager.backchannelLogout(session, realm, userSession, session.getContext().getUri(), connection, headers, true);
589  adminEvent.operation(OperationType.DELETE).resource(ResourceType.USER_SESSION).resourcePath(session.getContext().getUri()).success();
590 
591  }
ClientConnection connection
Definition: RealmAdminResource.java:132
HttpHeaders headers
Definition: RealmAdminResource.java:135
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder resource(ResourceType resourceType)
Definition: AdminEventBuilder.java:118
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ flows()

AuthenticationManagementResource org.keycloak.services.resources.admin.RealmAdminResource.flows ( )
inline
524  {
525  AuthenticationManagementResource resource = new AuthenticationManagementResource(realm, session, auth, adminEvent);
526  ResteasyProviderFactory.getInstance().injectProperties(resource);
527  //resourceContext.initResource(resource);
528  return resource;
529 
530  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getAttackDetection()

AttackDetectionResource org.keycloak.services.resources.admin.RealmAdminResource.getAttackDetection ( )
inline

Base path for managing attack detection.

戻り値
175  {
176  AttackDetectionResource resource = new AttackDetectionResource(auth, realm, adminEvent);
177  ResteasyProviderFactory.getInstance().injectProperties(resource);
178  return resource;
179  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getClientInitialAccess()

ClientInitialAccessResource org.keycloak.services.resources.admin.RealmAdminResource.getClientInitialAccess ( )
inline

Base path for managing client initial access tokens

戻り値
313  {
314  ClientInitialAccessResource resource = new ClientInitialAccessResource(realm, auth, adminEvent);
315  ResteasyProviderFactory.getInstance().injectProperties(resource);
316  return resource;
317  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getClientRegistrationPolicy()

ClientRegistrationPolicyResource org.keycloak.services.resources.admin.RealmAdminResource.getClientRegistrationPolicy ( )
inline
320  {
321  ClientRegistrationPolicyResource resource = new ClientRegistrationPolicyResource(realm, auth, adminEvent);
322  ResteasyProviderFactory.getInstance().injectProperties(resource);
323  return resource;
324  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getClients()

ClientsResource org.keycloak.services.resources.admin.RealmAdminResource.getClients ( )
inline

Base path for managing clients under this realm.

戻り値
187  {
188  ClientsResource clientsResource = new ClientsResource(realm, auth, adminEvent);
189  ResteasyProviderFactory.getInstance().injectProperties(clientsResource);
190  return clientsResource;
191  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getClientScopes()

ClientScopesResource org.keycloak.services.resources.admin.RealmAdminResource.getClientScopes ( )
inline

Base path for managing client scopes under this realm.

戻り値
210  {
211  ClientScopesResource clientScopesResource = new ClientScopesResource(realm, auth, adminEvent);
212  ResteasyProviderFactory.getInstance().injectProperties(clientScopesResource);
213  return clientScopesResource;
214  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getClientSessionStats()

List<Map<String, String> > org.keycloak.services.resources.admin.RealmAdminResource.getClientSessionStats ( )
inline

Get client session stats

Returns a JSON map. The key is the client id, the value is the number of sessions that currently are active with that client. Only clients that actually have a session associated with them will be in this map.

戻り値
605  {
607 
608  Map<String, Map<String, String>> data = new HashMap();
609  {
610  Map<String, Long> activeCount =session.sessions().getActiveClientSessionStats(realm, false);
611  for (Map.Entry<String, Long> entry : activeCount.entrySet()) {
612  Map<String, String> map = new HashMap<>();
613  ClientModel client = realm.getClientById(entry.getKey());
614  map.put("id", client.getId());
615  map.put("clientId", client.getClientId());
616  map.put("active", entry.getValue().toString());
617  map.put("offline", "0");
618  data.put(client.getId(), map);
619 
620  }
621  }
622  {
623  Map<String, Long> offlineCount = session.sessions().getActiveClientSessionStats(realm, true);
624  for (Map.Entry<String, Long> entry : offlineCount.entrySet()) {
625  Map<String, String> map = data.get(entry.getKey());
626  if (map == null) {
627  map = new HashMap<>();
628  ClientModel client = realm.getClientById(entry.getKey());
629  map.put("id", client.getId());
630  map.put("clientId", client.getClientId());
631  map.put("active", "0");
632  data.put(client.getId(), map);
633  }
634  map.put("offline", entry.getValue().toString());
635  }
636  }
637  List<Map<String, String>> result = new LinkedList<>();
638  for (Map<String, String> item : data.values()) result.add(item);
639  return result;
640  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getClientTemplates()

ClientScopesResource org.keycloak.services.resources.admin.RealmAdminResource.getClientTemplates ( )
inline

This endpoint is deprecated. It's here just because of backwards compatibility. Use getClientScopes() instead

戻り値
200  {
201  return getClientScopes();
202  }
ClientScopesResource getClientScopes()
Definition: RealmAdminResource.java:210

◆ getComponents()

ComponentResource org.keycloak.services.resources.admin.RealmAdminResource.getComponents ( )
inline

Base path for managing components under this realm.

戻り値
332  {
333  ComponentResource resource = new ComponentResource(realm, auth, adminEvent);
334  ResteasyProviderFactory.getInstance().injectProperties(resource);
335  return resource;
336  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getDefaultClientScopes()

List<ClientScopeRepresentation> org.keycloak.services.resources.admin.RealmAdminResource.getDefaultClientScopes ( boolean  defaultScope)
inlineprivate
230  {
232 
233  List<ClientScopeRepresentation> defaults = new LinkedList<>();
234  for (ClientScopeModel clientScope : realm.getDefaultClientScopes(defaultScope)) {
235  ClientScopeRepresentation rep = new ClientScopeRepresentation();
236  rep.setId(clientScope.getId());
237  rep.setName(clientScope.getName());
238  defaults.add(rep);
239  }
240  return defaults;
241  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getDefaultDefaultClientScopes()

List<ClientScopeRepresentation> org.keycloak.services.resources.admin.RealmAdminResource.getDefaultDefaultClientScopes ( )
inline

Get realm default client scopes. Only name and ids are returned.

戻り値
226  {
227  return getDefaultClientScopes(true);
228  }
List< ClientScopeRepresentation > getDefaultClientScopes(boolean defaultScope)
Definition: RealmAdminResource.java:230

◆ getDefaultGroups()

List<GroupRepresentation> org.keycloak.services.resources.admin.RealmAdminResource.getDefaultGroups ( )
inline

Get group hierarchy. Only name and ids are returned.

戻り値
990  {
992 
993  List<GroupRepresentation> defaults = new LinkedList<>();
994  for (GroupModel group : realm.getDefaultGroups()) {
995  defaults.add(ModelToRepresentation.toRepresentation(group, false));
996  }
997  return defaults;
998  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getDefaultOptionalClientScopes()

List<ClientScopeRepresentation> org.keycloak.services.resources.admin.RealmAdminResource.getDefaultOptionalClientScopes ( )
inline

Get realm optional client scopes. Only name and ids are returned.

戻り値
289  {
290  return getDefaultClientScopes(false);
291  }
List< ClientScopeRepresentation > getDefaultClientScopes(boolean defaultScope)
Definition: RealmAdminResource.java:230

◆ getEvents() [1/2]

List<EventRepresentation> org.keycloak.services.resources.admin.RealmAdminResource.getEvents ( @QueryParam("type") List< String >  types,
@QueryParam("client") String  client,
@QueryParam("user") String  user,
@QueryParam("dateFrom") String  dateFrom,
@QueryParam("dateTo") String  dateTo,
@QueryParam("ipAddress") String  ipAddress,
@QueryParam("first") Integer  firstResult,
@QueryParam("max") Integer  maxResults 
)
inline

Get events

Returns all events, or filters them based on URL query parameters listed here

引数
typesThe types of events to return
clientApp or oauth client name
userUser id
ipAddressIP address
dateToTo date
dateFromFrom date
firstResultPaging offset
maxResultsMaximum results size (defaults to 100)
戻り値
712  {
714 
715  EventStoreProvider eventStore = session.getProvider(EventStoreProvider.class);
716 
717  EventQuery query = eventStore.createQuery().realm(realm.getId());
718  if (client != null) {
719  query.client(client);
720  }
721 
722  if (types != null && !types.isEmpty()) {
723  EventType[] t = new EventType[types.size()];
724  for (int i = 0; i < t.length; i++) {
725  t[i] = EventType.valueOf(types.get(i));
726  }
727  query.type(t);
728  }
729 
730  if (user != null) {
731  query.user(user);
732  }
733 
734  if(dateFrom != null) {
735  SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
736  Date from = null;
737  try {
738  from = df.parse(dateFrom);
739  } catch (ParseException e) {
740  throw new BadRequestException("Invalid value for 'Date(From)', expected format is yyyy-MM-dd");
741  }
742  query.fromDate(from);
743  }
744 
745  if(dateTo != null) {
746  SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
747  Date to = null;
748  try {
749  to = df.parse(dateTo);
750  } catch (ParseException e) {
751  throw new BadRequestException("Invalid value for 'Date(To)', expected format is yyyy-MM-dd");
752  }
753  query.toDate(to);
754  }
755 
756  if (ipAddress != null) {
757  query.ipAddress(ipAddress);
758  }
759  if (firstResult != null) {
760  query.firstResult(firstResult);
761  }
762  if (maxResults != null) {
763  query.maxResults(maxResults);
764  } else {
765  query.maxResults(Constants.DEFAULT_MAX_RESULTS);
766  }
767 
768  return toEventListRep(query.getResultList());
769  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124
List< EventRepresentation > toEventListRep(List< Event > events)
Definition: RealmAdminResource.java:771

◆ getEvents() [2/2]

List<AdminEventRepresentation> org.keycloak.services.resources.admin.RealmAdminResource.getEvents ( @QueryParam("operationTypes") List< String >  operationTypes,
@QueryParam("authRealm") String  authRealm,
@QueryParam("authClient") String  authClient,
@QueryParam("authUser") String  authUser,
@QueryParam("authIpAddress") String  authIpAddress,
@QueryParam("resourcePath") String  resourcePath,
@QueryParam("dateFrom") String  dateFrom,
@QueryParam("dateTo") String  dateTo,
@QueryParam("first") Integer  firstResult,
@QueryParam("max") Integer  maxResults,
@QueryParam("resourceTypes") List< String >  resourceTypes 
)
inline

Get admin events

Returns all admin events, or filters events based on URL query parameters listed here

引数
operationTypes
authRealm
authClient
authUseruser id
authIpAddress
resourcePath
dateTo
dateFrom
firstResult
maxResultsMaximum results size (defaults to 100)
戻り値
805  {
807 
808  EventStoreProvider eventStore = session.getProvider(EventStoreProvider.class);
809  AdminEventQuery query = eventStore.createAdminQuery().realm(realm.getId());;
810 
811  if (authRealm != null) {
812  query.authRealm(authRealm);
813  }
814 
815  if (authClient != null) {
816  query.authClient(authClient);
817  }
818 
819  if (authUser != null) {
820  query.authUser(authUser);
821  }
822 
823  if (authIpAddress != null) {
824  query.authIpAddress(authIpAddress);
825  }
826 
827  if (resourcePath != null) {
828  query.resourcePath(resourcePath);
829  }
830 
831  if (operationTypes != null && !operationTypes.isEmpty()) {
832  OperationType[] t = new OperationType[operationTypes.size()];
833  for (int i = 0; i < t.length; i++) {
834  t[i] = OperationType.valueOf(operationTypes.get(i));
835  }
836  query.operation(t);
837  }
838 
839  if (resourceTypes != null && !resourceTypes.isEmpty()) {
840  ResourceType[] t = new ResourceType[resourceTypes.size()];
841  for (int i = 0; i < t.length; i++) {
842  t[i] = ResourceType.valueOf(resourceTypes.get(i));
843  }
844  query.resourceType(t);
845  }
846 
847 
848 
849  if(dateFrom != null) {
850  SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
851  Date from = null;
852  try {
853  from = df.parse(dateFrom);
854  } catch (ParseException e) {
855  throw new BadRequestException("Invalid value for 'Date(From)', expected format is yyyy-MM-dd");
856  }
857  query.fromTime(from);
858  }
859 
860  if(dateTo != null) {
861  SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
862  Date to = null;
863  try {
864  to = df.parse(dateTo);
865  } catch (ParseException e) {
866  throw new BadRequestException("Invalid value for 'Date(To)', expected format is yyyy-MM-dd");
867  }
868  query.toTime(to);
869  }
870 
871  if (firstResult != null) {
872  query.firstResult(firstResult);
873  }
874  if (maxResults != null) {
875  query.maxResults(maxResults);
876  } else {
877  query.maxResults(Constants.DEFAULT_MAX_RESULTS);
878  }
879 
880  return toAdminEventRep(query.getResultList());
881  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
List< AdminEventRepresentation > toAdminEventRep(List< AdminEvent > events)
Definition: RealmAdminResource.java:883
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getGroupByPath()

GroupRepresentation org.keycloak.services.resources.admin.RealmAdminResource.getGroupByPath ( @PathParam("path") String  path)
inline
1042  {
1043  GroupModel found = KeycloakModelUtils.findGroupByPath(realm, path);
1044  if (found == null) {
1045  throw new NotFoundException("Group path does not exist");
1046 
1047  }
1048  auth.groups().requireView(found);
1049  return ModelToRepresentation.toGroupHierarchy(found, true);
1050  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getGroups()

GroupsResource org.keycloak.services.resources.admin.RealmAdminResource.getGroups ( )
inline
1031  {
1032  GroupsResource resource = new GroupsResource(realm, session, this.auth, adminEvent);
1033  ResteasyProviderFactory.getInstance().injectProperties(resource);
1034  return resource;
1035  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getIdentityProviderResource()

IdentityProvidersResource org.keycloak.services.resources.admin.RealmAdminResource.getIdentityProviderResource ( )
inline
977  {
978  return new IdentityProvidersResource(realm, session, this.auth, adminEvent);
979  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getRealm()

RealmRepresentation org.keycloak.services.resources.admin.RealmAdminResource.getRealm ( )
inline

Get the top-level representation of the realm

It will not include nested information like User and Client representations.

戻り値
358  {
359  if (auth.realm().canViewRealm()) {
360  return ModelToRepresentation.toRepresentation(realm, false);
361  } else {
363 
364  RealmRepresentation rep = new RealmRepresentation();
365  rep.setRealm(realm.getName());
366 
368  RealmRepresentation r = ModelToRepresentation.toRepresentation(realm, false);
369  rep.setIdentityProviders(r.getIdentityProviders());
370  rep.setIdentityProviderMappers(r.getIdentityProviderMappers());
371  }
372 
373  return rep;
374  }
375  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getRealmEventsConfig()

RealmEventsConfigRepresentation org.keycloak.services.resources.admin.RealmAdminResource.getRealmEventsConfig ( )
inline

Get the events provider configuration

Returns JSON object with events provider configuration

戻り値
653  {
655 
656  RealmEventsConfigRepresentation config = ModelToRepresentation.toEventsConfigReprensetation(realm);
657  if (config.getEnabledEventTypes() == null || config.getEnabledEventTypes().isEmpty()) {
658  config.setEnabledEventTypes(new LinkedList<String>());
659  for (EventType e : EventType.values()) {
660  if (e.isSaveByDefault()) {
661  config.getEnabledEventTypes().add(e.name());
662  }
663  }
664  }
665  return config;
666  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getRoleContainerResource()

RoleContainerResource org.keycloak.services.resources.admin.RealmAdminResource.getRoleContainerResource ( )
inline

base path for managing realm-level roles of this realm

戻り値
344  {
345  return new RoleContainerResource(session, session.getContext().getUri(), realm, auth, realm, adminEvent);
346  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ getUserMgmtPermissions()

ManagementPermissionReference org.keycloak.services.resources.admin.RealmAdminResource.getUserMgmtPermissions ( )
inline
475  {
477 
478  AdminPermissionManagement permissions = AdminPermissions.management(session, realm);
479  if (permissions.users().isPermissionsEnabled()) {
480  return toUsersMgmtRef(permissions);
481  } else {
482  return new ManagementPermissionReference();
483  }
484 
485  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
static ManagementPermissionReference toUsersMgmtRef(AdminPermissionManagement permissions)
Definition: RealmAdminResource.java:505
RealmModel realm
Definition: RealmAdminResource.java:124

◆ keys()

KeyResource org.keycloak.services.resources.admin.RealmAdminResource.keys ( )
inline
1141  {
1142  KeyResource resource = new KeyResource(realm, session, this.auth);
1143  ResteasyProviderFactory.getInstance().injectProperties(resource);
1144  return resource;
1145  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124

◆ logoutAll()

GlobalRequestResult org.keycloak.services.resources.admin.RealmAdminResource.logoutAll ( )
inline

Removes all user sessions. Any client that has an admin url will also be told to invalidate any sessions they have.

566  {
568 
569  session.sessions().removeUserSessions(realm);
570  GlobalRequestResult result = new ResourceAdminManager(session).logoutAll(session.getContext().getUri().getRequestUri(), realm);
571  adminEvent.operation(OperationType.ACTION).resourcePath(session.getContext().getUri()).representation(result).success();
572  return result;
573  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
void success()
Definition: AdminEventBuilder.java:226
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ partialExport()

RealmRepresentation org.keycloak.services.resources.admin.RealmAdminResource.partialExport ( @QueryParam("exportGroupsAndRoles") Boolean  exportGroupsAndRoles,
@QueryParam("exportClients") Boolean  exportClients 
)
inline

Partial export of existing realm into a JSON file.

引数
exportGroupsAndRoles
exportClients
戻り値
1079  {
1080 
1081  boolean groupsAndRolesExported = exportGroupsAndRoles != null && exportGroupsAndRoles;
1082  boolean clientsExported = exportClients != null && exportClients;
1083 
1084  ExportOptions options = new ExportOptions(false, clientsExported, groupsAndRolesExported);
1085  RealmRepresentation rep = ExportUtils.exportRealm(session, realm, options, false);
1086  return stripForExport(session, rep);
1087  }
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124

◆ partialImport()

Response org.keycloak.services.resources.admin.RealmAdminResource.partialImport ( PartialImportRepresentation  rep)
inline

Partial import from a JSON file to an existing realm.

引数
rep
戻り値
1061  {
1063 
1064  PartialImportManager partialImport = new PartialImportManager(rep, session, realm, adminEvent);
1065  return partialImport.saveResources();
1066  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
Response partialImport(PartialImportRepresentation rep)
Definition: RealmAdminResource.java:1061
RealmModel realm
Definition: RealmAdminResource.java:124

◆ pushRevocation()

GlobalRequestResult org.keycloak.services.resources.admin.RealmAdminResource.pushRevocation ( )
inline

Push the realm's revocation policy to any client that has an admin url associated with it.

551  {
553 
554  GlobalRequestResult result = new ResourceAdminManager(session).pushRealmRevocationPolicy(session.getContext().getUri().getRequestUri(), realm);
555  adminEvent.operation(OperationType.ACTION).resourcePath(session.getContext().getUri()).representation(result).success();
556  return result;
557  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
void success()
Definition: AdminEventBuilder.java:226
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ removeDefaultDefaultClientScope()

void org.keycloak.services.resources.admin.RealmAdminResource.removeDefaultDefaultClientScope ( @PathParam("clientScopeId") String  clientScopeId)
inline
267  {
269 
270  ClientScopeModel clientScope = realm.getClientScopeById(clientScopeId);
271  if (clientScope == null) {
272  throw new NotFoundException("Client scope not found");
273  }
274  realm.removeDefaultClientScope(clientScope);
275 
276  adminEvent.operation(OperationType.DELETE).resource(ResourceType.CLIENT_SCOPE).resourcePath(session.getContext().getUri()).success();
277  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder resource(ResourceType resourceType)
Definition: AdminEventBuilder.java:118
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ removeDefaultGroup()

void org.keycloak.services.resources.admin.RealmAdminResource.removeDefaultGroup ( @PathParam("groupId") String  groupId)
inline
1017  {
1019 
1020  GroupModel group = realm.getGroupById(groupId);
1021  if (group == null) {
1022  throw new NotFoundException("Group not found");
1023  }
1024  realm.removeDefaultGroup(group);
1025 
1026  adminEvent.operation(OperationType.DELETE).resource(ResourceType.GROUP).resourcePath(session.getContext().getUri()).success();
1027  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder resource(ResourceType resourceType)
Definition: AdminEventBuilder.java:118
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
AdminEventBuilder resourcePath(String... pathElements)
Definition: AdminEventBuilder.java:171

◆ removeDefaultOptionalClientScope()

void org.keycloak.services.resources.admin.RealmAdminResource.removeDefaultOptionalClientScope ( @PathParam("clientScopeId") String  clientScopeId)
inline
303  {
304  removeDefaultDefaultClientScope(clientScopeId);
305  }
void removeDefaultDefaultClientScope(@PathParam("clientScopeId") String clientScopeId)
Definition: RealmAdminResource.java:267

◆ rolesById()

RoleByIdResource org.keycloak.services.resources.admin.RealmAdminResource.rolesById ( )
inline

Path for managing all realm-level or client-level roles defined in this realm by its id.

戻り値
538  {
539  RoleByIdResource resource = new RoleByIdResource(realm, auth, adminEvent);
540  ResteasyProviderFactory.getInstance().injectProperties(resource);
541  //resourceContext.initResource(resource);
542  return resource;
543  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

◆ setUsersManagementPermissionsEnabled()

ManagementPermissionReference org.keycloak.services.resources.admin.RealmAdminResource.setUsersManagementPermissionsEnabled ( ManagementPermissionReference  ref)
inline
492  {
494 
495  AdminPermissionManagement permissions = AdminPermissions.management(session, realm);
496  permissions.users().setPermissionsEnabled(ref.isEnabled());
497  if (ref.isEnabled()) {
498  return toUsersMgmtRef(permissions);
499  } else {
500  return new ManagementPermissionReference();
501  }
502  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
static ManagementPermissionReference toUsersMgmtRef(AdminPermissionManagement permissions)
Definition: RealmAdminResource.java:505
RealmModel realm
Definition: RealmAdminResource.java:124

◆ testLDAPConnection()

Response org.keycloak.services.resources.admin.RealmAdminResource.testLDAPConnection ( @FormParam("action") String  action,
@FormParam("connectionUrl") String  connectionUrl,
@FormParam("bindDn") String  bindDn,
@FormParam("bindCredential") String  bindCredential,
@FormParam("useTruststoreSpi") String  useTruststoreSpi,
@FormParam("connectionTimeout") String  connectionTimeout,
@FormParam("componentId") String  componentId 
)
inline

Test LDAP connection

引数
action
connectionUrl
bindDn
bindCredential
戻り値
933  {
935 
936  if (componentId != null && bindCredential.equals(ComponentRepresentation.SECRET_VALUE)) {
937  bindCredential = realm.getComponent(componentId).getConfig().getFirst(LDAPConstants.BIND_CREDENTIAL);
938  }
939 
940  boolean result = new LDAPConnectionTestManager().testLDAP(action, connectionUrl, bindDn, bindCredential, useTruststoreSpi, connectionTimeout);
941  return result ? Response.noContent().build() : ErrorResponse.error("LDAP test error", Response.Status.BAD_REQUEST);
942  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
RealmModel realm
Definition: RealmAdminResource.java:124

◆ testSMTPConnection()

Response org.keycloak.services.resources.admin.RealmAdminResource.testSMTPConnection ( final @PathParam("config") String  config) throws Exception
inline

Test SMTP connection with current logged in user

引数
configSMTP server configuration
戻り値
例外
Exception
954  {
955  Map<String, String> settings = readValue(config, new TypeReference<Map<String, String>>() {
956  });
957 
958  try {
959  UserModel user = auth.adminAuth().getUser();
960  if (user.getEmail() == null) {
961  return ErrorResponse.error("Logged in user does not have an e-mail.", Response.Status.INTERNAL_SERVER_ERROR);
962  }
963  if (ComponentRepresentation.SECRET_VALUE.equals(settings.get("password"))) {
964  settings.put("password", realm.getSmtpConfig().get("password"));
965  }
966  session.getProvider(EmailTemplateProvider.class).sendSmtpTestEmail(settings, user);
967  } catch (Exception e) {
968  e.printStackTrace();
969  logger.errorf("Failed to send email \n %s", e.getCause());
970  return ErrorResponse.error("Failed to send email", Response.Status.INTERNAL_SERVER_ERROR);
971  }
972 
973  return Response.noContent().build();
974  }
UserModel getUser()
Definition: AdminAuth.java:48
static final Logger logger
Definition: RealmAdminResource.java:122
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
RealmModel realm
Definition: RealmAdminResource.java:124

◆ toAdminEventRep()

List<AdminEventRepresentation> org.keycloak.services.resources.admin.RealmAdminResource.toAdminEventRep ( List< AdminEvent >  events)
inlineprivate
883  {
884  List<AdminEventRepresentation> reps = new ArrayList<>();
885  for (AdminEvent event : events) {
886  reps.add(ModelToRepresentation.toRepresentation(event));
887  }
888 
889  return reps;
890  }

◆ toEventListRep()

List<EventRepresentation> org.keycloak.services.resources.admin.RealmAdminResource.toEventListRep ( List< Event >  events)
inlineprivate
771  {
772  List<EventRepresentation> reps = new ArrayList<>();
773  for (Event event : events) {
774  reps.add(ModelToRepresentation.toRepresentation(event));
775  }
776  return reps;
777  }

◆ toUsersMgmtRef()

static ManagementPermissionReference org.keycloak.services.resources.admin.RealmAdminResource.toUsersMgmtRef ( AdminPermissionManagement  permissions)
inlinestatic
505  {
506  ManagementPermissionReference ref = new ManagementPermissionReference();
507  ref.setEnabled(true);
508  ref.setResource(permissions.users().resource().getId());
509  Map<String, String> scopes = permissions.users().getPermissions();
510  ref.setScopePermissions(scopes);
511  return ref;
512  }

◆ updateRealm()

Response org.keycloak.services.resources.admin.RealmAdminResource.updateRealm ( final RealmRepresentation  rep)
inline

Update the top-level information of the realm

Any user, roles or client information in the representation will be ignored. This will only update top-level attributes of the realm.

引数
rep
戻り値
388  {
390 
391  logger.debug("updating realm: " + realm.getName());
392 
393  if (Config.getAdminRealm().equals(realm.getName()) && (rep.getRealm() != null && !rep.getRealm().equals(Config.getAdminRealm()))) {
394  return ErrorResponse.error("Can't rename master realm", Status.BAD_REQUEST);
395  }
396 
397  try {
398  if (!Constants.GENERATE.equals(rep.getPublicKey()) && (rep.getPrivateKey() != null && rep.getPublicKey() != null)) {
399  try {
400  KeyPairVerifier.verify(rep.getPrivateKey(), rep.getPublicKey());
401  } catch (VerificationException e) {
402  return ErrorResponse.error(e.getMessage(), Status.BAD_REQUEST);
403  }
404  }
405 
406  if (!Constants.GENERATE.equals(rep.getPublicKey()) && (rep.getCertificate() != null)) {
407  try {
408  X509Certificate cert = PemUtils.decodeCertificate(rep.getCertificate());
409  if (cert == null) {
410  return ErrorResponse.error("Failed to decode certificate", Status.BAD_REQUEST);
411  }
412  } catch (Exception e) {
413  return ErrorResponse.error("Failed to decode certificate", Status.BAD_REQUEST);
414  }
415  }
416 
417  boolean wasDuplicateEmailsAllowed = realm.isDuplicateEmailsAllowed();
418  RepresentationToModel.updateRealm(rep, realm, session);
419 
420  // Refresh periodic sync tasks for configured federationProviders
421  List<UserStorageProviderModel> federationProviders = realm.getUserStorageProviders();
422  UserStorageSyncManager usersSyncManager = new UserStorageSyncManager();
423  for (final UserStorageProviderModel fedProvider : federationProviders) {
424  usersSyncManager.notifyToRefreshPeriodicSync(session, realm, fedProvider, false);
425  }
426 
427  adminEvent.operation(OperationType.UPDATE).representation(StripSecretsUtils.strip(rep)).success();
428 
429  if (rep.isDuplicateEmailsAllowed() != null && rep.isDuplicateEmailsAllowed() != wasDuplicateEmailsAllowed) {
430  UserCache cache = session.getProvider(UserCache.class);
431  if (cache != null) cache.clear();
432  }
433 
434  return Response.noContent().build();
435  } catch (ModelDuplicateException e) {
436  return ErrorResponse.exists("Realm with same name exists");
437  } catch (ModelException e) {
438  return ErrorResponse.error(e.getMessage(), Status.BAD_REQUEST);
439  } catch (Exception e) {
440  logger.error(e.getMessage(), e);
441  return ErrorResponse.error("Failed to update realm", Response.Status.INTERNAL_SERVER_ERROR);
442  }
443  }
static final Logger logger
Definition: RealmAdminResource.java:122
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
AdminEventBuilder representation(Object value)
Definition: AdminEventBuilder.java:210

◆ updateRealmEventsConfig()

void org.keycloak.services.resources.admin.RealmAdminResource.updateRealmEventsConfig ( final RealmEventsConfigRepresentation  rep)
inline

Update the events provider

Change the events provider and/or its configuration

引数
rep
678  {
680 
681  logger.debug("updating realm events config: " + realm.getName());
682  new RealmManager(session).updateRealmEventsConfig(rep, realm);
683  adminEvent.operation(OperationType.UPDATE).resource(ResourceType.REALM).realm(realm)
684  .resourcePath(session.getContext().getUri()).representation(rep)
685  // refresh the builder to consider old and new config
686  .refreshRealmEventsConfig(session)
687  .success();
688  }
static final Logger logger
Definition: RealmAdminResource.java:122
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
KeycloakSession session
Definition: RealmAdminResource.java:129
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
AdminEventBuilder resource(ResourceType resourceType)
Definition: AdminEventBuilder.java:118
AdminEventBuilder operation(OperationType operationType)
Definition: AdminEventBuilder.java:113
RealmModel realm
Definition: RealmAdminResource.java:124
RealmModel realm
Definition: AdminEventBuilder.java:47

◆ users()

UsersResource org.keycloak.services.resources.admin.RealmAdminResource.users ( )
inline

Base path for managing users in this realm.

戻り値
464  {
465  UsersResource users = new UsersResource(realm, auth, adminEvent);
466  ResteasyProviderFactory.getInstance().injectProperties(users);
467  //resourceContext.initResource(users);
468  return users;
469  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124
UsersResource users()
Definition: RealmAdminResource.java:464

◆ userStorage()

UserStorageProviderResource org.keycloak.services.resources.admin.RealmAdminResource.userStorage ( )
inline
516  {
517  UserStorageProviderResource fed = new UserStorageProviderResource(realm, auth, adminEvent);
518  ResteasyProviderFactory.getInstance().injectProperties(fed);
519  //resourceContext.initResource(fed);
520  return fed;
521  }
AdminPermissionEvaluator auth
Definition: RealmAdminResource.java:123
AdminEventBuilder adminEvent
Definition: RealmAdminResource.java:126
RealmModel realm
Definition: RealmAdminResource.java:124

メンバ詳解

◆ adminEvent

AdminEventBuilder org.keycloak.services.resources.admin.RealmAdminResource.adminEvent
private

◆ auth

AdminPermissionEvaluator org.keycloak.services.resources.admin.RealmAdminResource.auth
protected

◆ connection

ClientConnection org.keycloak.services.resources.admin.RealmAdminResource.connection
protected

◆ headers

HttpHeaders org.keycloak.services.resources.admin.RealmAdminResource.headers
protected

◆ logger

final Logger org.keycloak.services.resources.admin.RealmAdminResource.logger = Logger.getLogger(RealmAdminResource.class)
staticprotected

◆ realm

RealmModel org.keycloak.services.resources.admin.RealmAdminResource.realm
protected

◆ session

KeycloakSession org.keycloak.services.resources.admin.RealmAdminResource.session
protected

◆ tokenManager

TokenManager org.keycloak.services.resources.admin.RealmAdminResource.tokenManager
private

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