Как настроить пользователя-администратора с помощью gitlab с аутентификацией LDAP?

Я только что настроил gitlab, но я совершенно потерялся в отношении пользователя-администратора. Вики, кажется, умалчивает об этой теме, и гугл тоже не помог.

Итак, как мне настроить пользователей-администраторов с gitlab на аутентификацию LDAP?


person Daniel C. Sobral    schedule 01.08.2012    source источник
comment
Для какой версии GitLab это? Это все еще применимо?   -  person Paul Verest    schedule 07.05.2013
comment
@PaulVerest С тех пор я оставил работу по установке gitlab, поэтому я могу ответить, какая это была версия (помимо того, что я просто посмотрел даты тегов, чтобы увидеть, что было в то время, когда я задал вопрос). Я также не использую gitlab на своей нынешней работе, поэтому я не могу ответить, применимо ли это все еще.   -  person Daniel C. Sobral    schedule 08.05.2013


Ответы (6)


Вы также можете установить права администратора для пользователя, выполнив что-то вроде этого в консоли rails:

User.find_by_email("[email protected]") do |i|
    i.admin = true
    i.save
end
person morgents    schedule 16.10.2012
comment
Как запустить/войти в консоль gitlab rails? Спасибо/новичок - person MrJ; 06.05.2013
comment
@user973956 user973956 попробуйте что-нибудь вроде cd /home/git/gitlab && RAILS_ENV=консоль производственных рельсов - person morgents; 07.05.2013
comment
У меня не работает. После того, как я ввожу это, я получаю длинный вывод объекта User, но он все еще содержит admin: false. - person flyx; 24.10.2014
comment
(из /home/git/gitlab) sudo su git затем bundle exec rails c production - person Duke; 17.11.2014
comment
Я только что запустил его с помощью консоли sudo gitlab-rails. Как описано здесь: docs.gitlab.com /ee/security/reset_root_password.html - person jorfus; 20.10.2017

Это то, что я сделал, чтобы сделать пользователя LDAP (или Windows AD) vikas администратором.

Сначала войдите на портал GitLab и выйдите из системы, затем выполните приведенные ниже команды.

gitlab-rails console production
u = User.where(id: 1).first
u.admin = true
u.save!
exit

После выполнения приведенных выше команд снова войдите в систему, и теперь у вас будут права администратора для пользователя AD vikas.

person vikas027    schedule 27.04.2015
comment
Я протестировал приведенные выше команды в версии Rails 4.2.6 ( gitlab-rails --version ), и они также работают без выхода из gitlab. Можно просто обновить браузер, и появится кнопка администратора ( Tools ). Просто нужно быть осторожным с идентификационным номером, который вы передаете в команде. В моем случае это было 3 ..... u = User.where(id: 3).first - person infoclogged; 08.08.2016

Мой вариант принятого ответа основан на примере из официальной документации

Из командной строки вашего сервера gitlab:

Откройте консоль gitlab rails (здесь я предполагаю, что вы не вошли в систему как root):

sudo gitlab-rails console production

Затем введите следующие команды:

 user = User.find_by(username: 'my_username')
 user.admin = true
 user.save!

Закройте консоль:

exit

Обновите свой сервер gitlab:

sudo gitlab-ctl reconfigure
person David Fofana    schedule 09.02.2017
comment
У меня это сработало сразу после user.save! и обновления браузера (без sudo gitlab-ctl reconfigure или повторного входа в систему). - person Milanka; 06.11.2018
comment
Красиво работал. Хотя нет необходимости делать gitlab-ctl. - person Yaiba; 16.05.2019
comment
В более новых версиях gitlab используйте sudo gitlab-rails console -e production, чтобы открыть консоль. - person GondyB; 04.05.2020

Файл db/fixtures/production/001_admin.rb содержит настройки пользователя и пароля для администрирования, но вы должны отключить LDAP, чтобы войти с ним. Впоследствии, если вы создали пользователя, войдя в систему с помощью LDAP, вы можете настроить его как администратора и снова включить LDAP.

Надеюсь, есть более рациональный способ...

person Daniel C. Sobral    schedule 01.08.2012

Войдите в базу данных gitlab и запустите:

обновите набор пользователей admin = 't', где электронная почта вида 'xxxxx@xxxxx';

person Leandro Birri    schedule 04.03.2021

В веб-интерфейсе есть флажок, если ваше имя пользователя GitLab имеет доступ администратора.

Войдите в GitLab и в контексте Admin Area > Users > the.other.user > edit > Access > Access level отметьте Admin.

Я не пробовал команды Linux, потому что веб-интерфейс более надежен. официальный документ GitLab о разрешении не включает этот параметр, возможно, он кажется вроде интуитивно понятно.

person Mike    schedule 30.01.2021