Bagaimana saya mengatur Redmine => Otentikasi Direktori Aktif?

9

Pertama, saya bukan admin AD di situs, tetapi manajer saya telah meminta saya untuk mencoba mendapatkan instalasi Redmine pribadi saya untuk diintegrasikan dengan ActiveDirectory untuk menguji-drive untuk peluncuran skala yang lebih besar.

Server AD kami ada di host: port ims.example.com:389dan saya punya pengguna IMS/me.

Saat ini, saya juga memiliki pengguna medi Redmine menggunakan otentikasi lokal.

Saya telah membuat metode otentikasi LDAP ActiveDirectory di RedMine dengan parameter berikut:

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

Menguji koneksi ini berfungsi dengan baik.

Namun, saya belum berhasil mengautentikasi dengan itu.

Saya telah membuat pengguna admin cadangan sehingga saya bisa kembali ke meakun jika saya memecahkan banyak hal, dan kemudian saya mencoba mengubah meuntuk menggunakan kredensial ActiveDirectory. Namun, begitu saya lakukan, tidak ada yang berhasil masuk. Saya telah mencoba semua opsi nama masuk ini:

  • me
  • IMS/me
  • IMS\me

Saya telah menggunakan kata sandi Domain saya yang dikenal, tetapi tidak ada sukacita.

Jadi, pengaturan apa yang salah, atau informasi apa yang perlu saya peroleh untuk membuat pekerjaan ini?

Chris R
sumber

Jawaban:

13

Oke, jadi di sini adalah pengaturan khusus yang saya butuhkan untuk membuat ini berfungsi:

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

Triknya adalah menghapus cn=Usersdari DN Pangkalan, setelah itu semua jenis berkumpul.

Hal penting lainnya adalah masuknya pengguna untuk membaca direktori.

Terakhir, pengguna yang masuk menggunakan nama pengguna mereka tanpa kualifikasi domain, dan kata sandi domain mereka seperti biasa. Domain kami tidak memerlukan alamat email, jadi ada langkah tambahan di mana alamat email harus ditetapkan selama pembuatan pengguna, tetapi itu cukup mudah.

Chris R
sumber
Ahh ... Saya bahkan tidak berpikir untuk menanyakan apakah akun pengguna Anda berada di bawah wadah default "CN = Users, ..." atau tidak.
Evan Anderson
Akan lebih bermanfaat untuk mengetahui bagaimana saya bisa menentukan itu. Saya hanya sampai di pengaturan ini melalui coba-coba.
Chris R
Ini sebagian besar trial and error bagi saya, juga, karena saya telah menggulung sendiri plugin autentikasi AD saya sendiri untuk Devise yang bahkan tidak memerlukan akun AD Read tertentu; ia mengikat dan mengautentikasi ke AD menggunakan login nama pengguna / kata sandi. Ini sangat membantu, Chris, terima kasih.
Ben Kreeger
Satu klarifikasi (butuh saya sepanjang sore): Akun perlu diformat sebagai nama yang dibedakan - bukan nama login.
karena
Bagi saya perbaikan sebagai menambahkan domain ke akun pengguna kueri misalnya bagian MYDOMAIN.
Andy Arismendi
6

Trik untuk menemukan DN Pangkalan untuk otentikasi LDAP ActiveDirectory adalah memeriksa apakah nama domain yang sepenuhnya memenuhi syarat pengguna. Anda dapat memeriksanya dengan:

whoami /FQDN

jika Anda masuk sebagai pengguna itu, yang mengembalikan sesuatu seperti

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

dan Base DN dapat ditemukan dengan menghapus CN pertama.

OU=users,OU=department,DC=corp,DC=domain,DC=com
Remco Schoeman
sumber
Terima kasih untuk ini. Saya tidak mengetahui perintah ini, sangat membantu.
jasonmmiraglia
4

Saya tidak mengenal Redmine, tapi sepertinya Anda mencoba melakukan pengikatan anonim ke Active Directory untuk memvalidasi kredensial. Itu tidak akan berhasil. Setelah mengkonfigurasi beberapa produk untuk integrasi LDAP dengan AD, ini adalah masalah umum yang saya lihat.

Di luar kotak, AD mengharuskan klien mengautentikasi saat mengikat ke direktori untuk melakukan kueri.

Lihat postingan wiki Redmine ini : mengonfigurasi otentikasi LDAP. Mereka berbicara tentang menentukan akun dan kata sandi untuk Redmine untuk digunakan (yang memiliki hak untuk membaca direktori - yang biasa dilakukan oleh "Pengguna Domain") untuk mengikat ke direktori.

Evan Anderson
sumber
Formulir apa yang harus saya masukkan nama pengguna? Mereka tidak benar-benar menjelaskan bahwa dalam posting wiki (yang merupakan titik tolak saya untuk proses ini)
Chris R
Secara khusus, saya mencoba IMS\medan tampaknya tidak berhasil. Saya juga tidak bisa mendapatkan detail mengapa itu gagal.
Chris R
Saya akan menentukan nama pengguna bind dalam sintaks DOMAIN \ samAccountName. Sejauh mencari tahu mengapa itu gagal, saya akan merekomendasikan mendapatkan sniffer (tcpdump, wireshark, built-in Microsoft "Network Monitor", dll) dan membawa itu untuk mengatasi masalah. Tidak ada cara yang lebih cepat untuk mengetahui apa yang dikatakan di kawat selain melihat apa yang dikatakan di kawat. (Kedengarannya konyol, tetapi banyak orang tidak pernah berpikir untuk melihat ke sana ...) Kemudian, setidaknya, Anda dapat melihat apakah parameter yang Anda tentukan sedang dilewati seperti yang Anda harapkan.
Evan Anderson
Wireshark berubah menjadi anugerah di sini. Terima kasih atas tipnya. Saya telah menemukan beberapa masalah untuk itu, dan saya akan datang dan memposting rinciannya segera.
Chris R
Melihat apa yang dikatakan kotak-kotak itu satu sama lain membuat banyak masalah langsung menjadi jelas. Senang mendengar kamu akhirnya berhasil!
Evan Anderson
3

Gunakan browser ldap dan periksa struktur secara visual ... luma di ubuntu berfungsi dengan baik, ldapper untuk mac juga.


sumber
Sebenarnya tidak berfungsi dengan server LDAP saya, tetapi saya bisa melihat bagaimana itu akan berguna.
Chris R