Múltiples inicios de sesión del repositorio SVN

Múltiples inicios de sesión del repositorio SVN

Tengo un sistema Ubuntu y subversion instalado en él. Ahora quiero crear varios repositorios en él. Todo el repositorio debe tener sus propios inicios de sesión.

por ejemplo---example.com/svn/repo1: usuario--1

ejemplo.com/svn/repo2: usuario--2

ejemplo.com/svn/repo3: usuario--3

Ahora el usuario1 no debe acceder al repositorio2 y al repositorio3. & usuario2 no debe acceder al repositorio1 y repositorio3

Puedo crear múltiples repositorios pero no los inicios de sesión. Por favor, ayúdame.

Gracias

Respuesta1

Utilice dav_svn_module

Aquí hay una configuración de muestra, miralibro svnir más profundo

LoadModule dav_svn_module /usr/lib/apache/mod_dav_svn.so
LoadModule authz_svn_module /usr/lib/apache/mod_authz_svn.so

<IfModule dav_svn_module>
<IfModule authz_svn_module>
<Location /svn>
    DAV svn
    SVNParentPath /svn

    AuthzSVNAccessFile /etc/apache2/svn_authz
    Satisfy Any
    Require valid-user
    AuthType Basic
    AuthName "Subversion repository"
    AuthUserFile /etc/apache2/svn_passwd
</Location>
</IfModule>
</IfModule>

Un ejemplo de autenticación:

cat /etc/apache2/dav_svn.authz

[groups]
admin      = foo
graph      = bar
developers = foo,baz

[/]
*           =
@admin      = rw
@developers = rw
@graph      = r

[/branches/prod/*]
*           =
@admin      = rw

[ZCS:/]
*           =
@admin      = rw
@developers = rw
@graph      = rw

[SYMFONY_PLUGINS:/]
*           =
@admin      = rw
@developers = rw

[SYMFONY:/]
*           =
@admin      = rw
@developers = rw

Respuesta2

Utilice svnserve en lugar del servidor Apache. Dentro del repositorio que creaste, encontrarás un directorio conf. Usando su editor de texto preferido, edite los siguientes archivos con estos cambios:


En svnserve.conf, descomente lo siguiente: [general]

anon-access = read(y cambiar lectura a ninguna)

auth-access = write

passwd-db = passwd

En el archivo passwd agregue los nombres de usuario y sus correspondientes contraseñas en el formato nombre de usuario = contraseña

[users]
admin = adminspass
dev1 = devspass

Realice cambios similares en todos sus repositorios e inicie svnserve usando el comando: svnserve -d --foreground -r /root/dir/of/repo es decir, si creó los repositorios en /home/svn como se indica en muchos tutoriales, el comando se verá asísvnserve -d --foreground -r /home/svn

Se puede acceder a los repositorios utilizando cualquier cliente svn con la URL:

svn://hostname-or-ip/repo-name

información relacionada