キーの作成 - AWS Key Management Service

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

キーの作成

または対称および非対称カスタマーマスターキー(CMK) のAWS Management ConsoleまたはCreateKeyオペレーション. このプロセスでは、CMK の暗号化設定とそのキーマテリアルの生成元を決定します。CMK の作成後にこれらのプロパティを変更することはできません。CMK のキーポリシーも設定します。これはいつでも変更できます。

保存または管理するデータを暗号化する CMK を作成する場合はAWSサービスでは、対称 CMK を作成します。AWSと統合されたAWS KMS対称 CMK を使用してデータを暗号化します。これらのサービスは、非対称 CMK を使用した暗号化をサポートしていません。作成する CMK のタイプを決定する方法については、「」を参照してください CMK 設定の選択方法

AWS KMS コンソールで CMK を作成するときは、エイリアス (フレンドリ名) を指定する必要があります。-CreateKeyオペレーションでは、新しい CMK のエイリアスは作成されません。AWS KMS のエイリアスの詳細については、「エイリアスの使用」を参照してください。

詳細はこちら:

CMK を作成するためのアクセス許可

コンソールで、または API を使用して CMK を作成するには、IAM ポリシーで、次のアクセス権限を持っている必要があります。可能な限り、条件キーを使用して権限を制限します。キーを作成するプリンシパルの IAM ポリシーの例については、」CMK の作成をユーザーに許可する

注記

タグとエイリアスを管理する権限をプリンシパルに与えるときは注意してください。タグまたはエイリアスを変更すると、CMK に対するアクセス許可が許可または拒否される場合があります。詳細については、「」を参照してくださいの ABAC の使用AWS KMS

-KMS: パットキーポリシー権限は CMK を作成するのに必要ありません。-kms:CreateKey権限には、初期キーポリシーを設定する権限が含まれます。ただし、CMK の作成時にキーポリシーにこのアクセス許可を追加して、CMK へのアクセスを制御できるようにする必要があります。代わりに、バイパスロックアウトセーフティチェックパラメータは推奨されません。

対称 CMK の作成

対称 CMK は、AWS Management Console で、または AWS KMS API を使用して、作成できます。対称キー暗号化では、データの暗号化と復号化に同じキーが使用されます。

