【问题标题】:How to restrict access to Pipelines in Azure DevOps如何在 Azure DevOps 中限制对管道的访问
【发布时间】:2018-11-24 09:18:56
【问题描述】:

我需要限制访问,以便用户不能:

  1. 查看或访问管道或其任何子功能,包括构建、发布、库、任务组、部署组
  2. 创建或编辑构建管道

我关注了这个:
https://docs.microsoft.com/en-us/azure/devops/pipelines/policies/set-permissions?view=vsts

我将所有权限设置为拒绝。但是,用户仍然可以同时执行上述 (1) 和 (2)。

问题:我可以选择 (1) 或 (2) 吗?

【问题讨论】:

  • 我不知道这些是否是附加的,但您需要确保用户不属于某个安全组,该安全组允许他执行您试图阻止他执行的任何操作
  • @4c74356b41 我需要设置什么安全设置来限制访问?我在链接文章之后设置的安全设置似乎仅适用于构建。版本等很可能有自己的安全设置。我希望它使所有 Pipeline 功能都被禁用/无法访问。
  • 用户是有效用户/贡献者的一部分。我在此下创建了一个名为 Developers 的组,如果有的话,我已经拒绝了这些组中的几个权限。我没有明确地将任何内容设置为“允许”。

标签: azure-devops


【解决方案1】:

安全下的组织设置中,您可以设置:

  • 管理构建资源
  • 使用构建资源
  • 查看构建资源

我会说那些应该是拒绝

我个人在测试这些东西时遇到了一些权限缓存问题。 注销并重新登录通常不会立即更改权限。

更新: 在 Pipelines->Release 下,您可以单击 3 个点,那里有一个包含以下内容的安全子站点:

添加用户或组并在这些设置上设置拒绝为我修复了它。 不幸的是,这似乎是基于发布管道的。

更新 2: 您可以在查看版本时进入文件夹视图,然后可以创建一个文件夹来放置所有发布管道,然后在文件夹的基础上,您可以将安全设置设置为拒绝您的用户或组,这样就可以了继承到每个文件夹。

开发人员需要记住在该文件夹中创建发布管道。

您需要在根目录中有管道,否则您将无法看到安全按钮。 (在新旧导航设计中测试)

【讨论】:

  • 在我们的系统上进行快速测试后,我的测试用户仍然可以看到 ReleasesDeployment groups 但没有任何与构建相关的内容,我会回来查看稍后看看可能的缓存清除后是否仍然如此。
  • @Ash 我注意到我可以通过单击部署组本身下的安全性并删除贡献者(我在里面有我的测试用户)来删除部署组的内容,在其他任何地方都没有拒绝权限我可以找到,你仍然可以看到菜单但看不到内容。
  • @Ash 看到我更新的答案,它也限制了访问,但您仍然可以看到菜单项,这意味着您可以创建发布管道和部署组,虽然它们没有创建按钮,所以实际上是不可能的。
  • 谢谢吉姆。 Update2 为我工作。我已经尝试过构建,我的测试用户确实无法查看或创建任何管道。我将使用版本、部署组等进行测试,并让您知道相同的技术是否也适用于这些。顺便说一句,您知道是否有一种方法可以为您的所有项目导入这些设置?因为这些特定的安全设置是每个项目的,我需要这些设置是组织范围的。
  • @ash 我们也有类似的愿望,希望限制标准 ADO 团队成员查看发布管道的发布日志……例如。我们在 Azure KeyVault 中保护了环境变量,然后 ADO 在变量组中进行保护,但是任何有权编辑管道或 YAML 的人都可以简单地将变量转储到正在处理的日志页面。您知道限制可以阅读构建/发布日志的用户的有效方法吗?
猜你喜欢
  • 1970-01-01
  • 2021-01-22
  • 2020-09-06
  • 1970-01-01
  • 2019-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-22
相关资源
最近更新 更多