azure-devops - 通过 Azure CLI 为 EventSubscription 更新 Azure DevOps 组的权限?
问题描述
我一直在通过 Azure CLI(az devops 版本 0.11.0)向自定义 Azure DevOps 服务组添加权限,并且我通常能够执行以下操作:
az devops security permission namespace list
, 查找特定命名空间的 namespaceId (如 EventSubscription)- 获取项目管理员的描述符
az devops security permission list --id $namespaceId --subject $projectAdmin.descriptor
...- 在 ACES 字典中找到一个允许位,找到相应的令牌
az devops security permission update
...使用新令牌
但是,当我为 EventSubscription 命名空间运行安全权限列表时,它会返回项目管理员组的空 JSON,因此我找不到令牌。我已经尝试过“$SUBSCRIPTION”,因为它看起来像 TFS 2010 用户使用的,但这不起作用。
问题:
如何在 EventSubscription 命名空间的项目管理员组中列出令牌?我试图看看 tfssecurity 是否会拉出任何东西,但没有奏效。还尝试使用 Fiddler 来查看它是否会找到令牌,但也没有。无法在 UI 中使用 Fiddler。
或者我应该使用什么令牌让 Azure DevOps 更新组的 EventSubscription 权限?
解决方案
我用EventSubscription
命名空间 id 和project admins group
描述符作为subject
参数进行了测试,得到了和你一样的结果。
$env:AZURE_DEVOPS_EXT_PAT = 'ckdhd6wuma5uw2h35dv37pgdum5eyjviqneineixxxxx'
$output = az devops security permission namespace list | ConvertTo-Json -Depth 100
#get descriptor
$output2 = az devops security group list --scope project | ConvertTo-Json -Depth 100
#eventSubscription namespaceId: 58b176e7-3411-457a-89d0-c6xxx/ Project namespaceId:52d39943-cb85-4d7f-8fa8-c6xxx
$output3 = az devops security permission list --namespace-id 58b176e7-3411-457a-89d0-c6xxxx --subject vssgp.Uy0xLTktMTU1MTM3NDI0NS00MjQ3MDQ2OTMyLTI2ODA1Nzg2MjktMjkxMzgyMjE4MC0yNDQ0MjYxxxxx | ConvertTo-Json -Depth 100
Write-Host $output3
但是当我使用Project
命名空间 id 和project admins group
描述符进行测试时,我可以正常获取令牌。
所以我认为这可能是EventSubscription
命名空间和project admins group
描述符之间的关联问题。可以分享一下UI中对应的操作吗?这将有助于我进一步调查。
推荐阅读
- python - 通过 Python API 运行 include_tasks
- xmlstarlet - 尝试使用 xmlstarlet 删除元素但似乎没有做任何事情
- r - 自定义函数不起作用,但逐行起作用
- javascript - 完成 XMLHttpRequest 需要哪些标头?
- c# - 遍历 EF 模型并获取属性名称
- c# - ASP.Net MVC C# 将模型视图和控制器连接在一起
- json - 使用 Kotlin 解析 Json
- sybase-ase15 - 在 ASE Sybase 15.7 中更改存储过程
- javascript - 在什么情况下忽略 useReducer 中的扩展运算符会导致错误?
- arrays - Cs50 成员引用基类型 'candidate [9]' 不是结构或联合