首页 文章

知识产权用户池和联合身份之间的服务差异

提问于
浏览
8

AWS提供cognito,为开发人员提供注册和登录功能,包括与OpenId兼容身份提供商(如facebook,google等)的联合 .

cognito开发者控制台中有两种类别 . 这些是管理用户池和管理联合身份 .

我只是有点困惑,因为两者非常相似,即使我们想要提供我们的客户登录他们的Facebook帐户 . cognito用户池本身提供联合身份验证和联合身份池,也由身份验证提供程序提供 .

问题是,如果我想允许我的客户使用自己的Facebook帐户登录,我应该使用哪些类别?用户池或联合身份?

另外,如果我想在API网关中配置授权器,我必须创建cognito用户池但联合身份池 . 这是选择认知类别的主要原因吗?

2 回答

  • 11

    您可以将用户池视为包含用户属性(如姓名,电子邮件,电话号码等)的目录 . 这还提供注册,登录功能 . 您可以将用户联合到用户池中 . 目前,您可以使用Facebook,Google和SAML作为用户池的身份提供商 .

    通过Cognito联合身份验证,您可以将用户联合到AWS并发布可用于访问策略中允许的资源的AWS凭据 . 对于Cognito Federated Identities,您还可以配置各种身份提供程序,例如Facebook,Google以及Cognito用户池,它们也可以是身份提供者 .

    您使用的内容取决于您的使用案例 . 如果您的应用程序不需要AWS资源,则可能只需要用户池 .

  • 14

    Cognito user pool:

    Amazon Cognito用户池使开发人员可以轻松地向Web和移动应用程序添加注册和登录功能 . 它作为您自己的身份提供者来维护用户目录 . 它支持用户注册和登录,以及为登录用户配置身份令牌 .

    Cognito Federated Identities or Identity Pool:

    另一方面,Cognito Identity Pool(或Cognito Federated Identities)是一种授权用户使用各种AWS服务的方法 . 假设您希望允许用户访问您的S3存储桶,以便他们可以上传文件;您可以在创建标识池时指定 . 为了创建这些访问级别,Identity Pool有自己的身份(或用户)概念 . 这些身份(或用户)的来源可以是Cognito用户池,甚至是Facebook或Google .

    Relationship between User pool and Identity pool:

    Cognito Identity Pool只需要将所有身份提供者放在一起(将它们联合起来) . 通过所有这些,它现在可以为您的用户提供对AWS服务的安全访问,无论他们来自何处 .

    Relationship between User pool and Identity pool

    So in summary, the Cognito User Pool stores all the users which then plugs into Cognito Identity Pool which can give the users access to AWS services.

    source

相关问题