Cum pot adăuga un utilizator în SVN? (Unix, Subversion)

scott a intrebat.
a intrebat.

UPDATE #3:Cred că am găsit soluția.
/etc/httpd/conf.d/subversion.conf

<Location /repos>
        DAV svn
        SVNPath /var/www/svn/repos
        AuthType Basic
        AuthName "Subversion repos"
        AuthUserFile /etc/svn-auth-conf
        Require valid-user
</Location>

svn-auth-conf este în formatul

user1:$apr1$randome letters ... $random letters and numbers

Simt că am folosit un instrument de linie de comandă pentru a adăuga utilizatorii, dar nu-mi amintesc ce.

UPDATE #2:localizarea http.conf dă următoarele rezultate

/usr/share/logwatch/default.conf/logfiles/http.conf
/usr/share/logwatch/default.conf/services/http.conf

Nu văd nimic în niciuna dintre ele care să pară legat de subversion. Pot să postez fișierele aici dacă vă ajută.

întrebarea originală:

Cu câțiva ani în urmă, am instalat și configurat subversion. Nu-mi amintesc cum am adăugat un utilizator. Acum trebuie să adaug un altul, dar când am verificat passwd nu era niciun utilizator definit și nici nu era nimic setat în fișierul svnserve.conf ambele aveau totul comentat. Aceasta este singura modalitate pe care am găsit-o pentru a adăuga utilizatori prin Google. Așa că am încercat:

passwd

user1 = password1
user2 = password2

svnserve.conf

anon-access = none
auth-access = write
pasword-db = passwd
authz-db - authz
realm = repos

dar tot nu pot să-l accesez decât cu user1, , chiar dacă user1 nu este un utilizator pe serverul linux. Există o altă modalitate de a adăuga utilizatori sau am ceva greșit în configurație?

actualizare:

Am adăugat următoarea linie în fișierul meu svnserve.conf

authz-db = authz

apoi fișierul meu authz arată astfel

authz [groups] devs = user1,user2

[repos:/]
devs = rw

tot nu funcționează. parola pentru user1 este diferită în passwd față de cea pe care o folosesc pentru a mă autentifica. Deci cred că subversiunea nu folosește deloc acest fișier pentru autentificare. mai ales că fișierul era gol înainte și încă puteam să mă loghez. există vreo modalitate de a mă asigura că folosește fișierele svnserve, passwd, authz pentru autentificare? există un alt fișier de configurare pe undeva?

5 răspunsuri
Caleb

Autentificarea Subversion are de obicei două părți. Prima este un depozit de parole de un anumit tip. A doua este o listă de control al accesului. Lista de parole este utilizată pentru a autentifica utilizatorii și a verifica parolele acestora, dar trebuie să setați și ce utilizatori au acces la ce resurse.

Există mai multe tipuri de depozite de parole. Nu sunt familiarizat cu passwd eu folosesc tipul htpasswd care utilizează aceleași fișiere de utilizator/parolă pe care le utilizează Apache pentru autentificarea utilizatorilor. Adaug utilizatorii în acest fișier cu htpasswd .htpasswd username. Se pare că ați făcut acest pas corect pentru tipul de parolă.

A doua parte este ACL. Subversion ar trebui să aibă un fișier numit access undeva, cu secțiuni pentru fiecare dintre depozitele dvs. Va trebui să adăugați o linie sub depozitul pe care doriți să îl accesați cu username = rw pentru a da acelui utilizator acces de citire/scriere la acel depozit.

Comentarii

  • Voi încerca când ajung acasă. îmi sună cunoscut. –  > Por scott.
  • Nu cred că asta este. nu exista niciun fișier .htpasswd pe serverul meu. –  > Por scott.
Sergey

Configurația serverului SVN (în principal) constă în trei fișiere:

  • authz
  • passwd
  • svnserve.conf Acesta este fișierul principal (authz-db = authz)

Deci, ne furnizați doar două fișiere de configurare, vă rugăm să verificați dacă fișierul authz conține:

#[the_name_of_repository:/path_in_that_repository]
[test:/]
user1 = rw
user2 = rw

pentru proiect test pentru care doriți să acordați acces

Comentarii

  • Am încercat acest lucru nu a funcționat. parola pe care o folosesc pentru a mă conecta ca user1 este diferită de cea pe care o am în fișierul passwd. deci nu cred că o folosește deloc. –  > Por scott.
  • vă rugăm să verificați dacă folosiți fișierul de configurare corect: care este rezultatul pentru ps aux|grep svn –  > Por Sergey.
  • Și încă o întrebare. Cum obțineți structura de directoare a depozitelor (svn:// sau prin intermediul serverului http)? –  > Por Sergey.
  • root 19578 0.0 0.3 4016 664 tty1 R+ 05:15 0:00 grep svn –  > Por scott.
  • prin serverul http –  > Por scott.
user139264
## Create testuser ##
htpasswd -m /etc/svn-auth-users testuser

New password:

Re-type new password:

Adding password for user testuser2

Notă: Folosiți exact același nume de fișier și de cale de acces ca și cel utilizat în subversion.conf fișier. Acest exemplu utilizează /etc/svn-auth-users fișier.

Test Test
htpasswd -m /etc/subversion/svn-auth-file yourusername

Se va cere apoi parola și se va confirma parola.

Supun Sameera

puteți folosi comanda,

sudo htpasswd -cm /etc/apache2/dav_svn.passwd XXXXX
  • XXXXX a fost numele de utilizator, apoi se va cere parola.

acest lucru este numai dacă configurați svn cu apache, care nu citește dosarele svn conf numele de utilizator parola fișierelor conf svn conf