拒绝访问。需要对池默认使用权限才能执行该操作

时间:2019-04-24 02:00:33

标签: azure-devops azure-pipelines-release-pipeline azure-aks

尝试在Azure开发人员上保存发布管道时出现以下错误。我需要向管理员询问什么确切权限?

Access denied. <<user id>> needs Use permissions for pool Default to perform the action. For more information, contact the Azure DevOps Server administrator.

3 个答案:

答案 0 :(得分:2)

我发现将 Admin 授予一个池非常令人困惑(并且解决起来很耗时),但我想我可以解释我是如何让它为我的组织工作的。这是基于@Leo Lui-MSFT 所说的进一步解释,因为这对我来说还不够清楚。

我的问题:我想授予用户更新用户未创建的池(即,不是所有者)的权限。

尝试的解决方案:在池中设置用户 Admin 并没有让用户这样做。

成功的解决方案:我必须转到 https://dev.azure.com/my-org/_settings/agentpools > Security > Add 。然后我添加了用户并分配了管理员角色。

这会产生副作用,即为组织中的每个池授予用户管理员权限(这不是我想要做的)。如果这不是您的愿望,请进入您不想授予管理员访问权限的池,关闭继承,然后从该池中删除用户。

对我来说,这感觉不对。我应该能够让用户成为单个池的管理员,而无需向所有池授予组织范围的管理员。

此外,由于所有池似乎都是在继承默认为 true 的情况下创建的,然后从所有其他池中删除该用户作为管理员可能很耗时,并且当创建更多池时,我需要记住关闭继承。

这是我的经验。如果我遗漏了什么,请告诉我。

答案 1 :(得分:1)

  

我需要询问管理员哪些确切权限?

您需要向管理员询问用户权限。

当我们转到“项目设置”->“代理池”->“代理名称”->“安全性”时:

change the column type

查看文档enter image description here,了解更多详细信息。

  

角色也定义在每个组织代理程序池上,并且   这些角色的成员资格决定了您可以执行的操作   代理池。

     

“代理程序池”选项卡中的“所有代理程序池”节点用于控制   项目中所有项目代理池的安全性。的角色成员   单个项目代理池会自动从那些继承   “所有代理程序池”节点的名称。默认情况下,以下组是   已添加到“所有代理程序池”的管理员角色:构建   管理员,发布管理员,项目管理员。

因此,您应该从管理员那里获得用户权限,或者将您的帐户添加到上述组之一中,然后重试。

希望这会有所帮助。

答案 2 :(得分:-2)

您应该拥有组织级别的访问权限才能消除收到的错误消息。

如果您创建了组织,您将成为该组织的所有者,您应该拥有所有管理员访问权限来执行您的管道需要的任何操作。

否则,选择组织 -> 进入组织设置 -> 代理池 [左平面] -> 安全性 [右上] -> 以您的名字添加一个具有管理员角色的新用户

对项目级别设置尝试相同的方法。