The LDAP provider is used to synchronize passwords to remote LDAP systems, such as OpenLdap or Microsoft Active Directory Lightweight Services (AD LDS). If the target server is a full Microsoft Active Directory, the Active Directory provider should be
used.
This is because the full Active Directory provider supports multiple domain controllers and also supports unlocking accounts if they are locked on the remote domain. It’s also still fully encrypted.
NOTE
When performing an Active Directory to Active Directory sync, please refer to the
AD to AD sync page to determine which sync provider is most suited.
Prerequisites
- Admin account in the remote system.
-
Open network communication between the Sync Server and the remote server. This typically means that one the following two ports must be open:
- tcp/389 (non-SSL-encrypted LDAP)
- tcp/636 (SSL-encrypted LDAP)
Parameters
Parameter |
Description |
Server name |
The name of the remote LDAP server. |
Port number |
The port number to use when contacting the remote LDAP server.
Default port: 636
|
Authentication Type |
Can be set to either of the following:
-
Basic: Uses basic authentication with username/password. Should be used for testing only.
-
BasicSsl: Uses basic authentication with username/password over SSL. This can be used in production against an OpenLDAP server. In order to use this authentication type, you need to configure the server’s certificate used, so that the sync point knows
that it’s a trusted server.
-
Negotiate: Uses the best algorithm that encrypts and verifies integrity of the password changes to the LDAP server. This is used if the LDAP server is Kerberos trusted with the Sync Server in use.
|
Valid Certificate Thumbprint |
The server certificate’s thumbprint. Leaving this field empty means that any certificate will be accepted (not recommended).
To determine the server certificate thumbprint, type “xyz” as “Valid Server Certificate Thumbprint” and attempt one reset. The error message in the test tool (or the app event log) will contain the thumbprint. The
The thumbprint is a hex string and may or may not contain “:” separators in between. Note: This setting is only applicable for Basic Ssl authentication.
|
Attribute Name |
The name of the user attribute in the LDAP system where the password is stored. This parameter is used in conjunction with “Convert to Unicode.” Default value: unicodePwd.
|
|
|
Password Format |
Determines how the password sent to the target system should be encoded.
Possible values:
- QuotedUnicode (Adds quotes to the password, then sends Unicode bytes to the target system. This should be used when syncing to another Microsoft Active Directory.)
- Unicode (Sends Unicode bytes to the target system.)
- Utf8 (Sends Utf8 bytes to the target system.)
|
Admin User Name |
User name of the admin account in the LDAP system. The user name should be in distinguished name format (CN=admin, DC=example, DC=com).
|
Provider Password |
The password of the admin account. |
Target Search Identifier Attribute |
By default, an absolute LDAP path is provided provided to identify the target account. If the source system lacks information about the LDAP path, it is possible to search for the target account by matching an attribute
instead. This setting specifies the name of the attribute to compare with for such a search.
Name of the attribute to match in the target system. This attribute on users in the target system, must contain a unique identifier in that directory, e.g. a social security number or an employee number. That attribute
in the target system will be compared with what has been configured in the Name Mapping.
WARNING
It is critically important that the attributes configured in "Name mapping settings" for the source system and the "Target Search Identifier Attribute" for the target system aren't writable by users. That would compromise security and possibly enable
resetting another user's password and gain access to that account.
Used in conjunction with Target Search Roots. Note that if the identifier in the source system is a distinguished name in the target system, there is no need to configure Target Search Identifier Attribute or Target Search Roots, since the account in
the target system is directly identifiable by that distinguished name.
|
Assume the target Directory is Active directory |
NOTE
This is only used if Target Search Identifier Attribute has been configured.
Set to true if the target is Microsoft Active Directory, otherwise false. Setting to true will enforce the LDAP query to include "(objectCategory=user)(objectCategory=person)(sAMAccountName=*)(!(userAccountControl:1.2.840.113556.1.4.803:=2))(userAccountControl:1.2.840.113556.1.4.803:=512)"
|
Additional condition in LDAP search |
NOTE
This is only used if Target Search Identifier Attribute has been configured.
If set, the value of this string will be AND-combined with the search for target attribute as an LDAP condition when searching for the target account. The schema depends on the LDAP target system, but could, for instance,
exclude disabled accounts from the search or only search a specific department, e.g. "(&(enabled=true)(department=finance))".
|
Target Search Roots |
List of distinguished names to use as search roots when searching user in the target system by looking at the attribute specified in Target Search Identifier Attribute.
The roots must be specified as valid LDAP
paths, for example LDAP://CN=users,DC=acme,DC=org. If more than one root is needed, they must be separated by semicolon (;)
Used in conjunction with Target Search Identifier Attribute.
|
NOTE
Specops recommends using the Active Directory provider to synchronize passwords against remote Active Directories. If you need to use the LDAP provider against Active Directory, the Admin User Name should be specified in the SAM Account Name format instead
of the DN of the admin account.
Sample Configurations
Open Ldap Non-SSL (not for production use)
If the target is an OpenLdap Server configured to use basic authentication (clear text), configure with:
- Server name: DNS name of the LDAP server
- Port number: Typically 389
- Authentication Type: Basic
- AttributeName: userPassword
- Password Format: Utf8
- Target system is Active Directory: false
Target user should be DN-formatted (use proper name mapping).
OpenLdap SSL
If target is an OpenLdap Server configured to use SSL, configure with:
- Server name: DNS name of the LDAP server
- Port number: Typically 636
- Authentication Type: BasicSsl
-
Valid Certificate Thumbprint: Hex string of server certificate’s thumbprint (40 hex digits)
Note: It is not sufficient to use a trusted certificate. The server certificate’s thumbprint must be configured in the syncpoint.
- AttributeName: UserPassword
- Password Format: Utf8
Active Directory Lightweight Directory Services
If the target server is an Active Directory Lightweight Services Server, configure with:
- Server: Name of a DC
- Port number: Typically 389
- Authentication Type: Negotiate
- Attribute Name: UnicodePWD
- Password Format: QuotedUnicode
- Admin username: Administrator (flat-name without domain)
NOTE
Target user should be DN-formatted.