以下のよくある質問は、Sinnet により運営される AWS 中国 (北京) リージョンおよび NWCD により運営される AWS 中国 (寧夏) リージョンの AWS KMS には適用されません。これら 2 つの中国リージョンに関連するコンテンツについては、こちらのよくある質問を参照してください。 

全般

Q: AWS Key Management Service (KMS) とは何ですか?
AWS KMS は、暗号化操作に使用されるキーを簡単に作成および管理できるマネージドサービスです。このサービスは、可用性の高いキーの生成、保管、管理、監査ソリューションを提供し、独自のアプリケーション内でデータの暗号化やデジタル署名を行うことや、AWS のサービス全体でデータの暗号化を管理することができます。

Q: なぜ AWS KMS を使用すべきですか?
AWS のサービス全体でデータを保護する責任がある場合は、このサービスを使用して、データへのアクセスをコントロールする暗号化キーを一元管理できます。アプリケーション内のデータを暗号化する必要がある開発者は、AWS KMS を利用して AWS Encryption SDK を使用することをお勧めします。これにより、コード内の対称暗号化キーを簡単に生成、使用、保護できます。非対称キーを使用してデータのデジタル署名または検証を行う必要がある開発者は、このサービスを使用して、必要なプライベートキーを作成および管理できます。開発者と増え続けるアプリケーションをサポートするためにスケーラブルなキー管理インフラストラクチャを必要としている場合は、このサービスでライセンスコストと運用の負担を軽減できます。規制やコンプライアンスに準拠するためにデータセキュリティを提供する必要がある場合は、このサービスを使用して、データが一貫して保護されていることを容易に証明できます。また、AWS KMS は広範囲にわたる業種および地域的なコンプライアンス体制にも対応しています。

Q: AWS KMS の使用を開始するにはどのようにすればよいですか?
このサービスの使用を開始する最も簡単な方法は、各サービス向けにアカウントで自動的に作成される AWS 管理のマスターキーを使用して、サポートされている AWS のサービス内のデータ暗号化を選択することです。アカウント間またはサービス間でキーのアクセスを共有する機能など、キーの管理を完全にコントロールする必要がある場合は、AWS KMS に独自のカスタマーマスターキー (CMK) を作成できます。ユーザー独自のアプリケーション内で、直接作成した CMK を使用することもできます。AWS KMS は KMS コンソールからアクセスできます。KMS コンソールは、AWS コンソールの AWS のサービスホームページの [セキュリティ、アイデンティティ、コンプライアンス] グループに属しています。AWS KMS API は、AWS KMS コマンドラインインターフェイスまたはプログラムアクセス用の AWS SDK 経由で直接アクセスすることも可能です。AWS KMS API は AWS Encryption SDK を使用して、ユーザー独自のアプリケーション内のデータを暗号化するために間接的に使用することも可能です。詳細については、開始方法のページを参照してください。

Q: AWS KMS はどのリージョンで利用できますか?
利用可能なリージョンの一覧は、世界中を網羅した製品およびサービス一覧 (リージョン別) ページでご覧いただけます。

非対称キーは現在、バージニア北部、オレゴン、シドニー、アイルランド、東京でのみ利用可能です。

Q: AWS KMS ではどのようなキー管理機能を利用できますか?
以下のキー管理機能を実行できます。

  • サービス内でのみ使用されるキーマテリアルで対称および非対称キーを作成する
  • ユーザーが制御するカスタムキーストアで生成、使用されるキーマテリアルで対称キーを作成する*
  • サービス内で使用するための独自の対称キーマテリアルをインポートする
  • アプリケーション内でローカルに使用するための対称、非対称両方のデータキーペアを作成する
  • どの IAM ユーザーおよびロールがキーを管理できるか定義する
  • どの IAM ユーザーとロールがキーを使用してデータを暗号化および復号できるか定義する
  • サービスによって生成されたキーが 1 年ごとに自動更新されるように設定する
  • 誰にもキーが使用されないように、一時的に無効にする
  • 無効にしたキーを再度有効にする
  • 使用しなくなったキーの削除をスケジュールする
  • AWS CloudTrail でログを調査してキーの使用を監査する

* カスタムキーストアを使用するには、CloudHSM リソースがアカウントで使用可能である必要があります。

Q: AWS KMS はどのように機能しますか?
CMK の作成をリクエストすることによりサービスの使用を開始できます。お客様が CMK のライフサイクルを管理し、誰が CMK を使用または管理できるかを制御します。CMK のキーマテリアルは、AWS KMS によって管理されるハードウェアセキュリティモジュール (HSM) で生成されます。あるいは、独自のキー管理インフラストラクチャからキーマテリアルをインポートし、CMK に関連付けることもできます。AWS KMS のカスタムキーストア機能を活用して、AWS CloudHSM クラスターでキーマテリアルを生成し使用することもできます。
 
サポートされている 3 つのオプションのいずれかで CMK を作成したら、その CMK を使用して署名、検証、暗号化、または復号するデータを AWS KMS に直接送信できます。これらのキーについて、どのユーザーがどのような条件でどのアクションを実行できるかを定義する使用ポリシーを設定できます。

