本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用属性对 Amazon Cognito 身份池进行访问控制
使用属性进行访问控制之前,请确保满足以下先决条件:
要使用属性进行访问控制,您设置为数据来源的声明将设置您选择的标签键的值。Amazon Cognito 会将标签键和值应用于您的用户会话。您的IAM策略可以根据${aws:PrincipalTag/
条件评估用户的访问权限。IAM根据策略评估用户标签的值。tagkey
}
您必须准备要将证书传递给用户的IAM角色。这些角色的信任策略必须允许 Amazon Cognito 为您的用户代入该角色。对于用于访问控制的属性,您还必须允许 Amazon Cognito 将主体标签应用于用户的临时会话。授予通过操作代入角色的权限AssumeRoleWithWebIdentity。授予使用仅限权限操作 sts:TagSession
标记用户会话的权限。有关更多信息,请参阅《AWS Identity and Access Management 用户指南》中的在 AWS Security Token Service中传递会话标签。有关向 Amazon Cognito 服务主体 cognito-identity.amazonaws.com
授予 sts:AssumeRoleWithWebIdentity
和 sts:TagSession
权限的示例信任策略,请参阅示例:将属性用于访问控制策略。
在控制台中配置访问控制属性
-
登录 Amazon Cognito 控制台
并选择身份池。选择身份池。 -
选择用户访问选项卡。
-
找到身份提供者。选择要编辑的身份提供者。如果要添加新的 IdP,请选择添加身份提供者。
-
要更改 Amazon Cognito 在向通过该提供者进行身份验证的用户颁发凭证时分配的主体标签,请在访问控制属性中选择编辑。
-
如果不应用主体标签,请选择非活动。
-
要基于
sub
和aud
声明应用主体标签,请选择使用原定设置映射。 -
要为主体标签创建自己的自定义属性模式,请选择使用自定义映射。然后,对于您要在标签中表示的每个声明,输入要从该声明中获取的标签键。
-
-
选择保存更改。