[レポート] データ保護、アクセス制御、監査に AWS KMS を使用する #SEC340 #reinvent

セッション「Using AWS KMS for data protection, access control, and audit 」 を聴講しましたのでレポートします。
2020.03.09

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、岩城です。

セッション「Using AWS KMS for data protection, access control, and audit 」 を聴講しましたのでレポートします。

概要

This session focuses on how customers are using AWS Key Management Service (AWS KMS) to raise the bar for security and compliance with their workloads. Along with a detailed explanation of how AWS KMS fits into the AWS suite of services, we walk you through popular and sophisticated examples of how AWS KMS can be deployed in the context of access control, separation of duties, data protection, and auditability. We also cover the latest developments in AWS KMS functionality that will further expand the range of use cases to include additional cryptographic capabilities and system integrations.

Google翻訳

このセッションでは、お客様がAWS Key Management Service(AWS KMS)を使用してワークロードのセキュリティとコンプライアンスの基準を引き上げる方法に焦点を当てています。 AWS KMSがAWSのサービススイートにどのように適合するかについての詳細な説明とともに、アクセス制御、職務分離、データ保護、監査機能のコンテキストでAWS KMSをデプロイする方法の一般的で洗練された例を紹介します。 また、AWS KMS機能の最新の開発についても説明します。これにより、ユースケースの範囲がさらに広がり、追加の暗号化機能とシステム統合が含まれます。

  • Session Type
  • Session
  • Topic
  • Security, Compliance, and Identity
  • Session Level
  • 300 - Advanced

スピーカー

  • Rajkumar Copparapu
  • Sr. Product Manager, Amazon Web Services
  • Peter O'Donnell
  • Security Specialist Solutions Architect, Amazon Web Services

レポート

アジェンダ

  • 暗号化入門
  • AWS KMS の概要
  • AWS KMS によるデータの保護
  • AWS KMS による監査結果の改善
  • AWS KMS に対する運用保証の提供
  • 新機能 非対称暗号

暗号化入門

  • マスターキーを使用してデータキー(プレーンテキスト)とデータキー(暗号化済)を作成
  • データキー(プレーンテキスト)を使用してデータを暗号化
  • データ暗号化後、速やかにメモリ上からデータキー(プレーンテキスト)を削除
  • 暗号化データと暗号化データキーが一緒に保存される

以下のドキュメントに、より詳細に分かりやすく KMS の概念が記されています。 AWS Key Management Service の概念

AWS KMS キー階層

  • カスタマー管理型のキー
  • AWS KMS が保有し、ユーザーが管理する
  • CMK にキーポリシーを設定
  • AWS マネージド型のキー
  • AWS KMS が保有および管理する
  • ドメインキーで CMK を暗号化
  • ドメインキーは、リージョンキーで暗号化

キー管理以外に AWS KMS でできることは何か

  • アクセス制御とデータ保護のための追加のメカニズムを提供
  • AWS KMS と AWS サービスの統合により、データイベントの一連の監査証跡を提供
  • 利害関係者からの重要な質問に答えるための運用保証を提供

AWS KMS はデータ保護に役立つ

  • 個別のカスタマーマスターキー(CMK)を使用して、データへのアクセスを分割する
  • CMK キーポリシーでアクセス制限を定義する
  • CMK 認可では、キー管理者を暗号化キーユーザーから分離する必要がある
  • データアクセスの意図性と裁量を改善する

AWS KMS はアクセス制御の追加メカニズム

  • AWS KMS で保護されているリソースには追加の権限が必要
  • Amazon S3 フルアクセスのイベント、SSE-KMS でバックアップされたオブジェクトへのアクセスには、CMK を使用するための権限が必要
  • Amazon EBS で機密データを管理しているチームのお客様は、個別の認証で個別の CMK を使用する
  • Amazon RDS の職務分離
  • インスタンスおよびスナップショットへのアクセスをシークレットおよび資格情報へのアクセスから分離

監査証跡のための AWS KMS と AWS サービスとの統合

  • AWS KMS の暗号化コンテキストを使用して、AWS CloudTrail のイベントを関連付けることが可能
  • Detective による統制と監査記録によりアクセスが証明され、否認防止が保証される
  • AWS Config を使用してキーポリシーへの変更を追跡する

