Проверка подлинности Gitlab возвращает неверное имя пользователя или пароль (отсутствует панель LDAP)

#active-directory #gitlab #ldap #gitlab-ci #gitlab-omnibus

#active-directory #gitlab #ldap #gitlab-ci #gitlab-omnibus

Вопрос:

У меня есть пользователи в Active Directory LDAP (у каждого есть имя пользователя и адрес электронной почты). Я настроил проверку подлинности LDAP в gitlab.rb и запустил «перенастройку gitlab-ctl». Я пользователь Gitlab Community Edition. Следующая команда возвращает пользователей, поэтому конфигурация выглядит нормально «sudo gitlab-rake gitlab: ldap: check». ВОЗВРАТ :

LDAP: … Сервер: ldapmain проверка подлинности LDAP… Успешные пользователи LDAP с доступом к вашему серверу GitLab (отображаются только первые 100 результатов)

DN: cn = Майк Гордон, cn = пользователи, dc = ad, dc = mydomain, dc = com sAMAccountName: mike.gordon

… здесь другие пользователи

Я пытаюсь войти в систему с именем пользователя LDAP mike.gordon и соответствующим паролем на панели gitlab «Вход», но получаю «неверное имя пользователя или пароль». На некоторых скриншотах показано, что существует панель LDAP, но она не отображается даже с помощью: gitlab_rails[‘prevent_ldap_sign_in’] = false

это моя конфигурация :

 main: # 'main' is the GitLab 'provider ID' of this LDAP server
label: 'LDAP'
host: 'myAdUrl'
port: 3268
uid: 'sAMAccountName'
bind_dn: 'CN=serveur-ovh,CN=Users,dc=ad,dc=mydomain,dc=com'
password: 'adpassword'
encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
active_directory: true
allow_username_or_email_login: false
base: 'dc=ad,dc=mydomain,dc=com'
user_filter: ''
#lowercase_usernames: false
#block_auto_created_users: false
#verify_certificates: true
#smartcard_auth: false
### EE only
  

Заранее большое спасибо за помощь.

Комментарии:

1. если журнал ошибок отсутствует, попробуйте изменить allow_username_or_email_login: false на true и повторите попытку с mike.gordon или его электронной почтой

2. Спасибо за ответ. Установка значения true и перенастройка перезапуск gitlab не работает. Вы говорите о журналах: я проверил приложение; json и производство. json регистрирует и ничего не нашел. Вам известны другие журналы, которые нужно проверить, пожалуйста?

3. вы можете найти полезные журналы в Active Directory, вы увидите входящий запрос и причину сбоя

Ответ №1:

Сравнивая вашу конфигурацию с моей, у меня есть значение user_filter

 ###! **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: 'ADHostname.example.com'
port: 636
uid: 'sAMAccountName'
method: 'ssl' # "tls" or "ssl" or "plain"
bind_dn: 'cn=UserID,ou=SystemAccounts,dc=example,dc=com'
password: 'AccountPasswordGoesHere'
active_directory: true
allow_username_or_email_login: false
block_auto_created_users: false
base: 'ou=ResourceUsers,dc=example,dc=com'
user_filter: '(amp;(sAMAccountName=*))' # Can add attribute value to restrict authorized users to GitLab access, we leave open to all valid user accounts in the OU. Should be able to authorize based on group membership using linked attribute value like (amp;(memberOf=cn=group,ou=groupOU,dc=example,dc=com))
attributes:
username: ['uid', 'userid', 'sAMAccountName']
email: ['mail', 'email', 'userPrincipalName']
name: 'cn'
first_name: 'givenName'
last_name: 'sn'

EOS
  

Комментарии:

1. я добавил user_filter, как вы упомянули, и он не сработал. Я также попытался правильно указать отступ в файле, потому что он кажется обязательным, потому что после перенастройки он генерирует yaml, но тоже не сработал. Я застрял, и форум girlab не отвечает. У меня нет вкладки ldap в пользовательском интерфейсе gitlab для аутентификации. У меня есть только «вход» и «регистрация». У вас есть эта вкладка «LDAP» для входа?