Qraft(クラフト) 資格・学習クイズアプリ

AWS Certified Solutions Architect Associate(SAA-C03) 練習問題 23:KMSエンベロープ暗号化とキー管理

AWS KMSを使用した大容量データのエンベロープ暗号化について、正しい説明はどれか。

  1. KMSキー(CMK)は4KBを超えるデータでも直接Encrypt APIに渡して暗号化するのが標準的な方法であり、大容量ファイルもKMS API経由で直接暗号化する。
  2. GenerateDataKey APIで平文データキーと暗号化済みデータキーのペアを取得し、平文データキーでデータを暗号化した後は平文データキーを破棄し、暗号化済みデータキーを暗号文と共に保存する。
  3. カスタマーマネージドキー(CMK)は自動ローテーションを無効化することができず、必ず1年ごとに強制的にローテーションされる。
  4. KMSキーポリシーを設定しなくても、IAMポリシーだけでそのキーへのアクセス権限を完全に制御できる。
  5. マルチリージョンキー(Multi-Region Keys)はプライマリキーとレプリカキーで同じキーマテリアルを共有し、かつ全リージョンで完全に同一のキーIDを持つ。
正解と解説を見る
正解:GenerateDataKey APIで平文データキーと暗号化済みデータキーのペアを取得し、平文データキーでデータを暗号化した後は平文データキーを破棄し、暗号化済みデータキーを暗号文と共に保存する。

KMSのEncrypt APIは直接暗号化できるデータサイズに4KBの上限があるため、大容量データには「エンベロープ暗号化」というパターンを使います。正しいのは「GenerateDataKey APIで平文データキーと暗号化済みデータキーを取得し、平文データキーでデータを暗号化した後に平文データキーを破棄する」という内容です。データ本体は高速な対称鍵暗号(平文データキー)で暗号化し、そのデータキー自体をKMSキーで暗号化して保存することで、大容量データでも効率的かつ安全に暗号化できます。

CMKの自動ローテーションはオプトインの機能であり、無効化も可能です。KMSキーポリシー(リソースベースポリシー)はKMSキーへのアクセス制御の起点であり、IAMポリシーだけでは権限を完全に制御できません(キーポリシーでIAMポリシーへの権限委譲を許可する必要があります)。マルチリージョンキーはキーマテリアルを共有しますが、各リージョンのレプリカキーは固有のキーIDを持ちます。

← 前の問題問題一覧次の問題 →
アプリで解いてレーティングを上げる(無料・登録不要)