基本的なLDAP認証を使用するようにSubversionリポジトリを構成しています。 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>
これは、ログインする必要がある生きている、呼吸している人々には問題なく機能します。ただし、アプリケーションアカウントにリポジトリへのアクセスを提供する必要もあります。これらのアカウントは別のOUにあります。まったく新しい<location>
要素を追加する必要がありますか、それとも既存のエントリに2番目の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>