马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
GitLab配置只允许特定LDAP组成员登录
1. 对LDAP中的用户进行分组
- 请在
Windows AD 或 Linux OpenLDAP 中,创建一个新组 gitlab 。将需要登录GitLab的用户添加到该组,其他不需要登录的用户,不要添加。
2. 修改GitLab配置文件
-
修改LDAP相关配置中的 user_filter 字段:
user_filter: '(&(objectClass=user)(memberOf=CN=gitlab,CN=users,DC=example,DC=com))'
-
建议同时修改 bind_dn 中的绑定用户为上述 gitlab 组中的成员。
-
配置示例参考:
external_url "https://hk.gitlab-devops.com/"
gitlab_rails['time_zone'] = "Asia/Shanghai"
gitlab_rails['ldap_enabled'] = true
gitlab_rails['prevent_ldap_sign_in'] = false
gitlab_rails['ldap_servers'] = {
'main' => {
'label' => 'AD',
'host' => 'ldap.jihulabs.cdneks.com',
'port' => 389,
'uid' => 'sAMAccountName',
'encryption' => 'plain',
'bind_dn' => 'cn=alex,cn=users,dc=example,dc=com',
'password' => 'xxxxx',
'timeout' => 10,
'active_directory' => true,
'allow_username_or_email_login' => true,
'block_auto_created_users' => false,
'base' => 'dc=example,dc=com',
'user_filter' => '(&(objectClass=user)(memberOf=CN=gitlab,CN=users,DC=example,DC=com))',
'attributes' => {
'username' => ['uid', 'userid', 'sAMAccountName'],
'email' => ['mail', 'email', 'userPrincipalName'],
'name' => 'cn',
'first_name' => 'givenName',
'last_name' => 'sn'
},
'lowercase_usernames' => false,
}
}
- LDAP配置检查,确认输出的LDAP用户清单是否符合预期。
gitlab-rake gitlab:ldap:check
3. 参考文档
|