com.atlassian.crowd.directory
Class OpenLDAP

java.lang.Object
  extended by com.atlassian.crowd.directory.SpringLDAPConnector
      extended by com.atlassian.crowd.directory.RFC4519Directory
          extended by com.atlassian.crowd.directory.OpenLDAP
All Implemented Interfaces:
LDAPDirectory, RemoteDirectory, Attributes
Direct Known Subclasses:
GenericLDAP

public class OpenLDAP
extends RFC4519Directory


Field Summary
 
Fields inherited from class com.atlassian.crowd.directory.SpringLDAPConnector
attributes, contextSource, contextSourceTransactionManager, DEFAULT_PAGE_SIZE, eventPublisher, ldapPropertiesMapper, ldapQueryTranslater, ldapTemplate, nameConverter, searchDN
 
Constructor Summary
OpenLDAP(LDAPQueryTranslater ldapQueryTranslater, com.atlassian.event.api.EventPublisher eventPublisher, InstanceFactory instanceFactory, PasswordEncoderFactory passwordEncoderFactory)
           
 
Method Summary
protected  String encodePassword(PasswordCredential passwordCredential)
          Translates a clear-text password into an encrypted one if it isn't already encrypted, using the encryption method specified by the directory settings.
 String getDescriptiveName()
           
protected  void getNewUserDirectorySpecificAttributes(User user, Attributes attributes)
          OpenLDAP 2.3.35 in a default install requires the sn to be set before a user can be created.
static String getStaticDirectoryType()
           
 
Methods inherited from class com.atlassian.crowd.directory.RFC4519Directory
addDnToGroup, addGroupToGroup, addUserToGroup, findDirectMembersOfGroup, findGroupMembershipNames, findGroupMemberships, findGroupMembershipsOfUserViaMemberOf, findUserMembersOfGroupViaMemberDN, findUserMembersOfGroupViaMemberOf, getCustomGroupAttributeMappers, getCustomUserAttributeMappers, getLdapName, getMemberDnMappers, getMemberships, isDnDirectGroupMember, isGroupDirectGroupMember, isUserDirectGroupMember, removeDnFromGroup, removeGroupFromGroup, removeUserFromGroup, searchGroupRelationshipsWithGroupTypeSpecified, toGenericIterable
 
Methods inherited from class com.atlassian.crowd.directory.SpringLDAPConnector
addDefaultSnToUserAttributes, addDefaultValueToUserAttributesForAttribute, addGroup, addUser, asLdapGroupName, asLdapName, asLdapUserName, authenticate, createModificationItem, findEntityByDN, findEntityByDN, findGroupByName, findGroupByNameAndType, findGroupWithAttributesByName, findUserByExternalId, findUserByName, findUserWithAttributesByName, getAttributeAsBoolean, getAttributeAsLong, getAuthoritativeDirectory, getBaseEnvironmentProperties, getContextSource, getDirectoryId, getGroupContextMapper, getInitialGroupMemberDN, getKeys, getLdapPropertiesMapper, getNewGroupAttributes, getNewGroupDirectorySpecificAttributes, getNewUserAttributes, getSearchDN, getStandardisedDN, getSubTreeSearchControls, getUserContextMapper, getUserModificationItems, getValue, getValues, isEmpty, isRolesDisabled, pageSearchResults, postprocessGroups, removeGroup, removeGroupAttributes, removeUser, removeUserAttributes, renameGroup, renameUser, searchEntities, searchEntitiesWithRequestControls, searchGroupObjects, searchGroupObjectsOfSpecifiedGroupType, searchGroupRelationships, searchGroups, searchUserObjects, searchUsers, setAttributes, setDirectoryId, storeGroupAttributes, storeUserAttributes, supportsInactiveAccounts, supportsNestedGroups, testConnection, typedEntityNotFoundException, updateGroup, updateUser, updateUserCredential
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OpenLDAP

public OpenLDAP(LDAPQueryTranslater ldapQueryTranslater,
                com.atlassian.event.api.EventPublisher eventPublisher,
                InstanceFactory instanceFactory,
                PasswordEncoderFactory passwordEncoderFactory)
Method Detail

getStaticDirectoryType

public static String getStaticDirectoryType()

getDescriptiveName

public String getDescriptiveName()

getNewUserDirectorySpecificAttributes

protected void getNewUserDirectorySpecificAttributes(User user,
                                                     Attributes attributes)
OpenLDAP 2.3.35 in a default install requires the sn to be set before a user can be created.

Overrides:
getNewUserDirectorySpecificAttributes in class SpringLDAPConnector
Parameters:
user - user
attributes - directory attributes

encodePassword

protected String encodePassword(PasswordCredential passwordCredential)
Translates a clear-text password into an encrypted one if it isn't already encrypted, using the encryption method specified by the directory settings.

Specified by:
encodePassword in class SpringLDAPConnector
Parameters:
passwordCredential - The password credential to be encoded, guaranteed to be non-null. If the subclass supports encrypting the given passwordCredential, it should NOT do so if PasswordCredential.isEncryptedCredential() returns true (although it may still encode the credential to the format required by the directory). The value of PasswordCredential.getCredential() is also guaranteed to be non-null.
Returns:
An encoded password, suitable for passing to the directory.
Throws:
PasswordEncoderNotFoundException - (runtime exception) if the encoder for the specified encryption method cannot be found


Copyright © 2014 Atlassian. All Rights Reserved.