为 Amazon Security Lake 资源添加标签 - Amazon Security Lake

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

为 Amazon Security Lake 资源添加标签

标签是一个可选标签,您可以定义并分配给 AWS 资源,包括某些类型的 Amazon Security Lake 资源。标签可帮助您以不同方式(例如按用途、所有者、环境或其他标准)对资源进行标识、分类和管理。例如,您可以使用标签来应用策略、分配成本、区分资源或识别支持某些合规性要求或工作流的资源。

您可以为以下类型的 Security Lake 资源分配标签:订阅者和您的 AWS 账户 个人数据湖配置 AWS 区域。

标签基础知识

一个资源可具有多达 50 个标签。每个标签都包含您定义的一个标签键和一个可选的标签值标签键是一种常见的标签,充当更具体的标签值的类别。标签值 充当标签键的描述符。

例如,如果您添加订阅用户来分析来自不同环境的安全数据(一组订阅用户用于云数据,另一组用于本地数据),则可以为这些订阅用户分配 Environment 标签键。关联的标签值可能Cloud适用于分析来自的数据的订阅者 AWS 服务,也可能On-Premises适用于其他用户。

在为 Amazon Security Lake 资源定义和分配标签时,请注意以下几点:

  • 每个资源最多可以有 50 个标签。

  • 对于每个资源,每个标签键都必须是唯一的,并且只能有一个标签值。

  • 标签键和值区分大小写。作为最佳实践,我们建议您定义标签大写的策略,并在您的资源中一致地实施该策略。

  • 标签键最多可以包含 128 个 UTF-8 字符。标签值最多可以包含 256 个 UTF-8 字符。这些字符可以是字母、数字、空格或以下符号:_ . : / = + - @

  • aws:缀保留给使用 AWS。您不能在您定义的任何标签键或值中使用它。此外,您无法更改或删除使用此前缀的标签键或值。使用此前缀的标签不计入每个资源的 50 个标签配额中。

  • 您分配的任何标签仅供您使用, AWS 账户 并且仅适用于您分配标签 AWS 区域 的标记。

  • 如果您使用 Security Lake 为资源分配标签,则这些标签仅应用于适用 AWS 区域内直接存储在 Security Lake 中的资源。它们不适用于 Security Lake 在其他 AWS 服务中为您创建、使用或维护的任何关联支持资源。例如,如果您为数据湖分配标签,则这些标签仅应用于指定区域内 Security Lake 中的数据湖配置。它们不适用于存储日志和事件数据的 Amazon Simple Storage Service (Amazon S3) 桶。要同时为关联资源分配标签,您可以使用 AWS Resource Groups 或来存储资源,例如 AWS 服务 ,用于 S3 存储桶的 Amazon S3。为关联资源分配标签可帮助您标识数据湖的支持资源。

  • 如果删除资源,则为该资源分配的所有标签都将被删除。

有关其他限制、提示和最佳实践,请参阅《标记 AWS 资源用户指南》中的为 AWS 资源添加标签

重要

不要在标签中存储机密或其他类型的敏感数据。许多人都可以访问标签 AWS 服务,包括 AWS Billing and Cost Management。标签不适合用于敏感数据。

要为 Security Lake 资源添加和管理标签,您可以使用 Security Lake 控制台或 Security Lake API。

在 IAM policy 中使用标签

开始为资源添加标签后,您可以在 AWS Identity and Access Management (IAM) policy 中定义基于标签的资源级权限。通过以这种方式使用标签,您可以精细控制您中的哪些用户和角色 AWS 账户 有权创建和标记资源,以及哪些用户和角色有权更笼统地添加、编辑和删除标签。要基于标签控制访问,您可以在 IAM policy 的 Condition 元素中使用与标签相关的条件键

例如,您可以创建一个策略,允许用户拥有对所有 Amazon Security Lake 资源的完全访问权限,但前提是该资源的 Owner 标签指定了他们的用户名:

{ "Version":"2012-10-17", "Statement": [ { "Sid": "ModifyResourceIfOwner", "Effect": "Allow", "Action": "securitylake:*", "Resource": "*", "Condition": { "StringEqualsIgnoreCase": {"aws:ResourceTag/Owner": "${aws:username}"} } } ] }

如果您定义基于标签的资源级权限,该权限立即生效。这意味着,您的资源在创建后会更安全,而且您可以快速开始将标签用于新资源。您还可以使用资源级权限来控制哪些标签键和值可以与新的和现有资源关联。有关更多信息,请参阅 IAM 用户指南中的使用标签控制对 AWS 资源的访问权限

