Blo*_*fet 8 amazon-cognito aws-lambda aws-api-gateway api-gateway amazon-cognito-triggers
我当前的堆栈是这样的:
我的数据库使用sub
cognito 生成的 id 作为 userId,因此它们是相同的。我还将电子邮件地址复制为数据库中的用户名。我的目的是使用 Cognito 进行身份验证,并使用我自己的数据库来实现我的应用程序的功能。
但是,如果用户希望更新他们的电子邮件地址,我需要在 cognito 和我的数据库中对此进行修改。我第一次尝试在我的 lambda 中使用 cognito 进行调用admin_update_user_attributes
,但很快意识到它被阻止对互联网进行外部调用,所以我创建了一个 nat 网关,它可以工作,但成本太高了!
我的第二个想法是通过 cognito,让我的前端进行调用,然后让 cognito 触发 lambda 来更新我的数据库,但我认为这是不可能的。
是否有配置或我缺少的东西能够通过 API 网关通过 lambda 访问 AWS cognito,因为它们都是 AWS 服务。
我不想通过前端进行两个单独的调用,因为这会产生一个完成但另一个不完成的风险。
谢谢
cal*_*llo 12
如果您的 Lambda 函数位于 VPC 中,则需要 NAT 网关,因为目前没有 Cognito VPC 终端节点。
如果您使用 Dynamo 等数据库,则 Lambda 函数不需要位于 VPC 中,因此您可以实现上面提到的用例。
另一种选择可能是异步执行 Cognito 更新,因此您的 Lambda 可能会使用 VPC 端点将对象放入 SQS,然后让 Lambda 轮询器(VPC 外部)轮询消息并更新 Cognito。或者通过使用私有 API 网关来实现类似的用例。
这些只是我自己没有做过的潜在想法。
归档时间: |
|
查看次数: |
9516 次 |
最近记录: |