Komut satırı aracıyla izinleri yönetme

Azure DevOps Services

İzinler, izinleri, erişimi ve güvenlik gruplarını kullanmaya başlama bölümünde açıklandığı gibi belirli bir kaynakta belirli bir eylemi gerçekleştirmek için erişim verir. Çoğu izni web portalı üzerinden yönetirsiniz. Ancak, komut satırı araçlarını veya REST API'yi kullanarak izinleri yönetebilirsiniz.

Azure DevOps, varsayılan güvenlik gruplarının üyelerine varsayılan olarak bir dizi izin verir. Komutları kullanarak az devops security permission izinleri daha ayrıntılı bir düzeyde ekleyebilir ve yönetebilirsiniz. Şu komutları kullanarak:

  • Güvenlik ad alanlarıyla ilişkili izinleri görüntüleme
  • Bu izinlerle ilgili ayrıntıları görüntüleme
  • İzinleri güncelleştirme veya sıfırlama

Not

Ad alanları ve belirteçler Azure DevOps'un tüm sürümleri için geçerlidir. Burada listelenenler Azure DevOps 2019 ve sonraki sürümler için geçerlidir. Ad alanları zaman içinde değiştirilebilir. Ad alanlarının en son listesini almak için komut satırı araçlarından veya REST API'lerinden birini kullanın. Bazı ad alanları , Güvenlik ad alanı ve izin başvurusu, Kullanım dışı ve salt okunur ad alanları..

Önkoşullar

  • Belirteçleri ve ad alanlarını yönetmek için Proje Koleksiyonu Yönetici istrators güvenlik grubunun üyesi olmanız gerekir. Belirteçler hakkında daha fazla bilgi için bkz . Güvenlik ad alanı ve izin başvurusu.
  • Azure DevOps CLI'yi kullanmaya başlama bölümünde açıklandığı gibi Azure DevOps CLI uzantısını yüklemiş olmanız gerekir.
  • kullanarak az loginAzure DevOps'ta oturum açın.
  • Bu makaledeki örnekler için varsayılan kuruluşu aşağıdaki gibi ayarlayın:
    • Azure DevOps Services için: az devops configure --defaults organization=YourOrganizationURL.
    • Azure DevOps Server için:az devops configure --defaults organization=https://ServerName/CollectionName

Güvenlik izni komutları

Kullanılabilir tüm komutları listelemek için aşağıdaki komutu girin.

az devops security permission -h

Güvenlik izinleri ile ilgili kavramlar hakkında daha fazla bilgi için Güvenlik REST API'sinin belgelerine bakın

Komut Açıklama
az devops security permission list Belirtilen kullanıcı veya grup ve ad alanı için belirteçleri listeleyin.
az devops security permission namespace list Bir kuruluş için kullanılabilir tüm ad alanlarını listeleme.
az devops security permission namespace show Her ad alanında kullanılabilen izinlerin ayrıntılarını gösterin.
az devops security permission reset Belirtilen izin bitleri için izni sıfırlayın.
az devops security permission reset-all Bir kullanıcı veya grup için bu belirtecin tüm izinlerini temizleyin.
az devops security permission show Belirtilen belirteç, ad alanı ve kullanıcı veya grup için izinleri gösterin.
az devops security permission update Belirtilen kullanıcı veya gruba izin verme veya reddetme izni atayın.

Aşağıdaki parametreler tüm komutlar için isteğe bağlıdır ve bu makalede sağlanan örneklerde listelenmez.

  • detect: Kuruluşu otomatik olarak algılayın. Kabul edilen değerler: false, true. Varsayılanı doğrudur
  • kuruluş: Azure DevOps kuruluş URL'si. az devops configure -d organization=ORG_URL kullanarak varsayılan kuruluşu yapılandırabilirsiniz. Varsayılan olarak yapılandırılmadıysa veya git yapılandırması aracılığıyla alınmadıysa gereklidir. Örnek: --org https://dev.azure.com/MyOrganizationName/.

Güvenlik ad alanlarını listeleme

Az devops security permission namespace list komutuyla bir kuruluş için tüm kullanılabilir ad alanlarını listeleyebilirsiniz . Tüm güvenlik ad alanlarının ve ilişkili belirteçlerin açıklaması için bkz . Güvenlik ad alanı ve izin başvurusu.

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

Parametreler

  • yalnızca yerel: İsteğe bağlı. True ise, yalnızca yerel güvenlik ad alanlarını alın.

    Güvenlik ad alanlarının verileri bir mikro hizmette ustalaşabilir, ancak diğer mikro hizmetlerde görünmeye devam edebilir. Bir güvenlik ad alanının verileri mikro hizmet X'te ustalıklıysa, bu mikro hizmet için yerel olduğu söylenir. Aksi takdirde uzak olduğu söylenir.

Kuruluşunuz veya şirket içi sunucunuz için tanımlanan ad alanlarını listelemek için girin az devops security permission namespace list .

Not

Listelenen bazı ad alanları kullanım dışıdır ve kullanılmamalıdır. Kullanım dışı bırakılan ad alanlarının listesi için Bkz . Kullanım dışı ve salt okunur ad alanları ad alanı başvurusu.

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

Örnek: Yerel güvenlik ad alanlarını listeleme