AWS KMS と統合された AWS のサービスおよびクライアント側のツールキットは、エンベロープ暗号化という方法を使用してデータを保護します。この方法では、AWS KMS が AWS のサービスまたはアプリケーションでローカルに暗号化するために使用されるデータキーを生成します。データキー自体は、ユーザーが定義した CMK で暗号化されます。AWS KMS によってデータキーの保持や管理は行われません。AWS のサービスは、データを暗号化し、暗号化されたデータキーのコピーと保護データを一緒に保存します。サービスはデータを復号する必要がある場合、CMK を使用してデータキーを復号するよう AWS KMS にリクエストします。AWS のサービスからのデータを要求しているユーザーが、CMK または IAM ポリシーで復号の権限を付与されている場合、AWS のサービスは、AWS KMS から復号されたデータキーを受信します。このデータキーを使用してデータは復号され、プレーンテキストで返されます。CMK の使用リクエストはすべて AWS CloudTrail に記録されるため、誰が、いつ、どのような状況で、どのキーを使用したかを把握できます。

Q: AWS KMS を使用した場合、データはどこで暗号化されるのですか?
AWS KMS を使用してデータを暗号化する方法には、通常 3 つのシナリオがあります。まず、AWS KMS API を直接使用し、サービスに保存されている CMK を使ってデータの暗号化と復号ができます。2 番目は、サービスに保存されている CMK を使用して、AWS のサービスでデータを暗号化させる方法です。この場合、データは CMK で保護されているデータキーを使用して暗号化されます。3 番目は、AWS KMS と統合されている AWS Encryption SDK を使用する方法です。ユーザー独自のアプリケーションが AWS 内で動作しているかどうかにかかわらず、アプリケーション内で暗号化を実行できます。

Q: どの AWS クラウドサービスが AWS KMS と統合されていますか?
AWS KMS は AWS の他のほとんどのサービスとシームレスに統合されており、それらのサービスでは簡単にデータを暗号化できます。お客様は、チェックボックスをオンにするだけです。データが、デフォルトでは AWS KMS に保管されているものの、当該の AWS のサービスによって所有され、管理されているキーを使用して暗号化される場合もあります。多くの場合、CMK はユーザーのアカウント内で、ユーザーが所有し、管理します。一部のサービスでは、ユーザー自身でキーを管理したり、ユーザーに代わってサービスがキーを管理するのを許可したりできます。現在 AWS KMS と統合されている AWS のサービスのリストをご覧ください。統合されているサービスによる AWS KMS の使用方法の詳細については、 AWS KMS 開発者ガイドを参照してください。

Q: なぜエンベロープ暗号化を使用するのですか? なぜ単に AWS KMS に直接データを送信して暗号化しないのですか?
AWS KMS は最大 4 KB のデータを直接暗号化して送信することをサポートしていますが、エンベロープ暗号化にはパフォーマンス面で多大なメリットがあります。AWS KMS で直接データを暗号化する場合、データをネットワーク経由で送信する必要があります。エンベロープ暗号化は、非常に小さいデータキーのリクエストと配信がネットワークを行き交うのみなので、ネットワークの負荷が軽減します。データキーは、アプリケーション内または暗号化を行う AWS のサービスでローカルに使用されるため、データブロック全体を AWS KMS に送信する必要がなく、ネットワークレイテンシーが発生しません。

Q: 自身で作成した CMK と他の AWS のサービスで自動的に作成された CMK にはどのような違いがありますか?
AWS のサービスがお客様に代わってデータを暗号化する場合に、お客様は使用する特定の CMK を選択できます。これらはカスタマー管理の CMK と呼ばれ、お客様が完全に管理します。ユーザーが各キーのアクセス制御と使用ポリシーを定義し、他のアカウントやサービスに使用許可を与えることができます。CMK を指定しなければ、最初にサービス内に暗号化されたリソースを作成しようとしたときに、問題になっているサービスが AWS 管理の CMK を作成します。AWS はユーザーのために、AWS 管理の CMK と関連するポリシーを管理します。ユーザーはアカウント内の AWS 管理のキーを追跡することができ、使用はすべて AWS CloudTrail にログされますが、キー自体を直接管理することはできません。

Q: なぜ独自のカスタマーマスターキーを作成する必要があるのですか?
独自の CMK を作成すると、AWS 管理の CMK を使用するよりさらに厳重な管理ができます。カスタマー管理の対称 CMK を作成すると、使用するキーマテリアルを AWS KMS または AWS CloudHSM クラスター (カスタムキーストア) で生成するか、独自のキーマテリアルをインポートするかを選択できます。キーのエイリアスと説明を定義でき、キーが AWS KMS によって生成された場合は、1 年ごとに自動更新されるよう選択できます。また、あらゆるアクセス許可を設定してキーを使用または管理できるユーザーを制限できます。カスタマー管理の非対称 CMK では、管理について注意事項があります。キーマテリアルは AWS KMS HSM でのみ生成でき、キーの自動更新オプションはありません。

Q: 独自のキーを AWS KMS に持ち込むことはできますか?
はい。独自のキー管理インフラストラクチャから AWS KMS にキーのコピーをインポートして、統合された AWS のサービスで、または独自のアプリケーションでそれを使用できます。非対称 CMK を AWS KMS にインポートすることはできません。

Q: インポートされたキーはどのような場合に使用するのですか?
インポートされたキーを使用して、AWS KMS におけるキーの作成、ライフサイクル管理、および耐久性をより確実にコントロールできます。インポートされたキーは、コンプライアンス要件を満たすように設計されています。これには、インフラストラクチャのキーの安全なコピーを生成または維持する機能、および AWS インフラストラクチャからキーのインポートのコピーを直接削除する機能が含まれます。