为 Amazon Security Lake 资源添加标签

要为 Amazon Security Lake 资源添加标签,您可以使用 Security Lake 控制台或 Security Lake API。

重要

为资源添加标签可能会影响对该资源的访问。在向资源添加标签之前,请查看任何可能使用标签控制资源访问权限的 AWS Identity and Access Management (IAM) 策略。

Console

当您为订阅者启用 Security Lake AWS 区域 或创建订阅者时,Security Lake 控制台会提供向资源添加标签的选项,即区域或订阅者的数据湖配置。创建资源时,请按照控制台上的说明为该资源添加标签。

要使用 Security Lake 控制台为现有资源添加一个或多个标签,请按照以下步骤操作。

为资源添加标签
  1. 打开 Security Lake 控制台:‭https://console.aws.amazon.com/securitylake/

  2. 根据要为其添加标签的资源类型,执行以下任一操作:

    • 对于数据湖配置,在导航窗格中选择区域。然后,在区域表中,选择区域。

    • 对于订阅用户,在导航窗格中选择订阅用户。然后,在我的订阅用户表中,选择订阅用户。

      如果该订阅用户不在表中,请使用页面右上角的 AWS 区域 选择器,选择在其中创建了该订阅用户的区域。该表仅列出当前区域的现有订阅用户。

  3. 选择编辑

  4. 展开标签部分。本部分列出当前分配给该资源的所有标签。

  5. 标签部分中,选择添加新标签

  6. 框中,输入要为该资源添加的标签的标签键。随后,在框中,可以选择为键输入一个标签值。

    一个标签键可包含多达 128 个字符。一个标签值可包含多达 256 个字符。这些字符可以是字母、数字、空格或以下符号:_ . : / = + - @

  7. 要为该资源添加其他标签,请选择添加新标签,然后重复上述步骤。您可以为资源分配多达 50 个标签。

  8. 完成添加标签后,选择 保存

API

要创建资源并以编程方式向其添加一个或多个标签,请对要创建的资源类型使用相应的 Create 操作:

  • 数据湖配置-使用CreateDataLake操作,或者,如果您使用的是 AWS Command Line Interface (AWS CLI),则运行create-data-lake命令。

  • 订阅者-使用CreateSubscriber操作,或者,如果您使用的是,则运行 create- subscriber 命令。 AWS CLI

在您的请求中,使用 tags 形式参数为要添加到资源的每个标签指定标签键 (key) 和可选标签值 (value)。tags 形式参数指定一个对象数组。每个对象都指定一个标签密钥及其关联的标签值。

要向现有资源添加一个或多个标签,请使用 Security Lake API 的TagResource操作,或者,如果您使用的是 AWS CLI,则运行 tag-resou rce 命令。在您的请求中,指定您要向其添加标签的资源的 Amazon 资源名称(ARN)。使用 tags 形式参数为要添加的每个标签指定标签键 (key) 和可选标签值 (value)。与 Create 操作和命令一样,tags 形式参数指定一个对象数组,每个标签键及其关联的标签值对应一个对象。

例如,以下 AWS CLI 命令将带有EnvironmentCloud标签值的标签密钥添加到指定的订阅者。此示例是针对 Linux、macOS 或 Unix 进行格式化的,它使用反斜杠 (\) 行继续符来提高可读性。

$ aws securitylake tag-resource \ --resource-arn arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab \ --tags key=Environment,value=Cloud

其中:

  • resource-arn 指定要为其添加标签的订阅用户的 ARN。

  • Environment 是要为订阅用户添加的标签的标签键。

  • Cloud 是指定标签键 (Environment) 的标签值。

在以下示例中,该命令为订阅用户添加多个标签。

$ aws securitylake tag-resource \ --resource-arn arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab \ --tags key=Environment,value=Cloud key=CostCenter,value=12345 key=Owner,value=jane-doe

对于 tags 数组中的每个对象,都需要 keyvalue 实际参数。但是,value 参数的值可以是空字符串。如果您不想将标签值与标签键相关联,请不要为 value 参数指定值。例如,以下命令添加一个没有关联标签值的 Owner 标签键:

$ aws securitylake tag-resource \ --resource-arn arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab \ --tags key=Owner,value=