Amazon S3 data trail (オブジェクトレベルのログ記録)

  • オブジェクトレベルのログ記録を使えば、以下のような問いに回答可能
  • このデータにアクセスしたのは誰か?
  • このデータにアクセスするには、常に暗号化キーへのアクセスが必要か?
  • ここに保存されているものはすべて、適切に暗号化されているか?
  • バケットまたはアカウントで有効にする必要がある
  • オブジェクトレベルのアクセス(GET および PUT)を取得
  • ユーザーの ARN を含む
  • CloudTrail の KMS レコードにチェックマークを付けて関連付けることが可能

デフォルト暗号化と堅牢な統合

  • AWS KMS を使用して S3 バケットのデフォルト暗号化を有効化する
  • AWS KMS を使用して、EBS のボリューム暗号化を有効化する
  • Amazon DynamoDB は常に KMS で暗号化されている
  • AWS KMS を仕様して、AWS Certificate Manager のプライベートキーを保護する

デジタル署名のフロー

  • ユーザーが署名キーを作成する
  • 署名を生成する
  • ユーザーが署名とデータを受信者に送信する
  • 受信者は公開鍵を使用して署名を検証する

非対称暗号(公開議暗号)のフロー

  • ユーザーが暗号化キーを作成する
  • 公開鍵をダウンロードする
  • 受信者は公開鍵を使用して暗号化し、暗号文を送信する
  • 秘密鍵を使用してユーザーが復号化する

GenerateDataKeyPair (API)

  • 公開鍵と秘密鍵のペアを生成する機能
  • CMK として
  • データキーペアとして
  • 暗号化操作にパブリック部分とプライベート部分を使用する
  • 署名して確認する
  • 暗号化および復号化

非対称暗号(公開鍵暗号)

  • キーとキーペア
  • 暗号化および復号化操作用の単一キー
  • 暗号化/復号化または署名/検証のための公開鍵と秘密鍵のペア
  • AWS KMSの内部および外部での操作
  • 共通鍵操作はサービス内で発生する
  • 暗号化および検証の操作はサービスの外部で発生する可能性がある
  • 相互運用性
  • 共通鍵によって生成された暗号化データには AWS KMS 固有のメタデータがある
  • 暗号化データと署名は、相互運用性の仕様に従っている
  • 統合
  • AWS サービスとのネイティブ統合はまだない

非対称暗号(公開鍵暗号)のユースケース

  • 守秘義務
  • サードパーティが AWS KMS の外部で認証されていない暗号化を実行できるようにする
  • RSA 公開鍵を使用する際、AWS KMS 内で認証済み復号化を強制
  • 秘密鍵を使用する
  • 誠実さ
  • バイナリ、ドキュメント、認証トークン(SAML または JWT)、またはファイルに署名する
  • 第三者に署名を検証してもらう

AWS KMS の責任

  • HSM(ハードウェアセキュリティモジュール)でキーを生成し、サービス内で保護する
  • 共通鍵と同様に、AWS 従業員を含む誰もがプレーンテキストの秘密鍵マテリアルにアクセスできない
  • すべてのアクセスと操作が記録される
  • 可用性と耐久性は適用され続ける
  • AWS KMS はお客様のニーズに合わせて拡張し続ける

ユーザーの責任

  • 署名と暗号化に指定されたキーを適宜使用する
  • KMS キー ID を含めることができる統合 AWS サービスで公開鍵を使用しない
  • 公開鍵の証明書を取得する
  • 適切なポリシーを設定する

Parting words

  • 非対称暗号(公開鍵暗号)は、バージニア北部、オレゴン、シドニー、アイルランド、および東京リージョンでのみ利用可能(今後、別リージョンでも利用可能になる予定)
  • 非対称暗号(公開鍵暗号)のさまざまな制限を理解する
  • GenerateDataKeyPair API は、対称 CMK を使用する
  • 価格は現在の共通鍵とは異なる
  • 公開鍵は無料利用枠から除外される
  • AWS ではセキュリティが最優先事項

おわりに

AWS KMS を改めて勉強しようと思いセッションを拝聴しました。AWS KMS の概要と昨年リリースされた新機能非対称暗号について知ることができました。AWS KMS はデータ保護の観点で意識することが多かったのですが、監査証跡として利用する観点が私にとって新しい気付きでした。

本エントリがどなたかのお役に立てれば幸いです。