Q: どのような種類のキーをインポートできますか?
256 ビットの対称キーをインポートできます。

Q: AWS KMS にインポートされるキーは転送中に保護されていますか?
インポート処理中、キーは、2 つの RSA PKCS#1 スキームのいずれかを使用して、AWS KMS が提供するパブリックキーでラップする必要があります。こうすれば、暗号化キーは AWS KMS 以外では復号できなくなります。

Q: 自身がインポートしたキーと AWS KMS により生成されたキーはどう違うのですか?
大きな違いは次の 2 点です。

  1. KMS にキーをインポートする場合は、随時それを再インポートできるように、キーのコピーをキー管理インフラストラクチャに維持する責任があります。ただし、AWS KMS により生成したキーの場合は、ユーザーがそのキーの削除を予定に入れるまで、AWS によりキーの可用性、セキュリティ、および耐久性が保証されます。
  2. インポートしたキーには有効期限を設定できます。有効期間を過ぎると、AWS KMS は自動的にキーマテリアルを削除します。インポートしたキーマテリアルをオンデマンドで削除することもできます。いずれの場合でもキーマテリアル自体は削除されますが、将来、キーマテリアルを再度インポートできるように、AWS KMS の CMK リファレンスと関連するメタデータは保持されます。AWS KMS によって生成されたキーには有効期限はなく、すぐに削除することはできません。7 日から 30 日の待機期間が必須です。カスタマ―管理の CMK はすべて、キーマテリアルがインポートされたものかどうかに関わらず、手動で無効にすることも、削除予定を設定することも可能です。この場合、内在するキーマテリアルだけでなく、CMK自体が削除されます。

Q: キーをローテーションできますか?
はい。キーが AWS KMS HSM で生成された場合は、AWS KMS が CMK を毎年自動的に更新するように設定できます。インポートされたキー、非対称キー、AWS KMS カスタムキーストア機能を使用して AWS CloudHSM クラスターで生成されたキーには、自動キー更新はサポートされません。キーを AWS KMS または非対称キーにインポートするか、カスタムキーストアを使用することを選択した場合は、新しい CMK を作成し、既存のキーのエイリアスを古い CMK から新しい CMK にマッピングすることで、手動で更新できます。

Q: AWS KMS のキーが更新されたあと、再び暗号化する必要はありますか?
AWS KMS がキーを自動的にローテーションすることを選択した場合は、データを再暗号化する必要はありません。AWS KMS は過去のバージョンのキーを自動的に保管して、そのキーで暗号化されたデータを復号化できるようにします。AWS KMS のキーに対する新しい暗号化リクエストは、すべて最新バージョンのキーで実行されます。

インポートされたキーまたはカスタムキーストアのキーを手動でローテーションする場合は、古いバージョンのキーを利用可能にするかどうかによって、データの再暗号化の必要がある場合があります。

Q: AWS KMS のキーを削除できますか?
はい。AWS KMS で作成したお客様のマスターキーと関連するメタデータは削除を予定できます。削除までの待機期間は 7 ~ 30 日の間に設定できます。この待機期間中に、キーを削除することによって、そのキーを使用しているアプリケーションとユーザーが受ける影響を確認できます。デフォルトの待機期間は 30 日です。待機期間中にキーの削除をキャンセルすることもできます。削除を予定したキーを使用することはできません。ただし、待機期間中に削除をキャンセルした場合はその限りではありません。キーは、削除をキャンセルしない限り、待機期間 (設定可能) の最後に削除されます。削除されたキーは使用できなくなります。削除されたマスターキーで保護されているデータはすべてアクセスできなくなります。

お客様のマスターキーがインポートされたキーマテリアルの場合は、2 つの方法でお客様のマスターキー ID とメタデータを削除せずにキーマテリアルを削除できます。1 つは、待機期間なしで、オンデマンドでインポートされたキーマテリアルを削除する方法です。2 つ目は、お客様のマスターキーにキーマテリアルをインポートする際に、AWS でインポートされたキーマテリアルを使用できる有効期限を定義する方法です。再度使用する必要が発生した場合は、キーマテリアルをお客様のマスターキーに再インポートできます。

Q: インポートされたキーマテリアルの有効期限が切れた場合、または誤って削除した場合はどうすればよいですか?
元のお客様のマスターキーを使って、有効な有効期限が付いたキーマテリアルのコピーを AWS KMS に再インポートできます。そうすれば、再び使用できるようになります。

Q: キーを再インポートする必要性が発生した場合は、アラートが発せられますか?
はい。キーを一旦お客様のマスターキーにインポートすると、インポートされたキーの有効期限までの時間を知らせる Amazon CloudWatch メトリクスが数分ごとに届きます。また、お客様のマスターキーにインポートされたキーの有効期限が切れると、Amazon CloudWatch イベントが送信されます。可用性のリスクを回避するために、こうしたメトリクスとイベントに基づいて動作し、新しい有効期間で自動的にキーを再インポートするロジックを構築できます。

Q: AWS KMS を使用して、AWS クラウドサービス以外のデータ暗号化を管理できますか?
はい。AWS KMS は AWS SDK、AWS Encryption SDK、Amazon DynamoDB Client-side Encryption、および Amazon S3 Encryption Client でサポートされており、実行されている場所を問わずユーザー独自のアプリケーションのデータ暗号化を可能にします。詳しくは、AWS Crypto Tools および Developing on AWS のウェブサイトをご覧ください。

