我们目前有一个使用svn_auth_file
授权定义的 Subversion 存储库。我想将其更改为使用我们的 LDAP 服务器(Windows Active Directory 服务器)。这样,如果用户属于正确的组,他们就可以使用他们的 Windows 密码并获得对存储库的访问权限。
我想通过为同一存储库创建第二个定义来测试这一点。第一个<location>
是当前存在的。第二个<location>
是我想要添加的。
请注意,http://svn.vegicorp.com/svn/development
和http://svn.vegicorp.com/dev
指向同一个存储库。第一个使用svn_auth_file
,第二个使用 LDAP 服务器。
我的问题是这种设置有什么害处吗?让不同的人以两种不同的方式访问存储库会有什么害处吗?
User csvn
Group csvn
<Location /svn>
DAV svn
SVNParentPath /mnt/svn/repositories
AuthzSVNAccessFile /etc/opt/CollabNet_Subversion/conf/svn_access_file
# Satisfy Any
Require valid-user
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /etc/opt/CollabNet_Subversion/conf/svn_auth_file
<location /dev>
DAV svn
SVNPath /mnt/svn/repositories/development
AuthType basic
AuthName "Subversion repository"
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPURL "ldap://nycd01.vegicorp.com:389/dc=vegicorp,dc=com?sAMAccountName" NONE
AuthLDAPBindDN "CN=svnuser,OU=Users,OU=Accounts,DC=vegicorp,DC=com"
AuthLDAPBindPassword "swordfish"
Require ldap-group CN=Development,OU=Groups,DC=vegicorp,DC=com
</location>
答案1
由于 LDAP单身的authz 方法在/dev
位置,我想AuthzLDAPAuthoritative on
会更正确
http://svn.vegicorp.com/svn/development
并且http://svn.vegicorp.com/dev
是不同的、独立的资源,不同的存储库(正式的)具有不同的用户集。它们可以并行使用,很容易