Есть ли способ создать пользователя SVN без доступа к журналу? - PullRequest
2 голосов
/ 28 марта 2012

Я подумываю об аутсорсинге некоторых разработок и хотел бы выдать учетные данные SVN, а не предоставлять доступ к серверам, которые я использую.

Однако мне это немного не по себе, и я хотел бы знать,можно запретить конкретному пользователю запускать svn log и просматривать историю файлов.

Все, что ему действительно нужно, это co, ci и diff

Ответы [ 2 ]

1 голос
/ 28 марта 2012

Короткий ответ

Нет.

Длинный ответ

Все стандартные методы работают или на более высоком уровне, чем одиночныйSVN-команда (манипулировать правами на чтение / запись совместно) или на более низком уровне (с отдельной DAV-командой, набор , который переводится в одну svn-команду)

Здесь Хмарбайз имел MISS ONE

Мысли и соображения

Если вы можете построить карту команд DAV-SVN (используя журнал Apache и руки)и убедитесь, что на DAV-уровне включенные и запрещенные svn-команды не имеют пересечений на DAV-стороне, вы отключаете только «плохие» dav-команды.Но я думаю, у них всех есть пересечения ( не проверено! ).

С другой стороны, если вы хотите ограничить доступ к более старой истории с некоторой точки (не полностью отключить с помощью команд, которыеЯ слепо считаю невозможным), вы можете разбить рабочее пространство аутсорсера на отдельное дерево , для которого используется контроль доступа на основе пути.

Здесь у Хмарбайса был MISS TWO

потому что он вспоминает только об 1) отдельном 2) несвязанном репозитории, в то время как у вас есть как минимум 2 варианта:

  • Создать ветку в том же репо из HEAD, предоставить пользователю доступ только к этомуbranch
  • Создание (из экспортированного HEAD) дополнительного репозитория для пользователя, привязка его к основному репо с внешними данными.

В обоих решениях журнал пользователя будет остановлен при первой ревизии в его пространстве (из-зак отсутствующим старым ревизиям или отсутствию доступа к истории до копирования), двунаправленная синхронизация все еще возможна для пользователя с достаточным уровнем доступа с помощью слияния.

0 голосов
/ 28 марта 2012

На основании возможности создания path-based-authorization вы можете ограничить доступ к определенным областям ваших репозиториев, что подразумевает, что не вся история доступна для чтения только по пути, к которому вы дали доступ.Я думаю, что все должно быть в порядке.В противном случае вам действительно нужно сделать реплику и повторить изменения между репозиториями, что не является простой задачей в SVN.

...