前言
如果你的团队有用微软的AD目录服务或OpenLDAP等服务进行统一的用户管理和身份认证的话,那么让GitLab支持ldap账号登录将是很好的体验。
版本信息:GitLab v13.12.15
一、创建Ldap用户
需要准备一个层级较高的特殊ldap用户,比如想要所有一级部门及下属用户都支持ldap登录,则该特殊用户层级需在一级部门之上。
二、修改GitLab配置
1、找到gitlab.rb配置文件,它通常在/etc/gitlab目录下。
2、添加以下配置:
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
main:
label: 'LDAP'
#ldap连接地址
host: 'openldap.xxxx.cn'
port: 389
uid: 'uid'
#ldap用户
bind_dn: 'CN=admin,DC=xxx,DC=cn'
password: 'xxxxxx'
encryption: 'plain'
verify_certificates: true
active_directory: false
allow_username_or_email_login: true
block_auto_created_users: false
base: 'DC=xxx,DC=cn'
EOS
三、重启GitLab
gitlab-ctl restart
四、测试
访问GitLab登录页,可以发现登录框出现LDAP和Standard页签,在LDAP页签下用ldap账号密码登录,在Standard页签下则用原来的账号密码登录。