AWS KMS keys - AWS Key Management Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS KMS keys

独自の暗号化アプリケーションで使用するために作成および管理されるKMSキーは、カスタマーマネージドキー と呼ばれるタイプです。カスタマーマネージドキーは、 KMS キーを使用して AWS サービスがユーザーに代わって保存するデータを暗号化するサービスと組み合わせて使用することもできます。カスタマーマネージドキーは、使用するキーのライフサイクルと用途を完全にコントロールしたいお客様にお勧めします。アカウント内でカスタマーマネージドキーを使用する場合、月額料金が発生します。さらに、キーの使用および管理のリクエストにも、使用コストが発生します。詳細については、「AWS Key Management Service の料金」を参照してください。

顧客が AWS サービスを暗号化したいが、キー管理のオーバーヘッドを望まず、キーの支払いを望まない場合があります。AWS マネージドキー はアカウントに存在するKMSキーですが、特定の状況でのみ使用できます。具体的には、運用している AWS サービスのコンテキストでのみ使用でき、キーが存在するアカウント内のプリンシパルのみが使用できます。これらのキーのライフサイクルやアクセス許可については、お客様は一切管理することができません。 AWS サービスで暗号化機能を使用すると、 AWS マネージドキー「aws<service code>」という形式のエイリアスを使用する場合があります。例えば、aws/ebsキーはEBSボリュームの暗号化にのみ使用でき、キーと同じアカウントのIAMプリンシパルが使用するボリュームにのみ使用できます。アカウント内のリソースに対して、アカウントのユーザーのみが使用できるように AWS マネージドキー スコープダウンされている を考えてください。で暗号化されたリソース AWS マネージドキー を他のアカウントと共有することはできません。 AWS マネージドキー はアカウント内に無料で存在できますが、このキータイプの使用は、キーに割り当てられた AWS サービスによって課金されます。

AWS マネージドキー は、2021 年の時点で新しい AWS サービス用に作成されなくなったレガシーキータイプです。代わりに、新しい (およびレガシー) AWS サービスは、 と呼ばれるものを使用してAWS 所有のキー、デフォルトで顧客データを暗号化します。 AWS 所有のキー は、 AWS サービスによって管理されるアカウントにあるKMSキーであるため、サービスオペレーターはライフサイクルと使用許可を管理できます。を使用することで AWS 所有のキー、 AWS サービスは透過的にデータを暗号化し、キーアクセス許可を心配することなく、クロスアカウントまたはクロスリージョンでデータを簡単に共有できます。は、より簡単で自動化されたデータ保護を提供するワークロード AWS 所有のキー に使用します encryption-by-default。これらのキーは によって所有および管理されるため AWS、その存在や使用状況に対して課金されず、ポリシーを変更したり、これらのキーのアクティビティを監査したり、削除したりすることはできません。コントロールを重視される場合にはカスタマーマネージドキーを使用し、利便性を重視される場合は AWS 所有のキー をご利用ください。

カスタマーマネージドキー AWS マネージドキー AWS 所有のキー
キーポリシー カスタマーが排他的に制御する サービスによって制御され、カスタマーは閲覧可能 排他的に制御され、データを暗号化する AWS サービスでのみ表示可能
ログ記録 CloudTrail カスタマー証跡またはイベントデータストア CloudTrail カスタマー証跡またはイベントデータストア カスタマーは閲覧できない
ライフサイクル管理 カスタマーがローテーション、削除、リージョンロケーションを管理する AWS KMS ローテーション (年間)、削除、およびリージョンの場所を管理します AWS のサービス ローテーション、削除、およびリージョンの場所を管理します
料金表

キーの保有に対する月額料金 (時間

単位) キーの使用にも課金される

月額料金はかかりませんが、発信者はこれらのキーAPIの使用に対して課金されます。 カスタマーへの請求はなし

作成するKMSキーはカスタマーマネージドキー です。 KMS キーを使用してサービスリソースを暗号化 AWS のサービス すると、多くの場合、キーが作成されます。KMS AWS アカウントで AWS のサービス を作成するキーは ですAWS マネージドキー。KMS サービスアカウントで AWS のサービス を作成するキーは ですAWS 所有のキー

KMS キーのタイプ KMS キーメタデータを表示できます KMS キーを管理できる 自分の にのみ使用される AWS アカウント 自動ローテーション 料金表
カスタマーマネージドキー あり はい はい オプション。

月額料金 (時間単位の日割り計算)

従量課金料金

AWS マネージドキー はい いいえ はい 必須。毎年 (約 365 日)

月額料金なし

1 回の使用あたりの料金 (この料金 AWS のサービス を支払う人もいます)

AWS 所有のキー なし いいえ なし はローテーション戦略 AWS のサービス を管理します。 料金はかかりません

