Авторизация в gitlab через openldap
Для авторизации gitlab через openldap правим конфиг gitlab.rb. Добавим секцию
## For setting up LDAP ## see https://gitlab.com/gitlab-org/omnibus-gitlab/blob/629def0a7a26e7c2326566f0758d4a27857b52a3/README.md#setting-up$ ## Be careful not to break the identation in the ldap_servers block. It is in gitlab_rails['ldap_enabled'] = true gitlab_rails['ldap_servers'] = { 'main' => { 'label' => 'GitLab OPENLDAP', 'host' => '$LDAP_IP', 'port' => '389', 'uid' => 'uid', 'method' => 'plain', 'verify_certificates' => 'false', 'bind_dn' => 'cn=admin,dc=itc-life,dc=ru', 'password' => 'ваш_пароль', 'active_directory' => 'false', 'base' => 'dc=itс-life,dc=ru' } }
В вашем Openldap у пользователей должен обязательно быть атрибут Email иначе получите такую шляпу
because "Undefined method `provider' for nil:nilclass".
Чтобы добавить атрибут через консоль ldap
Создаем файл
nano /tmp/itc-life
Вставляем содержимое
dn: cn=itc-life,cn=maingroup,dc=itc-life,dc=ru changetype: modify add: mail title: admin@itc-life.ru
Где
cn=itc-life - имя пользователя cn-maingroup - имя группы dc=itc-life,dc=ru - ваша корневая зона
Исполняем
ldapmodify -H ldap://localhost -D "cn=admin,dc=itс-life,dc=ru" -w Пароль_админа -f /tmp/itc-life