Definir permissão de exibição para um grupo em Ganchos de Serviço
Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019
Por padrão, apenas os Administradores de Projeto têm permissões de Exibir ou Editar . Para conceder essas permissões diretamente a outros usuários, você pode usar a ferramenta de linha de comando ou a API REST de segurança.
O ServiceHooks
ID do namespace de segurança é definido em Listar namespaces de segurança como cb594ebe-87dd-4fc9-ac2c-6a10a4c92046
Pré-requisitos
Instale a CLI do Azure para executar
az devops
o comando. Como instalar a CLI do AzureCrie um token de acesso pessoal (PAT) para seu perfil do Azure DevOps. Certifique-se de que é membro do grupo Administrador de Recolha de Projetos (PCA).
- Identidade (Ler)
- Gráfico (Ler)
- Segurança (Gerir)
Entre no Azure DevOps com
az devops login
o . Se você não tiver a extensão, instale-aaz devops
.> az devops login The command requires the extension azure-devops. Do you want to install it now? The command will continue to run after the extension is installed. (Y/n): Y
Você pode definir sua organização como organização padrão. Caso contrário, defina
--org "https://dev.azure.com/{organization}"
para cada comando.az devops configure --defaults organization="https://dev.azure.com/{organization}"
Verifique se você pode ver a lista de permissões para sua organização.
az devops security permission namespace list --org "https://dev.azure.com/{organization}"
Ler identidade do grupo e token de permissão
Encontre o descritor de identidade do seu grupo.
> az devops security group list --project ac515e82-560c-4af8-845b-9f7f968d8e7b --output table Name Descriptor ----------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------- [TEAM FOUNDATION]\EntraServiceHooksRead aadgp.Uy0xLTktMTU1MTM3NDI0NS0xMjA0NDAwOTY5LTI0MDI5ODY0MTMtMjE3OTQwODYxNi0zLTM5NTQxNzM3ODYtMTUyMTA4MTkyNS0yNTQwNTA4MjYzLTMzNDgxNjQxNjg
Se você quiser filtrar por nome de grupo, você pode usar
findstr
ougrep
comando depende do seu prompt de comando.Obter token de permissão.
> az devops security permission list --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --output table Token Effective Allow Effective Deny ------------------------------------------------------ ----------------- ---------------- PublisherSecurity 0 0 PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b 0 0
Atualizar permissão de leitura para ganchos de serviço
Lista de permissões possíveis que você pode definir para
--allow-bit
.- Ver Subscrições
- Editar Subscrição
- Excluir assinaturas
- Publicar eventos
> az devops security permission namespace show --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 [ { "actions": [ { "bit": 1, "displayName": "View Subscriptions", "name": "ViewSubscriptions", "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046" }, { "bit": 2, "displayName": "Edit Subscription", "name": "EditSubscriptions", "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046" }, { "bit": 4, "displayName": "Delete Subscriptions", "name": "DeleteSubscriptions", "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046" }, { "bit": 8, "displayName": "Publish Events", "name": "PublishEvents", "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046" } ], "dataspaceCategory": "Default", "displayName": "ServiceHooks", "elementLength": -1, "extensionType": null, "isRemotable": true, "name": "ServiceHooks", "namespaceId": "cb594ebe-87dd-4fc9-ac2c-6a10a4c92046", "readPermission": 1, "separatorValue": "/", "structureValue": 1, "systemBitMask": 0, "useTokenTranslator": true, "writePermission": 7 }
Defina o acesso de exibição para o grupo. View ServiceHooks Subscriptions é igual a 1 para
--allow-bit
.> az devops security permission update --namespace-id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --token PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b --allow-bit 1 [ { "acesDictionary": { "Microsoft.TeamFoundation.Identity;S-1-9-1551374245-1204400969-2402986413-2179408616-3-3954173786-1521081925-2540508263-3348164168": { "allow": 1, "deny": 0, "descriptor": "Microsoft.TeamFoundation.Identity;S-1-9-1551374245-1204400969-2402986413-2179408616-3-3954173786-1521081925-2540508263-3348164168", "extendedInfo": { "effectiveAllow": 1 }, "resolvedPermissions": [ { "bit": 1, "displayName": "View Subscriptions", "effectivePermission": "Allow", "name": "ViewSubscriptions" } ] } }, "includeExtendedInfo": true, "inheritPermissions": true, "token": "PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b" } ]
Obtenha um token de permissão para ver suas alterações.
> az devops security permission list --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --output table Token Effective Allow Effective Deny ------------------------------------------------------ ----------------- ---------------- PublisherSecurity 0 0 PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b 1 0
O exemplo a seguir mostra que o usuário pode ver as assinaturas de ganchos de serviço.
Redefinir todas as permissões de Ganchos de Serviço de um grupo
Se precisar redefinir todas as permissões de Ganchos de Serviço de um grupo ou usuário, você pode chamar
reset-all
.> az devops security permission reset-all --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --token PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b Are you sure you want to reset all explicit permissions for this user/group and token? (y/n): Y true > az devops security permission list --id cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 --subject <Group or user descriptor> --output table Token Effective Allow Effective Deny ------------------------------------------------------ ----------------- ---------------- PublisherSecurity 0 0 PublisherSecurity/ac515e82-560c-4af8-845b-9f7f968d8e7b 0 0
O exemplo a seguir mostra que o usuário não pode exibir assinaturas de ganchos de serviço depois que a permissão é redefinida.