多个 OU 的 LDAP 身份验证配置

Posted

技术标签:

【中文标题】多个 OU 的 LDAP 身份验证配置【英文标题】:LDAP authentication configuration for multiple OU 【发布时间】:2016-03-15 05:34:47 【问题描述】:

我正在尝试让我们所有的组织用户使用他们的 LDAP 域凭据登录到 Jenkins。 使用以下选项,只有 1 个特定 OU 下的用户才能登录。我想提供多个 OU 进行搜索。

我们的 Active Directory 结构如下:

ca -> America -> Users -> 实际用户 ID

ca -> 印度 -> 用户 -> 实际用户 ID

目前只有属于 America OU 的用户才能成功登录应用程序。我希望美国和印度 OU 的用户都能成功登录。 我认为将用户搜索库和组搜索库都更改为 'OU=Users,OU=America|OU=India' 会起作用。但这对每个人来说都失败了。我尝试替换'|'和 ','。但这并没有帮助。 请提供建议或正确的使用选项。这是我们 Jenkins 实现的障碍。

根 DN DC=ca,DC=com 允许空白根 DN 未检查 用户搜索库 OU=用户,OU=美国 用户搜索过滤器 sAMAccountName=0 群组搜索库 OU=用户,OU=美国 组搜索过滤器 sAMAccountName=0 组成员 搜索包含用户的组(选定选项) 组成员过滤器 经理 DN CN=admin,OU=Role-Based,OU=America,DC=ca,DC=com 显示名称 LDAP 属性 sAMAccountName 电子邮件地址 LDAP 属性 邮件 环境变量 com.sun.jndi.ldap.connect.timeout = 60000 com.sun.jndi.ldap.read.timeout = 60000

【问题讨论】:

你终于找到解决这个问题的方法了吗?谢谢。 【参考方案1】:

您似乎没有使用 Active Directory 插件 (https://wiki.jenkins-ci.org/display/JENKINS/Active+Directory+plugin),因为您正在配置 DN。尝试安装插件。那么,

    转到 Jenkins -> 配置全局安全 -> 安全领域 选择活动目录。 如果您的 Jenkins 计算机位于您要对其进行身份验证的同一域中,请转到下一步。否则,您必须指定域。 在授权中,添加两个 OU。 保存,然后尝试登录。

【讨论】:

不要对非代码文本使用代码格式。

以上是关于多个 OU 的 LDAP 身份验证配置的主要内容,如果未能解决你的问题,请参考以下文章

具有多用户 OU 和多访问 CN 的 Spring LDAP 身份验证

Spring Security - 在Spring Boot中针对LDAP使用Active Directory对用户进行身份验证

LDAP:如何使用连接详细信息验证用户身份

LoginDN 的 LDAP 身份验证错误 - CN=Administrator,OU=Users,DC=gms,DC=admin,DC=com

Spring Security:针对多个 LDAP 服务器和基于 DAO 的身份验证进行身份验证

Apache Shiro LDAP 配置(两步验证)