Перейти к содержанию
    

SVN: настройка авторизируемого доступа

файлы конфигурации

 

svnserve.conf

[general]
password-db = passwd
authz-db = authz

 

passwd

[users]
user1 = 123
user2 = 321

 

authz

[имя репозитория]
user1 = r
user2 = rw

 

 

Но в результате через ТорсианСВН оба юзера могут и читать и писать.

 

Как сделать пользователя только на чтение

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

!) неплохо было бы огласить метод доступа (svn/http)? (вроде authz применим только при использовании через собственный демон)

2) у меня в authz имя репозитория прописано в формате: [rep_name:/]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

!) неплохо было бы огласить метод доступа (svn/http)? (вроде authz применим только при использовании через собственный демон)

2) у меня в authz имя репозитория прописано в формате: [rep_name:/]

 

 

доступ через svn://.....

 

в authz пробовал все варианты, и "rep_name:/" и просто "rep_name" и просто "/"

 

Все стоит на одной рабочей станции, все пользователи работают через терминалы, прям на станции.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня работает такой вариант:

 

svnserve.conf

[general]
anon-access = read
auth-access = write
password-db = passwd
# authz-db = authz

 

passwd

[users]
user1 = 123
user2 = 321

 

authz

# harry_and_sally = harry,sally

# [/foo/bar]
# harry = rw
# * =

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r

т.е. тут все закомменчено, как было исходно.

 

Доступ именно по svn://.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня работает такой вариант:

 

svnserve.conf

[general]
anon-access = read
auth-access = write
password-db = passwd
# authz-db = authz

 

passwd

[users]
user1 = 123
user2 = 321

 

authz

# harry_and_sally = harry,sally

# [/foo/bar]
# harry = rw
# * =

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r

т.е. тут все закомменчено, как было исходно.

 

Доступ именно по svn://.

 

Так работает тоже, но авторизируемым пользователям можно все, не авторизированным только читать. Но это не подходит, мне надо так что бы юзеры имели различные права в различных частях папок, т.е. где то только читать, а где то вообще неимели доступа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так работает тоже, но авторизируемым пользователям можно все, не авторизированным только читать. Но это не подходит, мне надо так что бы юзеры имели различные права в различных частях папок, т.е. где то только читать, а где то вообще неимели доступа.

По-моему, вы много хотите от системы управления версиями. Ее функция в данном случае отделить тех, кому можно иметь доступ к репу (разработчики) от тех, кому нельзя (все остальные) иметь такого доступа (только чтение, например). Права доступа к отдельным папкам - это уже где-то прерогатива ОС+файловая система. Возможно, ошибаюсь, и другой сервер/протокол (https) дает то, что вы хотите, но что-то сомнительно, чтобы можно было на каждую папку в репозитории назначать права доступа для каждого юзера отдельно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Ну дык и ставьте

[general]
anon-access = none

 

и

 

[groups]
1 = User1,User2
2 = User3,User4

[/]
@1 = rw
@2 = r
* = 

[/path1]
@1 = rw
* =

[/path2]
@1 = r
@2 = rw
* =

 

И так далее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну дык и ставьте

[general]
anon-access = none

 

и

 

[groups]
1 = User1,User2
2 = User3,User4

[/]
@1 = rw
@2 = r
* = 

[/path1]
@1 = rw
* =

[/path2]
@1 = r
@2 = rw
* =

 

И так далее.

 

Повторил. Не работает. Чейто где то косяк какой минимальный, можект сервер с каким параметром запускать надо ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По-моему, вы много хотите от системы управления версиями. Ее функция в данном случае отделить тех, кому можно иметь доступ к репу (разработчики) от тех, кому нельзя (все остальные) иметь такого доступа (только чтение, например). Права доступа к отдельным папкам - это уже где-то прерогатива ОС+файловая система. Возможно, ошибаюсь, и другой сервер/протокол (https) дает то, что вы хотите, но что-то сомнительно, чтобы можно было на каждую папку в репозитории назначать права доступа для каждого юзера отдельно.

Все это можно, должно работать и с простым svnserve.

Пробовали настраивать раньше, получалось управлять индивидуальным управлением доступа к каталогам.

Сейчас еще раз специально проверил именно с приведенным выше вариантом настройки.

Пользователю User1 было отказано зафиксировать создание каталога в path2:

E:\Temp\4>svn co svn://127.0.0.1/test

Username: User1
Password for 'User1': ***
A    test\path1
A    test\path2
Checked out revision 1.

E:\Temp\4\test\path2>svn mkdir t1
A         t1

E:\Temp\4\test\path2>svn ci
Adding         path2\t1
svn: Commit failed (details follow):
svn: Access denied
svn: Your commit message was left in a temporary file:
svn:    'E:/Temp/4/test/svn-commit.tmp'

 

Может не совсем правильно понимается суть процессов?

Любой пользователь может что угодно делать в своих рабочих копиях, а вот фиксировать получается только у тех, кому позволено.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Повторил. Не работает.

 

Не совсем понятно, как не работает. Давайте сюда полные файлы конфигурации и дерево папок, будем смотреть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не совсем понятно, как не работает. Давайте сюда полные файлы конфигурации и дерево папок, будем смотреть.

 

Все разобрался, всем спасибо!

 

Ответ.

Авторизация и ограничение доступа по папкам через authz-db поддерживается через сервер на Apache или через SVNSERVE. Но через SVNSERVE только начиная с версии 1.3. По определению в RedHat стоит SVN 1.1.

 

Скачать новую версию 1.5 для RH можно с сервера http://www.collab.net/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Авторизация и ограничение доступа по папкам через authz-db поддерживается через сервер на Apache или через SVNSERVE. Но через SVNSERVE только начиная с версии 1.3. По определению в RedHat стоит SVN 1.1.

Мда, такого подвоха ни кто не ждал, ограничение доступа по папкам работает уже года три :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...