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)Groupobject.createNewTenant(String tenantId) Returns a new (transient)Tenantobject.createNewUser(String userId) Returns a new (transient)Userobject.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 persistentGroupobject.deleteMembership(String userId, String groupId) Deletes a membership relation between a user and a group.deleteTenant(String tenantId) Allows deleting a persistentTenantobject.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 persistentUserobject.Allows saving aGroupobject which is not yet persistent.saveTenant(Tenant tenant) Allows saving aTenantobject which is not yet persistent.Allows saving or updates aUserobjectunlockUser(String userId) Allows unlocking aUserobject. 
- 
Method Details
- 
createNewUser
Returns a new (transient)
Userobject. 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 aUserobject- Parameters:
 user- a User object.- Returns:
 - the operation result object.
 - Throws:
 IdentityProviderException- in case an internal error occurs
 - 
deleteUser
Allows deleting a persistentUserobject.- 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 aUserobject.- 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)
Groupobject. 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 aGroupobject 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 persistentGroupobject.- 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)
Tenantobject. 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 aTenantobject 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 persistentTenantobject.- 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.
 
 
 -