apache auth: combinazione di LDAP e htpasswd


11

Stiamo usando Apache con mod_svn per servire il repository di sovversione. Apache è collegato a un server LDAP in modo che tutti gli utenti possano utilizzare le loro password di dominio. Per consentire alla macchina di compilazione di effettuare il checkout, desidero disporre di un utente aggiuntivo, ma non posso aggiungerlo tramite LDAP.

Posso creare una configurazione in cui l'utente / pwd deve corrispondere al server LDAP o ad un file htpasswd?

Risposte:


8

prova questo:

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

Forse passi AuthBasicProvider file ldapa AuthBasicProvider ldap file, a seconda di dove vuoi prima cercare.


FWIW, "Soddisfa qualsiasi" nella configurazione non ha prodotto alcuna autenticazione, quando l'ho provato. La rimozione di "Soddisfa qualsiasi" produce risultati attesi / desiderati.
Keith,

2

Se è necessario anche verificare che l'utente si trovi in ​​un gruppo LDAP specifico, è possibile utilizzare quanto segue:

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

1
(So ​​che ha 5 anni ma sembra sbagliato) Secondo la documentazione, tutte le directory richieste sono considerate parte di un blocco RequireAny se non in un blocco. Usando questo, il tuo Require ldap-groupviene ignorato
mveroone
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.