如果添加标签操作成功,Security Lake 将返回一个空的 HTTP 200 响应。否则,Security Lake 将返回 HTTP 4xx 或 500 响应,并说明操作失败的原因。

查看 Amazon Security Lake 资源的标签

您可以使用 Security Lake 控制台或 Security Lake API 查看 Amazon Security Lake 资源的标签(包括标签键和标签值)。

Console

按照以下步骤,使用 Security Lake 控制台查看资源的标签。

查看资源的标签
  1. 打开 Security Lake 控制台:https://console.aws.amazon.com/securitylake/

  2. 根据要查看其标签的资源类型,执行以下任一操作:

    • 对于数据湖配置,在导航窗格中选择区域。在区域表中,选择区域,然后选择编辑。之后,展开标签部分。

    • 对于订阅用户,在导航窗格中选择订阅用户。然后,在我的订阅用户表中,选择订阅用户的名称。

      如果该订阅用户不在表中,请使用页面右上角的 AWS 区域 选择器,选择在其中创建了该订阅用户的区域。该表仅列出当前区域的现有订阅用户。

标签部分列出当前分配给该资源的所有标签。

API

要以编程方式检索和查看现有资源的标签,请使用 Security Lake API 的ListTagsForResource操作。在您的请求中,使用 resourceArn 参数指定资源的 Amazon 资源名称(ARN)。

如果您使用的是 AWS Command Line Interface (AWS CLI),请运行list-tags-for-resource命令并使用resource-arn参数指定资源的 ARN。例如:

$ aws securitylake list-tags-for-resource --resource-arn arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab

在上述示例中,arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab 是现有订阅用户的 ARN。

如果操作成功,Security Lake 将返回一个 tags 数组。该数组中的每个对象都指定了当前分配给该资源的标签(包括标签键和标签值)。例如:

{ "tags": [ { "key": "Environment", "value": "Cloud" }, { "key": "CostCenter", "value": "12345" }, { "key": "Owner", "value": "" } ] }

其中 EnvironmentCostCenterOwner 是分配给资源的标签键。Cloud 是与 Environment 标签键关联的标签值。12345 是与 CostCenter 标签键关联的标签值。Owner 标签密钥没有关联的标签值。

编辑 Amazon Security Lake 资源的标签

要编辑 Amazon Security Lake 资源的标签(标签键或标签值),您可以使用 Security Lake 控制台或 Security Lake API。

重要

编辑资源的标签可能会影响对该资源的访问。在编辑资源的标签键或值之前,请查看可能使用该标签控制资源访问权限的任何 AWS Identity and Access Management (IAM) 策略。

Console

按照以下步骤,使用 Security Lake 控制台编辑资源的标签。

编辑资源的标签
  1. 打开 Security Lake 控制台:https://console.aws.amazon.com/securitylake/

  2. 根据要编辑其标签的资源类型,执行以下任一操作:

    • 对于数据湖配置,在导航窗格中选择区域。然后,在区域表中,选择区域。

    • 对于订阅用户,在导航窗格中选择订阅用户。然后,在我的订阅用户表中,选择订阅用户。

      如果该订阅用户不在表中,请使用页面右上角的 AWS 区域 选择器,选择在其中创建了该订阅用户的区域。该表仅列出当前区域的现有订阅用户。

  3. 选择编辑

  4. 展开标签部分。标签部分列出当前分配给该资源的所有标签。

  5. 执行以下任一操作:

    • 要为现有标签键添加标签值,请在标签键旁边的框中输入值。

    • 要更改现有标签键,请选择标签旁边的删除。然后,选择添加新标签。在出现的框中,输入新的标签键。在框中,可以选择输入相关的标签值。

    • 要更改现有标签值,请在包含该值的 框中选择 X。然后在框中键入新的标签值。

    • 要删除现有标签值,请在包含该值的 框中选择 X

    • 要删除现有标签(标签键和标签值),请选择标签旁边的 移除

    一个资源可具有多达 50 个标签。一个标签键可包含多达 128 个字符。一个标签值可包含多达 256 个字符。这些字符可以是字母、数字、空格或以下符号:_ . : / = + - @

  6. 完成对标签的编辑之后,选择 保存

API

当您以编程方式编辑资源的标签时,会用新值覆盖现有标签。因此,编辑标签的最佳方法取决于您是要编辑标签键、标签值还是两者都有。要编辑标签密钥,请删除当前标签添加新标签

