CMU を使用して AWS CloudHSM キーの属性を設定する - AWS CloudHSM

CMU を使用して AWS CloudHSM キーの属性を設定する

AWS CloudHSM cloudhsm_mgmt_util の setAttribute コマンドを使用して、HSM のキーのラベル、暗号化、復号化、ラップ、アンラップの属性の値を変更することができます。また、key_mgmt_util の setAttribute コマンドを使用して、セッションキーを永続キーに変換することができます。自分が所有するキーの属性のみ変更できます。

CMU コマンドを実行する前に CMU を起動し、HSM にログインする必要があります。ログインに使用するユーザータイプで、使用するコマンドを実行できることを確認してください。

HSM を追加または削除する場合は、CMU の設定ファイルを更新します。さもないと、クラスター内のすべての HSM で変更が有効にならない場合があります。

ユーザーのタイプ

このコマンドは、次のユーザーが実行できます。

  • Crypto User (CU)

Syntax

このコマンドには名前付きパラメータがないため、引数は図表で指定された順序で入力する必要があります。

setAttribute <key handle> <attribute id>

次の例では、対称キーの復号機能を無効にする方法を示します。次のようなコマンドを使用すると、他のキーのラップやラップ解除はできるが、データの暗号化や復号はできないようにラップキーを設定できます。

最初のステップでは、ラップキーを作成します。このコマンドは、key_mgmt_util の genSymKey を使用して、256 ビット AES 対称キーを生成します。出力は、新しいキーのキーハンドルが 14 であることを示しています。

$ genSymKey -t 31 -s 32 -l aes256 Cfm3GenerateSymmetricKey returned: 0x00 : HSM Return: SUCCESS Symmetric Key Created. Key Handle: 14 Cluster Error Status Node id 0 and err state 0x00000000 : HSM Return: SUCCESS

次に、復号属性の現在の値を確認します。復号属性の属性 ID を取得するには、listAttributes を使用します。出力は、OBJ_ATTR_DECRYPT 属性を表す定数が 261 であることを示しています。キー属性の解釈については、「KMU の AWS CloudHSM キー属性リファレンス」を参照してください。

aws-cloudhsm> listAttributes Following are the possible attribute values for getAttribute: OBJ_ATTR_CLASS = 0 OBJ_ATTR_TOKEN = 1 OBJ_ATTR_PRIVATE = 2 OBJ_ATTR_LABEL = 3 OBJ_ATTR_TRUSTED = 134 OBJ_ATTR_KEY_TYPE = 256 OBJ_ATTR_ID = 258 OBJ_ATTR_SENSITIVE = 259 OBJ_ATTR_ENCRYPT = 260 OBJ_ATTR_DECRYPT = 261 OBJ_ATTR_WRAP = 262 OBJ_ATTR_UNWRAP = 263 OBJ_ATTR_SIGN = 264 OBJ_ATTR_VERIFY = 266 OBJ_ATTR_DERIVE = 268 OBJ_ATTR_LOCAL = 355 OBJ_ATTR_MODULUS = 288 OBJ_ATTR_MODULUS_BITS = 289 OBJ_ATTR_PUBLIC_EXPONENT = 290 OBJ_ATTR_VALUE_LEN = 353 OBJ_ATTR_EXTRACTABLE = 354 OBJ_ATTR_NEVER_EXTRACTABLE = 356 OBJ_ATTR_ALWAYS_SENSITIVE = 357 OBJ_ATTR_DESTROYABLE = 370 OBJ_ATTR_KCV = 371 OBJ_ATTR_WRAP_WITH_TRUSTED = 528 OBJ_ATTR_WRAP_TEMPLATE = 1073742353 OBJ_ATTR_UNWRAP_TEMPLATE = 1073742354 OBJ_ATTR_ALL = 512

キー 14 の 復号属性の現在の値を取得するために、次のコマンドは cloudhsm_mgmt_util の getAttribute を使用します。

出力は、復号属性の値がクラスター内の両方の HSM において true (1) であることを示しています。

aws-cloudhsm> getAttribute 14 261 Attribute Value on server 0(10.0.0.1): OBJ_ATTR_DECRYPT 0x00000001 Attribute Value on server 1(10.0.0.2): OBJ_ATTR_DECRYPT 0x00000001

次のコマンドでは、setAttribute を使用してキー 14 の復号属性の値 (属性 261) を 0 に変更します。これにより、キーの復号機能が無効になります。

出力は、クラスター内の両方の HSM でコマンドが成功したことを示しています。

aws-cloudhsm> setAttribute 14 261 0 *************************CAUTION******************************** This is a CRITICAL operation, should be done on all nodes in the cluster. AWS does NOT synchronize these changes automatically with the nodes on which this operation is not executed or failed, please ensure this operation is executed on all nodes in the cluster. **************************************************************** Do you want to continue(y/n)? y setAttribute success on server 0(10.0.0.1) setAttribute success on server 1(10.0.0.2)

最後のコマンドでも、getAttribute コマンドを使用します。この場合も、キー 14 の復号属性 (属性 261) が取得されます。

今回の出力は、復号属性の値がクラスター内の両方の HSM において false (0) であることを示しています。

aws-cloudhsm>getAttribute 14 261 Attribute Value on server 0(10.0.3.6): OBJ_ATTR_DECRYPT 0x00000000 Attribute Value on server 1(10.0.1.7): OBJ_ATTR_DECRYPT 0x00000000

引数

setAttribute <key handle> <attribute id>
<key-handle>

所有するキーのキーハンドルを指定します。各コマンドに指定できるキーは 1 つのみです。キーのキーハンドルを取得するには、key_mgmt_util の findKey を使用します。キーのユーザーを確認するには、getKeyInfo を使用します。

必須: はい

<attribute id>

変更する属性を表す定数を指定します。各コマンドに指定できる属性は 1 つのみです。属性とその整数値を取得するには、listAttributes を使用します。キー属性の解釈については、「KMU の AWS CloudHSM キー属性リファレンス」を参照してください。

有効な値:

  • 3OBJ_ATTR_LABEL

  • 134OBJ_ATTR_TRUSTED

  • 260OBJ_ATTR_ENCRYPT

  • 261OBJ_ATTR_DECRYPT

  • 262OBJ_ATTR_WRAP

  • 263OBJ_ATTR_UNWRAP

  • 264OBJ_ATTR_SIGN

  • 266OBJ_ATTR_VERIFY

  • 268OBJ_ATTR_DERIVE

  • 370OBJ_ATTR_DESTROYABLE

  • 528OBJ_ATTR_WRAP_WITH_TRUSTED

  • 1073742353OBJ_ATTR_WRAP_TEMPLATE

  • 1073742354OBJ_ATTR_UNWRAP_TEMPLATE

必須: はい

関連トピック