Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
この記事では、Azure Pipelines で 保護されたリソース を保護するのに役立つセキュリティ機能について説明します。 パイプラインでは、実行中に開いているリソースまたは保護されたリソースにアクセスすることが必要になる場合があります。
成果物、パイプライン、テスト 計画、作業項目は オープン リソースです。 パイプラインはこれらのリソースに自由にアクセスでき、リソース トリガー イベントをサブスクライブすることでワークフローを完全に自動化できます。 開いているリソースの保護の詳細については、「 Protect プロジェクト」を参照してください。
リポジトリや環境などの保護されたリソースには、より多くのアクセス制限が必要です。 保護されたリソースを安全に保つために、保護されたリソースにアクセスするためにパイプラインのアクセス許可、チェック、承認を要求できます。
この記事は、Azure Pipelines のセキュリティ対策を実装するのに役立つシリーズの一部です。 詳細については、「 Azure Pipelines のセキュリティ保護」を参照してください。
[前提条件]
| カテゴリ | 必要条件 |
|---|---|
| Azure DevOps | - Azure DevOps をセキュリティで保護し、Azure Pipelines を セキュリティで保護する方法に関するページの推奨事項を実装します。 - YAML と Azure Pipelines に関する基本的な知識。 詳細については、「最初のパイプラインの作成」を参照してください。 |
| アクセス許可 | - パイプラインのアクセス許可を変更するには: プロジェクト管理者グループのメンバー。 - 組織のアクセス許可を変更するには: プロジェクト コレクション管理者グループのメンバー。 |
保護されたリソース
Azure Pipelines で保護されたリソースには、次のものが含まれます。
プロジェクト内の特定のユーザーとパイプラインのみが保護されたリソースにアクセスできるように、アクセス許可を設定できます。 また、リソースを使用するパイプライン ステージを開始する前に成功する必要があるチェックと承認を定義することもできます。 たとえば、パイプライン ステージで環境を使用する前に手動承認を要求できます。 失敗したチェックは、パイプラインの実行を中断または失敗する可能性があります。
リポジトリ リソース
パイプラインにリポジトリを追加するには、 Contribute リポジトリへのアクセス権を持つユーザーからの承認が必要です。 また、Azure Pipelines アクセス トークンのスコープを、パイプラインの resources セクションに明示的に一覧表示されているリポジトリのみに制限することで、リポジトリ リソースを保護することもできます。 詳細については、「 パイプラインからリポジトリに安全にアクセス する」および 「リポジトリ リソースを保護する」を参照してください。
アクセス許可
保護されたリソースに 対するユーザーのアクセス許可 と パイプラインのアクセス許可 を設定できます。
ユーザーに必要なユーザーにのみアクセス許可を付与します。 リソースの User ロールのメンバーは、承認とチェックを管理できます。
パイプラインのアクセス許可は、保護されたリソースを他のパイプラインにコピーすることを防びます。 パイプラインのアクセス許可を管理するには、信頼できる特定のパイプラインにのみアクセス権を明示的に付与します。
プロジェクト内のすべてのパイプラインで保護されたリソースへのアクセスを有効にするには、プロジェクト 管理者 ロールが必要です。 セキュリティを強化するために、 オープン アクセスを有効にしないでください。これにより、プロジェクト内のすべてのパイプラインでリソースを使用できるようになります。 詳細については、「 保護されたリソースに管理者ロールを追加する」を参照してください。
小切手
パイプラインで保護されたリソースをより完全にセキュリティで保護するには、パイプラインが保護されたリソースを使用する前に満たす必要があるチェックを追加します。 特定の承認またはその他の条件を要求できます。 詳細については、「承認とチェックを定義する」を参照してください。
承認
指定したユーザーまたはグループによる手動承認を保留している保護されたリソースのパイプライン要求をブロックできます。 このチェックでは、パイプラインの実行を続行する前にコードのレビューを許可することで、セキュリティの追加レイヤーが提供されます。
ブランチ コントロール
ブランチ制御により、承認されたブランチのみが保護されたリソースにアクセスできるようになります。 リソースを保護されたブランチチェックすると、承認されていないブランチでパイプラインが自動的に実行されなくなります。 ブランチ コントロールを使用すると、ブランチ固有の手動コード レビュー要件を拡張できます。
営業時間
このチェックを使用して、指定した日付と時間枠内にパイプラインデプロイが開始されることを確認します。
すべてのチェックを表示する
[ すべてのチェックを表示] を選択して、 必要なテンプレートなどの他のチェックを表示して適用します。