You can use the LDAP policy to set the details of the LDAP server you wish to use to:

  • authenticate gateway users (available in SSH and Telnet as Authentication Policy)

  • query gateway groups (available for RDP, Telnet, SSH, and ICA)

  • query remote groups (available for RDP, Telnet, SSH, ICA, and HTTP)

NOTE: This feature is not available for Virtual Network Computing (VNC) connections.

Prerequisites

Make sure that the response timeout of the LDAP/Active Directory server is at least 120 seconds.

NOTE:
  • In RDP (including RDG) connections, you can use the LDAP policy for group membership check only, you cannot use it as the authentication backend. However, you can use a trusted AD domain for authentication and LDAP for group membership check.

    In this case, LDAP will only use the username without the domain name to verify the group membership.

  • One Identity Safeguard for Privileged Sessions (SPS) treats user and group names in a case insensitive manner if the matching rule for the attribute in question is case insensitive in the LDAP database.

To configure an LDAP policy for a connection

  1. Navigate to Policies > LDAP Servers and click to create a new LDAP policy.

    Figure 149: Policies > LDAP Servers — Configuring LDAP Server policies

  2. Enter a name for the policy (for example ldapservers).

  3. Enter the IP address or hostname and port of the LDAP server into the Server Address field. If you want to encrypt the communication between SPS and the LDAP server, in case of TLS, enter 636 as the port number, or in case of STARTTLS, enter 389 as the port number.

    Use an IPv4 address.

    To add multiple servers, click and enter the address of the next server. If a server is unreachable, SPS will try to connect to the next server in the list in failover fashion.

    Caution:

    If you will use a TLS-encrypted with certificate verification to connect to the LDAP server, use the full domain name (for example ldap.example.com) in the Server Address field, otherwise the certificate verification might fail. The name of the LDAP server must appear in the Common Name of the certificate.

  4. Select the type of your LDAP server in the Type field. Select:

    • Active Directory to connect to Microsoft Active Directory servers.

      You can enable nested groups. Select Enable AD group membership check, then Enable nested groups.

      Caution:

      Nested groups can slow down the query and cause the connection to timeout if the LDAP tree is very large. In this case, disable the Enable nested groups option.

      To also check group membership based on group DNs in a user attribute, select Enable checking for group DNs in user objects and enter the name of the user attribute, for example, memberOf in the User attribute of group DNs field.

      Caution:

      Using this option significantly slows down log on to the SPS web interface if you have too many groups.

      Only use this option if you have an LDAP schema where the user groups can only be determined from a user attribute that contains the group DNs.

      To check for group membership based on user DNs in group attributes, use the Check the user DN in these groups options.

      For more information, see Active Directory LDAP backend.

    • POSIX to connect to servers that use the POSIX LDAP scheme.

      If your LDAP server uses a custom POSIX LDAP scheme, you might need to set which LDAP attributes store the username, or the attributes that set group memberships. For example, if your LDAP scheme does not use the uid attribute to store the usernames, set the Username (user ID) attribute name option.

      In addition to the primary group membership checking, you can allow checking for supplementary group memberships by selecting the Enable POSIX group membership check and specifying the POSIX group membership attribute name field.

      To also check group membership based on group DNs in a user attribute, select Enable checking for group DNs in user objects and enter the name of the user attribute, for example, memberOf in the User attribute of group DNs field and objectClass, for example, groupOfNames in the Group objectClass field.

      Caution:

      Using this option significantly slows down log on to the SPS web interface if you have too many groups.

      Only use this option if you have an LDAP schema where the user groups can only be determined from a user attribute that contains the group DNs.

      To check for group membership based on user DNs in group attributes, use the Check the user DN in these groups options.

      For more information, see POSIX LDAP backend.

      For an overview about LDAP user and group resolution in SPS, see Overview.

  5. In the User Base DN field, enter the name of the DN to be used as the base of queries regarding users (for example: OU=People,DC=demodomain,DC=exampleinc).

    NOTE:

    You must fill in this field. It is OK to use the same value for User Base DN and Group Base DN.

    However, note that specifying a sufficiently narrow base for the LDAP subtrees where users and groups are stored can speed up LDAP operations.

  6. In the Group Base DN field, enter the name of the DN to be used as the base of queries regarding groups (for example: OU=Groups,DC=demodomain,DC=exampleinc).

    NOTE:

    You must fill in this field. It is OK to use the same value for User Base DN and Group Base DN.

    However, note that specifying a sufficiently narrow base for the LDAP subtrees where users and groups are stored can speed up LDAP operations.

  7. In the Bind DN field, enter the Distinguished Name that SPS should use to bind to the LDAP directory (for example: CN=Administrator,DC=demodomain,DC=exampleinc).

    NOTE:

    SPS accepts both pre-win2000-style and Win2003-style account names (User Principal Names), for example administrator@example.com is also accepted.

  8. To configure or change the password to use when binding to the LDAP server, click Change and enter the password. Click Update. Click Commit.

    NOTE:

    One Identity Safeguard for Privileged Sessions (SPS) accepts passwords that are not longer than 150 characters. The following special characters can be used: !"#$%&'()*+,-./:;<=>?@[\]^-`{|}

  1. Skip this step if you use passwords to authenticate the users.

    • If you use public-key authentication and receive the public key of the users from the LDAP database, enter the name of the LDAP attribute that stores the public keys of the users into the Publickey attribute name field. For details on using public-key authentication with the LDAP database, see Configuring public-key authentication on One Identity Safeguard for Privileged Sessions (SPS).

    • If you use X.509 certificate for authentication and receive the certificates of the users from the LDAP database, enter the name of the LDAP attribute that stores the certificates of the users into the Certificate attribute name field.

  2. Skip this step if you use passwords to authenticate the users.

    • If you use public-key authentication and want SPS to generate server-side encryption keys on-the-fly and store them in a separate attribute on the LDAP server, enter the name of the attribute into the Generated publickey attribute name field.

    • If you use certificate authentication and want SPS to generate server-side certificates on-the-fly and store them in a separate attribute on the LDAP server, enter the name of the attribute into the Generated certificate attribute name field.

  1. If you want to encrypt the communication between SPS and the LDAP server, in Encryption, select the TLS or the STARTTLS option and complete the following steps:

    Figure 150: Policies > LDAP Servers — Configuring encryption

    NOTE:

    TLS-encrypted connection to Microsoft Active Directory is supported only on Windows 2003 Server and newer platforms. Windows 2000 Server is not supported.

    • If you want SPS to verify the certificate of the server, select Only accept certificates issued by the specified CA certificate and click the icon in the CA X.509 certificate field. A pop-up window is displayed.

      Click Browse, select the certificate of the Certificate Authority (CA) that issued the certificate of the LDAP server, then click Upload. Alternatively, you can paste the certificate into the Copy-paste field and click Set.

      SPS will use this CA certificate to verify the certificate of the server, and reject the connections if the verification fails.

      Caution:

      According to recent cryptographic research, SHA-1 algorithm cannot be trusted as secure anymore, because signatures can be forged with reasonable costs. As a result, SHA-1 algorithm is not supported in SPS for X.509 certificate chains. Starting from SPS versions 6.0.4 and 6.5.0, certificates with SHA1-based signatures are no longer trusted for Active Directory or LDAP authentication, and future versions might refuse to validate SHA-1 signatures altogether.

      Note that Root CA certificates may still contain SHA-1 signatures, because the signature is not validated for self-signed certificates. It is expected that other software such as clients and servers connected to SPS might reject SHA-1 signatures in a similar fashion.

      Signing CAs in SPS generate certificates with SHA-256 since versions 4.3.4 and 5.0.0.

      Caution:

      If you will use a TLS-encrypted with certificate verification to connect to the LDAP server, use the full domain name (for example ldap.example.com) in the Server Address field, otherwise the certificate verification might fail. The name of the LDAP server must appear in the Common Name of the certificate.

    • If the LDAP server requires mutual authentication, that is, it expects a certificate from SPS, enable Authenticate as client. Generate and sign a certificate for SPS, then click in the Client X.509 certificate field to upload the certificate. After that, click in the Client key field and upload the private key corresponding to the certificate.

    One Identity recommends using 2048-bit RSA keys (or stronger).

  1. To commit the changes, click Commit.

  2. Click Test to test the connection.

    NOTE:

    Testing TLS and STARTTLS-encrypted connections is not supported.