¿Cómo recupero una contraseña de usuario en Amazon Cognito?

3 minutos de lectura
0

Quiero recuperar una contraseña de usuario en Amazon Cognito.

Resolución

Hay dos formas de recuperar una contraseña de usuario en Amazon Cognito:

  • A través de un correo electrónico o número de teléfono verificado.
  • A través de una contraseña de usuario mediante el administrador.

Verificación de correo electrónico o número de teléfono

Puede utilizar el comando ForgotPassword de la API para recuperar la contraseña de un usuario. El comando ForgotPassword de la API envía un código de recuperación a un correo electrónico verificado o a un número de teléfono verificado. El código de recuperación es válido durante una hora. A continuación, utilice el comando ConfirmForgotPassword de la API para ingresar un código de confirmación que restablezca la contraseña.

Nota: Si se producen errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), asegúrese de que utiliza la versión más reciente de AWS CLI.

Comandos de AWS CLI:

ForgotPassword

aws cognito-idp forgot-password --client-id 38fjsnc484p94kpqsnet7mpld0 --username jane@example.com

Salida:

{
  "CodeDeliveryDetails": {
    "Destination": "j***@e***.com",
    "DeliveryMedium": "EMAIL",
    "AttributeName": "email"
  }
}

ConfirmForgotPassword

aws cognito-idp confirm-forgot-password --client-id 3n4b5urk1ft4fl3mg5e62d9ado --username=diego@example.com --password PASSWORD --confirmation-code CONF_CODE

Nota: Debe pasar --secret-hash en el comando de la CLI si cumple los dos requisitos siguientes:

  • Los comandos de AWS CLI tienen --client-id como parámetro.
  • El cliente de la aplicación está configurado con un secreto.

Para calcular el hash secreto de un cliente de aplicación, consulte [How do I troubleshoot "Unable to verify secret hash for client

" errors from my Amazon Cognito user pools API?](https://repost.aws/es/knowledge-center/cognito-unable-to-verify-secret-hash) (¿Cómo puedo solucionar los errores “Unable to verify secret hash for client

” [No se puede verificar el hash secreto para el cliente

] de mi API de grupos de usuarios de Amazon Cognito?).

Restablecimiento de administrador

Nota: Si no es administrador, contacte con él para llevar a cabo las siguientes acciones.

Cuando llama al comando AdminResetUserPassword de la API, la contraseña actual se invalida y debe cambiarla. Si un usuario intenta iniciar sesión después de ejecutar el comando de la API, la aplicación hará lo siguiente:

  • Recupere PasswordResetRequiredException.
  • Indique al usuario que restablezca la contraseña con el flujo de contraseña olvidada.

Además, al llamar a la API se envía un mensaje al usuario con un código para cambiar su contraseña si:

  • El grupo de usuarios tiene configurada la verificación telefónica, y
  • Existe un número de teléfono o correo electrónico verificados para el usuario.

Comandos de AWS CLI:

AdminResetUserPassword

aws cognito-idp admin-reset-user-password --user-pool-id us-west-2_aaaaaaaaa --username diego@example.com

ConfirmForgotPassword

aws cognito-idp confirm-forgot-password --client-id 3n4b5urk1ft4fl3mg5e62d9ado --username diego@example.com --password PASSWORD --confirmation-code CONF_CODE

AdminSetUserPassword

Como administrador, también puede usar el comando AdminSetUserPassword de la API para llamar a la contraseña del usuario en un grupo de usuarios. La contraseña puede ser temporal o permanente. Si es temporal, el estado del usuario pasa al estado FORCE_CHANGE_PASSWORD. Al iniciar sesión, la respuesta de InitiateAuth/AdminInitiateAuth contiene el desafío NEW_PASSWORD_REQUIRED. Si no inicia sesión antes de que caduque, no podrá iniciar sesión y tendrá que restablecer la contraseña. Después de establecer una contraseña nueva, o si la contraseña es permanente, el estado del usuario se establece en CONFIRMED (CONFIRMADO).

aws cognito-idp admin-set-user-password --user-pool-id us-west-2_aaaaaaaaa --username diego@example.com --password Hello@123 --permanent

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año