変更要約: AZ-500 第3章を深掘り(図ja化・比較表/シナリオ/FAQ/ひっかけ/深掘り段落を全節に追加)
3.1Key Vault と暗号化
キー・シークレット・証明書を安全に保管する Azure Key Vault と、保存データの暗号化(保存時暗号化)の基礎を理解します。マネージド ID と組み合わせ、資格情報をコードに持たない安全な構成が AZ-500 の中核です。
パスワードや API キーをコードや設定ファイルに直書きすると漏洩リスクが高まります。Key Vault に集中保管し、アプリはマネージド ID で取得することで安全に扱えます。
3.1.1Key Vault と暗号化の要素
- Key Vault:キー・シークレット・証明書を集中保管する。HSM 保護のレベルも選べる。
- アクセス制御:RBAC または Vault アクセスポリシーで誰が何を読めるかを認可する。
- マネージド ID:アプリは資格情報を持たず、ID で Key Vault からシークレットを取得する。
- 保存時暗号化:PMK(プラットフォーム管理キー)が既定。規制等で鍵を自分で管理したい場合は CMK(顧客管理キー)を Key Vault に置く。
「キー/シークレット/証明書の集中保管=Key Vault」「資格情報をコードに持たない=マネージド ID+Key Vault」「鍵を自分で管理=CMK(顧客管理キー)」「既定の暗号化=PMK」 は AZ-500 で頻出です。Key Vault のアクセスは RBAC へ統一する流れも押さえましょう。
Key Vault では「論理的な削除(soft delete)」と「消去保護(purge protection)」を有効にし、誤削除や悪意ある完全削除からキーを守りましょう。
Key Vault のアクセス認可には 2 方式があります。Vault アクセスポリシー は「このプリンシパルはキー操作・シークレット取得を許可」といった操作カテゴリ単位の旧来方式で、ボールト全体に適用されます。Azure RBAC は Key Vault Secrets User のようなロールを管理グループ/サブスク/リソースグループ/個別シークレットのスコープで割り当てられ、PIM や条件付きアクセスと統合できるため現在は推奨です。保護レベルでは、ソフトウェア保護の Standard と、専用ハードウェアで鍵を守る Premium(HSM 保護)、さらに鍵が一度もボールト外に出ない Managed HSM があります。CMK を使う代表例として、Storage の暗号化キーや SQL TDE の保護キーを Key Vault の CMK に切り替え、鍵のローテーションや失効を自分で制御する構成があります。マネージド ID には、リソースに紐づき寿命を共にする システム割り当て と、複数リソースで共有でき独立した寿命を持つ ユーザー割り当て があります。
| 観点 | Vault アクセスポリシー | Azure RBAC |
|---|---|---|
| 粒度 | ボールト全体・操作カテゴリ単位 | スコープ別(個別シークレットまで) |
| PIM/条件付きアクセス | 統合なし | 統合できる |
| 推奨 | 旧来方式 | 現在の推奨 |
シナリオ: 規制で「暗号鍵は自社が管理・年次でローテーションし、いつでも失効できること」が求められた。→ Key Vault(消去保護つき)に CMK を作成し、Storage/SQL の暗号化を CMK に切り替えます。鍵バージョンのローテーションを設定し、アクセスは RBAC(Key Vault Crypto Officer 等)で限定、操作は監査ログで追跡します。
FAQ: Q. シークレットとキーの違いは? → A. シークレットは任意の文字列(接続文字列やパスワード)、キーは暗号化/署名に使う暗号鍵で、Key Vault 内で鍵操作(ラップ/署名)を行えます。Q. システム割り当てとユーザー割り当て、どちらの ID を使う? → A. 1 リソース専用ならシステム割り当て、複数リソースで同じ ID・権限を共有したいならユーザー割り当てです。
ひっかけ: 「CMK は PMK より暗号強度が高い」は誤りです。暗号アルゴリズム自体は同じで、違いは鍵を誰が管理するか(PMK=Azure、CMK=顧客)。また「マネージド ID を使えば Key Vault は不要」も誤り(マネージド ID は認証手段で、シークレットの保管先は依然 Key Vault)。
3.1.2この節のまとめ
- Key Vault=キー/シークレット/証明書の集中保管(マネージド ID で取得)
- 暗号化=既定 PMK/自己管理は CMK
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. キー・シークレット・証明書を集中して安全に保管する Azure のサービスはどれですか?
Q2. アプリが資格情報をコードに持たずに Key Vault からシークレットを取得するために使う仕組みはどれですか?
Q3. 規制要件などで暗号鍵を自分で管理し、Key Vault に置きたい。どの方式ですか?

