如何使用 CLI 更新资源的 Azure 管道权限

问题描述 投票:0回答:2

因此,为了更新资源的Azure管道权限,我已经发现我们可以通过使用API调用来实现这一点,例如https://learn.microsoft.com/en-us/rest/api/azure/devops/approvalsandchecks/pipeline-权限/update-pipeline-permissions-for-resource?view=azure-devops-rest-7.1&tabs=HTTP

问题是我们可以使用 cli 来达到相同的结果吗?

对于 cli 权限管理,我只找到了 https://learn.microsoft.com/en-us/azure/devops/organizations/security/manage-tokens-namespaces?view=azure-devops#update-permissions 但它只做类似

You can assign allow or deny permissions to a specified user or group
的事情,不完全是我想要的

所以想知道是否有办法只使用cli来实现上面的补丁操作

非常感谢

azure azure-devops azure-pipelines azure-cli azure-security
2个回答
0
投票

Azure DevOps REST API“管道权限 - 更新资源的管道权限”用于更新使用以下资源的管道权限:代理池、环境、代理队列、存储库、安全文件、服务连接和可变组。

目前还没有相应的Azure DevOps CLI可以做同样的事情。每个资源也没有单独的 CLI 来更新资源上的管道权限。

如果您的项目确实需要此功能,我建议您尝试在开发者社区上报告功能请求。这将使产品团队更方便地接收和理解您的想法。您的反馈也可能有助于改进 Azure DevOps 产品。


0
投票

Azure CLI 中没有专门的选项。但在这种情况下,你总是可以使用

az devops invoke

[这里]是一篇关于 this 的非常好的博客文章,但一般来说,您的电话应该是这样的

# Write the JSON body to disk
'Json content' | Out-File -FilePath .\body.json
 
# PATCH the build with a cancelling status
az devops invoke `
     --area pipelinePermissions `
     --resource pipelinePermissions `
     --organization https://dev.azure.com/myorgname `
     --route-parameters `
          project="MyProject" `
          resource="ResourceName" `
          resourceType="someType"  `
          resourceId="SomeId" `
     --in-file .\body.json `
     --http-method patch

基于此条目

  {
    "area": "pipelinePermissions",
    "id": "b5b9a4a4-e6cd-4096-853c-ab7d8b0c4eb2",
    "maxVersion": 7.2,
    "minVersion": 5.1,
    "releasedVersion": "0.0",
    "resourceName": "pipelinePermissions",
    "resourceVersion": 1,
    "routeTemplate": "{project}/_apis/pipelines/{resource}/{resourceType}/{resourceId}"
  },
© www.soinside.com 2019 - 2024. All rights reserved.