Q: AWS KMS で作成できるキーの数に上限はありますか?
1 つのアカウントで、1 リージョンあたり最大 10,000 個の CMK を作成できます。有効および無効にされている CMK の合計数が上限に近づいたら、無効にされ使用しなくなったキーを削除することをお勧めします。AWS のサービスで使用するためにお客様に代わって作成される AWS 管理の CMK はこの数に含まれません。CMK で作成され、アプリケーションまたは AWS のサービスでお客様に代わってデータを暗号化するデータキーの数に上限はありません。AWS サポートセンターで CMK の制限の引き上げをリクエストできます。

Q: どのような種類の対称キータイプとアルゴリズムがサポートされていますか?
AWS KMS では、CMK を作成するときに 256 ビットキーをサポートしています。発信者に返される生成されたデータキーは、256 ビット、128 ビット、または最大 1,024 ビットまでの任意の値にすることができます。AWS KMS でお客様の代わりに 256 ビットの CMK を使用する場合、Galois Counter Mode の AES アルゴリズム (AES-GCM) が使用されます。

Q: どのような種類の非対称キータイプがサポートされていますか?
AWS KMS では、RSA 2048、RSA 3072、RSA 4096、ECC NIST P-256、ECC NIST P-384、ECC NIST-521、ECC SECG P-256k1 の非対称キータイプをサポートしています。

Q: どのような種類の非対称暗号化アルゴリズムがサポートされていますか?
AWS KMS では、RSAES_OAEP_SHA_1 と RSAES_OAEP_SHA_256 の暗号化アルゴリズムおよび RSA 2048、RSA 3072、RSA 4096 のキータイプをサポートしています。暗号化アルゴリズムは、楕円曲線キータイプ (ECC NIST P-256、ECC NIST P-384、ECC NIST-521、ECC SECG P-256k1) と一緒に使用することはできません。

Q: どのような種類の非対称署名アルゴリズムがサポートされていますか?
RSA キータイプを使用する場合、AWS KMS では、RSASSA_PSS_SHA_256、RSASSA_PSS_SHA_384、RSASSA_PSS_SHA_512、RSASSA_PKCS1_V1_5_SHA_256、RSASSA_PKCS1_V1_5_SHA_384、RSASSA_PKCS1_V1_5_SHA_512 の署名アルゴリズムをサポートします。
楕円曲線キータイプを使用する場合、AWS KMS では、ECDSA_SHA_256、ECDSA_SHA_384、ECDSA_SHA_512 の署名アルゴリズムをサポートします。

Q: 対称 CMK はプレーンテキストでサービスの外にエクスポートできますか? 
いいえ。対称 CMK または非対称 CMK の非公開部分は、プレーンテキストで HSM からエクスポートすることはできません。非対称 CMK の公開部分は、コンソールから、または "GetPublicKey" API を呼び出すことでエクスポートできます。

Q: データキーとデータキーペアはプレーンテキストで HSM の外にエクスポートできますか?
はい。対称データキーは、"GenerateDataKey" API または "GenerateDataKeyWithoutPlaintext" API を使用してエクスポートできます。非対称データキーペアの非公開部分と公開部分は、両方とも "GenerateDataKeyPair" API または "GenerateDataKeypairWithoutPlaintext" API を使用して AWS KMS の外にエクスポートできます。

Q: データキーとデータキーペアはサービス以外の場所で保管するためにどのように保護されますか?
対称データキーまたは非対称データキーの非公開部分は、AWS KMS にデータキーを生成するようリクエストしたときに定義した対称 CMK を使用して暗号化されます。

Q: 非対称 CMK の公開部分の使用方法について教えてください。
非対称キーマテリアルの公開部分は AWS KMS で生成されます。この公開部分は、"Verify" API を呼び出すことでデジタル署名検証に使用し、"Encrypt" API を呼び出すことでパブリックキー暗号化に使用できます。パブリックキーは、検証または暗号化を行うために AWS KMS 以外の場所で使用することもできます。GetPublicKey API を呼び出して非対称 CMK の公開部分を取得できます。

Q: 非対称オペレーションについて、AWS KMS に送信されるデータのサイズに制限はありますか? 
サイズ制限は 4 KB です。4 KB よりも大きいデータにデジタル署名を行う必要がある場合は、データのメッセージダイジェストを作成して、AWS KMS に送信できます。デジタル署名は、データのダイジェストに対して作成され、返されます。Sign API リクエストでパラメータとしてメッセージ全体を送信するか、メッセージダイジェストを送信するかどうかを指定します。非対称オペレーションを使用する必要がある Encrypt API、Decrypt API、Re-Encrypt API に送信されるデータも 4 KB 未満にする必要があります。

Q: 作成した非対称 CMK と対称 CMK はどうすれば識別できますか?
コンソールで、[Key Type (キータイプ)] という新しいフィールドが各キーに用意されます。このフィールドには、キーのタイプを示す "Asymmetric Key" または "Symmetric Key" という値が表示されます。"DescribeKey" API を呼び出すと "KeyUsage" フィールドが返されます。このフィールドでは、キーを署名または暗号化に使用できるかどうかを指定します。

Q: 非対称 CMK の自動更新はサポートされていますか? 
いいえ。非対称 CMK の自動キー更新はサポートされていません。新しい CMK を作成し、古い CMK から新しい CMK に既存のキーエイリアスをマッピングすることで、手動で更新できます。

