Рейтинг:0

Разрешить анонимный доступ только для чтения к репозиторию Subversion

флаг cn

Я использую Subversion 1.13.0 в Ubuntu 20.04 и Apache 2.4.41 для обслуживания SVN через HTTPS.

Аутентификация выполняется с помощью файла passwd, основная папка /svn завершается с ошибкой 401, если пользователь не аутентифицирован.

Но теперь мне нужно создать репозиторий, к файлам которого нужно получить анонимный доступ. Коммит по-прежнему требует аутентификации.

Можно ли сделать только этот репозиторий доступным для чтения без аутентификации?

TonyB avatar
флаг za
Предполагая, что вы используете mod_dav_svn в Apache для обслуживания Subversion, конфигурация обрабатывается Apache, и если это так, то да, это возможно. Я предлагаю вам прочитать [Subversion Redbook онлайн] (https://svnbook.red-bean.com/en/1.7/svn-book.pdf). На странице 188 начинается раздел «httpd, HTTP-сервер Apache», в котором подробно рассказывается о настройке Apache для работы с репозиторием SVN.
флаг cn
Спасибо большое, сейчас читаю. Если у меня возникнут вопросы, я обновлю их здесь.
флаг cn
Я прочитал это, но до сих пор не понимаю, как это сделать, я собираюсь спросить на форуме Ubuntu, где у нас есть больше места для разговора. Если вы разместите ответ, я могу пометить его как отвеченный.
Рейтинг:0
флаг za

Предполагая, что вы используете mod_dav_svn в Apache для обслуживания Subversion, конфигурация обрабатывается Apache, и если это так, то да, это возможно. Я предлагаю вам прочитать Красная книга Subversion онлайн. На странице 188 начинается раздел «httpd, HTTP-сервер Apache», в котором подробно рассказывается о настройке Apache для работы с репозиторием SVN.

В частности, вы будете изменять файл конфигурации Apache, httpd.conf, используя директивы Limit или LimitExcept. Один из примеров, который они приводят (на стр. 194):

  <Location /svn>
  DAV svn

  SVNParentPath /var/svn

  # Authentication: Digest
  AuthName "Subversion repository"
  AuthType Digest
  AuthUserFile /etc/svn-auth.htdigest
  # Authorization: Authenticated users only for non-read-only
  #                (write) operations; allow anonymous reads
  <LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
  </LimitExcept>
</Location>

В этом примере любой может использовать методы HTTP GET, PROPFIND, OPTIONS и REPORT, но для выполнения любых других методов HTTP (таких как PUT и PROPPATCH) требуется, чтобы они были аутентифицированным пользователем.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.