本記事は GitHub Copilot および Microsoft Foundry を活用して作成されています。内容の正確性については各公式ドキュメントをご確認ください。
前回の日本のお客様向け Azure Policy 実践ガイド ~Built-in だけで始めるガバナンス~では、Built-in ポリシーによるガバナンスの始め方を扱いました。その中で、セキュリティ統制の中核として登場したのが Microsoft Cloud Security Benchmark v2(MCSB v2) です。
本記事はその第二弾として、MCSB v2 を実データで徹底解剖します。Azure Portal 上で実際に MCSB v2 イニシアティブを割り当て、そこからポリシー一覧・グループ・イニシアティブ定義を CSV/JSON でエクスポートした 414 ポリシー定義をもとに、「何が含まれるのか」「デフォルトでどう動くのか」「どう運用すべきか」を整理します。
想定読者: MCSB v2 の中身を正確に把握し、Defender for Cloud と組み合わせたセキュリティガバナンスを設計したい情報システム部門・クラウド基盤担当の方
注意: 本記事執筆時点(2026 年 6 月)で MCSB v2 はプレビュー(Preview) です。本番環境への適用は十分な検証のうえで行ってください。プレビュー中はポリシー内容・件数・バージョンが予告なく変更される可能性があります。最新の提供状況は Microsoft クラウド セキュリティ ベンチマーク v2 の概要(プレビュー) をご確認ください。
目次
1. MCSB v2 とは? v1 と何が違う?
1.1 MCSB(Microsoft Cloud Security Benchmark)とは
Microsoft Cloud Security Benchmark(MCSB)は、Microsoft が提供するクラウドセキュリティのベストプラクティス集であり、
Azure Policy の組み込みイニシアティブとして提供されます。CIS、NIST、PCI-DSS などの業界標準にマッピングされた
コントロール群を、Azure リソースに対して自動的に評価(監査)できます。
- 位置づけ: Microsoft Defender for Cloud の既定のセキュリティポリシー
- 形態: Azure Policy のイニシアティブ(複数ポリシーの束)
- 目的: マルチクラウド(Azure / AWS / GCP)対応のセキュリティ基準を統一的に評価
1.2 v1 と v2 の主な違い
| 観点 | MCSB v1 | MCSB v2 |
|---|---|---|
| ベース標準 | Azure Security Benchmark v3 | Azure Security Benchmark v3 をベースに拡張 |
| AI セキュリティ | なし | AI Security (AI-1〜AI-7) ドメインを新設 |
| コントロール体系 | 11 ドメイン | 12 ドメイン(AI Security 追加) |
| ポリシー数 | 約 200+ | 414 ポリシー定義(本データ実測) |
| マルチクラウド | Azure 中心 | Azure / AWS / GCP を明示的に考慮 |
| 生成 AI 対応 | — | プロンプト保護・コンテンツフィルタ・AI Red Teaming 等を包含 |
1.3 12 のセキュリティドメイン
MCSB v2 は以下のドメイン(カテゴリ)でコントロールを整理しています。
| カテゴリ | 略称 | 本イニシアティブのポリシー数 |
|---|---|---|
| AI Security | AI | 2 |
| Network Security | NS | 141 |
| Identity Management | IM | 45 |
| Privileged Access | PA | 12 |
| Data Protection | DP | 127 |
| Asset Management | AM | 4 |
| Logging and Threat Detection | LT | 42 |
| Incident Response | IR | 21 |
| Posture and Vulnerability Management | PV | 49 |
| Endpoint Security | ES | 2 |
| Backup and Recovery | BR | 7 |
| DevOps Security | DS | 2 |
| Governance and Strategy | GS | 0 |
| 合計(実ポリシー定義数) | 414 |
注: 1 つのポリシーが複数コントロールに属する場合があるため、カテゴリ別合計の単純加算は総数と一致しません。
1.4 デフォルト Effect の分布
割り当て直後(デフォルト設定)の Effect 分布は以下の通りです。
| Effect | 件数 | 挙動 |
|---|---|---|
| Audit(監査) | 263 | 非準拠をログ記録(ブロックなし) |
| AuditIfNotExists | 130 | 関連リソースの存在条件で監査 |
| Disabled(無効) | 16 | 評価しない(既定で無効) |
| Deny(拒否) | 4 | 非準拠リソースの作成/更新をブロック |
| DeployIfNotExists | 1 | 不足リソースを自動デプロイ(自動修復) |
| 合計 | 414 |
ポイント: 414 件中 393 件(約 95%)が Audit/AuditIfNotExists であり、
割り当て直後は監視中心で、リソース作成をブロックしません(Deny はわずか 4 件)。
1.5 リソースに直接影響する Effect(Deny / DeployIfNotExists)の一覧と影響
Audit/AuditIfNotExists/Disabled は評価・記録のみでリソースに干渉しませんが、
Deny(4 件)と DeployIfNotExists(1 件)はリソースの作成・更新・構成を実際に変更/ブロックします。
適用前に必ず影響範囲を確認してください。
Deny(拒否)— 4 件: いずれも Kubernetes(AKS)向け
非準拠の構成ではリソースの作成・更新がブロックされます。既存クラスターのデプロイや
Pod のスケジュールに影響する可能性があるため、本番適用前にテストクラスターでの検証が必須です。
| # | ポリシー名 | バージョン | 何をブロックするか | 想定される影響 |
|---|---|---|---|---|
| 1 | Kubernetes クラスター内で許可されたコンテナー イメージのみを実行する | 9.. | 許可リスト外のレジストリ/イメージからの Pod 作成 | 許可されていないイメージのデプロイが拒否される。許可レジストリの事前定義が必要 |
| 2 | Kubernetes クラスターで特権コンテナーを許可しない | 9.. |
privileged: true の特権コンテナー |
特権を要求する Pod(一部の監視/CNI/ストレージ系 DaemonSet 等)が起動できない |
| 3 | Kubernetes クラスター内の許可されたポートでのみリッスンするようにサービスを強制する | 8.. | 許可リスト外のポートを使う Service | 想定外ポートの Service 作成が拒否される。公開ポートの事前設計が必要 |
| 4 | Kubernetes クラスターは HTTPS 経由でのみアクセスできる必要があります | 8.. | TLS 未設定の Ingress(HTTP 受信) | HTTP のみの Ingress 作成が拒否される。証明書/TLS 設定が前提になる |
補足: これらは Azure Policy Add-on for AKS(Gatekeeper/OPA)を通じて評価されます。
AKS クラスターにアドオンが有効でない場合、評価対象になりません。
DeployIfNotExists(自動修復)— 1 件
条件を満たさないリソースに対して、Azure が自動的に構成変更(リソース/設定のデプロイ)を実行します。
実行にはマネージド ID と適切な RBAC 権限の付与が必要です。
| # | ポリシー名 | バージョン | 自動で何を行うか | 想定される影響 |
|---|---|---|---|---|
| 1 | ローカル キー アクセスが無効 (ローカル認証が無効) になるように Azure AI サービス リソースを構成する | 1.. | 対象の Azure AI サービスでローカル認証(APIキー認証)を無効化する設定を自動適用 | キー認証で接続していたアプリ/スクリプトが認証エラーになる。Entra ID 認証への切り替えが前提 |
注意:
DeployIfNotExistsは既定では新規作成・更新時に評価され、既存リソースには
修復タスク(Remediation)を実行したときに適用されます。意図せぬ一括変更を避けるため、
修復はスコープを限定して段階的に実施してください。
2. MCSB v2 に含まれるポリシー一覧(グループ別)
各セキュリティコントロール(グループ)配下のポリシーを、ポリシー名 / デフォルト Effect / バージョンで一覧化しました。
カテゴリ単位の折りたたみ内に、コントロール別の表を収録しています。
Azure Portal では、割り当てた MCSB v2 イニシアティブの「イニシアティブ コンプライアンス」画面から、
グループ(コントロール)別のコンプライアンス状況とポリシー数を確認できます。
AI Security(AI) — 2 ポリシー
AI-1 Ensure use of approved models(承認済みモデルの使用を徹底する) — 2 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | [プレビュー]: Azure Machine Learning のデプロイでは、承認済みのレジストリ モデルのみを使用する必要があります | Audit(監査) | 1..-preview |
| 2 | [プレビュー]: Azure Machine Learning モデル レジストリのデプロイは、許可されているレジストリを除いて制限されています | Disabled(無効) | 1..-preview |
Network Security(NS) — 141 ポリシー
NS-1 Establish network segmentation boundaries(ネットワークセグメンテーション境界を確立する) — 4 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | ご使用の仮想マシンに関連付けられたネットワーク セキュリティ グループでは、すべてのネットワーク ポートを制限する必要があります | AuditIfNotExists | 3.. |
| 2 | インターネットに接続されていない仮想マシンをネットワーク セキュリティ グループで保護する必要がある | AuditIfNotExists | 3.. |
| 3 | インターネットに接続されている仮想マシンをネットワーク セキュリティ グループで保護する必要がある | AuditIfNotExists | 3.. |
| 4 | サブネットはネットワーク セキュリティ グループに関連付けられている必要がある | Disabled(無効) | 3.. |
NS-2 Secure cloud services with network controls(ネットワーク制御でクラウドサービスを保護する) — 127 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | API Management ではサービス構成エンドポイントへのパブリック ネットワーク アクセスを無効にする必要がある | AuditIfNotExists | 1.. |
| 2 | API Management サービスでは仮想ネットワークを使用する必要がある | Audit(監査) | 1.. |
| 3 | App Configuration ではプライベート リンクをサポートする SKU を使用する必要がある | Audit(監査) | 1.. |
| 4 | App Configuration ではプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 5 | App Configuration でパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 6 | App Service Environment のアプリはパブリック インターネット経由で到達できない | Audit(監査) | 3.. |
| 7 | App Service アプリ スロットでは、パブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 8 | App Service アプリでは、パブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 9 | App Service アプリではプライベート リンクをサポートする SKU を使用する必要がある | Audit(監査) | 4.. |
| 10 | App Service アプリではプライベート リンクを使用する必要があります | AuditIfNotExists | 1.. |
| 11 | Application Insights コンポーネントでは、パブリック ネットワークからのログの取り込みとクエリをブロックする必要がある | Audit(監査) | 1.. |
| 12 | Automation アカウントでパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 13 | Azure AI Search サービスでは、プライベート リンクをサポートする SKU を使用する必要がある | Audit(監査) | 1.. |
| 14 | Azure AI Search サービスではパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 15 | Azure AI サービス リソースで Azure Private Link を使用する必要がある | Audit(監査) | 1.. |
| 16 | Azure AI サービス リソースでネットワーク アクセスを制限する必要がある | Audit(監査) | 3.. |
| 17 | Azure API for FHIR でプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 18 | Azure Arc プライベート リンク スコープでパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 19 | Azure Arc プライベート リンク スコープはプライベート エンドポイントを使用して構成する必要がある | Audit(監査) | 1.. |
| 20 | Azure Arc 対応 Kubernetes クラスターは Azure Arc プライベート リンク スコープを使用して構成する必要がある | Audit(監査) | 1.. |
| 21 | Azure Arc 対応サーバーは Azure Arc プライベート リンク スコープを使用して構成する必要がある | Audit(監査) | 1.. |
| 22 | Azure Attestation プロバイダーはパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 23 | Azure Cache for Redis Enterprise でプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 24 | Azure Cache for Redis でパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 25 | Azure Cache for Redis でプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 26 | Azure Cosmos DB でパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 27 | Azure Cosmos DB のアカウントにはファイアウォール規則を含める必要がある | Audit(監査) | 2.. |
| 28 | Azure Data Explorer ではプライベート リンクをサポートする SKU を使用する必要がある | Audit(監査) | 1.. |
| 29 | Azure Data Explorer のパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 30 | Azure Data Explorer クラスターはプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 31 | Azure Data Factory のパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 32 | Azure Databricks クラスターはパブリック IP を無効にする必要がある | Audit(監査) | 1.. |
| 33 | Azure Databricks ワークスペースではパブリック ネットワーク アクセスを無効にする必要があります | Audit(監査) | 1.. |
| 34 | Azure Databricks ワークスペースは Private Link や暗号化用カスタマー マネージド キーなどの機能をサポートしている Premium SKU である必要がある | Audit(監査) | 1.. |
| 35 | Azure Databricks ワークスペースはプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 36 | Azure Databricks ワークスペースは仮想ネットワーク内に存在する必要がある | Audit(監査) | 1.. |
| 37 | Azure Device Update for IoT Hub アカウントではプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 38 | Azure Event Grid トピックでは、公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 39 | Azure Event Grid トピックではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 40 | Azure Event Grid ドメインではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 41 | Azure Event Grid ドメインでは公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 42 | Azure Event Grid 名前空間 MQTT ブローカーがプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 43 | Azure Event Grid 名前空間では公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 44 | Azure Event Grid 名前空間トピック ブローカーがプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 45 | Azure File Sync ではプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 46 | Azure File Sync のパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 47 | Azure Front Door プロファイルでは、マネージド WAF ルールとプライベート リンクをサポートする Premium レベルを使用する必要がある | Audit(監査) | 1.. |
| 48 | Azure HDInsight ではプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 49 | Azure Health Data Services の匿名化サービスでパブリック ネットワーク アクセスが無効になっている必要があります | Audit(監査) | 1.. |
| 50 | Azure Health Data Services の匿名化サービスでプライベート リンクが使用されている必要があります | Audit(監査) | 1.. |
| 51 | Azure Health Data Services ワークスペースではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 52 | Azure IoT ハブのパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 53 | Azure Key Vault はパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 54 | Azure Key Vault はプライベート リンクを使用する必要がある | Disabled(無効) | 1..-preview |
| 55 | Azure Key Vaultでファイアウォールを有効にするか、パブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 3.. |
| 56 | Azure Machine Learning コンピューティングは仮想ネットワーク内に存在する必要がある | Audit(監査) | 1.. |
| 57 | Azure Machine Learning ワークスペースではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 58 | Azure Machine Learning ワークスペースで公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 2.. |
| 59 | Azure Machine Learningと AI Studio では、[承認された送信マネージド VNet のみを許可する] モードを必要があります | Audit(監査) | 1.. |
| 60 | Azure Managed Grafana ワークスペースではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 61 | Azure Managed Grafana ワークスペースでパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 62 | Azure Monitor Private Link スコープで Private Link 以外のリソースへのアクセスをブロックする必要がある | Audit(監査) | 1.. |
| 63 | Azure Monitor プライベート リンク スコープではプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 64 | Azure Purview アカウントではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 65 | Azure SQL Database のパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 66 | Azure SQL Database のプライベート エンドポイント接続を有効にする必要がある | Audit(監査) | 1.. |
| 67 | Azure SQL Managed Instance でパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 68 | Azure Service Bus 名前空間でプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 69 | Azure SignalR Service では Private Link 対応の SKU を使用する必要がある | Audit(監査) | 1.. |
| 70 | Azure SignalR Service ではパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 71 | Azure SignalR Service ではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 72 | Azure Spring Cloud でネットワークの挿入を使用する必要がある | Audit(監査) | 1.. |
| 73 | Azure Synapse ワークスペースではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 74 | Azure Synapse ワークスペースでパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 75 | Azure Virtual Desktop サービスではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 76 | Azure Virtual Desktop ホストプールでは、セッション ホストでのみパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 77 | Azure Virtual Desktop ホストプールではパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 78 | Azure Virtual Desktop ワークスペースではパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 79 | Azure Web PubSub サービスではパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 80 | Azure Web PubSub サービスではプライベート リンクをサポートする SKU を使用する必要がある | Audit(監査) | 1.. |
| 81 | Azure Web PubSub サービスではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 82 | Azure データ ファクトリにはプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 83 | Batch アカウントでは公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 84 | Bot Service ではパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 85 | BotService リソースではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 86 | Container Apps 環境ではパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 87 | CosmosDB アカウントでプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 88 | ElasticSan ではパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 89 | Event Hubs 名前空間でプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 90 | IoT Central ではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 91 | IoT Central に対してパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 92 | IoT Hub Device Provisioning Service インスタンスでパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 93 | IoT Hub Device Provisioning Service インスタンスでプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 94 | IoT Hub アカウント用の Azure Device Update に対する公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 95 | Kubernetes Services では許可された IP 範囲を定義する必要がある | Audit(監査) | 2.. |
| 96 | Log Analytics ワークスペースでは、パブリック ネットワークからのログの取り込みとクエリをブロックする必要がある | Audit(監査) | 1.. |
| 97 | MariaDB サーバーではプライベート エンドポイントを有効にする必要がある | AuditIfNotExists | 1.. |
| 98 | MariaDB サーバーに対して公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 2.. |
| 99 | MariaDB サーバーに対して公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 2.. |
| 100 | MySQL サーバーではプライベート エンドポイントを有効にする必要がある | AuditIfNotExists | 1.. |
| 101 | MySQL サーバーに対して公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 2.. |
| 102 | MySQL フレキシブル サーバーに対してパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 2.. |
| 103 | PostgreSQL サーバーではプライベート エンドポイントを有効にする必要がある | AuditIfNotExists | 1.. |
| 104 | PostgreSQL サーバーに対して公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 2.. |
| 105 | PostgreSQL フレキシブル サーバーに対してパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 3.. |
| 106 | Service Bus 名前空間ではパブリック ネットワーク アクセスを無効にする必要があります | Audit(監査) | 1.. |
| 107 | VM Image Builder テンプレートではプライベート リンクを使用する | Audit(監査) | 1.. |
| 108 | [プレビュー]: Azure Key Vault マネージド HSM でパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1..-preview |
| 109 | [プレビュー]: Azure Key Vault マネージド HSM でプライベート リンクを使用する必要がある | Audit(監査) | 1..-preview |
| 110 | [プレビュー]: Azure Recovery Services コンテナーではバックアップにプライベート リンクを使用する必要がある | Audit(監査) | 2..-preview |
| 111 | [プレビュー]: Recovery Services コンテナーではプライベート リンクを使用する必要がある | Audit(監査) | 1..-preview |
| 112 | イベント ハブ名前空間ではパブリック ネットワーク アクセスを無効にする必要があります | Audit(監査) | 1.. |
| 113 | コンテナー レジストリではプライベート リンクを使用する必要がある | Audit(監査) | 1.. |
| 114 | コンテナー レジストリでは無制限のネットワーク アクセスを許可しない | Audit(監査) | 2.. |
| 115 | コンテナー レジストリにはプライベート リンクをサポートする SKU が必要である | Audit(監査) | 1.. |
| 116 | コンテナー レジストリに対してパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 117 | ストレージ アカウントでは、仮想ネットワーク規則を使用してネットワーク アクセスを制限する必要がある (Databricks によって作成されたストレージ アカウントを除く) | Audit(監査) | 1.. |
| 118 | ストレージ アカウントではネットワーク アクセスを制限する必要があります | Disabled(無効) | 1.. |
| 119 | ストレージ アカウントではプライベート リンクを使用する必要がある | AuditIfNotExists | 2.. |
| 120 | ストレージ アカウントではプライベート リンクを使用する必要がある (Databricks によって作成されたストレージ アカウントを除く) | AuditIfNotExists | 1.. |
| 121 | ストレージ アカウントでパブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 122 | ストレージ アカウントのパブリック アクセスを禁止する必要がある | Audit(監査) | 3..-preview |
| 123 | ストレージアカウントは、仮想ネットワーク規則を使用してネットワーク アクセスを制限する必要がある | Audit(監査) | 1.. |
| 124 | ディスク アクセス リソースにはプライベート リンクを使用する必要がある | AuditIfNotExists | 1.. |
| 125 | マネージド ディスクで公衆ネットワーク アクセスを無効にする必要がある | Audit(監査) | 2.. |
| 126 | 関数アプリ スロットでは、パブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
| 127 | 関数アプリでは、パブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 1.. |
NS-3 Deploy firewall at the edge of enterprise network(企業ネットワークの境界にファイアウォールを配置する) — 4 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | [プレビュー]: すべてのインターネット トラフィックはデプロイされた Azure Firewall を介してルーティングする | AuditIfNotExists | 3..-preview |
| 2 | 仮想マシンで管理ポートを閉じる必要がある | AuditIfNotExists | 3.. |
| 3 | 仮想マシンの管理ポートは、Just-In-Time のネットワーク アクセス制御で保護する必要があります | AuditIfNotExists | 3.. |
| 4 | 仮想マシン上の IP 転送を無効にする必要がある | AuditIfNotExists | 3.. |
NS-5 Deploy DDOS protection(DDoS 保護を展開する) — 2 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure DDoS Protection を有効にする必要がある | AuditIfNotExists | 3.. |
| 2 | 仮想ネットワークを Azure DDoS Protection によって保護する必要がある | Audit(監査) | 1.. |
NS-6 Deploy web application firewall(Web アプリケーションファイアウォールを展開する) — 2 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Front Door エントリ ポイントに対して Azure Web Application Firewall を有効にする必要がある | Audit(監査) | 1.. |
| 2 | アプリケーション ゲートウェイ に対して Web アプリケーション ファイアウォール (WAF) を有効にする必要がある | Audit(監査) | 2.. |
NS-8 Detect and disable insecure services and protocols(安全でないサービス・プロトコルを検出して無効化する) — 2 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | App Service アプリは最新の TLS バージョンを使用する必要があります | AuditIfNotExists | 2.. |
| 2 | 関数アプリは最新の TLS バージョンを使用する必要があります | AuditIfNotExists | 2.. |
Identity Management(IM) — 45 ポリシー
IM-1 Use centralized identity and authentication system(一元化された ID・認証システムを使用する) — 22 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | App Service アプリでは、FTP デプロイに対してローカル認証の方法を無効にする必要があります | AuditIfNotExists | 1.. |
| 2 | App Service アプリでは、SCM サイトのデプロイに対してローカル認証の方法を無効にする必要があります | AuditIfNotExists | 1.. |
| 3 | Application Insights コンポーネントでは、非 Azure Active Directory ベースの取り込みをブロックする必要がある。 | Audit(監査) | 1.. |
| 4 | Azure AI サービス リソースでキー アクセスを無効にする (ローカル認証を無効にする) 必要がある | Audit(監査) | 1.. |
| 5 | Azure Kubernetes Service クラスターで Microsoft Entra ID 統合を有効にする必要がある | Audit(監査) | 1.. |
| 6 | Azure Machine Learning コンピューティングでローカル認証方法を無効にする必要がある | Audit(監査) | 2.. |
| 7 | Azure SQL Managed Instance では、作成時に Microsoft Entra のみの認証を有効にする必要がある | Audit(監査) | 1.. |
| 8 | Azure SQL Managed Instanceでは Microsoft Entra のみの認証を有効にする必要がある | Audit(監査) | 1.. |
| 9 | Azure SQL データベースでは Microsoft Entra のみの認証を有効にする必要がある | Audit(監査) | 1.. |
| 10 | Azure SQL 論理サーバーでは、作成時に Microsoft Entra のみの認証を有効にする必要がある | Audit(監査) | 1.. |
| 11 | Cosmos DB データベース アカウントでは、ローカル認証方法を無効にする必要がある | Audit(監査) | 1.. |
| 12 | PostgreSQL サーバーに対して Microsoft Entra 管理者をプロビジョニングする必要がある | AuditIfNotExists | 1.. |
| 13 | SQL Server に対して Azure Active Directory 管理者をプロビジョニングする必要がある | AuditIfNotExists | 1.. |
| 14 | Service Fabric クラスターでは、クライアント認証に Azure Active Directory のみを使用する必要がある | Audit(監査) | 1.. |
| 15 | Synapse ワークスペースでは Microsoft Entra のみの認証を有効にする必要がある | Audit(監査) | 1.. |
| 16 | Synapse ワークスペースは、ワークスペースの作成時は認証に Microsoft Entra ID のみを使用する必要がある | Audit(監査) | 1.. |
| 17 | VPN ゲートウェイでは、ポイント対サイト ユーザーに対して Azure Active Directory (Azure AD) 認証のみを使用する必要があります | Audit(監査) | 1.. |
| 18 | [プレビュー]: Azure PostgreSQL フレキシブル サーバーで Microsoft Entra 専用認証が有効になっている必要がある | Audit(監査) | 1..-preview |
| 19 | コンテナー レジストリでは、ローカル管理者アカウントが無効になっている必要があります。 | Audit(監査) | 1.. |
| 20 | ストレージ アカウントでは、共有キーのアクセスを禁止する必要がある | Audit(監査) | 2.. |
| 21 | ストレージ アカウントで共有キーへのアクセスを禁止する必要がある (Databricks によって作成されたストレージ アカウントを除く) | Audit(監査) | 1.. |
| 22 | ローカル キー アクセスが無効 (ローカル認証が無効) になるように Azure AI サービス リソースを構成する | DeployIfNotExists | 1.. |
IM-2 Protect identity and authentication system(ID・認証システムを保護する) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | リソースを作成または更新するには、ユーザーが多要素認証を使用して認証する必要があります | Audit(監査) | 1.. |
IM-3 Manage application identities securely and automatically(アプリケーション ID を安全かつ自動的に管理する) — 15 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | App Service アプリ スロットでは、マネージド ID を使用する必要がある | AuditIfNotExists | 1.. |
| 2 | App Service アプリではマネージド ID を使用する必要があります | AuditIfNotExists | 3.. |
| 3 | Automation アカウントではマネージド ID を使用する必要がある | Audit(監査) | 1.. |
| 4 | Azure Data Factory のリンクされたサービスではシステム割り当てマネージド ID 認証を使用する必要がある (サポートされている場合) | Audit(監査) | 2.. |
| 5 | Azure Machine Learning ワークスペースではユーザー割り当てマネージド ID を使用する必要がある | Audit(監査) | 1.. |
| 6 | Cognitive Services アカウントではマネージド ID を使用する必要がある | Audit(監査) | 1.. |
| 7 | Stream Analytics ジョブは、エンドポイントを認証するためにマネージド ID を使用する必要がある | Audit(監査) | 1.. |
| 8 | [プレビュー]: Azure Kubernetes からのマネージド ID フェデレーション資格情報は、信頼できるソースからのものである必要がある | Audit(監査) | 1..-preview |
| 9 | [プレビュー]: GitHub からのマネージド ID フェデレーション資格情報は、信頼できるリポジトリ所有者からのものである必要がある | Audit(監査) | 1..-preview |
| 10 | [プレビュー]: ご使用のマシンでマネージド ID を有効にする必要があります | Audit(監査) | 1..-preview |
| 11 | [プレビュー]: マネージド ID フェデレーション資格情報は、許可された発行者の種類からのものである必要がある | Audit(監査) | 1..-preview |
| 12 | コンテナー アプリに対してマネージド ID を有効にする必要がある | Audit(監査) | 1.. |
| 13 | 仮想マシンのゲスト構成拡張機能は、システム割り当てマネージド ID を使用してデプロイする必要がある | AuditIfNotExists | 1.. |
| 14 | 通信サービス リソースではマネージド ID を使用する必要がある | Audit(監査) | 1.. |
| 15 | 関数アプリではマネージド ID を使用する必要があります | AuditIfNotExists | 3.. |
IM-4 Authenticate server and services(サーバーとサービスを認証する) — 4 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | API Management から API バックエンドへの呼び出しでは、証明書の拇印または名前の検証をバイパスすることはできない | Audit(監査) | 1.. |
| 2 | API Management から API バックエンドへの呼び出しは認証する必要がある | Audit(監査) | 1.. |
| 3 | Azure API Management の API エンドポイントを認証する必要がある | AuditIfNotExists | 1.. |
| 4 | Azure SQL Databaseは TLS バージョン 1.2 以降を実行している必要があります | Audit(監査) | 2.. |
IM-6 Use strong authentication controls(強力な認証制御を使用する) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Linux マシンに対する認証には SSH キーが必要 | AuditIfNotExists | 3.. |
IM-8 Restrict the exposure of credential and secrets(資格情報・シークレットの露出を制限する) — 2 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | API Management のシークレット名付きの値は Azure Key Vault に保存する必要がある | Audit(監査) | 1.. |
| 2 | マシンではシークレットの検出結果が解決されている必要がある | AuditIfNotExists | 1.. |
Privileged Access(PA) — 12 ポリシー
PA-1 Separate and limit highly privileged/administrative users(高権限・管理者ユーザーを分離・制限する) — 4 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure リソースに対する所有者アクセス許可を持つ、ブロックされているアカウントを削除する必要がある | AuditIfNotExists | 1.. |
| 2 | Azure リソースに対する所有者アクセス許可を持つゲスト アカウントを削除する必要がある | AuditIfNotExists | 1.. |
| 3 | サブスクリプションには最大 3 人の所有者を指定する必要がある | AuditIfNotExists | 3.. |
| 4 | サブスクリプションに複数の所有者が割り当てられている必要がある | AuditIfNotExists | 3.. |
PA-2 Avoid standing access for accounts and permissions(アカウント・権限の常時アクセスを避ける) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | 仮想マシンの管理ポートは、Just-In-Time のネットワーク アクセス制御で保護する必要があります | AuditIfNotExists | 3.. |
PA-4 Review and reconcile user access regularly(ユーザーアクセスを定期的にレビュー・棚卸しする) — 5 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure リソースに対する所有者アクセス許可を持つ、ブロックされているアカウントを削除する必要がある | AuditIfNotExists | 1.. |
| 2 | Azure リソースに対する所有者アクセス許可を持つゲスト アカウントを削除する必要がある | AuditIfNotExists | 1.. |
| 3 | Azure リソースに対する書き込みアクセス許可を持つゲスト アカウントを削除する必要がある | AuditIfNotExists | 1.. |
| 4 | Azure リソースに対する読み取りおよび書き込みアクセス許可を持つ、ブロックされているアカウントは削除する必要がある | AuditIfNotExists | 1.. |
| 5 | Azure リソースに対する読み取りアクセス許可を持つゲスト アカウントを削除する必要がある | AuditIfNotExists | 1.. |
PA-7 Follow just enough administration (least privilege) principle(必要最小限の管理(最小権限)の原則に従う) — 4 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | API Management サブスクリプションのスコープをすべての API に限定することはできません | Audit(監査) | 1.. |
| 2 | Azure Key Vaultでは RBAC アクセス許可モデルを使用する必要がある | Audit(監査) | 1.. |
| 3 | Kubernetes Services ではロールベースのアクセス制御 (RBAC) を使用する必要がある | Audit(監査) | 1.. |
| 4 | カスタム RBAC ロールの使用状況を監査する | Audit(監査) | 1.. |
Data Protection(DP) — 127 ポリシー
DP-1 Discover, classify, and label sensitive data(機密データを検出・分類・ラベル付けする) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Microsoft Defender for API を有効にする必要がある | AuditIfNotExists | 1.. |
DP-2 Monitor anomalies and threats targeting sensitive data(機密データを狙う異常・脅威を監視する) — 6 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Defender for Azure SQL Database servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 2 | Azure Defender for SQL servers on machines を有効にする必要がある | AuditIfNotExists | 1.. |
| 3 | Microsoft Defender for API を有効にする必要がある | AuditIfNotExists | 1.. |
| 4 | Microsoft Defender for Storage を有効にする必要がある | AuditIfNotExists | 1.. |
| 5 | オープンソース リレーショナル データベース用 Azure Defender を有効にする必要があります | AuditIfNotExists | 1.. |
| 6 | 保護されていない SQL マネージド インスタンスに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
DP-3 Encrypt sensitive data in transit(転送中の機密データを暗号化する) — 31 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | API Management の API では暗号化されたプロトコルのみを使用する必要がある | Audit(監査) | 2.. |
| 2 | App Serivce アプリには FTPS のみを必要とします | AuditIfNotExists | 3.. |
| 3 | App Service Environment では、TLS 1.0 および 1.1 を無効にする必要があります | Audit(監査) | 2.. |
| 4 | App Service Environment では内部暗号化を有効にする必要があります | Audit(監査) | 1.. |
| 5 | App Service Environment は最強の TLS 暗号スイートを使用して構成する必要がある | Audit(監査) | 1.. |
| 6 | App Service アプリ スロットでは、最新の TLS バージョンを使用する必要がある | AuditIfNotExists | 1.. |
| 7 | App Service アプリでエンド ツー エンドの暗号化を有効にする必要がある | Audit(監査) | 1.. |
| 8 | App Service アプリに HTTPS を介してのみアクセスできるようにする | Audit(監査) | 4.. |
| 9 | App Service アプリは最新の TLS バージョンを使用する必要があります | AuditIfNotExists | 2.. |
| 10 | Azure Batch プールでは、ディスク暗号化を有効にする必要があります | Audit(監査) | 1.. |
| 11 | Azure Cache for Redis へのセキュリティで保護された接続のみを有効にする必要がある | Audit(監査) | 1.. |
| 12 | Azure Front Door Standard と Premium では、最低 TLS バージョン 1.2 が実行されている必要があります | Audit(監査) | 1.. |
| 13 | Azure HDInsight クラスターでは、Azure HDInsight クラスター ノード間の通信を暗号化するために転送中の暗号化を使用する必要がある | Audit(監査) | 1.. |
| 14 | Azure SQL Databaseは TLS バージョン 1.2 以降を実行している必要があります | Audit(監査) | 2.. |
| 15 | Bot Service エンドポイントは有効な HTTPS URI である必要があります | Audit(監査) | 1.. |
| 16 | Kubernetes クラスターは HTTPS 経由でのみアクセスできる必要があります | Deny(拒否) | 8.. |
| 17 | MySQL データベース サーバーでは [SSL 接続を強制する] が有効でなければならない | Audit(監査) | 1.. |
| 18 | PostgreSQL データベース サーバーでは [SSL 接続を強制する] が有効でなければならない | Audit(監査) | 1.. |
| 19 | PostgreSQL フレキシブル サーバーで TLS バージョン 1.2 以上が実行されている必要がある | AuditIfNotExists | 1.. |
| 20 | SQL マネージド インスタンスには少なくともバージョン 1.2 の TLS が必要 | Audit(監査) | 1.. |
| 21 | [プレビュー]: ホストと VM のネットワークは、Azure Stack HCI システムで保護する必要がある | AuditIfNotExists | 1..-preview |
| 22 | アプリ スロットApp Serviceエンド ツー エンドの暗号化を有効にする必要がある | Audit(監査) | 1.. |
| 23 | ストレージ アカウントには、指定された TLS の最小バージョンが必要です | Audit(監査) | 1.. |
| 24 | ストレージ アカウントへの安全な転送を有効にする必要がある | Audit(監査) | 2.. |
| 25 | セキュリティで保護された通信プロトコルを使用するように Windows マシンを構成する必要がある | AuditIfNotExists | 4.. |
| 26 | 関数アプリ スロットでは、最新の TLS バージョンを使用する必要がある | AuditIfNotExists | 1.. |
| 27 | 関数アプリ スロットでエンド ツー エンドの暗号化を有効にする必要がある | Audit(監査) | 1.. |
| 28 | 関数アプリでエンド ツー エンドの暗号化を有効にする必要がある | Audit(監査) | 1.. |
| 29 | 関数アプリに HTTPS を介してのみアクセスできるようにする | Audit(監査) | 5.. |
| 30 | 関数アプリには FTPS のみを必要とします | AuditIfNotExists | 3.. |
| 31 | 関数アプリは最新の TLS バージョンを使用する必要があります | AuditIfNotExists | 2.. |
DP-4 Enable data at rest encryption by default(保存データの暗号化を既定で有効にする) — 25 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Arc SQL Managed Instance に対して Transparent Data Encryption を有効にする必要があります。 | Audit(監査) | 1.. |
| 2 | Automation アカウントの変数は暗号化する必要があります | Audit(監査) | 1.. |
| 3 | Azure Data Box ジョブで、デバイス上の保存データについて二重暗号化を有効にする必要がある | Audit(監査) | 1.. |
| 4 | Azure Data Explorer でディスク暗号化を有効にする必要がある | Audit(監査) | 2.. |
| 5 | Azure Data Explorer で二重暗号化を有効にする必要がある | Audit(監査) | 2.. |
| 6 | Azure Database for MySQL サーバーに対してインフラストラクチャ暗号化を有効にする必要がある | Audit(監査) | 1.. |
| 7 | Azure Database for PostgreSQL サーバーに対してインフラストラクチャ暗号化を有効にする必要がある | Audit(監査) | 1.. |
| 8 | Azure Edge Hardware Center のデバイスでは二重暗号化のサポートが有効になっている必要がある | Audit(監査) | 2.. |
| 9 | Azure HDInsight クラスターで、保存データを暗号化するためにホストで暗号化を使用する必要がある | Audit(監査) | 1.. |
| 10 | Azure Kubernetes Service クラスター内のエージェント ノード プールの一時ディスクとキャッシュは、ホストで暗号化する必要がある | Audit(監査) | 1.. |
| 11 | Azure Monitor ログ クラスターはインフラストラクチャ暗号化を有効にして作成する必要がある (二重暗号化) | Audit(監査) | 1.. |
| 12 | Azure MySQL フレキシブル サーバーで Microsoft Entra 専用認証が有効になっている必要がある | AuditIfNotExists | 1.. |
| 13 | Azure NetApp Files SMB ボリュームでは SMB3 暗号化を使用する必要があります | Audit(監査) | 1.. |
| 14 | Azure Stack Edge デバイスでは二重暗号化を使用する必要がある | Audit(監査) | 1.. |
| 15 | Linux 仮想マシンでは、Azure Disk Encryption かEncryptionAtHost を有効にする必要があります。 | AuditIfNotExists | 1.. |
| 16 | MySQL サーバーに対して Microsoft Entra 管理者をプロビジョニングする必要がある | AuditIfNotExists | 1.. |
| 17 | NFSv4.1 型の Azure NetApp Files ボリュームでは Kerberos データ暗号化を使用する必要があります | Audit(監査) | 1.. |
| 18 | SQL データベースで Transparent Data Encryption を有効にする必要がある | AuditIfNotExists | 2.. |
| 19 | Service Fabric クラスターでは、ClusterProtectionLevel プロパティを EncryptAndSign に設定する必要がある | Audit(監査) | 1.. |
| 20 | Windows 仮想マシンでは、Azure Disk Encryption か EncryptionAtHost を有効にする必要があります。 | AuditIfNotExists | 1.. |
| 21 | イベント ハブの名前空間では二重暗号化を有効にする必要があります | Audit(監査) | 1.. |
| 22 | サービス ハブの名前空間では二重暗号化を有効にする必要があります | Audit(監査) | 1.. |
| 23 | ストレージ アカウントにはインフラストラクチャの暗号化が必要 | Audit(監査) | 1.. |
| 24 | マネージド ディスクはプラットフォーム マネージド キーとカスタマー マネージド キーの両方を使用して二重暗号化する必要がある | Audit(監査) | 1.. |
| 25 | 仮想マシンおよび仮想マシン スケール セットでは、ホストでの暗号化が有効になっている必要がある | Audit(監査) | 1.. |
DP-5 Use customer-managed key option in data at rest encryption when required(必要に応じて保存データ暗号化でカスタマーマネージドキーを使用する) — 46 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure AI サービス リソースでは保存データをカスタマー マネージド キー (CMK) で暗号化する必要がある | Disabled(無効) | 2.. |
| 2 | Azure API for FHIR での保存データの暗号化には、カスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 3 | Azure Automation アカウントでは、保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 4 | Azure Batch アカウントではデータを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 5 | Azure Cache for Redis Enterprise では、ディスク データの暗号化にカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 6 | Azure Container Instance コンテナー グループでは、暗号化にカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 7 | Azure Cosmos DB アカウントでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Disabled(無効) | 1.. |
| 8 | Azure Data Box ジョブで、デバイスのロック解除用パスワードを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 9 | Azure Data Explorer における保存時の暗号化でカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 10 | Azure Databricks ワークスペースは Private Link や暗号化用カスタマー マネージド キーなどの機能をサポートしている Premium SKU である必要がある | Audit(監査) | 1.. |
| 11 | Azure Device Update アカウントでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 12 | Azure HDInsight クラスターでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 13 | Azure Health Bot では保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 14 | Azure Kubernetes Service クラスター内のオペレーティング システムとデータ ディスクの両方がカスタマー マネージド キーによって暗号化されている必要がある | Audit(監査) | 1.. |
| 15 | Azure Load Testing リソースでは、保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 16 | Azure Machine Learning ワークスペースは、カスタマー マネージド キーを使用して暗号化する必要があります | AuditIfNotExists | 1.. |
| 17 | Azure Machine Learning ワークスペースは、カスタマー マネージド キーを使用して暗号化する必要がある | Disabled(無効) | 1.. |
| 18 | Azure Monitor ログ クラスターは、カスタマー マネージド キーを使用して暗号化する必要がある | Audit(監査) | 1.. |
| 19 | Azure Stream Analytics ジョブでは、データの暗号化にカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 20 | Azure Synapse ワークスペースでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 21 | Azure データ ファクトリは、カスタマー マネージド キーを使用して暗号化する必要がある | Audit(監査) | 1.. |
| 22 | Bot Service はカスタマー マネージド キーを使用して暗号化される必要がある | Audit(監査) | 1.. |
| 23 | DICOM サービスでの保存データの暗号化には、カスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 24 | ElasticSan ボリューム グループでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 25 | Event Hubs の名前空間では、暗号化のために カスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 26 | FHIR サービスでの保存データの暗号化には、カスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 27 | Fluid Relay では保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 28 | HPC Cache アカウントでは、暗号化にカスタマー マネージド キーを使用する必要がある | Audit(監査) | 2.. |
| 29 | Logic Apps 統合サービス環境は、カスタマー マネージド キーを使用して暗号化する必要がある | Audit(監査) | 1.. |
| 30 | MySQL サーバーでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Disabled(無効) | 1.. |
| 31 | OS およびデータ ディスクはカスタマー マネージド キーで暗号化する必要がある | Audit(監査) | 3.. |
| 32 | PostgreSQL サーバーでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Disabled(無効) | 1.. |
| 33 | PostgreSQL フレキシブル サーバーでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要があります | Audit(監査) | 1.. |
| 34 | SQL Server では保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Disabled(無効) | 2.. |
| 35 | SQL マネージド インスタンスでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Disabled(無効) | 2.. |
| 36 | Service Bus のプレミアム名前空間では、暗号化のためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 37 | [プレビュー]: Azure Stack HCI システムには暗号化されたボリュームが必要である | AuditIfNotExists | 1..-preview |
| 38 | カスタマー マネージド キーの暗号化を Arc SQL Managed Instance の CMK 暗号化の一部として使用する必要があります。 | Audit(監査) | 1.. |
| 39 | キュー ストレージでは暗号化にカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 40 | コンテナー レジストリは、カスタマー マネージド キーを使用して暗号化する必要がある | Disabled(無効) | 1.. |
| 41 | ストレージ アカウントでは、暗号化にカスタマー マネージド キーを使用する必要がある | Disabled(無効) | 1.. |
| 42 | ストレージ アカウントの暗号化スコープでは、保存データに二重暗号化を使用する必要があります | Audit(監査) | 1.. |
| 43 | ストレージ アカウントの暗号化スコープでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 44 | テーブル ストレージでは暗号化にカスタマー マネージド キーを使用する必要がある | Audit(監査) | 1.. |
| 45 | マネージド ディスクではカスタマー マネージド キーによる暗号化のためにディスク暗号化セットの特定のセットを使用する必要がある | Audit(監査) | 2.. |
| 46 | マネージド ディスクはプラットフォーム マネージド キーとカスタマー マネージド キーの両方を使用して二重暗号化する必要がある | Audit(監査) | 1.. |
DP-6 Use a secure key management process(安全なキー管理プロセスを使用する) — 11 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | API Management のシークレット名付きの値は Azure Key Vault に保存する必要がある | Audit(監査) | 1.. |
| 2 | Azure Cosmos DB アカウントは、最後のアカウント キーの再生成以降に許可される最大日数を超えることはできません。 | Audit(監査) | 1.. |
| 3 | Key Vault キーには有効期限が必要 | Disabled(無効) | 1.. |
| 4 | Key Vault シークレットには有効期限が必要 | Disabled(無効) | 1.. |
| 5 | キーには、作成後指定された日数以内にローテーションがスケジュールされることを保証するローテーション ポリシーが含まれている必要があります。 | Audit(監査) | 1.. |
| 6 | キーに最長有効期間を指定する必要がある | Audit(監査) | 1.. |
| 7 | キーは指定された日数より長い間アクティブであってはならない | Audit(監査) | 1.. |
| 8 | シークレットに最長有効期間を指定する必要がある | Audit(監査) | 1.. |
| 9 | シークレットの残りの日数は有効期限が切れるまでの指定された日数より長い必要がある | Audit(監査) | 1.. |
| 10 | シークレットは指定された日数より長い間アクティブであってはならない | Audit(監査) | 1.. |
| 11 | ストレージ アカウント キーが期限切れにならないようにする必要がある | Audit(監査) | 3.. |
DP-7 Use a secure certificate management process(安全な証明書管理プロセスを使用する) — 3 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | 指定された日数以内に証明書の有効期限が切れてはならない | Audit(監査) | 2.. |
| 2 | 証明書には最長有効期間を指定する必要がある | Audit(監査) | 2.. |
| 3 | 証明書には最長有効期間を指定する必要がある | Disabled(無効) | 2..-preview |
DP-8 Ensure security of key and certificate repository(キー・証明書リポジトリのセキュリティを確保する) — 6 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Defender for Key Vault を有効にする必要がある | AuditIfNotExists | 1.. |
| 2 | Azure Key Vault はプライベート リンクを使用する必要がある | Disabled(無効) | 1..-preview |
| 3 | Azure Key Vaultでファイアウォールを有効にするか、パブリック ネットワーク アクセスを無効にする必要がある | Audit(監査) | 3.. |
| 4 | Key Vault のリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 5 | キー コンテナーでは、論理的な削除を有効にする必要がある | Audit(監査) | 3.. |
| 6 | キー コンテナーで削除保護を有効にする必要がある | Audit(監査) | 2.. |
Asset Management(AM) — 4 ポリシー
AM-2 Use only approved services(承認済みサービスのみを使用する) — 3 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure API Management プラットフォームのバージョンを stv2 にする必要があります | Audit(監査) | 1.. |
| 2 | ストレージ アカウントを新しい Azure Resource Manager リソースに移行する必要がある | Audit(監査) | 1.. |
| 3 | 仮想マシンを新しい Azure Resource Manager リソースに移行する必要がある | Audit(監査) | 1.. |
AM-3 Ensure security of asset lifecycle management(資産ライフサイクル管理のセキュリティを確保する) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | 使用されていない API エンドポイントは、無効にし、Azure API Management サービスから削除する必要があります | AuditIfNotExists | 1.. |
Logging and Threat Detection(LT) — 42 ポリシー
LT-1 Enable threat detection capabilities(脅威検出機能を有効にする) — 20 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Defender for App Service を有効にする必要がある | AuditIfNotExists | 1.. |
| 2 | Azure Defender for Azure SQL Database servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 3 | Azure Defender for Key Vault を有効にする必要がある | AuditIfNotExists | 1.. |
| 4 | Azure Defender for Resource Manager を有効にする必要がある | AuditIfNotExists | 1.. |
| 5 | Azure Defender for SQL servers on machines を有効にする必要がある | AuditIfNotExists | 1.. |
| 6 | Azure Defender for servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 7 | Azure Kubernetes Service クラスターで Defender プロファイルを有効にする必要がある | Audit(監査) | 2.. |
| 8 | Microsoft Defender CSPM を有効にする必要がある | AuditIfNotExists | 1.. |
| 9 | Microsoft Defender for API を有効にする必要がある | AuditIfNotExists | 1.. |
| 10 | Microsoft Defender for Containers を有効にする必要がある | AuditIfNotExists | 1.. |
| 11 | Microsoft Defender for Storage を有効にする必要がある | AuditIfNotExists | 1.. |
| 12 | SQL servers on machines プランの場合 SQL Server を対象とする自動プロビジョニングを有効にする必要がある | AuditIfNotExists | 1.. |
| 13 | [プレビュー]: Azure Arc 対応 Kubernetes クラスターには、Microsoft Defender for Cloud 拡張機能がインストールされている必要がある | AuditIfNotExists | 6..-preview |
| 14 | オープンソース リレーショナル データベース用 Azure Defender を有効にする必要があります | AuditIfNotExists | 1.. |
| 15 | コンピューターで Windows Defender Exploit Guard を有効にする必要があります | AuditIfNotExists | 2.. |
| 16 | 保護されていない Azure SQL サーバーに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 2.. |
| 17 | 保護されていない Azure Synapse ワークスペースに対して、Microsoft Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
| 18 | 保護されていない MySQL フレキシブル サーバーに対して、Azure Defender for SQL を有効にする必要があります | AuditIfNotExists | 1.. |
| 19 | 保護されていない PostgreSQL フレキシブル サーバーに対して、Azure Defender for SQL を有効にする必要があります | AuditIfNotExists | 1.. |
| 20 | 保護されていない SQL マネージド インスタンスに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
LT-2 Enable threat detection for identity and access management(ID・アクセス管理の脅威検出を有効にする) — 19 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Defender for App Service を有効にする必要がある | AuditIfNotExists | 1.. |
| 2 | Azure Defender for Azure SQL Database servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 3 | Azure Defender for Key Vault を有効にする必要がある | AuditIfNotExists | 1.. |
| 4 | Azure Defender for Resource Manager を有効にする必要がある | AuditIfNotExists | 1.. |
| 5 | Azure Defender for SQL servers on machines を有効にする必要がある | AuditIfNotExists | 1.. |
| 6 | Azure Defender for servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 7 | Azure Kubernetes Service クラスターで Defender プロファイルを有効にする必要がある | Audit(監査) | 2.. |
| 8 | Microsoft Defender CSPM を有効にする必要がある | AuditIfNotExists | 1.. |
| 9 | Microsoft Defender for Containers を有効にする必要がある | AuditIfNotExists | 1.. |
| 10 | Microsoft Defender for Storage を有効にする必要がある | AuditIfNotExists | 1.. |
| 11 | SQL servers on machines プランの場合 SQL Server を対象とする自動プロビジョニングを有効にする必要がある | AuditIfNotExists | 1.. |
| 12 | [プレビュー]: Azure Arc 対応 Kubernetes クラスターには、Microsoft Defender for Cloud 拡張機能がインストールされている必要がある | AuditIfNotExists | 6..-preview |
| 13 | オープンソース リレーショナル データベース用 Azure Defender を有効にする必要があります | AuditIfNotExists | 1.. |
| 14 | コンピューターで Windows Defender Exploit Guard を有効にする必要があります | AuditIfNotExists | 2.. |
| 15 | 保護されていない Azure SQL サーバーに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 2.. |
| 16 | 保護されていない Azure Synapse ワークスペースに対して、Microsoft Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
| 17 | 保護されていない MySQL フレキシブル サーバーに対して、Azure Defender for SQL を有効にする必要があります | AuditIfNotExists | 1.. |
| 18 | 保護されていない PostgreSQL フレキシブル サーバーに対して、Azure Defender for SQL を有効にする必要があります | AuditIfNotExists | 1.. |
| 19 | 保護されていない SQL マネージド インスタンスに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
LT-3 Enable logging for security investigation(セキュリティ調査のためのログ記録を有効にする) — 17 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | App Service アプリではリソース ログを有効にする必要があります | AuditIfNotExists | 2.. |
| 2 | Azure AI サービス リソースの診断ログを有効にする必要がある | AuditIfNotExists | 1.. |
| 3 | Azure Data Lake Store のリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 4 | Azure Databricks ワークスペースのリソース ログを有効にする必要がある | AuditIfNotExists | 1.. |
| 5 | Azure Front Door でリソース ログを有効にする必要がある | AuditIfNotExists | 1.. |
| 6 | Azure Kubernetes Service のリソース ログを有効にする必要がある | AuditIfNotExists | 1.. |
| 7 | Azure Machine Learning ワークスペースのリソース ログを有効にする必要がある | AuditIfNotExists | 1.. |
| 8 | Azure Stream Analytics のリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 9 | Batch アカウントのリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 10 | Data Lake Analytics のリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 11 | IoT ハブのリソース ログを有効にする必要がある | AuditIfNotExists | 3.. |
| 12 | Key Vault のリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 13 | Logic Apps のリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 14 | SQL Server の監査を有効にする必要があります | AuditIfNotExists | 2.. |
| 15 | Search サービスのリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 16 | Service Bus のリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
| 17 | イベント ハブのリソース ログを有効にする必要がある | AuditIfNotExists | 5.. |
LT-4 Enable network logging for security investigation(セキュリティ調査のためのネットワークログを有効にする) — 3 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | [プレビュー]: ネットワーク トラフィック データ収集エージェントを Linux 仮想マシンにインストールする必要がある | AuditIfNotExists | 1..-preview |
| 2 | [プレビュー]: ネットワーク トラフィック データ収集エージェントを Windows 仮想マシンにインストールする必要がある | AuditIfNotExists | 1..-preview |
| 3 | すべてのネットワーク セキュリティ グループに対してフロー ログを構成する必要がある | Audit(監査) | 1.. |
LT-5 Centralize security log management and analysis(セキュリティログの管理・分析を一元化する) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Monitor 内の保存されたクエリはログ暗号化のためにカスタマー ストレージ アカウントに保存する必要があります | Audit(監査) | 1.. |
LT-6 Configure log storage retention(ログストレージの保持期間を構成する) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | ストレージ アカウント ターゲットに対する SQL Server の監査データの保持期間を 90 日以上に構成する必要がある | AuditIfNotExists | 3.. |
Incident Response(IR) — 21 ポリシー
IR-2 Preparation - setup incident notification(準備 - インシデント通知をセットアップする) — 3 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | サブスクリプションにはセキュリティの問題について連絡するためのメール アドレスが必要 | AuditIfNotExists | 1.. |
| 2 | サブスクリプション所有者に対する重要度 - 高のアラートの電子メール通知を有効にする必要がある | AuditIfNotExists | 2.. |
| 3 | 重要度 - 高のアラートの電子メール通知を有効にする必要がある | AuditIfNotExists | 1.. |
IR-3 Detection and analysis - create incidents based on high-quality alerts(検出と分析 - 高品質なアラートに基づきインシデントを作成する) — 17 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Defender for App Service を有効にする必要がある | AuditIfNotExists | 1.. |
| 2 | Azure Defender for Azure SQL Database servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 3 | Azure Defender for Key Vault を有効にする必要がある | AuditIfNotExists | 1.. |
| 4 | Azure Defender for Resource Manager を有効にする必要がある | AuditIfNotExists | 1.. |
| 5 | Azure Defender for SQL servers on machines を有効にする必要がある | AuditIfNotExists | 1.. |
| 6 | Azure Defender for servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 7 | Microsoft Defender CSPM を有効にする必要がある | AuditIfNotExists | 1.. |
| 8 | Microsoft Defender for API を有効にする必要がある | AuditIfNotExists | 1.. |
| 9 | Microsoft Defender for Containers を有効にする必要がある | AuditIfNotExists | 1.. |
| 10 | Microsoft Defender for Storage を有効にする必要がある | AuditIfNotExists | 1.. |
| 11 | SQL servers on machines プランの場合 SQL Server を対象とする自動プロビジョニングを有効にする必要がある | AuditIfNotExists | 1.. |
| 12 | オープンソース リレーショナル データベース用 Azure Defender を有効にする必要があります | AuditIfNotExists | 1.. |
| 13 | 保護されていない Azure SQL サーバーに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 2.. |
| 14 | 保護されていない Azure Synapse ワークスペースに対して、Microsoft Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
| 15 | 保護されていない MySQL フレキシブル サーバーに対して、Azure Defender for SQL を有効にする必要があります | AuditIfNotExists | 1.. |
| 16 | 保護されていない PostgreSQL フレキシブル サーバーに対して、Azure Defender for SQL を有効にする必要があります | AuditIfNotExists | 1.. |
| 17 | 保護されていない SQL マネージド インスタンスに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
IR-4 Detection and analysis - investigate an incident(検出と分析 - インシデントを調査する) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Network Watcher を有効にする必要がある | AuditIfNotExists | 3.. |
IR-5 Detection and analysis - prioritize incidents(検出と分析 - インシデントの優先度を付ける) — 17 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Defender for App Service を有効にする必要がある | AuditIfNotExists | 1.. |
| 2 | Azure Defender for Azure SQL Database servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 3 | Azure Defender for Key Vault を有効にする必要がある | AuditIfNotExists | 1.. |
| 4 | Azure Defender for Resource Manager を有効にする必要がある | AuditIfNotExists | 1.. |
| 5 | Azure Defender for SQL servers on machines を有効にする必要がある | AuditIfNotExists | 1.. |
| 6 | Azure Defender for servers を有効にする必要がある | AuditIfNotExists | 1.. |
| 7 | Microsoft Defender CSPM を有効にする必要がある | AuditIfNotExists | 1.. |
| 8 | Microsoft Defender for API を有効にする必要がある | AuditIfNotExists | 1.. |
| 9 | Microsoft Defender for Containers を有効にする必要がある | AuditIfNotExists | 1.. |
| 10 | Microsoft Defender for Storage を有効にする必要がある | AuditIfNotExists | 1.. |
| 11 | SQL servers on machines プランの場合 SQL Server を対象とする自動プロビジョニングを有効にする必要がある | AuditIfNotExists | 1.. |
| 12 | オープンソース リレーショナル データベース用 Azure Defender を有効にする必要があります | AuditIfNotExists | 1.. |
| 13 | 保護されていない Azure SQL サーバーに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 2.. |
| 14 | 保護されていない Azure Synapse ワークスペースに対して、Microsoft Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
| 15 | 保護されていない MySQL フレキシブル サーバーに対して、Azure Defender for SQL を有効にする必要があります | AuditIfNotExists | 1.. |
| 16 | 保護されていない PostgreSQL フレキシブル サーバーに対して、Azure Defender for SQL を有効にする必要があります | AuditIfNotExists | 1.. |
| 17 | 保護されていない SQL マネージド インスタンスに対して、Azure Defender for SQL を有効にする必要がある | AuditIfNotExists | 1.. |
Posture and Vulnerability Management(PV) — 49 ポリシー
PV-2 Audit and enforce secure configurations(セキュアな構成を監査・強制する) — 26 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | API Management の直接管理エンドポイントを有効にしてはならない | Audit(監査) | 1.. |
| 2 | App Service アプリでは、すべてのリソースがアプリにアクセスできるように CORS を構成しないでください | AuditIfNotExists | 2.. |
| 3 | App Service アプリでは、クライアント証明書 (受信クライアント証明書) が有効になっている必要がある | AuditIfNotExists | 1.. |
| 4 | App Service アプリではリモート デバッグをオフにする必要があります | AuditIfNotExists | 2.. |
| 5 | Azure API Management プラットフォームのバージョンを stv2 にする必要があります | Audit(監査) | 1.. |
| 6 | Azure Arc 対応 Kubernetes クラスターには、Azure Policy 拡張機能がインストールされている必要がある | AuditIfNotExists | 1..-preview |
| 7 | Kubernetes Service (AKS) 用の Azure Policy アドオンをクラスターにインストールして有効にする必要がある | Audit(監査) | 1.. |
| 8 | Kubernetes クラスター コンテナーでは、許可されている AppArmor プロファイルのみを使用する | Audit(監査) | 6.. |
| 9 | Kubernetes クラスター コンテナーでは、許可されている機能のみを使用する | Audit(監査) | 6.. |
| 10 | Kubernetes クラスター コンテナーではホスト名前空間を共有しないでください | Audit(監査) | 5.. |
| 11 | Kubernetes クラスター コンテナーを読み取り専用のルート ファイル システムで実行する | Audit(監査) | 6.. |
| 12 | Kubernetes クラスター ポッドとコンテナーは、承認されたユーザーとグループの ID でのみ実行する必要がある | Audit(監査) | 6.. |
| 13 | Kubernetes クラスター ポッドの hostPath ボリュームでは、許可されているホスト パスのみを使用する | Audit(監査) | 6.. |
| 14 | Kubernetes クラスター ポッドは承認されたホスト ネットワークとポートの一覧のみを使用する必要があります | Audit(監査) | 6.. |
| 15 | Kubernetes クラスターでは API 資格情報の自動マウントを無効にする必要がある | Audit(監査) | 4.. |
| 16 | Kubernetes クラスターでは CAP_SYS_ADMIN セキュリティ機能を許可しない | Audit(監査) | 5.. |
| 17 | Kubernetes クラスターでは既定の名前空間を使用しない | Audit(監査) | 4.. |
| 18 | Kubernetes クラスターでコンテナーの特権エスカレーションを許可しない | Audit(監査) | 7.. |
| 19 | Kubernetes クラスターで特権コンテナーを許可しない | Deny(拒否) | 9.. |
| 20 | Kubernetes クラスター内でコンテナーの CPU およびメモリのリソース制限が指定された制限を超えないようにする | Audit(監査) | 9.. |
| 21 | Kubernetes クラスター内で許可されたコンテナー イメージのみを実行する | Deny(拒否) | 9.. |
| 22 | Kubernetes クラスター内の許可されたポートでのみリッスンするようにサービスを強制する | Deny(拒否) | 8.. |
| 23 | 最新のソフトウェア更新プログラムを取得するには、Azure Machine Learning コンピューティング インスタンスを再作成する必要がある | Audit(監査) | 1.. |
| 24 | 関数アプリでは、すべてのリソースがアプリにアクセスできるように CORS を構成しないでください | AuditIfNotExists | 2.. |
| 25 | 関数アプリでは、クライアント証明書 (着信クライアント証明書) が有効になっている必要がある | AuditIfNotExists | 1.. |
| 26 | 関数アプリではリモート デバッグをオフにする必要があります | AuditIfNotExists | 2.. |
PV-4 Audit and enforce secure configurations for compute resources(コンピューティングリソースのセキュアな構成を監査・強制する) — 13 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Linux マシンは Azure のコンピューティング セキュリティ ベースラインの要件を満たしている必要があります | AuditIfNotExists | 2.. |
| 2 | Windows マシンは Azure のコンピューティング セキュリティ ベースラインの要件を満たしている必要があります | AuditIfNotExists | 2.. |
| 3 | [プレビュー]: Azure Stack HCI サーバーには、一貫して適用されるアプリケーション制御ポリシーが必要である | AuditIfNotExists | 1..-preview |
| 4 | [プレビュー]: Azure Stack HCI サーバーはセキュリティで保護されたコアの要件を満たしている必要がある | AuditIfNotExists | 1..-preview |
| 5 | [プレビュー]: Linux 仮想マシンでは、署名付きで信頼されたブート コンポーネントのみを使用する必要がある | AuditIfNotExists | 1..-preview |
| 6 | [プレビュー]: vTPM はサポートされている仮想マシンで有効にする必要がある | Audit(監査) | 2..-preview |
| 7 | [プレビュー]: ゲスト構成証明の拡張機能が、サポートされている Linux 仮想マシン スケール セットにインストールされている必要がある | AuditIfNotExists | 5..-preview |
| 8 | [プレビュー]: ゲスト構成証明の拡張機能が、サポートされている Linux 仮想マシンにインストールされている必要がある | AuditIfNotExists | 6..-preview |
| 9 | [プレビュー]: ゲスト構成証明の拡張機能が、サポートされている Windows 仮想マシン スケール セットにインストールされている必要がある | AuditIfNotExists | 3..-preview |
| 10 | [プレビュー]: ゲスト構成証明の拡張機能がサポートされている Windows 仮想マシンにインストールされている必要がある | AuditIfNotExists | 4..-preview |
| 11 | [プレビュー]: セキュア ブートはサポートされている Windows 仮想マシンで有効にする必要がある | Audit(監査) | 4..-preview |
| 12 | ゲスト構成拡張機能がマシンにインストールされている必要がある | AuditIfNotExists | 1.. |
| 13 | 仮想マシンのゲスト構成拡張機能は、システム割り当てマネージド ID を使用してデプロイする必要がある | AuditIfNotExists | 1.. |
PV-5 Perform vulnerability assessments(脆弱性評価を実施する) — 4 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | SQL Managed Instance で脆弱性評価を有効にする必要がある | AuditIfNotExists | 1.. |
| 2 | SQL Server で脆弱性評価を有効にする必要がある | AuditIfNotExists | 3.. |
| 3 | マシンではシークレットの検出結果が解決されている必要がある | AuditIfNotExists | 1.. |
| 4 | 脆弱性評価ソリューションを仮想マシンで有効にする必要があります | AuditIfNotExists | 3.. |
PV-6 Rapidly and automatically remediate vulnerabilities(脆弱性を迅速かつ自動的に修復する) — 6 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure で実行中のコンテナー イメージでは、脆弱性が解決されている必要があります (Powered by Microsoft Defender 脆弱性の管理) | AuditIfNotExists | 1.. |
| 2 | Azure レジストリ コンテナー イメージの脆弱性は解決されている必要があります (Powered by Microsoft Defender 脆弱性の管理) | AuditIfNotExists | 1.. |
| 3 | SQL データベースでは、脆弱性の検出結果が解決されている必要がある | AuditIfNotExists | 4.. |
| 4 | システム更新プログラムがマシンにインストールされている必要がある (更新センターを利用) | AuditIfNotExists | 1..-preview |
| 5 | マシン上の SQL サーバーでは、脆弱性の検出結果が解決されている必要がある | AuditIfNotExists | 1.. |
| 6 | 不足しているシステム更新プログラムを定期的に確認するようにマシンを構成する必要がある | Audit(監査) | 3..-preview |
Endpoint Security(ES) — 2 ポリシー
ES-1 Use Endpoint Detection and Response (EDR)(エンドポイント検出と対応(EDR)を使用する) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Defender for servers を有効にする必要がある | AuditIfNotExists | 1.. |
ES-2 Use modern anti-malware software(最新のマルウェア対策ソフトウェアを使用する) — 1 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | コンピューターで Windows Defender Exploit Guard を有効にする必要があります | AuditIfNotExists | 2.. |
Backup and Recovery(BR) — 7 ポリシー
BR-1 Ensure regular automated backups(定期的な自動バックアップを徹底する) — 4 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Database for MariaDB の geo 冗長バックアップを有効にする必要があります | Audit(監査) | 1.. |
| 2 | Azure Database for MySQL の geo 冗長バックアップを有効にする必要があります | Audit(監査) | 1.. |
| 3 | Azure Database for PostgreSQL の geo 冗長バックアップを有効にする必要があります | Audit(監査) | 1.. |
| 4 | 仮想マシンに対して Azure Backup を有効にする必要がある | AuditIfNotExists | 3.. |
BR-2 Protect backup and recovery data(バックアップ・リカバリーデータを保護する) — 7 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure Database for MariaDB の geo 冗長バックアップを有効にする必要があります | Audit(監査) | 1.. |
| 2 | Azure Database for MySQL の geo 冗長バックアップを有効にする必要があります | Audit(監査) | 1.. |
| 3 | Azure Database for PostgreSQL の geo 冗長バックアップを有効にする必要があります | Audit(監査) | 1.. |
| 4 | [プレビュー]: Backup コンテナーに対する論理的な削除を有効にする必要がある | Audit(監査) | 1..-preview |
| 5 | [プレビュー]: Recovery Services コンテナーに対して不変性を有効にする必要がある | Audit(監査) | 1..-preview |
| 6 | [プレビュー]: バックアップ コンテナーに対して不変性を有効にする必要がある | Audit(監査) | 1..-preview |
| 7 | 仮想マシンに対して Azure Backup を有効にする必要がある | AuditIfNotExists | 3.. |
DevOps Security(DS) — 2 ポリシー
DS-6 Enforce security of workload throughout DevOps lifecycle(DevOps ライフサイクル全体でワークロードのセキュリティを強制する) — 2 ポリシー
| # | ポリシー名 | デフォルト Effect | バージョン |
|---|---|---|---|
| 1 | Azure で実行中のコンテナー イメージでは、脆弱性が解決されている必要があります (Powered by Microsoft Defender 脆弱性の管理) | AuditIfNotExists | 1.. |
| 2 | Azure レジストリ コンテナー イメージの脆弱性は解決されている必要があります (Powered by Microsoft Defender 脆弱性の管理) | AuditIfNotExists | 1.. |
3. Defender for Cloud における MCSB v2 との違い
MCSB v2(Azure Policy イニシアティブ)と Microsoft Defender for Cloud は密接に関係しますが、役割が異なります。
3.1 現状: 既定は MCSB(v1)、v2 は手動で有効化が必要
重要: 2026-06 時点では、Defender for Cloud の既定のセキュリティ標準は MCSB(v1)です。 MCSB v2 は プレビュー として提供されており、適用するには Defender for Cloud →「環境設定」→「セキュリティ ポリシー」→ 標準 の画面で
[Preview]: Microsoft cloud security benchmark v2をオンにする必要があります。
実際の「セキュリティ ポリシー」画面では、以下のように標準が並びます。
-
Microsoft cloud security benchmark(v1): 種類 = 既定 / オン(推奨事項 223) -
[Preview]: Microsoft cloud security benchmark v2: 種類 = コンプライアンス(推奨事項 414、手動でオンに切り替え)
有効化手順(概要):
- Defender for Cloud を開く
- 左メニュー「環境設定」→ 対象スコープ(管理グループ / サブスクリプション)を選択
- 「セキュリティ ポリシー」を開く
-
[Preview]: Microsoft cloud security benchmark v2の状態トグルをオンにする - 割り当て先スコープ(例: Management Group)を確認して保存
3.2 関係性
Microsoft Defender for Cloud
└─ セキュリティ標準として MCSB を適用(既定は v1、v2 はプレビューを手動有効化)
└─ Azure Policy イニシアティブ(v2 は 414 ポリシー)で構成状態を評価
└─ 評価結果 → セキュアスコア / 規制コンプライアンス / 推奨事項に反映
3.3 機能比較
| 観点 | MCSB v2(Azure Policy) | Defender for Cloud |
|---|---|---|
| 主目的 | 構成評価(コンプライアンス) | 脅威検出 + 態勢管理(CSPM/CWPP) |
| 評価方式 | ポリシーによる静的評価(Audit/Deny 等) | 継続的なスキャン・行動分析・脅威インテリジェンス |
| ブロック能力 | あり(Deny / DeployIfNotExists) | なし(検出・推奨が中心) |
| スコアリング | なし(準拠/非準拠のみ) | セキュアスコアで定量化 |
| 脅威検知 | 不可 | アラート(不審なサインイン、マルウェア等) |
| 自動修復 | DeployIfNotExists で可能 | ワークフロー自動化/推奨修復 |
| 課金 | Azure Policy 自体は無償 | Defender プラン有効化で従量課金 |
| カバー範囲 | リソース構成 | 構成 + ランタイム + データ + ID + ネットワーク |
3.4 すみ分けの考え方
両者の役割は、セキュリティ統制の 「予防的統制」 と 「発見的統制」 という観点で整理すると分かりやすくなります。
| 統制の種類 | 役割 | 担当 | 具体例 |
|---|---|---|---|
| 予防的統制(Preventive) | 問題の発生を未然に防ぐ | Azure Policy(MCSB v2) | Deny で非準拠リソースの作成をブロック、DeployIfNotExists で自動修復 |
| 発見的統制(Detective) | 発生した問題を検出・可視化 | Defender for Cloud | 脅威アラート、セキュアスコア、推奨事項の提示 |
- MCSB v2(Policy)= 予防的統制 / ガードレール: 「あるべき構成」を定義し、逸脱を監査・必要に応じてブロック
- Defender for Cloud = 発見的統制 / 監視カメラ + アナリスト: 実行時の脅威を検出し、優先度付きで推奨対応を提示
- 両者は補完関係。Policy(予防)で間口を絞り、Defender(発見)で残存リスクを検出・対応する多層防御が理想
補足: Policy の
Audit/AuditIfNotExistsは「ブロックしない記録」のため、
厳密には予防というより発見寄りに働きます。Deny/DeployIfNotExistsにして初めて
純粋な予防的統制になります。MCSB v2 は既定では監査中心(=可視化)であり、
予防を強めるには重要ポリシーを Deny 化する運用(セクション 4 参照)が必要です。
Defender プランとの関係:
MCSB v2 を割り当てても Defender プランを有効化しなければ「構成評価」までに留まり、
ランタイムの脅威検知(サーバー保護、コンテナー保護など)は行われません。
4. おすすめ運用方法
4.1 大前提: MCSB v2 は「1 つのイニシアティブ」
MCSB v2 は単一のイニシアティブ割り当てです。「フェーズ 1 イニシアティブ/フェーズ 2 イニシアティブ」のように
分割することはできません。また、割り当てのパラメーターで Effect を変更できるのは 16 個のポリシーのみで、
残りの約 397 ポリシーは Effect が固定です。運用は「まず監査で現状把握 → 重要なポリシーを個別に
Deny で別途割り当て」という形が中心になります(詳細は 4.4 を参照)。
4.2 推奨ステップ
STEP 1: まず監査(既定のまま)で現状把握
- 割り当て直後は 393 件が
Audit/AuditIfNotExistsのため、ワークロードへの影響ゼロで非準拠を可視化 - 1〜2 週間ほど評価結果を蓄積し、非準拠リソースの傾向を把握
STEP 2: Defender for Cloud でスコア確認
- セキュアスコアをベースラインとして記録
- 推奨事項の重要度(高/中/低)で改善優先度を決定
STEP 3: 重要なポリシーを個別に Deny で適用
-
MCSB v2 の割り当てパラメーターでは 16 個しか Effect を変えられないため、特に重要なポリシーは
その組み込みポリシー定義を単独で別途割り当てし、Denyを強制する(方法 B、4.4 参照) - 16 個のパラメーター化ポリシーに該当するものは、パラメータータブで
Audit → Denyに変更可(方法 A) - ネットワーク(NS-2: 127 件)、データ暗号化(DP-5: 46 件)など影響範囲の大きいものは特に慎重に
- テスト用サブスクリプション/RG で Deny を先行検証してから本番へ展開するのが安全
STEP 4: 例外管理と継続改善
- 正当な例外は除外(Exemption)またはスコープ除外で管理(Effect を無効化しない)
- 新規ポリシー追加・バージョン更新に追従し、定期的にスコアをレビュー
4.3 Deny 化の優先候補(影響が読みやすいもの)
| コントロール | 内容 | 件数 | 備考 |
|---|---|---|---|
| DP-7 | 証明書管理 | 3 | 有効期限・CA 検証など影響が限定的 |
| NS-6 | WAF 有効化 | 2 | 公開エンドポイント保護 |
| IM-8 | 資格情報の露出制限 | 2 | シークレット有効期限など |
| NS-5 | DDoS 保護 | 2 | 重要公開サービス向け |
4.4 特定ポリシーだけ Effect を変更する方法
重要: MCSB v2 はイニシアティブですが、割り当ての「パラメーター」タブで Effect を変更できるのは、パラメーター化された 16 個のポリシー(+数値パラメーター 1 個)のみです。残りの約 397 ポリシーは Effect がイニシアティブ定義に**固定(ハードコード)**されており、パラメータータブには現れません。
変更可否のまとめ
| 対象 | 件数の目安 | パラメーターで変更 | 代替手段 |
|---|---|---|---|
| Effect がパラメーター化されたポリシー | 16 | ✅ 可能 | — |
| 数値パラメーター(証明書の有効期間) | 1 | ✅ 可能(certificatesValidityPeriodInMonths) |
— |
| Effect が固定のポリシー | 約 397 | ❌ 不可 | 方法 B / 方法 C / 除外・免除 |
方法 A: パラメータータブで変更(16 個のみ・最も簡単)
割り当て編集画面の「パラメーター」タブで、対象ポリシーの Effect ドロップダウンだけを変更します。
他のポリシーには影響しません。
# CLI例: 既存割り当てのパラメーターを部分更新(対象Effectのみ指定)
az policy assignment update \
--name "<assignment-name>" \
--scope "/subscriptions/<sub-id>" \
--params @params.json
// params.json(例: 証明書監視のEffectだけAuditに変更。他は触れない)
{
"certificatesValidityPeriodMonitoringEffect": { "value": "Audit" }
}
注意: Defender for Cloud 既定の MCSB 割り当てはマネージドな割り当てのため、Azure Policy 画面から
直接パラメーター編集できない場合があります。その場合は Defender for Cloud → 環境設定 →
セキュリティ ポリシー → 該当標準 から該当 Recommendation の設定を変更します。
方法 B: 固定 Effect のポリシーを個別に上書き割り当て
パラメーター化されていないポリシーの Effect を変えたい場合は、その組み込みポリシー定義を単独で
別途割り当てし、希望の Effect(例: Deny)を指定します。MCSB 側の評価は残りますが、追加割り当てで
意図した Effect を効かせられます。
- メリット: MCSB 本体を改変せず、特定ポリシーだけ強制できる
- デメリット: 同じ観点が二重評価になり、割り当て管理が増える
方法 C: Defender for Cloud の Recommendation 単位で強制(Deny/Enforce)
一部の Recommendation は Defender for Cloud 側で「Deny」や「Enforce」を有効化できます。
対象が限られるため、まず方法 A → 不可なら方法 B/C の順で検討します。
特定リソースだけ適用外にしたい場合
Effect の変更ではなく「このリソースだけ評価対象から外す」なら、全ポリシー共通で以下が使えます。
- 除外(Exclusion): 割り当てスコープから特定リソースグループ等を除外
- 免除(Exemption): 特定リソースを期限付きで準拠例外として扱う(監査ログに記録が残る)
4.5 運用上の注意
- いきなり全 Deny 化しない(既存リソース更新が止まるリスク)
-
DeployIfNotExists(自動修復)はマネージド ID と権限付与が必要 -
Disabled(16 件)は既定で無効。有効化が必要なものは個別に Audit/Deny へ変更 - パラメータータブで変えられるのは16 個のみ。それ以外は方法 B/C か除外・免除で対応
- 変更は必ずテスト環境 → 本番の順で、1 コントロールずつ展開
付録: データソースと検証
- 取得方法: Azure Portal で MCSB v2(プレビュー)イニシアティブを割り当て、その割り当てから
ポータルの「ポリシー一覧」「グループ」「イニシアティブ定義」をエクスポートして取得 - ポリシー定義総数: 414 件(ポリシー一覧エクスポートとイニシアティブ定義で完全一致)
- 参照 ID マッチング: ポリシー一覧の参照 ID(小文字)= イニシアティブ定義の
policyDefinitionReferenceId(小文字化)で 414/414 完全一致 - グループ件数: グループ エクスポートの「ポリシーの合計」とイニシアティブ定義由来の集計が全コントロールで一致
- 注意: プレビュー中のため、上記の件数・バージョンは今後変更される可能性があります
まとめ
- MCSB v2 は 414 ポリシー定義を束ねた単一の組み込みイニシアティブで、AI Security ドメインの新設が v1 からの最大の違いです。
- 割り当て直後は 393 件(約 95%)が Audit/AuditIfNotExists であり、リソース作成をブロックしません。まずは監査で現状を可視化するのが安全です。
- リソースに直接影響するのは Deny 4 件(AKS 系)と DeployIfNotExists 1 件のみ。適用前に影響範囲を確認しましょう。
- 割り当てのパラメーターで Effect を変えられるのは 16 個のみ。残りは固定のため、強制したい場合は個別の上書き割り当て等で対応します。
- MCSB v2 は 2026 年 6 月時点でプレビューであり、既定は MCSB(v1)です。適用には Defender for Cloud のセキュリティ ポリシー画面での有効化が必要です。
- Policy(予防的統制)と Defender for Cloud(発見的統制)は役割分担。両者を組み合わせて初めて多層防御が完成します。
ガバナンスは「一度に完璧」を目指すより、Audit で現状を可視化 → 段階的に Deny へという進め方が現実的です。本記事のグループ別ポリシー一覧をチェックリストとして活用いただければ幸いです。

