我想知道是否可以使用例如在 allow_read 和/或 allow_push 等中的 apache authgroup 文件中指定的组。
所以基本上我所做的是使用带有 authfile 和 authgroup 文件的 apache 来验证用户。
现在我想限制使用 allow_read 的某些存储库向 authgroup 文件中指定的特定组中的用户显示。
假设我的 auth 文件中有 sam、frodo 和 sauron,我的 authgroup 文件中有一个包含 sam 和 frodo 的组霍比特人。
所以而不是写:
allow_read = 佛罗多,山姆
我试过
allow_read = @hobbits
但这似乎不起作用。有谁知道这是否真的得到支持?这个想法是,如果我说 10 个存储库只对霍比特人可读,并且我添加了一个霍比特人,我只需要更改 authgroup 和 auth 文件,而不是每个存储库 hgrc 文件。
提前致谢
最佳答案
Mercurial 没有任何内置的组支持。有一个来自用户的补丁添加了组支持,但编码人员似乎对默认情况下包含它犹豫不决,他们希望贡献者使用它来制作插件。截至 2013 年 4 月,他们 seem to have accepted it ,但我在当前随 Ubuntu (2.7) 附带的版本中仍然看不到它的踪迹。
正如 Joel 所建议的那样,当您拥有多个存储库时,在 Apache 中控制组不会给您任何精细的控制,因此它没有用(至少对我来说不是)。
我最终使用了开源工具 SCM-Manager为了它。 SCM-Manager 作为 SVN、Git 和 Mercurial 的前端,支持各种用户目录(包括 LDAP 和 Crowd)以及自己的用户目录。
我正在使用 mod_proxy 将它集成到我的 Apache 配置中,并且运行良好。
关于authentication - 在 mercurial 的 allow_read、allow_push 等中使用组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6745607/