У меня есть несколько хранилищ SVN на моем сервере. Например:

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

Я хотел предоставить клиенту доступ только к repo2, поэтому создал пользователя «клиент» и предоставил ему доступ по SSH. Теперь клиент может оформить repo2 как:

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

Но проблема в том, что он может подключиться к серверу SSH, используя свое имя пользователя (клиент) и пароль, и может связываться с другими файлами. Он также может проверить все другие хранилища. Как я могу ограничить клиента, чтобы просто иметь возможность оформить заказ repo2.

Он не должен быть в состоянии:

  1. Доступ к любому другому хранилищу
  2. Совершить репо2
  3. SSH сервер

Разумно ли даже дать ему разрешение проверить хранилище?

Благодарю.

1 ответ1

1

При работе через туннель авторизация в основном контролируется разрешениями операционной системы на файлы базы данных репозитория.

Но даже в случае туннелирования вы все равно можете использовать файл svnserve.conf для блокировки доступа, просто установив auth-access = read или auth-access = none.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .