Impostare l'autorizzazione Di visualizzazione per un gruppo in Hook del servizio
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Per impostazione predefinita, solo gli amministratori del progetto dispongono delle autorizzazioni Visualizza o Modifica . Per concedere queste autorizzazioni direttamente ad altri utenti, è possibile usare lo strumento da riga di comando o l'API REST di sicurezza .
L'ID ServiceHooks
dello spazio dei nomi di sicurezza è definito in Elenca spazi dei nomi di sicurezza come cb594ebe-87dd-4fc9-ac2c-6a10a4c92046
Prerequisiti
Installare l'interfaccia della riga di comando di Azure per eseguire
az devops
il comando . Come installare l'interfaccia della riga di comando di AzureCreare un token di accesso personale (PAT) per il profilo Azure DevOps. Assicurarsi di essere un membro del gruppo Project Collection Administrator (PCA).
- Identità (lettura)
- Grafico (lettura)
- Sicurezza (gestisci)
Accedere ad Azure DevOps con
az devops login
. Se l'estensioneaz devops
non è disponibile, installarla.> 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
È possibile definire l'organizzazione come organizzazione predefinita. In caso contrario, definire
--org "https://dev.azure.com/{organization}"
per ogni comando.az devops configure --defaults organization="https://dev.azure.com/{organization}"
Controllare se è possibile visualizzare l'elenco delle autorizzazioni per l'organizzazione.
az devops security permission namespace list --org "https://dev.azure.com/{organization}"
Leggere l'identità del gruppo e il token di autorizzazione
Trovare il descrittore di identità del gruppo.
> az devops security group list --project ac515e82-560c-4af8-845b-9f7f968d8e7b --output table Name Descriptor ----------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------- [TEAM FOUNDATION]\EntraServiceHooksRead aadgp.Uy0xLTktMTU1MTM3NDI0NS0xMjA0NDAwOTY5LTI0MDI5ODY0MTMtMjE3OTQwODYxNi0zLTM5NTQxNzM3ODYtMTUyMTA4MTkyNS0yNTQwNTA4MjYzLTMzNDgxNjQxNjg
Se si vuole filtrare in base al nome del gruppo, è possibile usare
findstr
ogrep
il comando dipende dal prompt dei comandi.Ottenere il token di autorizzazione.
> 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
Aggiornare l'autorizzazione di lettura per gli hook del servizio
Elenco delle possibili autorizzazioni che è possibile definire per
--allow-bit
.- Visualizzare le sottoscrizioni
- Modifica sottoscrizione
- Eliminare sottoscrizioni
- Pubblicare eventi
> 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 }
Impostare Visualizza l'accesso per il gruppo. Visualizzare le sottoscrizioni di ServiceHooks uguale a 1 per
--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" } ]
Ottenere il token di autorizzazione per visualizzare le modifiche.
> 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
L'esempio seguente mostra che l'utente può visualizzare le sottoscrizioni degli hook del servizio.
Reimpostare tutte le autorizzazioni degli hook del servizio di un gruppo
Se è necessario reimpostare tutte le autorizzazioni degli hook del servizio di un gruppo o di un utente, è possibile chiamare
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
L'esempio seguente mostra che l'utente non è in grado di visualizzare le sottoscrizioni degli hook del servizio dopo la reimpostazione dell'autorizzazione.