Come permettere all'utente unamed nel file di AuthZ svn?
-
02-10-2019 - |
Domanda
Ho un server Subversion in esecuzione con apache. E 'autentica gli utenti che utilizzano LDAP nella apache configurazione e utilizza le autorizzazioni per l'accesso degli utenti SVN limite a certe repository. Questo funziona perfettamente.
Apache
DAV svn
SVNParentPath /srv/svn
SVNListParentPath Off
SVNPathAuthz Off
AuthType Basic
AuthName "Subversion Repository"
AuthBasicProvider ldap
AuthLDAPBindDN # private stuff
AuthLDAPBindPassword # private stuff
AuthLDAPURL # private stuff
Require valid-user
AuthzSVNAccessFile /etc/apache2/dav_svn.authz
Subversion
[groups]
soft = me, and, all, other, developpers
Aggiunta l'accesso anonimo da una macchina
Ora, ho un servizio che voglio installare (Rietveld, per le revisioni del codice), che ha bisogno di avere un accesso anonimo al repository. Poiché si tratta di un servizio web, gli accessi sono sempre fatto dallo stesso server. Così ho aggiunto apache configurazione per consentire tutti gli accessi da questa macchina. Questo non ha funzionato fino a quando ho aggiungere una riga aggiuntiva nel file di autorizzazione per consentire l'accesso in lettura a tutti gli utenti.
Apache
<Limit GET PROPFIND OPTIONS REPORT>
Order allow,deny
Allow from # private IP address
Satisfy Any
</Limit>
Subversion
[Software:/]
@soft = rw
* = r # <-- This is the added line
Per esempio, prima aggiungo l'autorizzazione da un IP specifico, tutti gli utenti sono stati autenticati, e quindi aveva un nome. Ora, alcuni accessi sono fatte senza un nome utente! Ho trovato il nome utente -
nei file di log di Apache, ma la linea - = r
non funziona, nemmeno anonymous = r
. Mi piacerebbe non consentire l'accesso in lettura a tutti in autorizzazione SVN. Come posso fare questo?
Soluzione
Prova a mettere questo nel file AuthZ:
[Software:/]
@soft = rw
$anonymous=r