问题标签 [amazon-cognito-triggers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
79 浏览

amazon-web-services - 我们将如何发送不同的电子邮件模板以重置密码并确认在 AWS cognito 中注册

我想使用 AWS Cognito 的两个 api(signup, forgotPassword) 更改电子邮件模板。因为我需要在该页面上添加一个指向代码验证的链接。

0 投票
1 回答
59 浏览

aws-lambda - 具有多个应用程序的 Cognito 一个用户池

我是 aws 新手,无法登录 cognito。Cognito 一个用户池与许多其他应用程序将使用与 lambda 中相同的登录功能。google 或 fb 能够使用相同的用户池登录。如果用户无权访问应用程序,则登录过程将失败。一位用户将有权访问许多应用程序。任何可以帮助并请告诉我如何实施此解决方案的人?来自 lambda 的登录函数调用也可用于社交登录吗?

0 投票
1 回答
115 浏览

javascript - AWS Cognito 自定义身份验证流程-initiateAuth 给出错误

我正在尝试使用 AWS Cognito 进行自定义身份验证流程,以便我可以通过电子邮件而不是通过 cognito 触发器发送 MFA 代码。我正在使用initialAuth()方法来执行此操作,根据文档这是正确的;

https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_InitiateAuth.html https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityServiceProvider.html#initiateAuth -财产

我的有效负载似乎是有效的,但是当我尝试使用用户登录时,我收到错误“t.getauthparameters 不是函数”

我浏览了其他一些stackoverflow帖子,但没有任何帮助

任何想法出了什么问题?

这是我下面代码的一个片段:

0 投票
0 回答
24 浏览

node.js - autoConfirmUser = true 时无法识别的 lambda 输出;

我正在尝试自动确认使用signUpCognito API 创建的用户。它运行良好,它在我的池中创建了一个 CONFIRMED 用户。但它抛出了这个错误:

我还在 PostConfirmation Cognito 触发器中收到了正确的事件格式:

CreateUser功能:

Pre-signup拉姆达:

奇怪的是,当尝试设置时event.response.autoVerifyEmail = falseevent.response.autoConfirmUser = false它不会抛出任何错误......

有人可以告诉我我做错了什么吗?谢谢你!!

0 投票
1 回答
52 浏览

java - 基于 Java 的 AWS Cognito 预注册 Lambda 触发器:自动确认用户并验证电子邮件

我正在开发一个基于 Java 的 AWS Cognito Pre-Sign-up Lambda 触发器来自动确认用户并将他们的电子邮件设置为已验证。

根据AWS 文档,“Amazon Cognito 将事件信息传递给您的 Lambda 函数。然后该函数将相同的事件对象返回给 Amazon Cognito,并在响应中进行任何更改。” 我看过有关如何在注册前 Lambda 响应中使用“autoConfirmUser”和“autoVerifyEmail”的文档(以及大量 StackOverflow 讨论);甚至为 Node.js 和 Python 提供了示例。

虽然在 Java 中做类似的事情似乎很简单,但我显然没有返回预期的响应,并且我的用户是在没有自动确认和电子邮件验证的情况下创建的。

在我的 Cognito 用户池上注册并设置为注册前触发器后,我可以看到每次创建用户时都会调用我的 Lambda(例如通过管理控制台使用“创建用户”)。记录进入 Lambda 的请求,请求是:

我的 Lambda 是:

使用 AWS Cognito 常规设置 > 用户和组 > 创建用户,用户已创建,但账户状态列为“FORCE_CHANGE_PASSWORD”,验证的电子邮件列为“-”。在将 Lambda 表达式分配为通过确认/验证过程的触发器之前创建的用户的帐户状态列为“已确认”,并且电子邮件已验证列为“真”。

查看 CloudWatch,上面的 Lambda 产生了:

显然,创建了用户并解雇了 Lambda。然而,尽管 Lambda 将“autoConfirmUser”和“autoVerifyEmail”都返回为 true,但在创建用户时并未应用这些响应设置。

我错过了什么,我做错了什么?

0 投票
0 回答
11 浏览

amazon-web-services - 如何在自定义消息 Lambda 触发器中获取 ClientMetadata 参数值?

我正在使用 Cognito 的自定义消息 Lambda 触发器在验证之前发送动态消息。我想从 ClientMetadata 获取 tempPassword 和 applicationUrl 值并对其进行加密。如本文档所示,clientMetadata 是自定义消息请求参数之一。但是,虽然此处指定的其他参数将进入 Lambda 的输入,但 clientMetadata 参数不会。我在某处做错了吗?

0 投票
0 回答
16 浏览

amazon-web-services - Cognito 与 LDAP 的集成

我正在开始一个新项目,这个项目首先需要 Cognito 和 LDAP 之间的集成,这是我的第一次,我一直在做一些研究,但我还不清楚。

您可能给我的任何知识转移都非常感谢。

非常感谢。

0 投票
0 回答
10 浏览

amazon-web-services - 在 Cognito 中验证密码后,如何通过自定义质询使用可选 MFA 对 UserPool 强制 MFA_SETUP

我有一个用户池,希望在其中使用自定义挑战和 TOTP MFA 进行身份验证。我在 PASSWORD_VERIFIER 质询完成后检查用户是否在 DefineAuthChallenge 中设置了 TOTP。如果未设置,我将 next challengeName 设置为带有会话的“MFA_SETUP”,而不是发出令牌。但是当我尝试点击aws cognito-idp associate-software-token --session <<session from password-verifier challenge>>它时,会出现以下错误:
An error occurred (NotAuthorizedException) when calling the AssociateSoftwareToken operation: Invalid session for the user.
即使该会话是有效的。

当我使用 access_token 尝试相同的事情时,它不会给我任何问题。此外,当用户池的 MFA 模式为 ON(强制)时,来自 PASSWORD_VERIFIER 质询的会话可用于通过 associate-software-token 设置 MFA。

观察到 MFA ON 与 OPTIONAL 设置的差异:对于 ON,在 PASSWORD_VERIFIER 忽略 CUSTOM_AUTH 触发器后自动发出以下质询,并获得以下响应:

对于 OPTIONAL,在 PASSWORD_VERIFIER 将下一个挑战设置为 MFA_SETUP 之后发出我的自定义挑战的 DefineAuthChallenge 触发器,并获得以下响应:

我不确定我在自定义流程中是否做错了什么。有什么方法可以强制用户通过此类自定义挑战在首次登录时设置 totp?