GitLab Изменить структуру имени пользователя для привязки LDAP - PullRequest
0 голосов
/ 29 января 2019

Я хотел бы изменить способ проверки подлинности Gitlab с помощью AD, поскольку он отправляет запрос как «CN = user ou = xx dc = xx».Но AD нужно отправить как домен \ пользователь.Как я могу изменить конфигурацию Gitlab для отправки «домен \ имя пользователя» в запросе на привязку?

Или почему Windows AD отклонит аутентификацию?

Ниже моя конфигурация LDAP

gitlab_rails['ldap_servers'] = {
'main' => {
  'label' => 'AD',
  'host' =>  '10.0.0.1',
  'port' => 389,
  'uid' => 'sAMAccountName',
  'base' => 'DC=AAA,DC=ORG,DC=LOCAL',
 'bind_dn' => 'AAA\abcdefgh',
 'password' => 'Password4',
  'block_auto_created_users'=> 'true',
  'active_directory' => true,
  'lowercase_usernames' => true,

        }
}

Изображение жаберной проволоки ниже.

Wireshark Ldap authentication request

Bind Пароль отправил пакет 4. Bind Password sent packet 4

Bind Password отправил пакет 18 Bind Password sent packet 18

1 Ответ

0 голосов
/ 31 января 2019

Active Directory не требуется вход в систему в формате домен \ uid - это один из трех допустимых форматов идентификаторов, которые вы можете использовать при привязке к AD через LDAP, но uid @ domain иПолностью определенные DN LDAP одинаково действительны.GitLab выполняет привязку к AD с помощью bind_dn и пароля в конфигурации (wireshark # 4), выполняет поиск на базе, настроенной как «base» для (&(sAMAccountName=*user supplied uid*)) (wireshark # 11), возвращает полностью определенное DN идентифицированной учетной записи (wireshark # 16), а затем проверяет учетные данные пользователя, связываясь с полностью определенным DN и предоставленным пользователем паролем (wireshark # 18).

52e (в данных об ошибке привязки) возвращается, когда идентификатор пользователя соответствует действительному пользователю, но пароль неверен.Найден ли правильный пользователь для предоставленного идентификатора (т. Е. Пользователь имеет значение в dc = aaa, dc = org, dc = local domain и может быть найден в Head Office \ Users OU)?Если вы выберете пакет 18, вы увидите пароль в данных пакета - убедитесь, что что-то не было искажено при передаче или опечатке.

...