Q: 暗号化と署名の両方に 1 つの非対称 CMK を使用できますか? 
いいえ。CMK を作成するときに、キーを復号オペレーションに使用できるのか、署名オペレーションに使用できるのかを指定する必要があります。RSA キータイプは、署名オペレーションまたは暗号化オペレーションに使用できますが、両方には使用できません。楕円曲線キータイプは、署名オペレーションにのみ使用できます。

Q: 非対称キーに関するサービスの制限はありますか? 
はい。1 秒あたりのリクエスト数の制限は、キータイプとアルゴリズムによって異なります。詳細については、AWS KMS の制限に関するページを参照してください。

Q: 非対称キーは AWS KMS のカスタムキーストアまたはキーインポート機能で使用できますか? 
いいえ。非対称キーではカスタムキーストア機能を使用できません。また、非対称キーは AWS KMS にインポートできません。

Q: 非対称 CMK は、デジタル証明書が必要なデジタル署名アプリケーションに使用できますか?
直接はできません。AWS KMS では、デジタル証明書を保存したり、デジタル証明書を作成した非対称 CMK と関連付けたりしません。ACM PCA などの認証機関に非対称 CMK の公開部分に対して証明書を発行してもらうことができます。こうすることで、お客様のパブリックキーを使用しているエンティティで、そのパブリックキーが本当にお客様に属することを確認できます。

Q: ACM プライベート認証機関と AWS KMS はどのような使用シナリオに使用する必要がありますか? 
ACM プライベート認証機関 (CA) サービスは、主に、エンティティを識別し、ネットワーク接続を保護するための公開鍵基盤 (PKI) を構築するために使用します。PKI では、主に X.509 証明書を使用して、パブリックキー暗号化オペレーションに関する体制を構築するためのプロセスとメカニズムを提供します。証明書では、アイデンティティとパブリックキーの間の関連付けが行われます。認証機関によって証明書が発行される認証プロセスでは、信頼された認証機関によって証明書に署名することでもう 1 つのエンティティのアイデンティティを主張できます。PKI では、アイデンティティ、分散型の信頼、キーライフサイクル管理、失効によって公開される証明書ステータスを利用できます。このような機能によって、AWS KMS で提供される基盤となる非対称暗号化キーとアルゴリズムに重要なプロセスとインフラストラクチャが追加されます。

ACM プライベート CA を使用すると、証明書を発行して、ウェブサーバー、アプリケーションサーバー、サービスメッシュ、VPN ユーザー、内部 API エンドポイント、IoT デバイスを識別できます。証明書によって、これらのリソースのアイデンティティを確立し、暗号化された TLS/SSL 通信チャネルを作成できます。ウェブサーバー、アプリケーションサーバー、Elastic Load Balancing、API Gateway エンドポイント、EC2 インスタンス、コンテナの TLS ターミネーションに非対称キーを使用することを検討している場合は、証明書の発行と PKI インフラストラクチャの構築に ACM プライベート CA を検討することをお勧めします。

対照的に AWS KMS では、非対称キーを生成、管理し、デジタル署名や証明書を必要としない暗号化オペレーションにそのキーを使用できます。証明書では送信者と受信者のアイデンティティを信頼されていないエンティティ間で検証できますが、AWS KMS によって提供される未加工の非対称オペレーションは、一般に、アイデンティティを証明する別のメカニズムがある場合、またはアイデンティティを証明しなくても必要なセキュリティの利点を得ることができる場合に役立ちます。

Q: OpenSSL、JCE、Bouncy Castle、CNG など、自分のアプリケーションの暗号化 API プロバイダーを AWS KMS で使用できますか?
その他の暗号化 API プロバイダーを対象としたネイティブの統合は AWS KMS によって提供されていません。署名機能や暗号化機能をアプリケーションに組み込むには、AWS KMS API を直接使用するか、AWS SDK を使用する必要があります。

Q: AWS KMS ではサービスレベルアグリーメント (SLA) を提供しますか?
はい。AWS KMS SLA では、ある請求期間中において、月間稼働率がサービスコミットメントを下回った場合にサービスクレジットを提供するよう定められています。

カスタムキーストア

Q: カスタムキーストアとは何ですか?
AWS KMS カスタムキーストア機能は AWS CloudHSM によって提供された制御機能を AWS KMS の一元化や使いやすさと結び付けます。独自の CloudHSM クラスターを設定し、デフォルトの AWS KMS キーストアというよりは、お使いのキーの専用キーストアとして使用することを AWS KMS に許可します。AWS KMS にキーを作成すると、CloudHSM クラスターでキーマテリアルを生成することを選択できます。カスタムキーストアで生成した CMK は、CloudHSM クラスターの HSM をプレーンテキストのままにして置くことは絶対になく、こうしたキーを使用する AWS KMS 操作はお使いの HSM のみで実行されます。他のあらゆる点において、カスタムキーストアに保存された CMK は、他の AWS KMS CMK と一致します。

カスタムキーストアを使用するのが適切であるかどうかを判断するためのもう 1 つのガイダンスが、こちらのブログに記載されています。

