本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
身份验证后 Lambda 触发器
身份验证后触发器不会更改用户的身份验证流程。Amazon Cognito 会在身份验证完成且用户收到令牌后调用此 Lambda。当您想要添加身份验证事件的自定义后期处理时,请添加身份验证后触发器,例如将在下次登录时反映的日志记录或用户配置文件调整。
身份验证流概述
有关更多信息,请参阅 用户池身份验证流程。
身份验证后 Lambda 触发器参数
Amazon Cognito 传递给此 Lambda 函数的请求是以下参数和 Amazon Cognito 添加到所有请求中的常用参数的组合。
身份验证后请求参数
- newDeviceUsed
-
此标记指示用户是否已在新设备上登录。Amazon Cognito 仅在用户池的记住的设备值设置为
Always
或User Opt-In
时设置此标记。 - userAttributes
-
表示用户属性的一个或多个名称/值对。
- clientMetadata
-
一个或多个键值对,您可以将其作为自定义输入内容提供给为身份验证后触发器指定的 Lambda 函数。要将此数据传递给您的 Lambda 函数,您可以使用AdminRespondToAuthChallenge和 ClientMetadataRespondToAuthChallengeAPI操作中的参数。Amazon Cognito 在传递给身份验证后函数的请求中不包含来自 ClientMetadata 参数AdminInitiateAuth和InitiateAuthAPI操作的数据。
身份验证后响应参数
Amazon Cognito 不需要响应中任何额外的返回信息。您的函数可以使用API操作来查询和修改您的资源,或者将事件元数据记录到外部系统。
身份验证教程
Amazon Cognito 登录用户之后,将会立即激活身份验证后 Lambda 函数。请参阅这些适用于 JavaScript安卓和 iOS 的登录教程。
平台 | 教程 |
---|---|
JavaScript 身份 SDK | 使用登录用户 JavaScript |
安卓身份 SDK | 通过 Android 登录用户 |
iOS 身份 SDK | 通过 iOS 登录用户 |
身份验证后示例
此身份验证后示例 Lambda 函数将成功登录后的数据发送到日志。 CloudWatch
Amazon Cognito 将事件信息传递给 Lambda 函数。随后,该函数将相同事件对象随同响应中的任何更改返回给 Amazon Cognito。在 Lambda 控制台中,您可以设置一个测试事件,该事件包含与您的 Lambda 触发器相关的数据。以下是此代码示例的一个测试事件: