[Index]

Model: relation/HcsLdapServerREL

LDAP Server

To access the latest documentation, go to Documentation and Resources at: https://voss.portalshape.com

This procedure adds and configures a LDAP server for integration with VOSS Automate.

To add a LDAP Server:

  1. Log in as provider, reseller, or customer administrator.

  2. Set the hierarchy node to the node where you want the users synchronized.

  3. Go to (default menus) LDAP Management > LDAP Server.

  4. Click Add.

  5. Fill out the fields on the Base tab.

  6. Optionally, on the Sync List tab, if you choose LDAP sync list option Create sync list from template, you can choose a LDAP sync list template (based on the server type) - either of these:

    You can choose a template when adding the LDAP server, or update your choice after saving. If you don't choose a template, LDAP sync is not affected by this list. See the tab description, and see:

  7. Click Save to add the LDAP server.

  8. Test the connection to ensure the LDAP server is configured correctly.

    If the authentication credentials or search base DN are invalid, the system displays an error, for example:

    Error encountered while processing your request

    caught exception: [Helper] validation failed; Invalid search base db.

Base Tab

Fields Description
Description Defaults to the current hierarchy level.
Host Name * Hostname or IP address of the LDAP server. This field is required.
Port Port number for LDAP traffic. Defaults to 389.
User DN *

The User Distinguished Name of an administrative user who has access rights to the Base DN on the LDAP server. This field is required.

Examples:

Admin Password * Admin password associated with the user. This field is required.
Search Base DN *

Base Distinguished Name for LDAP search. This should be a container or directory on the LDAP server where the LDAP users exist, such as an Organization Unit or OU. As an example, to search within an Organizational Unit called CUS01 under a domain called GCLAB.COM, the Search Base DN would be OU=CUS01,DC=GCLAB,DC=COM. This field is required.

Note that the search will traverse the directory tree from this point down and will include any sub OU's which have been added within the OU.

Search Filter An RFC 2254 conformant string used to restrict the results returned by list operations on the LDAP server.
Server Type * Choose between Microsoft Active Directory or OpenLDAP. For AD LDS (ADAM), choose Microsoft Active Directory.
AD Sync Mode * Defaults to Direct.
Enable Write Operations This check box is only shown for Microsoft Active Directory servers (Server Type is Microsoft Active Directory) when Encryption Method is "Use SSL Encryption (ldaps://)" (port is 636). When enabled, VOSS Automate user management allows for the management of users on the LDAP server (add, modify, delete).
Fields Description
CUCM LDAP Directory Name The name of the LDAP Directory configured on CUCM that we want this user to be considered synced from. The LDAP Directory must be configured on CUCM already. This is an optional parameter but the following should be considered: For top down sync scenario, Users will be added to CUCM as Local Users if this parameter is not set. For bottom up sync scenario, Users will not be able to log on to VOSS Automate if this parameter is not set.
Encryption Method

