Назад | Перейти на главную страницу

Конфигурация Subversion LDAP

Я настраиваю репозиторий Subversion для использования базовой аутентификации LDAP. У меня есть запись в моем http.conf файл, который выглядит так:

<Location /company/some/location>
DAV svn
SVNPath /repository/some/location
AuthType Basic
AuthName LDAP
AuthBasicProvider ldap
Require valid-user
AuthLDAPBindDN "cn=SubversionAdmin,ou=admins,o=company.com"
AuthLDAPBindPassword "XXXXXXX"
AuthLDAPURL "ldap://company.com/ou=people,o=company.com?personid"
</Location>

Это прекрасно работает для живых, дышащих людей, которым необходимо войти в систему. Однако мне также необходимо предоставить учетным записям приложений доступ к репозиторию. Эти учетные записи находятся в другом подразделении. Мне нужно добавить совершенно новый <location> элемент, или я могу добавить второй AuthLDAPURLк существующей записи?

Вы можете использовать mod_authn_alias для создания псевдонимов для ваших провайдеров. Был пример в этот вопрос практически для того же варианта использования:

<AuthnProviderAlias ldap alpha>
  AuthLDAPBindDN "CN=Subversion,OU=Service Accounts,O=Alpha"
  AuthLDAPBindPassword [[REDACTED]]
  AuthLDAPURL ldap://dc01.alpha:3268/?sAMAccountName?sub?
</AuthnProviderAlias>

<AuthnProviderAlias ldap beta>
  AuthLDAPBindDN "CN=LDAPAuth,OU=Service Accounts,O=Beta"
  AuthLDAPBindPassword [[REDACTED]]
  AuthLDAPURL ldap://ldap.beta:3268/?sAMAccountName?sub?
</AuthnProviderAlias>

# Subversion Repository
<Location /svn>
  DAV svn
  SVNPath /opt/svn/repo
  AuthName "Subversion"
  AuthType Basic
  AuthBasicProvider alpha beta
  AuthzLDAPAuthoritative off
  AuthzSVNAccessFile /opt/svn/authz
  require valid-user
</Location>