Microsoft AZ-500: コンピューティング、コンテナ、エンドポイントのセキュリティ — 学習ガイド
こちらの一部です: Microsoft Azure Security Engineer Associate AZ-500 — 学習ガイド. 検証済みの解答で練習: Microsoft試験ハブ, または時間制限付き模擬試験に挑戦: ExamRoll.io.
概要
このセクションでは、IaaS と PaaS にわたる Azure のコンピューティング、コンテナー、エンドポイントをセキュリティで保護するための運用リファレンスを提供します。保護機能の設定方法、その重要性、そして Azure ネイティブのコントロールを使用して一貫して適用する方法に焦点を当てます。
コンピューティングとエンドポイントのセキュリティ
Azure VM のプラットフォーム保護と暗号化オプションは、セキュリティの基礎となります。
セキュア ブート、vTPM、トラステッド起動: トラステッド起動は、UEFI セキュア ブートと仮想 TPM (vTPM) を有効にすることで、第 2 世代 VM を強化します。セキュア ブートは、未署名のブートローダーやルートキットを防ぎます。vTPM は、キー (例: BitLocker) のための改ざん防止ストアを提供し、メジャード ブートをサポートすることで、プラットフォームが OS のブート チェーンを構成証明できるようにします。運用上は、デプロイ時にトラステッド起動を有効にし、ポリシーでこれを強制することで、管理者が静的な BIOS/UEFI 設定を扱う必要なく、すべての新しい VM がハードウェアに根差した整合性チェックを得られるようにします。
Confidential VM (機密 VM): AMD SEV-SNP または Intel TDX ベースの Confidential VM シリーズ (例: DCasv5/DCadsv5) を使用して VM メモリを暗号化し、構成証明を提供します。これにより、悪意のあるホスト/ハイパーバイザーやサイドチャネル攻撃からワークロードを保護します。運用上は、機密性の高い「使用中のデータ」シナリオには Confidential SKU を選択し、デプロイ パイプラインに構成証明を統合し、データの永続性を必要としない迅速な再デプロイが必要な場合はエフェメラル OS ディスクを選択します。
ディスク暗号化のオプション:
- Azure Disk Encryption (ADE): ゲスト内の BitLocker (Windows) または DM-Crypt (Linux) を使用し、キーは Key Vault (BEK/KEK) に格納します。ゲストベースの暗号化ドメイン、OS 内のコンプライアンス チェック、または vTPM にバインドされた BitLocker の活用が必要な場合に役立ちます。エージェントと、拡張機能の正常性を維持するためのライフサイクル操作が必要です。
- カスタマー マネージド キー (CMK) によるサーバー側暗号化 (SSE): Key Vault または Managed HSM のキーを使用して、マネージド ディスクをストレージレベルで暗号化します。ゲスト エージェントは不要で、プラットフォーム全体 (ディスク、スナップショット、イメージ) をカバーし、運用オーバーヘッドは最小限です。ほとんどのユースケースで推奨されるデフォルトであり、より強力な多層防御のためにトラステッド起動または Confidential VM と組み合わせます。
Microsoft Defender for Servers:
- プラン 1: サーバー上の EDR/エンドポイント保護のための Microsoft Defender for Endpoint (MDE)。すでに成熟した脆弱性および構成管理ツールがあり、主に EDR が必要な場合に選択します。
- プラン 2: エージェントベース/エージェントレスの脆弱性評価、Just-In-Time (JIT) VM アクセス、アダプティブ アプリケーション制御、アダプティブ ネットワーク強化、ファイル整合性監視 (FIM) を追加します。複数のツールを組み合わせることなく、プラットフォーム主導の公開領域の削減と実践的なガバナンスを実現したい場合に選択します。
- エンドポイント保護: Azure 以外のサーバーに対して、VM 拡張機能または Arc 経由で MDE をデプロイし、ハイブリッド環境全体でテレメトリ、改ざん防止、対応プレイブックを標準化します。
- 脆弱性評価: MDE の「脅威と脆弱性の管理」シグナルまたは統合スキャナー (例: Qualys) を使用して CVE をインベントリ化し、悪用の可能性に基づいて優先順位を付け、パッチ適用をオーケストレーションします。運用上は、まずインターネットに公開されている重要なサーバーをベースライン化し、修復をメンテナンス期間に結び付けます。
- ファイル整合性監視: 機密ファイル/レジストリ キーへの変更を追跡して、不審な改ざんを検出し、コンプライアンス要件を満たします。ノイズを避けるために監視パスのスコープを限定し、アラートを SIEM に転送するように構成します。
Defender for Cloud による公開領域の削減:
- Just-In-Time VM アクセス: 受信 RDP/SSH を閉じます。管理者は時間制限付きのアクセスを要求し、Defender が NSG または Azure Firewall のルールを開き、アクティビティをログに記録します。その結果、監査可能な例外を伴いながら、攻撃対象領域が大幅に削減されます。
- アダプティブ アプリケーション制御: 通常のプロセスを学習し、許可リスト (Windows では AppLocker、Linux では監査ルール) を作成します。これにより、未承認のバイナリやスクリプトがブロックされ、特にファイルレス攻撃や LOLBin 攻撃に対して効果的です。
- アダプティブ ネットワーク強化: トラフィック分析と脅威インテリジェンスを使用して、NSG ルールの厳格化を提案します。レビューと適用のケイデンスを採用し、サービス停止を回避しながら反復的に公開を制限します。
- ゲスト構成: エージェントまたは Azure Arc を介して、ゲスト内 (Windows および Linux) の監査/修復を行うための Azure Policy。プラットフォームのポスチャだけでなく、証明可能な構成状態が必要な場合に、OS のベースライン、パスワード ポリシー、CIS に準拠した設定を強制するために使用します。
PaaS コンピューティング: App Service と Functions
セキュアバイデフォルトのパターンは、PaaSの攻撃対象領域を削減します。
Azure App Service:
- 認証/認可: App Service Authenticationを有効にして、認証をMicrosoft Entra IDや他のプロバイダーにオフロードします。標準的なOIDC/OAuth2フローにはEasy Authを使用し、すべてのルートでログインを強制して、認証されていない公開を排除します。
- アクセス制限: IP/CIDR、サービスタグ、またはプライベートエンドポイント経由の仮想ネットワークトラフィックによってトラフィックを許可または拒否します。デプロイメントプレーンを独立して保護するために、scmエンドポイントとappエンドポイントに個別のルールを維持します。
- プライベートエンドポイント: VNet内のプライベートIPを介してアプリを公開し、オプションでパブリックアクセスを無効にします。プライベートDNSゾーンを使用し、VNet統合と中央のエグレスファイアウォールでアウトバウンドの依存関係を制限します。
- マネージドID: Key Vault、Storage、その他のサービスにアクセスするには、システム割り当てまたはユーザー割り当てのIDを優先します。これにより、埋め込みシークレットが不要になり、一元的なロール割り当てとキーローテーションが可能になります。
Azure Functions:
- キー管理: Functionsは、関数キー、ホストキー、およびマスターキーを使用します。キーを定期的にローテーションし、外部から利用されるキーはKey Vaultに保存するか、可能であればキーを適切なOAuthフローに置き換えます。
- ネットワーク統合: Functionアプリへのインバウンドアクセスにはプライベートエンドポイントを、アウトバウンド制御にはリージョンVNet統合を使用します。Functionsが使用するStorageアカウントを特定のネットワークのみに制限し、許可されたネットワークにFunctionのプライベートエンドポイントを追加します。
- ID: サービス間の認証には、キーや接続文字列の代わりにマネージドIDを使用します。スコープを絞ったRBAC割り当てにより、最小権限を推進します。
- デプロイメント制御: FTPSのみを強制し、scmサイトの基本認証を無効にし、scmのIPを制限し、Run From Packageを使用してイミュータブルなデプロイを保証します。CI/CDをworkload identity federationと統合して、長期間有効なシークレットを排除します。
Kubernetesとコンテナセキュリティ
クラスターとサプライチェーンをエンドツーエンドで強化します。
AKSのIDと認可:
- Microsoft Entra統合: AKSのマネージドAADを有効にして、Entraのトークンとグループを使用してkubectlを認証します。これにより、ユーザーのライフサイクルとMFA/条件付きアクセスを一元管理できます。
- Kubernetes RBAC: Entraのユーザー/グループをKubernetesのrolesとrole bindingsにマッピングし、namespaceスコープの最小権限を実現します。
- Kubernetes向けAzure RBAC: Azure RBACでKubernetes APIのアクションを直接認可したい場合、組み込みロール(例: Azure Kubernetes Service RBAC Viewer/Admin)を使用します。これにより、認可と監査がAzureコントロールプレーンと統合されます。
AKSのネットワーキングとプライバシー:
- ネットワークポリシー: Azure NPMまたはCalicoを使用して、Pod間およびPodからサービスへのトラフィックを強制します。デフォルトで拒否し、必要なエグレスを明示的に許可します。policy-as-codeはラテラルムーブメントを防ぎます。
- プライベートクラスター: APIサーバーをプライベートにし、プライベートエンドポイント経由でのみアクセス可能にします。Azure Bastion/Private Linkとファイアウォールのエグレス戦略(NAT Gateway + UDR)と組み合わせて、管理プレーンをインターネットから隔離します。
Container Registry (ACR) のセキュリティ:
- RBAC: イメージのプルのみが必要なワークロードにはAcrPullを、ビルドパイプラインにはAcrPushを割り当て、過剰な権限を持つOwnerを避けます。AcrPullとAcrPushは最小権限の原則に沿っています。
- コンテンツの信頼と署名: cosignでイメージに署名し、Podが開始される前にアドミッションコントロール(Gatekeeper + Ratify)で検証を強制します。これにより、改ざんされたイメージから防御します。
- イメージスキャン: Microsoft Defender for Cloudを有効にして、プッシュ/インポート時およびスケジュールに従ってACRをスキャンします。アドミッションポリシーを使用して、重大な未パッチのCVEを持つイメージのデプロイをブロックします。
- 検疫パターン: 新しいイメージを検疫用のリポジトリまたはタグにルーティングし、スキャンとポリシーチェックを実行した後、承認後にリタグ付けして昇格させます。
- プライベートアクセス: パブリックネットワークアクセスを無効にし、プライベートエンドポイントとレジストリファイアウォールルールを使用します。ディレクトリロールではなく、リソースレベルのロール割り当てを使用してAKSをACRにアタッチします。
クラスターのマネージドIDを使用してACRをAKSにアタッチする簡単な例:
az aks update -g rg-aks -n myAKS --attach-acr myAcrName
- Microsoft Defender for Containers: AKSにデータプレーンセンサーをデプロイし、Kubernetes監査ログとランタイムシグナルを監視し、イメージスキャン結果と相関させます。Podへの不審なexec、クリプトマイニング、公開されたダッシュボード、リスクの高いコントロールプレーン操作を検出します。自動プロビジョニングを有効にし、アラートをSIEM/SOARに接続してトリアージを行います。
ガバナンス、ポリシー、および強制
一貫した制御には、デプロイ時と実行時の両方でポリシーが必要です。
- コンピューティングとディスクに対する Azure Policy:
- trusted launch なし、または CMK による SSE なしの VM の作成を拒否します。
- DeployIfNotExists を使用してエンドポイント保護のための VM 拡張機能を強制し、必要なエージェントを自動インストールします。
- ゲスト構成のコンプライアンスを監査し、スケジュールに基づいてドリフト(構成のずれ)を修正します。
不足している必須の VM 拡張機能をデプロイするための短いポリシーのスニペット:
"policyRule": {
"if": { "field": "type", "equals": "Microsoft.Compute/virtualMachines" },
"then": {
"effect": "DeployIfNotExists",
"details": {
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "MDE.Windows"
}
}
}
- Kubernetes アドミッションコントロール:
- AKS 用の Azure Policy アドオンは、Gatekeeper (OPA) を使用して、アドミッション時に Pod のスペックを評価します。「ACR からのみプルする」、「特権コンテナを許可しない」、「イメージ署名を要求する」などのルールを強制します。
- ベースライン(必須)と強化(機密性の高い名前空間)のために個別のイニシアチブを維持し、段階的な強化を可能にします。
レジストリを制限するための短い Gatekeeper 制約:
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sAllowedRepos
metadata:
name: allowed-acr-only
spec:
parameters:
repos:
- myacr.azurecr.io/
- 運用ケイデンス:
- 検出: Defender for Cloud の推奨事項とワークロードのアラートを、ドリフト(構成のずれ)と脅威のシグナルとして使用します。
- 決定: ビジネスへの影響と悪用の可能性に基づいてトリアージし、タグを介して所有者を割り当てます。
- 強制: 成功したパイロットを deny ポリシー/アドミッション制約に変換し、ブロックされた試行を測定してシャドー IT を検出します。
実践的な問題シナリオ
Adobe Inc. は、決済マイクロサービスを Azure に移行しています。セキュリティ要件では、パブリックへの公開ゼロ、署名付きイメージのみの使用、および移行期間中のレガシー VM への時間制限付き管理者アクセスが義務付けられています。
- AKS コントロールプレーンをプライベートにし、送信(egress)をロックダウンする。
- 論理的根拠: プライベート AKS API サーバーは、管理プレーンをインターネットから切り離します。NAT Gateway と明示的な送信ルールを持つ Azure Firewall を組み合わせることで、ワークロードが承認されたエンドポイント(ACR、Key Vault、Microsoft パッケージリポジトリ)にのみ到達することを保証します。
- 署名付きイメージを強制し、レジストリを制限する。
- 論理的根拠: myacr.azurecr.io からのイメージのみを許可し、Ratify によって検証された cosign 署名を要求する制約を Gatekeeper に設定します。これにより、改ざんされた、または信頼できないイメージの実行を防ぎ、主要なサプライチェーンリスクを排除します。
- プライベートエンドポイントと最小権限のロールで ACR を保護する。
- 論理的根拠: パブリックネットワークアクセスを無効にし、AKS VNet 内のプライベートエンドポイントを介して ACR を公開します。AKS のマネージド ID には AcrPull のみを付与し、ビルドパイプラインには AcrPush を付与します。これは最小権限の原則に従い、インターネットへの依存を排除します。
- Defender for Containers と ACR イメージスキャンを有効にする。
- 論理的根拠: プッシュ時の継続的なイメージスキャンとランタイムの脅威検出により、多層的なカバレッジを提供します。アラートは、設定ミス、既知の脆弱性、不審な動作を統合し、迅速な対応を可能にします。
- App Service ベースの管理ツールを認証とプライベートアクセスで保護する。
- 論理的根拠: App Service Authentication を Microsoft Entra ID と共に使用して、MFA と条件付きアクセスを要求します。管理者アプリ用にプライベートエンドポイントを作成し、scm へのアクセスを別途制限します。マネージド ID を使用することで、Key Vault アクセスのためのシークレットが不要になります。
- 移行期間中のレガシーホストには Just-in-Time (JIT) VM アクセスを使用する。
- 論理的根拠: JIT はデフォルトで RDP/SSH を閉じ、承認されたリクエストに対して限定された期間のみポートを開きます。これにより、緊急アクセスを維持しつつ、公開される時間枠を厳密に制限します。
- 暗号化の選択を標準化する: ディスクには CMK による SSE、VM には Trusted Launch。
- 論理的根拠: CMK を使用した SSE は運用負荷を最小限に抑え、キーのライフサイクルを Key Vault で一元管理します。一方、Trusted Launch/vTPM はブートの整合性とキーの保護を追加します。ADE は、ゲストベースの暗号化ドメインの証拠が契約上要求される場合にのみ使用されます。
- ガードレールとして Azure Policy とアドミッションコントロールを適用する。
- 論理的根拠: Azure Policy のイニシアチブは、trusted launch、必須の VM 拡張機能を強制し、パブリックな ACR/Function へのアクセスを拒否します。Gatekeeper の制約は、AKS のためのランタイムアドミッションチェックを実装します。これらを組み合わせることで、チームがイテレーションを重ねても構成がコンプライアンスを維持することを保証します。
- 継続的なガバナンスで検証し、運用する。
- 論理的根拠: Defender for Cloud と MDE のアラートを Adobe の SIEM に接続し、ポリシーの効果(deny 対 audit)を測定し、例外を毎月レビューします。これにより、一度きりの制御が、永続的なセキュリティ運用モデルに変わります。
← ネットワークセキュリティアーキテクチャ · すべてのドメイン · データ、ストレージ、データベースのセキュリティ →
これらの問題を練習する → · ExamRoll.ioで時間制限付き練習 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
試験に合格する →