Verwalten von Berechtigungen mit dem Befehlszeilentool

Azure DevOps Services

Berechtigungen gewähren Zugriff, um eine bestimmte Aktion für eine bestimmte Ressource auszuführen, wie unter Erste Schritte mit Berechtigungen, Zugriff und Sicherheitsgruppen beschrieben. Sie verwalten die meisten Berechtigungen über das Webportal. Sie können Berechtigungen jedoch mithilfe von Befehlszeilentools oder der REST-API verwalten.

Azure DevOps gewährt Mitgliedern von Standardsicherheitsgruppen standardmäßig eine Reihe von Berechtigungen. Mit den az devops security permission Befehlen können Sie Berechtigungen auf einer präziseren Ebene hinzufügen und verwalten. Verwenden Sie die folgenden Befehle für Folgendes:

  • Anzeigen der Berechtigungen im Zusammenhang mit Sicherheitsnamespaces
  • Anzeigen von Details zu diesen Berechtigungen
  • Aktualisieren oder Zurücksetzen von Berechtigungen

Hinweis

Namespaces und Token sind für alle Versionen von Azure DevOps gültig. Die hier aufgeführten sind für Azure DevOps 2019 und höhere Versionen gültig. Namespaces können sich im Laufe der Zeit ändern. Um die neueste Liste der Namespaces abzurufen, verwenden Sie eines der Befehlszeilentools oder die REST-API. Einige Namespaces sind veraltet, wie unter Sicherheitsnamespace und Berechtigungsreferenz, veraltete und schreibgeschützte Namespaces aufgeführt.

Voraussetzungen

  • Zum Verwalten von Token und Namespaces müssen Sie Mitglied der Sicherheitsgruppe "Projektsammlungsadministratoren" sein. Weitere Informationen zu Token finden Sie unter Sicherheitsnamespace und Berechtigungsreferenz.
  • Bei Ihnen muss die Azure DevOps CLI-Erweiterung installiert sein, wie unter Erste Schritte mit Azure DevOps CLI beschrieben.
  • Melden Sie sich mithilfe von az login bei Azure DevOps an.
  • Legen Sie für die Beispiele in diesem Artikel die Standardeinstellung organization 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

Befehle für Sicherheitsberechtigungen

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 Sicherheits-REST-API.

Get-Help BESCHREIBUNG
az devops security permission list Auflisten von Token für den angegebenen Benutzer oder die angegebene Gruppe und den namespace.
az devops security permission namespace list Listet alle verfügbaren Namespaces für eine organization auf.
az devops security permission namespace show Zeigen Sie Details der in jedem Namespace verfügbaren Berechtigungen an.
az devops security permission reset Setzen Sie die Berechtigung für angegebene Berechtigungsbit(en) zurück.
az devops security permission reset-all Löschen Sie alle Berechtigungen dieses Tokens für einen Benutzer oder eine Gruppe.
az devops security permission show Anzeigen von Berechtigungen für angegebenes Token, Namespace und Benutzer oder Gruppe.
az devops security permission update Weisen Sie den angegebenen Benutzern oder Gruppen die Berechtigung zulassen oder verweigern zu.

Die folgenden Parameter sind für alle Befehle optional und nicht in den Beispielen in diesem Artikel aufgeführt.

  • detect: Automatisches Erkennen der Organisation. 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“ übernommen. Beispiel: --org https://dev.azure.com/MyOrganizationName/

Auflisten von Sicherheitsnamespaces

Sie können alle verfügbaren Namespaces für eine organization mit dem Befehl az devops security permission namespace list auflisten. Eine Beschreibung aller Sicherheitsnamespaces und zugehörigen Token finden Sie unter Sicherheitsnamespace und Berechtigungsreferenz.

az devops security permission namespace list [--local-only]

