AWS KMSの解説(AWS認定クラウドプラクティショナーシラバス用語)

AWS KMSの解説(AWS認定クラウドプラクティショナーシラバス用語)
目次

AWS KMSとは

KMS.png

AWS KMS(Key Management Service)とは、AWS環境においてデータの「暗号化」と「復号」に使用する「暗号化キー(鍵)」を安全に作成・管理・制御するためのフルマネージド型サービスです。機密情報(顧客の個人情報、クレジットカード情報、企業秘密など)をクラウドに保存する際、万が一データが外部に流出したとしても、中身を読み取られないようにデータを暗号化しておくことはセキュリティの鉄則です。AWS KMSを使用すると、強固なハードウェアセキュリティモジュール(HSM)によって保護された安全な鍵を作成でき、Amazon S3、Amazon EBS、Amazon RDSなど、多数のAWSサービスとシームレスに連携して、ワンクリックでデータを暗号化することが可能になります。

具体例

AWS KMSの役割を、貴重品を預ける「銀行の貸金庫と、その鍵を管理するシステム」に例えてみましょう。
あなたが重要な書類(データ)を金庫(Amazon S3などのストレージ)に保管するとします。金庫の鍵をかけた後、その鍵を書類と同じ引き出しにしまっておいては意味がありません。鍵は別の安全な場所で管理する必要があります。
AWS KMSは、絶対に破られない超頑丈な「鍵の管理センター」です。KMSは「カスタマーマネージドキー(CMK)」と呼ばれるマスターキーを作成し、金庫の鍵をさらにマスターキーで暗号化して保管します。ユーザーが書類を取り出したい(データを復号したい)時は、KMSに「私は正当な持ち主です」と証明(IAM権限で認証)します。すると、KMSが安全に鍵を開け、書類を読める状態にしてくれます。鍵自体はKMSの厳重なシステムの外に持ち出されることはないため、万が一誰かが金庫の箱ごと盗んだとしても、KMSのマスターキーがなければ絶対に中身を開けることはできません。

もう少し詳しく

AWS KMSの中心となるコンポーネントは「KMSキー(旧称:カスタマーマスターキー・CMK)」です。KMSキーは論理的な表現であり、実際の暗号化処理はKMSのバックエンドにある「FIPS 140-2」という厳格なセキュリティ基準を満たしたハードウェアアプライアンス(HSM)内で行われます。KMSキー自体がKMSのシステム外部に平文(暗号化されていない状態)でエクスポートされることは決してないため、極めて安全です。

データの暗号化方式として、AWS KMSは「エンベロープ暗号化(Envelope Encryption)」という高度な仕組みを採用しています。これは、データを暗号化するための「データキー」を生成し、そのデータキー自体をさらに「KMSマスターキー」で暗号化してデータと一緒に保存する方式です。これにより、大容量のデータを高速に暗号化しつつ、鍵の安全性も担保しています。
また、KMSはIAMやAWS CloudTrailと深く統合されています。IAMポリシーやKMS独自の「キーポリシー」を使って、「誰がこの鍵を使ってデータを復号できるか」をきめ細かく制御できます。さらに、鍵が「いつ・誰によって・どのサービスのために」使用されたかという履歴はすべてCloudTrailにログとして記録されるため、セキュリティ監査の要件を満たすことが容易になります。コンプライアンス上の理由で、自社で作成した鍵(キーマテリアル)をKMSにインポートして使用することも可能です。

試験でのポイント

AWS認定クラウドプラクティショナー(CLF-C02)試験において、AWS KMSは「データの暗号化」と「鍵管理」を問う問題の正解として登場します。
「AWS上のデータ(S3オブジェクトやEBSボリュームなど)を暗号化するために使用する、鍵の作成と管理を行うマネージドサービスはどれか?」という問題が出れば、迷わず「AWS KMS」を選択してください。
また、「クラウド内のデータの安全性確保(暗号化)」は、責任共有モデルにおいて「ユーザー側の責任(Security IN the Cloud)」である点も重要です。AWSはKMSという便利なツール(仕組み)を提供しますが、それを使って実際にデータを暗号化する設定を有効にするのはユーザーの責任であることを忘れないようにしましょう。さらに、暗号化操作の監査ログは「AWS CloudTrail」で確認できるという連携機能も頻出知識です。

関連する用語

関連用語として、鍵の利用権限を制御する「IAM」、暗号化対象となる代表的なストレージサービス「Amazon S3」や「Amazon EBS」、すべてのAPI操作ログを記録してKMSの利用履歴を監査する「AWS CloudTrail」があります。

読んだ内容を10問練習と実技で確認

記事で理解した用語を、StudyQuestの演習とクラウド実技ラボで定着させます。

10問練習 実技ラボ