Package org.flowable.idm.api
Interface IdmIdentityService
- All Known Implementing Classes:
IdmIdentityServiceImpl
public interface IdmIdentityService
- Author:
- Tom Baeyens, Tijs Rademakers, Joram Barrez
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addGroupPrivilegeMapping
(String privilegeId, String groupId) Assigns a privilege to a group.void
addUserPrivilegeMapping
(String privilegeId, String userId) Assigns a privilege to a user.boolean
checkPassword
(String userId, String password) Checks if the password is valid for the given user.Creates aGroupQuery
that allows to programmatically query the groups.void
createMembership
(String userId, String groupId) Returns a newNativeQuery
for tasks.Returns a newNativeQuery
for tokens.Returns a newNativeQuery
for tasks.createPrivilege
(String privilegeName) Creates a newPrivilege
with the provided name.Creates aPrivilegeQuery
that allows to programmatically query privileges.Creates aTokenQuery
that allows to programmatically query the tokens.Creates aUserQuery
that allows to programmatically query the users.void
deleteGroup
(String groupId) Deletes the group.void
deleteGroupPrivilegeMapping
(String privilegeId, String groupId) Delete a privilege for a group.void
deleteMembership
(String userId, String groupId) Delete the membership of the user in the group.void
deletePrivilege
(String privilegeId) Deletes the privilege with the given id.void
deleteToken
(String tokenId) void
deleteUser
(String userId) void
deleteUserInfo
(String userId, String key) Delete an entry of the generic extensibility key-value pairs associated with a uservoid
deleteUserPrivilegeMapping
(String privilegeId, String userId) Removes a privilege for a user.getGroupsWithPrivilege
(String privilegeId) Returns allGroup
instances that have a particular privilege.getPrivilegeMappingsByPrivilegeId
(String privilegeId) Get all privilege mappings for a specific privilegegetUserInfo
(String userId, String key) Generic extensibility key-value pairs associated with a usergetUserInfoKeys
(String userId) Generic extensibility keys associated with a usergetUserPicture
(String userId) Retrieves the picture for a given user.getUsersWithPrivilege
(String privilegeId) Returns allUser
instances that have a particular privilege.Creates a new group.Creates a new token.Creates a new user.void
Saves the group.void
Saves the token.void
Saves the user.void
setAuthenticatedUserId
(String authenticatedUserId) Passes the authenticated user id for this particular thread.void
setUserInfo
(String userId, String key, String value) Generic extensibility key-value pairs associated with a uservoid
setUserPicture
(String userId, Picture picture) Sets the picture for a given user.void
updateUserPassword
(User user) Update user password.
-
Method Details
-
newUser
Creates a new user. The user is transient and must be saved usingsaveUser(User)
.- Parameters:
userId
- id for the new user, cannot be null.
-
saveUser
Saves the user. If the user already existed, the user is updated except user password. UseupdateUserPassword(User)
to update existing user password.- Parameters:
user
- user to save, cannot be null.- Throws:
RuntimeException
- when a user with the same name already exists.- See Also:
-
updateUserPassword
Update user password. UsesaveUser(User)
for new user.- Parameters:
user
- user password to change, cannot be null.- See Also:
-
createUserQuery
UserQuery createUserQuery()Creates aUserQuery
that allows to programmatically query the users. -
createNativeUserQuery
NativeUserQuery createNativeUserQuery()Returns a newNativeQuery
for tasks. -
deleteUser
- Parameters:
userId
- id of user to delete, cannot be null. When an id is passed for a non-existent user, this operation is ignored.
-
newGroup
Creates a new group. The group is transient and must be saved usingsaveGroup(Group)
.- Parameters:
groupId
- id for the new group, cannot be null.
-
createGroupQuery
GroupQuery createGroupQuery()Creates aGroupQuery
that allows to programmatically query the groups. -
createNativeGroupQuery
NativeGroupQuery createNativeGroupQuery()Returns a newNativeQuery
for tasks. -
saveGroup
Saves the group. If the group already existed, the group is updated.- Parameters:
group
- group to save. Cannot be null.- Throws:
RuntimeException
- when a group with the same name already exists.
-
deleteGroup
Deletes the group. When no group exists with the given id, this operation is ignored.- Parameters:
groupId
- id of the group that should be deleted, cannot be null.
-
createMembership
- Parameters:
userId
- the userId, cannot be null.groupId
- the groupId, cannot be null.- Throws:
RuntimeException
- when the given user or group doesn't exist or when the user is already member of the group.
-
deleteMembership
Delete the membership of the user in the group. When the group or user don't exist or when the user is not a member of the group, this operation is ignored.- Parameters:
userId
- the user's id, cannot be null.groupId
- the group's id, cannot be null.
-
checkPassword
Checks if the password is valid for the given user. Arguments userId and password are nullsafe. -
setAuthenticatedUserId
Passes the authenticated user id for this particular thread. All service method (from any service) invocations done by the same thread will have access to this authenticatedUserId. -
setUserPicture
Sets the picture for a given user.- Parameters:
userId
-picture
- can be null to delete the picture.- Throws:
FlowableObjectNotFoundException
- if the user doesn't exist.
-
getUserPicture
Retrieves the picture for a given user.- Parameters:
userId
-- Returns:
- null if the user doesn't have a picture.
- Throws:
FlowableObjectNotFoundException
- if the user doesn't exist.
-
newToken
Creates a new token. The token is transient and must be saved usingsaveToken(Token)
.- Parameters:
id
- id for the new token, cannot be null.
-
saveToken
Saves the token. If the token already existed, the token is updated.- Parameters:
token
- token to save, cannot be null.
-
deleteToken
- Parameters:
tokenId
- id of token to delete, cannot be null. When an id is passed for an non-existent token, this operation is ignored.
-
createTokenQuery
TokenQuery createTokenQuery()Creates aTokenQuery
that allows to programmatically query the tokens. -
createNativeTokenQuery
NativeTokenQuery createNativeTokenQuery()Returns a newNativeQuery
for tokens. -
setUserInfo
Generic extensibility key-value pairs associated with a user -
getUserInfo
Generic extensibility key-value pairs associated with a user -
getUserInfoKeys
Generic extensibility keys associated with a user -
deleteUserInfo
Delete an entry of the generic extensibility key-value pairs associated with a user -
createPrivilege
Creates a newPrivilege
with the provided name.- Throws:
FlowableIllegalArgumentException
- if privilegeName is null.
-
addUserPrivilegeMapping
Assigns a privilege to a user. -
deleteUserPrivilegeMapping
Removes a privilege for a user. -
addGroupPrivilegeMapping
Assigns a privilege to a group. -
deleteGroupPrivilegeMapping
Delete a privilege for a group. -
getPrivilegeMappingsByPrivilegeId
Get all privilege mappings for a specific privilege -
deletePrivilege
Deletes the privilege with the given id. Note that this also removes all user/group mappings for this privilege. -
getUsersWithPrivilege
Returns allUser
instances that have a particular privilege. -
getGroupsWithPrivilege
Returns allGroup
instances that have a particular privilege. -
createPrivilegeQuery
PrivilegeQuery createPrivilegeQuery()Creates aPrivilegeQuery
that allows to programmatically query privileges.
-