facebook-login – AWS Cognito与Facebook和Google:唯一的IdentityId?

在我的Web应用程序中,我希望允许用户使用2个可能的提供程序(Facebook,Google)登录并使用AWS Cognito检索凭据.

根据我的理解,如果用户(john@domain.com)使用他的Facebook帐户登录,Cognito IdentityId将与使用他的Google帐户登录时不同.

假设用户使用相同的电子邮件地址(john@domain.com)登录他的Facebook和Google帐户,我如何确保该用户在Cognito中拥有一个唯一的IdentityId?

我不希望用户拥有2个不同的IdentityId.如果我能将john@domain.com与单个IdentityId相关联,那就太好了.

最佳答案 Cognito不知道帐户注册的电子邮件.如果同一个用户在两个不同的设备上使用facebook进行身份验证,而另一个使用google进行身份验证,则会提供两个不同的ID.

但是,可以说它们是相互联系的.如果同一个用户在一台设备上登录Facebook,他们就会获得身份A.如果他们要通过在与Cognito通信时包含两者的登录令牌将身份A链接到他们的Google帐户,那么Cognito会知道他们’关联,并且与两个提供商之一的任何未来身份验证将提供相同的ID.

如果在Cognito被告知链接它们之前Facebook和谷歌已经链接到一个id,那就有点偏离 – 在这种情况下,使用的id可能是两者中的任何一个.

点赞