目录
Please enable Javascript to view the contents

Jenkins 集成 LDAP 认证

 ·  ☕ 2 分钟

重要

Jenkins 集成 LDAP 后本地认证失效。保存配置前务必测试 LDAP 连接,否则配置错误会导致无法登录。解决:备份 config.xml,或在 <securityRealm> 中恢复为本地认证。

1. LDAP 准备

创建测试组和账户:jenkins-admin 组添加 admin,jenkins-manager 组添加 operator。

2. 安装 LDAP 插件

方式操作
在线安装Jenkins → 系统管理 → 插件管理 → 搜索 LDAP → 安装
离线安装从 官网 下载 .hpi,上传安装

3. 配置 LDAP 认证

路径:系统管理 → 全局安全配置 → 访问控制选择 LDAP。

关键配置项:

配置项说明
ServerLDAP 服务器地址,如 ldap://ldap.example.com:389
root DN搜索根节点,缩小搜索范围提高性能
User search base相对于 root DN 的搜索范围,如 ou=People
User search filter用户名对应 LDAP 属性,uid={0}({0} 替换为用户输入的用户名)
Group search filter限制角色组搜索范围
Manager DNLDAP 不允许匿名访问时的认证 DN
Manager Password上面对应密码
Display Name LDAP attribute显示名称,一般 uid
Email Address LDAP attribute邮箱属性,一般 mail

配置完成后不要立刻保存,点击 Test LDAP Settings 验证配置正确性。

4. 配置分组授权

全局安全设置 → 授权策略 → 安全矩阵,为 LDAP 组分配 Jenkins 权限。

5. 误配置恢复

若 LDAP 配置错误导致无法登录,修改 $JENKINS_HOME/config.xml,将 <securityRealm> 替换为本地认证:

1
2
3
4
<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
  <disableSignup>false</disableSignup>
  <enableCaptcha>false</enableCaptcha>
</securityRealm>

重启 Jenkins 后使用本地账户登录。

参考

分享

Hex
作者
Hex
CloudNative Developer