Имею:
Развернутый сервис управления Redmine на Ubuntu 12.04.5 Server amd64 по заметке.
Имеющийся в корпоративной среде домен контроллер srv-dc.nemdomb.local развернутый по заметке.
Задача:
Чтобы не заводить пользователей в Redmine их можно назначить используя интеграция с общей базой данных учетных записей текущего места работы, как правила в организациях уже существует развернутый домен. В нем уже заведены все пользователи и персональная информация по каждому из них, настраиваю новый режим аутентификации:
http://IP&DNS/redmine — user&password — Администрирование — Авторизация с помощью LDAP — Новый режим аутентификации
- Имя: nembomb
- Компьютер: 10.7.8.168
- Порт: 389
- Учетная запись: aollo@nemdomb.local
- Пароль: <очень_секретный_пароль>
- BaseDN: CN=Users,DC=nemdomb,DC=local
- Создание пользователя на лету: отмечаем галочкой
- Пользователь: samaccountname
- Имя: givenname
- Фамилия: sn
- Email: mail
И нажимаю «Создать».
Нажимаю “Проверить” – результат: Подключение успешно установлено.
, где учетная запись aollo@nemdomb.local – запись с правами Domain Admins.
Проверим параметры подключения через консоль:
ekzorchik@srv-mon:~$ apt-cache search ldapsearch
ldapscripts – Add and remove user and groups (stored in a LDAP directory)
ldapvi – perform an LDAP search and update results using a text editor
ekzorchik@srv-mon:~$ sudo apt-get install ldapscripts -y
ekzorchik@srv-mon:~$ ldapsearch -x -b "cn=Users,dc=nemdomb,dc=local" -H ldap://10.7.8.168/ -D "aollo@nemdomb.local" -w <очень_секретный_пароль>
Если же на скриншоте выше не указать доменный логин и пароль, то аутентификация не пройдет и я не смогу получить хоть какую-либо информацию, пример:
ekzorchik@srv-mon:~$ ldapsearch -x -b "cn=Users,dc=nemdomb,dc=local" -H ldap://10.7.8.168/
# extended LDIF
#
# LDAPv3
# base <cn=Users,dc=nemdomb,dc=local> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# search result
search: 2
result: 1 Operations error
text: 000004DC: LdapErr: DSID-0C0906E8, comment: In order to perform this ope
ration a successful bind must be completed on the connection., data 0, v1db1
# numResponses: 1
на выходе получаю всю структуру Active Directory – и это хорошо, теперь создаю в Redmine точно такого же пользователя, но пароль не указываю, он будет браться из Active Directory.
http://IP&DNS/redmine – user&password – Администрирование – Пользователи – Новый пользователь –
Вкладка: Общее
- Пользователь: alektest
- Имя: alektest
- Фамилия: alektest
- Email: alektest@nemdom.ru (указываю действующий почтовый адрес на него от www-data@ekzorchik.ru придет письмо)
- Язык: Russian (Русский)
- Режим Аутентификации: nemdomb (создали ранее строка выше)
- Отправлять пользователю информацию по учетной записи: отмечаю галочкой
- Уведомление по email: О всех событиях во всех моих проектах
- Не извещать об изменениях, которые я сделал сам: отмечаю галочкой
- Часовой пояс: (GMT+03:00) Moscow
- Отображение комментариев: В хронологическом порядке
- Предупреждать при закрытии страницы с не сохраненным текстом: отмечаю галочкой
Затем переключаюсь на вкладку: Проекты и если уже есть существующие проекты или проекты которым будет относится заводимый пользователь то выбираем проект (Отчеты) и отмечаем роль (у меня есть созданная роль sysadmin для системных администраторов), после нажимаем “Добавить”.
И нажимаю “Сохранить” перейдя на вкладку “Общее” при создании пользователя.
Теперь можно авторизоваться под заведенным пользователем в Redmine:
http://IP&DNS/redmine – Sign In -
- Login: alektest
- Password: Aa1234567
и нажимаю Login >> и вот я внутри:
Отлично работает и уже теперь мне администратор Redmine может ставить задачи да и сам я могу если позволяю права назначенной на меня роли sysadmin создавать документы, наполнять wiki. А вот и пример сообщения которое приходит пользователю в случае заведения его учетной записи в Redmine:
В сообщение есть подсказка, использовать вашу nemdomb (,т.е. доменную учетную запись) для входа открыв в браузере ссылку: http://10.7.8.157/redmina/login
- Login: alektest
- Pass: Aa1234567
По непонятным причинам вход в Redmine с использованием доменных учетных записей сразу не отрабатывает – пишет, что “Invalid user or password» либо не верный ввод логина либо пароля, но вот только этого не может быть, если просто подождать некоторое время и снова обратиться к окну авторизации — авторизация пройдет успешно. На счет этого нужно внимательно еще раз проверить настройки выше по заметки, уже сколько раз по своей невнимательности натыкался на вроде как глюк/баг, а в итоге просто моя невнимательность. Если же все равно Вы наблюдаете сообщение: – «Неправильное имя пользователя или пароль» – все дело в настройках интеграции — они отваливаются если сделать, проверить, то авторизация снова заработает для заведенных пользователей, но это же бред так делать. На просторах интернета вроде как рекомендуют поставить плагин для Redmine (Ldap Sync) и посредством него держать подключение к домен контроллеру, но это костыль. А потому я не хочу снова и снова изобретать велосипед настроек и подкручиваний, буду просто использовать локальную аутентификацию. На этом я прощаюсь, в следующей заметке я рассмотрю, как на установленной самой последней стабильной версии Redmine использовать аутентификацию доменных учетных записей из коробки. А пока все, с уважением автор блога — ekzorchik.