Parameter

  • Nur lokal: Optional. Wenn true, rufen Sie nur lokale Sicherheitsnamespaces ab.

    Sicherheitsnamespaces verfügen möglicherweise über eine Datenverwaltung in einem Microservice, sind aber in anderen Microservices weiterhin sichtbar. Wenn die Daten eines Sicherheitsnamespaces in Microservice X gemastert werden, wird angegeben, dass sie lokal für diesen Microservice sind. Andernfalls wird gesagt, dass es sich um remote handelt.

Geben Sie einaz devops security permission namespace list, um die Namespaces auflisten, die für Ihren organization oder lokalen Server definiert sind.

Hinweis

Einige aufgeführte Namespaces sind veraltet und sollten nicht verwendet werden. Eine Liste der veralteten Namespaces finden Sie in der Namespacereferenz Veraltete und schreibgeschützte 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 listet nur die lokalen Sicherheitsnamespaces für Ihre organization auf 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

Auflisten von Token für einen Sicherheitsnamespace

Sie können die Token für einen angegebenen Namespace und benutzer oder eine Gruppe mit dem Befehl az devops security permission list auflisten.

az devops security permission list --id
                                   --subject
                                   [--recurse]
                                   [--token]

Parameter

  • subject: Erforderlich. Die E-Mail-Adresse oder die Gruppenbeschreibung des Benutzers.
  • recurse: 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

Anzeigen von Namespacedetails

Mit dem Befehl az devops security permission namespace show können Sie Details der in jedem Namespace verfügbaren Berechtigungen 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

Berechtigungen zurücksetzen

Sie können die Berechtigungsbits für einen angegebenen Benutzer oder eine angegebene Gruppe mit dem Befehl az devops security permission reset zurücksetzen.

az devops security permission reset --id
                                    --permission-bit
                                    --subject
                                    --token

Parameter

  • id oder namespace-id: Erforderlich. ID des Sicherheitsnamespaces.
  • permission-bit: Erforderlich. Berechtigungsbit oder Hinzufügen von Berechtigungsbits, die für bestimmte Benutzer oder Gruppen und Token zurückgesetzt werden müssen.
  • subject: Erforderlich. Die E-Mail-Adresse oder die Gruppenbeschreibung des Benutzers.
  • Token: Erforderlich. Einzelnes Sicherheitstoken.

Beispiel

Der folgende Befehl setzt das Berechtigungsbit 8 eines Tokens 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 Tokens für einen Benutzer oder eine Gruppe mit dem Befehl az devops security permission 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 Gruppenbeschreibung des Benutzers.
  • Token: Erforderlich. Individuelles Sicherheitstoken.
  • yes: Optional. Nicht zur Bestätigung auffordern.

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 angegebenen Namespace und einen Benutzer oder eine Gruppe mit dem Befehl az devops security permission show 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 Gruppenbeschreibung des Benutzers.
  • Token: Erforderlich. Individuelles Sicherheitstoken.

Beispiel

Der folgende Befehl zeigt die Berechtigungsdetails eines Tokens für den Benutzer contoso@contoso.com im angegebenen Namespace an 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

Mit dem Befehl az devops security permission update können Sie einem angegebenen Benutzer oder einer bestimmten Gruppe Berechtigungen zulassen 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 Gruppenbeschreibung des Benutzers.
  • Token: Erforderlich. Individuelles Sicherheitstoken.
  • allow-bit: Optional. Bit oder Hinzufügen von Bits zulassen. Erforderlich, wenn --deny-bit fehlt.
  • deny-bit: Optional. Verweigern von Bits oder Hinzufügen von Bits. Erforderlich, wenn --allow-bit fehlt.
  • Merge: Optional. Falls festgelegt, hat der vorhandene Zugriffssteuerungseintrag (Access Control Entry, ACE) sein Zulassen und Verweigern mit dem eingehenden ACE-Eintrag zulassen und verweigern zusammengeführt. Wenn nicht festgelegt, wird der vorhandene ACE verschoben. Die akzeptierten Werte sind false oder true.

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

Weitere Informationen finden Sie unter Sicherheitsnamespace und Berechtigungsreferenz für Azure DevOps.