AWS Management Console を使用してカスタマーマスターキー (CMK) を作成できます。

  1. AWS Management Console にサインインし、AWS Key Management Service (AWS KMS) コンソール (https://console.aws.amazon.com/kms) を開きます。

  2. AWS リージョンを変更するには、ページの右上隅にあるリージョンセレクターを使用します。

  3. ナビゲーションペインで、[Customer managed keys (カスタマー管理型のキー)] を選択します。

  4. [キーの作成] を選択します。

  5. 対称 CMK を作成するには、[キータイプ] で [対称] を選択します。

    AWS KMS コンソールで非対称 CMK を作成する方法については、「非対称CMKの作成(コンソール)」を参照してください。

  6. [Next] を選択します。

  7. []aliasCMK 用。エイリアス名の先頭を aws/ にすることはできません。-aws/プレフィックスは、Amazon Web Services によって予約されています。AWS管理の CMK

    注記

    エイリアスを追加、削除、または更新すると、CMK に対するアクセス許可が許可または拒否される場合があります。詳細については、「の ABAC の使用AWS KMS」および「エイリアスを使用した CMK へのアクセスを制御する」を参照してください。

    エイリアスは CMK を識別するために使用できる表示名です。保護する予定のデータのタイプ、または CMK で使用する予定のアプリケーションを示すエイリアスを選択することをお勧めします。

    エイリアスは、AWS Management Consoleで CMK を作成するときに必要です。 CreateKey 操作を使用する場合、これらの操作はオプションです。

  8. (オプション) CMK の説明を入力します。

    今すぐ説明を追加するか、キーの状態Pending DeletionまたはPending Replica Deletion。既存のカスタマーマネージド CMK の説明を追加、変更、または削除するには、説明を編集する()AWS Management ConsoleまたはUpdateKeyDescriptionオペレーション.

  9. [Next] を選択します。

  10. (オプション) タグキーとオプションのタグ値を入力します。CMK に複数のタグを追加するには、[Add tag] を選択します。

    注記

    CMK のタグ付けまたはタグ解除は、CMK に対するアクセス許可が許可または拒否される場合があります。詳細については、「の ABAC の使用AWS KMS」および「タグを使用した CMK へのアクセスのコントロール」を参照してください。

    AWS リソースにタグを追加すると、使用量とコストがタグごとに集計されたコスト配分レポートが AWS によって生成されます。タグを使用して CMK へのアクセスをコントロールできます。CMK のタグ付けについては、を参照してください。キーのタグ付けおよびの ABAC の使用AWS KMS

  11. [Next] を選択します。

  12. CMK を管理できる IAM ユーザーとロールを選択します。

    注記

    IAM ポリシーは、他の IAM ユーザーおよびロールに CMK を管理するアクセス権限を付与できます。

  13. (オプション)選択した IAM ユーザーとロールがこの CMK を削除しないようにするには、ページの下部にある「 キーの削除」セクションで、「キー管理者にこのキーの削除 を許可 する」チェックボックスをオフにします。

  14. [Next] を選択します。

  15. 暗号化操作に CMK を使用できる IAM ユーザーとロールを選択します。

    注記

    - AWS アカウント (root ユーザー) には、デフォルトで完全なアクセス許可があります。その結果、IAM ポリシーでは、暗号化操作に CMK を使用するアクセス許可をユーザーとロールに付与することもできます。

  16. (オプション) 他の AWS アカウント 暗号化オペレーションにこの CMK を使用するようにできます。これを行うには、その他 AWS アカウント ページの最下部にある[Add AWS アカウント [] に AWS アカウント 外部アカウントの識別番号。複数の外部アカウントを追加するには、この手順を繰り返します。

    注記

    外部アカウントのプリンシパルで CMK を使用できるようにするには、外部アカウントの管理者は、これらのアクセス権限を提供する IAM ポリシーを作成する必要があります。詳細については、「他のアカウントのユーザーに CMK の使用を許可する」を参照してください。

  17. [次へ] を選択します。

  18. 選択したキー設定を確認します。それでも戻って、すべての設定を変更することができます。

  19. [Finish] を選択し、CMK を作成します。

CreateKey オペレーションを使用して、新しい対称カスタマーマスターキー (CMK) を作成できます。以下の例では AWS Command Line Interface (AWS CLI) を使用しますが、サポートされている任意のプログラミング言語を使用することができます。

このオペレーションには必須パラメータはありません。ただし、キーポリシーを指定するために Policy パラメータが必要になる場合もあります。キーポリシー (PutKeyPolicy) を変更したり、 説明タグ などのオプション要素をいつでも追加したりできます。また、インポートしたキーマテリアル の CMK またはカスタムキーストアの CMK を作成する場合は、Origin パラメータが必要です。

-CreateKey操作では、エイリアスを指定することはできませんが、CreateAliasオペレーションを使用して、新しい CMK のエイリアスを作成します。

次の例では、パラメータを指定せずに CreateKey オペレーションを呼び出します。このコマンドでは、すべてのデフォルト値が使用されます。AWS KMS によって生成されたキーマテリアルを使用して暗号化および復号するための対称 CMK を作成します。

$ aws kms create-key { "KeyMetadata": { "Origin": "AWS_KMS", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "Description": "", "KeyManager": "CUSTOMER", "Enabled": true, "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "KeyUsage": "ENCRYPT_DECRYPT", "KeyState": "Enabled", "CreationDate": 1502910355.475, "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "MultiRegion": false "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], } }

新しい CMK のキーポリシーを指定しない場合、デフォルトのキーポリシーthatCreateKeyコンソールを使用して新規の CMK を作成するときにコンソールが適用するデフォルトのキーポリシーとは異なります。

たとえば、 GetKeyPolicy オペレーションに対するこの呼び出しは、 CreateKey 適用されるキーポリシーを返します。これは、 AWS アカウント CMK にアクセスしてAWS Identity and Access Management(IAM) ポリシーを使用します。IAM ポリシーと CMK のキーポリシーの詳細については、」 の認証とアクセスコントロールAWS KMS

$ aws kms get-key-policy --key-id 1234abcd-12ab-34cd-56ef-1234567890ab --policy-name default --output text { "Version" : "2012-10-17", "Id" : "key-default-1", "Statement" : [ { "Sid" : "Enable IAM policies", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : "kms:*", "Resource" : "*" } ] }

非対称 CMK の作成

非対称 CMK は、AWS Management Console で、または AWS KMS API を使用して、作成できます。非対称 CMK は、暗号化または署名に使用できるパブリックキーとプライベートキーのペアを表します。プライベートキーはAWS KMS。の外部で使用するためにパブリックキーをダウンロードするにはAWS KMS「」を参照してください。パブリックキーのダウンロード

CMK を作成してAWSサービス対称 CMK の作成。AWSサービスは、暗号化の非対称 CMK をサポートしていません。対称 CMK と非対称 CMK のどちらを作成するかを決定する方法については、「CMK 設定の選択方法」を参照してください。

AWS Management Console を使用して非対称カスタマーマスターキー (CMK) を作成できます。非対称の CMK のそれぞれは、パブリックキーとプライベートキーのペアを表します。

  1. AWS Management Console にサインインし、AWS Key Management Service (AWS KMS) コンソール (https://console.aws.amazon.com/kms) を開きます。

  2. AWS リージョンを変更するには、ページの右上隅にあるリージョンセレクターを使用します。

  3. ナビゲーションペインで、[Customer managed keys (カスタマー管理型のキー)] を選択します。

  4. [キーの作成] を選択します。

  5. 非対称 CMK を作成するには、[キータイプ] で [非対称] を選択します。

    AWS KMS コンソールで対称 CMK を作成する方法については、「対称CMKの作成(コンソール)」を参照してください。

  6. パブリックキー暗号化用の非対称 CMK を作成するには、[Key usage (キーの使用方法)]で [暗号化と復号] を選択します。または、メッセージに署名して署名を検証するための非対称 CMK を作成するには、[Key usage (キーの使用方法)] で [署名と検証] を選択します。

    キー使用法の値の選択については、を参照してください キー使用法の選択

  7. 非対称 CMK の仕様([キー仕様])を選択します。

    選択する主要な仕様は、多くの場合、規制、セキュリティ、またはビジネス要件によって決定されます。また、暗号化または署名する必要があるメッセージのサイズによっても影響を受ける可能性があります。一般に、長い暗号化キーは、ブルートフォース攻撃に対してより耐性があります。

    主要な仕様の選択については、「」を参照してください キー仕様の選択

  8. [Next] を選択します。

  9. []aliasCMK 用。エイリアス名の先頭を aws/ にすることはできません。-aws/プレフィックスは、Amazon Web Services によって予約されています。AWS管理の CMK

    アンaliasはわかりやすい名前で、コンソールおよび一部の CMK を識別できます。AWS KMSAPI。保護する予定のデータのタイプ、または CMK で使用する予定のアプリケーションを示すエイリアスを選択することをお勧めします。

    エイリアスは、AWS Management Consoleで CMK を作成するときに必要です。エイリアスを指定することはできません。CreateKeyオペレーションを使用できますが、コンソールまたはCreateAliasオペレーションを使用して、既存の CMK のエイリアスを作成します。詳細については、「」を参照してくださいエイリアスの使用

  10. (オプション) CMK の説明を入力します。

    今すぐ説明を追加するか、キーの状態Pending DeletionまたはPending Replica Deletion。既存のカスタマーマネージド CMK の説明を追加、変更、または削除するには、説明を編集する()AWS Management ConsoleまたはUpdateKeyDescriptionオペレーション.

  11. (オプション) タグキーとオプションのタグ値を入力します。CMK に複数のタグを追加するには、[Add tag] を選択します。

    AWS リソースにタグを追加すると、使用量とコストがタグごとに集計されたコスト配分レポートが AWS によって生成されます。タグを使用して CMK へのアクセスをコントロールできます。CMK のタグ付けについては、を参照してください。キーのタグ付けおよびの ABAC の使用AWS KMS

  12. [Next] を選択します。

  13. CMK を管理できる IAM ユーザーとロールを選択します。

    注記

    IAM ポリシーは、他の IAM ユーザーおよびロールに CMK を管理するアクセス権限を付与できます。

  14. (オプション)選択した IAM ユーザーとロールがこの CMK を削除しないようにするには、ページの下部にある「 キーの削除」セクションで、「キー管理者にこのキーの削除 を許可 する」チェックボックスをオフにします。

  15. [Next] を選択します。

  16. 暗号化操作に CMK を使用できる IAM ユーザーとロールを選択します。

    注記

    - AWS アカウント (root ユーザー) には、デフォルトで完全なアクセス許可があります。その結果、IAM ポリシーでは、暗号化操作に CMK を使用するアクセス許可をユーザーとロールに付与することもできます。

  17. (オプション) 他の AWS アカウント 暗号化オペレーションにこの CMK を使用するようにできます。これを行うには、その他 AWS アカウント ページの最下部にある[Add AWS アカウント [] に AWS アカウント 外部アカウントの識別番号。複数の外部アカウントを追加するには、この手順を繰り返します。

    注記

    外部アカウントのプリンシパルで CMK を使用できるようにするには、外部アカウントの管理者は、これらのアクセス権限を提供する IAM ポリシーを作成する必要があります。詳細については、「他のアカウントのユーザーに CMK の使用を許可する」を参照してください。

  18. [次へ] を選択します。

  19. 選択したキー設定を確認します。それでも戻って、すべての設定を変更することができます。

  20. [Finish] を選択し、CMK を作成します。

CreateKey オペレーションを使用して、非対称カスタマーマスターキー (CMK) を作成できます。以下の例では AWS Command Line Interface (AWS CLI) を使用しますが、サポートされている任意のプログラミング言語を使用することができます。

非対称 CMK を作成する場合は、作成するキーのタイプを決定する CustomerMasterKeySpec パラメータを指定する必要があります。また、ENCRYPT_DECRYPT または SIGN_VERIFY の KeyUsage 値も指定する必要があります。CMK の作成後にこれらのプロパティを変更することはできません。

-CreateKey操作では、エイリアスを指定することはできませんが、CreateAliasオペレーションを使用して、新しい CMK のエイリアスを作成します。

次の例では、CreateKey オペレーションを使用して、パブリックキー暗号化用に設計された 4096 ビット RSA キーの非対称 CMK を作成します。

$ aws kms create-key --customer-master-key-spec RSA_4096 --key-usage ENCRYPT_DECRYPT { "KeyMetadata": { "KeyState": "Enabled", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "CustomerMasterKeySpec": "RSA_4096", "KeyManager": "CUSTOMER", "Description": "", "KeyUsage": "ENCRYPT_DECRYPT", "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": 1569973196.214, "MultiRegion": false, "EncryptionAlgorithms": [ "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256" ], "AWSAccountId": "111122223333", "Origin": "AWS_KMS", "Enabled": true } }

次のコマンド例では、署名と検証に使用される ECDSA キーのペアを表す非対称 CMK を作成します。暗号化と復号のために楕円曲線キーペアを作成することはできません。

$ aws kms create-key --customer-master-key-spec ECC_NIST_P521 --key-usage SIGN_VERIFY { "KeyMetadata": { "KeyState": "Enabled", "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "CreationDate": 1570824817.837, "Origin": "AWS_KMS", "SigningAlgorithms": [ "ECDSA_SHA_512" ], "Arn": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", "AWSAccountId": "111122223333", "CustomerMasterKeySpec": "ECC_NIST_P521", "KeyManager": "CUSTOMER", "Description": "", "Enabled": true, "MultiRegion": false, "KeyUsage": "SIGN_VERIFY" } }