- 操作系统:OpenSUSE Linux
- 版本控制:Mercurial Hg
- 网页前端:Apache2.2
我可以点击浏览 http://servername:port/hg
当我单击它时,它会提示我输入 Windows AD 目录凭据。
现在,我在 /srv/www/htdocs/hg/repos 文件夹中有以下存储库:
- 回购项目A
- 回购项目B
- 回购项目C
单击上面的存储库链接就可以了,因为我可以看到 Hg 前端。
现在,我想添加身份验证和授权,以便:
一个)
- 只有用户“c123456”、“c654321”可以提交 RepoProjectA 中的文件。
- 只有用户“c222222”和“c333333”可以推送更改,其他人不能推送
对于上述内容,我需要更改哪些文件 (???) 以及我应该添加哪些更改/条目来实现这一点。
PS:我使用 LDAP 作为使用 Windows Active Directory 的身份验证。我是否仍然需要使用 htpasswd2 或 htdigest2 模块来创建任何用户文件——或者为了授予对组的访问权限,创建任何组文件????我认为,可以从 Active Directory 中已有的内容中获取这些组。由于这些是不同的项目存储库,我需要单独的 .htaccess 文件吗?一个全局文件就不能解决问题吗?
二)
- 只有用户“u123456”和“u654321”可以在 RepoProjectB 的分支“branch1”上提交文件。(假设我们在 RepoProjectB 中有一个分支“branch1”)。
- 只有用户“u222222”和“u333333”可以推送文件
- 没有人可以在 TRUNK/default 分支上提交/推送任何内容
- 例外:“RepoProjectB-GROUP”或“ABCDGroup”组中的每个人都可以在此存储库或其分支中执行任何操作。
对于上述内容,我需要更改哪些文件 (???) 以及我应该添加哪些更改/条目来实现这一点。
C) 我尝试在我的 Windows 客户端机器上使用 CMD 提示符和实用程序 TortoiseHg,同时在 Hg 中执行任何操作(克隆、分支、添加、提交、推送等),每次都会提示我提供用户名和密码。它正在工作,但我在 Hg 中的每一个动作都会得到提示。
如何限制让用户在每个会话中仅提供一次 Windows Active Directory 凭据。
任何人都可以放一些光。