【问题标题】:Update permissions for Azure DevOps group for EventSubscription through Azure CLI?通过 Azure CLI 为 EventSubscription 更新 Azure DevOps 组的权限?
【发布时间】:2020-03-21 01:34:30
【问题描述】:

我一直在通过 Azure CLI(az devops 版本 0.11.0)向自定义 Azure DevOps Services 组添加权限,并且我通常能够执行以下操作:

  1. az devops security permission namespace list,查找特定命名空间的namespaceId(如EventSubscription)
  2. 获取项目管理员的描述符
  3. az devops security permission list --id $namespaceId --subject $projectAdmin.descriptor...
  4. 在 ACES 字典中找到一个允许位,找到相应的令牌
  5. az devops security permission update... 使用新令牌

但是当我为 EventSubscription 命名空间运行安全权限列表时,它会返回项目管理员组的空 JSON,因此我找不到令牌。我已经尝试过“$SUBSCRIPTION”,因为它看起来像 TFS 2010 用户使用的,但这不起作用。

问题:

  1. 如何在 EventSubscription 命名空间的项目管理员组中列出令牌?我试图看看 tfssecurity 是否会拉出任何东西,但没有奏效。还尝试使用 Fiddler 来查看它是否会找到令牌,但也没有。无法在 UI 中使用 Fiddler。

  2. 或者我应该使用什么令牌让 Azure DevOps 更新组的 EventSubscription 权限?

【问题讨论】:

    标签: azure-devops azure-cli


    【解决方案1】:

    我用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描述符测试时,我可以正常获取token。

    所以我认为这可能是EventSubscription 命名空间和project admins group 描述符之间的关联问题。可以分享一下UI中对应的操作吗?这将有助于我进一步调查。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    • 2020-03-30
    相关资源
    最近更新 更多