Ciao ho subversion installato su un apache 2.0 che si autentica su un server LDAP.
Questo è il mio svn.conf:
<location /svn>
DAV svn
SVNParentPath /usr/local/svn
AuthLDAPAuthoritative on
AuthType Basic
AuthName "MY Domain users only"
AuthLDAPBindDN "CN=Utente
LDAP,OU=Gruppi,OU=Altro,DC=mycomp,DC=myco,DC=dom"
AuthLDAPBindPassword mypwdldap
AuthLDAPURL "ldap://serverldap:3268/DC=mycomp,DC=myco,DC=dom?
sAMAccountName?sub?(objectClass=*)"
AuthzSVNAccessFile /usr/local/apache2_svn/conf/accesslist.acl
require valid-user
</location>
L'autenticazione LDAP funziona correttamente :
- [Fri Sep 07 18:00:31 2007] [warn] [client 192.168.1.22] [17108]
auth_ldap authenticate: user asdasd
authentication failed; URI /svn/project1/ [User not found][No such
object], referer: http://mysvnweb:8080/
- 192.168.1.22 - pippo [07/Sep/2007:18:08:49 +0200] "OPTIONS /svn/
project1 HTTP/1.1" 200 188
(Il primo ha loggato un utente che non esiste nell'LDAP, il secondo esiste...)
il problema è quando specifico questo: AuthzSVNAccessFile /usr/local/apache2_svn/conf/
accesslist.acl
[/]
* = rw
pippo = r
In qyuesto modo pippo NON dovrebbe poter scrivere, ma ci RIESCE!
Questa però è una regola fundamentale!
[/]
* = r
pippo = rw
Scritto cosi invece pippo RIESCE a scrivere
[/]
pippo = r
E cosi non riesce a scrivere
L'access_log mostra correttamente il che il nome pippo è passato cosi, correttamente.
In pratica la prima regola ha più peso sulle altre o meglio * = rw ha piu peso anche se lo metto per ultimo...
HELP ;(![]()
![]()

Rispondi quotando