Class UserManagerImpl
java.lang.Object
ubic.gemma.core.security.authentication.UserManagerImpl
- All Implemented Interfaces:
gemma.gsec.authentication.GroupManager
,gemma.gsec.authentication.UserDetailsManager
,org.springframework.security.core.userdetails.UserDetailsService
,org.springframework.security.provisioning.GroupManager
,org.springframework.security.provisioning.UserDetailsManager
,UserManager
Implementation for Spring Security, plus some other handy methods.
- Author:
- pavlidis
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addGroupAuthority
(String groupName, org.springframework.security.core.GrantedAuthority authority) void
addUserToGroup
(String username, String groupName) void
changePassword
(String oldPassword, String newPassword) changePasswordForUser
(String email, String username, String newPassword) void
createGroup
(String groupName, List<org.springframework.security.core.GrantedAuthority> authorities) gemma.gsec.authentication.UserDetailsImpl
createUser
(String username, String email, String password) void
createUser
(org.springframework.security.core.userdetails.UserDetails user) void
deleteGroup
(String groupName) void
deleteUser
(String username) findByEmail
(String emailAddress) findByUserName
(String userName) List
<org.springframework.security.core.GrantedAuthority> findGroupAuthorities
(String groupName) findGroupsForUser
(String userName) findUsersInGroup
(String groupName) generateSignupToken
(String username) Obtain theUser
corresponding to the currently logged in user.Obtain the username of the currently logged in user.boolean
groupExists
(String groupName) boolean
boolean
loadAll()
org.springframework.security.core.userdetails.UserDetails
loadUserByUsername
(String username) protected List
<org.springframework.security.core.userdetails.UserDetails> loadUsersByUsername
(String username) boolean
loggedIn()
void
reauthenticate
(String username, String password) void
removeGroupAuthority
(String groupName, org.springframework.security.core.GrantedAuthority authority) void
removeUserFromGroup
(String username, String groupName) void
renameGroup
(String oldName, String newName) void
setEnableAuthorities
(boolean enableAuthorities) void
setEnableGroups
(boolean enableGroups) void
updateUser
(org.springframework.security.core.userdetails.UserDetails user) void
updateUserGroups
(org.springframework.security.core.userdetails.UserDetails userDetails, Collection<String> groups) Update the groups a user belong to.boolean
userExists
(String username) boolean
userWithEmailExists
(String emailAddress) boolean
validateSignupToken
(String username, String key)
-
Constructor Details
-
UserManagerImpl
public UserManagerImpl()
-
-
Method Details
-
changePasswordForUser
@Transactional public String changePasswordForUser(String email, String username, String newPassword) throws org.springframework.security.core.AuthenticationException - Specified by:
changePasswordForUser
in interfacegemma.gsec.authentication.UserDetailsManager
- Specified by:
changePasswordForUser
in interfaceUserManager
- Throws:
org.springframework.security.core.AuthenticationException
-
findAllUsers
- Specified by:
findAllUsers
in interfacegemma.gsec.authentication.UserDetailsManager
-
createUser
@Transactional public gemma.gsec.authentication.UserDetailsImpl createUser(String username, String email, String password) - Specified by:
createUser
in interfaceUserManager
-
findByEmail
- Specified by:
findByEmail
in interfaceUserManager
-
findByUserName
- Specified by:
findByUserName
in interfaceUserManager
-
findGroupsForUser
- Specified by:
findGroupsForUser
in interfacegemma.gsec.authentication.GroupManager
- Specified by:
findGroupsForUser
in interfaceUserManager
-
generateSignupToken
- Specified by:
generateSignupToken
in interfacegemma.gsec.authentication.UserDetailsManager
-
getCurrentUser
Description copied from interface:UserManager
Obtain theUser
corresponding to the currently logged in user.- Specified by:
getCurrentUser
in interfaceUserManager
- Returns:
- the user, or null if no user is logged in
-
getCurrentUsername
Description copied from interface:UserManager
Obtain the username of the currently logged in user.If no user is logged in, the principal of the anonymous authentication token is returned.
- Specified by:
getCurrentUsername
in interfacegemma.gsec.authentication.UserDetailsManager
- Specified by:
getCurrentUsername
in interfaceUserManager
-
groupExists
- Specified by:
groupExists
in interfacegemma.gsec.authentication.GroupManager
-
loadAll
- Specified by:
loadAll
in interfaceUserManager
-
loggedIn
public boolean loggedIn()- Specified by:
loggedIn
in interfacegemma.gsec.authentication.UserDetailsManager
-
reauthenticate
- Specified by:
reauthenticate
in interfacegemma.gsec.authentication.UserDetailsManager
-
userWithEmailExists
- Specified by:
userWithEmailExists
in interfacegemma.gsec.authentication.UserDetailsManager
- Specified by:
userWithEmailExists
in interfaceUserManager
-
validateSignupToken
- Specified by:
validateSignupToken
in interfacegemma.gsec.authentication.UserDetailsManager
- Specified by:
validateSignupToken
in interfaceUserManager
-
createUser
@Transactional public void createUser(org.springframework.security.core.userdetails.UserDetails user) - Specified by:
createUser
in interfaceorg.springframework.security.provisioning.UserDetailsManager
- Specified by:
createUser
in interfaceUserManager
-
updateUser
@Transactional public void updateUser(org.springframework.security.core.userdetails.UserDetails user) - Specified by:
updateUser
in interfaceorg.springframework.security.provisioning.UserDetailsManager
- Specified by:
updateUser
in interfaceUserManager
-
updateUserGroups
@Transactional public void updateUserGroups(org.springframework.security.core.userdetails.UserDetails userDetails, Collection<String> groups) Description copied from interface:UserManager
Update the groups a user belong to.- Specified by:
updateUserGroups
in interfaceUserManager
-
deleteUser
- Specified by:
deleteUser
in interfaceorg.springframework.security.provisioning.UserDetailsManager
- Specified by:
deleteUser
in interfaceUserManager
-
changePassword
@Transactional public void changePassword(String oldPassword, String newPassword) throws org.springframework.security.core.AuthenticationException - Specified by:
changePassword
in interfaceorg.springframework.security.provisioning.UserDetailsManager
- Specified by:
changePassword
in interfaceUserManager
- Throws:
org.springframework.security.core.AuthenticationException
-
userExists
- Specified by:
userExists
in interfaceorg.springframework.security.provisioning.UserDetailsManager
- Specified by:
userExists
in interfaceUserManager
-
findAllGroups
- Specified by:
findAllGroups
in interfaceorg.springframework.security.provisioning.GroupManager
-
findUsersInGroup
- Specified by:
findUsersInGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
createGroup
@Transactional public void createGroup(String groupName, List<org.springframework.security.core.GrantedAuthority> authorities) - Specified by:
createGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
deleteGroup
- Specified by:
deleteGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
renameGroup
- Specified by:
renameGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
addUserToGroup
- Specified by:
addUserToGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
removeUserFromGroup
- Specified by:
removeUserFromGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
findGroupAuthorities
@Transactional(readOnly=true) public List<org.springframework.security.core.GrantedAuthority> findGroupAuthorities(String groupName) - Specified by:
findGroupAuthorities
in interfaceorg.springframework.security.provisioning.GroupManager
-
addGroupAuthority
@Transactional public void addGroupAuthority(String groupName, org.springframework.security.core.GrantedAuthority authority) - Specified by:
addGroupAuthority
in interfaceorg.springframework.security.provisioning.GroupManager
-
removeGroupAuthority
@Transactional public void removeGroupAuthority(String groupName, org.springframework.security.core.GrantedAuthority authority) - Specified by:
removeGroupAuthority
in interfaceorg.springframework.security.provisioning.GroupManager
-
isEnableAuthorities
public boolean isEnableAuthorities() -
setEnableAuthorities
public void setEnableAuthorities(boolean enableAuthorities) -
isEnableGroups
public boolean isEnableGroups() -
setEnableGroups
public void setEnableGroups(boolean enableGroups) -
loadUserByUsername
@Transactional(readOnly=true) public org.springframework.security.core.userdetails.UserDetails loadUserByUsername(String username) throws org.springframework.security.core.userdetails.UsernameNotFoundException - Specified by:
loadUserByUsername
in interfaceorg.springframework.security.core.userdetails.UserDetailsService
- Throws:
org.springframework.security.core.userdetails.UsernameNotFoundException
-
loadUsersByUsername
-