Class UserManagerImpl
- java.lang.Object
-
- ubic.gemma.core.security.authentication.UserManagerImpl
-
- All Implemented Interfaces:
gemma.gsec.authentication.UserManager
,org.springframework.security.core.userdetails.UserDetailsService
,org.springframework.security.provisioning.GroupManager
,org.springframework.security.provisioning.UserDetailsManager
,UserManager
@Service("userManager") public class UserManagerImpl extends Object implements UserManager
Implementation for Spring Security, plus some other handy methods.- Author:
- pavlidis
-
-
Constructor Summary
Constructors Constructor Description UserManagerImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addGroupAuthority(String groupName, org.springframework.security.core.GrantedAuthority authority)
void
addUserToGroup(String username, String groupName)
void
changePassword(String oldPassword, String newPassword)
String
changePasswordForUser(String email, String username, String newPassword)
void
createGroup(String groupName, List<org.springframework.security.core.GrantedAuthority> authorities)
void
createUser(org.springframework.security.core.userdetails.UserDetails user)
void
deleteGroup(String groupName)
void
deleteUser(String username)
List<String>
findAllGroups()
Collection<String>
findAllUsers()
gemma.gsec.model.User
findbyEmail(String emailAddress)
User
findByEmail(String emailAddress)
User
findByUserName(String userName)
List<org.springframework.security.core.GrantedAuthority>
findGroupAuthorities(String groupName)
UserGroup
findGroupByName(String name)
Collection<String>
findGroupsForUser(String userName)
List<String>
findUsersInGroup(String groupName)
String
generateSignupToken(String username)
User
getCurrentUser()
String
getCurrentUsername()
String
getRolePrefix()
boolean
groupExists(String groupName)
boolean
isEnableAuthorities()
boolean
isEnableGroups()
Collection<User>
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
setRolePrefix(String rolePrefix)
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)
-
-
-
Method Detail
-
changePasswordForUser
@Transactional public String changePasswordForUser(String email, String username, String newPassword) throws org.springframework.security.core.AuthenticationException
- Specified by:
changePasswordForUser
in interfacegemma.gsec.authentication.UserManager
- Specified by:
changePasswordForUser
in interfaceUserManager
- Throws:
org.springframework.security.core.AuthenticationException
-
findAllUsers
@Transactional(readOnly=true) public Collection<String> findAllUsers()
- Specified by:
findAllUsers
in interfacegemma.gsec.authentication.UserManager
-
findByEmail
@Transactional(readOnly=true) public User findByEmail(String emailAddress)
- Specified by:
findByEmail
in interfacegemma.gsec.authentication.UserManager
- Specified by:
findByEmail
in interfaceUserManager
-
findbyEmail
@Transactional(readOnly=true) public gemma.gsec.model.User findbyEmail(String emailAddress)
- Specified by:
findbyEmail
in interfacegemma.gsec.authentication.UserManager
- Specified by:
findbyEmail
in interfaceUserManager
-
findByUserName
@Transactional(readOnly=true) public User findByUserName(String userName)
- Specified by:
findByUserName
in interfacegemma.gsec.authentication.UserManager
- Specified by:
findByUserName
in interfaceUserManager
-
findGroupByName
@Transactional(readOnly=true) public UserGroup findGroupByName(String name)
- Specified by:
findGroupByName
in interfacegemma.gsec.authentication.UserManager
- Specified by:
findGroupByName
in interfaceUserManager
-
findGroupsForUser
@Transactional(readOnly=true) public Collection<String> findGroupsForUser(String userName)
- Specified by:
findGroupsForUser
in interfacegemma.gsec.authentication.UserManager
- Specified by:
findGroupsForUser
in interfaceUserManager
-
generateSignupToken
public String generateSignupToken(String username)
- Specified by:
generateSignupToken
in interfacegemma.gsec.authentication.UserManager
-
getCurrentUser
@Transactional(readOnly=true) public User getCurrentUser()
- Specified by:
getCurrentUser
in interfacegemma.gsec.authentication.UserManager
- Specified by:
getCurrentUser
in interfaceUserManager
-
getCurrentUsername
public String getCurrentUsername()
- Specified by:
getCurrentUsername
in interfacegemma.gsec.authentication.UserManager
-
getRolePrefix
public String getRolePrefix()
- Specified by:
getRolePrefix
in interfacegemma.gsec.authentication.UserManager
-
setRolePrefix
public void setRolePrefix(String rolePrefix)
-
groupExists
@Transactional(readOnly=true) public boolean groupExists(String groupName)
- Specified by:
groupExists
in interfacegemma.gsec.authentication.UserManager
-
loadAll
@Transactional(readOnly=true) public Collection<User> loadAll()
- Specified by:
loadAll
in interfacegemma.gsec.authentication.UserManager
- Specified by:
loadAll
in interfaceUserManager
-
loggedIn
public boolean loggedIn()
- Specified by:
loggedIn
in interfacegemma.gsec.authentication.UserManager
-
reauthenticate
public void reauthenticate(String username, String password)
- Specified by:
reauthenticate
in interfacegemma.gsec.authentication.UserManager
-
userWithEmailExists
@Transactional(readOnly=true) public boolean userWithEmailExists(String emailAddress)
- Specified by:
userWithEmailExists
in interfacegemma.gsec.authentication.UserManager
- Specified by:
userWithEmailExists
in interfaceUserManager
-
validateSignupToken
@Transactional public boolean validateSignupToken(String username, String key)
- Specified by:
validateSignupToken
in interfacegemma.gsec.authentication.UserManager
- 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
@Transactional public void deleteUser(String username)
- 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
@Transactional(readOnly=true) public boolean userExists(String username)
- Specified by:
userExists
in interfaceorg.springframework.security.provisioning.UserDetailsManager
- Specified by:
userExists
in interfaceUserManager
-
findAllGroups
@Transactional(readOnly=true) public List<String> findAllGroups()
- Specified by:
findAllGroups
in interfaceorg.springframework.security.provisioning.GroupManager
-
findUsersInGroup
@Transactional(readOnly=true) public List<String> findUsersInGroup(String groupName)
- 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
@Transactional public void deleteGroup(String groupName)
- Specified by:
deleteGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
renameGroup
@Transactional public void renameGroup(String oldName, String newName)
- Specified by:
renameGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
addUserToGroup
@Transactional public void addUserToGroup(String username, String groupName)
- Specified by:
addUserToGroup
in interfaceorg.springframework.security.provisioning.GroupManager
-
removeUserFromGroup
@Transactional public void removeUserFromGroup(String username, String groupName)
- 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
-
-