Interface WritableIdentityProvider
- All Superinterfaces:
Session
- All Known Implementing Classes:
DbIdentityServiceProvider
,OAuth2IdentityProvider
SPI Interface for identity service implementations which offer read / write access to the user database.
- Author:
- Daniel Meyer
-
Method Summary
Modifier and TypeMethodDescriptioncreateMembership
(String userId, String groupId) Creates a membership relation between a user and a group.createNewGroup
(String groupId) Returns a new (transient)Group
object.createNewTenant
(String tenantId) Returns a new (transient)Tenant
object.createNewUser
(String userId) Returns a new (transient)User
object.createTenantGroupMembership
(String tenantId, String groupId) Creates a membership relation between a tenant and a group.createTenantUserMembership
(String tenantId, String userId) Creates a membership relation between a tenant and a user.deleteGroup
(String groupId) Allows deleting a persistentGroup
object.deleteMembership
(String userId, String groupId) Deletes a membership relation between a user and a group.deleteTenant
(String tenantId) Allows deleting a persistentTenant
object.deleteTenantGroupMembership
(String tenantId, String groupId) Deletes a membership relation between a tenant and a group.deleteTenantUserMembership
(String tenantId, String userId) Deletes a membership relation between a tenant and a user.deleteUser
(String userId) Allows deleting a persistentUser
object.Allows saving aGroup
object which is not yet persistent.saveTenant
(Tenant tenant) Allows saving aTenant
object which is not yet persistent.Allows saving or updates aUser
objectunlockUser
(String userId) Allows unlocking aUser
object.
-
Method Details
-
createNewUser
Returns a new (transient)
User
object. The Object is not yet persistent and must be saved using thesaveUser(User)
method.NOTE: the implementation does not validate the uniqueness of the userId parameter at this time.
- Parameters:
userId
-- Returns:
- an non-persistent user object.
-
saveUser
Allows saving or updates aUser
object- Parameters:
user
- a User object.- Returns:
- the operation result object.
- Throws:
IdentityProviderException
- in case an internal error occurs
-
deleteUser
Allows deleting a persistentUser
object.- Parameters:
UserId
- the id of the User object to delete.- Returns:
- the operation result object.
- Throws:
IdentityProviderException
- in case an internal error occurs
-
unlockUser
Allows unlocking aUser
object.- Parameters:
userId
- the id of the User object to delete.- Returns:
- the operation result object.
- Throws:
AuthorizationException
- if the user is not CAMUNDA_ADMIN
-
createNewGroup
Returns a new (transient)
Group
object. The Object is not yet persistent and must be saved using thesaveGroup(Group)
method.NOTE: the implementation does not validate the uniqueness of the groupId parameter at this time.
- Parameters:
groupId
-- Returns:
- an non-persistent group object.
-
saveGroup
Allows saving aGroup
object which is not yet persistent.- Parameters:
group
- a group object.- Returns:
- the operation result object.
- Throws:
IdentityProviderException
- in case an internal error occurs
-
deleteGroup
Allows deleting a persistentGroup
object.- Parameters:
groupId
- the id of the group object to delete.- Returns:
- the operation result object.
- Throws:
IdentityProviderException
- in case an internal error occurs
-
createNewTenant
Returns a new (transient)
Tenant
object. The Object is not yet persistent and must be saved using thesaveTenant(Tenant)
method.NOTE: the implementation does not validate the uniqueness of the tenantId parameter at this time.
- Parameters:
tenantId
- the id of the new tenant- Returns:
- an non-persistent tenant object.
-
saveTenant
Allows saving aTenant
object which is not yet persistent.- Parameters:
tenant
- the tenant object to save.- Returns:
- the operation result object.
- Throws:
IdentityProviderException
- in case an internal error occurs
-
deleteTenant
Allows deleting a persistentTenant
object.- Parameters:
tenantId
- the id of the tenant object to delete.- Returns:
- the operation result object.
- Throws:
IdentityProviderException
- in case an internal error occurs
-
createMembership
Creates a membership relation between a user and a group. If the user is already part of that group, IdentityProviderException is thrown.- Parameters:
userId
- the id of the usergroupId
- id of the group- Returns:
- the operation result object.
- Throws:
IdentityProviderException
-
deleteMembership
Deletes a membership relation between a user and a group.- Parameters:
userId
- the id of the usergroupId
- id of the group- Returns:
- the operation result object.
- Throws:
IdentityProviderException
-
createTenantUserMembership
Creates a membership relation between a tenant and a user.- Parameters:
tenantId
- the id of the tenantuserId
- the id of the user- Returns:
- the operation result object.
-
createTenantGroupMembership
Creates a membership relation between a tenant and a group.- Parameters:
tenantId
- the id of the tenantgroupId
- the id of the group- Returns:
- the operation result object.
-
deleteTenantUserMembership
Deletes a membership relation between a tenant and a user.- Parameters:
tenantId
- the id of the tenantuserId
- the id of the user- Returns:
- the operation result object
-
deleteTenantGroupMembership
Deletes a membership relation between a tenant and a group.- Parameters:
tenantId
- the id of the tenantgroupId
- the id of the group- Returns:
- the operation result object.
-