Inicio de sesión con usuarios con la MFA activada - AWS CloudHSM

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Inicio de sesión con usuarios con la MFA activada

Siga estos pasos para crear usuarios con la MFA activada.

  1. Utilice el comando de login mfa-token-signde la CLI de CloudHSM para iniciar el proceso de inicio de sesión con MFA para un usuario que tenga la MFA habilitada.

    aws-cloudhsm > login --username <USERNAME> --role <ROLE> mfa-token-sign --token unsigned-tokens.json Enter password:
  2. Introduzca la contraseña. A continuación, se le pedirá que introduzca la ruta al archivo de token que contiene los pares de tokens firmados y sin firmar, donde los tokens firmados son los que se generan con su clave privada.

    aws-cloudhsm > login --username <USERNAME> --role <ROLE> mfa-token-sign --token unsigned-tokens.json Enter password: Enter signed token file path (press enter if same as the unsigned token file):
  3. Mientras se le pide que introduzca la ruta al archivo de token firmado, puede inspeccionar el archivo de token sin firmar en una terminal independiente. Identifique el archivo con los tokens sin firmar que deben firmarse: unsigned-tokens.json. La cantidad de tokens de este archivo depende de la cantidad de HSM del clúster. Cada token representa un HSM. Este archivo tiene formato JSON y contiene tokens que deben firmarse para demostrar que tiene una clave privada.

    $ cat unsigned-tokens.json { "version": "2.0", "tokens": [ { "unsigned": "Vtf/9QOFY45v/E1osvpEMr59JsnP/hLDm4ItOO2vqL8=", "signed": "" }, { "unsigned": "wVbC0/5IKwjyZK2NBpdFLyI7BiayZ24YcdUdlcxLwZ4=", "signed": "" }, { "unsigned": "z6aW9RzErJBL5KqFG5h8lhTVt9oLbxppjod0Ebysydw=", "signed": "" } ] }
  4. Firme los tokens sin firmar con la clave privada creada en el paso 2. En primer lugar, debe extraer y decodificar los tokens codificados en base64.

    $ echo "Vtf/9QOFY45v/E1osvpEMr59JsnP/hLDm4ItOO2vqL8=" > token1.b64 $ echo "wVbC0/5IKwjyZK2NBpdFLyI7BiayZ24YcdUdlcxLwZ4=" > token2.b64 $ echo "z6aW9RzErJBL5KqFG5h8lhTVt9oLbxppjod0Ebysydw=" > token3.b64 $ base64 -d token1.b64 > token1.bin $ base64 -d token2.b64 > token2.bin $ base64 -d token3.b64 > token3.bin
  5. Ahora tiene tokens binarios. Fírmelos con la clave privada de RSA que creó anteriormente en el paso 1 de la configuración de la MFA.

    $ openssl pkeyutl -sign \ -inkey officer1.key \ -pkeyopt digest:sha256 \ -keyform PEM \ -in token1.bin \ -out token1.sig.bin $ openssl pkeyutl -sign \ -inkey officer1.key \ -pkeyopt digest:sha256 \ -keyform PEM \ -in token2.bin \ -out token2.sig.bin $ openssl pkeyutl -sign \ -inkey officer1.key \ -pkeyopt digest:sha256 \ -keyform PEM \ -in token3.bin \ -out token3.sig.bin
  6. Ahora tiene las firmas binarias de los tokens. Codifíquelas con base64 y vuelva a colocarlas en su archivo del token.

    $ base64 -w0 token1.sig.bin > token1.sig.b64 $ base64 -w0 token2.sig.bin > token2.sig.b64 $ base64 -w0 token3.sig.bin > token3.sig.b64
  7. Por último, vuelva a copiar y pegar los valores de base64 en su archivo del token:

    { "version": "2.0", "tokens": [ { "unsigned": "1jqwxb9bJOUUQLiNb7mxXS1uBJsEXh0B9nj05BqnPsE=", "signed": "eiw3fZeCKIY50C4zPeg9Rt90M1Qlq3WlJh6Yw7xXm4nF6e9ETLE39+9M+rUqDWMRZjaBfaMbg5d9yDkz5p13U7ch2tlF9LoYabsWutkT014KRq/rcYMvFsU9n/Ey/TK0PVaxLN42X+pebV4juwMhN4mK4CzdFAJgM+UGBOj4yB9recpOBB9K8QFSpJZALSEdDgUc/mS1eDq3rU0int6+4NKuLQjpR+LSEIWRZ6g6+MND2vXGskxHjadCQ09L7Tz8VcWjKDbxJcBiGKvkqyozl9zrGo8fA3WHBmwiAgS61Merx77ZGY4PFR37+j/YMSC14prCN15DtMRv2xA1SGSb4w==" }, { "unsigned": "LMMFc34ASPnvNPFzBbMbr9FProS/Zu2P8zF/xzk5hVQ=", "signed": "HBImKnHmw+6R2TpFEpfiAg4+hu2pFNwn43ClhKPkn2higbEhUD0JVi+4MerSyvU/NN79iWVxDvJ9Ito+jpiRQjTfTGEoIteyuAr1v/Bzh+HjmrO53OQpZaJ/VXGIgApD0myuu/ZGNKQTCSkkL7+V81FG7yR1Nm22jUeGa735zvm/E+cenvZdy0VVx6A7WeWrl3JEKKBweHbi+7BwbaW+PTdCuIRd4Ug76Sy+cFhsvcG1k7cMwDh8MgXzIZ2m1f/hdy2j8qAxORTLlmwyUOYvPYOvUhc+s83hx36QpGwGcD7RA0bPT5OrTx7PHd0N1CL+Wwy91We8yIOFBS6nxo1R7w==" }, { "unsigned": "dzeHbwhiVXQqcUGj563z51/7sLUdxjL93SbOUyZRjH8=", "signed": "VgQPvrTsvGljVBFxHnswduq16x8ZrnxfcYVYGf/N7gEzI4At3GDs2EVZWTRdvS0uGHdkFYp1apHgJZ7PDVmGcTkIXVD2lFYppcgNlSzkYlftr5EOjqS9ZjYEqgGuB4g//MxaBaRbJai/6BlcE92NIdBusTtreIm3yTpjIXNAVoeRSnkfuw7wZcL96QoklNb1WUuSHw+psUyeIVtIwFMHEfFoRC0t+VhmnlnFnkjGPb9W3Aprw2dRRvFM3R2ZTDvMCiOYDzUCd43GftGq2LfxH3qSD51oFHglHQVOY0jyVzzlAvub5HQdtOQdErIeO0/9dGx5yot07o3xaGl5yQRhwA==" } ] }
  8. Ahora que su archivo del token tiene todas las firmas necesarias, puede continuar. Introduzca el nombre del archivo que contiene los tokens firmados y pulse la tecla Intro. Ahora debería iniciar sesión correctamente.

    aws-cloudhsm > login --username <USERNAME> --role <ROLE> mfa-token-sign --token unsigned-tokens.json Enter password: Enter signed token file path (press enter if same as the unsigned token file): { "error_code": 0, "data": { "username": "<USERNAME>", "role": "<ROLE>" } }