AWS と統合される サービスは AWS KMS、KMSキーのサポートが異なります。一部の AWS サービスは、デフォルトで AWS 所有のキー または でデータを暗号化します AWS マネージドキー。一部の AWS サービスは、カスタマーマネージドキーをサポートしています。他の AWS サービスは、 の使いやすさ AWS 所有のキー、 の可視性 AWS マネージドキー、またはカスタマーマネージドKMSキーの制御を可能にするすべてのタイプのキーをサポートしています。 AWS サービスが提供する暗号化オプションの詳細については、 ユーザーガイドまたは サービスのデベロッパーガイドの保管時の暗号化トピックを参照してください。

カスタマーマネージドキー

作成するKMSキーはカスタマー管理キー です。カスタマーマネージドキーは、 AWS アカウント で作成、所有、管理するKMSキーです。KMS キーポリシー、IAMポリシー、および許可の確立と維持、有効化と無効化暗号化マテリアルのローテーションタグの追加、KMSキーを参照するエイリアスの作成KMSキーの削除スケジュールなど、これらのキーを完全に制御できます。

カスタマーマネージドキーは、 AWS KMSの AWS Management Console のカスタマーマネージドキーページに表示されます。カスタマーマネージドキーを完全に識別するには、 DescribeKeyオペレーションを使用します。カスタマーマネージドキーでは、DescribeKey レスポンスの KeyManager フィールドの値は CUSTOMER です。

暗号化オペレーションでカスタマーマネージドキーを使用し、 AWS CloudTrail ログでその使用を監査できます。さらに、AWS KMSと統合されている多数のAWS のサービスを使用すると、カスタマーマネージドキーを指定して保存および管理するデータを保護できます。

カスタマーマネージドキーの使用には、月額料金と、無料利用枠を超えた使用に対する料金がかかります。アカウントの AWS KMS クォータに対してカウントされます。詳細については、「AWS Key Management Service 料金表」および「クォータ」を参照してください。

AWS マネージドキー

AWS マネージドキー は、 AWS と統合されたサービス AWS KMSによってユーザーに代わって作成、管理、使用されるアカウントのKMSキーです。

一部の AWS サービスでは、 AWS マネージドキー またはカスタマーマネージドキーを選択して、そのサービス内のリソースを保護します。一般的に、リソースを保護する暗号化キーを制御する必要がある場合を除き、 AWS マネージドキー が適しています。キーまたはそのキーポリシーを作成または維持する必要はなく、 AWS マネージドキーの月額料金はまったく発生しません。

アカウント内の を表示 AWS マネージドキーし、キーポリシー を表示し、 AWS CloudTrail ログでの使用を監査するアクセス許可があります。ただし、 のプロパティを変更 AWS マネージドキーしたり、ローテーションしたり、キーポリシーを変更したり、削除をスケジュールしたりすることはできません。また、暗号化オペレーション AWS マネージドキー で を直接使用することはできません。それらを作成するサービスは、ユーザーに代わってそれらを使用します。

組織内のリソースコントロールポリシーは、 には適用されません AWS マネージドキー。

AWS マネージドキー は、 AWS Management Console の AWS マネージドキーページに表示されます AWS KMS。また、 aws/service-nameなどの形式 を持つエイリアス AWS マネージドキー で識別することもできますaws/redshift。を明確に識別するには AWS マネージドキー、 DescribeKeyオペレーションを使用します。 AWS マネージドキーの場合、DescribeKey レスポンスの KeyManager フィールドの値は AWS です。

すべて AWS マネージドキー は毎年自動的にローテーションされます。このローテーションスケジュールは変更できません。

注記

2022 年 5 月、 のローテーションスケジュールを 3 年ごと (約 1,095 日) AWS マネージドキー から 1 年ごと (約 365 日) に変更 AWS KMS しました。

新しい AWS マネージドキー は、作成から 1 年後、その後はほぼ毎年自動的にローテーションされます。

既存の AWS マネージドキー は、最新のローテーションから 1 年後、その後は毎年自動的にローテーションされます。

の月額料金はかかりません AWS マネージドキー。無料利用枠を超える使用には料金がかかる場合がありますが、一部の AWS サービスではこれらの料金がお客様に負担されます。詳細については、サービスのユーザーガイドまたはデベロッパーガイドの「保管時の暗号化 」トピックを参照してください。詳細については、「AWS Key Management Service の料金表」を参照してください。

AWS マネージドキー アカウントの各リージョンのKMSキー数のリソースクォータにはカウントされません。ただし、アカウントのプリンシパルに代わって使用する場合、KMSキーはリクエストクォータに対してカウントされます。詳細については、「クォータ」を参照してください。

