amazon-cognito - AWS Cognito 更改电子邮件 - 更新前需要验证
问题描述
我将用户池设置为使用电子邮件作为用户标识符(也配置为需要电子邮件验证)。每个主要操作/流程(登录、注册、更改密码、重置密码)似乎都可以正常工作且符合预期。
一件没有像人们期望的那样工作的重要事情是更改电子邮件流:
当请求更改电子邮件时,Cognito 会按预期将验证码发送到新电子邮件,但它也会在验证之前将电子邮件更新为新值。
这在 f.ex. 时会导致问题:新电子邮件输入错误(因此验证码永远不会到达)并且用户忘记了密码。似乎没有办法从中恢复过来。我是否遗漏、配置错误或滥用了某些东西?我做了一个最低限度的用户池定制(可能不区分大小写)。
AWS 允许在验证之前更改电子邮件的原因是什么(即使 Cognito 在注册期间实际上需要在创建帐户之前进行验证)?
是否缺少一些用户池配置设置(或 Lamba)或本地 SDK 设置?
顺便说一句:我使用AWSMobileClient
iOS SDK 作为客户端,但这可能无关紧要(?)。
解决方案
这是 Cognito 中的一个错误,等待解决 3 年多。许多人为这个问题找到的解决方案是创建自己的验证系统。
有关更多详细信息,请参阅:https ://github.com/aws-amplify/amplify-js/issues/987
推荐阅读
- c# - MissingMethodException C# NET 标准
- php - 从 PHP 文件连接 Sybase
- java - 如何使用核心java在selenium中从内部框架切换到默认页面
- ruby-on-rails - 使用 Rails 在唯一用户电子邮件(带转发)下以电子邮件形式发送表单
- typescript - Typescript KeyOf - 数组或对象 - 绝望
- android - Android QR阅读器使用zxing显示白色空活动
- python - Python 接受参数
- javascript - 围绕对象键的数组表示法
- reactjs - reactjs this context is changed inside on change method 如何调用函数
- python - sudo easy_install pip 不工作