Verwalten von Berechtigungen mit dem Befehlszeilentool
Azure DevOps Services
Berechtigungen gewähren Zugriff auf eine bestimmte Aktion auf einer bestimmten Ressource wie in Erste Schritte beschrieben mit Berechtigungen, Zugriff und Sicherheitsgruppen. Sie verwalten die meisten Berechtigungen über das Webportal. Sie können jedoch Berechtigungen mithilfe von Befehlszeilentools oder der REST-API verwalten.
Azure DevOps gewährt standardmäßig eine Reihe von Berechtigungen für Mitglieder der Standardsicherheitsgruppen. Sie können Berechtigungen auf einer detaillierteren Ebene mit den az devops security permission
Befehlen hinzufügen und verwalten. Verwenden Sie diese Befehle, um:
- Anzeigen der Berechtigungen, die mit Sicherheitsnamespaces verknüpft sind
- Details zu diesen Berechtigungen anzeigen
- Aktualisieren oder Zurücksetzen von Berechtigungen
Hinweis
Namespaces und Token sind für alle Versionen von Azure DevOps gültig. Die hier aufgeführten Versionen sind für Azure DevOps 2019 und höher gültig. Namespaces unterliegen der Änderung im Laufe der Zeit. Um die neueste Liste der Namespaces abzurufen, führen Sie eine der Befehlszeilentools oder REST-API aus. Einige Namespaces wurden im Sicherheitsnamespace und im Berechtigungsverweis aufgeführt, veraltete und schreibgeschützte Namespaces..
Voraussetzungen
- Um Token und Namespaces zu verwalten, müssen Sie Mitglied der Sicherheitsgruppe Project Sammlungsadministratoren sein. Weitere Informationen zu Token finden Sie unter Sicherheitsnamespace und Berechtigungsreferenz.
- Sie müssen die Azure DevOps CLI-Erweiterung wie in Erste Schritte mit Azure DevOps CLI beschrieben installiert haben.
- Melden Sie sich mit
az login
Azure DevOps an. - Legen Sie für die Beispiele in diesem Artikel die Standardorganisation wie folgt fest:
- Für Azure DevOps Services:
az devops configure --defaults organization=YourOrganizationURL
. - Für Azure DevOps Server:
az devops configure --defaults organization=https://ServerName/CollectionName
- Für Azure DevOps Services:
Sicherheitsberechtigungsbefehle
Geben Sie den folgenden Befehl ein, um alle verfügbaren Befehle auflisten zu können.
az devops security permission -h
Weitere Informationen zu Konzepten im Zusammenhang mit Sicherheitsberechtigungen finden Sie in der Dokumentation zur Security REST-API
Get-Help | BESCHREIBUNG |
---|---|
az devops security permission list |
Listentoken für angegebene Benutzer oder Gruppen und Namespace auf. |
az devops security permission namespace list |
Listet alle verfügbaren Namespaces für eine Organisation auf. |
az devops security permission namespace show |
Zeigen Sie Details der in jedem Namespace verfügbaren Berechtigungen an. |
az devops security permission reset |
Zurücksetzen der Berechtigung für angegebene Berechtigungsbits(n). |
az devops security permission reset-all |
Löschen Sie alle Berechtigungen dieses Token für einen Benutzer oder eine Gruppe. |
az devops security permission show |
Anzeigen von Berechtigungen für angegebene Token, Namespace und Benutzer oder Gruppe. |
az devops security permission update |
Weisen Sie dem angegebenen Benutzer oder einer Gruppe die Berechtigung zu, oder verweigern Sie sie. |
Die folgenden Parameter sind optional für alle Befehle und nicht in den in diesem Artikel angegebenen Beispielen aufgeführt.
- erkennen Sie die Organisation automatisch. Akzeptierte Werte: false, true. Der Standardwert ist "true".
- org: Azure DevOps Organisations-URL. Sie können die Standardorganisation mithilfe von az devops configure -d organization=ORG_URL konfigurieren. Erforderlich, wenn nicht als Standard konfiguriert oder über git config aufgenommen wurde. Beispiel:
--org https://dev.azure.com/MyOrganizationName/
.
Listen von Sicherheitsnamespaces
Sie können alle verfügbaren Namespaces für eine Organisation mit dem Befehl "az devops Security Permission Namespace list " auflisten. Eine Beschreibung aller Sicherheitsnamespaces und zugeordneten Token finden Sie unter Sicherheitsnamespace und Berechtigungsverweis.
az devops security permission namespace list [--local-only]
Parameter
nur lokal: Optional. Wenn true, rufen Sie nur lokale Sicherheitsnamespaces ab.
Sicherheitsnamespaces haben möglicherweise ihre Daten in einem Microservice, aber immer noch in anderen Microservices sichtbar. Wenn die Daten eines Sicherheitsnamespaces in Microservice X verarbeitet werden, gilt es als lokal für diesen Microservice. Andernfalls ist es gesagt, remote zu sein.
Geben Sie az devops security permission namespace list
die für Ihre Organisation oder lokalen Server definierten Namespaces auf.
Hinweis
Einige aufgeführte Namespaces sind veraltet und sollten nicht verwendet werden. Eine Liste veralteter Namespaces finden Sie in der Namespacereferenz, veralteten und schreibgeschützten Namespaces.
az devops security permission namespace list --org https://dev.azure.com/OrganizationName --output table
Id Name
------------------------------------ ------------------------------
c788c23e-1b46-4162-8f5e-d7585343b5de ReleaseManagement
58450c49-b02d-465a-ab12-59ae512d6531 Analytics
d34d3680-dfe5-4cc6-a949-7d9c68f73cba AnalyticsViews
62a7ad6b-8b8d-426b-ba10-76a7090e94d5 PipelineCachePrivileges
7c7d32f7-0e86-4cd6-892e-b35dbba870bd ReleaseManagement
a6cc6381-a1ca-4b36-b3c1-4e65211e82b6 AuditLog
5a27515b-ccd7-42c9-84f1-54c998f03866 Identity
445d2788-c5fb-4132-bbef-09c4045ad93f WorkItemTrackingAdministration
101eae8c-1709-47f9-b228-0e476c35b3ba DistributedTask
71356614-aad7-4757-8f2c-0fb3bff6f680 WorkItemQueryFolders
2e9eb7ed-3c0a-47d4-87c1-0ffdd275fd87 Git Repositories
3c15a8b7-af1a-45c2-aa97-2cb97078332e VersionControlItems2
2bf24a2b-70ba-43d3-ad97-3d9e1f75622f EventSubscriber
5a6cd233-6615-414d-9393-48dbb252bd23 WorkItemTrackingProvision
49b48001-ca20-4adc-8111-5b60c903a50c ServiceEndpoints
cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 ServiceHooks
bc295513-b1a2-4663-8d1a-7017fd760d18 Chat
3e65f728-f8bc-4ecd-8764-7e378b19bfa7 Collection
cb4d56d2-e84b-457e-8845-81320a133fbb Proxy
bed337f8-e5f3-4fb9-80da-81e17d06e7a8 Plan
2dab47f9-bd70-49ed-9bd5-8eb051e59c02 Process
11238e09-49f2-40c7-94d0-8f0307204ce4 AccountAdminSecurity
b7e84409-6553-448a-bbb2-af228e07cbeb Library
83d4c2e6-e57d-4d6e-892b-b87222b7ad20 Environment
52d39943-cb85-4d7f-8fa8-c6baac873819 Project
58b176e7-3411-457a-89d0-c6d0ccb3c52b EventSubscription
83e28ad4-2d72-4ceb-97b0-c7726d5502c3 CSS
9e4894c3-ff9a-4eac-8a85-ce11cafdc6f1 TeamLabSecurity
fc5b7b85-5d6b-41eb-8534-e128cb10eb67 ProjectAnalysisLanguageMetrics
bb50f182-8e5e-40b8-bc21-e8752a1e7ae2 Tagging
f6a4de49-dbe2-4704-86dc-f8ec1a294436 MetaTask
bf7bfa03-b2b7-47db-8113-fa2e002cc5b1 Iteration
fa557b48-b5bf-458a-bb2b-1b680426fe8b Favorites
4ae0db5d-8437-4ee8-a18b-1f6fb38bd34c Registry
c2ee56c9-e8fa-4cdd-9d48-2c44f697a58e Graph
dc02bf3d-cd48-46c3-8a41-345094ecc94b ViewActivityPaneSecurity
2a887f97-db68-4b7c-9ae3-5cebd7add999 Job
73e71c45-d483-40d5-bdba-62fd076f7f87 WorkItemTracking
4a9e8381-289a-4dfd-8460-69028eaa93b3 StrongBox
1f4179b3-6bac-4d01-b421-71ea09171400 Server
e06e1c24-e93d-4e4a-908a-7d951187b483 TestManagement
6ec4592e-048c-434e-8e6c-8671753a8418 SettingEntries
302acaca-b667-436d-a946-87133492041c BuildAdministration
2725d2bc-7520-4af4-b0e3-8d876494731f Location
83abde3a-4593-424e-b45f-9898af99034d UtilizationPermissions
c0e7a722-1cad-4ae6-b340-a8467501e7ce WorkItemsHub
0582eb05-c896-449a-b933-aa3d99e121d6 WebPlatform
66312704-deb5-43f9-b51c-ab4ff5e351c3 VersionControlPrivileges
93bafc04-9075-403a-9367-b7164eac6b5c Workspaces
093cbb02-722b-4ad6-9f88-bc452043fa63 CrossProjectWidgetView
35e35e8e-686d-4b01-aff6-c369d6e36ce0 WorkItemTrackingConfiguration
0d140cae-8ac1-4f48-b6d1-c93ce0301a12 Discussion Threads
5ab15bc8-4ea1-d0f3-8344-cab8fe976877 BoardsExternalIntegration
7ffa7cf4-317c-4fea-8f1d-cfda50cfa956 DataProvider
81c27cc8-7a9f-48ee-b63f-df1e1d0412dd Social
9a82c708-bfbe-4f31-984c-e860c2196781 Security
a60e0d84-c2f8-48e4-9c0c-f32da48d5fd1 IdentityPicker
84cc1aa4-15bc-423d-90d9-f97c450fc729 ServicingOrchestration
33344d9c-fc72-4d6f-aba5-fa317101a7e9 Build
8adf73b7-389a-4276-b638-fe1653f7efc7 DashboardsPrivileges
a39371cf-0841-4c16-bbd3-276e341bc052 VersionControlItems
Beispiel: Auflisten lokaler Sicherheitsnamespaces
Der folgende Befehl enthält nur die lokalen Sicherheitsnamespaces für Ihre Organisation und zeigt die Ergebnisse im Tabellenformat an.
az devops security permission namespace list --local-only --output table
Id Name
------------------------------------ ------------------------------
71356614-aad7-4757-8f2c-0fb3bff6f680 WorkItemQueryFolders
fa557b48-b5bf-458a-bb2b-1b680426fe8b Favorites
4ae0db5d-8437-4ee8-a18b-1f6fb38bd34c Registry
c2ee56c9-e8fa-4cdd-9d48-2c44f697a58e Graph
dc02bf3d-cd48-46c3-8a41-345094ecc94b ViewActivityPaneSecurity
2a887f97-db68-4b7c-9ae3-5cebd7add999 Job
73e71c45-d483-40d5-bdba-62fd076f7f87 WorkItemTracking
4a9e8381-289a-4dfd-8460-69028eaa93b3 StrongBox
1f4179b3-6bac-4d01-b421-71ea09171400 Server
e06e1c24-e93d-4e4a-908a-7d951187b483 TestManagement
6ec4592e-048c-434e-8e6c-8671753a8418 SettingEntries
302acaca-b667-436d-a946-87133492041c BuildAdministration
2725d2bc-7520-4af4-b0e3-8d876494731f Location
83abde3a-4593-424e-b45f-9898af99034d UtilizationPermissions
c0e7a722-1cad-4ae6-b340-a8467501e7ce WorkItemsHub
0582eb05-c896-449a-b933-aa3d99e121d6 WebPlatform
66312704-deb5-43f9-b51c-ab4ff5e351c3 VersionControlPrivileges
93bafc04-9075-403a-9367-b7164eac6b5c Workspaces
093cbb02-722b-4ad6-9f88-bc452043fa63 CrossProjectWidgetView
35e35e8e-686d-4b01-aff6-c369d6e36ce0 WorkItemTrackingConfiguration
0d140cae-8ac1-4f48-b6d1-c93ce0301a12 Discussion Threads
5ab15bc8-4ea1-d0f3-8344-cab8fe976877 BoardsExternalIntegration
7ffa7cf4-317c-4fea-8f1d-cfda50cfa956 DataProvider
81c27cc8-7a9f-48ee-b63f-df1e1d0412dd Social
9a82c708-bfbe-4f31-984c-e860c2196781 Security
a60e0d84-c2f8-48e4-9c0c-f32da48d5fd1 IdentityPicker
84cc1aa4-15bc-423d-90d9-f97c450fc729 ServicingOrchestration
33344d9c-fc72-4d6f-aba5-fa317101a7e9 Build
8adf73b7-389a-4276-b638-fe1653f7efc7 DashboardsPrivileges
445d2788-c5fb-4132-bbef-09c4045ad93f WorkItemTrackingAdministration
101eae8c-1709-47f9-b228-0e476c35b3ba DistributedTask
2e9eb7ed-3c0a-47d4-87c1-0ffdd275fd87 Git Repositories
a39371cf-0841-4c16-bbd3-276e341bc052 VersionControlItems
3c15a8b7-af1a-45c2-aa97-2cb97078332e VersionControlItems2
2bf24a2b-70ba-43d3-ad97-3d9e1f75622f EventSubscriber
5a6cd233-6615-414d-9393-48dbb252bd23 WorkItemTrackingProvision
49b48001-ca20-4adc-8111-5b60c903a50c ServiceEndpoints
cb594ebe-87dd-4fc9-ac2c-6a10a4c92046 ServiceHooks
bc295513-b1a2-4663-8d1a-7017fd760d18 Chat
3e65f728-f8bc-4ecd-8764-7e378b19bfa7 Collection
cb4d56d2-e84b-457e-8845-81320a133fbb Proxy
bed337f8-e5f3-4fb9-80da-81e17d06e7a8 Plan
2dab47f9-bd70-49ed-9bd5-8eb051e59c02 Process
11238e09-49f2-40c7-94d0-8f0307204ce4 AccountAdminSecurity
b7e84409-6553-448a-bbb2-af228e07cbeb Library
83d4c2e6-e57d-4d6e-892b-b87222b7ad20 Environment
52d39943-cb85-4d7f-8fa8-c6baac873819 Project
58b176e7-3411-457a-89d0-c6d0ccb3c52b EventSubscription
83e28ad4-2d72-4ceb-97b0-c7726d5502c3 CSS
9e4894c3-ff9a-4eac-8a85-ce11cafdc6f1 TeamLabSecurity
fc5b7b85-5d6b-41eb-8534-e128cb10eb67 ProjectAnalysisLanguageMetrics
bb50f182-8e5e-40b8-bc21-e8752a1e7ae2 Tagging
f6a4de49-dbe2-4704-86dc-f8ec1a294436 MetaTask
bf7bfa03-b2b7-47db-8113-fa2e002cc5b1 Iteration
Listentoken für einen Sicherheitsnamespace
Sie können die Token für einen angegebenen Namespace und einen Benutzer oder eine Gruppe mit dem Befehl "Az devops-Sicherheitsberechtigungsliste " auflisten.
az devops security permission list --id
--subject
[--recurse]
[--token]
Parameter
-
- ID oder Namespace-ID: Erforderlich. ID des Sicherheitsnamespaces. Verwenden Sie zum Abrufen der ID den Befehl az devops-Sicherheitsberechtigungs-Namespaceliste .
- Betreff: Erforderlich. Die E-Mail-Adresse oder gruppendeskriptor des Benutzers.
- reurse: Optional. Wenn true, und der Namespace hierarchisch ist, gibt dieser Parameter die untergeordneten ACLs der Token zurück.
- token: Optional. Geben Sie ein einzelnes Sicherheitstoken an.
Beispiel
Der folgende Befehl listet die Token im Tabellenformat für den angegebenen Namespace auf, der Analytics entspricht und dem Benutzer contoso@contoso.comzugeordnet ist.
az devops security permission list --id 58450c49-b02d-465a-ab12-59ae512d6531 --subject contoso@contoso.com --output table
Token Effective Allow Effective Deny
-------------------------------------- ----------------- ----------------
$/0611925a-b287-4b0b-90a1-90f1a96e9f1f 0 0
$/087572e2-5569-49ec-af80-d3caf22b446c 0 0
$/131271e0-a6ad-49ba-837e-2d475ab2b169 0 0
$/14c92f9d-9fff-48ec-8171-9d1106056ab3 0 0
$/1965830d-5fc4-4412-8c71-a1c39c939a42 0 0
$/4b80d122-a5ca-46ec-ba28-e03d37e53404 0 0
$/4fa8e9de-e86b-4986-ac75-f421881a7664 0 0
$/5417a1c3-4b04-44d1-aead-50774b9dbf5f 0 0
$/56af920d-393b-4236-9a07-24439ccaa85c 0 0
$/69265579-a1e0-4a30-a141-ac9e3bb82572 0 0
Namespacedetails anzeigen
Sie können Details der in jedem Namespace verfügbaren Berechtigungen mit dem Befehl "az devops security permission namespace " anzeigen.
az devops security permission namespace show --namespace-id <NAMESPACE_ID>
Parameter
- ID oder Namespace-ID: Erforderlich. ID des Sicherheitsnamespaces.
Beispiel
Der folgende Befehl zeigt Details der verfügbaren Berechtigungen für die angegebene Namespace-ID und gibt die Ergebnisse im Tabellenformat zurück.
az devops security permission namespace show --namespace-id 58450c49-b02d-465a-ab12-59ae512d6531 --output table
Name Permission Description Permission Bit
------------------------ -------------------------------------------------------- ----------------
Read View analytics 1
Administer Manage analytics permissions 2
Stage Push the data to staging area 4
ExecuteUnrestrictedQuery Execute query without any restrictions on the query form 8
ReadEuii Read EUII data 16
Zurücksetzen von Berechtigungen
Sie können die Berechtigungsbits für einen angegebenen Benutzer oder eine Gruppe mit dem Befehl zum Zurücksetzen der Sicherheitsberechtigung von az devops zurücksetzen .
az devops security permission reset --id
--permission-bit
--subject
--token
Parameter
- ID oder Namespace-ID: Erforderlich. ID des Sicherheitsnamespaces.
- Berechtigungsbit: Erforderlich. Berechtigungsbit oder Ergänzung von Berechtigungsbits, die für bestimmte Benutzer oder Gruppen und Token zurückgesetzt werden müssen.
- Betreff: Erforderlich. Die E-Mail-Adresse oder gruppendeskriptor des Benutzers.
- token: Erforderlich. Einzelnes Sicherheitstoken.
Beispiel
Der folgende Befehl setzt den Berechtigungsbit 8 eines Token für den Benutzer contoso@contoso.com im angegebenen Namespace zurück und gibt die Ergebnisse im Tabellenformat zurück.
az devops security permission reset --id 58450c49-b02d-465a-ab12-59ae512d6531 --permission-bit 8 --subject contoso@contoso.com --token 0611925a-b287-4b0b-90a1-90f1a96e9f1f --output table
Name Bit Permission Description Permission Value
------------------------ ----- -------------------------------------------------------- ------------------
ExecuteUnrestrictedQuery 8 Execute query without any restrictions on the query form Not set
Zurücksetzen aller Berechtigungen
Sie können alle Berechtigungen eines Token für einen Benutzer oder eine Gruppe mit dem Befehl "az devops security reset-all " löschen.
az devops security permission reset-all --id
--subject
--token
[--yes]
Parameter
- ID oder Namespace-ID: Erforderlich. ID des Sicherheitsnamespaces.
- Betreff: Erforderlich. Die E-Mail-Adresse oder Gruppendeskriptor des Benutzers.
- token: Erforderlich. Einzelnes Sicherheitstoken.
- ja: Optional. Fordern Sie keine Bestätigung auf.
Beispiel
Der folgende Befehl löscht alle Berechtigungen für den Benutzer contoso@contoso.com im angegebenen Namespace, ohne dass eine Bestätigung erforderlich ist. Das Ergebnis wird in der CLI angezeigt.
az devops security permission reset-all --id 58450c49-b02d-465a-ab12-59ae512d6531 --subject contoso@contoso.com --token 0611925a-b287-4b0b-90a1-90f1a96e9f1f --yes --output table
Result
--------
True
Anzeigen von Berechtigungen
Sie können die Berechtigungen für ein angegebenes Token, einen Namespace und einen Benutzer oder eine Gruppe mit dem Befehl "Az devops-Sicherheitsberechtigung anzeigen" anzeigen.
az devops security permission show --id
--subject
--token
Parameter
- ID oder Namespace-ID: Erforderlich. ID des Sicherheitsnamespaces.
- Betreff: Erforderlich. Die E-Mail-Adresse oder Gruppendeskriptor des Benutzers.
- token: Erforderlich. Einzelnes Sicherheitstoken.
Beispiel
Der folgende Befehl zeigt die Berechtigungsdetails eines Tokens für den Benutzer contoso@contoso.com im angegebenen Namespace und gibt die Ergebnisse im Tabellenformat zurück.
az devops security permission show --id 58450c49-b02d-465a-ab12-59ae512d6531 --subject contoso@contoso.com --token 0611925a-b287-4b0b-90a1-90f1a96e9f1f --output table
Name Bit Permission Description Permission Value
------------------------ ----- -------------------------------------------------------- ------------------
Read 1 View analytics Not set
Administer 2 Manage analytics permissions Allow
Stage 4 Push the data to staging area Not set
ExecuteUnrestrictedQuery 8 Execute query without any restrictions on the query form Not set
ReadEuii 16 Read EUII data Deny
Berechtigungen aktualisieren
Sie können einem angegebenen Benutzer oder einer bestimmten Gruppe berechtigungen mit demBefehl "Az devops security permission update" zuweisen oder verweigern.
az devops security permission update --id
--subject
--token
[--allow-bit]
[--deny-bit]
[--merge {false, true}]
Parameter
- ID oder Namespace-ID: Erforderlich. ID des Sicherheitsnamespaces.
- Betreff: Erforderlich. Die E-Mail-Adresse oder Gruppendeskriptor des Benutzers.
- token: Erforderlich. Einzelnes Sicherheitstoken.
- allow-bit: Optional. Bit oder Hinzufügen von Bits zulassen. Erforderlich, wenn --deny-bit fehlt.
- deny-bit: Optional. Bit oder Ergänzung von Bits verweigern. Erforderlich, wenn --allow-bit fehlt.
- zusammenführen: Optional. Wenn festgelegt, hat der vorhandene Zugriffssteuerungseintrag (ACCESS Control Entry, ACE) seine Zulassung und Ablehnung, die mit der Zulassung und Ablehnung des eingehenden ACE verbunden ist. Wenn dies nicht aktiviert ist, wird die vorhandene ACE verschoben. Die akzeptierten Werte sind falsch oder wahr.
Beispiel
Der folgende Befehl aktualisiert die Berechtigungen für ExecuteUnrestrictedQuery (Bit 8) für den Benutzer contoso@contoso.com im angegebenen Namespace und zeigt die Ergebnisse im Tabellenformat an.
az devops security permission update --allow-bit 8 --id 58450c49-b02d-465a-ab12-59ae512d6531 --subject contoso@contoso.com --token 56af920d-393b-4236-9a07-24439ccaa85c --output table
Name Bit Permission Description Permission Value
------------------------ ----- -------------------------------------------------------- ------------------
ExecuteUnrestrictedQuery 8 Execute query without any restrictions on the query form Allow
Sicherheitsnamespaces und ihre IDs
Siehe Sicherheitsnamespace und Berechtigungsreferenz für Azure DevOps.