AWS 所有のキー

AWS 所有のキー は、 AWS サービスが複数の で使用するために所有および管理しているKMSキーのコレクションです AWS アカウント。 AWS 所有のキー は にはありませんが AWS アカウント、 AWS サービスは AWS 所有のキー を使用して アカウントのリソースを保護することができます。

一部の AWS サービスでは、 AWS 所有のキー またはカスタマーマネージドキーを選択できます。通常、リソースを保護する暗号化キーを監査または制御する必要がない限り、 AWS 所有のキー は適切な選択です。 AWS 所有のキー は完全に無料 (月額料金や使用料なし) で、アカウントのAWS KMS クォータにはカウントされず、簡単に使用できます。キーまたはそのキーポリシーを作成または管理する必要はありません。

のローテーションはサービス AWS 所有のキー によって異なります。特定の のローテーションの詳細については AWS 所有のキー、 サービスのユーザーガイドまたはデベロッパーガイドの「保管時の暗号化」トピックを参照してください。

AWS KMS key 階層

キー階層は、最上位の論理キーである から始まります AWS KMS key。KMS キーは最上位のキーマテリアルのコンテナを表し、Amazon リソースネーム () を使用してサービス名前空間内で AWS 一意に定義されますARN。には、一意に生成されたキー識別子、キー ID ARNが含まれます。 KMS キーは、 を通じてユーザーが開始したリクエストに基づいて作成されます AWS KMS。受信時に、 はキーKMSコンテナに配置する初期HSMバッキングキー (HBK) の作成 AWS KMS を要求します。HBK はドメインHSM内の で生成され、プレーンテキストHSMで からエクスポートされないように設計されています。代わりに、 HBKは HSMマネージドドメインキーで暗号化されてエクスポートされます。エクスポートされたこれらのキートークンHBKsは、エクスポートされたキートークン () と呼ばれますEKTs。

EKT は、耐久性が高く低レイテンシーのストレージにエクスポートされます。例えば、論理KMSキーARNに を受け取ったとします。これは、キー階層、つまり暗号化コンテキストの最上位を表します。アカウント内に複数のKMSキーを作成し、他の AWS 名前付きリソースと同様にKMSキーにポリシーを設定できます。

特定のKMSキーの階層内では、 をKMSキーのバージョンと見なHBKすことができます。KMS キーを でローテーションする場合 AWS KMS、新しい HBK が作成され、KMSキーのアクティブとしてKMSキーに関連付けられHBKます。古い HBKsは保持され、以前に保護されたデータを復号化して検証するために使用できます。ただし、新しい情報を保護するために使用できるのはアクティブな暗号化キーだけです。

AWS KMS key 階層。

キーを使用して情報KMSを直接保護 AWS KMS するように からリクエストしたり、キーで保護されている追加の HSM生成KMSキーをリクエストしたりできます。これらのキーは、カスタマーデータキー、または と呼ばれますCDKs。CDKs は、暗号文 (CT)、プレーンテキスト、またはその両方として暗号化して返すことができます。KMS キーで暗号化されたすべてのオブジェクト (お客様が用意したデータまたは HSMが生成したキー) は、 からの呼び出しHSMを介してのみ復号できます AWS KMS。

返された暗号文、または復号されたペイロードは、 内に保存されません AWS KMS。情報は、 TLSへの接続を通じて返されます AWS KMS。これは、ユーザーに代わって AWS サービスによって行われた呼び出しにも適用されます。

次の表に、キーの階層と特定のキープロパティを示します。

キー 説明 ライフサイクル

ドメインキー

256 ビット AES-GCM キーのバージョン、HSMバッキングキーをラップするHSMために使用される のメモリ内のKMSキーのみ。

毎日ローテーション1

HSM バッキングキー

256 ビット対称キーRSAまたは楕円曲線のプライベートキー。カスタマーデータとキーを保護し、ドメインキーで暗号化して保存します。1 つ以上のHSMバッキングキーは、 で表されるKMSキーで構成されますkeyId。

毎年ローテーション2 (設定はオプション)。

派生暗号化キー

256 ビット AES-GCM カスタマーデータとキーの暗号化HSMに使用される のメモリ内のキーのみ。暗号化HBKごとに から派生します。

暗号化ごとに 1 回使用され、復号時に再生成されます

お客様データキー

プレーンテキストと暗号テキストHSMで からエクスポートされたユーザー定義の対称キーまたは非対称キー。

HSM バッキングキーで暗号化され、TLSチャンネル経由で認可ユーザーに返されます。

アプリケーションによって制御されるローテーションと使用

1 AWS KMS ドメイン管理および設定タスクを考慮して、ドメインキーのローテーションを最大週 1 回まで緩和する場合がある。

