概要

AWS Key Management Service (KMS) を利用すると、データ保護に使用される暗号化キーを一元管理できます。 AWS の他のサービスと統合されているため、これらのサービスに格納されているデータの暗号化と、こうした暗号を復号するキーへのアクセス制御が容易になります。また、AWS KMS は AWS CloudTrail とも統合されており、誰がどのキーを、どのリソースで、いつ使用したかを監査できます。デベロッパーは AWS KMS を使用すると、暗号化機能やデジタル署名機能をアプリケーションコードに直接または AWS SDK を使用して簡単に追加できます。AWS Encryption SDK は、アプリケーション内でローカルにデータを暗号化または復号化する必要があるデベロッパー向けのルートキープロバイダーとして AWS KMS をサポートします。

一元キー管理

AWS KMS では、キーのライフサイクルと権限の一元管理ができます。いつでも新しいキーを作成でき、キーを使用できるユーザーとは別に、キーを管理できるユーザーを制御できます。AWS KMS によって生成されたキーを使用する代わりに、独自のキー管理インフラストラクチャのキーをインポートしたり、AWS CloudHSM クラスターに保存されたキーを使用したりできます。AWS KMS で生成されたルートキーを 1 年に 1 度自動ローテーションするように選択すると、一度暗号化したデータを再び暗号化する必要がなくなります。こうしたデータの復号に利用できるように、古いルートキーは自動的に保存されます。ルートキーの管理とその使用状況の監査は、AWS マネジメントコンソールから、 AWS SDK か AWS コマンドラインインターフェイス (CLI) を使用して行います。

* 非対称キーの場合、インポートするオプションは利用できません。

AWS のサービスの統合

AWS KMS は AWS のサービスと統合され、それによって保管中のデータを暗号化でき、AWS KMS キーを利用して署名や検証が容易になります。保管中のデータを保護するには、統合されたAWS のサービスでエンベロープ暗号化を使用します。この暗号化では、データキーが使用され、データキー自体が AWS KMS に保存される KMS キーに基づいて暗号化されます。署名や検証にあたっては、統合された AWS のサービスでは、AWS KMS の非対称 KMS キーのキーペアを使用します。統合されたサービスで AWS KMS を使用する方法の詳細については、AWS のサービスに関するドキュメントをご覧ください。

AWS アカウントで作成できる KMS キーのリソースには 2 つのタイプがあります。(i) AWS マネージド KMS キーは、必要に応じて自動的に作成できます。AWS Managed KMS キーをリストまたはインベントリに登録すると AWS CloudTrail で利用記録を受信できますが、リソースのアクセス許可は、作成時に対象とした AWS のサービスで管理されます。(ii) 顧客管理 KMS キーを利用することで、キーのアクセス許可とライフサイクルを最も高いレベルで制御できます。

AWS KMS と統合されている AWS のサービス
Alexa for Business[1] Amazon Forecast Amazon Nimble Studio AWS CloudHSM[2]
Amazon AppFlow Amazon Fraud Detector Amazon Personalize AWS CloudTrail
Amazon Athena Amazon FSx for Windows ファイルサーバー Amazon QLDB AWS CodeArtifact
Amazon Aurora Amazon GuardDuty Amazon Redshift AWS CodeBuild
Amazon CloudWatch Logs Amazon HealthLake Amazon Rekognition AWS CodeCommit[1]
Amazon CloudWatch Synthetics Amazon Kendra Amazon Relational Database Service (RDS) AWS CodePipeline
Amazon CodeGuru Amazon Keyspaces (Apache Cassandra 向け) Amazon Route 53 AWS Control Tower
Amazon Comprehend Amazon Kinesis Data Streams Amazon S3 AWS Database Migration Service
Amazon Connect Amazon Kinesis Firehose Amazon SageMaker AWS Elemental MediaTailor
Amazon Connect Customer Profiles Amazon Kinesis Video Streams Amazon Simple Email Service (SES) AWS Glue
Amazon Connect Voice ID Amazon Lex Amazon Simple Notification Service (SNS) AWS Glue DataBrew
Amazon Connect Wisdom Amazon Lightsail[1] Amazon Simple Queue Service (SQS) AWS IoT SiteWise
Amazon DocumentDB Amazon Location Service Amazon Textract AWS Lambda
Amazon DynamoDB Amazon Lookout for Equipment Amazon Timestream AWS License Manager
Amazon DynamoDB Accelerator (DAX)[1] Amazon Lookout for Metrics Amazon Transcribe AWS Proton
Amazon EBS Amazon Lookout for Vision Amazon Translate AWS Secrets Manager
Amazon EC2 Image Builder Amazon Macie Amazon WorkMail AWS Snowball
Amazon EFS Amazon Managed Blockchain Amazon WorkSpaces AWS Snowball Edge
Amazon Elastic Container Registry (ECR) Amazon Managed Service for Prometheus AWS Audit Manager AWS Snowcone
Amazon Elastic Kubernetes Service (EKS) Amazon Managed Streaming for Kafka (MSK) AWS Application Cost Profiler AWS Snowmobile
Amazon Elastic Transcoder Amazon Managed Workflows for Apache Airflow (MWAA) AWS Application Migration Service AWS Storage Gateway
Amazon ElastiCache Amazon MemoryDB AWS App Runner AWS Systems Manager
Amazon OpenSearch Amazon Monitron AWS Backup AWS X-Ray
Amazon EMR Amazon MQ AWS Certificate Manager[1]  
Amazon FinSpace Amazon Neptune AWS Cloud9[1]  

