Amazon Cognito:验证用户后,是不是必须提示他们登录?

Posted

技术标签:

【中文标题】Amazon Cognito:验证用户后,是不是必须提示他们登录?【英文标题】:Amazon Cognito: Once a user is verified do they have to be prompted to sign in?Amazon Cognito:验证用户后,是否必须提示他们登录? 【发布时间】:2017-07-17 16:16:45 【问题描述】:

我正在使用 AWS Cognito。我的注册流程运行良好。他们的用户填写了他们的电子邮件地址和密码,我在正确的User Pool 中创建了帐户。我启用了电子邮件验证,并在短时间内发送和接收电子邮件。在注册屏幕之后,用户会看到一个验证屏幕,以接受刚刚通过电子邮件发送的代码。同样,这一切都很好。

我想了解的是:

一旦我有一个用户注册并验证,为了让 ios AWS 开发工具包做这件事,所以我需要告诉用户去登录,或者我只是错过了一些可以获取他们的凭证一次的调用是否经过验证?

我的猜测是,由于我们不知道用户何时验证了自己,可能会在几个小时后,他们可能已经杀死了应用程序并在那个时候重新启动了它,预期的流程是让他们再次登录。

由于应用程序在内存中确实有密码(未存储在磁盘上的任何位置),他们用于在当前注册导航控制器/流程中注册,我想我可以在验证完成后强制登录。

我只是想确保我没有遗漏 SDK 或有关此案例的文档。

【问题讨论】:

【参考方案1】:

您的理解是正确的,没有验证流程会跳过登录。一种选择是将他们用于注册的密码保存在内存中,如果他们验证立即使用该密码。如果他们稍后回来或重新启动应用程序,则强制他们登录。

【讨论】:

我认为我需要处理的事情之一是了解当前用户何时被保留。例如,如果用户注册是对userPool.getUser() 的调用,总是该用户?当我想:哦,他们可以离开并从应用程序回来(也就是不确定的验证时间),我怎么知道它是同一个用户。但由于它是一部手机(iPhone),我认为可以肯定地假设它是。您不会碰巧知道如何确定从getUser 返回的用户是否已通过验证,对吧?

以上是关于Amazon Cognito:验证用户后,是不是必须提示他们登录?的主要内容,如果未能解决你的问题,请参考以下文章

“没有当前用户”:是不是甚至可以通过 Amplify 使用身份验证类型 AMAZON_COGNITO_USER_POOLS 对 AWS AppSync 进行未经身份验证的调用?

如何使用 Amazon Cognito 作为我的网站(非移动应用程序)的用户身份验证 [关闭]

AWS Cognito:在 Auth.signIn 中出现错误(验证 amazon-cognito-identity-js 是不是已链接)

Amazon Cognito 使用开发人员身份验证 Obj C 设置 identityId

无法在 Amazon Cognito 用户池中验证客户端的秘密哈希

使用确认 URL 确认 amazon cognito 后如何重定向?