Amazon Cognitoパスワードリセット時に 「Invalid input: Could not reset password...」 エラーが発生する場合の原因と対処法
困っていること
Amazon Cognito のログイン画面(Managed Login)でパスワードリセットを行おうとすると、以下のエラーが発生します。原因と対処法を教えてください。
Invalid input: Could not reset password for the account, please contact support or try again

回答
今回のケースでは、Amazon Cognito ユーザープールの設定において、「MFA(多要素認証)の方法」と「アカウント復旧メッセージの配信方法」の両方に「Eメール」が設定されていることが原因でした。

これは、Eメール MFA を有効にしている状態で、復旧チャネルとしても Eメール を設定しているためです。
MFA の方法から「Eメール」を削除し、「Authenticator アプリケーション」のみに設定することで、パスワードリセット時のエラーは解消されます。
Amazon Cognito のセキュリティモデルでは、MFA とアカウント復旧方法の分離が求められます。そのため、仕様上「同一チャネル(この場合はEメール)を MFA と復旧の両方に使用する構成」は制限されており、復旧処理(Forgot Password)が拒否されます。
公式ドキュメントにも以下の記載があります。
ユーザーが希望する MFA の方法は、パスワードの復旧に使用できる方法に影響します。希望する MFA を E メールメッセージにしたユーザーは、パスワードリセットコードを E メールで受信できません。
https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/user-pool-settings-mfa.html
補足:エラーログについて
今回のエラーメッセージは汎用的なものであり、CloudTrail のログを確認しても errorCode: 400 / errorMessage: Unexpected exception と記録されるのみで、具体的な原因(MFAと復旧設定の競合)までは特定できません。
もし、設定を確認して「Eメール」が重複していない場合は、別の原因も考えられます。
参考までに、今回の事象発生時の CloudTrail ログは以下の通りです。
{
"eventVersion": "1.10",
"userIdentity": {
"type": "Unknown",
"accountId": "111111111111"
},
"eventTime": "2025-11-20T04:29:10Z",
"eventSource": "cognito-idp.amazonaws.com",
"eventName": "forgotPassword_POST",
"awsRegion": "ap-northeast-1",
"errorCode": "400",
"errorMessage": "Unexpected exception",
"requestParameters": null,
"responseElements": null,
"additionalEventData": {
"managedLoginBrandingVersion": 2,
"requestParameters": {
"_data": "<REDACTED>",
"client_id": "54npv9argq2hu6cv829890t4gp",
"redirect_uri": "https://xxxx.info/oauth2/idpresponse",
"response_type": "code",
"scope": "<REDACTED>",
"state": "<REDACTED>"
},
"userPoolDomain": "ap-northeast-1qkdudjdsc",
"responseParameters": {
"status": 400
},
"userPoolId": "ap-northeast-1_qKDUdJdsc",
"clientId": "54npv9argq2hu6cv829890t4gp"
},
"requestID": "2c2ae5ff-3f28-4235-a47a-a4bca5cd34bc",
"eventID": "9d8a83b1-d5e8-4461-9283-ab4a3f13a573",
"readOnly": false,
"resources": [
{
"type": "AWS::Cognito::UserPool",
"ARN": "arn:aws:cognito-idp:ap-northeast-1:111111111111:userpool/ap-northeast-1_qKDUdJdsc"
}
],
"eventType": "AwsServiceEvent",
"managementEvent": true,
"recipientAccountId": "111111111111",
"eventCategory": "Management",
"tlsDetails": {
"tlsVersion": "TLSv1.2",
"cipherSuite": "ECDHE-RSA-AES128-GCM-SHA256",
"clientProvidedHostHeader": "cognito-ui.auth.ap-northeast-1.amazoncognito.com"
}
}
同様のエラーメッセージが出る別の原因として、以下の記事も参考になります。
対応方法
MFA の方法から「Eメール」を削除し、「Authenticator アプリケーション」または「SMS」のみに設定することで解消されます。ここでは Eメール MFA を無効化する手順を説明します。
- Cognito コンソールで対象のユーザープールを選択し、「サインイン」を開きます。
- 「多要素認証」の編集画面を開きます。

- MFAの方法から「Eメールメッセージ」のチェックを外して保存します。

今回は MFA の設定から Eメール を除外する方法を紹介しましたが、逆に「ユーザーアカウントの復旧」の設定から Eメール を除外する方法でも解決可能です。
どちらの設定を優先するかは、要件(EメールによるMFAを必須とするか、Eメールによるパスワードリセットを必須とするか)に合わせて検討してください。
その他の回避策は、以下の記事も参考になります。
注意点
MFA 方法を「Authenticator アプリケーション」のみに変更した場合、既に Eメール MFA を設定しているユーザーは、次回ログイン時に Authenticator アプリケーションの再設定(QRコードの読み取り等)が求められます。
設定変更後、再度パスワードリセットを行います。

無事にパスワードリセットが成功しました。








