Zarządzanie uprawnieniami za pomocą narzędzia wiersza polecenia

Azure DevOps Services

Uprawnienia udzielają dostępu, aby wykonać określoną akcję dla określonego zasobu zgodnie z opisem w temacie Rozpoczynanie pracy z uprawnieniami, dostępem i grupami zabezpieczeń. Większość uprawnień można zarządzać za pośrednictwem portalu internetowego. Można jednak zarządzać uprawnieniami przy użyciu narzędzi wiersza polecenia lub interfejsu API REST.

Usługa Azure DevOps domyślnie przyznaje członkom domyślnych grup zabezpieczeń wiele uprawnień. Uprawnienia można dodawać i zarządzać nimi na bardziej szczegółowym poziomie za pomocą az devops security permission poleceń. Użyj następujących poleceń, aby:

  • Wyświetlanie uprawnień skojarzonych z przestrzeniami nazw zabezpieczeń
  • Wyświetlanie szczegółowych informacji o tych uprawnieniach
  • Aktualizowanie lub resetowanie uprawnień

Uwaga

Przestrzenie nazw i tokeny są prawidłowe dla wszystkich wersji usługi Azure DevOps. Wymienione tutaj są prawidłowe dla usługi Azure DevOps 2019 i nowszych wersji. Przestrzenie nazw mogą ulec zmianie w czasie. Aby uzyskać najnowszą listę przestrzeni nazw, wykonaj jedną z narzędzi wiersza polecenia lub interfejsu API REST. Niektóre przestrzenie nazw zostały uznane za przestarzałe zgodnie z opisem w temacie Security namespace and permission reference (Przestrzeń nazw zabezpieczeń i odwołania do uprawnień), Przestarzałe przestrzenie nazw i tylko do odczytu.

Wymagania wstępne

  • Aby zarządzać tokenami i przestrzeniami nazw, musisz być członkiem grupy zabezpieczeń Kolekcja projektów Administracja istrators. Aby uzyskać więcej informacji na temat tokenów, zobacz Security namespace and permission reference (Przestrzeń nazw zabezpieczeń i dokumentacja uprawnień).
  • Musisz mieć zainstalowane rozszerzenie interfejsu wiersza polecenia usługi Azure DevOps zgodnie z opisem w temacie Rozpoczynanie pracy z interfejsem wiersza polecenia usługi Azure DevOps.
  • Zaloguj się do usługi Azure DevOps przy użyciu polecenia az login.
  • W przypadku przykładów w tym artykule ustaw domyślną organizację w następujący sposób:
    • W przypadku usług Azure DevOps Services: az devops configure --defaults organization=YourOrganizationURL.
    • W przypadku usługi Azure DevOps Server: az devops configure --defaults organization=https://ServerName/CollectionName

Polecenia uprawnień zabezpieczeń

Wprowadź następujące polecenie, aby wyświetlić listę wszystkich dostępnych poleceń.

az devops security permission -h

Aby uzyskać więcej informacji na temat pojęć związanych z uprawnieniami zabezpieczeń, zobacz dokumentację interfejsu API REST zabezpieczeń

Polecenie opis
az devops security permission list Wyświetlanie listy tokenów dla określonego użytkownika lub grupy i przestrzeni nazw.
az devops security permission namespace list Wyświetl listę wszystkich dostępnych przestrzeni nazw dla organizacji.
az devops security permission namespace show Pokaż szczegóły uprawnień dostępnych w każdej przestrzeni nazw.
az devops security permission reset Resetuj uprawnienia dla określonych bitów uprawnień.
az devops security permission reset-all Wyczyść wszystkie uprawnienia tego tokenu dla użytkownika lub grupy.
az devops security permission show Pokaż uprawnienia dla określonego tokenu, przestrzeni nazw i użytkownika lub grupy.
az devops security permission update Przypisz uprawnienie zezwalania lub odmowy do określonego użytkownika lub grupy.