Aşağıdaki komut yalnızca kuruluşunuz için yerel güvenlik ad alanlarını listeler ve sonuçları tablo biçiminde gösterir.

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

Güvenlik ad alanı için belirteçleri listeleme

Belirtilen ad alanı ve kullanıcı veya grup için belirteçleri az devops security permission list komutuyla listeleyebilirsiniz .

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

Parametreler

    • id veya namespace-id: Gerekli. Güvenlik ad alanının kimliği. Kimliği almak için az devops security permission namespace list komutunu kullanın.
  • konu: Gerekli. Kullanıcının e-posta adresi veya grup tanımlayıcısı.
  • özyineleme: İsteğe bağlı. True ise ve ad alanı hiyerarşikse, bu parametre belirteçlerin alt ACL'lerini döndürür.
  • belirteç: İsteğe bağlı. Tek bir güvenlik belirteci belirtin.

Örnek

Aşağıdaki komut, belirtilen ad alanı için Analytics'e karşılık gelen ve kullanıcıyla contoso@contoso.comilişkilendirilmiş olan tablo biçiminde belirteçleri listeler.

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

Ad alanı ayrıntılarını göster

Az devops security permission namespace show komutuyla her ad alanında kullanılabilen izinlerin ayrıntılarını gösterebilirsiniz .

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

Parametreler

  • id veya namespace-id: Gerekli. Güvenlik ad alanının kimliği.

Örnek

Aşağıdaki komut, belirtilen ad alanı kimliği için kullanılabilir izinlerin ayrıntılarını gösterir ve sonuçları tablo biçiminde döndürür.

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

İzinleri sıfırlama

Az devops security permission reset komutuyla belirtilen kullanıcı veya grup için izin bitlerini sıfırlayabilirsiniz .

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

Parametreler

  • id veya namespace-id: Gerekli. Güvenlik ad alanının kimliği.
  • permission-bit: Gerekli. İzin biti veya verilen kullanıcı veya grup ve belirteç için sıfırlanması gereken izin bitlerinin eklenmesi.
  • konu: Gerekli. Kullanıcının e-posta adresi veya grup tanımlayıcısı.
  • belirteç: Gerekli. Tek tek güvenlik belirteci.

Örnek

Aşağıdaki komut, belirtilen ad alanında kullanıcı contoso@contoso.com için belirtecin izin biti 8'i sıfırlar ve sonuçları tablo biçiminde döndürür.

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

Tüm izinleri sıfırla

az devops security permission reset-all komutuyla bir kullanıcı veya grup için belirtecin tüm izinlerini temizleyebilirsiniz.

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

Parametreler

  • id veya namespace-id: Gerekli. Güvenlik ad alanının kimliği.
  • konu: Gerekli. Kullanıcının e-posta adresi veya grup tanımlayıcısı.
  • belirteç: Gerekli. Tek tek güvenlik belirteci.
  • Evet: İsteğe bağlı. Onay istemde bulunmayın.

Örnek

Aşağıdaki komut, onay gerektirmeden belirtilen ad alanında kullanıcının contoso@contoso.com tüm izinlerini temizler. Sonuç CLI'da gösterilir.

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

İzinleri göster

Belirtilen belirteç, ad alanı ve kullanıcı veya grup izinlerini az devops security permission show komutuyla gösterebilirsiniz .

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

Parametreler

  • id veya namespace-id: Gerekli. Güvenlik ad alanının kimliği.
  • konu: Gerekli. Kullanıcının e-posta adresi veya grup tanımlayıcısı.
  • belirteç: Gerekli. Tek tek güvenlik belirteci.

Örnek

Aşağıdaki komut, belirtilen ad alanında bir belirtecin kullanıcı contoso@contoso.com için izin ayrıntılarını gösterir ve sonuçları tablo biçiminde döndürür.

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

İzinleri güncelleştirme

az devops security permission update komutuyla belirtilen bir kullanıcı veya gruba izin verme veya reddetme izinleri atayabilirsiniz.

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

Parametreler

  • id veya namespace-id: Gerekli. Güvenlik ad alanının kimliği.
  • konu: Gerekli. Kullanıcının e-posta adresi veya grup tanımlayıcısı.
  • belirteç: Gerekli. Tek tek güvenlik belirteci.
  • allow-bit: İsteğe bağlı. Bit veya bit eklenmesine izin verin. --deny-bit eksikse gereklidir.
  • deny-bit: İsteğe bağlı. Bitleri veya bitlerin eklenmesini reddedin. --allow-bit eksikse gereklidir.
  • merge: İsteğe bağlı. Ayarlanırsa, mevcut erişim denetimi girdisinin (ACE) gelen ACE'nin izin verme ve reddetme özellikleriyle birleştirilmiş izni ve reddetmesi vardır. Ayarlanmazsa, mevcut ACE yerlerinden edilir. Kabul edilen değerler false veya true değerleridir.

Örnek

Aşağıdaki komut, belirtilen ad alanında kullanıcı contoso@contoso.com için ExecuteUnrestrictedQuery (bit 8) izinlerini güncelleştirir ve sonuçları tablo biçiminde gösterir.

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

Güvenlik ad alanları ve kimlikleri

Bkz. Azure DevOps için güvenlik ad alanı ve izin başvurusu.