要仅编辑或删除与标签键关联的标签值,请使用 Security Lake API 的TagResource操作覆盖现有值。如果您使用的是 AWS Command Line Interface (AWS CLI),则运行 tag-resource 命令。在您的请求中,指定要编辑或删除其标签值的资源的 Amazon 资源名称 (ARN)。

要编辑标签值,请使用 tags 形式参数指定要更改其标签值的标签键。另外,还要指定该标签键的新标签值。例如,以下 AWS CLI 命令将分配给指定订阅On-Premises者的Environment标签密钥的标签值从Cloud更改为。此示例是针对 Linux、macOS 或 Unix 进行格式化的,它使用反斜杠 (\) 行继续符来提高可读性。

$ aws securitylake tag-resource \ --resource-arn arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab \ --tags key=Environment,value=On-Premises

其中:

  • resource-arn 指定订阅用户的 ARN。

  • Environment 是与要更改的标签值关联的标签键。

  • On-Premises 是指定标签键 (Environment) 的新标签值。

要从标签密钥中移除标签值,请不要在 value 参数中为该密钥的 tags 参数指定值。例如:

$ aws securitylake tag-resource \ --resource-arn arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab \ --tags key=Owner,value=

如果操作成功,Security Lake 将返回一个空的 HTTP 200 响应。否则,Security Lake 将返回 HTTP 4xx 或 500 响应,并说明操作失败的原因。

从 Amazon Security Lake 资源中删除标签

要从 Amazon Security Lake 资源中删除标签,您可以使用 Security Lake 控制台或 Security Lake API。

重要

从资源中删除标签可能会影响对该资源的访问。在移除标签之前,请查看可能使用该标签控制资源访问权限的任何 AWS Identity and Access Management (IAM) 策略。

Console

按照以下步骤,使用 Security Lake 控制台从资源中删除一个或多个标签。

从资源中删除标签
  1. 打开 Security Lake 控制台:https://console.aws.amazon.com/securitylake/

  2. 根据要从中删除标签的资源类型,执行以下任一操作:

    • 对于数据湖配置,在导航窗格中选择区域。然后,在区域表中,选择区域。

    • 对于订阅用户,在导航窗格中选择订阅用户。然后,在我的订阅用户表中,选择订阅用户。

      如果该订阅用户不在表中,请使用页面右上角的 AWS 区域 选择器,选择在其中创建了该订阅用户的区域。该表仅列出当前区域的现有订阅用户。

  3. 选择编辑

  4. 展开标签部分。标签部分列出当前分配给该资源的所有标签。

  5. 执行以下任一操作:

    • 如果仅删除标签的标签值,请在包含要删除的值的 框中选择 X

    • 要同时删除标签的标签键和标签值(以键值对的形式),请选择要删除的标签旁边的删除

  6. 要从资源中删除其他标签,请针对要删除的每个其他标签重复上述步骤。

  7. 完成对标签的删除后,选择保存

API

要以编程方式从资源中移除一个或多个标签,请使用 Security Lake API 的UntagResource操作。在请求中,使用 resourceArn 参数指定要从中删除标签的资源的 Amazon 资源名称(ARN)。使用 tagKeys 参数指定要删除的标签的标签键。要移除多个标签,请为要移除的每个标签附加 tagKeys 参数,并用和号 (&) 分隔,例如,tagKeys=key1&tagKeys=key2。如果仅从资源中删除特定的标签值(而不是标签键),请编辑标签而不是删除标签。

如果您使用的是 AWS Command Line Interface (AWS CLI),请运行 untag-resource 命令从资源中移除一个或多个标签。在 resource-arn 参数中,指定要从中移除标签的资源的 ARN。使用 tag-keys 形式参数指定要删除的标签的标签键。例如,以下命令从指定订阅用户中删除 Environment 标签(包括标签键和标签值):

$ aws securitylake untag-resource \ --resource-arn arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab \ --tag-keys Environment

其中,resource-arn 指定要从中删除标签的订阅用户的 ARN,Environment 是要删除的标签的标签键。

要从资源中删除多个标签,请添加每个其他标签键作为 tag-keys 形式参数的实际参数。例如:

$ aws securitylake untag-resource \ --resource-arn arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab \ --tag-keys Environment Owner

如果操作成功,Security Lake 将返回一个空的 HTTP 200 响应。否则,Security Lake 将返回 HTTP 4xx 或 500 响应,并说明操作失败的原因。