[1] AWS 管理のキーのみをサポートします。

[2] AWS KMS は、AWS CloudHSM クラスターによってバックアップされたカスタムキーストアをサポートしています。

[3] Sinnet により運営される AWS 中国 (北京) リージョンおよび NWCD により運営される AWS 中国 (寧夏) リージョンでの AWS KMS と統合されたサービスの一覧については、中国での AWS KMS サービスの統合をご覧ください。

上記リストにない AWS のサービスでは、各サービスが所有および管理するキーを使用して顧客データを自動的に暗号化します。

監査機能

AWS アカウントで AWS CloudTrail を有効にしている場合、AWS KMS に対する各リクエストは、AWS CloudTrail を有効にしたときに指定した Amazon S3 バケットに送信されるログファイルに記録されます。記録される情報には、ユーザーの詳細、時間、日付、API アクション、関連する場合には使用されるキーが含まれます。

スケーラビリティ、耐久性、高可用性

AWS KMS は、完全マネージド型サービスです。暗号化の使用が増加すると、ニーズに合わせてサービスが自動的にスケールされます。AWS KMS なら、アカウント内の数千規模の KMS キーを管理し、いつでも使用できます。AWS KMSでは、キーの数と要求レートのデフォルト制限が定義されていますが、必要に応じて制限を増やすようにリクエストできます。

ユーザー本人が作成したか、他の AWS のサービスが作成を代行した KMS キーはサービスからエクスポートできないため、AWS KMS がその耐久性に責任を負います。キーおよびデータの可用性を高めるために、KMS は 99.999999999% の耐久性を持つように設計されたシステムに、キーの暗号化バージョンのコピーを複数保存します。

KMS にキーをインポートしておくことにより、KMS キーの安全なコピーが保存されるため、必要なときに使用できない場合は再インポートできます。カスタムキーストア機能を使用して AWS CloudHSM クラスターに KMS キーを作成すると、キーの暗号化されたコピーが自動的にバックアップされ、回復プロセスを完全に制御できます。

リージョン間を移動する暗号化されたデータまたはデジタル署名ワークフロー (災害対策、マルチリージョンの高可用性アーキテクチャ、DynamoDB Global Tables、グローバルに分散された一貫性のあるデジタル署名) の場合、複数のリージョンにレプリケートできる同じキーマテリアルとキー ID を備えた相互運用可能なキーのセットである KMS マルチリージョンキーを作成できます。

AWS KMS は、リージョンの API エンドポイントで高可用性サービスとして設計されています。AWS KMS は、ほとんどの AWS のサービスの暗号化と復号化を一手に担っているため、残りの AWS をサポートし、AWS KMS サービスレベルアグリーメントで保証されるレベルの可用性を提供するように設計されています。

セキュア

AWS KMS では、AWS の従業員を含めて誰もこのサービスからプレーンテキストのキーを取得できないように設計されています。FIPS 140-2 に基づき検証済みまたは検証段階にあるハードウェアセキュリティモジュール (HSM) を使用して、キーの機密性と完全性を保護しています。ユーザーのプレーンテキストキーがディスクに書き込まれることはなく、ユーザーがリクエストする暗号化処理の実行に必要な時間に HSM の揮発性メモリでのみ使用されます。これは、AWS KMS にキーの作成をリクエストするか、サービスにインポートするか、カスタムキーストア機能を使用して AWS CloudHSM クラスターにキーを作成するかどうかに関係なく当てはまります。AWS KMS が作成したキーは、作成された AWS リージョンの外部には決して送信されず、作成されたリージョン内でのみ使用できます。AWS KMS HSM ファームウェアの更新は、マルチパーティのアクセスコントロールによって制御されます。このアクセスコントロールは、FIPS 140-2 に準拠した NIST 認定ラボだけでなく、Amazon 内の独立したグループによって監査およびレビューされます。

