사용자가 Amazon Cognito에서 암호를 변경할 수 있도록 암호 찾기 플로우를 사용해야 합니다.
Amazon Cognito 사용자는 ForgotPassword API를 호출하여 암호 찾기 플로우를 시작하여 사용자 비밀번호를 재설정할 수 있습니다.
Amazon Cognito에서 사용자 암호를 변경하기 위한 암호 찾기 플로우를 설정하려면 다음 단계를 따르세요.
1. ForgotPassword API를 호출하여 사용자 비밀번호를 재설정하는 데 필요한 확인 코드가 포함된 메시지를 사용자에게 보냅니다.
중요: 예시 AWS Command Line Interface(AWS CLI) 명령에서는 예시 문자열의 모든 인스턴스를 사용자 값으로 바꾸세요. (예를 들어, **"example_client_id"**를 사용자의 클라이언트 ID로 변경합니다.)
forgot-password 명령 예시:
aws cognito-idp forgot-password --client-id example_client_id --username example_user_name
출력:
{ "CodeDeliveryDetails": { "Destination": "t***@g***", "DeliveryMedium": "EMAIL", "AttributeName": "email" } }
확인 코드 메시지는 사용자의 확인된 이메일 주소 또는 확인된 전화번호로 전송됩니다. AccountRecoverySetting 파라미터에서 복구 방법을 사용자 지정할 수 있습니다. 예시의 확인 코드 메시지는 사용자의 확인된 이메일 주소로 전송됩니다. 구성은 사용 사례에 따라 달라집니다.
참고: 사용자에 대해 확인된 전화번호나 확인된 이메일 주소가 없는 경우 InvalidParameteException 오류가 발생합니다. 이메일 주소 및 전화번호 인증을 구성하는 방법에 대해 자세히 알아보려면 이메일 또는 전화 인증 구성을 참조하세요.
2. 사용자가 확인 코드를 입력하여 비밀번호를 재설정할 수 있도록 ConfirmForgotPassword API를 호출합니다.
confirm-forgot-password 명령 예시:
aws cognito-idp confirm-forgot-password --client-id example_client_id --username=user@example.com --password example_password --confirmation-code example_confirmation_code
3. 필요한 경우 PreventUserExistenceErrors를 활성화로 설정하여 암호 복구 오류 응답을 사용자 지정합니다. 자세히 알아보려면 오류 응답 관리를 참조하세요.
4. 앱 클라이언트가 사용자 풀에 클라이언트 암호로 구성된 경우 암호 해시를 제공해야 합니다. 자세히 알아보려면 Amazon Cognito 사용자 풀 API에서 "Unable to verify secret hash for client <client-id>(<client-id> 클라이언트의 보안 암호 해시를 확인할 수 없습니다)" 오류를 해결하려면 어떻게 해야 하나요?를 참조하세요.