Q: なぜカスカムキーストアを使用する必要があるのですか?
AWS CloudHSM クラスターを管理しているため、AWS KMS とは無関係に CMK のライフサイクルを管理するオプションがあります。カスタムキーストアが便利であると言える理由は 4 つあります。まず、明らかにシングルテナントの HSM か直接管理する HSM で保護することが必要なキーがある場合があります。2 番目として、FIPS 140-2 レベル 3 全体が検証された HSM に保存することが必要なキーがある場合があります (標準の AWS KMS キーストアに使用される HSM は検証されているか、あるいは複数のカテゴリにおいてレベル 3 のうちレベル 2 に検証されています)。3 番目として、キーマテリアルを AWS KMS からすぐに削除し、自律的な方法でそれを証明できることが必要な場合があります。最後に、AWS KMS または AWS CloudTrail とは無関係に、使用しているすべてのキーを監査できるという要件がある場合があります。

Q: カスタムキーストアは、キーの管理方法に影響しますか?
カスタムキーストアのキーの管理を、デフォルト AWS KMS キーストアと比較すると、2 つの相違点があります。キーマテリアルをカスタムキーストアにインポートすることはできないので、AWS KMS に自動でキーを更新させることはできません。生成可能なキーの種類、キーでエイリアスを使用する方法、ポリシーの定義方法など、他のあらゆる点において、カスタムキーストアに保存されたキーは、他の AWS KMS カスタマー管理の CMK と同じ方法で管理されます。

Q: カスタムキーストアを使用して AWS 管理のカスタマーマスターキーを保存できますか?
いいえ、AWS KMS のカスタムキーストアに保存し、管理することができるのは、カスタマー管理の CMK のみです。データを暗号化するために AWS の他のサービスによって作成された AWS 管理の CMK は、常に AWS KMS のデフォルトのキーストアで生成され、保存されます。

Q: カスタムキーストアは、キーの使用方法に影響しますか?
いいえ、AWS KMS に CMK を使用してデータの暗号化と復号化をするように要求する API は、同じように処理されます。認証と許可の処理は、キーが保管されている場所とは無関係に作動します。カスタムキーストアでキーを使用するアクティビティはすべて、同じように AWS CloudTrail にも記録されます。ただし、実際の暗号化操作は、カスタムキーストアまたはデフォルトの AWS KMS キーストアのいずれか一方でのみ生じます。

Q: カスタムキーストアでのキーの使用を監査するにはどうすればよいですか?
AWS KMS が AWS CloudTrail にログするアクティビティに加えて、カスタムキーストアの使用には、3 種類以上の監査メカニズムがあります。まず最初に、AWS CloudHSM もすべての API アクティビティを CloudTrail にログします。たとえば、クラスターの作成、HSM の追加、HSM 削除などです。第 2 に、各クラスターもまた、ユーザーとキー管理アクティビティを記録するために、独自のローカルログを残します。第 3 に、CloudHSM インスタンスは、ローカルユーザーとキー管理アクティビティを AWS CloudWatch にコピーします。

Q: カスタムキーストアを使用すると、キーの利用可能性にどのような影響がありますか?
AWS KMS カスタムキーストアを使用すると、キーを AWS KMS で使用できるかどうかを確認する責任はお客様が負うことになります。CloudHSM の設定でエラーになったり、AWS CloudHSM クラスター内のキーマテリアルを削除したりすると、可用性に影響が出る場合があります。使用する HSM の数とアベイラビリティーゾーン (AZ) の選択も、クラスターの復旧に影響します。どんなキー管理システムの場合でも、キーの利用可能性がどのように、暗号化されたデータのリカバリーに影響する可能性があるかを把握するのは重要です。

Q: カスタムキーストアに関係がある性能の制限はなんでしょう?
AWS KMS API コール経由で使用できる AWS KMS カスタムキーストアにキーが保存される比率は、デフォルトの AWS KMS キーストアにキーが保存される比率よりも低くなります。現在の性能の制限については、AWS KMS 開発者ガイドを参照してください。

Q: カスタムキーストアの使用に関連するコストは何ですか?
AWS KMS の料金にはカスタムキーストアの使用による影響はありません。ただし、各カスタムキーストアを使用するには、AWS CloudHSM クラスターに少なくとも 2 つの HSM が必要となります。こうした HSM は、標準の AWS CloudHSM 価格の代金を請求されます。カスタムキーストアの使用に追加料金はかかりません。

Q: カスタムキーストアの設定をするのに、どんなスキルとリソースが追加で必要となりますか?
カスタムキーストアの使用を希望する AWS KMS ユーザーは、AWS CloudHSM クラスターを設定し、HSMを追加しHSM ユーザーを管理する必要がありバックアップから HSM のリストアを行う場合もあります。これらはセキュリティ性の高い作業なので、必ず適切なリソースと組織管理がすべて整っている必要があります。

Q: カスタムキーストアにキーをインポートすることはできますか?
いいえ、独自のキーマテリアルを AWS KMS カスタムキーストアにインポートする機能はサポートされていません。カスタムキーストアに保存されたキーは、お使いの AWS CloudHSM クラスターを形成する HSM でのみ生成できます。

Q: デフォルトの AWS KMS キーストアとカスタムキーストアの間でキーを移動できますか?
いいえ、種類の違う AWS KMS キーストアの間でキーを移動する機能は、現在サポートされていません。独自のキーマテリアルをデフォルトの AWS KMS キーストアにインポートする場合を除いて、キーはすべて使用するキーストアで作成する必要があります。

Q: カスタムキーストアに保存されたキーを更新できますか?
AWS KMS カスタムキーストアのキーマテリアルを自動的に更新する機能はサポートされていません。キーの更新は、新しいキーを作成し、将来の暗号化操作でその新しいキーを使用するために、アプリケーションコードで使用される AWS KMS キーエイリアスを再マッピングすることで、手動で実施する必要があります。

