翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS CloudHSM 管理ユーティリティ CMU (CMU) とキーペアを使用して、2 要素認証 (2FA) を有効にした新しい暗号局 (CO) ユーザーを作成します。
2FA を有効化した状態での CO ユーザー作成
-
1 つのターミナルで、以下のステップを実行します。
HSM にアクセスし、CloudHSM 管理ユーティリティにログインします。
/opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
CO としてログインし、以下のコマンドを使用して 2FA で新しいユーザー MFA を作成します。
aws-cloudhsm >
createUser CO MFA
<CO USER NAME>
-2fa /home/ec2-user/authdata*************************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
Creating User exampleuser3(CO) on 1 nodesAuthentication data written to: "/home/ec2-user/authdata"Generate Base64-encoded signatures for SHA256 digests in the authentication datafile. To generate the signatures, use the RSA private key, which is the second factor ofauthentication for this user. Paste the signatures and the corresponding public keyinto the authentication data file and provide the file path below.Leave this field blank to use the path initially provided.Enter filename:上記のターミナルは、この状態のままにしておきます。Enter キーを押したり、ファイル名を入力したりしないでください。
別のターミナルで、以下のステップを実行します。
-
HSM にアクセスし、CloudHSM 管理ユーティリティにログインします。
/opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
以下のコマンドを使用して、パブリックプライベートキーペアを生成します。
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
openssl rsa -pubout -in private_key.pem -out public_key.pem
以下のコマンドを実行して、authdata ファイルからダイジェストを抽出するための JSON クエリ機能をインストールします。
sudo yum install jq
ダイジェスト値を抽出するには、まず authdata ファイル内の以下のデータを検索します。
{ "Version":"1.0", "PublicKey":"", "Data":[ { "HsmId":
<"HSM ID">
, "Digest":<"DIGEST">
, "Signature": "" } ] }注記
取得したダイジェストは base64 でエンコードされていますが、ダイジェストに署名するには、まずファイルをデコードしてから署名する必要があります。次のコマンドはダイジェストをデコードし、デコードされたコンテンツを 「digest1.bin」に保存します
cat authdata | jq '.Data[0].Digest' | cut -c2- | rev | cut -c2- | rev | base64 -d > digest1.bin
-
パブリックキーの内容を変換し、次に示すように「\n」を追加し、スペースを削除します。
-----BEGIN PUBLIC KEY-----\n
<PUBLIC KEY>
\n-----END PUBLIC KEY-----重要
上記のコマンドは、BEGIN PUBLIC KEY----- の直後に「\n」を追加する方法、「\n」とパブリックキーの最初の文字の間のスペースを削除する方法、-----END PUBLIC KEY の前に「\n」を追加する方法、および「\n」とパブリックキーの末尾の間のスペースを削除する方法を示しています。
これはパブリックキーの PEM 形式で、認証データファイルで受け入れられます。
パブリックキー PEM 形式のコンテンツを authdata ファイルのパブリックキーセクションに貼り付けます。
vi authdata
{ "Version":"1.0", "PublicKey":"-----BEGIN PUBLIC KEY-----\n
<"PUBLIC KEY">
\n-----END PUBLIC KEY-----", "Data":[ { "HsmId":<"HSM ID">
, "Digest":<"DIGEST">
, "Signature": "" } ] }次のコマンドを使用してトークン ファイルに署名します。
openssl pkeyutl -sign -in digest1.bin -inkey private_key.pem -pkeyopt digest:sha256 | base64
Output Expected:
<"THE SIGNATURE">
注記
上記のコマンドで示したように、署名には openssl dgst の代わりに openssl pkeyutl を使用してください。
Authdata ファイルの「署名」フィールドに署名済みダイジェストを追加します。
vi authdata
{ "Version": "1.0", "PublicKey": "-----BEGIN PUBLIC KEY----- ... -----END PUBLIC KEY-----", "Data": [ { "HsmId":
<"HSM ID">
, "Digest":<"DIGEST">
, "Signature":<"Kkdl ... rkrvJ6Q==">
}, { "HsmId":<"HSM ID">
, "Digest":<"DIGEST">
, "Signature":<"K1hxy ... Q261Q==">
} ] }
-
-
最初のターミナルに戻り、
Enter
を押します。Generate Base64-encoded signatures for SHA256 digests in the authentication datafile. To generate the signatures, use the RSA private key, which is the second factor ofauthentication for this user. Paste the signatures and the corresponding public keyinto the authentication data file and provide the file path below. Leave this field blank to use the path initially provided. Enter filename: >>>>> Press Enter here createUser success on server 0(10.0.1.11)