Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用ApacheHTTP保护SVN存储库的每个子目录?_Apache_Svn_Ldap - Fatal编程技术网

如何使用ApacheHTTP保护SVN存储库的每个子目录?

如何使用ApacheHTTP保护SVN存储库的每个子目录?,apache,svn,ldap,Apache,Svn,Ldap,我已经通过使用Apache HTTP、mod_authnz_ldap实现了对每个SVN存储库的保护,如下所示:- <Location /svn/myProject/> ... Require ldap-group some-group </Location> ... 需要ldap组某些组 无论如何,我想保护我的项目下的一些子目录,例如 <Location /svn/myProject/document> ... Requi

我已经通过使用Apache HTTP、mod_authnz_ldap实现了对每个SVN存储库的保护,如下所示:-

<Location /svn/myProject/>
    ...
    Require ldap-group some-group
</Location>

...
需要ldap组某些组
无论如何,我想保护我的项目下的一些子目录,例如

<Location /svn/myProject/document>
    ...
    Require ldap-group sa-group
</Location>

<Location /svn/myProject/code>
    ...
    Require ldap-group dev-group
</Location>

...
需要ldap组sa组
...
需要ldap组开发组
请注意,所有团队成员都可以使用项目根目录和其他子目录

<Location /svn/myProject/>
    ...
    Require ldap-group sa-group
    Require ldap-group dev-group
    Require ldap-group team-member-group
</Location>

...
需要ldap组sa组
需要ldap组开发组
需要ldap组成员组
关于上述配置,我无法保护团队成员组访问代码和文档。我不确定我是否做错了什么,希望你的帮助能给我一些启示。非常感谢您事先的帮助。我期待着很快收到你的来信

关于,

通常我们不会像这样“保护”

使用HTTP时,我们通常使用mod_svn_authz,并配置授权文件。然而,根据您以前的解决方案,缺点是默认情况下我们没有使用ldap组。(我相信在维护authz文件时应该有一些方法来使用ldap组)

对于svn authz文件,它是直截了当的,类似于:

[/]
*=
@sa-group=rw
@dev-group=rw
@team-member-group=rw

[/doc]
*=
@sa-group=rw

[/code]
*=
@dev-group=rw

恐怕你在路上会遇到比现在更多的麻烦

我从未尝试过、听到过,也无法预测在SVN WebDAV位置下重载的结果(通常从根定义提供)

为了澄清(对我而言)

  • myProject:single repository,repositories树的父目录(如何在Aapache中定义SVN位置:使用SVNPath为每个回购单独定义位置,或使用SVNPAREPATH为公共基础)
  • 您能否接受并使用mod_authz_svn为组提供的“混合”解决方案以及基于手工工作路径的授权,这些授权是由LDAP组准备的
也许,由于SVN特定的限制,您将无法在授权阶段使用mod_authnz_ldap,只能在身份验证阶段使用-所有(我知道)基于路径授权的源建议仅使用mod_authnz_SVN


也许(快速谷歌搜索的结果)博客文章会对你有用

Hi,我正在使用配置为SVNParenPath的CSVN,并使用集中式apachehttp作为该CSVN的代理。LDAP的所有身份验证都是在集中式服务器上配置的。无论如何,我可以肯定地接受任何混合和匹配的解决方案。现在我正在看你的链接并从中学习。嗨,现在我正在看你的建议和懒獾的链接并从中学习。