Q: AWS CloudHSM クラスターを他のアプリケーションに使用できますか?
はい、AWS KMS だけで AWS CloudHSM cluster を独占的に利用する必要はありません。既にクラスターを所有している場合は、カスタムキーストアとして使用しながら、他のアプリケーションでもそのクラスターを継続して使用できます。ただし、お使いのクラスターが AWS KMS 以外に負荷の高い作業をサポートしている場合、カスタムキーストアで CMK を使用する操作を行う際にスループットの低下が発生する可能性があります。同様に、カスタムキーストアへの AWS KMS リクエストの比率が高いと、他のアプリケーションに影響が出る可能性があります。

Q: AWS CloudHSM の詳細を知るにはどのようにすればよいですか?
サービスの概要については、AWS CloudHSM ウェブサイトをアクセスしてください。サービスの設定と使用の詳細については、AWS CloudHSM ユーザーガイドを参照してください。 

請求

Q: AWS KMS の利用料金の計算と請求はどのように行われるのですか?
AWS KMS については、お客様が使用した分に対してのみ料金が発生します。最低料金はありません。サービスの利用を開始するためのセットアップ料金や契約はありません。月末に、その月の使用料金が自動的にお客様のクレジットカードに請求されます。

作成したすべての CMK、および毎月のサービスに対して行われた API リクエストで無料利用枠を超過した分に対して請求されます。

料金の最新情報については、AWS KMS の料金ページを参照してください。

Q: 無料利用枠はありますか?
はい。AWS 無料利用枠を利用すれば、すべてのリージョンで AWS KMS の使用を無料*で開始できます。AWS のサービスによってお客様のために作成された AWS 管理の CMK は、無料でお客様のアカウントに保存できます。使用に対しても無料利用枠があるため、毎月、無料で決められた数のリクエストをサービスに対して実行できます。無料利用枠を含む料金の最新情報については、AWS KMS の料金ページを参照してください。

* 非対称 CMK を含む API リクエスト、および GenerateDataKeyPair と GenerateDataKeyPairWithoutPlaintext API への API リクエストは無料利用枠に含まれません。

Q: 料金は税込み価格ですか?
別途記載がない限り、表示される料金に VAT、売上税を含む税金等および関税は一切含まれません。日本の居住者であるお客様が AWS サービスをご利用になった場合には、料金とあわせて別途消費税をご請求させていただきます。詳細については、こちらを参照してください。

セキュリティ

Q: AWS KMS では誰がキーを使用および管理できますか?
AWS KMS はお客様が定義した使用および管理ポリシーを実行します。お客様のアカウントまたは別のアカウントの AWS Identity and Access Management (IAM) のユーザーおよびロールに対してキーの使用および管理を許可できます。

Q: AWS では、私が作成した CMK のセキュリティをどのようにして確保しますか?
AWS KMS は、誰も、AWS の従業員でさえもサービスからプレーンテキストの CMK を取得できないように設計されています。このサービスでは、FIPS 140-2 で検証された、または検証中のハードウェアセキュリティモジュール (HSM) を使用して、AWS KMS や AWS CloudHSM を使用してキーを作成するか、自分でキーをサービスにインポートするかどうかに関わらず、その機密性と整合性を保護します。HSM に残っているユーザーのプレーンテキスト CMK がディスクに書き込まれることはなく、ユーザーがリクエストする暗号化操作の実行に必要な時間に HSM の揮発性メモリでのみ使用されます。AWS KMS のキーは、作成された AWS リージョンから移動されることはありません。サービスホストのソフトウェアと AWS KMS HSM ファームウェアへのアップデートは、アマゾン内の独立したグループおよび FIPS 140-2 を順守した NIST 認証のラボによる監査と確認がなされたマルチパーティーアクセスコントロールでコントロールされています。

セキュリティ管理に関する詳細は、AWS KMS Cryptographic Details whitepaperをご覧ください。また、AWS KMS HSM がどのようにして FIPS 140-2 のセキュリティ要件を満たしているかについての詳細は、AWS KMS HSM に対する FIPS 140-2 証明書および関連するセキュリティポリシーを参照してください。さらに、AWS アーティファクトから Service Organization Controls (SOC) レポートのコピーをダウンロードすると、CMK を保護するためにサービスで使用されているセキュリティ管理についてさらに詳しくご確認いただけます。

Q: 既存の CMK を FIPS 140-2 で検証された HSM で使うように移行するにはどうすればよいですか?
作成日またはオリジンに関係なく、CMK はすべて、FIPS 140-2 で検証された、または検証中の HSM を使用して自動的に保護されます。FIPS 140-2 で検証された HSM を使うためにユーザーが行うことはありません。

Q: どの AWS リージョンに FIPS 140-2 で検証された HSM がありますか?
FIPS 140-2 で検証された HSM は、AWS KMS が提供されているすべての AWS リージョンでご利用いただけます。

Q: FIPS 140-2 で検証されたエンドポイントと、AWS KMS 内の FIPS 140-2 で検証された HSMとの違いは何ですか?
AWS KMS は 2 階層のサービスです。API エンドポイントは、完全な前方秘匿性をサポートする TLS 暗号スイートのみを用いた HTTPS 接続上でのクライアントリクエストを受け取ります。これらの API エンドポイントは、AWS KMS HSM または KMS カスタムキーストア機能を使用している場合は AWS CloudHSM クラスターに、リクエストを暗号化操作のために送る前に、これを認証、承認します。

