当我试图将项目管理员的访问权限从Reader更改为Administrator时,我得到
Access Denied: e...4 needs the following permission(s) on the resource Environments/f...6/7 to perform this action: Administer Permissions其中e...4对应于Azure DevOps服务中我的用户的id。

(我是项目管理员)
谁能授予这些管理权限?是某种组织管理员吗?它的屏幕在哪里?文件?Rest?
我什么也找不到。
发布于 2022-11-23 11:11:26
如果UI接口操作不当,即使PCA (Project Collection Administrators)或Organization Owner也将被困在这里的UI接口中( PCA/ORG所有者也可能在Env权限设置的UI接口中失去对Env的所有操作权限)。但是REST可以摆脱这种情况。
这里有一个REST文档,但是没有一个特定的文档。
您可以使用f12来捕获详细请求(UI也基于上面的REST )。
我编写了一个python演示来实现您的需求。
import requests
import json
url = "https://dev.azure.com/<Organization Name>/_apis/securityroles/scopes/distributedtask.environmentreferencerole/roleassignments/resources/<Project ID>_<Env ID>?api-version=5.0-preview.1"
payload = json.dumps([
{
"userId": "<User ID>",
"roleName": "Administrator"
}
])
headers = {
'Authorization': 'Basic <Your Personal Access Token>',
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, data=payload)
print(response.text)使用列表项目REST获取项目id。
使用列表用户REST获取用户ID。
从Env页面url获取Env ID。
https://stackoverflow.com/questions/74535217
复制相似问题