LINUX.ORG.RU
ФорумAdmin

svn + авторизация


0

2

Доброго времени суток! Задался вопросом поднятия svn с авторизацией из LDAP и SQL, а также доступ на чтение анонимным пользователям, еще бы доступ через http. Поделитесь, пожалуйста, опытом ну или документацией.

★★★

Насчёт SQL не подскажу, но для ldap ты можешь поставить спереди апач, настроить dav_svn и использовать авторизацию так: Файл authorization.include:

  AuthType Basic
  AuthName "Access to REPO company information"
  AuthBasicProvider ldap
  AuthzLDAPAuthoritative off
  AuthLDAPURL "ldap://ldap.company.com/ou=myou, dc=company, dc=com?sAMAccountName?sub"
  AuthLDAPBindDN ldap_auth_user@company.com #readonly user
  AuthLDAPBindPassword password
  #Require ldap-filter mail=*@company.com
  Require valid-user

  Order allow,deny
  Allow from all
Потом ещё нужно указать locations (например, у меня есть каталог где хранится куча svn-репозиториев:
<Location />
        DAV svn
        SVNParentPath /opt/subversion

        include /etc/apache2/authorization.include # авторизация для этого location
</Location>

Права: их можно устанавливать через Require ldap-group groupname:

<Location /restrictedrepo>
        include /etc/apache2/authorization.include # авторизация
        Require ldap-group admins
</Location>

тогда у тебя будет http://yourapacheserver/reponame/ -> /opt/subversion/reponame

Анонима можно пускать через другой виртуалхост в readonly без авторизации или сделать отдельный location.

ПС. Конечно, апачу нужен mod_ldap

ППС. Ещё как-то можно раздавать права на репозитории через dav_authz-файл, я так делал для apache2+atlassian crowd.

sirex
()
Ответ на: комментарий от sirex

Спасибо! А через pam_ldap не пробовали?

nuxster ★★★
() автор топика
Ответ на: комментарий от level1

Про SVN забыть как про страшный сон, поставить Mercurial.

Fixed.

unfo ★★★★★
()
Ответ на: комментарий от nuxster

Слияние веток намного проще и у каждого разработчика свое хранилище со своим набором веток.

level1 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.