Q: AWS KMS への API リクエストを、FIPS 140-2 で検証されたエンドポイントを用いて行うにはどうすればいいですか?
お使いのアプリケーションを、リージョンのユニークな FIPS 140-2 で検証された HTTPS エンドポイントに接続するように設定します。AWS KMS FIPS 140-2 で検証された HTTPS エンドポイントは OpenSSL FIPS オブジェクトモジュールを用いています。OpenSSL モジュールのセキュリティポリシーは次で確認できます: https://www.openssl.org/docs/fips/SecurityPolicy-2.0.13.pdf。FIPS 140-2 で検証された API エンドポイントは、AWS KMS が提供されているすべての商用リージョンでご利用いただけます。

Q: AWS KMSを使用して Payment Card Industry Data Security Standard (PCI DSS 3.2.1) に定められた暗号化とキー管理の要件に準拠することは可能ですか?
はい。AWS KMS は、PCI DSS 3.2.1 の暗号化とキー管理要件 (主に セクション 3.5 と 3.6 で言及されている) を満たすのに役立つ機能とセキュリティ管理を有していると検証されています。

AWS の PCI DSS 準拠サービスの詳細については、PCI DSS のよくある質問を参照してください。

Q: AWS KMS は、エクスポートしてアプリケーションで使用するデータキーをどのように保護するのですか?
AWS KMS がデータキーを生成し、お客様独自のアプリケーションで使用するために返却するようにリクエストできます。データキーはお客様が AWS KMS で定義したマスターキーによって暗号化されます。そのため、暗号化されたデータキーは暗号化されたデータと合わせて安全に保存できます。暗号化されたデータキー (およびソースデータ) は、暗号化されたデータキーの復号化に使用されたオリジナルのマスターキーの使用許可を与えられたユーザーのみが復号化できます。

Q: AWS KMS で生成されるキーの長さはどのくらいですか?
CMK の長さは 256 ビットです。データキーは 128 ビットまたは 256 ビットの長さで、お客様が定義したマスターキーで暗号化されます。また AWS KMS を使用すれば、暗号化に適したランダムデータをお客様が定義した長さで生成できます。

Q: CMK をエクスポートして独自のアプリケーションで使用できますか?
いいえ。CMK はサービス内でのみ作成および使用することにより、セキュリティを固め、ポリシーを一貫して適用し、一元化した使用状況のログを作成できます。

Q: どの地理的リージョンにキーが保存されますか?
AWS KMS によって生成されたキーは、作成されたリージョンでのみ保存および使用されます。他のリージョンに移動することはできません。たとえば、欧州中央 (フランクフルト) リージョンで作成されたキーは欧州中央 (フランクフルト) でのみ保存および使用できます。

Q: AWS KMS でキーを使用または設定変更したユーザーをどのように確認できますか?
AWS CloudTrail のログは、管理リクエスト (作成、更新、無効化、ポリシーの編集など) および暗号化リクエスト (暗号化/復号) など、すべての AWS KMS API リクエストを表示します。アカウントで AWS CloudTrail を有効にすればこのログを確認できます。

Q: AWS KMS と AWS CloudHSM にはどのような違いがありますか?
AWS CloudHSM では、Amazon Virtual Private Cloud (VPC) でのキーの保存と使用のために、FIPS 140-2 レベル 3 全体が検証済みシングルテナント HSM クラスターを利用できます。ユーザーは、AWS とは独立した認証メカニズムで、ユーザーのキーがどのように使われるかについて自分だけのコントロールができます。ユーザーは、Amazon EC2 で実行するアプリケーションを操作するのと同様のやり方で、ユーザーの AWS CloudHSM クラスター内のキーを操作します。AWS CloudHSM を使用して様々なユースケースをサポートでき、これには Digital Rights Management (DRM)、パブリックキーインフラストラクチャー (PKI)、ドキュメントへの署名、また PKCS#11、Java JCE、またはMicrosoft CNG インターフェイスを用いた暗号化機能などを含みます。

AWS KMS では、アプリケーションおよびサポートされている AWS のサービスが世界中の複数のリージョンで使用する暗号化キーを単一のコンソールから作成、制御できます。このサービスは、FIPS 140-2 で検証された、あるいは検証中の FIPS HSM を使用して、キーのセキュリティを保護します。AWS KMS ですべてのキーを一元管理することにより、キーを使用できるユーザーとその条件、更新する時期、管理できるユーザーを設定できます。AWS KMS と AWS CloudTrail との統合により、キーの使用状況の監査が可能になるため、規制およびコンプライアンスの対応をサポートできます。アプリケーションからの AWS KMS の操作は、サービス API を直接呼び出す場合は AWS SDK を用いて行い、クライアント側の暗号化を実行する場合は、AWS KMS と統合されている他の AWS のサービス経由か AWS 暗号化 SDK を用いて行います。

Product-Page_Standard-Icons_01_Product-Features_SqInk
料金の詳細

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

詳細はこちら 
Product-Page_Standard-Icons_02_Sign-Up_SqInk
無料のアカウントにサインアップ

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

サインアップ 
Product-Page_Standard-Icons_03_Start-Building_SqInk
AWS コンソールで構築を開始する

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

サインイン