コマンド ライン ツールを使用してアクセス許可を管理する
Azure DevOps Services の
アクセス許可は、「アクセス許可、アクセス許可、およびセキュリティ グループの概要」の説明に従って、特定のリソースに対して特定のアクションを実行するためのアクセス許可を付与。 ほとんどのアクセス許可は Web ポータルを使用して管理します。 ただし、コマンド ライン ツールまたは REST API を使用してアクセス許可を管理できます。
Azure DevOps では、既定のセキュリティ グループのメンバーに多くのアクセス許可が既定で付与されます。
az devops security permission
コマンドを使用して、より詳細なレベルでアクセス許可を追加および管理できます。 次のコマンドを使用します。
- セキュリティ名前空間に関連付けられているアクセス許可を表示する
- これらのアクセス許可に関する詳細を表示する
- アクセス許可を更新またはリセットする
手記
名前空間とトークンは、すべてのバージョンの Azure DevOps で有効です。 ここに記載されているものは、Azure DevOps 2019 以降のバージョンで有効です。 名前空間は、時間の経過と同時に変更される可能性があります。 名前空間の最新の一覧を取得するには、コマンド ライン ツールまたは REST API のいずれかを実行します。 一部の名前空間は、Security 名前空間とアクセス許可の参照、非推奨および読み取り専用の名前空間に記載されているように非推奨になりました。
前提 条件
- 権限: プロジェクト コレクション管理者 セキュリティ グループのメンバーになります。 トークンの詳細については、「Security 名前空間とアクセス許可のリファレンス」を参照してください。
ツール : Azure DevOps CLIの概要に関するページの説明に従って、Azure DevOps CLI 拡張機能インストールします。 -
az login
を使用して Azure DevOps にサインインします。 - この記事の例では、既定の組織を次のように設定します。
-
Azure DevOps Services:
az devops configure --defaults organization=YourOrganizationURL
. -
Azure DevOps Server:
az devops configure --defaults organization=https://ServerName/CollectionName
-
Azure DevOps Services:
-
セキュリティアクセス許可コマンド
次のコマンドを入力して、使用可能なすべてのコマンドを一覧表示します。
az devops security permission -h
セキュリティアクセス許可に関連する概念の詳細については、Security REST API のドキュメント を参照してください。
命令 | 形容 |
---|---|
az devops security permission list |
指定したユーザーまたはグループと名前空間のトークンを一覧表示します。 |
az devops security permission namespace list |
組織で使用可能なすべての名前空間を一覧表示します。 |
az devops security permission namespace show |
各名前空間で使用できるアクセス許可の詳細を表示します。 |
az devops security permission reset |
指定したアクセス許可ビットのアクセス許可をリセットします。 |
az devops security permission reset-all |
ユーザーまたはグループに対するこのトークンのすべてのアクセス許可をクリアします。 |
az devops security permission show |
指定されたトークン、名前空間、およびユーザーまたはグループのアクセス許可を表示します。 |
az devops security permission update |
指定したユーザーまたはグループに許可または拒否アクセス許可を割り当てます。 |
次のパラメーターは、すべてのコマンドで省略可能であり、この記事の例には記載されていません。
- を検出
: 組織を自動的に検出します。 受け入れ可能な値: false、true。 既定値は true です。 -
組織: Azure DevOps 組織の URL。 az devops configure -d organization=ORG_URL を使用して、既定の組織を構成できます。 既定として構成されていない場合、または git 構成を使用して取得された場合は必須です。例:
--org https://dev.azure.com/MyOrganizationName/
.
セキュリティ名前空間を一覧表示する
az devops security permission namespace list コマンドを使用して、組織で使用可能なすべての名前空間
az devops security permission namespace list [--local-only]
パラメーター
ローカル専用: 省略可能。 true の場合は、ローカル セキュリティ名前空間のみを取得します。
セキュリティ名前空間では、データが 1 つのマイクロサービスで管理されている可能性がありますが、他のマイクロサービスでは引き続き表示されます。 セキュリティ名前空間のデータがマイクロサービス X で管理されている場合は、そのマイクロサービスに対してローカルになります。 それ以外の場合はリモートです。
az devops security permission namespace list
を入力して、組織またはオンプレミス サーバーに定義されている名前空間を一覧表示します。
手記
一覧表示されている一部の名前空間は非推奨であり、使用しないでください。 非推奨の名前空間の一覧については、名前空間のリファレンス、非推奨および読み取り専用の名前空間を参照してください。
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
例: ローカル セキュリティ名前空間を一覧表示する
次のコマンドは、組織のローカル セキュリティ名前空間のみを一覧表示し、結果を表形式で表示します。
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
セキュリティ名前空間のトークンを一覧表示する
az devops security permission list コマンドを使用して、指定した名前空間とユーザーまたはグループのトークン
az devops security permission list --id
--subject
[--recurse]
[--token]
パラメーター
-
-
id または namespace-id: 必須。 セキュリティ名前空間の ID。 ID を取得するには、az devops security permission namespace list コマンド
使用します。
-
id または namespace-id: 必須。 セキュリティ名前空間の ID。 ID を取得するには、az devops security permission namespace list コマンド
- 件名: 必須。 ユーザーの電子メール アドレスまたはグループ記述子。
- 再帰: 省略可能。 true で名前空間が階層型の場合、このパラメーターはトークンの子 ACL を返します。
- トークンの: 省略可能。 個々のセキュリティ トークンを指定します。
例
次のコマンドは、Analytics に対応し、ユーザー 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
名前空間の詳細を表示する
az devops security permission namespace show コマンドを使用して、各名前空間で使用可能なアクセス許可の詳細を表示します。
az devops security permission namespace show --namespace-id <NAMESPACE_ID>
パラメーター
- id または namespace-id: 必須。 セキュリティ名前空間の ID。
例
次のコマンドは、指定された名前空間 ID に対して使用可能なアクセス許可の詳細を示し、結果をテーブル形式で返します。
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
アクセス許可のリセット
az devops security permission reset コマンドを使用して、指定したユーザーまたはグループのアクセス許可ビット
az devops security permission reset --id
--permission-bit
--subject
--token
パラメーター
- id または namespace-id: 必須。 セキュリティ名前空間の ID。
- アクセス許可ビット: 必須。 特定のユーザーまたはグループとトークンに対してリセットする必要があるアクセス許可ビットまたはアクセス許可ビットの追加。
- 件名: 必須。 ユーザーの電子メール アドレスまたはグループ記述子。
- トークンの: 必須。 個々のセキュリティ トークン。
例
次のコマンドは、指定した名前空間のユーザー contoso@contoso.com のトークンのアクセス許可ビット 8 をリセットし、結果をテーブル形式で返します。
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
すべてのアクセス許可をリセットする
az devops security permission reset-all コマンドを使用して、ユーザーまたはグループのトークンのすべてのアクセス許可 クリアできます。
az devops security permission reset-all --id
--subject
--token
[--yes]
パラメーター
- id または namespace-id: 必須。 セキュリティ名前空間の ID。
- 件名: 必須。 ユーザーの電子メール アドレスまたはグループ記述子。
- トークンの: 必須。 個々のセキュリティ トークン。
- はい: 省略可能。 確認を求めないでください。
例
次のコマンドは、確認を必要とせずに、指定された名前空間のユーザー contoso@contoso.com のすべてのアクセス許可をクリアします。 結果が CLI に表示されます。
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
アクセス許可の表示
az devops security permission show コマンドを使用して、指定したトークン、名前空間、ユーザーまたはグループ
az devops security permission show --id
--subject
--token
パラメーター
- id または namespace-id: 必須。 セキュリティ名前空間の ID。
- 件名: 必須。 ユーザーの電子メール アドレスまたはグループ記述子。
- トークンの: 必須。 個々のセキュリティ トークン。
例
次のコマンドは、指定した名前空間で contoso@contoso.com ユーザーに対するトークンのアクセス許可の詳細を示し、結果をテーブル形式で返します。
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
アクセス許可の更新
az devops security permission update コマンド
az devops security permission update --id
--subject
--token
[--allow-bit]
[--deny-bit]
[--merge {false, true}]
パラメーター
- id または namespace-id: 必須。 セキュリティ名前空間の ID。
- 件名: 必須。 ユーザーの電子メール アドレスまたはグループ記述子。
- トークンの: 必須。 個々のセキュリティ トークン。
-
許可ビット: 省略可能です。 許可ビットを指定するか、ビットを追加します。
拒否ビット が指定されていない場合 。必要な -
拒否ビット: 省略可能。 拒否ビットを指定するか、他のビットを追加します。
許可ビット が指定されていない場合 。必要な -
マージ: 省略可能。 既存のアクセス制御エントリ (ACE) とマージするかどうかを決定します。
- true
に設定すると、既存の ACE は、着信 ACE のアクセス許可とマージを許可および拒否します。 - false を
に設定するか、省略すると、既存の ACE が置き換えられます。 - 指定できる値は、
true
またはfalse
です。
- true
例
次のコマンドは、指定した名前空間 ユーザー contoso@contoso.com の ExecuteUnrestrictedQuery (ビット 8) のアクセス許可を更新し、結果をテーブル形式で表示します。
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
セキュリティ名前空間とその ID
Azure DevOps