Choose between No Encryption, Use SSL Encryption (ldaps://), or Use StartTLS Extension.

  • No Encryption - default port for LDAP is port 389
  • Use SSL Encryption (ldaps://)a - uses port 636 and establishes TLS/SSL upon connecting with a client.
  • Use StartTLS Extension - to transition to a TLS connection after connecting on port 389
Server Root Certificate If Trust All is Cleared, the LDAP server's SSL certificate is validated against this root certificate. If no Server Root Certificate is specified, validation is done against any existing trusted CA certificates. Use this option for custom root certificates in .pem format. See "SSO Certificate Management" for more information.
Trust All Select this check box to disable certificate validation.
Primary Key Attribute The attribute value used to uniquely identify and search for records on an LDAP server. For example, uid is the attribute when using a 389-Directory Server and entryUUID when using an OpenLDAP server. The attribute must be unique, should not change over time and should not be location specific. If no attribute is entered, entryUUID is used for an OpenLDAP server and ObjectGUID if the LDAP server is Microsoft Active Directory.
Authentication Scope Hierarchical scope this server applies to: Local authentication or Full tree authentication. [1]
User sync type

Type of users that can authenticate against this server: All users or Synced users only

  • All users: All users can authenticate against this server.
  • Synced users only (Default): Only users synced in from LDAP can authenticate against this server.
Authentication enabled Indicate whether the server is available for authentication. Default value is True.

Search Filter examples:

User lookup for LDAP authentication is restricted to the device/ldap model specified in the Authentication Attribute: Model Type. For example, if this attribute was device/ldap/user, the LDAP user authentication is restricted to (objectClass=user).

LDAP Sync Tab

When adding a new LDAP server or updating an existing server added prior to release 19.3.4, you can choose an LDAP Sync List Option.

A sync list improves performance and limits sync attributes to those relevant to your scenario.

The table describes the available LDAP sync list options on this tab:

No sync list - all fields will be synced LDAP sync is not driven by a LDAP Sync List. All fields are imported as before release 19.3.4.
Create sync list manually The fields to sync can be added or modified manually. For list override precedence and other considerations, see LDAP Sync Lists.
Create sync list from template

This option displays an additional field (LDAP Sync List Template). Choose a sync list from a predefined configuration template (CFT).

VOSS Automate provides default Sync List CFTs for the following:

  • Microsoft AD servers
  • Open LDAP servers

These CFTs contain LDAP attributes that are typically required to be synced with LDAP. Once you've applied the template, or if a template is not used, a sync list is visible and configurable directly on a saved LDAP server Sync List tab. See LDAP Sync Lists.

Related Topics

[1]For details around authentication scope, see User Login Options by Authentication Method and Server Authentication Scope.

Ldap Sync List Microsoft Active Directory Ldap Sync List Open Ldap

The table describes two purposes of a LDAP server integration with VOSS Automate:

LDAP sync and authentication Sync users from LDAP into VOSS Automate and use LDAP to authenticate users.
Standalone (LDAP authentication only) LDAP authenticates users in VOSS Automate (locally added users, or users synced from CUCM).

Note

LDAP Authentication

  1. The user provides their credentials at the VOSS Automate Login page.
  2. An authentication request is sent to the appropriate LDAP server(s), based on the user's authentication setup.
Default authentication setup
  • The username and password must match the username and password in the LDAP server (based on the LDAP field chosen for username).
  • Once successfully authenticated, the LDAP username is mapped to the VOSS Automate user to determine access, role, and so on.
Alternative authentication setup VOSS Automate allows an authentication setup where non-matching usernames may be mapped. This is useful where the username in VOSS Automate and the UC apps is different to the username in LDAP.

When using LDAP Authentication, the password rules of the VOSS Automate credential policy do not apply because the password is managed in the directory. Other credential policy rules are applied (such as session length), as these are managed in VOSS Automate.

Top Down and Bottom Up LDAP Sync Scenarios

LDAP user synchronization is available for Active Directory (AD) and OpenLDAP.

The table describes the two supported LDAP user sync scenarios:

Top-Down

Users are synced directly from the LDAP directory.

User data is sourced from one or more LDAP directories.

This setup defines how users are matched to be pulled in (for example, OU definition, LDAP filter, field filters, etc). It also provides the best scenario for the flow-through provisioning functionality.

Bottom-Up Users are synced indirectly from the LDAP directory, that is, where applications are integrated and syncing the users from the LDAP directory. For example, the system syncs via the CUCM, which is syncing to LDAP.

Note

In a top-down or bottom-up LDAP sync, a system configuration template sets the CUCM (LDAP) user's identity field (userIdentity) to the user principal name (UPN), userPrincipalName, if it exists; otherwise it uses the email address. This is useful where a user has a different email address to the UPN and needs to be correctly mapped following a LDAP sync and then the user is moved to a site.

LDAP Sync Lists

The table describes, for LDAP sync, LDAP sync lists, arranged in override order:

  1. Always synced list
Fields required to list LDAP Users on the GUI
  1. Drop Field List
Fields never imported from LDAP
  1. Data Sync Blacklist
A change in these fields does not trigger an update
  1. Model Type List
From the LDAP data sync. Set up and used in scheduled syncs
  1. LDAP Sync List (manual or from CFT)
Fields to be imported from LDAP as set up with the LDAP server

Always Synced List

The table describes fields that are always synced :

Note

These field values are required to list LDAP users on the GUI.

Column Name Field Name
Cn cn
Uid uid
Description description
Mail mail
User Principal Name userPrincipalName
SAM Account Name sAMAccountName

Drop Field List

If any items in the LDAP Sync List are contained in the DROP_FIELD_LIST below, these are not synced, since they are not considered during any sync. This list is fixed in the system and is not configurable:

DROP_FIELD_LIST=[
    'photo',
    'jpegPhoto',
    'audio',
    'thumbnailLogo',
    'thumbnailPhoto',
    'userCertificate',
    'logonCount',
    'adminCount',
    'lastLogonTimestamp',
    'whenCreated',
    'uSNCreated',
    'badPasswordTime',
    'pwdLastSet',
    'lastLogon',
    'whenChanged',
    'badPwdCount',
    'accountExpires',
    'uSNChanged',
    'lastLogoff',
    'dSCorePropagationData'
    ]

Data Sync Blacklist

Refer to Data Sync Blacklist in the Advanced Configuration Guide.

An LDAP Sync List will not override any of the Data Sync Blacklist attributes - default or custom - in data/Settings. In other words, if a field is in both the LDAP Sync List and the Data Sync Blacklist and the field value is different on LDAP server, then when syncing the LDAP server, the LDAP sync will not trigger any update for the LDAP entity during sync.

Model Type List

Given an existing LDAP server with a LDAP Sync List configured, when executing a data sync against the LDAP server, the existing Model Type List functionality from the LDAP data sync is maintained and takes precedence over the LDAP Sync List.

See:

LDAP Sync List

A new LDAP server or one that existed in the system prior to release 19.3.4 allows you to choose the LDAP Sync List Option:

The configuration template (CFT) can also be created and applied to a server. See LDAP Sync List Configuration Templates.

Important

Besides the sync override order indicated above, manual or template sync lists are bound by the following considerations:

For details on the LDAP Sync List on the LDAP server, see: Set up an LDAP Server.

Note

By default LDAP user details shown on the GUI display all device/ldap/user fields. It is recommended that you create a FDP for device/ldap/user to contain only the fields from your LDAP Sync List in order to view LDAP user details according to your configuration.

LDAP Sync List Configuration Templates

Administrators can clone the default sync list Configuration Templates (CFTs) to a hierarchy, and modify them for use during initial LDAP server setup. Modified CFTs are available at the hierarchy on the Sync List tab (from the LDAP Sync List Template drop-down).

Two default CFTs are provided. Both can be cloned:

The table describes the default CFT fields:

Ldap Sync List Microsoft Active Directory Ldap Sync List Open Ldap
Model Type: device/ldap/user Model Type: device/ldap/InetOrgPerson
sAMAccountName uid
mail mail
givenName givenName
sn sn
title title
department departmentNumber
displayName displayName
employeeNumber employeeNumber
employeeType employeeType
homePhone homePhone
ipPhone  
telephoneNumber telephoneNumber
mobile mobile
otherMailbox  
facsimileTelephoneNumber facsimileTelephoneNumber
l l
c  
streetAddress  
st street
postalCode postalCode
physicalDeliveryOfficeName physicalDeliveryOfficeName
manager manager
memberOf memberOf
objectClass objectClass
o o
ou ou

If new LDAP attribute names are added to the cloned CFT and modified on the GUI, type the names in. Initially, all attribute names are imported. The full attribute list and naming is available on the GUI Sync List tab from the default sync list for the server. See: Set up an LDAP Server.

Enter a descriptive name for the cloned CFT, which will then show in the hierarchy on the drop-down list of Sync List CFTs that are available when you modify an LDAP server or create a new server.

Multiple LDAP Organization Units Per Hierarchy

Large corporations and institutions with multiple domains or agencies may require more than one LDAP Organizational Unit (OU) to be configured at a hierarchy.

VOSS Automate allows for multiple LDAP OUs at a hierarchy by providing for a unique combination of the following LDAP server properties at the hierarchy:

Multiple search base DNs can therefore be configured at the same hierarchy for different organizations within the same company, so that administrators and self-service users can successfully authenticate. For example:

LDAP server setup:

IP Port Search base DN Hierarchy
1.2.3.4 389 ou=SharedOUA,dc=voss-solutions,dc=com Provider.Customer
1.2.3.4 389 ou=SharedOUB,dc=voss-solutions,dc=com Provider.Customer

Users:

Model Details: relation/HcsLdapServerREL

Title Description Details
Description The description of the LDAP server.
  • Field Name: description
  • Type: String
Host Name * The host name of the LDAP server.
  • Field Name: host
  • Type: String
Port The port number for LDAP traffic. The ports a fully configurable. Default: 389
  • Field Name: port
  • Type: String
  • Default: 389
User DN * The User Distinguished Name (DN) on the LDAP server.
  • Field Name: user_dn
  • Type: String
Admin Password * The administrator Password associated with the Username to connect to the LDAP server.
  • Field Name: password
  • Type: String
  • Is Password: True
  • Store Encrypted: True
Search Base DN * The base Distinguished Name for LDAP search.
  • Field Name: search_base_dn
  • Type: String
Search Filter A RFC 2254 conformant string that is used to restrict the results retuned by list operations on the LDAP server.
  • Field Name: search_filter
  • Type: String
Enable Write Operations Enables Add, Modify and Delete operations for users on the the LDAP server.
  • Field Name: allow_write_back
  • Type: Boolean
Server Type * The selected LDAP server type. The type can be Open LDAP or Microsoft Active Directory.
  • Field Name: server_type
  • Type: String
  • Choices: ["Microsoft Active Directory", "Open LDAP"]
Authentication Attribute
  • Field Name: auth_attribute
  • Type: Object
Model Type The model type to be used for authentication. The defualt choices are device/ldap/inetOrgPerson, device/ldap/person, and device/ldap/user. If the default choices do not fit the deployment scenario, custom values are allowed for this field.
  • Field Name: auth_attribute.model_type
  • Type: String
  • Choices: ["device/ldap/inetOrgPerson", "device/ldap/person", "device/ldap/user"]
Login Attribute Name The selected attribute of the LDAP user login. When Server Type is Microsoft Active Directory, the following default choices are populated employeeNumber, mail, sAMAccountName, telephoneNumber, userPrincipalName. When Server Type is Open LDAP, the following choices are populated employeeNumber, mail, telephoneNumber, uid. If the default choices do not fit the deployment, custom values are allowed for this field.
  • Field Name: auth_attribute.name
  • Type: String
  • Choices: [""]
Connection Security
  • Field Name: connection_security
  • Type: Object
Encryption Method The encryption mechanism to be used. This can be No Encryption, Use SSL Encryption (ldaps://), or Use StartTLS Extension Default: no_encryption
  • Field Name: connection_security.encryption_method
  • Type: String
  • Default: no_encryption
  • Choices: ["No Encryption", "Use SSL Encryption (ldaps://)", "Use StartTLS Extension"]
Certificate Validation Specifies behavior for certificate validation eg. Trust all certificates (no validation).
  • Field Name: certificate_validation
  • Type: Object
Trust All When enabled, the system will not check if the server's certificate is trusted.
  • Field Name: connection_security.certificate_validation.trust_all
  • Type: Boolean
Server Root Certificate When trust_all is False, the LDAP server's SSL certificate will be validated against this root certificate. If this certificate is not specified, validation will done against any existing trusted CA certificates. Use this option for custom root certificates in (.pem format)
  • Field Name: connection_security.certificate_validation.server_root_certificate
  • Type: String
  • Target: data/File
  • Format: uri
Advanced Configuration Advanced configuration settings.
  • Field Name: advanced_configuration
  • Type: Object
Primary Key Attribute This field allows an administrator to specify the primary key attribute that will be used to retrieve records from the ldap server.
  • Field Name: advanced_configuration.custom_pk
  • Type: String
Data Sync List LDAP attributes to be included during data sync.
  • Field Name: data_sync_list.[n]
  • Type: Array
Model Type Model type whose attributes should be included (eg device/ldap/user)
  • Field Name: data_sync_list.[n].model_type
  • Type: String
  • Format: uri
Attributes Attributes to be included for model type.
  • Field Name: attributes.[n]
  • Type: Array
Name
  • Field Name: data_sync_list.[n].attributes.[n].name
  • Type: String
Authentication settings Authentication settings.
  • Field Name: authentication
  • Type: Object
Authentication Scope Hierarchical scope this server applies to Default: Down
  • Field Name: authentication.scope
  • Type: String
  • Default: Down
  • Choices: ["Current hierarchy level only", "Current hierarchy level and below"]
User Sync Type Type of users that can authenticate against this server. Default: Synced_only
  • Field Name: authentication.user_type
  • Type: String
  • Default: Synced_only
  • Choices: ["LDAP synced users only", "All users"]
Authentication Enabled Authentication Enabled Default: True
  • Field Name: authentication.auth_enabled
  • Type: Boolean
  • Default: True
Ext
  • Field Name: ext
  • Type: Object
LDAP Server The assoicated LDAP server host.
  • Field Name: ext.host
  • Type: String
  • MaxLength: 1024
Port The assoicated LDAP server port.
  • Field Name: ext.port
  • Type: String
  • MaxLength: 1024
Search_Base_Dn The assoicated LDAP server Search Base Dn.
  • Field Name: ext.search_base_dn
  • Type: String
  • MaxLength: 1024
Unique ID This is an auto-generated internal identifier that does not need to be explicitly initialized. Default: Auto generated
  • Field Name: ext.uniqueId
  • Type: String
  • Default: Auto generated
  • MaxLength: 1024
AD Sync Mode * The mode in which users will be synced from the LDAP server. Currently, only Direct sync from the LDAP server is supported.
  • Field Name: ext.adSyncMode
  • Type: String
  • MaxLength: 1024
  • Choices: ["Direct"]
Organization ID The organization ID assigned to the tenant in the Common Identity Store. This is not used currently and does not need to be initialized.
  • Field Name: ext.organizationID
  • Type: String
  • MaxLength: 1024
CUCM LDAP Directory Name The name of the LDAP Directory configured on CUCM that we want this user to be considered synced from. The LDAP Directory must be configured on CUCM already. This is an optional parameter but the following should be considered: For top down sync scenario, Users will be added to CUCM as Local Users if this parameter is not set. For bottom up sync scenario, Users will not be able to log on to CUCDM if this parameter is not set.
  • Field Name: ext.cucmLdapDirectoryName
  • Type: String
  • MaxLength: 1024
Ldapsynclist
  • Field Name: ldapsynclist
  • Type: Object
Note Note about certain fields that will always get synced.
  • Field Name: ldapsynclist.note
  • Type: String
LDAP Sync List Option LDAP Sync List Option. Please Note: LDAP server sync will allways sync in the following attributes, regardless of whether they are explicitly set in the sync list or not. (sAMAccountName, userPrincipalName, mail, cn, uid, description) Default: none
  • Field Name: ldapsynclist.ldap_sync_list_option
  • Type: String
  • Default: none
  • Choices: ["No sync list - all fields will be synced", "Create sync list manually", "Create sync list from template"]
LDAP Sync List Template LDAP Sync List Template. A template contains a predefined list of fields that is normally used when syncing in LDAP servers.
  • Field Name: ldapsynclist.ldap_sync_list_template
  • Type: String
LDAP Sync List Template Flag Flag to see if we need to show the LDAP Sync List Template field
  • Field Name: ldapsynclist.ldap_sync_list_template_flag
  • Type: Boolean