Git 我是否可以使用比I';更少的权限执行操作;我是被授予的吗?

Git 我是否可以使用比I';更少的权限执行操作;我是被授予的吗?,git,azure-devops,Git,Azure Devops,我不太清楚这个问题怎么说,所以我举个例子: 在我的VSTS项目中,我拥有管理员级别的权限,这意味着我可以管理所有分支、存储库等。我需要这些权限,以便在紧急情况下,我可以解决存储库中的问题,而无需执行正常的分支策略过程 我几乎从不需要这些权利,但我需要他们的1%的情况 我也是存储库的参与者,在99%的情况下,我希望与其他参与者一样受到相同的分支策略和安全限制的约束。一个简单的例子是“强制推”。普通供款人仅对他们最初推送到回购(他们“拥有”回购)的分支机构拥有强制推送权 出于上述原因,我碰巧拥有向我

我不太清楚这个问题怎么说,所以我举个例子:

在我的VSTS项目中,我拥有管理员级别的权限,这意味着我可以管理所有分支、存储库等。我需要这些权限,以便在紧急情况下,我可以解决存储库中的问题,而无需执行正常的分支策略过程

我几乎从不需要这些权利,但我需要他们的1%的情况

我也是存储库的参与者,在99%的情况下,我希望与其他参与者一样受到相同的分支策略和安全限制的约束。一个简单的例子是“强制推”。普通供款人仅对他们最初推送到回购(他们“拥有”回购)的分支机构拥有强制推送权

出于上述原因,我碰巧拥有向我们的“发布”分支机构强制推送的权利。我希望避免意外地在这个分支上执行push-force(或者绕过分支策略push,这同样危险)

基本上,有没有一种方法可以让我切换本地git配置,使其具有某种“最低特权”模式,在这种模式下,我不能做破坏性的事情,同时还能在需要时提升到更多特权

我试着签入授权令牌选项卡,但这似乎太粗糙了。我要么推动回购,要么不推动回购,不可能有进一步的细微差别

我希望避免让一个单独的用户拥有这些提升的权限,因为这会降低我们的审计能力,除非我们为每个真实用户创建一个“提升的用户”


有其他选择吗?

最好的方法是配置一个组,该组可以管理项目管理员/集合管理员组的权限,并成为该组的成员,这样您就可以随时将自己临时添加到该组中,以完成该1%的任务。同时,您将始终是一个拥有正常权限的普通贡献者

或者,为您创建第二个帐户,比如jeff-admin@yourcompany.com并切换帐户,或在私人模式下使用浏览器进行管理工作


默认情况下,VSTS中没有“受限管理模式”,您可以临时取消项目管理权限,这对VSTS网站来说是一个不错的建议。

谢谢您的想法。管理员用户是(现在仍然是)我最后的选择。您的第一个建议让我意识到,在VSTS的权限系统中并没有任何固有的规定,即集合级管理员还必须对项目中的存储库拥有超级管理员权限。这只是关于我们自己配置的一个特定细节。所以我开始讨论改变这一点,很可能是朝着你对单独小组的建议。我也可能会在UserVoice上建议一种“sudo”类型的东西,但这可能会很好地满足我最初的担忧。