首页 > 解决方案 > 什么链接联合身份?

问题描述

“Facebook SDK 获取一个 OAuth 令牌,Amazon Cognito 使用该令牌为经过身份验证的最终用户生成 AWS 凭证。Amazon Cognito 还使用该令牌来检查您的用户数据库是否存在与该特定 Facebook 身份匹配的用户。如果用户已经存在,API 返回现有的标识符。否则返回一个新的标识符。- AWS 文档

Amazon Cognito 是仅检查数据库中已有的同一个 Facebook 用户,还是检查所有用户的匹配字段,例如电子邮件?我需要允许用户使用电子邮件、Facebook 或 Google 登录并获得相同的数据。基本上我在问亚马逊 Cognito 是否通过电子邮件自动将用户链接在一起,或者这不是这样做的方法。

标签: amazon-web-servicesaws-lambdaaws-sdk

解决方案


因此,如果我按照上面所说的正确理解了您的问题-我目前看不到我正在谈论的功能的更新-我很高兴错了,但是....

如果联合身份不是同一个会话,则它们是非常独立的事物,为了使身份链接起来,他们必须已经使用旧身份登录并使用其他身份登录 - 实际上虽然在纸面上 Cognito 看起来很棒,但这是为什么我们没有使用它,我们的问题是:

(将@替换为!)

marc!marc.com 登录用户池。

marc!marc.com 通过 facebook 登录。

marc!marc.com 通过其他方式登录。

如果他们是三个单独的会话,那么您最终可能会得到 3 个用户 - 尽管 AWS 说如果您在这里阅读,看起来您可以链接 ID,但前提是他们首先使用原始 ID 登录。

是的,这很愚蠢,是的,它确实不适合目的 - 在一家大型连锁酒店中,我在 AWS 办公室谈到了这一点,并且升级路线图上 - 我没有重新审视它,所以希望我错了!

注意 请不要在大约 24 小时内接受这个答案,因为我想让其他人有机会参与进来,我认为我是 100% 正确的,但我有一段时间没有看 Cognito(而且我有点害怕,因为文档不是很好(对不起 AWS),上次尝试完全按照您的意愿做事时,它差点把我逼下悬崖)。


推荐阅读