如何在Windows上配置由Apache提供的SVN,以便存储库中的路径可以使用Windows域组配置访问控制?使用Windows域组的SVN路径身份验证
0
A
回答
0
您需要配置Apache以使用LDAP/AD进行身份验证,并且您必须配置path-base-authorization within SVN Repository以定义存储库的permissions within。
+0
我使用mod_auth_sspi提供基于AD的身份验证,但据我所知,它不支持指定的访问通过AuthzSVNAccessFile中的域组,尽管如果有人知道不同,我很乐意听到它。 – Neutrino 2012-03-14 15:31:36
1
经过一番研究,我想我已经使用mod_sspi和一系列Apache位置配置指令来解决这个问题。
<Location /svn>
DAV svn
SVNParentPath "D:/SvnRepos"
SVNListParentPath On
AuthType SSPI
AuthName "SVN Server"
SSPIAuth On
SSPIAuthoritative On
SSPIDomain MYDOMAIN
SSPIOfferBasic On
Require group MYDOMAIN\PRODUCT1_DEVS MYDOMAIN\PRODUCT2_DEVS
</Location>
<Location /svn/Repo/Product1>
AuthType SSPI
AuthName "SVN Product1"
SSPIAuth On
SSPIAuthoritative On
SSPIDomain MYDOMAIN
SSPIOfferBasic On
Require group MYDOMAIN\PRODUCT1_DEVS
</Location>
<Location /svn/Repo/Product2>
AuthType SSPI
AuthName "SVN Product2"
SSPIAuth On
SSPIAuthoritative On
SSPIDomain MYDOMAIN
SSPIOfferBasic On
Require group MYDOMAIN\PRODUCT2_DEVS
</Location>
这种方法的缺点是配置明智,它有点冗长,它不适用于WebSVN。第一个我不在乎,第二个我可能会在稍后修复。
尽管你对Apache和SVN的所有专家都有疑问。这种配置是否安全可靠?这似乎对我很好,但我没有看到其他任何地方提到过这种方法,所以我在没有专家反馈的情况下部署它有点紧张,而且我们没有经验丰富的Apache家伙。
===编辑===
最终我决定设立,需要使用类似于此配置特定的访问权限每个项目一个单独的存储库。
# Publishes repository 1 at url http://localhost/svn/Repo1 used mostly by team 1.
<Location /svn/Repo1>
# DAV config.
DAV svn
# Config to publish single repository.
SVNPath "D:/SvnRepos/Repo1"
# Config to publish all repositories in directory.
#SVNParentPath "D:/SvnRepos/"
#SVNListParentPath On
# Auth config.
AuthName "SVN"
AuthType SSPI
SSPIAuth On
SSPIOfferBasic On
SSPIAuthoritative On
<RequireAny>
# Allows access to any user.
#Require valid-sspi-user
# Allows access to users belonging to specified domain group(s).
Require sspi-group DOMAIN_NAME\TEAM1
# Allows access to specified domain users.
Require sspi-user DOMAIN_NAME\user1
</RequireAny>
</Location>
# Publishes repository 2 at url http://localhost/svn/Repo2 used by several teams.
<Location /svn/Repo2>
# DAV config.
DAV svn
# Config to publish single repository.
SVNPath "D:/SvnRepos/Repo2"
AuthName "SVN"
AuthType SSPI
SSPIDomain DOMAIN_NAME
SSPIAuth On
SSPIOfferBasic On
SSPIAuthoritative On
Require sspi-group DOMAIN_NAME\TEAM1 DOMAIN_NAME\TEAM2 DOMAIN_NAME\TEAM3
</Location>
我不知道,虽然我原来的配置是否有可能合作,如果我有只是删除了第一的位置元素使访问根/ SVN目录,我敢肯定,我一定是测试的,但不现在有时间来验证这一点。
相关问题
- 1. Windows身份验证 - 如何进行身份验证使用不同的域
- 2. SVN基于路径的身份验证问题
- 3. 使用LDAP身份验证的PHP SVN
- 4. 使用MySQL的SVN身份验证
- 5. 使用Windows身份验证的简单身份验证代理
- 6. 身份验证域
- 7. Powershell,svn和身份验证
- 8. 跨域/域身份验证
- 9. 使用ajax的Windows身份验证
- 10. 使用Windows身份验证的SQL Server
- 11. 使用Windows身份验证的ASP.Net WebForms
- 12. 使用Windows身份验证的Tomcat 7
- 13. IIS7&WIndows身份验证 - 验证到错误的域
- 14. 使用Windows身份验证的跨域SQL Server登录
- 15. SVN使用Trac权限组写入身份验证
- 16. 如何使用Windows身份验证
- 17. 与ASP.Net使用Windows身份验证AJAX
- 18. Windows身份验证使用WMI
- 19. VBA:使用Windows身份验证登录
- 20. 从使用Windows身份验证
- 21. 使用Outlook凭据验证Windows身份
- 22. 使用Windows身份验证与PHP?
- 23. 无法使用Windows身份验证IIS
- 24. 热而使用Windows身份验证
- 25. 在IIS中使用Windows身份验证
- 26. WCF安全使用Windows身份验证
- 27. 使用Locust.io进行Windows身份验证?
- 28. 使用Windows身份验证创建PrincipalContext
- 29. 使用Tomcat进行Windows身份验证
- 30. 使用ActiveDirectoryMembershipProvider进行Windows身份验证
这绝对属于ServerFault。 http://serverfault.com/questions/tagged/svn?sort=votes&pagesize=15 – abatishchev 2012-03-26 12:28:01