Interface UsersManagerImplApi
- All Known Implementing Classes:
UsersManagerImpl
public interface UsersManagerImplApi
UsersManager can find users.
- Author:
- Michal Prochazka, Slavek Licehammer, Zora Sebestianova, Sona Mastrakova
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addSpecificUserOwner
(PerunSession sess, User user, User specificUser) Add specificUser owner (the user).addUserExtSource
(PerunSession perunSession, User user, UserExtSource userExtSource) Adds user's external sources.anonymizeUser
(PerunSession perunSession, User user) Anonymizes users data in DB - sets names and titles to NULL and sets anonymized flag to true.void
checkPasswordResetRequestIsValid
(PerunSession sess, UUID uuid) Checks if the password reset request link is valid.void
checkReservedLogins
(PerunSession sess, String namespace, String login, boolean ignoreCase) Check if login in specified namespace exists.void
checkUserExists
(PerunSession perunSession, User user) Check if user exists in underlaying data source.void
checkUserExtSourceExists
(PerunSession perunSession, UserExtSource userExtSource) Check if userExtSource exists in underlaying data source by identity (login/extSource combination)void
checkUserExtSourceExistsById
(PerunSession perunSession, int id) Check if userExtSource exists in underlaying data source by its ID.createUser
(PerunSession perunSession, User user) Creates the user, stores it in the DB.void
deleteReservedLogin
(PerunSession sess, Pair<String, String> login) Deletes given login reservations.void
deleteSponsorLinks
(PerunSession sess, User sponsor) Deletes all links to sponsors, even those marked as inactive.void
deleteUser
(PerunSession perunSession, User user) Deletes user (normal or specific) including all relations to other users (normal,specific,sponsor)void
deleteUsersApplications
(User user) Delete all applications and submitted data for specific user.void
Delete all reserved logins for specific user (pair is namespace and login)void
disableOwnership
(PerunSession sess, User user, User specificUser) Set ownership for user and specificUser to DISABLE (1).void
enableOwnership
(PerunSession sess, User user, User specificUser) Set ownership for user and specificUser to ENABLE (0).findUsers
(PerunSession sess, String searchString) Returns list of users who matches the searchString, searching name, id, uuid, member attributes, user attributes and userExtSource attributes (listed in perun.properties).findUsersByExactMatch
(PerunSession sess, String searchString) Returns list of users who matches the searchString, searching name (exact match), id, uuid, member attributes, user attributes and userExtSource attributes (listed in perun.properties).findUsersByExactName
(PerunSession sess, String searchString) Returns list of users who exactly matches the searchStringfindUsersByName
(PerunSession sess, String searchString) Returns list of users who matches the searchStringfindUsersByName
(PerunSession sess, String titleBefore, String firstName, String middleName, String lastName, String titleAfter) Returns list of users who matches the fields.findUsersWithExtSourceAttributeValueEnding
(PerunSessionImpl sess, String attributeName, String valueEnd, List<String> excludeValueEnds) Implements search for #UsersManagerBl.findUsersWithExtSourceAttributeValueEnding().getActiveUserExtSources
(PerunSession sess, User user) Get all users userExtSources with last_access not older than (now - m), where 'm' is number of months defined in CONSTANT in UsersManagerImpl.getAllowedResources
(PerunSession sess, User user) Return all resources, where user is allowed by all his members.getAllUserExtSourcesByTypeAndLogin
(PerunSession sess, String extType, String extLogin) Gets list of all users external sources by specific type and extLogin.getAssignedResources
(PerunSession sess, Facility facility, User user) Return all resources of specified facility, where user is assigned through all his members.getAssignedResources
(PerunSession sess, User user) Return all resources, where user is assigned through all his members.getAssignedRichResources
(PerunSession sess, User user) Return all rich resources, where user is assigned through all his members.getAssociatedResources
(PerunSession sess, Facility facility, User user) Return all resources of specified facility with which user is associated through all his members.getAssociatedResources
(PerunSession sess, User user) Get all resources with which user can be associated (similar to assigned resources, but does not require ACTIVE group-resource assignment).getGroupsWhereUserIsAdmin
(PerunSession perunSession, User user) Returns list of Groups in Perun, where the User is a direct Administrator or he is a VALID member of any group which is Administrator of some of these Groups.getGroupsWhereUserIsAdmin
(PerunSession sess, Vo vo, User user) Returns list of Groups in selected Vo, where the User is a direct Administrator or he is a VALID member of any group which is Administrator of some of these Groups.getPasswordManagerModule
(PerunSession session, String namespace) Return instance of PasswordManagerModule for specified namespace or NULL if class for module is not found.getPendingPreferredEmailChanges
(PerunSession sess, User user) Return list of email addresses of user, which are awaiting validation and are inside time window for validation.getPreferredEmailChangeRequest
(PerunSession sess, User user, UUID uuid) Get new preferred email value from user's original requestgetReservedLoginsByApp
(PerunSession sess, int appId) Gets reserved logins which used in the given application.getReservedLoginsOnlyByGivenApp
(PerunSession sess, int appId) Gets reserved logins which can be deleted - they are used only in the given application.getSpecificUsers
(PerunSession sess) Return all specific Users (only specific users) Return also users who has no owners.getSpecificUsersByUser
(PerunSession sess, User user) Return all specificUsers who are owned by the user and their ownership is not in status disabledgetSponsors
(PerunSession sess, Member sponsoredMember) Gets list of user that sponsored a member.getUserById
(PerunSession perunSession, int id) Returns user by its id.getUserByMember
(PerunSession perunSession, Member member) Returns user by VO member.getUserByUserExtSource
(PerunSession perunSession, UserExtSource userExtSource) Returns user by his login in external source.getUserExtSourceByExtLogin
(PerunSession perunSession, ExtSource source, String extLogin) Gets user's external source by the user's external login and external source.getUserExtSourceById
(PerunSession sess, int id) Get the user ext source by its id.getUserExtSourceByUniqueAttributeValue
(PerunSession sess, int attrId, String uniqueValue) Return userExtSource for specific attribute id and unique value.getUserExtSources
(PerunSession sess, User user) Get List of user ext sources by usergetUserExtSourcesByIds
(PerunSession sess, List<Integer> ids) Gets user ext sources by their ids.getUsers
(PerunSession sess) Returns all users (included specific users).getUsersByAttribute
(PerunSession sess, Attribute attribute) Returns all users who have set the attribute with the value.getUsersByAttribute
(PerunSession sess, Attribute attribute, boolean ignoreCase) Returns all users who have set the attribute with the value IGNORING CASE in the comparison.getUsersByAttributeValue
(PerunSession sess, AttributeDefinition attributeDefintion, String attributeValue) Returns all users who have the attribute with the value.getUsersByExtSourceTypeAndLogin
(PerunSession perunSession, String extSourceType, String login) Get all the users who have given type of the ExtSource and login.getUsersByIds
(PerunSession sess, List<Integer> usersIds) Gets users by their ids.getUsersBySpecificUser
(PerunSession sess, User specificUser) Return all users who owns the specificUser and their ownership is not in status disabledgetUsersByVo
(PerunSession sess, Vo vo) Return users which have member in VO.int
getUsersCount
(PerunSession perunSession) Get count of all users.getUsersPage
(PerunSession sess, UsersPageQuery query) Get page of users.getUsersReservedLogins
(User user) Return list of all reserved logins for specific user (pair is namespace and login)Returns all users who are not member of any VO.getVosWhereUserIsAdmin
(PerunSession perunSession, User user) Returns list of VOs, where the user is an Administrator.getVosWhereUserIsMember
(PerunSession sess, User user) Returns list of Vos' ids, where the user is member.boolean
isLoginReserved
(PerunSession sess, String namespace, String login, boolean ignoreCase) Return true if login in specified namespace is already reserved, false if not.boolean
isUserAnonymized
(PerunSession sess, User user) Checks whether user has been anonymized or not.boolean
isUserPerunAdmin
(PerunSession sess, User user) Returns true if the user is PERUNADMIN.loadPasswordResetRequest
(PerunSession sess, UUID uuid) Returns only valid password reset request with specified UUID.void
removeAllAuthorships
(PerunSession sess, User user) Removes all authorships of user when user is deleted from DB (author records on all his publications).void
removeAllPasswordResetRequests
(PerunSession sess, User user) Removes all password reset requests associated with user.void
removeAllPreferredEmailChangeRequests
(PerunSession sess, User user) Removes all mail change requests related to user.void
removeAllUserExtSources
(PerunSession perunSession, User user) Removes all user's external sources.void
removeSpecificUserOwner
(PerunSession sess, User user, User specificUser) Remove specificUser owner (the user) Only disable ownership of user and specificUservoid
removeUserExtSource
(PerunSession perunSession, User user, UserExtSource userExtSource) Removes user's external sources.requestPreferredEmailChange
(PerunSession sess, User user, String email) Store request of change of user's preferred email address.setSpecificUserType
(PerunSession sess, User user, SpecificUserType specificUserType) Set flag for specific user type for the user.boolean
specificUserOwnershipExists
(PerunSession sess, User user, User specificUser) Return true if ownership between user and specificUser already exists.unsetSpecificUserType
(PerunSession sess, User user, SpecificUserType specificUserType) Unset flag for specific user type for the user.updateNameTitles
(PerunSession perunSession, User user) Updates titles before/after users name.updateUser
(PerunSession perunSession, User user) Updates users data in DB.updateUserExtSource
(PerunSession perunSession, UserExtSource userExtSource) Updates user;s userExtSource in DB.void
updateUserExtSourceLastAccess
(PerunSession perunSession, UserExtSource userExtSource) Updates user's userExtSource last access time in DB.boolean
userExists
(PerunSession perunSession, User user) Check if user exists in underlaying data source.boolean
userExtSourceExists
(PerunSession perunSession, UserExtSource userExtSource) Check if userExtSource exists in underlaying data source.
-
Method Details
-
getUserByUserExtSource
User getUserByUserExtSource(PerunSession perunSession, UserExtSource userExtSource) throws UserNotExistsException Returns user by his login in external source.- Parameters:
perunSession
-userExtSource
-- Returns:
- user by its userExtSource or throws UserNotExistsException
- Throws:
InternalErrorException
UserNotExistsException
-
getUsersByExtSourceTypeAndLogin
List<User> getUsersByExtSourceTypeAndLogin(PerunSession perunSession, String extSourceType, String login) Get all the users who have given type of the ExtSource and login.- Parameters:
perunSession
- perun sessionextSourceType
- type of the user extSourcelogin
- login of the user- Returns:
- all users with given parameters
- Throws:
InternalErrorException
-
getUserById
Returns user by its id.- Parameters:
perunSession
-id
-- Returns:
- user
- Throws:
UserNotExistsException
InternalErrorException
-
getSpecificUsersByUser
Return all specificUsers who are owned by the user and their ownership is not in status disabled- Parameters:
sess
-user
- the user- Returns:
- list of specificUsers who are owned by the user
- Throws:
InternalErrorException
-
getUsersBySpecificUser
Return all users who owns the specificUser and their ownership is not in status disabled- Parameters:
sess
-specificUser
- the specific User- Returns:
- list of user who owns the specificUser
- Throws:
InternalErrorException
-
removeSpecificUserOwner
void removeSpecificUserOwner(PerunSession sess, User user, User specificUser) throws SpecificUserOwnerAlreadyRemovedException Remove specificUser owner (the user) Only disable ownership of user and specificUser- Parameters:
sess
-user
- the userspecificUser
- the specificUser- Throws:
InternalErrorException
SpecificUserOwnerAlreadyRemovedException
- if there are 0 rows affected by deleting from DB
-
addSpecificUserOwner
Add specificUser owner (the user). If not exists, create new ownership. If exists, only enable ownership for user and specificUser- Parameters:
sess
-user
- the userspecificUser
- the specificUser- Throws:
InternalErrorException
-
enableOwnership
Set ownership for user and specificUser to ENABLE (0).- Parameters:
sess
-user
-specificUser
-- Throws:
InternalErrorException
-
disableOwnership
Set ownership for user and specificUser to DISABLE (1).- Parameters:
sess
-user
-specificUser
-- Throws:
InternalErrorException
-
specificUserOwnershipExists
Return true if ownership between user and specificUser already exists. Return false if not.- Parameters:
sess
-user
-specificUser
-- Returns:
- true if ownership exists, false if not
- Throws:
InternalErrorException
-
getSpecificUsers
Return all specific Users (only specific users) Return also users who has no owners.- Parameters:
sess
-- Returns:
- list of all specific users in perun
- Throws:
InternalErrorException
-
getUserByMember
Returns user by VO member.- Parameters:
perunSession
-member
-- Returns:
- user
- Throws:
InternalErrorException
-
getUsersByVo
Return users which have member in VO.- Parameters:
sess
-vo
-- Returns:
- list of users
- Throws:
InternalErrorException
-
getUsers
Returns all users (included specific users).- Parameters:
sess
-- Returns:
- list of all users
- Throws:
InternalErrorException
-
createUser
Creates the user, stores it in the DB. This method will fill id and uuid to the given user object, but returns a new user object loaded from the DB.- Parameters:
perunSession
-user
- user bean with filled properties- Returns:
- user with user.id filled
- Throws:
InternalErrorException
-
setSpecificUserType
Set flag for specific user type for the user.- Parameters:
sess
-user
- the userspecificUserType
- specific type of user- Returns:
- Throws:
InternalErrorException
-
unsetSpecificUserType
Unset flag for specific user type for the user.- Parameters:
sess
-user
- the userspecificUserType
- specific type of user- Returns:
- Throws:
InternalErrorException
-
deleteUser
void deleteUser(PerunSession perunSession, User user) throws UserAlreadyRemovedException, SpecificUserAlreadyRemovedException Deletes user (normal or specific) including all relations to other users (normal,specific,sponsor)- Parameters:
perunSession
- Session for authzuser
- User to delete- Throws:
InternalErrorException
UserAlreadyRemovedException
- When user is already deletedSpecificUserAlreadyRemovedException
- When specific user is already deleted
-
updateUser
Updates users data in DB.- Parameters:
perunSession
-user
-- Returns:
- updated user
- Throws:
InternalErrorException
-
updateNameTitles
Updates titles before/after users name. New titles must be set inside User object. Setting any title to null will remove title from name. Other user's properties are ignored.- Parameters:
perunSession
-user
-- Returns:
- updated user with new titles before/after name
- Throws:
InternalErrorException
-
anonymizeUser
Anonymizes users data in DB - sets names and titles to NULL and sets anonymized flag to true.- Parameters:
perunSession
-user
-- Returns:
- user
- Throws:
InternalErrorException
-
isUserAnonymized
Checks whether user has been anonymized or not.- Parameters:
sess
-user
-- Returns:
- true if user has been anonymized, false otherwise.
-
updateUserExtSource
UserExtSource updateUserExtSource(PerunSession perunSession, UserExtSource userExtSource) throws UserExtSourceExistsException Updates user;s userExtSource in DB.- Parameters:
perunSession
-userExtSource
-- Returns:
- updated user
- Throws:
InternalErrorException
UserExtSourceExistsException
- When UES with same login/extSource already exists.
-
updateUserExtSourceLastAccess
Updates user's userExtSource last access time in DB.- Parameters:
perunSession
-userExtSource
-- Throws:
InternalErrorException
-
getAllUserExtSourcesByTypeAndLogin
List<UserExtSource> getAllUserExtSourcesByTypeAndLogin(PerunSession sess, String extType, String extLogin) Gets list of all users external sources by specific type and extLogin.- Parameters:
sess
-extType
- - type of extSource (ex. 'IDP')extLogin
- - extLogin of userExtSource- Returns:
- list of userExtSources with type and login, empty list if no such userExtSource exists
- Throws:
InternalErrorException
-
getActiveUserExtSources
Get all users userExtSources with last_access not older than (now - m), where 'm' is number of months defined in CONSTANT in UsersManagerImpl.- Parameters:
sess
-user
- user to get extSources for- Returns:
- list of active user extSources (not older than now - m)
- Throws:
InternalErrorException
-
getUserExtSourceById
UserExtSource getUserExtSourceById(PerunSession sess, int id) throws UserExtSourceNotExistsException Get the user ext source by its id.- Parameters:
sess
-id
-- Returns:
- user external source for the id
- Throws:
InternalErrorException
UserExtSourceNotExistsException
-
getUserExtSourceByUniqueAttributeValue
UserExtSource getUserExtSourceByUniqueAttributeValue(PerunSession sess, int attrId, String uniqueValue) throws UserExtSourceNotExistsException Return userExtSource for specific attribute id and unique value. If not found, throw and exception. It looks for exactly one value of the specific attribute type: - Integer -> exactly match - String -> exactly match - Map -> exactly match of "key=value" - ArrayList -> exactly match of one of the value- Parameters:
sess
-attrId
- attribute id we are looking foruniqueValue
- value used for searching- Returns:
- userExtSource found by attribute id and it's unique value
- Throws:
InternalErrorException
- if Runtime exception has been thrownUserExtSourceNotExistsException
- if userExtSource can't be found
-
getUserExtSourcesByIds
Gets user ext sources by their ids. Silently skips non-existing user ext sources.- Parameters:
sess
-ids
-- Returns:
- List of UserExtSources with specified ids
- Throws:
InternalErrorException
-
getUserExtSources
Get List of user ext sources by user- Parameters:
sess
- sessionuser
- owner of extSources- Returns:
- List of user's UserExtSources
- Throws:
InternalErrorException
-
addUserExtSource
Adds user's external sources.- Parameters:
perunSession
-user
-userExtSource
-- Returns:
- user external source with userExtSource.id filled
- Throws:
InternalErrorException
-
removeUserExtSource
void removeUserExtSource(PerunSession perunSession, User user, UserExtSource userExtSource) throws UserExtSourceAlreadyRemovedException Removes user's external sources.- Parameters:
perunSession
-user
-userExtSource
-- Throws:
InternalErrorException
UserExtSourceAlreadyRemovedException
- if there are 0 rows affected by deleting from DB
-
removeAllUserExtSources
Removes all user's external sources.- Parameters:
perunSession
-user
-- Throws:
InternalErrorException
-
getUserExtSourceByExtLogin
UserExtSource getUserExtSourceByExtLogin(PerunSession perunSession, ExtSource source, String extLogin) throws UserExtSourceNotExistsException Gets user's external source by the user's external login and external source.- Parameters:
perunSession
-source
-extLogin
-- Returns:
- user external source object
- Throws:
InternalErrorException
UserExtSourceNotExistsException
-
isLoginReserved
Return true if login in specified namespace is already reserved, false if not.- Parameters:
sess
-namespace
- namespace for loginlogin
- login to checkignoreCase
- TRUE to perform case-insensitive check- Returns:
- true if login exist, false if not exist
- Throws:
InternalErrorException
-
checkReservedLogins
void checkReservedLogins(PerunSession sess, String namespace, String login, boolean ignoreCase) throws AlreadyReservedLoginException Check if login in specified namespace exists.- Parameters:
sess
-namespace
- namespace for loginlogin
- login to checkignoreCase
- TRUE to perform case-insensitive check- Throws:
InternalErrorException
AlreadyReservedLoginException
- throw this exception if login already exist in table of reserved logins
-
userExists
Check if user exists in underlaying data source.- Parameters:
perunSession
-user
- user to check- Returns:
- true if user exists in underlaying data source, false otherwise
- Throws:
InternalErrorException
-
checkUserExists
Check if user exists in underlaying data source.- Parameters:
perunSession
-user
-- Throws:
InternalErrorException
UserNotExistsException
-
userExtSourceExists
Check if userExtSource exists in underlaying data source.- Parameters:
perunSession
-userExtSource
- userExtSource to check- Returns:
- true if userExtSource exists in underlaying data source, false otherwise
- Throws:
InternalErrorException
-
checkUserExtSourceExists
void checkUserExtSourceExists(PerunSession perunSession, UserExtSource userExtSource) throws UserExtSourceNotExistsException Check if userExtSource exists in underlaying data source by identity (login/extSource combination)- Parameters:
perunSession
-userExtSource
-- Throws:
InternalErrorException
UserExtSourceNotExistsException
-
checkUserExtSourceExistsById
void checkUserExtSourceExistsById(PerunSession perunSession, int id) throws UserExtSourceNotExistsException Check if userExtSource exists in underlaying data source by its ID.- Parameters:
perunSession
-id
-- Throws:
InternalErrorException
UserExtSourceNotExistsException
-
getVosWhereUserIsAdmin
Returns list of VOs, where the user is an Administrator. Including VOs, where the user is a VALID member of authorized group.- Parameters:
perunSession
-user
-- Returns:
- list of VOs, where the user is an Administrator.
- Throws:
InternalErrorException
-
getGroupsWhereUserIsAdmin
Returns list of Groups in Perun, where the User is a direct Administrator or he is a VALID member of any group which is Administrator of some of these Groups.- Parameters:
perunSession
-user
-- Returns:
- list of Groups, where user or some of his groups is an Administrator
- Throws:
InternalErrorException
-
getGroupsWhereUserIsAdmin
Returns list of Groups in selected Vo, where the User is a direct Administrator or he is a VALID member of any group which is Administrator of some of these Groups.- Parameters:
sess
-vo
- selected Vo under which we are looking for groupsuser
- manager of groups we are looking for- Returns:
- list of Groups, where user or some of his groups (in the Vo) is an Administrator
- Throws:
InternalErrorException
-
getVosWhereUserIsMember
Returns list of Vos' ids, where the user is member.- Parameters:
sess
-user
-- Returns:
- list of Vos, where the user is member
- Throws:
InternalErrorException
-
findUsers
Returns list of users who matches the searchString, searching name, id, uuid, member attributes, user attributes and userExtSource attributes (listed in perun.properties).- Parameters:
sess
- perun sessionsearchString
- it will be looking for this search string in the specific parameters in DB- Returns:
- list of users
-
findUsersByExactMatch
Returns list of users who matches the searchString, searching name (exact match), id, uuid, member attributes, user attributes and userExtSource attributes (listed in perun.properties).- Parameters:
sess
- perun sessionsearchString
- it will be looking for this search string in the specific parameters in DB- Returns:
- list of users
-
findUsersByName
Returns list of users who matches the searchString- Parameters:
sess
-searchString
-- Returns:
- list of users
- Throws:
InternalErrorException
-
findUsersByName
List<User> findUsersByName(PerunSession sess, String titleBefore, String firstName, String middleName, String lastName, String titleAfter) Returns list of users who matches the fields.- Parameters:
sess
-titleBefore
-firstName
-middleName
-lastName
-titleAfter
-- Returns:
- list of users
- Throws:
InternalErrorException
-
findUsersByExactName
Returns list of users who exactly matches the searchString- Parameters:
sess
-searchString
-- Returns:
- list of users
- Throws:
InternalErrorException
-
getUsersByAttribute
Returns all users who have set the attribute with the value. Searching only def and opt attributes.- Parameters:
sess
-attribute
-- Returns:
- list of users
- Throws:
InternalErrorException
-
getUsersByAttribute
Returns all users who have set the attribute with the value IGNORING CASE in the comparison. Searching only def and opt attributes.- Parameters:
sess
-attribute
-ignoreCase
- TRUE to perform case-insensitive check- Returns:
- list of users
- Throws:
InternalErrorException
-
getUsersByAttributeValue
List<User> getUsersByAttributeValue(PerunSession sess, AttributeDefinition attributeDefintion, String attributeValue) Returns all users who have the attribute with the value. attributeValue is not converted to the attribute type, it is always type of String.- Parameters:
sess
-attributeDefintion
-attributeValue
-- Returns:
- list of users
- Throws:
InternalErrorException
-
getUsersByIds
Gets users by their ids. Silently skips non-existing users.- Parameters:
sess
-usersIds
-- Returns:
- List of users with specified ids
- Throws:
InternalErrorException
-
getUsersWithoutVoAssigned
Returns all users who are not member of any VO.- Parameters:
sess
-- Returns:
- list of users who are not member of any VO
- Throws:
InternalErrorException
-
getUsersPage
Get page of users.- Parameters:
sess
- sessionquery
- query with page information- Returns:
- page of requested users
-
isUserPerunAdmin
Returns true if the user is PERUNADMIN.- Parameters:
sess
-user
-- Returns:
- true if the user is PERUNADMIN, false otherwise.
- Throws:
InternalErrorException
-
removeAllAuthorships
Removes all authorships of user when user is deleted from DB (author records on all his publications).- Parameters:
sess
-user
-- Throws:
InternalErrorException
- thrown when runtime exception
-
getUsersReservedLogins
Return list of all reserved logins for specific user (pair is namespace and login)- Parameters:
user
- for which get reserved logins- Returns:
- list of pairs namespace and login
- Throws:
InternalErrorException
-
deleteUsersReservedLogins
Delete all reserved logins for specific user (pair is namespace and login)- Parameters:
user
- for which get delete reserved logins- Throws:
InternalErrorException
-
deleteUsersApplications
Delete all applications and submitted data for specific user.- Parameters:
user
- for which delete applications and submitted data- Throws:
InternalErrorException
-
requestPreferredEmailChange
Store request of change of user's preferred email address. Change in attribute value is not done, until email address is verified by link in email notice. (urn:perun:user:attribute-def:def:preferredEmail)- Parameters:
sess
-user
-email
-- Returns:
- UUID of change request
- Throws:
InternalErrorException
-
getPreferredEmailChangeRequest
Get new preferred email value from user's original request- Parameters:
sess
- PerunSessionuser
- User to get new email address foruuid
- UUID of the email change request- Returns:
- String return new preferred email
- Throws:
InternalErrorException
-
removeAllPreferredEmailChangeRequests
Removes all mail change requests related to user.- Parameters:
sess
- PerunSessionuser
- User to remove preferred email change requests for- Throws:
InternalErrorException
- if any exception in DB occur
-
getPendingPreferredEmailChanges
Return list of email addresses of user, which are awaiting validation and are inside time window for validation. If there is no preferred email change request pending or requests are outside time window for validation, returns empty list.- Parameters:
sess
- PerunSessionuser
- User to check pending request for- Returns:
- List
user's email addresses pending validation
-
checkPasswordResetRequestIsValid
void checkPasswordResetRequestIsValid(PerunSession sess, UUID uuid) throws PasswordResetLinkExpiredException, PasswordResetLinkNotValidException Checks if the password reset request link is valid. The request is valid, if it was created, never used and hasn't expired yet.- Parameters:
sess
- PerunSessionuuid
- UUID of the request to check- Throws:
PasswordResetLinkExpiredException
- when the password reset request expiredPasswordResetLinkNotValidException
- when the password reset request was already used or has never existed
-
loadPasswordResetRequest
Map<String,Object> loadPasswordResetRequest(PerunSession sess, UUID uuid) throws PasswordResetLinkExpiredException, PasswordResetLinkNotValidException Returns only valid password reset request with specified UUID. Validity is determined by time since request creation and actual usage (only once). If no valid entry is found, exception is thrown. Entry is invalidated once loaded.- Parameters:
sess
- PerunSessionuuid
- UUID of the request to get- Returns:
- Map with 3 keys: - "user_id" = ID of the user who requested this password reset, value is Integer - "namespace" = namespace user wants to reset password, value is String - "mail" = mail used for notification, value is String
- Throws:
PasswordResetLinkExpiredException
- when the password reset request expiredPasswordResetLinkNotValidException
- when the password reset request was already used or has never existed
-
removeAllPasswordResetRequests
Removes all password reset requests associated with user. This is used when deleting user from Perun.- Parameters:
sess
- PerunSessionuser
- User to remove all pwdreset requests- Throws:
InternalErrorException
-
getUsersCount
Get count of all users.- Parameters:
perunSession
-- Returns:
- count of all users
- Throws:
InternalErrorException
-
getPasswordManagerModule
Return instance of PasswordManagerModule for specified namespace or NULL if class for module is not found. Throws exception if class can't be instantiated.- Parameters:
session
- Session with authznamespace
- Namespace to get PWDMGR module.- Returns:
- Instance of password manager module or NULL if not exists for passed namespace.
- Throws:
InternalErrorException
- When module can't be instantiated.
-
getSponsors
Gets list of user that sponsored a member.- Parameters:
sess
- perun sessionsponsoredMember
- member which is sponsored- Returns:
- list of users that sponsored a member.
- Throws:
InternalErrorException
-
deleteSponsorLinks
Deletes all links to sponsors, even those marked as inactive.- Parameters:
sess
- perun sessionsponsor
- sponsor- Throws:
InternalErrorException
-
findUsersWithExtSourceAttributeValueEnding
List<User> findUsersWithExtSourceAttributeValueEnding(PerunSessionImpl sess, String attributeName, String valueEnd, List<String> excludeValueEnds) Implements search for #UsersManagerBl.findUsersWithExtSourceAttributeValueEnding(). -
getAssignedResources
Return all resources, where user is assigned through all his members.- Parameters:
sess
-user
-- Returns:
- All resources where user is assigned
-
getAllowedResources
Return all resources, where user is allowed by all his members.- Parameters:
sess
-user
-- Returns:
- All resources where user is allowed
-
getAssignedResources
Return all resources of specified facility, where user is assigned through all his members.- Parameters:
sess
-facility
-user
-- Returns:
- All resources where user is assigned
-
getAssociatedResources
Return all resources of specified facility with which user is associated through all his members. Does not require ACTIVE group-resource assignment.- Parameters:
sess
-facility
-user
-- Returns:
- All resources with which user is associated
-
getAssignedRichResources
Return all rich resources, where user is assigned through all his members.- Parameters:
sess
-user
-- Returns:
- All resources where user is assigned
-
getAssociatedResources
Get all resources with which user can be associated (similar to assigned resources, but does not require ACTIVE group-resource assignment).- Parameters:
sess
-user
-- Returns:
- list of resources with which user is associated
-
getReservedLoginsByApp
Gets reserved logins which used in the given application.- Parameters:
sess
-appId
-- Returns:
- list of logins (Pair: left - namespace, right - login)
-
getReservedLoginsOnlyByGivenApp
Gets reserved logins which can be deleted - they are used only in the given application.- Parameters:
sess
-appId
-- Returns:
- list of logins (Pair: left - namespace, right - login)
-
deleteReservedLogin
Deletes given login reservations. Reserved logins must be removed from external systems (e.g. KDC) BEFORE calling this method via deletePassword() in UsersManager.- Parameters:
sess
-login
- login (pair namespace and login) to delete
-