SVN authz, проблемы аутентификации на основе пути

[groups]
developer = a,b,c
doc = r,x

[/doc]
@doc = rw
@developer = rw

[/]
@developer = rw
* =

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

С уважением, Ронни

[Обновить]

клиент: svn, версия 1.5.4 (r33841) сервер: svn, версия 1.4.6 (r28521)

доступ через svn + ssh: / user @ host / fullpath-to-repos

  • 1 отлично работает два года
  • 2 может быть - см. Номера версий выше (я немедленно продолжу наш админ)
  • 3 нет? просто SSH
  • 4 Нет
  • 5 Нет

[Обновить]

  • использование клиентской версии SVN 1.4.6 (r28521) тоже не работает - те же ошибки
  • Я использую простой доступ к командной строке. svn co svn + ssh: //....

[Обновить]

  • сервер:Linux 2.6.16.60-0.39.3-default9 i686 athlon i386 GNU/Linux - suse 10? или что-то подобное я думаю
  • клиент: Kubuntu 9.04
  • подключение через OpenSSH SSH-клиент
  • сервер отклоняет svn:// соединения с локального хоста - любое соединение --- скоро надо попробовать с копией дома

[обновление 4] * это не мой собственный сервер, я не могу делать то, что я хочу с ним. Это очень старый сервер, работающий как минимум 10 лет, с сотнями пользователей. Стандартные вещи должны работать. поправьте меня, если я что-то упустил.

[обновление 5] верите или нет. Я использовал неправильный путь, и теперь все работает отлично, извините, что потратил впустую ваше время. Я передам вознаграждение FoxyBOA за его работу.

3 ответа

Решение

Какие URL-адреса @doc участники пытаются оформить?

[ОБНОВЛЕНО]

Не могли бы вы предоставить дополнительную информацию: версию SVN на сервере и на стороне клиента. Как ваши клиенты пытаются подключиться к серверу SVN (например, из Eclipse, используя библиотеку subclipse, командную строку и т. Д.).

  1. Если вы используете svn+ssh, ваш пользователь должен иметь действительный доступ к вашему серверу. У ваших пользователей есть правильная оболочка (например, bash, tcsh и т. Д.)? /bin/false и другие фальшивые оболочки не будут работать с типом соединения svn+ssh.

  2. Другая проблема, с которой вы можете столкнуться - разные версии SVN на сервере и на стороне клиента (например, сервер 1.4, клиент 1.5, которые пытаются подключиться с использованием технологий 1.5).

  3. Вы используете аутентификацию SASL с SVN?

  4. Вы используете туннелирование?

  5. Используете ли вы уловки конфигурации ssh, описанные в svn docs?

[UPDATED2]

  1. Вы подключаетесь к SVN из командной строки или используете IDE? Если вы используете IDE, назовите ее и предоставьте информацию о том, какое дополнение / библиотека / и т. Д. вы используете для подключения к серверу SVN.

[UPDATED3]

  1. Не могли бы вы создать тестовую учетную запись и временно попытаться получить доступ к серверу SVN без ssh? Просто используя простой протокол SVN: //. Если это работает, проблема в ssh, если это терпит неудачу - svn.
  2. Какой инструмент вы используете для подключения SSH и с какой ОС вы работаете?

[UPDATE4] - Вы уверены, что ваш сервер SVN запущен? Если ваш svn работает на стандартном порту, попробуйте подключиться напрямую к порту svn с сервера локально:

telnet localhost 3690
  • Если это работает, попробуйте подключиться с клиента (например, telnet ip_server 3690).

  • Если telnet на сервере работает, но telnet от клиента не работает, проверьте брандмауэры, маршрутизаторы и т. Д.

  • Если Telnet на сервере не удается. Попробуйте перезапустить svn сервер и проверить логи сервера.

[UPDATE5]

На мой взгляд, ваш сервер SVN остановился. Не могли бы вы проверить, если служба SVN видна локально (telnet с localhost до 3690) и удаленно. Если служба SVN работает правильно в обоих случаях, вы должны получить что-то вроде

(успех ( 1 2 (АНОНИМ) ( edit-pipe)))

Истинный способ сделать это здесь:

[groups]
developer = a,b,c
doc = r,x

[doc:/]
* =  
@doc = rw
@developer = rw

[otherPath:/]
* =
@developer = rw
@doc = r

[/] 
* = rw

"Я использую SVN + SSH... странная вещь"

svn + ssh использует ssh для подключения, затем запускает svnserve в туннельном режиме

При работе через туннель авторизация в основном контролируется разрешениями операционной системы на файлы базы данных хранилища; это почти так же, как если бы Гарри обращался к хранилищу напрямую через файл:// URL.

документация svnserve

Другими словами, он игнорирует настроенную вами конфигурацию.

Другие вопросы по тегам