Amazon Cognito 身份池入门(联合身份) - Amazon Cognito
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon Cognito 身份池入门(联合身份)

重要

目前,即使您已迁移到 Amazon Cognito 用户群体的新控制台,您也必须在原始控制台中配置 Amazon Cognito 身份池。在新控制台中,选择 Federated identities(联合身份)以导航到身份池控制台。

借助 Amazon Cognito 身份池,您可以创建唯一身份并为用户分配权限。您的身份池可以包括:

  • Amazon Cognito 用户池中的用户

  • 通过外部身份提供商(例如 Facebook、Google、Apple 或 OIDC 或 SAML 身份提供商)进行身份验证的用户。

  • 通过您自己的现有身份验证流程进行身份验证的用户

借助身份池,您可以获取带有您定义的权限的临时 Amazon 凭证,以直接访问其它 Amazon Web Services 或通过 Amazon API Gateway 访问资源。

在 Amazon Cognito 中创建一个身份池

您可以通过 Amazon Cognito 控制台创建身份池,或者,您还可以使用 Amazon Command Line Interface(CLI)或 Amazon Cognito API。

在控制台中创建新的身份池
  1. 登录到 Amazon Cognito 控制台,选择 Manage identity pools(管理身份池),然后选择 Create new identity pool(创建新的身份池)。

  2. 为身份池键入一个名称。

  3. 要启用未经身份验证的身份,请从 Unauthenticated identities(未经身份验证的身份)的可折叠部分中选择 Enable access to unauthenticated identities(启用访问未经身份验证的身份)。

  4. 如果需要,请在身份验证提供商部分中配置身份验证提供商。

  5. 选择 Create Pool(创建池)。

    注意

    有效身份池至少需要一个身份。

  6. 系统将提示您访问您的Amazon资源。

    选择 Allow(允许)以创建两个与您的身份池关联的默认角色,一个用于未经身份验证的用户,另一个用于经过身份验证的用户。这些默认角色会向 Amazon Cognito Sync 提供身份池访问权限。您可以在 Amazon Identity and Access Management(IAM)控制台中修改与身份池关联的角色。

安装移动或 JavaScript 开发工具包

要使用 Amazon Cognito 身份池,您必须安装并配置 Amazon Mobile SDK 或 JavaScript SDK。有关更多信息,请参阅以下主题:

集成身份提供商

Amazon Cognito 身份池(联合身份)通过 Amazon Cognito 用户池、联合身份提供商(包括亚马逊、Facebook、Google、Apple)和 SAML 身份提供商以及未经身份验证的身份支持用户身份验证。此功能还支持 经过开发人员验证的身份(身份池),这让您能够通过自己的后端身份验证流程注册并对用户进行身份验证。

要了解有关使用 Amazon Cognito 用户池创建自己的用户目录的更多信息,请参阅Amazon Cognito 用户池在登录后使用身份池访问 Amazon 服务

要了解有关使用外部身份提供商的更多信息,请参阅 身份池(联合身份)外部身份提供商

要了解有关集成自己的后端身份验证流程的更多信息,请参阅经过开发人员验证的身份(身份池)

获取凭证

Amazon Cognito 身份池为来宾用户(未经身份验证)及经过身份验证并收到了令牌的用户提供临时的Amazon凭证。借助这些 Amazon 凭证,您的应用程序可以通过 Amazon API Gateway 在 Amazon 内部或 Amazon 外部安全地访问后端。请参阅获取凭证