当前位置: 首页 > 知识库问答 >
问题:

没有验证邮件的Cognito

颜高格
2023-03-14

我使用Cognito进行用户注册和身份验证。我希望用户能够注册和登录,而无需验证他们的电子邮件地址(对此将有一个单独的过程)

我已将Cognito用户池设置为不需要电子邮件或短信验证,但当我拨打以下电话时,由于帐户未被验证,我仍被返回失败。

cognitoUser.authenticateUser(authenticationDetails, {
            newPasswordRequired: function (userAttributes, requiredAttributes) {
                callback.cognitoCallback(`User needs to set password.`, null);
            }

我收到的错误消息是用户未被确认。

因此,即使我关闭了验证,如果我没有被验证,API似乎也会拒绝。除了自动验证,真的没有别的办法吗?我不希望这样,在用户过程中的某个时刻,我确实希望验证电子邮件地址,我只是不希望它成为注册的障碍。

共有1个答案

冷浩瀚
2023-03-14

默认情况下,用户不会在Cognito用户池中得到确认,因此如果您不想让他们通过电子邮件或电话验证过程,您需要手动进行此操作。

要做到这一点,您可以设置Prece-up触发器,用以下代码调用Lambda函数:

def lambda_handler(event, context):
    event['response'] = {
        'autoConfirmUser': True,
        'autoVerifyEmail': False,
        'autoVerifyPhone': False
    }

    return event

触发器基本上允许您对每个身份验证请求进行额外处理。请注意,必须将事件对象作为Lambda函数的输出传回。

 类似资料:
  • 我正在提示我的应用程序用户提供电子邮件凭据。 在用户插入电子邮件并通过后,我想验证该帐户。 我正在使用javax。邮政有没有办法验证帐户?只确保凭据确实有效——否则我想显示一个无效用户并传递消息。 也许是某种表演方式: 并在不发送任何内容的情况下检查身份验证异常。

  • 如何使用firebase中的验证电子邮件验证使用电子邮件和密码登录的用户?这背后的逻辑是如何工作的,它在代码中会是什么样子? 解决方案/帮助:对于那些仍在寻找答案的人,我找到了这篇文章 堆栈溢出 帖子

  • 使用 filter_var() 函数 Web 应用可能需要做的一件常见任务是检测用户是否输入了一个有效的邮件地址。毫无疑问你可以在网上找到一些声称可以解决该问题的复杂的正则表达式,但是最简单的方法是使用 PHP 的内建 filter_val() 函数。 示例 <?php filter_var('sgamgee@example.com', FILTER_VALIDATE_EMAIL); //Retu

  • 我是grails新手,正在用grails开发一个web应用程序。 在我的注册页面中,我正在获取用户的电子邮件ID,并且我需要发送带有身份验证链接的邮件。 http://grails.org/plugin/mail http://grails.org/plugin/email-confirmation 我参考了这些网页和许多其他网页来完成这项任务。但问题是,我的电子邮件没有发送。 我使用过 邮件设置

  • 问题内容: 我检查了用户是否通过电子邮件验证。但是,无论我发送并确认了多少电子邮件,验证状态仍为。检查时我做错什么了吗? 问题答案: 我如何实现此功能的方法是添加一个 带有时间间隔的,它将检查用户是否已通过验证,然后在完成验证后终止计时器。 检查您当前用户状态的功能:

  • 我检查了用户是否通过电子邮件进行验证。但是,无论我发送并确认了多少封电子邮件,验证状态仍然是。我在检查时是否做错了什么?