gpt4 book ai didi

authentication - 验证 Mercurial Changesets 来自他们所说的来自谁

转载 作者:行者123 更新时间:2023-12-04 08:28:08 26 4
gpt4 key购买 nike

我正在研究在企业环境中使用 Mercurial。该计划是使用由网络服务器 (IIS) 托管的中央存储库,一旦开发人员在本地或团队内部测试了更改,他们就会推送到该存储库。

我已将 IIS 配置为针对 Active Directory 对用户进行身份验证,但似乎存在一个漏洞,虽然我可以强制执行谁可以推送,但我无法强制他们以自己的身份签署变更集。

例如,给定一个基本的“提交”场景:

  • 用户提交到他们的本地存储库
  • 用户将他们的更改推送到中央存储库

  • 在第 1 步中,用户向他们的本地存储库提供用户名(通过他们的 .hgrc 文件或其他),但实际上没有任何方法可以强制这是他们的“真实”用户名。

    在第 2 步中,用户必须向 IIS 提供他们的“真实”凭据才能被允许推送,但他们的变更集将使用他们在第 1 步中提供的任何用户名显示在历史记录中。似乎 bob 使用“alice”作为他的第 1 步的用户名,他可以确保爱丽丝因他的任何错误更改而受到指责。

    有没有办法确保这些用户名在推送期间匹配(通过 Hook 或其他方式)?或者,是否有其他方法可以确保长时间更改的合理程度的真实性?

    编辑:进一步考虑,我想我实际上并不想强制这些名称排列在一起。如果 Bob 和 Alice 一直在一个单独的 repo 中进行合作,那么 Bob 最终应该能够推送他们所有的更改,而不仅仅是他自己的。我真正想要的只是确保如果归根结底,我可以以更明确的方式判断谁做了哪些更改,而不仅仅是应用了任何用户名。

    我在想 GpgExtension是答案的一部分,但我仍然认为我没有全面了解。

    最佳答案

    我最终找到了this discussion ,这基本上是说我的选择基本上是让每个人都使用 GPG 签署变更集,或者在 mercurial 之外设置一个“推送日志”来跟踪用户将什么推送到中央存储库。

    Ry4an 也指出了这一点(基本上是重复的)question有一些很好的答案证实了我在其他地方发现的东西。

    关于authentication - 验证 Mercurial Changesets 来自他们所说的来自谁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3284642/

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