因此,为了更新资源的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 DevOps REST API“管道权限 - 更新资源的管道权限”用于更新使用以下资源的管道权限:代理池、环境、代理队列、存储库、安全文件、服务连接和可变组。
目前还没有相应的Azure DevOps CLI可以做同样的事情。每个资源也没有单独的 CLI 来更新资源上的管道权限。
如果您的项目确实需要此功能,我建议您尝试在开发者社区上报告功能请求。这将使产品团队更方便地接收和理解您的想法。您的反馈也可能有助于改进 Azure DevOps 产品。
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}"
},