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

gv8xihay  于 2023-10-22  发布在  其他
关注(0)|答案(2)|浏览(128)

因此,对于更新资源Azure管道权限,我已经发现我们可以通过使用API调用(如https://learn.microsoft.com/en-us/rest/api/azure/devops/approvalsandchecks/pipeline-permissions/update-pipeline-permisions-for-resource?view=azure-devops-rest-7.1&tabs=HTTP)来实现
问题是,我们能否利用这一点来实现同样的结果?
对于权限管理,我只找到了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之类的事情,而不是我要找的东西
所以想知道是否有方法使用仅限补丁的方式来实现上述补丁操作
非常感谢

zujrkrfu

zujrkrfu1#

在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}"
  },
ki0zmccv

ki0zmccv2#

Azure DevOps REST API“Pipeline Permissions - Update Pipeline Permisions For Resource“用于更新使用以下资源的管道权限:代理池、环境、代理队列、存储库、安全文件、服务连接和变量组。
目前,没有相应的Azure DevOps CLI可以做同样的事情。每个资源也没有单独的CLI来更新资源上的管道权限。
如果您的项目确实需要此功能,我建议您尝试在Developer Community上报告功能请求。这将使产品团队更方便地接收和理解您的想法。您的反馈也可能有助于改进Azure DevOps产品。

相关问题