public class RoleStorageManager extends Object implements RoleProvider
| Modifier and Type | Field and Description |
|---|---|
protected KeycloakSession |
session |
| Constructor and Description |
|---|
RoleStorageManager(KeycloakSession session,
long roleStorageProviderTimeout) |
| Modifier and Type | Method and Description |
|---|---|
RoleModel |
addClientRole(ClientModel client,
String name)
Adds a client role with given
name to the given client. |
RoleModel |
addClientRole(ClientModel client,
String id,
String name)
Adds a client role with given internal ID and
name to the given client. |
RoleModel |
addRealmRole(RealmModel realm,
String name)
Adds a realm role with given
name to the given realm. |
RoleModel |
addRealmRole(RealmModel realm,
String id,
String name)
Adds a realm role with given internal ID and
name to the given realm. |
void |
close() |
RoleModel |
getClientRole(ClientModel client,
String name)
Exact search for a client role by given name.
|
Stream<RoleModel> |
getClientRolesStream(ClientModel client)
Returns all the client roles of the given client.
|
Stream<RoleModel> |
getClientRolesStream(ClientModel client,
Integer first,
Integer max)
Returns the client roles of the given client.
|
static <T> Stream<T> |
getEnabledStorageProviders(KeycloakSession session,
RealmModel realm,
Class<T> type) |
RoleModel |
getRealmRole(RealmModel realm,
String name)
Exact search for a role by given name.
|
Stream<RoleModel> |
getRealmRolesStream(RealmModel realm,
Integer first,
Integer max)
Returns the realm roles of the given realm as a stream.
|
RoleModel |
getRoleById(RealmModel realm,
String id)
Exact search for a role by its internal ID..
|
static RoleStorageProvider |
getStorageProvider(KeycloakSession session,
RealmModel realm,
String componentId) |
static RoleStorageProvider |
getStorageProviderInstance(KeycloakSession session,
RoleStorageProviderModel model,
RoleStorageProviderFactory factory) |
static RoleStorageProviderModel |
getStorageProviderModel(RealmModel realm,
String componentId) |
static <T> Stream<T> |
getStorageProviders(KeycloakSession session,
RealmModel realm,
Class<T> type) |
static <T> Stream<RoleStorageProviderModel> |
getStorageProviders(RealmModel realm,
KeycloakSession session,
Class<T> type) |
static boolean |
isStorageProviderEnabled(RealmModel realm,
String providerId) |
boolean |
removeRole(RoleModel role)
Removes given realm role from the given realm.
|
void |
removeRoles(ClientModel client)
Removes all roles from the given client.
|
void |
removeRoles(RealmModel realm)
Removes all roles from the given realm.
|
Stream<RoleModel> |
searchForClientRolesStream(ClientModel client,
String search,
Integer first,
Integer max)
Obtaining roles from an external role storage is time-bounded.
|
Stream<RoleModel> |
searchForRolesStream(RealmModel realm,
String search,
Integer first,
Integer max)
Obtaining roles from an external role storage is time-bounded.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetRealmRoles, getRealmRolesStreamprotected KeycloakSession session
public RoleStorageManager(KeycloakSession session, long roleStorageProviderTimeout)
public static boolean isStorageProviderEnabled(RealmModel realm, String providerId)
public static RoleStorageProviderModel getStorageProviderModel(RealmModel realm, String componentId)
public static RoleStorageProvider getStorageProvider(KeycloakSession session, RealmModel realm, String componentId)
public static <T> Stream<RoleStorageProviderModel> getStorageProviders(RealmModel realm, KeycloakSession session, Class<T> type)
public static RoleStorageProvider getStorageProviderInstance(KeycloakSession session, RoleStorageProviderModel model, RoleStorageProviderFactory factory)
public static <T> Stream<T> getStorageProviders(KeycloakSession session, RealmModel realm, Class<T> type)
public static <T> Stream<T> getEnabledStorageProviders(KeycloakSession session, RealmModel realm, Class<T> type)
public RoleModel addRealmRole(RealmModel realm, String name)
RoleProvidername to the given realm.
The internal ID of the role will be created automatically.addRealmRole in interface RoleProviderrealm - Realm owning this role.name - String name of the role.public RoleModel addRealmRole(RealmModel realm, String id, String name)
RoleProvidername to the given realm.addRealmRole in interface RoleProviderrealm - Realm owning this role.id - Internal ID of the role or null if one is to be created by the underlying storename - String name of the role.public RoleModel getRealmRole(RealmModel realm, String name)
RoleLookupProvidergetRealmRole in interface RoleLookupProviderrealm - Realm.name - String name of the role.null if no role is found.public RoleModel getRoleById(RealmModel realm, String id)
RoleLookupProvidergetRoleById in interface RoleLookupProviderrealm - Realm.id - Internal ID of the role.public Stream<RoleModel> getRealmRolesStream(RealmModel realm, Integer first, Integer max)
RoleProvidergetRealmRolesStream in interface RoleProviderrealm - Realm.first - First result to return. Ignored if negative or null.max - Maximum number of results to return. Ignored if negative or null.null.public Stream<RoleModel> searchForRolesStream(RealmModel realm, String search, Integer first, Integer max)
DefaultKeycloakSessionFactory.getRoleStorageProviderTimeout() property is used.
Default value is 3000 milliseconds and it's configurable.
See DefaultKeycloakSessionFactory for details.searchForRolesStream in interface RoleLookupProviderrealm - Realm.search - Searched substring of the role's name or description.first - First result to return. Ignored if negative or null.max - Maximum number of results to return. Ignored if negative or null.null.public boolean removeRole(RoleModel role)
RoleProviderremoveRole in interface RoleProviderrole - Role to be removed.true if the role existed and has been removed, false otherwise.public void removeRoles(RealmModel realm)
RoleProviderremoveRoles in interface RoleProviderrealm - Realm.public void removeRoles(ClientModel client)
RoleProviderremoveRoles in interface RoleProviderclient - Client.public RoleModel addClientRole(ClientModel client, String name)
RoleProvidername to the given client.
The internal ID of the role will be created automatically.addClientRole in interface RoleProviderclient - Client owning this role.name - String name of the role.public RoleModel addClientRole(ClientModel client, String id, String name)
RoleProvidername to the given client.addClientRole in interface RoleProviderclient - Client owning this role.id - Internal ID of the client role or null if one is to be created by the underlying store.name - String name of the role.public RoleModel getClientRole(ClientModel client, String name)
RoleLookupProvidergetClientRole in interface RoleLookupProviderclient - Client.name - String name of the role.null if no role is found.public Stream<RoleModel> getClientRolesStream(ClientModel client)
RoleProvidergetClientRoles(client, null, null).getClientRolesStream in interface RoleProviderclient - Client.null.public Stream<RoleModel> getClientRolesStream(ClientModel client, Integer first, Integer max)
RoleProvidergetClientRolesStream in interface RoleProviderclient - Client.first - First result to return. Ignored if negative or null.max - Maximum number of results to return. Ignored if negative or null.null.public Stream<RoleModel> searchForClientRolesStream(ClientModel client, String search, Integer first, Integer max)
DefaultKeycloakSessionFactory.getRoleStorageProviderTimeout() property is used.
Default value is 3000 milliseconds and it's configurable.
See DefaultKeycloakSessionFactory for details.searchForClientRolesStream in interface RoleLookupProviderclient - Client.search - String to search by role's name or description.first - First result to return. Ignored if negative or null.max - Maximum number of results to return. Ignored if negative or null.null.Copyright © 2021 JBoss by Red Hat. All rights reserved.