Azure Container Registry 用の Azure Policy 組み込み定義
このページは、Azure Container Registry 用の Azure Policy 組み込みポリシー定義のインデックスです。 他のサービス用の Azure Policy 組み込みについては、Azure Policy 組み込み定義に関するページをご覧ください。
各組み込みポリシー定義の名前は、Azure portal のポリシー定義にリンクしています。 [バージョン] 列のリンクを使用すると、Azure Policy GitHub リポジトリのソースを表示できます。
Azure Container Registry
名前 (Azure portal) |
説明 | 効果 | Version (GitHub) |
---|---|---|---|
[プレビュー]: コンテナー レジストリはゾーン冗長にする必要があります | コンテナー レジストリは、ゾーン冗長にするようにも、ゾーン冗長にしないようにも構成できます。 コンテナー レジストリの zoneRedundancy プロパティが "無効" に設定されると、レジストリはゾーン冗長ではありません。 このポリシーを適用すると、コンテナー レジストリのゾーン回復性が適切に構成され、ゾーン停止中のダウンタイムのリスクが減ります。 | Audit、Deny、Disabled | 1.0.0-preview |
[プレビュー]: コンテナー レジストリは仮想ネットワーク サービス エンドポイントを使う必要がある | このポリシーでは、仮想ネットワーク サービス エンドポイントを使用するように構成されていないすべてのコンテナー レジストリを監査します。 | Audit、Disabled | 1.0.0-preview |
Azure レジストリ コンテナー イメージの脆弱性が解決されている必要がある (Microsoft Defender 脆弱性管理を利用) | コンテナー イメージの脆弱性評価では、レジストリをスキャンして一般的な脆弱性 (CVE) を調べ、各イメージの詳細な脆弱性レポートを提供します。 脆弱性を解決すると、セキュリティ態勢が大幅に向上し、デプロイ前にイメージが安全に使用できるようになります。 | AuditIfNotExists、Disabled | 1.0.1 |
コンテナー レジストリを構成して、匿名認証を無効にする | 認証されていないユーザーがデータにアクセスできないように、レジストリに対する匿名プルを無効にします。 管理者ユーザー、リポジトリ スコープのアクセス トークン、匿名プルなどのローカル認証方法を無効にすると、コンテナー レジストリでは認証のために Azure Active Directory ID だけが確実に要求されるようになるため、セキュリティが向上します。 詳細については、https://aka.ms/acr/authentication を参照してください。 | Modify、Disabled | 1.0.0 |
ARM 対象ユーザー トークン認証が無効になるようコンテナー レジストリを構成する。 | レジストリへの認証のために Azure Active Directory ARM 対象ユーザー トークンを無効にします。 認証には、Azure Container Registry (ACR) の対象ユーザー トークンのみが使用されます。 これにより、レジストリで使用するためのトークンのみを認証に使用できるようになります。 ARM 対象ユーザー トークンを無効にしても、管理者ユーザーまたはスコープ付きアクセス トークンの認証には影響しません。 詳細については、https://aka.ms/acr/authentication を参照してください。 | Modify、Disabled | 1.0.0 |
コンテナー レジストリを構成して、ローカルの管理者アカウントを無効にする | レジストリの管理者アカウントを無効にして、ローカル管理者がアクセスできないようにします。管理者ユーザー、リポジトリ スコープのアクセス トークン、匿名プルなどのローカル認証方法を無効にすると、コンテナー レジストリでは認証のために Azure Active Directory ID だけが確実に要求されるようになるため、セキュリティが向上します。 詳細については、https://aka.ms/acr/authentication を参照してください。 | Modify、Disabled | 1.0.1 |
パブリック ネットワーク アクセスが無効になるようにコンテナー レジストリを構成する | Container Registry リソースの公衆ネットワーク アクセスを無効にして、パブリック インターネット経由でアクセスできないようにします。 これにより、データ漏えいのリスクを軽減することができます。 詳細情報: https://aka.ms/acr/portal/public-network および https://aka.ms/acr/private-link。 | Modify、Disabled | 1.0.0 |
リポジトリ スコープのアクセス トークンを無効にするようにコンテナー レジストリを構成する | トークンを使用してリポジトリにアクセスできないように、レジストリのリポジトリ スコープのアクセス トークンを無効にします。 管理者ユーザー、リポジトリ スコープのアクセス トークン、匿名プルなどのローカル認証方法を無効にすると、コンテナー レジストリでは認証のために Azure Active Directory ID だけが確実に要求されるようになるため、セキュリティが向上します。 詳細については、https://aka.ms/acr/authentication を参照してください。 | Modify、Disabled | 1.0.0 |
プライベート エンドポイントを使用してコンテナー レジストリを構成する | プライベート エンドポイントを使用すると、接続元または接続先にパブリック IP アドレスを使用せずに、仮想ネットワークが Azure サービスに接続されます。 Premium Container Registry リソースにプライベート エンドポイントをマッピングすることで、データ漏洩のリスクを軽減できます。 詳細情報: https://aka.ms/privateendpoints および https://aka.ms/acr/private-link。 | DeployIfNotExists、Disabled | 1.0.0 |
コンテナー レジストリは、カスタマー マネージド キーを使用して暗号化する必要がある | カスタマー マネージド キーを使用して、レジストリのコンテンツ保存時の暗号化を管理します。 既定では、データはサービス マネージド キーを使用して保存時に暗号化されますが、規制コンプライアンス標準を満たすには、一般にカスタマー マネージド キーが必要です。 カスタマー マネージド キーを使用すると、自分が作成して所有する Azure Key Vault キーを使用してデータを暗号化できます。 ローテーションや管理など、キーのライフサイクルを完全に制御し、責任を負うことになります。 詳細については、https://aka.ms/acr/CMK をご覧ください。 | Audit、Deny、Disabled | 1.1.2 |
コンテナー レジストリでは、匿名認証が無効になっている必要がある | 認証されていないユーザーがデータにアクセスできないように、レジストリに対する匿名プルを無効にします。 管理者ユーザー、リポジトリ スコープのアクセス トークン、匿名プルなどのローカル認証方法を無効にすると、コンテナー レジストリでは認証のために Azure Active Directory ID だけが確実に要求されるようになるため、セキュリティが向上します。 詳細については、https://aka.ms/acr/authentication を参照してください。 | Audit、Deny、Disabled | 1.0.0 |
コンテナー レジストリでは、ARM 対象ユーザー トークン認証を無効にする必要がある。 | レジストリへの認証のために Azure Active Directory ARM 対象ユーザー トークンを無効にします。 認証には、Azure Container Registry (ACR) の対象ユーザー トークンのみが使用されます。 これにより、レジストリで使用するためのトークンのみを認証に使用できるようになります。 ARM 対象ユーザー トークンを無効にしても、管理者ユーザーまたはスコープ付きアクセス トークンの認証には影響しません。 詳細については、https://aka.ms/acr/authentication を参照してください。 | Audit、Deny、Disabled | 1.0.0 |
コンテナー レジストリではエクスポートを無効にする必要があります | エクスポートを無効にすると、データプレーン (' docker pull ') を介してのみレジストリ内のデータにアクセスできるようになるため、セキュリティが強化されます。 'acr import' または ' acr transfer ' を使用して、レジストリからデータを移動することはできません。 エクスポートを無効にするには、公衆ネットワーク アクセスを無効にする必要があります。 詳細については、https://aka.ms/acr/export-policy を参照してください。 | Audit、Deny、Disabled | 1.0.0 |
コンテナー レジストリでは、ローカル管理者アカウントが無効になっている必要がある | レジストリの管理者アカウントを無効にして、ローカル管理者がアクセスできないようにします。管理者ユーザー、リポジトリ スコープのアクセス トークン、匿名プルなどのローカル認証方法を無効にすると、コンテナー レジストリでは認証のために Azure Active Directory ID だけが確実に要求されるようになるため、セキュリティが向上します。 詳細については、https://aka.ms/acr/authentication を参照してください。 | Audit、Deny、Disabled | 1.0.1 |
コンテナー レジストリでは、リポジトリ スコープのアクセス トークンが無効になっている必要がある | トークンを使用してリポジトリにアクセスできないように、レジストリのリポジトリ スコープのアクセス トークンを無効にします。 管理者ユーザー、リポジトリ スコープのアクセス トークン、匿名プルなどのローカル認証方法を無効にすると、コンテナー レジストリでは認証のために Azure Active Directory ID だけが確実に要求されるようになるため、セキュリティが向上します。 詳細については、https://aka.ms/acr/authentication を参照してください。 | Audit、Deny、Disabled | 1.0.0 |
コンテナー レジストリにはプライベート リンクをサポートする SKU が必要である | Azure Private Link を使用すると、接続元または接続先にパブリック IP アドレスを使用せずに、仮想ネットワークを Azure サービスに接続できます。 プライベート リンク プラットフォームでは、Azure のバックボーン ネットワークを介してコンシューマーとサービスの間の接続が処理されます。 サービス全体ではなくコンテナー レジストリにプライベート エンドポイントをマッピングすることで、データ漏えいのリスクが軽減されます。 詳細については、https://aka.ms/acr/private-link を参照してください。 | Audit、Deny、Disabled | 1.0.0 |
コンテナー レジストリでは無制限のネットワーク アクセスを許可しない | 既定では、Azure コンテナー レジストリは、任意のネットワーク上のホストからのインターネット経由の接続を受け入れます。 潜在的な脅威からレジストリを保護するには、特定のプライベート エンドポイント、パブリック IP アドレス、またはアドレス範囲のみからのアクセスを許可します。 レジストリにネットワーク規則が構成されていない場合は、異常なリソースとして表示されます。 Container Registry ネットワーク規則の詳細については以下を参照してください: https://aka.ms/acr/privatelink、https://aka.ms/acr/portal/public-network、https://aka.ms/acr/vnet。 | Audit、Deny、Disabled | 2.0.0 |
コンテナー レジストリでキャッシュ ルールの作成を禁止する必要がある | Azure コンテナー レジストリのキャッシュ ルールの作成を無効にして、キャッシュ プルを介したプルを防ぎます。 詳細については、https://aka.ms/acr/cache を参照してください。 | Audit、Deny、Disabled | 1.0.0 |
コンテナー レジストリではプライベート リンクを使用する必要がある | Azure Private Link を使用すると、接続元または接続先にパブリック IP アドレスを使用せずに、仮想ネットワークを Azure サービスに接続できます。 プライベート リンク プラットフォームでは、Azure バックボーン ネットワークを介してコンシューマーとサービスの間の接続が処理されます。サービス全体ではなく、コンテナー レジストリにプライベート エンドポイントをマッピングすることで、データ漏洩のリスクからも保護されます。 詳細については、https://aka.ms/acr/private-link を参照してください。 | Audit、Disabled | 1.0.1 |
イベント ハブへのコンテナー レジストリ (microsoft.containerregistry/registries) のカテゴリ グループごとのログを有効にする | リソース ログを有効にして、リソースで発生するアクティビティとイベントを追跡し、発生した変更を可視化し、分析情報を提供する必要があります。 このポリシーでは、カテゴリ グループを使用して診断設定をデプロイし、コンテナー レジストリ (microsoft.containerregistry/registries) 用のイベント ハブにログをルーティングします。 | DeployIfNotExists、AuditIfNotExists、Disabled | 1.2.0 |
コンテナー レジストリ (microsoft.containerregistry/registries) のカテゴリ グループごとの Log Analytics へのログを有効にする | リソース ログを有効にして、リソースで発生するアクティビティとイベントを追跡し、発生した変更を可視化し、分析情報を提供する必要があります。 このポリシーでは、カテゴリ グループを使用して診断設定をデプロイし、コンテナー レジストリ (microsoft.containerregistry/registries) 用の Log Analytics ワークスペースにログをルーティングします。 | DeployIfNotExists、AuditIfNotExists、Disabled | 1.1.0 |
コンテナー レジストリ (microsoft.containerregistry/registries) のカテゴリ グループごとのストレージへのログを有効にする | リソース ログを有効にして、リソースで発生するアクティビティとイベントを追跡し、発生した変更を可視化し、分析情報を提供する必要があります。 このポリシーでは、カテゴリ グループを使用して診断設定をデプロイし、コンテナー レジストリ (microsoft.containerregistry/registries) 用のストレージ アカウントにログをルーティングします。 | DeployIfNotExists、AuditIfNotExists、Disabled | 1.1.0 |
コンテナー レジストリに対してパブリック ネットワーク アクセスを無効にする必要がある | 公衆ネットワーク アクセスを無効にすると、パブリック インターネットにコンテナー レジストリが露出されなくなるのでセキュリティが向上します。 プライベート エンドポイントを作成すると、コンテナー レジストリ リソースの公開を制限することができます。 詳細情報: https://aka.ms/acr/portal/public-network および https://aka.ms/acr/private-link。 | Audit、Deny、Disabled | 1.0.0 |
次のステップ
- ポリシーを割り当ててコンプライアンスを確認するためのガイダンスを参照します。
- Azure Policy GitHub リポジトリのビルトインを参照します。
- 「Azure Policy の定義の構造」を確認します。
- 「Policy の効果について」を確認します。