Package org.keycloak.models
Interface KeycloakSession
-
- All Superinterfaces:
InvalidationHandler
- All Known Implementing Classes:
DefaultKeycloakSession
public interface KeycloakSession extends InvalidationHandler
- Version:
- $Revision: 1 $
- Author:
- Bill Burke
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.keycloak.provider.InvalidationHandler
InvalidationHandler.InvalidableObjectType, InvalidationHandler.ObjectType
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description AuthenticationSessionProvider
authenticationSessions()
ClientProvider
clientLocalStorage()
Keycloak specific local storage for clients.ClientPolicyManager
clientPolicy()
Client Policy ManagerClientProvider
clients()
Returns a managed provider instance.ClientScopeProvider
clientScopeLocalStorage()
Keycloak specific local storage for client scopes.ClientScopeProvider
clientScopes()
Returns a managed provider instance.ClientScopeProvider
clientScopeStorageManager()
ClientProvider
clientStorageManager()
void
close()
void
enlistForClose(Provider provider)
<T extends Provider>
Set<T>getAllProviders(Class<T> clazz)
Object
getAttribute(String attribute)
<T> T
getAttribute(String attribute, Class<T> clazz)
default <T> T
getAttributeOrDefault(String attribute, T defaultValue)
<T extends Provider>
TgetComponentProvider(Class<T> clazz, String componentId)
Returns a component provider for a component from the realm that is relevant to this session.<T extends Provider>
TgetComponentProvider(Class<T> clazz, String componentId, Function<KeycloakSessionFactory,ComponentModel> modelGetter)
Returns a component provider for a component from the realm that is relevant to this session.KeycloakContext
getContext()
KeycloakSessionFactory
getKeycloakSessionFactory()
<T extends Provider>
TgetProvider(Class<T> clazz)
Get dedicated provider instance of provider type clazz that was created for this session.<T extends Provider>
TgetProvider(Class<T> clazz, String id)
Get dedicated provider instance for a specific provider factory of id of provider type clazz that was created for this session.<T extends Provider>
TgetProvider(Class<T> clazz, ComponentModel componentModel)
Deprecated.Deprecated in favor of {@link #getComponentProvider)Class<? extends Provider>
getProviderClass(String providerClassName)
KeycloakTransactionManager
getTransactionManager()
GroupProvider
groupLocalStorage()
Keycloak specific local storage for groups.GroupProvider
groups()
Returns a managed group provider instance.GroupProvider
groupStorageManager()
void
invalidate(InvalidationHandler.InvalidableObjectType type, Object... ids)
Invalidates intermediate states of the given objects, both immediately and at the end of this session.KeyManager
keys()
Key manager<T extends Provider>
Set<String>listProviderIds(Class<T> clazz)
Get all provider factories that manage provider instances of class.UserLoginFailureProvider
loginFailures()
Returns a managed provider instance.RealmProvider
realmLocalStorage()
RealmProvider
realms()
Returns a managed provider instance.Object
removeAttribute(String attribute)
RoleProvider
roleLocalStorage()
Keycloak specific local storage for roles.RoleProvider
roles()
Returns a managed provider instance.RoleProvider
roleStorageManager()
UserSessionProvider
sessions()
Returns a managed provider instance.void
setAttribute(String name, Object value)
ThemeManager
theme()
Theme managerTokenManager
tokens()
Token managerUserCache
userCache()
The user cacheUserCredentialManager
userCredentialManager()
Service that allows you to valid and update credentials for a userUserFederatedStorageProvider
userFederatedStorage()
Hybrid storage for UserStorageProviders that can't store a specific piece of keycloak data in their external storage.UserProvider
userLocalStorage()
Keycloak specific local storage for users.UserProvider
users()
A cached view of all users in system including users loaded by UserStorageProvidersUserProvider
userStorageManager()
Un-cached view of all users in system including users loaded by UserStorageProvidersVaultTranscriber
vault()
Vault transcriber
-
-
-
Method Detail
-
getContext
KeycloakContext getContext()
-
getTransactionManager
KeycloakTransactionManager getTransactionManager()
-
getProvider
<T extends Provider> T getProvider(Class<T> clazz)
Get dedicated provider instance of provider type clazz that was created for this session. If one hasn't been created yet, find the factory and allocate by calling ProviderFactory.create(KeycloakSession). The provider to use is determined by the "provider" config entry in keycloak-server boot configuration. (keycloak-server.json)- Type Parameters:
T
-- Parameters:
clazz
-- Returns:
-
getProvider
<T extends Provider> T getProvider(Class<T> clazz, String id)
Get dedicated provider instance for a specific provider factory of id of provider type clazz that was created for this session. If one hasn't been created yet, find the factory and allocate by calling ProviderFactory.create(KeycloakSession).- Type Parameters:
T
-- Parameters:
clazz
-id
-- Returns:
-
getComponentProvider
<T extends Provider> T getComponentProvider(Class<T> clazz, String componentId)
Returns a component provider for a component from the realm that is relevant to this session. The relevant realm must be set prior to calling this method in the context, seeKeycloakContext.getRealm()
.- Type Parameters:
T
-- Parameters:
clazz
-componentId
- Component configuration- Returns:
- Provider configured according to the
componentId
,null
if it cannot be instantiated. - Throws:
IllegalArgumentException
- If the realm is not set in the context.
-
getComponentProvider
<T extends Provider> T getComponentProvider(Class<T> clazz, String componentId, Function<KeycloakSessionFactory,ComponentModel> modelGetter)
Returns a component provider for a component from the realm that is relevant to this session. The relevant realm must be set prior to calling this method in the context, seeKeycloakContext.getRealm()
.- Type Parameters:
T
-- Parameters:
clazz
-componentId
- Component configurationmodelGetter
- Getter to retrieve componentModel- Returns:
- Provider configured according to the
componentId
,null
if it cannot be instantiated. - Throws:
IllegalArgumentException
- If the realm is not set in the context.
-
getProvider
<T extends Provider> T getProvider(Class<T> clazz, ComponentModel componentModel)
Deprecated.Deprecated in favor of {@link #getComponentProvider)- Type Parameters:
T
-- Parameters:
clazz
-componentModel
-- Returns:
-
listProviderIds
<T extends Provider> Set<String> listProviderIds(Class<T> clazz)
Get all provider factories that manage provider instances of class.- Type Parameters:
T
-- Parameters:
clazz
-- Returns:
-
getAttributeOrDefault
default <T> T getAttributeOrDefault(String attribute, T defaultValue)
-
invalidate
void invalidate(InvalidationHandler.InvalidableObjectType type, Object... ids)
Invalidates intermediate states of the given objects, both immediately and at the end of this session.- Specified by:
invalidate
in interfaceInvalidationHandler
- Parameters:
type
- Type of the objects to invalidateids
- Identifiers of the invalidated objects
-
enlistForClose
void enlistForClose(Provider provider)
-
getKeycloakSessionFactory
KeycloakSessionFactory getKeycloakSessionFactory()
-
realms
RealmProvider realms()
Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.- Returns:
- Throws:
IllegalStateException
- if transaction is not active
-
clients
ClientProvider clients()
Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.- Returns:
- Throws:
IllegalStateException
- if transaction is not active
-
clientScopes
ClientScopeProvider clientScopes()
Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.- Returns:
- Currently used ClientScopeProvider instance.
- Throws:
IllegalStateException
- if transaction is not active
-
groups
GroupProvider groups()
Returns a managed group provider instance.- Returns:
- Currently used GroupProvider instance.
- Throws:
IllegalStateException
- if transaction is not active
-
roles
RoleProvider roles()
Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.- Returns:
- Throws:
IllegalStateException
- if transaction is not active
-
sessions
UserSessionProvider sessions()
Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.- Returns:
- Throws:
IllegalStateException
- if transaction is not active
-
loginFailures
UserLoginFailureProvider loginFailures()
Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.- Returns:
UserLoginFailureProvider
- Throws:
IllegalStateException
- if transaction is not active
-
authenticationSessions
AuthenticationSessionProvider authenticationSessions()
-
close
void close()
-
userCache
UserCache userCache()
The user cache- Returns:
- may be null if cache is disabled
-
users
UserProvider users()
A cached view of all users in system including users loaded by UserStorageProviders- Returns:
-
clientStorageManager
ClientProvider clientStorageManager()
- Returns:
- ClientStorageManager instance
-
clientScopeStorageManager
ClientScopeProvider clientScopeStorageManager()
- Returns:
- ClientScopeStorageManager instance
-
roleStorageManager
RoleProvider roleStorageManager()
- Returns:
- RoleStorageManager instance
-
groupStorageManager
GroupProvider groupStorageManager()
- Returns:
- GroupStorageManager instance
-
userStorageManager
UserProvider userStorageManager()
Un-cached view of all users in system including users loaded by UserStorageProviders- Returns:
-
userCredentialManager
UserCredentialManager userCredentialManager()
Service that allows you to valid and update credentials for a user- Returns:
-
userLocalStorage
UserProvider userLocalStorage()
Keycloak specific local storage for users. No cache in front, this api talks directly to database configured for Keycloak- Returns:
-
realmLocalStorage
RealmProvider realmLocalStorage()
-
clientLocalStorage
ClientProvider clientLocalStorage()
Keycloak specific local storage for clients. No cache in front, this api talks directly to database configured for Keycloak- Returns:
-
clientScopeLocalStorage
ClientScopeProvider clientScopeLocalStorage()
Keycloak specific local storage for client scopes. No cache in front, this api talks directly to database configured for Keycloak- Returns:
-
groupLocalStorage
GroupProvider groupLocalStorage()
Keycloak specific local storage for groups. No cache in front, this api talks directly to storage configured for Keycloak- Returns:
-
roleLocalStorage
RoleProvider roleLocalStorage()
Keycloak specific local storage for roles. No cache in front, this api talks directly to storage configured for Keycloak- Returns:
-
userFederatedStorage
UserFederatedStorageProvider userFederatedStorage()
Hybrid storage for UserStorageProviders that can't store a specific piece of keycloak data in their external storage. No cache in front.- Returns:
-
keys
KeyManager keys()
Key manager- Returns:
-
theme
ThemeManager theme()
Theme manager- Returns:
-
tokens
TokenManager tokens()
Token manager- Returns:
-
vault
VaultTranscriber vault()
Vault transcriber
-
clientPolicy
ClientPolicyManager clientPolicy()
Client Policy Manager
-
-