LDAP 在 jenkins 上按 displayName 分组

LDAP groups by displayName on jenkins

提问人:Chirlo 提问时间:11/10/2023 更新时间:11/10/2023 访问量:23

问:

我正在使用 LDAP 连接到 AD 实例以进行 jenkins 用户身份验证,我想按 LDAP 组管理用户权限

“我的组搜索筛选器”设置为(& (objectclass=group)(displayName={0}))

“我的组成员身份筛选器”设置为(&(objectCategory=group)(member={0}))

这允许按 displayName 查找组并将它们添加到 Matrix 授权中,但权限不知何故无法正常工作。例如,如果向组授予管理员权限,并且用户是 的成员,则可以登录,但不会获得管理员权限。GuG

如果我改用组搜索过滤器,它可以完美地工作。但是:我的组织使用奇怪的序列号作为组的 CN,因此它的可读性大大降低。这就是为什么我想通过以下方式查找和管理组的原因。(& (objectclass=group)(cn={0}))displayName

Jenkins LDAP 插件文档说:

注意:如果您使用 LDAP 安全域连接到 Active Directory(而不是使用 Active Directory 插件的安全域),则需要将此过滤器更改为:

(& (cn={0}) (objectclass=group) )

但是,我希望我仍然可以使用 ,因为 jenkins 确实找到了这些组。displayName

这可以通过LDAP插件来实现吗?

Jenkins Active-Directory LDAP

评论

0赞 ixe013 11/10/2023
可能不相关,但为了避免过滤器出现问题,我建议从中删除空格。
0赞 ixe013 11/10/2023
为什么你没有在两个搜索中使用?这个想法是让它们对称,但这也是Microsoft的建议objectCategory
1赞 Chirlo 11/13/2023
@ixe013这是根据 AD 的 LDAP 插件文档。
0赞 ixe013 11/13/2023
这是一个艰难的问题。我去看了代码,很难理解发生了什么。我找不到的是组的存储方式(无论它们如何显示)。最佳做法是使用其属性存储它们,并使用用户的属性在该组中验证成员身份。这样做会支持您的用例,所以某处一定有故障......dndn

答: 暂无答案