首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure DevOps ServiceConnection角色Rest

Azure DevOps ServiceConnection角色Rest
EN

Stack Overflow用户
提问于 2019-12-11 08:35:04
回答 2查看 702关注 0票数 0

如何使用REST修改Azure DevOps ServiceConnection角色?

这是对应的UI

我想在“用户”角色中添加一个团队。

我一直在看

这个方向对吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-11 11:32:02

您可以使用下面的api更新服务连接的安全性。

代码语言:javascript
复制
Put https://dev.azure.com/<Org>/_apis/securityroles/scopes/distributedtask.serviceendpointrole/roleassignments/resources/<resourcesId>?api-version=5.1-preview.1"

API没有文档化。但是,当您F12浏览器时,您可以找到它。

您可以从resourceId页面中的请求url获取F12。

也可以从服务连接 UI页面URL以及

下面是powershell脚本中的示例:

代码语言:javascript
复制
$url="https://dev.azure.com/<org>/_apis/securityroles/scopes/distributedtask.serviceendpointrole/roleassignments/resources/......c5_d69e94f6-9c07-4341-bd6f-8b28e05d4b08?api-version=5.1-preview.1"

$connectionToken ="Personal Access token"

$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))

$body ='[{"roleName":"User","userId":"....a313-31d7848bcdcc"}]'

Invoke-RestMethod -Uri $url -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Method put  -ContentType "application/json" -Body $body

上面的脚本将用户分配给服务连接的用户角色权限。

您可以从F12页面中的请求体获取用户id。但是,您可能仍然需要将下面的rest用于获取用户id

代码语言:javascript
复制
GET https://vssps.dev.azure.com/{organization}/_apis/graph/users/{userDescriptor}?api-version=5.1-preview.1

您可以从userDescriptor权限页面的UI页面中为每个用户获取URL。

票数 1
EN

Stack Overflow用户

发布于 2019-12-11 15:03:52

小心那个网址..。这包含了ProjectId_ServiceEndpointId

代码语言:javascript
复制
$url="https://dev.azure.com/$OrganizationName/_apis/securityroles/scopes/distributedtask.serviceendpointrole/roleassignments/resources/$($ProjectId)_$($ServiceEndpointId)?api-version=5.1-preview.1"

ProjectId来自

代码语言:javascript
复制
https://dev.azure.com/$OrganizatioName/_apis/projects?api-version=5.1

来自属性的UserId : originId

代码语言:javascript
复制
https://vssps.dev.azure.com/$OrganizatioName/_apis/graph/groups?api-version=5.1-preview.1

ServiceEndpointId来自

代码语言:javascript
复制
https://dev.azure.com/$OrganizatioName/$ProjectId/_apis/serviceendpoint/endpoints?api-version=5.1-preview.2
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59281661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档