Création d'utilisateurs avec 2FA activé pour les utilisateurs de AWS CloudHSM Management Utility - AWS CloudHSM

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'utilisateurs avec 2FA activé pour les utilisateurs de AWS CloudHSM Management Utility

Utilisez l'utilitaire AWS CloudHSM de gestion CMU (CMU) et la paire de clés pour créer un nouvel utilisateur de Crypto Office (CO) avec l'authentification à deux facteurs (2FA) activée.

Pour créer des utilisateurs CO pour lesquels 2FA est activé
  1. Dans un terminal, effectuez l'une des étapes suivantes :

    1. Accédez à votre utilitaire de HSM gestion du cloud HSM et connectez-vous à celui-ci :

      /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
    2. Connectez-vous en tant que CO et utilisez la commande suivante pour créer un nouvel utilisateur MFA avec 2FA :

      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)? yCreating 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:
    3. Laissez le terminal ci-dessus dans cet état. N'appuyez pas sur Entrée et n'entrez aucun nom de fichier.

  2. Dans un autre terminal, effectuez les opérations suivantes :

    1. Accédez à votre utilitaire de HSM gestion du cloud HSM et connectez-vous à celui-ci :

      /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
    2. Générez une paire de clés publique-privée à l'aide des commandes suivantes :

      openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
      openssl rsa -pubout -in private_key.pem -out public_key.pem
    3. Exécutez la commande suivante pour installer une fonctionnalité de requête JSON permettant d'extraire le résumé du fichier authdata :

      sudo yum install jq
    4. Pour extraire la valeur du résumé, recherchez d'abord les données suivantes dans le fichier authdata :

      { "Version":"1.0", "PublicKey":"", "Data":[ { "HsmId": <"HSM ID">, "Digest": <"DIGEST">, "Signature":"" } ] }
      Note

      Le résumé obtenu est codé en base64, mais pour signer le résumé, vous devez d'abord décoder puis signer le fichier. La commande suivante décodera le résumé et stockera le contenu décodé dans « digest1.bin »

      cat authdata | jq '.Data[0].Digest' | cut -c2- | rev | cut -c2- | rev | base64 -d > digest1.bin
    5. Convertissez le contenu de la clé publique en ajoutant « \n » et en supprimant les espaces comme indiqué ici :

      -----BEGIN PUBLIC KEY-----\n<PUBLIC KEY>\n-----END PUBLIC KEY-----
      Important

      La commande ci-dessus montre comment « \n » est ajouté immédiatement après BEGIN PUBLIC KEY-----, les espaces entre « \n » et le premier caractère de la clé publique sont supprimés, « \n » est ajouté avant -----END PUBLIC KEY et les espaces sont supprimés entre « \n » et la fin de la clé publique.

      Il s'agit du PEM format de clé publique accepté dans le fichier authdata.

    6. Collez le contenu du format pem de la clé publique dans la section clé publique du fichier authdata.

      vi authdata
      { "Version":"1.0", "PublicKey":"-----BEGIN PUBLIC KEY-----\n<"PUBLIC KEY">\n-----END PUBLIC KEY-----", "Data":[ { "HsmId":<"HSM ID">, "Digest":<"DIGEST">, "Signature":”” } ] }
    7. Signez le fichier du jeton à l'aide de la commande suivante :

      openssl pkeyutl -sign -in digest1.bin -inkey private_key.pem -pkeyopt digest:sha256 | base64 Output Expected: <"THE SIGNATURE">
      Note

      Comme indiqué dans la commande ci-dessus, utilisez openssl pkeyutl plutôt que openssl dgst pour signer.

    8. Ajoutez le résumé signé dans le fichier Authdata dans le champ « Signature ».

      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==" } ] }
  3. Retournez au premier terminal et appuyez sur 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)