Chat now with support
Chat with Support

One Identity Safeguard for Privileged Sessions 6.2.0 - Administration Guide

Preface Introduction The concepts of One Identity Safeguard for Privileged Sessions (SPS) The Welcome Wizard and the first login Basic settings
Supported web browsers and operating systems The structure of the web interface Network settings Configuring date and time System logging, SNMP and e-mail alerts Configuring system monitoring on SPS Data and configuration backups Archiving and cleanup Forwarding data to third-party systems Joining to One Identity Starling
User management and access control Managing One Identity Safeguard for Privileged Sessions (SPS)
Controlling One Identity Safeguard for Privileged Sessions (SPS): reboot, shutdown Managing Safeguard for Privileged Sessions (SPS) clusters Managing a High Availability One Identity Safeguard for Privileged Sessions (SPS) cluster Upgrading One Identity Safeguard for Privileged Sessions (SPS) Managing the One Identity Safeguard for Privileged Sessions (SPS) license Accessing the One Identity Safeguard for Privileged Sessions (SPS) console Sealed mode Out-of-band management of One Identity Safeguard for Privileged Sessions (SPS) Managing the certificates used on One Identity Safeguard for Privileged Sessions (SPS)
General connection settings HTTP-specific settings ICA-specific settings RDP-specific settings SSH-specific settings Telnet-specific settings VMware Horizon View connections VNC-specific settings Indexing audit trails Using the Search interface Advanced authentication and authorization techniques Reports The One Identity Safeguard for Privileged Sessions (SPS) RPC API The One Identity Safeguard for Privileged Sessions (SPS) REST API One Identity Safeguard for Privileged Sessions (SPS) scenarios Troubleshooting One Identity Safeguard for Privileged Sessions (SPS) Using SPS with SPP Configuring external devices Using SCP with agent-forwarding Security checklist for configuring One Identity Safeguard for Privileged Sessions (SPS) Jumplists for in-product help LDAP user and group resolution in SPS

LDAP user and group resolution in SPS

Overview

Access control in One Identity Safeguard for Privileged Sessions (SPS) is based on groups. Whenever a user needs to access a protected resource, like navigating to a configuration page on the SPS web interface, or opening a channel in a connection, SPS checks the access control list associated with the resource in question.

The access control lists grant access to groups. Therefore, SPS needs to determine which groups the user is a member of to evaluate the access rules.

When you configure SPS to use an LDAP backend, SPS will:

  1. Identify the user. For more information, see User identification below.

  2. Determine the relevant groups the user is a member of. For more information, see Group membership resolution below.

User identification

SPS works with plain usernames, for example, administrator. This must be unambiguously resolved to an LDAP user object in order to determine the user’s groups. If a user identification returns multiple results, SPS treats this as an error, and access to the user in question is denied.

Only the user object returned in this phase is used for group membership checks, and not the original plain username.

User resolution depends on the type of the backend (POSIX or Active Directory).

For more information, see the backend-specific sections below.

Group membership resolution

SPS works with plain group names, for example, superusers. For group membership checks, SPS looks up a relevant group object in LDAP and checks if the user object returned during user identification is a member of that group. Since some of the group object’s attributes are always used for group membership checks, the group object must also exist in LDAP.

Group membership resolution depends on the LDAP backend type.

For more information, see the backend-specific sections below.

Common to all backends

All backends have configurable parameters relevant for user identification and group membership:

  • bind_dn and bind_password: Bind DN and Bind password are used for user identification and group membership check during authentication to the LDAP database. If you leave it empty, One Identity Safeguard for Privileged Sessions (SPS) will try to bind anonymously.

  • user_base_dn: User Base DN is where SPS searches for users.

  • group_base_dn: Group Base DN is where SPS searches for groups. Only groups under this base are considered for membership.

  • memberof_check: the Enable checking for group DNs in user objects setting allows checking a configurable attribute in the user object. This attribute contains a list of group DNs the user is additionally a member of. This user attribute is usually memberOf. For more information, see the backend-specific sections below.

  • user_dn_in_groups: Check the user DN in these groups is a list of additional group object classes and their respective attributes where SPS will look for member user DNs. For more information, see the backend-specific sections below.

All comparisons and searches are done by SPS in a way that plain user and group names are matched with attribute values by the LDAP server. As a result, user and group names are case insensitive if and only if the matching rule for the attribute in question is case insensitive in the LDAP database.

POSIX LDAP backend

In addition to the common parameters, the POSIX backend has the following configurable parameters:

  • username_attribute: Username (user ID) attribute name is the name of the attribute in the user object, which contains the user’s plain username.

  • membership_check: Enable POSIX group membership check enables POSIX primary and supplementary group membership checking. When enabled, it has the following configurable parameter:

    • member_uid_attribute: the optional POSIX group membership attribute name is the name of the attribute in a posixGroup group object, which lists the plain usernames that are members of the group. These groups are usually referred to as supplementary groups of the referred user.

User identification in POSIX

To determine the user entry for a given plain username, One Identity Safeguard for Privileged Sessions (SPS) performs a search under user_base_dn for objects having the username_attribute equal to the plain username of the user. The objectClass of the user object is not restricted.

The user object returned here is used for group membership checks.

Group membership resolution in POSIX

For all group membership checks, only the LDAP user object returned during user identification phase is used.

The plain group name is always compared to the cn attribute of the group object.

A user is treated as a member of a group given by its plain group name if the plain group name matches the cn attribute of the group object, and any of the following is true:

  • The group is the user’s primary group. That is, the group is a posixGroup, and the user’s gidNumber attribute is equal to the group’s gidNumber attribute.

    This check is performed only when the membership_check option is enabled for POSIX.

    Note

    It is OK for the user to have no gidNumber attribute, in which case this check will be skipped.

  • The group lists the user’s short username. That is, the group is a posixGroup, and it’s member_uid_attribute contains the short username from the user object.

    This check is performed only when the membership_check option is enabled, and the member_uid_attribute is configured.

    Note

    For the purpose of this check, the user’s short username is retrieved from the user object’s username_attribute. Currently, this attribute should only contain a single username. A warning will appear in the logs if this is not the case, and the first value of the attribute will be used as returned by the server. This is a known limitation.

  • The group lists the user’s dn in any of the additional group objects configured in user_dn_in_groups.

    For example, if a row is added with objectClass set to groupOfNames and attribute set to member, SPS will treat the user as a member of all groups where the group is a groupOfNames, and the group’s member attribute contains the user’s dn.

  • The user lists the group’s dn. That is, the user’s memberof_user_attribute contains the dn of the group, and the objectClass of the referred group is memberof_group_objectclass.

    This check is performed only when the memberof_check option is enabled for POSIX.

    Note

    SPS compares the dn stored in the memberof_user_attribute to the dn of the group object itself in a strict stringwise manner. Therefore, the user attribute must contain the group DN exactly as it would be returned by the LDAP server. No case or accent differences are allowed.

Related Documents