apache auth: kombinasi LDAP dan htpasswd

11

Kami menggunakan Apache dengan mod_svn untuk melayani repo subversi. Apache terhubung ke server LDAP sehingga semua pengguna dapat menggunakan kata sandi domain mereka. Agar mesin build dapat checkout, saya ingin memiliki pengguna tambahan, tetapi saya tidak dapat menambahkan melalui LDAP.

Bisakah saya membuat pengaturan di mana pengguna / pwd harus cocok dengan server LDAP atau file htpasswd?

noamtm
sumber

Jawaban:

8

coba ini:

AuthType Basic
AuthName "LDAP and file
AuthBasicProvider file ldap
AuthUserFile /path/to/htpassword/file
AuthLDAPBindDN <your bind dn>
AuthLDAPBindPassword <your password>
AuthLDAPURL "<your ldap url>"
AuthzLDAPAuthoritative off
Require valid-user
Satisfy any

Mungkin Anda beralih AuthBasicProvider file ldapke AuthBasicProvider ldap file, tergantung di mana Anda ingin mencari dulu.

Kristen
sumber
FWIW, "Satisfy any" di conf mengakibatkan tidak ada auth sama sekali, ketika saya mencobanya. Menghapus "Memuaskan apa pun" menghasilkan hasil yang diharapkan / diinginkan.
Keith
2

Jika Anda juga perlu memeriksa pengguna yang berada dalam grup LDAP tertentu, Anda dapat menggunakan yang berikut ini:

AuthType Basic
AuthName "LDAP and file"
AuthBasicProvider file ldap
AuthUserFile /path/to/htpassword/file
AuthLDAPBindDN <your bind dn>
AuthLDAPBindPassword <your password>
AuthLDAPURL "<your ldap url>"
AuthzLDAPAuthoritative off

AuthLDAPGroupAttributeIsDN off
AuthLDAPGroupAttribute memberUid
Require valid-user
Require ldap-group cn=svn,cn=groups,dc=ldapsvr,dc=example,dc=com
Frank Schubert
sumber
1
(Saya tahu ini berusia 5 tahun tetapi kelihatannya salah). Sesuai dokumentasi, semua directe Diperlukan dianggap sebagai bagian dari blok RequireAny jika tidak di dalam blok. Menggunakan ini, Anda Require ldap-groupdiabaikan
mveroone