Interface IdentityStore
-
- All Known Implementing Classes:
LDAPIdentityStore
public interface IdentityStoreIdentityStore representation providing minimal SPI TODO: Rather remove this abstraction- Author:
- Boleslaw Dawidowicz, Shane Bryzak
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidadd(LDAPObject ldapObject)Persists the specified IdentityTypevoidaddMemberToGroup(String groupDn, String memberAttrName, String value)Adds a member to a group.intcountQueryResults(LDAPQuery LDAPQuery)List<LDAPObject>fetchQueryResults(LDAPQuery LDAPQuery)LDAPConfiggetConfig()Returns the configuration for this IdentityStore instanceSet<LDAPCapabilityRepresentation>queryServerCapabilities()Query the LDAP server RootDSE and extract theLDAPCapabilityRepresentationof all supported extensions, controls and features the server announces.voidremove(LDAPObject ldapObject)Removes the specified IdentityTypevoidremoveMemberFromGroup(String groupDn, String memberAttrName, String value)Removes a member from a group.voidupdate(LDAPObject ldapObject)Updates the specified IdentityTypevoidupdatePassword(LDAPObject user, String password, LDAPOperationDecorator passwordUpdateDecorator)Updates the specified credential value.voidvalidatePassword(LDAPObject user, String password)Validates the specified credentials.
-
-
-
Method Detail
-
getConfig
LDAPConfig getConfig()
Returns the configuration for this IdentityStore instance- Returns:
-
add
void add(LDAPObject ldapObject)
Persists the specified IdentityType- Parameters:
ldapObject-
-
update
void update(LDAPObject ldapObject)
Updates the specified IdentityType- Parameters:
ldapObject-
-
remove
void remove(LDAPObject ldapObject)
Removes the specified IdentityType- Parameters:
ldapObject-
-
addMemberToGroup
void addMemberToGroup(String groupDn, String memberAttrName, String value)
Adds a member to a group.- Parameters:
groupDn- The DN of the group objectmemberAttrName- The member attribute namevalue- The value (it can be uid or dn depending the group type)
-
removeMemberFromGroup
void removeMemberFromGroup(String groupDn, String memberAttrName, String value)
Removes a member from a group.- Parameters:
groupDn- The DN of the group objectmemberAttrName- The member attribute namevalue- The value (it can be uid or dn depending the group type)
-
fetchQueryResults
List<LDAPObject> fetchQueryResults(LDAPQuery LDAPQuery)
-
countQueryResults
int countQueryResults(LDAPQuery LDAPQuery)
-
queryServerCapabilities
Set<LDAPCapabilityRepresentation> queryServerCapabilities()
Query the LDAP server RootDSE and extract theLDAPCapabilityRepresentationof all supported extensions, controls and features the server announces. The LDAP Wiki provides a list of known capabilities. Will throw aModelExceptionon any LDAP error, or when the searchResult is empty.- Returns:
- a set of LDAPOid, each representing a server capability (control, extension or feature).
-
validatePassword
void validatePassword(LDAPObject user, String password) throws AuthenticationException
Validates the specified credentials.- Parameters:
user- Keycloak userpassword- Ldap password- Throws:
AuthenticationException- if authentication is not successful
-
updatePassword
void updatePassword(LDAPObject user, String password, LDAPOperationDecorator passwordUpdateDecorator)
Updates the specified credential value.- Parameters:
user- Keycloak userpassword- Ldap passwordpasswordUpdateDecorator- Callback to be executed before/after password update. Can be null
-
-