从 SNS EndpointAdded 事件获取用户
Getting user from SNS EndpointAdded Event
我正在尝试将用户的 Cognito 身份与他们在注册推送通知时创建的 SNS 端点相关联。我创建了一个连接到 SNS 应用程序的 EndpointAdded 主题的 Lambda 函数。每当创建端点时都会触发它,但它不包含我可以看到的任何可用于将端点与用户相关联的信息。
我看到许多示例,其中人们将用户 ID 添加为自定义用户数据,但这允许任何用户注册任何其他用户的通知。有没有更安全的方法来建立这种关联?
如果您预先使用 Lambda 或 APIGateway 注册端点并使用 Cognito 提供的 SigV4 凭据进行调用,则传入的上下文将包含从进行调用的凭据中提取的 Cognito 身份 ID。这将确保您与端点关联的身份 ID 未被篡改。
我正在尝试将用户的 Cognito 身份与他们在注册推送通知时创建的 SNS 端点相关联。我创建了一个连接到 SNS 应用程序的 EndpointAdded 主题的 Lambda 函数。每当创建端点时都会触发它,但它不包含我可以看到的任何可用于将端点与用户相关联的信息。
我看到许多示例,其中人们将用户 ID 添加为自定义用户数据,但这允许任何用户注册任何其他用户的通知。有没有更安全的方法来建立这种关联?
如果您预先使用 Lambda 或 APIGateway 注册端点并使用 Cognito 提供的 SigV4 凭据进行调用,则传入的上下文将包含从进行调用的凭据中提取的 Cognito 身份 ID。这将确保您与端点关联的身份 ID 未被篡改。