Jenkins中的Ldap组配置

时间:2019-07-19 18:24:55

标签: jenkins ldap

我最近安装了Jenkins和Ldap插件。我可以在Jenkins中设置用户身份验证,但现在我也想设置组。但是,我组织的Ldap有点棘手,而且从组的角度来看我无法正确设置它。这是我公司的LDAP树结构:

LDAP Tree Structure

我正在使用Java 1.8,Jenkins LDAP插件1.20,Jenkins 2.176.2

这是我在LDAP字段中尝试的操作: LDAP Settings

1 个答案:

答案 0 :(得分:1)

尝试此配置:

root DN             : dc=domain,dc=com       # root base dn
User search base    : ou=People              # relative to the root search base
Group search base   : ou=Groups              # relative to the root search base
User search filter  : uid={0}
Group search filter : (& (cn={0}) (| (objectclass=groupOfNames) (objectclass=groupOfUniqueNames) (objectclass=posixGroup)))
Group membership    : (| (member={0}) (uniqueMember={0}) (memberUid={1}))
  • 上面的Group search filter是默认值,如果不确定哪个objectClass定义了组,请按原样使用它,否则删除OR条件以缩小搜索范围,例如。 :(& (cn={0})(objectclass=groupOfNames))。用于管理组的最常见的对象类别是groupOfNames,它提供了member属性来处理成员资格。

  • 上面的Group membership也被设置为默认值(在“搜索包含用户的组”模式下)。现在,例如,如果您的组具有objectClass“ groupOfNames”,则只需要过滤器member={0}。另一个objectClass可能依赖于另一个成员资格属性(例如“ groupOfUniqueNames”的“ uniqueMember”)。也就是说,如果您的后端提供了memberOf属性,则您可能希望切换到另一种模式“为组列表分析用户属性” 并设置Group membership attribute : memberOf(请参见{ {3}})。