如何授予单个用户访问BitBucket上特定分支的权限?

时间:2019-01-10 00:12:27

标签: git permissions bitbucket branch git-branch

我们希望向某些人提供对某些存储库的读/写访问权限,但要避免再读取某些包含敏感数据的分支。

我们正确地理解,当我们允许某些用户访问分支时,他将访问从最高叶到较大祖先的所有提交,这是正确的。我们只想避免从其他分支访问所有未合并的提交(叶)。或者避免访问具有不相关历史记录的分支。

我们已经看到了“分支权限”选项,但是我们似乎并不完全了解它。我是否必须授予用户对整个存储库的读取权限,然后通过该功能添加更严格的权限?看来我们无法通过该限制添加更多限制性权限...

1 个答案:

答案 0 :(得分:1)

这是不可能的。 Git不会对跟踪的文件强制执行所有权或权限,因此任何可以读取存储库的用户都可以读取该存储库中的任何文件(在任何分支上)。此外,您提到的分支权限仅适用于Bitbucket本身,不适用于本地克隆,因此,即使Bitbucket采取某种方式让您限制对给定分支的读取,用户也可以只克隆存储库并在本地读取所有禁止的内容。 (并且由于在Git中无法实现,因此在Bitbucket以外的主机上也无法实现。)

出于这个确切的原因,将密码和API密钥保留在存储库中也是一个糟糕的想法-即使您在Bitbucket上进行了严格控制(例如),您仍然必须应对安全性每个人的本地系统的含义。 (他们是否掌握了操作系统更新?他们是否使用强密码登录他们的东西?如果他们的计算机被盗了,怎么办?)

如果您确实必须与该用户共享某些内容,则可以使用不包含敏感详细信息的私有fork。不过,否则,您最好重新评估存储库的结构。