gpt4 book ai didi

svn - 使用 svn_access_file 中的 LDAP 组设置 Subversion 存储库

转载 作者:行者123 更新时间:2023-12-02 04:52:36 24 4
gpt4 key购买 nike

如果我从头开始这样做,我会创建两个单独的存储库。不幸的是,我不得不凑合着用现有的东西。

我们的存储库如下所示:

/trunk
/tags
/branches
/secret/trunk
/secret/tags
/secret/branches

我的 SVN 配置设置如下:

<Location /gorp>
DAV svn
SVNPath /mnt/svn/repositories/gorp
AuthType basic
AuthName "Vegicorp Repostitory"
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPUrl "ldap://ldap.vegicorp.net:389/DC=vegicorp,DC=NET?sAMAccountName" NONE
AuthLDAPBindDN "CN=ldap-read,,OU=Users,OU=vegicorp,DC=vegicorp,DC=net"
AuthLDAPBindPassword swordfish
Require ldap-group CN=Development,OU=Groups,OU=vegicorp,DC=vegicorp,DC=net
AuthzSVNAccessFile /opt/CollabNet_Subversion/repos_path_access/gorp
</Location>

这很好用。 LDAP 组Development 中的所有用户都可以访问我们的存储库。但是,并非所有开发人员都应该能够看到 secret 目录。相反,我只希望 cabal LDAP 组中的用户能够访问它。

而且,我的文件 gorp 位于上述 repos_path_access 访问目录下,如下所示:

[/]
* = r

[/trunk]
* = rw

[/branches]
* = rw

[/tags]
* = rw

[/secret]
dvadar = rw
cpalpatine = rw
glucas = rw
* =

到目前为止,一切都很好。我的 cabal 组用户 dvadarcpalpatineglucas 有权访问 /secret 我的存储库中的目录,其他人甚至没有看到它。但是,随着人们来来去去,我必须手动更改此基于路径的访问文件。我想做的是让我的基于路径的访问权限为 cabal 中的每个人提供访问权限,并为其其他人隐藏它:

[/]
* = r

[/trunk]
* = rw

[/branches]
* = rw

[/tags]
* = rw

[/secret]
@cabal = rw
* =

这不起作用。相反,我在日志中看到了这一点:

Tue Sep 03 11:30:50 2013] [error] [client 10.55.9.217] \
Failed to load the AuthzSVNAccessFile: An authz rule refers to group '@cabal'

让我的 cabal 组访问 secret 而不让其他开发人员看到此目录的最佳方式是什么?

最佳答案

明显的方法:

在 AuthzSVNAccessFile 中定义 cabal 组成员。

  • 您可以手动完成(当成员资格发生变化时,每次都编辑成员)
  • 您可以找到并使用 LDAP-to-Authz 同步脚本(在此处提到,在某处)来更新 @cabalCN=cabal LDAP 中已更改

棘手的方法

  • 您可以添加额外的<Location /gorp/secret>改变Require ldap-group完全在 LDAP 中指令和维护组

关于svn - 使用 svn_access_file 中的 LDAP 组设置 Subversion 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18597733/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com