2 AWS KMS お客様に代わって によって AWS マネージドキー 作成および管理されるデフォルトは、毎年自動的にローテーションされます。

キー識別子 (KeyId)

キー識別子はKMS、キーの名前のように動作します。コンソールでKMSキーを認識するのに役立ちます。これらを使用して、 AWS KMS APIオペレーション、KMSキーポリシー、IAMポリシー、および許可で使用するキーを指定します。キー識別子の値は、KMSキーに関連付けられたキーマテリアルとは完全に無関係です。

AWS KMS は、いくつかのキー識別子を定義します。KMS キーを作成すると、 はキーのプロパティであるキーARNとKMSキー ID AWS KMS を生成します。エイリアスを作成すると、 は定義したエイリアス名ARNに基づいてエイリアス AWS KMS を生成します。キー識別子とエイリアス識別子は、 AWS Management Console および で表示できます AWS KMS API。

AWS KMS コンソールでは、KMSキー 、キー IDARN、またはエイリアス名でキーを表示およびフィルタリングし、キー ID とエイリアス名でソートできます。コンソールでキー ID を検索する方法については、「キー ID とキー ARN を検索する」を参照してください。

では AWS KMS API、KMSキーの識別に使用するパラメータに名前が付けられTargetKeyIdKeyId や などのバリエーションが付けられますDestinationKeyId。ただし、これらのパラメータの値はキー に限定されませんIDs。いくつかは、任意の有効なキー識別子を受け取ることができます。各パラメータの値の詳細については、 リファレンスのパラメータの説明 AWS Key Management Service APIを参照してください。

注記

を使用する場合は AWS KMS API、使用するキー識別子に注意してください。異なる には、異なるキー識別子APIsが必要です。通常、タスクに対して実用的で最も完全なキー識別子を使用します。

AWS KMS は、次のキー識別子をサポートしています。

キー ARN

キーARNは、KMSキーの Amazon リソースネーム (ARN) です。これは、KMSキーの一意で完全修飾識別子です。キーARNには AWS アカウント、、リージョン、およびキー ID が含まれます。KMS キーARNのキーを見つける方法については、「」を参照してくださいキー ID とキー ARN を検索する

キーの形式ARNは次のとおりです。

arn:<partition>:kms:<region>:<account-id>:key/<key-id>

単一リージョンキーARNの例を次に示しますKMS。

arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

- key-id マルチリージョンキーARNsの キーの 要素は、mrk-プレフィックスで始まります。 AWS KMS のマルチリージョンキーマルチARNリージョンキーの例を次に示します。

arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab
キー ID

キー ID は、アカウントとリージョン内のKMSキーを一意に識別します。KMS キーのキー ID の検索については、「」を参照してくださいキー ID とキー ARN を検索する

以下は、単一リージョンキーのKMSキー ID の例です。

1234abcd-12ab-34cd-56ef-1234567890ab

マルチリージョンキーIDsのキーはmrk-プレフィックスで始まります。以下はマルチリージョンキーのサンプルキー ID です。

mrk-1234abcd12ab34cd56ef1234567890ab
エイリアス ARN

エイリアスARNは、 AWS KMS エイリアスの Amazon リソースネーム (ARN) です。これは、エイリアスと、それが表すKMSキーの一意の完全修飾識別子です。エイリアスARNには AWS アカウント、、リージョン、およびエイリアス名が含まれます。

エイリアスはいつでも特定のKMSキーARNを識別します。ただし、エイリアスに関連付けられたKMSキーを変更できるため、エイリアスは異なるタイミングで異なるKMSキーを識別ARNできます。KMS キーARNのエイリアスを見つける方法については、「」を参照してくださいARN KMS キーのエイリアス名とエイリアスを検索する

エイリアスの形式ARNは次のとおりです。

arn:<partition>:kms:<region>:<account-id>:alias/<alias-name>

以下は、架空の ARNのエイリアスですExampleAlias

arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
エイリアス名

エイリアス名は、最大 256 文字の文字列です。アカウントとリージョン内の関連付けられたKMSキーを一意に識別します。では AWS KMS API、エイリアス名は常に で始まりますalias/。KMS キーのエイリアス名を見つける方法については、「」を参照してくださいARN KMS キーのエイリアス名とエイリアスを検索する

エイリアス名の形式は次のとおりです。

alias/<alias-name>

例:

alias/ExampleAlias

エイリアス名の aws/ プレフィックスは、AWS マネージドキー 用に予約されます。このプレフィックスでエイリアスを作成することはできません。例えば、Amazon Simple Storage Service (Amazon S3) AWS マネージドキー の のエイリアス名は次のとおりです。

alias/aws/s3