Is there a way to get user permissions in a specific Azure Devops Project using rest api?

耗尽温柔 提交于 2020-02-22 07:53:12

问题


Hi I want to check the permissions of a user in a specific Azure Devops Project. Is there a possible way to get it? As far as I know project level permission is different than organization level permissions. Thanks.

Already test some several rest apis but still I can't have the project level permission.


回答1:


There is currently no out-of-the-box rest api to get the user's permission in project.

To achieve this demand, you can use this rest api :

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

Request body:

{
    "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)"
                }
            }
        }
    }
} 

You can track this rest api by press F12 in browser then select Network .Then looking for the record that response body included returned permission. From this record you can get the rest api and request body.

I tested with postman , with this api ,I can successful get user's permission in project. As shown below:



来源:https://stackoverflow.com/questions/58091332/is-there-a-way-to-get-user-permissions-in-a-specific-azure-devops-project-using

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!