在 Amazon Cognito 中为新用户生成临时密码后,该密码将被发送到所提供的电子邮件并具有指定的有效期。但是,当尝试使用 initiateAuth 方法登录时,使用过期的临时密码或不正确的凭据之间没有明显区别。两种情况都会产生相同的 statusCode 和 Exception 类型,唯一的区别是错误消息。所以想请问有没有办法区分这两种情况
statusCode: 400
ExceptionType: NotAuthorizedException
您必须访问
Message
属性,其中将包含文本:"Temporary password has expired and must be reset by an administrator."
不幸的是,无法区分此错误与其他未经授权的原因(实际上应该是状态代码 401)。请参阅如何在 AWS 中正确处理 NotAuthorizedException。