Ustawianie uprawnień do wyświetlania dla grupy w punktach zaczepienia usługi
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Domyślnie tylko administratorzy projektu mają uprawnienia Wyświetl lub Edytuj . Aby udzielić tych uprawnień innym użytkownikom bezpośrednio, możesz użyć narzędzia wiersza polecenia lub interfejsu API REST zabezpieczeń .
Identyfikator ServiceHooks
przestrzeni nazw zabezpieczeń jest definiowany w obszarze Listy przestrzeni nazw zabezpieczeń jako cb594ebe-87dd-4fc9-ac2c-6a10a4c92046
Wymagania wstępne
Zainstaluj interfejs wiersza polecenia platformy Azure, aby uruchomić
az devops
polecenie. Jak zainstalować interfejs wiersza polecenia platformy AzureUtwórz osobisty token dostępu (PAT) dla profilu usługi Azure DevOps. Upewnij się, że jesteś członkiem grupy Administrator kolekcji projektów (PCA).
- Tożsamość (odczyt)
- Graf (odczyt)
- Zabezpieczenia (zarządzanie)
Zaloguj się do usługi Azure DevOps przy użyciu polecenia
az devops login
. Jeśli nie maszaz devops
rozszerzenia, zainstaluj je.> 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
Możesz zdefiniować organizację jako domyślną organizację. W przeciwnym razie zdefiniuj
--org "https://dev.azure.com/{organization}"
dla każdego polecenia.az devops configure --defaults organization="https://dev.azure.com/{organization}"
Sprawdź, czy możesz wyświetlić listę uprawnień dla organizacji.
az devops security permission namespace list --org "https://dev.azure.com/{organization}"
Odczytywanie tożsamości grupy i tokenu uprawnień
Znajdź deskryptor tożsamości grupy.
> az devops security group list --project ac515e82-560c-4af8-845b-9f7f968d8e7b --output table Name Descriptor ----------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------- [TEAM FOUNDATION]\EntraServiceHooksRead aadgp.Uy0xLTktMTU1MTM3NDI0NS0xMjA0NDAwOTY5LTI0MDI5ODY0MTMtMjE3OTQwODYxNi0zLTM5NTQxNzM3ODYtMTUyMTA4MTkyNS0yNTQwNTA4MjYzLTMzNDgxNjQxNjg
Jeśli chcesz filtrować według nazwy grupy, możesz użyć polecenia
findstr
lubgrep
zależnie od wiersza polecenia.Uzyskiwanie tokenu uprawnień.
> 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
Aktualizowanie uprawnień do odczytu dla punktów zaczepienia usługi
Lista możliwych uprawnień, które można zdefiniować dla
--allow-bit
elementu .- Wyświetlanie subskrypcji
- Edytowanie subskrypcji
- Usuwanie subskrypcji
- Publikowanie zdarzeń
> 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 }
Ustaw pozycję Wyświetl dostęp dla grupy. Wyświetl subskrypcje elementów servicehook równe 1 dla
--allow-bit
elementu .> 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" } ]
Uzyskaj token uprawnień, aby zobaczyć zmiany.
> 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
W poniższym przykładzie pokazano, że użytkownik może zobaczyć subskrypcje punktów zaczepienia usługi.
Resetowanie wszystkich uprawnień punktów zaczepienia usługi dla grupy
Jeśli musisz zresetować wszystkie uprawnienia punktów zaczepienia usługi dla grupy lub użytkownika, możesz wywołać metodę
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
W poniższym przykładzie pokazano, że użytkownik nie może wyświetlić subskrypcji punktów zaczepienia usługi po zresetowaniu uprawnień.