次の方法で共有


マネージド DevOps プールのセキュリティの設定を設定する

プールの作成時に、 Security タブを使用し、プールの作成後に Security 設定ウィンドウを使用して、マネージド DevOps プールのセキュリティ設定を構成できます。

組織のアクセスを構成する

既定では、Managed DevOps プールは、組織内のすべてのプロジェクトに付与されたプールへのアクセス権を持つ単一の組織用に構成されます。 必要に応じて、組織内の特定のプロジェクトへのアクセスを制限したり、必要に応じて追加の組織へのアクセスを許可したりできます。

1 つの組織でプールを使用する

既定では、Managed DevOps プールは、プールの作成時に指定する単一の Azure DevOps 組織で使用するように構成されています。 プールが 1 つの組織用に構成されている場合、組織名が表示され、[プールの設定] に構成されます

既定では、 プールをすべてのプロジェクトに追加Yes に設定され、Managed DevOps プールへのアクセスは組織内のすべてのプロジェクトに付与されます。 [ No を選択して、プールを使用できる組織内のプロジェクトを制限するプロジェクトの一覧を指定します。

1 つの組織のプロジェクトを構成するスクリーンショット。

複数の組織でプールを使用する

複数の組織でプールを使用複数の Azure DevOps 組織でプールを使用できるようにします。 各組織について、プールの使用を許可するプロジェクトを指定するか、空白のままにしてすべてのプロジェクトを許可します。 プールの Maximum エージェントで指定されたコンカレンシーの部分を指定して、各組織にParallelismを構成して、各組織に割り当てます。 すべての組織の並列処理の合計は、プールの最大コンカレンシーと等しい必要があります。 たとえば、 Maximum エージェント が 5 に設定されている場合、指定した組織の並列処理の合計は 5 である必要があります。 Maximum エージェントが 1 に設定されている場合、プールは 1 つの組織でのみ使用できます。

次の例では、fabrikam-tailspin 組織内の FabrikamResearch および FabrikamTest プロジェクト、および fabrikam-blue 組織内のすべてのプロジェクトでプールを使用できるように構成されています。

複数の組織を構成するスクリーンショット。

The sum of parallelism for all organizations must equal the max concurrency.などのエラーが発生した場合は、プールの Maximum エージェント数が Parallelism 列の合計と一致していることを確認します。

対話型モードを構成する

テストで UI テスト用の対話型ログインが必要な場合は、 EnableInteractiveMode 設定を有効にして対話型ログインを有効にします。

対話型モードの構成のスクリーンショット。

プール管理のアクセス許可

マネージド DevOps プール作成プロセスの一環として、組織レベルのエージェント プールが Azure DevOps に作成されます。 Pool の管理アクセス許可設定では、新しく作成された Azure DevOps プールの管理者ロールを付与するユーザーを指定します。 Managed DevOps プールの作成後に Azure DevOps エージェント プールのアクセス許可を表示および管理するには、「 エージェント プールの作成と管理 - エージェント プールのセキュリティを参照してください。

プール管理アクセス許可の構成のスクリーンショット。

  • 作成者のみ - マネージド DevOps プールを作成したユーザーが Azure DevOps エージェント プールの管理者として追加され、エージェント プールのセキュリティ設定で InheritanceOff に設定されます。 Creator のみ が既定の設定です。
  • プロジェクトからアクセス許可を継承 - Managed DevOps プールを作成したユーザーが Azure DevOps エージェント プールの管理者として追加され、エージェント プールのセキュリティ設定で InheritanceOn に設定されます。
  • 特定のアカウント - Azure DevOps で作成されたエージェント プールの管理者として追加するアカウントを指定します。 既定では、Managed DevOps プールの作成者が一覧に追加されます。

Note

Pool の管理アクセス許可設定は、プールの作成時に Security タブで構成され、プールの作成後に Security 設定には表示されません。 Managed DevOps プールの作成後に Azure DevOps エージェント プールのアクセス許可を表示および管理するには、「 エージェント プールの作成と管理 - エージェント プールのセキュリティを参照してください。

Key Vault の構成

マネージド DevOps プールには、プロビジョニング中に Azure Key Vault から証明書をフェッチする機能が用意されています。つまり、証明書は、Azure DevOps パイプラインを実行する時点までにマシン上に既に存在します。 この機能を使用するには、プール id を構成する必要があります。この ID には、Key Vault からシークレットをフェッチするための Key Vault シークレット ユーザーアクセス許可が必要です。 id を Key Vault Secrets User ロールに割り当てるには、Azure ロールベースのアクセス制御を使用した Key Vault のキー、証明書、シークレットへの Provide アクセスを参照してください。

Note

api-version 2024-10-19時点では、この機能を使用する場合は、プールで 1 つの ID のみを使用できます。 複数の ID のサポートは近日中に追加される予定です。

Key Vault からシークレットをフェッチするために使用できる ID は 1 つだけです。

Key Vault の統合は、 Settings > Security で構成されます。

Key Vault 証明書の構成のスクリーンショット。

Note

Key Vault 統合設定は、プールの作成後にのみ構成できます。 Key Vault 統合設定はプールの作成時に構成できません。また、プールの作成時に [ Security ] タブには表示されません。

SecretManagementSettings の構成

プール上の SecretManagementSettings を使用して取得された証明書は、Key Vault 内で発行された最新バージョンと自動的に同期されます。 これらのシークレットは、Azure DevOps パイプラインを実行する時点までにマシン上に存在します。つまり、時間を節約し、証明書をフェッチするためのタスクを削除できます。

重要

アクセス許可またはネットワークの問題が原因でシークレットを Key Vault からフェッチできない場合、エージェント仮想マシンのプロビジョニングは失敗します。

Windows の場合、証明書ストアの場所は、 LocalMachine または CurrentUserに設定できます。 この設定により、シークレットがマシン上のその場所に確実にインストールされます。 シークレットの取得のしくみの具体的な動作については、 Windows 用 Azure VMSS Key Vault 拡張機能のドキュメントを参照してください。

関連項目