Class MapRootAuthenticationSessionProvider
- java.lang.Object
-
- org.keycloak.models.map.authSession.MapRootAuthenticationSessionProvider
-
- All Implemented Interfaces:
Provider,AuthenticationSessionProvider
public class MapRootAuthenticationSessionProvider extends Object implements AuthenticationSessionProvider
- Author:
- Martin Kanis
-
-
Field Summary
Fields Modifier and Type Field Description protected MapKeycloakTransaction<MapRootAuthenticationSessionEntity,RootAuthenticationSessionModel>tx
-
Constructor Summary
Constructors Constructor Description MapRootAuthenticationSessionProvider(KeycloakSession session, MapStorage<MapRootAuthenticationSessionEntity,RootAuthenticationSessionModel> sessionStore, int authSessionsLimit)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()RootAuthenticationSessionModelcreateRootAuthenticationSession(RealmModel realm)Creates and registers a new authentication session with random ID.RootAuthenticationSessionModelcreateRootAuthenticationSession(RealmModel realm, String id)Creates a new root authentication session specified by the provided realm and id.RootAuthenticationSessionModelgetRootAuthenticationSession(RealmModel realm, String authenticationSessionId)Returns the root authentication session specified by the provided realm and id.voidonClientRemoved(RealmModel realm, ClientModel client)Removes all associated root authentication sessions to the given realm and client which was removed.voidonRealmRemoved(RealmModel realm)Removes all associated root authentication sessions to the given realm which was removed.voidremoveAllExpired()Remove expired authentication sessions in all the realmsvoidremoveExpired(RealmModel realm)Removes all expired root authentication sessions for the given realm.voidremoveRootAuthenticationSession(RealmModel realm, RootAuthenticationSessionModel authenticationSession)Removes provided root authentication session.voidupdateNonlocalSessionAuthNotes(AuthenticationSessionCompoundId compoundId, Map<String,String> authNotesFragment)Requests update of authNotes of a root authentication session that is not owned by this instance but might exist somewhere in the cluster.
-
-
-
Field Detail
-
tx
protected final MapKeycloakTransaction<MapRootAuthenticationSessionEntity,RootAuthenticationSessionModel> tx
-
-
Constructor Detail
-
MapRootAuthenticationSessionProvider
public MapRootAuthenticationSessionProvider(KeycloakSession session, MapStorage<MapRootAuthenticationSessionEntity,RootAuthenticationSessionModel> sessionStore, int authSessionsLimit)
-
-
Method Detail
-
createRootAuthenticationSession
public RootAuthenticationSessionModel createRootAuthenticationSession(RealmModel realm)
Description copied from interface:AuthenticationSessionProviderCreates and registers a new authentication session with random ID. Authentication session entity will be prefilled with current timestamp, the given realm and client.- Specified by:
createRootAuthenticationSessionin interfaceAuthenticationSessionProvider- Parameters:
realm-RealmModelCan't benull.- Returns:
- Returns created
RootAuthenticationSessionModel. Never returnsnull.
-
createRootAuthenticationSession
public RootAuthenticationSessionModel createRootAuthenticationSession(RealmModel realm, String id)
Description copied from interface:AuthenticationSessionProviderCreates a new root authentication session specified by the provided realm and id.- Specified by:
createRootAuthenticationSessionin interfaceAuthenticationSessionProvider- Parameters:
realm-RealmModelCan't benull.id-StringId of newly created root authentication session. Ifnulla random id will be generated.- Returns:
- Returns created
RootAuthenticationSessionModel. Never returnsnull.
-
getRootAuthenticationSession
public RootAuthenticationSessionModel getRootAuthenticationSession(RealmModel realm, String authenticationSessionId)
Description copied from interface:AuthenticationSessionProviderReturns the root authentication session specified by the provided realm and id.- Specified by:
getRootAuthenticationSessionin interfaceAuthenticationSessionProvider- Parameters:
realm-RealmModelCan't benull.authenticationSessionId-RootAuthenticationSessionModelIfnullthennullwill be returned.- Returns:
- Returns found
RootAuthenticationSessionModelornullif no root authentication session is found.
-
removeRootAuthenticationSession
public void removeRootAuthenticationSession(RealmModel realm, RootAuthenticationSessionModel authenticationSession)
Description copied from interface:AuthenticationSessionProviderRemoves provided root authentication session.- Specified by:
removeRootAuthenticationSessionin interfaceAuthenticationSessionProvider- Parameters:
realm-RealmModelAssociated realm to the given root authentication session.authenticationSession-RootAuthenticationSessionModelCan't benull.
-
removeAllExpired
public void removeAllExpired()
Description copied from interface:AuthenticationSessionProviderRemove expired authentication sessions in all the realms- Specified by:
removeAllExpiredin interfaceAuthenticationSessionProvider
-
removeExpired
public void removeExpired(RealmModel realm)
Description copied from interface:AuthenticationSessionProviderRemoves all expired root authentication sessions for the given realm.- Specified by:
removeExpiredin interfaceAuthenticationSessionProvider- Parameters:
realm-RealmModelCan't benull.
-
onRealmRemoved
public void onRealmRemoved(RealmModel realm)
Description copied from interface:AuthenticationSessionProviderRemoves all associated root authentication sessions to the given realm which was removed.- Specified by:
onRealmRemovedin interfaceAuthenticationSessionProvider- Parameters:
realm-RealmModelCan't benull.
-
onClientRemoved
public void onClientRemoved(RealmModel realm, ClientModel client)
Description copied from interface:AuthenticationSessionProviderRemoves all associated root authentication sessions to the given realm and client which was removed.- Specified by:
onClientRemovedin interfaceAuthenticationSessionProvider- Parameters:
realm-RealmModelCan't benull.client-ClientModelCan't benull.
-
updateNonlocalSessionAuthNotes
public void updateNonlocalSessionAuthNotes(AuthenticationSessionCompoundId compoundId, Map<String,String> authNotesFragment)
Description copied from interface:AuthenticationSessionProviderRequests update of authNotes of a root authentication session that is not owned by this instance but might exist somewhere in the cluster.- Specified by:
updateNonlocalSessionAuthNotesin interfaceAuthenticationSessionProvider- Parameters:
compoundId-AuthenticationSessionCompoundIdThe method has no effect ifnull.authNotesFragment-Map<String, String>Map with authNote values. Auth note is removed if the corresponding value in the map isnull. Map itself can't benull.
-
-