GitLab AD/LDAP配置说明
目录
1. AD/LDAP集成
1.1 配置
修改 /etc/gitlab/gitlab.rb,内容如下:
|
|
修改完成后运行gitlab-ctl reconfigure命令。
1.2 说明
- 对于新用户,需要在GitLab中登录一次才会创建GitLab账号,GitLab不会自动创建LDAP新增的用户。此外可设置block_auto_create_user将通过LDAP新创建的GitLab账号设置为block状态,需GitLab管理员批准后才能正常使用,防止无效用户占用许可证席位。具体参考:https://docs.gitlab.com/ee/administration/auth/ldap/#basic-configuration-settings
- 对于GitLab已存在的用户,定时从LDAP中更新用户信息。定时策略可配置,具体参考:https://docs.gitlab.com/ee/administration/auth/ldap/ldap_synchronization.html#adjust-ldap-user-sync-schedule
- 对于LDAP删除的用户,GitLab也会同步删除用户,具体参考:https://docs.gitlab.com/ee/administration/auth/ldap/#users-deleted-from-ldap
1.3 关闭GitLab本地账号注册与登录
-
关闭GitLab注册

-
关闭GitLab登录(关闭后root账号也无法登陆)

2. LDAP组同步
该功能需GitLab企业版。
2.1 功能
-
可以将AD/LDAP中的用户组同步到GitLab的群组,并分配角色权限。

-
当AD/LDAP中的用户组有新用户加入后,该用户可直接登录GitLab,且在上述GitLab的群组中享有权限。

-
当AD/LDAP中的用户组有人员离开,该用户会自动从上述GitLab的群组中移除
-
举例
- LDAP用户组A有用户张三,将用户组A同步到GitLab群组X并分配Developer角色,则用户张三会自动同步到群组X,且角色为Developer。
- LDAP用户组A新增了用户李四,李四没有登陆GitLab,则李四在GitLab及群组X中不存在。当李四登陆GitLab,自动创建李四的GitLab账号,并将李四同步到群组X,且角色为Developer。