Następujące parametry są opcjonalne dla wszystkich poleceń, a nie wymienione w przykładach podanych w tym artykule.

  • wykryj: Automatycznie wykrywaj organizację. Zaakceptowane wartości: false, true. Ustawieniem domyślnym jest true.
  • org: Adres URL organizacji usługi Azure DevOps. Domyślną organizację można skonfigurować przy użyciu polecenia az devops configure -d organization=ORG_URL. Wymagane, jeśli ustawienie nie jest skonfigurowane jako domyślne lub odebrane za pośrednictwem konfiguracji usługi Git. Przykład: --org https://dev.azure.com/MyOrganizationName/.

Wyświetlanie listy przestrzeni nazw zabezpieczeń

Listę wszystkich dostępnych przestrzeni nazw dla organizacji można wyświetlić za pomocą polecenia az devops security permission namespace list . Opis wszystkich przestrzeni nazw zabezpieczeń i skojarzonych tokenów można znaleźć w temacie Security namespace and permission reference (Przestrzeń nazw zabezpieczeń i dokumentacja uprawnień).

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

Parametry

  • tylko lokalnie: opcjonalnie. Jeśli wartość true, pobierz tylko lokalne przestrzenie nazw zabezpieczeń.

    Przestrzenie nazw zabezpieczeń mogą mieć swoje dane opanowane w jednej mikrousłudze, ale nadal są widoczne w innych mikrousługach. Jeśli dane przestrzeni nazw zabezpieczeń są opanowane w mikrousłudze X, mówi się, że są lokalne dla tej mikrousługi. W przeciwnym razie mówi się, że jest zdalny.

Wprowadź , az devops security permission namespace list aby wyświetlić listę przestrzeni nazw zdefiniowanych dla organizacji lub serwera lokalnego.

Uwaga

Niektóre przestrzenie nazw są przestarzałe i nie powinny być używane. Aby uzyskać listę przestarzałych przestrzeni nazw, zobacz odwołania do przestrzeni nazw, przestarzałe i tylko do odczytu przestrzeni nazw.

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

Przykład: Wyświetlanie listy lokalnych przestrzeni nazw zabezpieczeń

Poniższe polecenie wyświetla listę tylko lokalnych przestrzeni nazw zabezpieczeń dla organizacji i pokazuje wyniki w formacie tabeli.

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

Wyświetlanie listy tokenów dla przestrzeni nazw zabezpieczeń

Możesz wyświetlić listę tokenów dla określonej przestrzeni nazw i użytkownika lub grupy za pomocą polecenia az devops security permission list .

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

Parametry

  • temat: wymagane. Adres e-mail lub deskryptor grupy użytkownika.
  • recurse: Opcjonalnie. Jeśli wartość true, a przestrzeń nazw jest hierarchiczna, ten parametr zwraca podrzędne listy ACL tokenów.
  • token: opcjonalnie. Określ pojedynczy token zabezpieczający.

Przykład

Poniższe polecenie wyświetla listę tokenów w formacie tabeli dla określonej przestrzeni nazw, która odpowiada analizie i skojarzonej z użytkownikiem contoso@contoso.com.

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

Pokaż szczegóły przestrzeni nazw

Szczegółowe informacje o uprawnieniach dostępnych w każdej przestrzeni nazw można wyświetlić za pomocą polecenia az devops security permission namespace show .

az devops security permission namespace show --namespace-id <NAMESPACE_ID>

Parametry

  • id lub namespace-id: wymagane. Identyfikator przestrzeni nazw zabezpieczeń.

Przykład

Poniższe polecenie zawiera szczegółowe informacje o dostępnych uprawnieniach dla określonego identyfikatora przestrzeni nazw i zwraca wyniki w formacie tabeli.

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

Resetowanie uprawnień

Bity uprawnień dla określonego użytkownika lub grupy można zresetować za pomocą polecenia az devops security permission reset .

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

