Fornecendo acesso a um usuário de 'only' no repositório svn

0

Eu tenho vários repositórios svn no meu servidor. Por exemplo:

/var/svn/repo1
/var/svn/repo2
/var/svn/repo3

Eu só queria dar acesso a um cliente para o repo2, então criei um 'cliente' de usuário e forneci-lhe acesso SSH. Agora, o cliente pode verificar o repo2 como:

svn co svn+ssh://client@<public-ip>/var/svn/repo2

Mas o problema é que ele pode usar o SSH no servidor usando seu nome de usuário (cliente) e senha e pode mexer com outros arquivos. Ele também pode fazer o checkout de todos os outros repositórios. Como posso restringir o cliente para poder apenas fazer o checkout do repo2.

Ele não deve ser capaz de:

  1. Acesse qualquer outro repositório
  2. Comprometa-se com o repo2
  3. SSH o servidor

É até sábio dar permissão a ele para verificar o repositório?

Obrigado.

    
por Undefined 06.11.2011 / 08:49

1 resposta

1

Ao executar um túnel, a autorização é controlada principalmente pelas permissões do sistema operacional para os arquivos de banco de dados do repositório.

Mas mesmo no caso de tunelamento, você ainda pode usar o arquivo svnserve.conf para bloquear o acesso, simplesmente configurando auth-access = read ou auth-access = none.

    
por 06.11.2011 / 21:26