Standardエディションの専用キー管理サービス (KMS) インスタンスの顧客マスターキー (CMK) を作成するときにOriginパラメーターをEXTERNALに設定した場合、専用KMSはハードウェアセキュリティモジュール (HSM) クラスターに対称キー素材を生成しません。 CMKの外部対称キーマテリアルをインポートする必要があります。 このトピックでは、外部対称キーマテリアルをインポートする方法について説明します。

このタスクについて

DescribeKey 操作を呼び出して、既存のCMKの対称キーマテリアルのソースを表示できます。 Originパラメーターの値がEXTERNALの場合、対称キーマテリアルは外部ソースからインポートされます。 この場合、CMKは外部CMKと見なされます。

OriginパラメーターをEXTERNALに設定した場合、外部対称キーマテリアルをインポートするときに次の点に注意してください。
  • 対称鍵マテリアルが生成されるランダム性のソースが要件を満たしていることを確認します。
  • 対称キーマテリアルがHSMクラスターにインポートされます。 DeleteKeyMaterial 操作を呼び出して対称キーマテリアルを削除することはできません。 ただし、ScheduleKeyDeletion操作を呼び出してCMK削除タスクをスケジュールし、検出の待機期間を指定できます。 CMKが削除されると、対称キーマテリアルも削除されます。
  • CMKは、1つの対称キーマテリアルのみを持つことができます。 CMKの対称キーマテリアルをインポートすると、CMKは対称キーマテリアルにバインドされます。 CMKの他の対称キーマテリアルをインポートできなくなりました。
  • 対称キー素材は、128、192、または256ビットの対称キーである必要があります。

ステップ1: 外部CMKの作成

  1. KMS コ ンソールにログインします。
  2. 上部のナビゲーションバーで、Standardエディションの専用KMSインスタンスが存在するリージョンを選択します。
  3. 左側のナビゲーションウィンドウで、[専用KMS] をクリックします。
  4. 管理する専用KMSインスタンスを見つけて、[操作] 列の [管理] をクリックします。
  5. [ユーザーマスターキー] タブで、[キーの作成] をクリックします。
  6. [キーの作成] ダイアログボックスで、[キー仕様] パラメーターを設定します。
    専用KMSは、次のキータイプをサポートしています。Aliyun_AES_128、Aliyun_AES_192、およびAliyun_AES_256。
  7. [エイリアス名] および [説明] パラメーターを設定します。
  8. [詳細設定] をクリックし、[キーマテリアルソース] パラメーターを [外部] に設定します。
  9. [外部キーマテリアルキーの使用の意味を理解する] を選択し、[OK] をクリックします。

ステップ2: 対称キーマテリアルのインポートに使用されるパラメータを取得する

パラメータには、公開鍵およびインポートトークンが含まれる。 公開鍵は、対称鍵材料を暗号化するために使用される。
  1. [ユーザーマスターキー] タブで、必要なCMKのIDをクリックして、キー管理ページに移動します。
  2. [キーマテリアル] セクションで、[キーマテリアルのインポートに使用するパラメーターの取得] をクリックします。
  3. [キーマテリアルのインポートに使用するパラメーターの取得] ダイアログボックスで、[ラッピングキータイプ] パラメーターと [ラッピングアルゴリズム] パラメーターを設定し、[次へ] をクリックします。

    ラッピングキータイプパラメーターをRSA_2048に設定した場合、ラッピングアルゴリズムパラメーターをRSAES_PKCS1_V1_5またはRSAES_OAEP_SHA_256に設定できます。 デフォルト値はRSAES_PKCS1_V1_5です。 この例では、デフォルト値が使用されます。

  4. 公開鍵形式の右側にある [ダウンロード] をクリックして、公開鍵をダウンロードします。 インポートトークンの右側にある [ダウンロード] をクリックして、インポートトークンをダウンロードします。 次に、[閉じる] をクリックします。

ステップ3: 対称鍵材料を暗号化する

次のセクションでは、OpenSSLを使用して対称キー素材を暗号化する方法について説明します。 暗号化アルゴリズムは、対称キーマテリアルのインポートに使用されるパラメーターを取得するときに指定するアルゴリズムと同じである必要があります。 公開鍵はBase64でエンコードされます。 公開鍵を使用する前に、公開鍵をデコードする必要があります。

  1. 対称キーマテリアルを作成します。 この例では、OpenSSLを使用して32バイトの乱数を生成します。 この番号は、対称鍵材料として使用される。
  2. 指定された暗号化アルゴリズムを使用して、対称キーマテリアルを暗号化します。 この例では、RSAES_PKCS1_V1_5アルゴリズムが使用されます。
  3. 暗号化された対称キーマテリアルをBase64でエンコードし、エンコードされたキーマテリアルをテキストファイルに保存します。
    openssl rand -out KeyMaterial.bin 32
    openssl rsautl -encrypt -in KeyMaterial.bin -pkcs -inkey PublicKey.bin -keyform DER -pubin -out EncryptedKeyMaterial.bin
    openssl enc -e -base64 -A -in EncryptedKeyMaterial.bin -out EncryptedKeyMaterial_base64.txt

ステップ4: 対称キーマテリアルのインポート

各インポートトークンは、対称キーマテリアルの暗号化に使用される公開キーにバインドされます。 CMKは、インポートトークンが生成されるときに指定されます。 インポートトークンは、指定されたCMKに対してのみ対称キーマテリアルをインポートするために使用できます。 インポートトークンの有効期間は24時間です。 トークンは、この期間内に繰り返し使用することができる。 トークンの有効期限が切れたら、新しいインポートトークンと新しい公開キーを取得する必要があります。

  1. [ユーザーマスターキー] タブで、対称キーマテリアルをインポートするCMKを見つけ、そのIDをクリックしてキー管理ページに移動します。
  2. [キーマテリアル] セクションで、[ラップキーマテリアルのインポート] をクリックします。
  3. [ラップキーマテリアルのインポート] ダイアログボックスで、[ラップキーマテリアル][トークンのインポート] パラメーターを設定し、[OK] をクリックします。

タスクの結果

対称キーマテリアルがインポートされると、CMKのステータスが [Pending Import] から [Enabled] に変わります。