Як я можу встановити Redmine => Аутентифікація Active Directory?


9

По-перше, я не адміністратор реклами на сайті, але мій менеджер попросив мене спробувати встановити мою персональну установку Redmine для інтеграції з ActiveDirectory, щоб тестувати її для більш масштабної розробки.

Наш сервер AD знаходиться на хості: порту, ims.example.com:389і у мене є користувач IMS/me.

Зараз у мене також є користувач meRedmine, який використовує локальну аутентифікацію.

Я створив метод перевірки автентичності LDAP ActiveDirectory в RedMine з такими параметрами:

Host: ims.example.com
Port: 389
Base DN: cn=Users,dc=ims,dc=example,dc=com

On-The-Fly User Creation: YES
Login: sAMAccountName
Firstname: givenName
Lastname: sN
Email: mail

Тестування цього з'єднання працює чудово.

Я, однак, не успішно пройшов автентифікацію.

Я створив користувача адміністратора резервного копіювання, щоб я міг повернутися в meобліковий запис, якщо я порушував речі, а потім спробував змінити, meщоб використовувати облікові дані ActiveDirectory. Однак, як тільки я це зробити, нічого не виходить увійти. Я спробував усі ці варіанти імен для входу:

  • me
  • IMS/me
  • IMS\me

Я використовував свій відомий пароль домену, але без радості.

Отже, яке налаштування я помиляюсь або яку інформацію мені потрібно отримати, щоб зробити цю роботу?

Відповіді:


13

Гаразд, ось ось конкретні налаштування, які мені потрібні для того, щоб зробити цю роботу:

Host: ims.example.com
Port: 389
User: MYDOMAIN\accountName
Password: *******
Base DN: dc=mydomain,dc=example,dc=com

On-The-Fly User Creation: YES
Login: sAMAccountName
Firstname: givenName
Lastname: sN
Email: mail

Трюк був у вилученні cn=Usersз Базового ДН, після чого все це зійшло разом.

Інша примітна річ - включення користувача до читання каталогу.

Нарешті, користувач, який здійснює вхід у систему, використовує своє ім’я користувача без кваліфікації домену та пароль свого домену, як зазвичай. Наш домен не потребує електронної адреси, тому є додатковий крок, коли потрібно вказати електронну адресу під час створення користувача, але це досить просто.


Ага ... Я навіть не замислювався про те, щоб ваші облікові записи користувачів були за контейнером "CN = Користувачі, ..." за замовчуванням чи ні.
Еван Андерсон

Було б корисніше знати, як я міг це визначити. Я прийшов до цього налаштування лише через пробу та помилку.
Кріс R

Це було значною мірою пробним і помилковим для мене, тому що я прокатував власний плагін аутентифікації AD для Devise, який навіть не потребує конкретного акаунта читання AD; він прив'язує та автентифікує AD, використовуючи ім'я користувача / пароль для входу в систему. Це було дуже корисно, Кріс, дякую.
Бен Крігер

Одне уточнення (це займало у мене цілу половину дня): Обліковий запис потрібно відформатувати як відоме ім’я - не ім’я для входу.
coz

Для мене виправлення як додавання домену до облікового запису користувача, наприклад, частини MYDOMAIN.
Енді Арісменді

6

Трюк у пошуку базового DN для автентифікації LDAP ActiveDirectory - перевірити, яким є повне кваліфіковане доменне ім'я користувачів. Ви можете перевірити це за допомогою:

whoami /FQDN

якщо ви ввійшли як той користувач, який повертає щось подібне

CN=John Doe,OU=users,OU=department,DC=corp,DC=domain,DC=com

і Базовий DN можна знайти, видаливши перший CN.

OU=users,OU=department,DC=corp,DC=domain,DC=com

Дякую за це Я не знав цієї команди, дуже корисно.
jasonmmiraglia

4

Я не знайомий з Redmine, але він, схоже, схожий на те, що ви намагаєтесь зробити анонімне прив’язування до Active Directory для перевірки облікових даних. Це не вийде. Налаштувавши кілька продуктів для інтеграції LDAP з AD, це поширена проблема, яку я бачив.

AD не вимагає, щоб клієнти аутентифікувались під час прив'язки до каталогу для виконання запитів.

Погляньте на цю публікацію у вікі Redmine : налаштування автентифікації LDAP. Вони говорять про те, щоб вказати обліковий запис і пароль для використання Redmine (той, хто має права читати каталог - звичайний або "доменний користувач" буде робити) для прив'язки до каталогу.


У якій формі потрібно ввести ім’я користувача? Вони насправді не пояснюють, що у публікації у вікі (що так само було моєю відправною точкою для цього процесу)
Chris R

Зокрема, я спробував, IMS\meале, здавалося, не вийшло. Я також не можу отримати жодної інформації про те, чому вона не працює.
Кріс Р

Я б вказав прив’язати ім'я користувача в синтаксисі DOMAIN \ samAccountName. Щодо того, щоб з'ясувати, чому це не вдається, я рекомендую отримати sniffer (tcpdump, wireshark, вбудований "мережевий монітор" та ін.), Щоб це вирішити проблему. Немає більш швидкого способу зрозуміти, що говориться на дроті, ніж подивитися, що сказано на дроті. (Це звучить нерозумно, але багато людей ніколи не думають шукати там ...) Тоді, принаймні, ви можете побачити, чи передаються вказані вами параметри так, як ви їх очікуєте.
Еван Андерсон

Тут виявляється Wireshark - знахідка. Дякую за цю пораду. Я знайшов для цього деякі проблеми, і незабаром перегляну деталі та опублікую деталі.
Кріс R

Побачення того, що ящики говорять один одному, миттєво стає причиною багатьох проблем. Радий чути, що ти це працює!
Еван Андерсон

3

Використовуйте браузер ldap і візуально перевіряйте структуру ... luma на ubuntu добре працює, ldapper для mac також.


Насправді це не працювало з моїм сервером LDAP, але я бачу, як це було б корисно.
Кріс Р

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.