有没有办法使用RESTAPI获取特定Azure Devops项目中的用户权限?

有没有办法使用RESTAPI获取特定Azure Devops项目中的用户权限?,azure,permissions,azure-devops,azure-devops-rest-api,Azure,Permissions,Azure Devops,Azure Devops Rest Api,您好,我想检查特定Azure Devops项目中用户的权限。有没有可能的办法得到它?据我所知,项目级权限不同于组织级权限。谢谢 已经测试了一些rest api,但我仍然无法获得项目级权限。目前没有现成的rest api来获得用户在项目中的权限 为了满足这一需求,您可以使用以下rest api: https://dev.azure.com/{org}/_apis/Contribution/HierarchyQuery?api-version=5.0-preview.1 请求机构: { "

您好,我想检查特定Azure Devops项目中用户的权限。有没有可能的办法得到它?据我所知,项目级权限不同于组织级权限。谢谢


已经测试了一些rest api,但我仍然无法获得项目级权限。

目前没有现成的rest api来获得用户在项目中的权限

为了满足这一需求,您可以使用以下rest api:

https://dev.azure.com/{org}/_apis/Contribution/HierarchyQuery?api-version=5.0-preview.1
请求机构:

{
    "contributionIds": ["ms.vss-admin-web.org-admin-permissions-pivot-data-provider"],
    "dataProviderContext": {
        "properties": {
            "subjectDescriptor": "msa.ZjE1ZTk0NmMtOTI4OS03Mjg5LTljMGUtMDIwMTdlYmM2Nzhj",
            "sourcePage": {
                "url": "https://dev.azure.com/xxx/xxxx/_settings/permissions",
                "routeId": "ms.vss-admin-web.project-admin-hub-route",
                "routeValues": {
                    "action": "Execute",
                    "adminPivot": "permissions",
                    "controller": "ContributedPage",
                    "project": "XXX",
                    "serviceHost": "0933e8b2-f504-4b7e-9e9e-xxxxx (xxx)"
                }
            }
        }
    }
} 
您可以通过在浏览器中按F12,然后选择网络,然后查找响应主体包含的返回权限的记录来跟踪此rest api。从这个记录中,您可以获得RESTAPI和请求主体。

我用postman进行了测试,有了这个api,我可以在项目中成功地获得用户的许可。如下图所示:

同意@Hugh,您可以通过{orgname}/_api/graph/users?api version=5.1-preview.1获取用户的描述符id。您可以在中获得更详细的信息,谢谢!今天我将对此进行测试,测试完成后我会告诉您结果:)结果显示我无权访问上述资源您是否将PAT添加为Authorization中的Basic Auth?如果您使用IE或Edeg浏览器,请求正文应显示,如回答中的图片所示。嗨,艾比,你的测试结果是什么,我的方法可行吗?