public final class LdapUserManagementHelper extends Object implements UserManagementHelper
UserManagementHelper
that talks directly to the configured LDAP server.
The underlying LDAP operations are handled by LdapServer
.
Synchronises after each modification to ensure Confluence's local copy of LDAP data is up-to-date.Constructor and Description |
---|
LdapUserManagementHelper(ConfluenceRpc rpc)
Creates an instance which delegates to
LdapServer , using the default connection properties from ldapTemplate. |
LdapUserManagementHelper(ConfluenceRpc rpc,
org.springframework.ldap.core.LdapTemplate ldapTemplate,
Set<User> initialUsers,
Set<Group> initialGroups)
Creates an instance which delegates to
LdapServer using the LDAP connections
provided by the ldapTemplate . |
Modifier and Type | Method and Description |
---|---|
void |
activateUser(String username) |
void |
addGroupToGroup(Group childGroup,
Group parentGroup)
Add childGroup to parentGroup.
|
void |
addUserToGroup(String userName,
String groupName) |
void |
addUserToGroup(User user,
Group group) |
void |
changePassword(String username,
String newPassword)
Change a user's password.
|
void |
createGroup(Group group) |
void |
createGroup(String groupName) |
List<User> |
createMultipleUsers(int numUsers)
Helper to create multiple users (calls
UserManagementHelper.createUser(com.atlassian.confluence.it.User) ) |
User |
createUser(User user)
Creates the user, adds it to the default users group, and ensures the
user profile is created (to work around CONF-6404).
|
void |
deactivateUser(String username) |
void |
endBatch()
Flag that the batch transactions are complete, that a sync should be performed immediately, and that syncing
should be re-enabled for future requests.
|
void |
fixUser(User user)
Ensure that the user's details in the system match those in
user . |
static LdapUserManagementHelper |
fromTestLdapProperties(ConfluenceRpc rpc)
Construct using the
TestProperties ('ldap.'-prefixed properties, e.g. |
Set<String> |
getUserGroups(User user) |
boolean |
isExternal()
Return true if this helper modifies Users, Groups and Group Memberships via RPC.
|
void |
removeGroup(Group group) |
void |
removeGroup(String groupName) |
void |
removeGroupUncleanly(Group group)
Removes a group but do not remove their dependent permissions.
|
void |
removeMultipleUsers(List<User> users)
Removes the list of users (calls
UserManagementHelper.removeUser(User) ) |
void |
removeUser(String username) |
void |
removeUser(User user) |
void |
removeUserFromGroup(User user,
Group group) |
void |
removeUserUncleanly(String username)
Removes a user with the given username but do not remove their dependent permissions or pages.
|
void |
removeUserUncleanly(User user)
Removes a user but do not remove their dependent permissions or pages.
|
void |
renameUser(String oldUsername,
String newUsername) |
void |
resetData(Set<User> usersToKeep,
Set<Group> groupsToKeep,
Map<Group,HashSet<User>> userGroupMembershipsToKeep)
Return the User/Group/Membership data to a clean state.
|
void |
setAutoSync(boolean autoSync) |
void |
startBatch()
Flag that a number of user/group transactions are about to be performed in a block, and any syncing should
pause until the batch is finished.
|
void |
synchronise()
Force a synchronisation with an external user directory.
|
boolean |
userExists(String username) |
public LdapUserManagementHelper(ConfluenceRpc rpc)
LdapServer
, using the default connection properties from ldapTemplate.rpc
- The rpc helperpublic LdapUserManagementHelper(ConfluenceRpc rpc, org.springframework.ldap.core.LdapTemplate ldapTemplate, Set<User> initialUsers, Set<Group> initialGroups)
LdapServer
using the LDAP connections
provided by the ldapTemplate
.rpc
- Confluence RPC interfaceldapTemplate
- used to connect to the LDAP serverinitialUsers
- the users which already exist in the LDAP serverinitialGroups
- the groups which already exist in the LDAP serverpublic static LdapUserManagementHelper fromTestLdapProperties(ConfluenceRpc rpc)
TestProperties
('ldap.'-prefixed properties, e.g. from the maven profiles in confluence-multi-test)public void synchronise()
UserManagementHelper
synchronise
in interface UserManagementHelper
public void addUserToGroup(String userName, String groupName)
addUserToGroup
in interface UserManagementHelper
public void addUserToGroup(User user, Group group)
addUserToGroup
in interface UserManagementHelper
public void addGroupToGroup(Group childGroup, Group parentGroup)
UserManagementHelper
addGroupToGroup
in interface UserManagementHelper
public Set<String> getUserGroups(User user)
getUserGroups
in interface UserManagementHelper
user
- the user who's group membership is to be checked.public User createUser(User user)
UserManagementHelper
createUser
in interface UserManagementHelper
public void resetData(Set<User> usersToKeep, Set<Group> groupsToKeep, Map<Group,HashSet<User>> userGroupMembershipsToKeep)
UserManagementHelper
resetData
in interface UserManagementHelper
public boolean isExternal()
UserManagementHelper
isExternal
in interface UserManagementHelper
public boolean userExists(String username)
public void removeUser(String username)
removeUser
in interface UserManagementHelper
public void removeUser(User user)
removeUser
in interface UserManagementHelper
public void createGroup(String groupName)
createGroup
in interface UserManagementHelper
public void createGroup(Group group)
createGroup
in interface UserManagementHelper
public void removeUserFromGroup(User user, Group group)
removeUserFromGroup
in interface UserManagementHelper
public void removeGroup(String groupName)
removeGroup
in interface UserManagementHelper
public List<User> createMultipleUsers(int numUsers)
UserManagementHelper
UserManagementHelper.createUser(com.atlassian.confluence.it.User)
)createMultipleUsers
in interface UserManagementHelper
numUsers
- the number of users to createpublic void removeMultipleUsers(List<User> users)
UserManagementHelper
UserManagementHelper.removeUser(User)
)removeMultipleUsers
in interface UserManagementHelper
users
- the list of users to removepublic void removeGroup(Group group)
public void removeUserUncleanly(String username)
UserManagementHelper
removeUserUncleanly
in interface UserManagementHelper
username
- the username of the user to removepublic void removeUserUncleanly(User user)
UserManagementHelper
removeUserUncleanly
in interface UserManagementHelper
user
- the user to removepublic void removeGroupUncleanly(Group group)
UserManagementHelper
removeGroupUncleanly
in interface UserManagementHelper
group
- the group to removepublic void fixUser(User user)
UserManagementHelper
user
. That is,
it finds the user in the system by its username, and sets the full name and email address.fixUser
in interface UserManagementHelper
user
- a user to set the details ofpublic void changePassword(String username, String newPassword)
UserManagementHelper
changePassword
in interface UserManagementHelper
username
- Username of the user whose password to changenewPassword
- Passwordpublic void setAutoSync(boolean autoSync)
setAutoSync
in interface UserManagementHelper
public void startBatch()
UserManagementHelper
startBatch
in interface UserManagementHelper
public void endBatch()
UserManagementHelper
endBatch
in interface UserManagementHelper
public void renameUser(String oldUsername, String newUsername)
renameUser
in interface UserManagementHelper
public void deactivateUser(String username)
deactivateUser
in interface UserManagementHelper
public void activateUser(String username)
activateUser
in interface UserManagementHelper
Copyright © 2003–2015 Atlassian. All rights reserved.