5.4. LDAP 域
LDAP 域连接到 LDAP 服务器(如 OpenLDAP、Red Hat Directory Server、Apache Directory Server 或 Microsoft Active Directory)以验证用户身份并获取成员资格信息。
LDAP 服务器可以有不同的条目布局,具体取决于服务器和部署的类型。此文档超出了本文档的范围,提供了有关所有可能的配置的示例。
LDAP 连接主体必须具有必要的权限才能执行 LDAP 查询和访问特定属性。
作为使用 direct-verification
属性验证用户凭据的替代选择,您可以指定一个 LDAP 属性来验证密码的 user-password-mapper
元素。
您不能使用通过 直接验证属性执行哈希的端点
身份验证机制。
由于 Active Directory 没有公开 密码
属性,所以只能使用 direct-verification
属性,而不是 user-password-mapper
元素。因此,您必须将 BASIC
身份验证机制与 REST 端点搭配使用,PL AIN
与 Hot Rod 端点与 Active Directory 服务器集成。更为安全的替代方案是使用 Kerberos,它允许 SPNEGO
、GSSAPI
和 GS2-KRB5
身份验证机制。
rdn-identifier
属性指定 LDAP 属性,它根据提供的标识符查找用户条目,后者通常是用户名;例如,uid
或 sAMAccountName
属性。将 search-recursive="true"
添加到配置中,以递归搜索目录。默认情况下,搜索用户条目使用 (rdn_identifier={0})
过滤器。使用 filter-name
属性指定不同的过滤器。
The `attribute-mapping` element retrieves all the groups of which the user is a member. There are typically two ways in which membership information is stored:
The `attribute-mapping` element retrieves all the groups of which the user is a member. There are typically two ways in which membership information is stored:
-
在
member
属性中通常具有类groupOfNames
的组条目下。在这种情况下,您可以使用如上例配置中的属性过滤器。此过滤器搜索与提供的过滤器匹配的条目,该过滤器查找带有与用户 DN 相等的member
属性的组。然后,过滤器提取组条目的 CN (从
指定),并将其添加到用户的Roles
中。 在
memberOf
属性中的用户条目中。在这种情况下,您应该使用属性引用,如下所示:<attribute-reference reference="memberOf" from="cn" to="Roles" />
此引用从用户的条目获取所有
memberOf
属性,按照从
提取 CN,并将它们添加到用户的Roles
中。
LDAP 域配置
XML
JSON
YAML
5.4.1. LDAP 域主体重新编写 复制链接链接已复制到粘贴板!
SASL 验证机制(如 GSSAPI
、GS2-KRB5
和 Negotiate
)包括需要 清理 的用户名,然后才能使用它来搜索 LDAP 目录。
XML
JSON
YAML