Parametry

  • id lub namespace-id: wymagane. Identyfikator przestrzeni nazw zabezpieczeń.
  • permission-bit: Wymagane. Bit uprawnień lub dodanie bitów uprawnień, które należy zresetować dla danego użytkownika lub grupy i tokenu.
  • temat: wymagane. Adres e-mail lub deskryptor grupy użytkownika.
  • token: wymagane. Pojedynczy token zabezpieczający.

Przykład

Następujące polecenie resetuje uprawnienia tokenu bit 8 dla użytkownika contoso@contoso.com w określonej przestrzeni nazw i zwraca wyniki w formacie tabeli.

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

Resetuj wszystkie uprawnienia

Wszystkie uprawnienia tokenu dla użytkownika lub grupy można wyczyścić za pomocą polecenia az devops security permission reset-all .

az devops security permission reset-all --id
                                        --subject
                                        --token
                                        [--yes]

Parametry

  • id lub namespace-id: wymagane. Identyfikator przestrzeni nazw zabezpieczeń.
  • temat: wymagane. Adres e-mail lub deskryptor grupy użytkownika.
  • token: wymagane. Pojedynczy token zabezpieczający.
  • Tak: opcjonalne. Nie monituj o potwierdzenie.

Przykład

Następujące polecenie czyści wszystkie uprawnienia użytkownika contoso@contoso.com w określonej przestrzeni nazw bez konieczności potwierdzenia. Wynik jest wyświetlany w interfejsie wiersza polecenia.

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

Pokaż uprawnienia

Możesz wyświetlić uprawnienia dla określonego tokenu, przestrzeni nazw i użytkownika lub grupy za pomocą polecenia az devops security permission show .

az devops security permission show --id
                                   --subject
                                   --token

Parametry

  • id lub namespace-id: wymagane. Identyfikator przestrzeni nazw zabezpieczeń.
  • temat: wymagane. Adres e-mail lub deskryptor grupy użytkownika.
  • token: wymagane. Pojedynczy token zabezpieczający.

Przykład

Poniższe polecenie przedstawia szczegóły uprawnień tokenu dla użytkownika contoso@contoso.com w określonej przestrzeni nazw i zwraca wyniki w formacie tabeli.

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

Aktualizowanie uprawnień

Uprawnienia zezwalania lub odmowy można przypisać do określonego użytkownika lub grupy za pomocą polecenia az devops security permission update.

az devops security permission update --id
                                     --subject
                                     --token
                                     [--allow-bit]
                                     [--deny-bit]
                                     [--merge {false, true}]

Parametry

  • id lub namespace-id: wymagane. Identyfikator przestrzeni nazw zabezpieczeń.
  • temat: wymagane. Adres e-mail lub deskryptor grupy użytkownika.
  • token: wymagane. Pojedynczy token zabezpieczający.
  • allow-bit: opcjonalne. Zezwalaj na bit lub dodawanie bitów. Wymagane, jeśli brakuje --deny-bit .
  • deny-bit: opcjonalne. Odmów bitów lub dodawanie bitów. Wymagane, jeśli brakuje --allow-bit .
  • scalanie: opcjonalne. W przypadku ustawienia istniejący wpis kontroli dostępu (ACE) ma wartość zezwalającą i odmawiającą scaloną z przychodzącym zezwoleniem i odmową ACE. Jeśli nie zostanie ona zdenerwowana, istniejące ACE zostanie przesiedlone. Zaakceptowane wartości są fałszywe lub prawdziwe.

Przykład

Następujące polecenie aktualizuje uprawnienia executeUnrestrictedQuery (bit 8) dla użytkownika contoso@contoso.com w określonej przestrzeni nazw i pokazuje wyniki w formacie tabeli.

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

Przestrzenie nazw zabezpieczeń i ich identyfikatory

Zobacz Security namespace and permission reference for Azure DevOps (Przestrzeń nazw zabezpieczeń i dokumentacja uprawnień dla usługi Azure DevOps).