使用OpenID,社交登录和Amazon Cognito管理我网站上的用户

时间:2015-10-05 14:24:34

标签: javascript openid amazon-cognito social-authentication

我对所有可用信息感到不知所措。

假设我有一个网站,我想要对用户进行身份验证并管理他们的个人资料,以便跨移动重用。该网站与亚马逊AWS密切合作。

如何实现以下组合?

  • 使用各种提供程序对用户进行身份验证
  • 分别手动整合每个提供商
  • 使用这些经过身份验证的用户的凭据与Amazon Cognito集成

我所知道的事实:

  • 有些服务提供单个API来与各种提供商进行身份验证(众所周知的示例:oneall.com)。
  • OpenId是一些提供商实施的标准化身份验证方案。但该列表似乎比OneAll支持等服务的社交网络提供商列表短得多。但是,OneAll似乎也支持OpenId,但我不确定这对我意味着什么。
  • Amazon Cognito集成了一个非常有限的社交网络提供商列表,但您必须自己做基础工作,Amazon Cognito似乎只知道他们生成的密钥
  • Amazon Cognito也支持OpenID

理想情况下,我想使用其中一个社交网络提供程序元服务,这些服务允许我毫不费力地添加和删除登录选项。同时,我希望能够使用Amazon Cognito将这些凭据链接到配置文件。

我有什么选择?

1 个答案:

答案 0 :(得分:2)

Amazon Cognito支持使用Facebook,亚马逊,Twitter,Digits,Google或任何OpenID Connect提供商登录的用户。如果要支持使用其他提供程序或联合提供程序登录的用户,可以使用OpenID Connect或Developer Authenticated Identities。

OpenID Connect :有些产品可以联合/代理多个社交提供商,并通过OpenID Connect公开联合用户,这些用户对Cognito有特殊支持,包括Ping Federate和{{3}命名一对。

开发人员身份验证身份使您可以完全控制用户的身份验证过程。基本上,您的用户使用您自己的后端(可用于代理社交登录)登录,并且您的后端使用您用于唯一标识用户以从Cognito检索令牌的标识符向Amazon Cognito进行安全调用。您也可以使用此方法联合身份。 Cognito开发人员指南有一个Auth0来了解整体情况和visual showing the flow

同样,Amazon Cognito已经支持开箱即用的最受欢迎的社交提供商,我们有a complete guide to setting it up,但上面是更详尽的选项列表。