如何阻止GitLab在Active Directory用户被封禁后自动封禁对应用户
如何配置GitLab避免AD用户封禁时自动同步封禁GitLab账号
当GitLab与Active Directory(AD)集成时,默认会同步AD用户的禁用状态,自动封禁对应GitLab账号。要关闭这个行为,可按以下两种方式配置:
通过GitLab管理界面配置(GitLab 13.0及以上版本适用)
- 用管理员账号登录GitLab,进入管理员区域
- 导航到设置 > 认证页面
- 找到已配置的AD/LDAP条目,点击编辑
- 在LDAP同步板块,勾选禁用用户自动停用选项
- 保存更改后,GitLab就不会再跟随AD的用户封禁状态自动停用对应账号
通过配置文件修改(自托管GitLab实例适用)
- 登录GitLab服务器,编辑配置文件
/etc/gitlab/gitlab.rb - 找到LDAP服务器的配置块(通常以
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'开头) - 在目标AD服务器的配置段落中,添加或修改参数
auto_deactivate_users: false,示例配置片段如下:
main: label: 'AD认证' host: 'ad.your-domain.com' port: 389 uid: 'sAMAccountName' bind_dn: 'CN=GitLab服务账号,OU=服务账号,DC=your-domain,DC=com' password: '绑定账号密码' encryption: 'plain' # 可选start_tls或simple_tls active_directory: true auto_deactivate_users: false # 关键参数,关闭自动同步封禁
- 修改完成后,执行命令
sudo gitlab-ctl reconfigure使配置生效
额外注意事项
- 如果之前已有用户因AD封禁被GitLab自动停用,需手动进入管理员区域 > 用户,将这些用户的状态从已封禁改为活跃
- 关闭自动同步后,GitLab用户的封禁状态需手动管理,不会再从AD同步该状态
内容的提问来源于stack exchange,提问作者AwsmOfficial
相关产品推荐
相关产品推荐

