Definir permissão de visualização para um grupo em Ganchos de serviço
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Por padrão, somente os administradores de projeto têm permissões de visualização ou edição . 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.
A ServiceHooks
ID do namespace de segurança é definida 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 PAT (token de acesso pessoal) para seu perfil do Azure DevOps. Verifique se você é membro do grupo PCA (Administrador de Coleção de Projetos).
- Identidade (Leitura)
- Gráfico (Leitura)
- Segurança (Gerenciar)
Entre no Azure DevOps com
az devops login
o . Se você não tiver aaz devops
extensão, instale-a.> 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 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, poderá usar
findstr
ougrep
command depende do 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
o .- Ver assinaturas
- Editar Assinatura
- 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 visualização para o grupo. Exibir assinaturas de ServiceHooks é 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 o 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 você precisar redefinir todas as permissões de ganchos de serviço de um grupo ou usuário, poderá 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.