AWS KMS がどのように構築されるか、およびキーを保護するために使用される暗号化の詳細については、AWS Key Management Service の暗号化の詳細を参照してください。

* Sinnet により運営される AWS 中国 (北京) リージョンおよび NWCD により運営される AWS 中国 (寧夏) リージョンでは、HSM は中国政府承認済み (FIPS 140-2 検証なし) であり、上記の Cryptographic Details ホワイトペーパーは適用されません。 

カスタムキーストア

AWS KMS は、管理する HSM を使用して独自のキーストアを作成するオプションを提供します。各カスタムキーストアは、AWS CloudHSM クラスターによってバックアップされています。カスタムキーストアで KMS キーを作成すると、サービスは KMS キー用のキーマテリアルを生成し、お客様が所有、管理している AWS CloudHSM クラスターに保存します。カスタムキーストアで KMS キーを使用する場合、そのキーに基づく暗号化処理は AWS CloudHSM クラスターで実行されます。

カスタムキーストアに保存される KMS キーは、他の KMS キーと同様にユーザーによって管理され、AWS KMS と統合されるすべての AWS のサービスと併用できます。

カスタムキーストアの使用には AWS CloudHSM クラスターの追加コストが伴い、当該クラスター内のキーマテリアルの可用性についてはユーザーが責任を負うことになります。カスタムキーストアが要件に適しているかどうかについては、こちらのブログを参照してください。

* カスタムキーストアの機能は Sinnet 運営の AWS 中国 (北京) リージョン、NWCD 運営の AWS 中国 (寧夏) リージョンでは利用できません。

** カスタムキーストアオプションは、非対称タイプの KMSキーでは利用できません。

非対称キー

AWS KMS を利用すると、非対称タイプの KMS キーとデータキーペアを作成・使用できます。また、署名用キーペアまたは暗号化用キーペアとして KMS キーを指定できます。指定した KMS キーを使用したキーペアの生成と非対称の暗号化処理は HSM 内で行われます。非対称 KMS キーの公開部分の使用はローカルアプリケーションでリクエストできますが、非公開部分は必ず AWS KMS でリクエストする必要があります。

AWS KMS に非対称データキーペアの生成をリクエストすることもできます。リクエストすると、パブリックキーとプライベートキーに加え、ユーザーが指定する対称タイプの KMS キーで暗号化されたプライベートキーのコピーのプレーンテキストコピーが返されます。このプレーンテキストのパブリックまたはプライベートキーはローカルアプリケーションで使用できます。また、将来使用するためにプライベートキーの暗号化コピーを保存することもできます。

* Sinnet 運営の AWS 中国 (北京) リージョン、NWCD 運営の AWS 中国 (寧夏) リージョンでは非対称キーは使用できません。

** 非対称キーではカスタムキーストアオプションを選択できません。

コンプライアンス

AWS KMS のセキュリティコントロールと品質管理は、以下のコンプライアンス制度によって検証および認定されています。

  • AWS Service Organization Controls (SOC 1、SOC 2、および SOC 3) レポート。これらのレポートのコピーは AWS Artifactからダウンロードできます。
  • PCI DSS レベル 1。AWS の PCI DSS 準拠サービスの詳細については、PCI DSS のよくある質問を参照してください。
  • FIPS 140-2。AWS KMS 暗号化モジュールは、すべが FIPS 140-2 レベル 2 で、検証済みまたは検証過程にあり、物理セキュリティを含む複数の他のカテゴリではレベル 3 で検証済みまたは検証過程にあります。詳細については、AWS KMS HSM に対する FIPS 140-2 の証明書と関連するセキュリティポリシーを参照してください。
  • FedRAMP。AWS FedRAMP コンプライアンスの詳細については、FedRAMP コンプライアンスを参照してください。
  • HIPAA.詳細については、HIPAA への準拠ページを参照してください。
 
AWS KMS の検証・認定に使用されている他のコンプライアンス制度のリストは、 こちらを参照してください。
 
* FIPS 140-2 は、中国リージョンの AWS KMS には適用されません。代わりに、中国リージョンのハードウェアセキュリティモジュールは、中国政府によって使用が承認されています。
Standard Product Icons (Features) Squid Ink
料金の詳細

料金の例を参照し、コストを計算してください。

詳細はこちら 
Sign up for a free account
無料のアカウントにサインアップ

AWS 無料利用枠にすぐにアクセスできます。 

サインアップ 
Standard Product Icons (Start Building) Squid Ink
コンソールで構築を開始する

AWS コンソールで AWS Key Management Service の構築を開始する

サインイン