本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
向视图添加标签
您可以向视图添加标签,以对其进行分类。标签是客户提供的元数据,其形式为键名称字符串和关联的可选值字符串。有关标记 AWS 资源的一般信息,请参阅 Amazon Web Services 一般参考 中的标记 AWS 资源。
在视图中添加标签
您可以通过使用 AWS Management Console 或在 AWS SDK 中运行 AWS CLI 命令或其等效的 API 操作,将标签添加到您的资源管理器视图。
使用标签控制权限
标签的一个关键用途是支持基于属性的访问权限控制(ABAC)策略。ABAC 允许您标记资源,从而可帮助简化权限管理。然后,您可以向用户授予以某种方式标记的资源的权限。
例如,考虑以下情景。对于名为 ViewA
的视图,您可以附加标签 environment=prod
(键名=值)。另一个 ViewB
可能被标记了 environment=beta
。根据每个角色或用户应该能够访问的环境,您可以使用相同的标签和值来标记您的角色和用户。
然后,您可以为您的 IAM 角色、组和用户分配 AWS Identity and Access Management(IAM)权限策略。只有当提出搜索请求的角色或用户的 environment
标签值与附加到视图的 environment
标签的值相同时,该策略才会授予使用视图进行访问和搜索的权限。
这种方法的好处在于,它是动态的,不需要您维护谁有权访问哪些资源的列表。相反,您需要确保正确标记所有资源(您的视图)和主体(IAM 角色和用户)。然后,您无需更改任何策略即可自动更新权限。
在 ABAC 策略中引用标签
标记好视图后,您可以选择使用这些标签来动态控制对这些视图的访问。以下示例策略假设您的 IAM 主体和您的视图都使用标签键 environment
和某些值进行标记。完成后,您可以将下列示例策略附加到您的主体。然后,您的角色和用户可以使用任何标有 environment
标签值(与附加到主体的 environment
标签完全匹配)的视图 Search
。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "resource-explorer-2:GetView", "resource-explorer-2:Search" ], "Resource": "arn:aws:resource-explorer-2:us-east-1:123456789012:view/*", "Condition": { "ForAnyValue:StringEquals": { "aws:ResourceTag/
environment
": "${aws:PrincipalTag/environment
}" } } } ] }
如果主体和视图都有 environment
标签但值不匹配,或者如果其中一个缺少 environment
标签,则资源管理器会拒绝搜索请求。
有关使用 ABAC 安全地授予资源访问权限的更多信息,请参阅什么是 AWS 的 ABAC?