【SAA試験対策】AWSKMSとは?暗号化の基本からSecrets Managerとの使い分けまで

AWS

AWSでセキュアなシステムを構築する際、避けて通れないのが「データの暗号化」です。特に、AWS Key Management Service (KMS) は、多くのAWSサービスと統合されており、セキュリティの要となります。

この記事では、AWS認定ソリューションアーキテクト – アソシエイト(SAA)試験の対策も兼ねて、KMSの仕組みや、よく混同されるAWS Secrets Managerとの違いを分かりやすく解説します。

AWS KMSとは?

AWS KMSは、データの暗号化に使用される「暗号化キー」を簡単に作成・管理できるマネージドサービスです。

  • フルマネージドサービス: キーの保管や物理的なセキュリティをAWSが管理。
  • FIPS 140-2 レベル3準拠: 高いセキュリティ基準を満たすハードウェア(HSM)を使用。
  • CloudTrailとの統合: 「いつ、誰が、どのキーを使ったか」をすべてログに記録可能。

SAA試験で問われる「KMSのキータイプ」

試験では、用途に応じたキーの選択が問われます。以下の3つの分類を整理しましょう。

キーの種類管理主体特徴
AWS所有のキーAWSユーザーは操作不可。無料。
AWS管理のキーAWSaws/s3など。削除やローテーション設定不可。
カスタマー管理型のキーユーザー試験頻出。ポリシー設定、削除、ローテーションを完全制御。

重要概念:エンベロープ暗号化

SAA試験で頻出なのがエンベロープ暗号化です。これは「鍵で鍵を暗号化する」仕組みです。

暗号化の流れについてのフロー図を作成してみました。フローとしては以下の図のイメージになります。

【図解:エンベロープ暗号化のフロー図】
KMSからデータキー発行 → データを暗号化 → 平文キーを破棄するイメージ)

大きなデータを直接KMSに送ると、スロットリング(制限)が発生します。そのため、「データキー」という小さな鍵をKMSに作ってもらい、実際の暗号化は手元のサーバー(EC2等)で行うのがAWSのベストプラクティスです。

KMS vs AWS Secrets Manager

どちらも機密情報を扱いますが、目的が異なります。

【図解:KMS(金庫の鍵)vs Secrets Manager(自動更新されるメモ)】

特徴AWS KMSAWS Secrets Manager
主な目的「鍵」の管理・鍵の作成「秘密情報」の管理
自動更新キー自体の更新DBパスワード等の自動更新
主な用途EBS/S3の暗号化RDSのパスワード管理

5. SAA試験頻出シナリオ

最後にSAA試験などで問われることの多いKMSのシナリオについて紹介します。

S3の暗号化(SSE-KMS)…「鍵の使用ログ(CloudTrail)を監査したい」という要件があれば、SSE-S3ではなくSSE-KMSを選択します。

クロスアカウントアクセス…別アカウントのKMSキーを使うには、「キーポリシー」と「IAMポリシー」の両方での許可が必要です。

今回はKMSの暗号化の流れとSecret Managerとの違いについて説明させていただきました。
勉強の参考になれば幸いです!

コメント

タイトルとURLをコピーしました