Azure DevOps サービス |Azure DevOps Server |Azure DevOps Server 2022
組織のセキュリティを管理するときに、組織/コレクション レベル、プロジェクト レベル、およびオブジェクト レベルでアクセス許可を設定します。 この記事では、ユーザー インターフェイスが Azure DevOps によって多少異なるため、オブジェクト レベルでアクセス許可を設定するためのセキュリティ ダイアログにアクセスするのに役立ちます。 詳細については、「アクセス許可、アクセス、およびセキュリティ グループのはじめに」を参照してください。
次の項目はオブジェクトと見なされます。
- 全般: ダッシュボード、分析ビュー、Wiki、通知
- Azure Boards: エリア パス、イテレーション パス、共有クエリとクエリ フォルダーなど
- Azure Pipelines: パイプラインのビルドとリリース、デプロイ グループ、タスク グループなど
- Azure Repos: Git リポジトリとブランチ、TFVC フォルダーまたはブランチ
- Azure Artifacts: 成果物とフィード
作業項目、タグ、テスト計画、およびその他のテストアーティファクトは、通常、プロジェクト レベルまたは区分パスで設定されるセキュリティ設定の対象となります。
必須コンポーネント
| カテゴリ | 要件 |
|---|---|
| Permissions | プロジェクト管理者 グループのメンバー、または個別のオブジェクト セキュリティ ダイアログを介して明示的な権限を持つ者。 |
Note
TFVC では、プロジェクトごとに 1 つのリポジトリのみがサポートされます。 リポジトリまたはそのリポジトリから継承されるフォルダーやブランチに対するアクセス許可を設定できます。
オブジェクト セクションのアクセス許可ダイアログを開く
オブジェクトの [アクセス許可] ダイアログにアクセスするには、次の手順に従います。
- 特定のオブジェクトに移動します。
-
[詳細]
...を選択します。 - ドロップダウン メニューから [セキュリティ] を選びます。
Note
リポジトリや Analytics ビューなどの一部のオブジェクトには、少なくとも Basic アクセスが必要です。 詳細については、「アクセス レベル」を参照してください。
ダッシュボード、Wiki、および Analytic ビューのアクセス許可を設定する
プロジェクトの作成、削除、名前変更など、一部の一般的な項目に対して、プロジェクト レベルおよび組織レベルまたはコレクション レベルで権限を設定できます。 次の表は、ダッシュボード、Wiki、および Analytic ビューのオブジェクト レベルでのアクセス許可の設定に関する情報を示しています。
| Object | 既定のグループ メンバーシップ | セキュリティにアクセスする方法 | 継承 |
|---|---|---|---|
| ダッシュボード | Contributor | ダッシュボードを開き、ダッシュボードを選択し、詳細 ... >セキュリティ。 | ✔️ (チーム ダッシュボードのプロジェクト設定) |
| ウィキ | Contributor | wiki を開き、[詳細] [...]>[Wiki のセキュリティ] を選択します。 詳細については、「Wiki のアクセス許可の管理」を参照してください。 | no |
| Analytic ビュー | 共同作成者 & Basic | analytic ビューを開き、[詳細] [...]>[セキュリティ] を選択します。 | no |
Boards オブジェクトのアクセス許可を設定する
次の表は、領域と反復パス、作業項目などのオブジェクト レベルでのアクセス許可の設定に関する情報を示しています。
| Object | 既定のグループ メンバーシップ | セキュリティにアクセスする方法 | 継承 |
|---|---|---|---|
| エリア パス | プロジェクト管理者 | 区分の横にある [プロジェクトの設定]>[プロジェクトの構成]>[区分]>、[詳細] [...] >[セキュリティ] を選択します。 | ✔️ (親ノードからの子ノード) |
| イテレーション パス | プロジェクト管理者 | イテレーションの横にある [プロジェクトの設定]>[プロジェクトの構成]>[イテレーション]>[詳細] [...] >[セキュリティ] を開きます。 | ✔️ (親ノードからの子ノード) |
| 作業項目: | Contributor | [プロジェクトの設定]>[プロジェクトの構成]>[区分]>[区分パス]> 作業項目を開きます。 | no |
| 作業項目のクエリとクエリ フォルダー | クエリまたはフォルダーまたはプロジェクト管理者の作成者 | 作業項目のクエリまたはクエリ フォルダー >[詳細] ... >[セキュリティ] を開きます。 | no |
| 配信計画 | プロジェクト管理者 またはデリバリー計画の作成者 | デリバリー計画の横にある [ボード]>[デリバリー計画]>[その他][...]>[セキュリティ] を開きます。 | no |
| プロセス | プロジェクト管理者 | [詳細] ... >[セキュリティ] を選択します。 | ✔️ (組織/コレクションの設定から) |
Note
[ タグ定義の作成] を使用して、作業項目タグのアクセス許可をプロジェクト レベルで設定します。 作業項目タグは作業項目を通じて定義されるため、オブジェクトとして認識されません。
ヒント
レビュー担当者に関連する次のロールを分解してみましょう。
-
変更されたレビュー担当者:
- このロールは、一連のファイルに対して定義されたポリシーに基づいて、追加または削除されたすべてのレビュー担当者に適用されます。
- たとえば、
File1.csに変更を加える pull request (PR) を考えてみましょう。 - ユーザー A が
File1.csへの変更を確認する必要があるとポリシーで指定した場合、PR のそのイテレーションの "変更されたレビュー担当者" ロールに分類されます。
-
レビュー担当者をリセットする:
- このロールは、"投票のリセット" ポリシーに関連します。
- リポジトリには、新しいプッシュ時に投票をリセットする ポリシーが設定されています。
- PR を確認する必要があった人物 B が既に承認している場合、ポリシーは投票をリセットします。
- 結果として、そのイテレーションの "レビュー担当者のリセット" ロールになります。
Repos オブジェクトのアクセス許可を設定する
次の表は、リポジトリ、Git リポジトリ、Git ブランチ、TFVC リポジトリのオブジェクト レベルでのアクセス許可の設定に関する情報を示しています。
| Object | 既定のグループ メンバーシップ | セキュリティにアクセスする方法 | 継承 |
|---|---|---|---|
| Repos | プロジェクト管理者 | [プロジェクトの設定][リポジトリ]> を開き、リポジトリの >[セキュリティ] を強調表示します。 | ✔️ |
| Git リポジトリ | プロジェクト管理者 | [プロジェクトの設定]>[リポジトリ] および Git リポジトリを開きます。 | ✔️ (Git リポジトリのプロジェクト設定から) |
| Git ブランチ | プロジェクト管理者 | Repos>Branches> あなたのブランチ>詳細...>ブランチのセキュリティ | ✔️ |
| TFVC リポジトリ | プロジェクト管理者 | [プロジェクトの設定]>[リポジトリ] および TFVC リポジトリを開きます。 | ✔️ |
ヒント
-
ブランチ アクセス許可:
- ブランチは、リポジトリ レベルで行われた割り当てからアクセス許可のサブセットを継承します。
- 詳細については、「ブランチ ポリシーを使用して ブランチのアクセス許可を設定 し、 コード品質を向上させる」を参照してください。
-
共有クエリ フォルダー:
- 各チームの共有クエリ フォルダーを作成します。
- そのフォルダーの下にクエリを作成および編集するためのアクセス許可を、すべてのチーム メンバーに提供します。
-
共同作成者グループ:
- 共同作成者グループにユーザーを追加すると、作業項目を追加および変更できます。
- 区分パスに基づいて、ユーザーとグループのアクセス許可を制限できます。 詳細については、「作業追跡のアクセス許可とアクセス権を設定する」、「区分パスの下の作業項目を変更する」を参照してください。
-
アクセス許可レポート:
- プロジェクト コレクション管理者は、リポジトリのアクセス許可レポートを ダウンロードできます。
- この機能のユーザー インターフェイス ボタンは、プロジェクト コレクション管理者グループのメンバーではないユーザーには表示されません。
Pipelines オブジェクトのアクセス許可を設定する
次の表は、ビルド パイプライン、リリース パイプライン、デプロイ グループなどのオブジェクト レベルでのアクセス許可の設定に関する情報を示しています。
| Object | 既定のグループ メンバーシップ | セキュリティにアクセスする方法 | 継承 |
|---|---|---|---|
| Pipelines | プロジェクト管理者 | [パイプライン]>[パイプライン]>[すべて]>使用するパイプライン>[その他]>[セキュリティの管理] を開きます。 | ✔️ |
| ビルド パイプライン | プロジェクト管理者 | ビルド パイプライン>[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ |
| ビルド パイプライン実行 | プロジェクト管理者 | ビルド パイプライン実行 >[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ |
| リリース パイプライン | プロジェクト管理者 | リリース パイプライン>[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ |
| タスク グループ (クラシック) | プロジェクト管理者 | タスク グループ >[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ |
| デプロイ グループ | プロジェクト管理者 | デプロイ グループ >[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ |
| デプロイ プール | プロジェクト管理者 | 展開プール >[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ |
| 環境 | プロジェクト管理者 | 環境 >[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ (環境のアクセス許可設定から) |
| 変数グループ | プロジェクト管理者 | 変数グループ >[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ (ライブラリのアクセス許可設定から) |
| セキュア ファイル | プロジェクト管理者 | セキュア ファイル >[詳細] [...] >[セキュリティの管理] を開きます。 | ✔️ (ライブラリのアクセス許可設定から) |
アーティファクトオブジェクトのアクセス許可を設定する
次の表は、成果物とフィードのオブジェクト レベルでのアクセス許可の設定に関する情報を示しています。
| Object | 既定のグループ メンバーシップ | セキュリティにアクセスする方法 | 継承 |
|---|---|---|---|
| アイテム | プロジェクト管理者 | Artifacts> Azure Artifacts 設定アイコンを開きます。 適切なアクセス許可がない場合、アイコンは表示されません。 | no |
| フィード | プロジェクト管理者またはフィード管理者 | フィード >ギア アイコン>[アクセス許可]>[+ ユーザー/グループの追加] を開きます。 | no |
Test plans オブジェクトのアクセス許可を設定する
- テスト オブジェクトと用語で説明されているように、テスト 計画、テスト スイート、テスト ケース、およびその他のテスト オブジェクトは、テスト固有の作業項目の種類を表しているため、作業項目 と同様に管理します。
- プロジェクト レベルの設定または Area Path オブジェクト レベルの設定を使用して、テスト レベルのアクセス許可を管理します。 詳細については、「 テスト用のアクセス許可とアクセスを設定するを参照してください。
コマンド ラインを使用してオブジェクトのアクセス許可を設定する
az devops セキュリティ コマンド ライン ツールを使用して、さまざまなオブジェクトと機能のアクセス許可を表示および管理します。
コマンド ラインで管理できるより詳細なアクセス許可の例を次に示します。
-
通知:
EventSubscriptionとEventSubscriber名前空間を使用します。 -
ダッシュ ボード:
DashboardPrivileges名前空間を使用してダッシュボードを読み取りまたは作成します。 -
サービス エンドポイント:
ServiceEndpoints名前空間を介してサービス エンドポイントを使用、管理、または表示します。 -
デリバリー計画:
Plans名前空間を介してデリバリー計画を表示します。
名前空間の詳細については、「セキュリティ名前空間とアクセス許可のリファレンス」を参照してください。
オブジェクト通知のアクセス許可を設定する
通知のアクセス許可を設定するためのユーザー インターフェイスはありませんが、コマンドライン ツールと EventSubscription 名前空間を使用して一部のアクセス許可を設定できます。 詳細については、「セキュリティ名前空間とアクセス許可のリファレンス」を参照してください。
通知を管理するためのヒントを次に示します。
-
通知レベル:
- ユーザー、チーム、プロジェクト、組織、コレクションなど、さまざまなレベルで通知を設定します。
- 通知のアクセス許可を設定するためのユーザー インターフェイスはありません。
- ただし、コマンド ライン ツールと
EventSubscription名前空間を使用して、一部のアクセス許可を構成できます。
-
イニシエーター オプションをスキップする:
- 開始したイベントの通知を受信しない場合は、[ イニシエーターのスキップ ] オプションを有効にします。
- このオプションは、開始したアクションの通知を禁止します。
- 詳細については、「自分が開始したイベントの通知メールを受け取らないように設定する」を参照してください。
-
組織全体の通知:
- Azure DevOps では、組織全体の通知は直接サポートされません。
- 別の方法として、組織全体に到達する電子メール配布リストを提供することを検討してください。
- Azure DevOps Services では、すべてのユーザーがサインインしたときに表示される
az devops bannerコマンドを使用してバナーを作成できます。