我的Gitlab环境:
我的Gitlab LDAP配置:
gitlab_rails['ldap_enabled'] = true
##! **remember to close this block with 'EOS' below**
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
main: # 'main' is the GitLab 'provider ID' of this LDAP server
label: 'LDAP'
host: '192.168.21.7'
port: 389
uid: 'mail'
bind_dn: 'cn=MyUserName,ou=MIS,ou=SZ,dc=r-pac,dc=local'
password: 'MyPassword'
encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
verify_certificates: false
ca_file: ''
ssl_version: ''
active_directory: true
allow_username_or_email_login: false
block_auto_created_users: false
base: 'ou=MIS,ou=SZ,dc=r-pac,dc=local'
user_filter: ''
attributes:
username: ['uid', 'userid', 'sAMAccountName']
email: ['mail']
name: 'cn'
first_name: 'givenName'
last_name: 'sn'
## EE only
group_base: ''
admin_group: ''
sync_ssh_keys: false
EOS
我今天无法登录。它始终是可能的。登录时抛出异常:
无法通过Ldapmain对您进行身份验证,因为&#34;未定义的方法 `external email =&#39; for#&lt; user id:2 @ allen.cai&gt;你的意思是? 外部=&#34;
我执行命令检查 gitlab-rake gitlab:ldap:check
Checking LDAP ...
Server: ldapmain
LDAP authentication... Success
LDAP users with access to your GitLab server (only showing the first 100 results)
......
有人能帮帮我吗?谢谢:)
答案 0 :(得分:1)
问题的原因是我将Gitlab
版本从9.5.2
升级为10.0.3
。
感谢VonC提供了解决类似问题的链接:
https://forum.gitlab.com/t/cannot-login-after-upgrade-to-9-0/7066
https://gitlab.com/gitlab-org/gitlab-ce/issues/29957
我执行了gitlab-rake db:migrate
和gitlab-ctl restart
命令,但没有工作,LDAP
身份验证登录仍有问题。
最后,我尝试升级到10.1.0
,发现LDAP
身份验证登录问题已解决。 :)强>
有这类问题的朋友,如果你还打算使用升级 解决
LDAP
身份验证登录问题的方法,请备份您的Gitlab
数据,一旦升级无法解决问题,请使用您的备份 要还原和回滚Gitlab
的数据,请避免一些意外情况 失败,我的Gitlab
是一个悲剧性的案例。