使用属性对 Amazon Cognito 身份池进行访问控制 - Amazon Cognito
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用属性对 Amazon Cognito 身份池进行访问控制

重要

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

使用属性进行访问控制之前,请确保满足以下先决条件:

要使用属性进行访问控制,您必须配置 Tag Key for Principal (委托人的标签密钥)Attribute (属性)名称。在 Tag Key for Principal (委托人的标签密钥) 中,该值用于匹配权限策略中的 PrincipalTag 条件。Attribute name (属性名称) 中的值是将在策略中评估其值的属性名称。

使用属性对身份池进行访问控制
  1. 打开 Amazon Cognito 控制台。

  2. 选择 Manage Identity Pools(管理身份池)。

  3. 在控制面板上,选择您要使用属性进行访问控制的身份池名称。

  4. 选择编辑身份池

  5. 展开 Authentication providers(身份验证提供商)部分。

  6. Authentication providers (身份验证提供商) 部分中,选择您想要使用的提供商选项卡。

  7. Attributes for access control (访问控制属性) 中,选择 Default attribute mappings (默认属性映射)Custom attribute mappings (自定义属性映射)。每个提供商的默认映射不同。有关更多信息,请参阅默认提供商映射以获取访问控制的属性。

  8. 如果选择 Custom attribute mappings (自定义属性映射),请完成以下步骤。

    1. Tag Key for Principal (委托人的标签密钥) 中,输入您的自定义文本。最大长度为 128 个字符。

    2. Attribute name (属性名称) 中,输入来自提供商令牌或 SAML 断言的属性名称。您可以从提供商开发人员指南中获取 IdP 的属性名称。属性名称最多可包含 256 个字符。此外,所有属性的总字符限制为 460 字节。

    3. (可选)添加其他提供商。您可以在控制台中来为 Amazon Cognito 用户池、OIDC 和 SAML 提供商添加多个提供商。例如,您可以将两个 Amazon Cognito 用户池作为两个独立的身份提供商添加。Amazon Cognito 将每个选项卡视为不同的 IdP。您可以为每个 IdP 单独配置访问控制属性。

    4. 要完成操作,请使用 IAM 控制台创建包含默认映射的许可策略,或您在 Tag Key for Principal (委托人的标签密钥) 中提供的自定义文本映射。有关在 IAM 中创建权限策略的教程,请参阅《IAM 用户指南》中的 IAM 教程:根据标签定义访问Amazon资源的权限