Gerrit + LDAP: «Невозможно назначить имя пользователя« X »учетной записи Y; имя не соответствует» - PullRequest
0 голосов
/ 04 октября 2018

Я новичок в Геррите.Парень, который выполнил настройку, покинул компанию, и теперь мне нужно создать учетную запись для нового сотрудника.

Мы используем LDAP для аутентификации.Он работает для всех зарегистрированных пользователей.

Новый пользователь должен иметь возможность войти в Gerrit, если у него уже есть учетная запись, предоставленная через LDAP.Верно?

Но, когда он пытается войти, появляется ошибка "Cannot assign user name "Example Name" to account 1000054; name does not conform.".Подробно: номер учетной записи (в примере 1000054) увеличивается после каждой неудачной попытки входа в систему.Detail2: если введен неправильный пароль, выдается ошибка неправильного адреса электронной почты / пароля.

В беседе с администратором LDAP он сказал, что запрос пользователя не поступил на сервер LDAP.

Попытался открыть Gerrit DB, используя java -jar bin/gerrit.war gsql.Там нет ничего, связанного с этим новым пользователем в таблицах "ACCOUNTS" и "ACCOUNT_EXTERNAL_IDS".

Наши настройки:

[ldap]
    server = ldap://LDAP_SERVER_IP
    accountBase = OU=Usuários Rede,OU=COMPANY,DC=COMPANY,DC=com,DC=br
    groupBase = OU=Grupos,OU=COMPANY,DC=COMPANY,DC=com,DC=br
    referral = follow
    accountPattern = (mailNickname=${username})
    groupPattern = (memberOf=${cn})
    accountFullName = cn
    accountEmailAddress = mail
    accountSshUserName = cn
    username = ldapread@COMPANY_NAME.com.br
    password = PASS

Как я могу отладить, что здесь не так?Имена пользователей в нашей компании следуют шаблону name.surname.

Я действительно потерян.Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Я наконец-то смог заставить его работать!

Что я сделал:

  1. Остановленный Геррит (./bin/gerrit.sh stop)

  2. Открыта база данных (java -jar bin/gerrit.war gsql)

  3. Вставлена ​​новая строка в таблицу ACCOUNTS (insert into ACCOUNTS values ('2018-10-11 00:00:00.000', 'Name Surname', 'name.surname@company.com.br', 'N', 'NULL', 1000052);)

  4. Вставлена ​​две новые строки вACCOUNT_EXTERNAL_IDS Таблица, ссылающаяся на новый идентификатор пользователя (insert into ACCOUNT_EXTERNAL_IDS values ('1000052', 'name.surname@company.com.br', 'NULL', 'gerrit:name.surname'); и insert into ACCOUNT_EXTERNAL_IDS values ('1000052', 'NULL', 'NULL', 'username:name.surname');)

  5. Снова запустил Gerrit (./bin/gerrit.sh start)

Если кто-либомогу объяснить, что здесь произошло ... Пожалуйста!

0 голосов
/ 04 октября 2018

Я сравнил наши настройки с вашими, и я думаю, что что-то не хватает в учетной записи Pattern и groupPattern.Это наши настройки:

accountPattern = (&(objectClass=user)(sAMAccountName=${username}))
groupPattern = (&(objectClass=group)(cn=${groupname}))

Предложение "objectClass = xxxx" показано в документации Gerrit ldap.

Но я не могу объяснить, почемуэто не работает только для новых пользователей.

...