AWS用于用户管理

时间:2015-03-27 05:39:32

标签: amazon-web-services amazon-cognito

AWS似乎现在有一堆服务,所以我一直在密切关注它。

我正在寻找一个集中服务,我可以托管用户数据,并让他们对使用自定义登录和社交登录(如Twitter / Google / Facebook)的不同网络应用程序,iphone应用进行身份验证和保护。

示例流程是我有多个用PHP编码的网站,并希望用户登录这些网站。但只有有权访问的用户。这个用户数据,登录,访问权限等需要集中存放在一个地方,尽可能地让人头疼。

不是为此建立我自己的平台,而是支持所有的身份验证和用户管理,所以最好还是照顾好它。

AWS是否为此提供服务?

IAM服务似乎只处理AWS访问。

请注意,我不仅谈论移动应用程序,还谈论网站。

我看到有一项名为Cognito的新服务,这是我在这个用例中特别寻找的内容吗?

2 个答案:

答案 0 :(得分:3)

您可能会对以下两项特殊服务感兴趣:

  • AWS Security Token Service Web Identity Federation可用于针对Facebook,Google或亚马逊对用户进行身份验证。然后,可以使用此身份验证授予对AWS服务的访问权限(例如,在Amazon S3或Amazon DynamoDB中存储数据)。
  • Amazon Cognito更进一步为用户创建唯一身份,存储个人资料信息以及跨多个移动设备同步信息。

Cognito也可以在网站上使用。

来自Use Amazon Cognito in your website for simple AWS authentication

  

通过在您的网络应用程序和移动应用程序中使用Amazon Cognito,您可以为通过Facebook,Google或亚马逊验证的最终用户使用一致的跨平台标识符;与Cognito Sync服务一起,您可以在所有应用程序和平台上保持用户相关数据的一致性。此外,Cognito可帮助您为经过身份验证和未经身份验证的用户检索临时的有限权限凭据,而无需管理任何后端基础结构。

答案 1 :(得分:2)

Cognito确实支持社交登录(facebook,google和amazon)和自定义登录(开发人员身份验证身份)。鉴于用户的登录,它可以获得访问不同AWS资源的凭据(s3存储桶,发电机表等等)。您可以使用IAM为这些用户设置适当的角色权限。撰写了一系列博客文章,详细介绍了Cognito身份验证:part 1 (basic auth flow)part 2 (developer authenticated identities)part 3 (roles and policies)。有关开发人员身份验证身份的更多详细信息,this blog post会详细介绍并链接到端到端示例应用。

此外,如果您正在谈论使用多个应用程序,Cognito会提供同步服务。如果有人在多个应用程序中使用相同的社交登录(所有这些应用程序都使用相同的标识池进行设置),他们就能够跨这些应用程序同步数据。我们提供了一篇包含更多详细信息和一些示例的博文here