使用保留规则 - Amazon Elastic Compute Cloud

使用保留规则

要启用和使用回收站,您必须在要保护资源的 AWS 区域中创建保留规则。保留规则指定以下内容:

  • 要保护的资源的类型。

  • 删除后要保留在回收站中的资源。

  • 永久删除之前保留资源在回收站中的保留期。

使用回收站,可创建两种类型的保留规则:

  • 标签级保留规则:标签级保留规则使用资源标签来标记要保留在回收站中的资源。对于每个保留规则,您可以指定一个或多个标签键和值对。使用保留规则中至少一个指定标签键值对标记的指定类型的资源,将在删除后自动保留在回收站中。如果要根据标签保护账户中的特定资源,请使用这种类型的保留规则。

  • 区域级保留规则:区域级保留规则未指定任何资源标签。其适用于创建规则的区域中指定类型的所有资源,即使这些资源未被标记。如果要保护特定区域内特定类型的所有资源,请使用这种类型的保留规则。

创建保留规则后,符合其条件的资源将在删除后的指定保留期内自动保留在回收站中。

创建保留规则

创建保留规则时,必须指定以下必要参数:

  • 将受保留规则保护的资源类型。

  • 将受保留规则保护的资源。您可以在标签级别和区域级别创建保留规则。

    • 若要创建标签级别保留规则,请指定识别要保护的资源的资源标签。您可为每个规则指定最多 50 个标签,将相同的标签键和值对添加到最多 5 个保留规则中。

    • 若要创建区域级别的保留规则,请勿指定任何标签键和值对。在这种情况下,指定类型的所有资源都将受到保护。

  • 资源删除后要保留在回收站中的时间。期限可以长达 1 年(365 天)。

您还可以指定以下可选参数:

  • 保留规则的可选名称。名称最多可以有 255 个字符。

  • 保留规则的可选描述。描述长度最多为 255 个字符。

    注意

    我们建议您不要将个人身份识别、机密或敏感信息包括在留存规则描述中。

  • 可选的保留规则标签,以帮助识别和组织保留规则。您最多可以为每个规则分配 50 个标签。

您也可以选择在创建时锁定保留规则。如果您在创建时锁定保留规则,则还必须指定解锁延迟时间期,可以是 7 到 30 天。保留规则默认保持解锁状态,除非您明确将其锁定。

保留规则仅在创建它们的区域中有效。如果您打算在其它区域中使用回收站,则必须在这些区域中创建其它保留规则。

您可以使用以下方法创建回收站保留规则。

Recycle Bin console
创建保留规则
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航窗格中,选择 Retention rules(保留规则),然后选择 Create retention rule(创建保留规则)。

  3. Basic details(基本详细信息)部分中,执行以下操作:

    1. 可选)在 Retention rule name(保留规则名称)中,输入保留规则的描述性名称。

    2. 可选)在 Retention rule description(保留规则描述)中,输入保留规则的简单描述。

  4. Rule settings(规则设置)部分,执行以下操作:

    1. 对于 Resource type(资源类型),选择要保护的保留规则的资源类型。保留规则将仅在回收站中保留此类资源。

    2. 请执行以下操作之一:

      • 要创建与区域中所有已删除的指定类型资源匹配的区域级保留规则,请选择 Apply to all resources(应用于所有资源)。保留规则将在删除资源后将所有已删除的指定资源保留在回收站中,即使资源没有任何标签也是如此。

      • 要创建标签级保留规则,请在 Resource tags to match(要匹配的资源标签)中输入标签键值对,以便标记要保留在回收站中的指定类型资源。至少具有指定标签键值对之一的指定类型资源才会根据保留规则保留。

    3. 对于 Retention period(保留期),输入保留规则在回收站中保留资源的天数。

  5. 可选)若要锁定保留规则,对于 Rule lock settings(规则锁定设置),选择 Lock(锁定),然后对于 Unlock delay period(解锁延迟期),指定解锁延迟时间(以天为单位)。无法修改或删除锁定的保留规则。若要修改或删除规则,必须先将其解锁,然后等待解锁延迟期到期。有关更多信息,请参阅 锁定保留规则

    若要使保留规则保持解锁状态,对于 Rule lock settings(规则锁定设置),请保持 Unlock(解锁)处于选中状态。可以随时修改或删除已解锁的保留规则。有关更多信息,请参阅解锁保留规则

  6. 可选)在 Tags(标签)部分,执行以下操作:

    1. 要使用自定义标签标记规则,请选择 Add tag(添加标签),然后输入标签键值对。

  7. 选择 Create retention rule(创建保留规则)。

AWS CLI
创建保留规则

使用 create-rule AWS CLI 命令。对于 --retention-period,请指定在回收站中保留已删除快照的天数。对于 --resource-type,为快照指定 EBS_SNAPSHOT,或者为 AMI 指定 EC2_IMAGE。要创建标签级别保留规则,请在 --resource-tags 中指定用于标记要保留快照的标签。若要创建区域级别的保留规则,请省略 --resource-tags若要锁定保留规则,请包含 --lock-configuration 并指定解锁延迟期(以天为单位)。

$ aws rbin create-rule \ --retention-period RetentionPeriodValue=number_of_days,RetentionPeriodUnit=DAYS \ --resource-type EBS_SNAPSHOT|EC2_IMAGE \ --description "rule_description" \ --lock-configuration 'UnlockDelay={UnlockDelayUnit=DAYS,UnlockDelayValue=unlock_delay_in_days}' \ --resource-tags ResourceTagKey=tag_key,ResourceTagValue=tag_value
示例 1

以下示例命令创建已解锁的区域级保留规则,该规则将所有已删除的快照保留 7 天。

$ aws rbin create-rule \ --retention-period RetentionPeriodValue=7,RetentionPeriodUnit=DAYS \ --resource-type EBS_SNAPSHOT \ --description "Match all snapshots"
示例 2

以下示例命令创建标签级保留规则,该规则将被 purpose=production 标记的所有已删除的快照保留 7 天。

$ aws rbin create-rule \ --retention-period RetentionPeriodValue=7,RetentionPeriodUnit=DAYS \ --resource-type EBS_SNAPSHOT \ --description "Match snapshots with a specific tag" \ --resource-tags ResourceTagKey=purpose,ResourceTagValue=production
示例 3

以下示例命令创建锁定的区域级保留规则,该规则将所有已删除的快照保留 7 天。保留规则已锁定,解锁延迟期为 7 天。

$ aws rbin create-rule \ --retention-period RetentionPeriodValue=7,RetentionPeriodUnit=DAYS \ --resource-type EBS_SNAPSHOT \ --description "Match all snapshots" \ --lock-configuration 'UnlockDelay={UnlockDelayUnit=DAYS,UnlockDelayValue=7}'

查看回收站保留规则

您可以使用以下方法之一查看回收站保留规则。

Recycle Bin console
查看保留规则
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航窗格中,选择 Retention rules(保留规则)。

  3. 网格列出了所选区域的所有保留规则。要查看有关特定保留规则的更多信息,请在网格中选择该规则。

AWS CLI
查看所有保留规则

使用 list-rules AWS CLI 命令;对于 --resource-type,为快照指定 EBS_SNAPSHOT,或者为 AMI 指定 EC2_IMAGE

$ aws rbin list-rules --resource-type EBS_SNAPSHOT|EC2_IMAGE
示例

以下示例命令列出了所有保留快照的保留规则。

$ aws rbin list-rules --resource-type EBS_SNAPSHOT
查看特定保留规则的信息

使用 get-rule AWS CLI 命令。

$ aws rbin get-rule --identifier rule_ID
示例

以下示例命令提供了有关保留规则 pwxIkFcvge4 的信息。

$ aws rbin get-rule --identifier pwxIkFcvge4

更新保留规则

创建后,您可以随时更新已解锁保留规则的说明、资源标签和保留期。您无法更新保留规则的资源类型或解锁延迟期,即使保留规则已解锁也是如此

您无法以任何方式更新锁定的保留规则。如果您需要修改锁定的保留规则,则必须先将其解锁,然后等待解锁延迟期到期。

如果您需要修改锁定保留规则的解锁延迟期,则必须解锁保留规则,然后等待当前的解锁延迟期到期。解锁延迟期到期后,必须重新锁定保留规则并指定新的解锁延迟期。

注意

我们建议您不要将个人身份识别、机密或敏感信息包括在留存规则描述中。

更新保留规则后,这些更改仅适用于其保留的新资源。这些更改不会影响之前发送到回收站的资源。例如,如果您更新了保留规则的保留期,则在新的保留期内只会保留更新后删除的快照。在更新之前发送到回收站的快照仍会在上一个(旧)保留期内保留。

您可以使用以下方法之一更新保留规则。

Recycle Bin console
更新保留规则
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航窗格中,选择 Retention rules(保留规则)。

  3. 在网格中,选择要更新的保留规则,然后选择 Actions(操作)、Edit retention rule(编辑保留规则)。

  4. Rule details(规则详细信息)部分中,根据需要更新 Retention rule name(保留规则名称)和 Retention rule description(保留规则描述)。

  5. Rule settings(规则设置)部分中,根据需要更新 Resource type(资源类型)、Resource tags to match(要匹配的资源标签)和 Retention period(保留期)。

  6. Tags(标签)部分,根据需要添加或删除保留规则标签。

  7. 选择 Save retention rule(保存保留规则)。

AWS CLI
更新保留规则

使用 update-rule AWS CLI 命令。对于 --identifier,指定要更新的保留规则的 ID。对于 --resource-types,为快照指定 EBS_SNAPSHOT,或者为 AMI 指定 EC2_IMAGE

$ aws rbin update-rule \ --identifier rule_ID \ --retention-period RetentionPeriodValue=number_of_days,RetentionPeriodUnit=DAYS \ --resource-type EBS_SNAPSHOT|EC2_IMAGE \ --description "rule_description"
示例

以下示例命令更新了保留规则 6lsJ2Fa9nh9,以将所有快照保留 7 天,并更新其描述。

$ aws rbin update-rule \ --identifier 6lsJ2Fa9nh9 \ --retention-period RetentionPeriodValue=7,RetentionPeriodUnit=DAYS \ --resource-type EBS_SNAPSHOT \ --description "Retain for three weeks"

锁定保留规则

回收站允许您随时锁定区域级别的保留规则。

注意

您无法锁定标签级别的保留规则。

即使拥有所需 IAM 权限的用户,也无法修改或删除锁定的保留规则。锁定保留规则以保护其免遭意外或恶意修改和删除。

锁定保留规则时,必须指定解锁延迟期。这是解锁保留规则后必须等待的时间,然后才能修改或删除该规则。在解锁延迟期内,您无法修改或删除保留规则。只有在解锁延迟期到期后,您才可修改或删除保留规则。

保留规则锁定后,您无法更改解锁延迟期。如果您的账户权限已外泄,则解锁延迟期会让您有更多时间检测和应对安全威胁。此期限的长度应长于您识别和应对安全漏洞所花费的时间。若要设置正确的持续时间,您可以查看以前的安全事件以及识别和修复账户漏洞所需的时间。

我们建议您使用 Amazon EventBridge 规则来通知您保留规则锁定状态的变化。有关更多信息,请参阅使用 Amazon EventBridge 监控回收站

注意事项

  • 您只能锁定区域级别的保留规则。

  • 您可以随时锁定已解锁的保留规则。

  • 解锁延迟期必须为 7 到 30 天。

  • 您可以在解锁延迟期内重新锁定保留规则。重新锁定保留规则会重置解锁延迟期。

您可以使用以下方法之一锁定区域级别的保留规则。

Recycle Bin console
锁定保留规则
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航面板中,选择 Retention rules(保留规则)。

  3. 在网格中,选择要锁定的已解锁保留规则,然后选择 Actions(操作)、Edit retention rule lock(编辑保留规则锁定)。

  4. 在编辑保留规则锁定屏幕上,选择 Lock(锁定),然后对于 Unlock delay period(解锁延迟期),指定解锁延迟期(以天为单位)。

  5. 选择 I acknowledge that locking the retention rule will prevent it from being modified or deleted(我确认锁定保留规则将阻止其被修改或删除)复选框,然后选择 Save(保存)。

AWS CLI
锁定已解锁的保留规则

使用 lock-rule AWS CLI 命令。对于 --identifier,指定要锁定的保留规则 ID。对于 --lock-configuration,以天为单位指定解锁延迟期。

$ aws rbin lock-rule \ --identifier rule_ID \ --lock-configuration 'UnlockDelay={UnlockDelayUnit=DAYS,UnlockDelayValue=number_of_days}'
示例

以下示例命令锁定保留规则 6lsJ2Fa9nh9 并将解锁延迟期设置为 15 天。

$ aws rbin lock-rule \ --identifier 6lsJ2Fa9nh9 \ --lock-configuration 'UnlockDelay={UnlockDelayUnit=DAYS,UnlockDelayValue=15}'

解锁保留规则

您无法修改或删除锁定的保留规则。如果您需要修改锁定的保留规则,则必须先将其解锁。解锁保留规则后,必须等待解锁延迟期到期,然后才能修改或删除该规则。在解锁延迟期内,您无法修改或删除保留规则。

拥有所需 IAM 权限的用户可以随时修改和删除已解锁的保留规则。让保留规则处于解锁状态,会使其遭受意外或恶意修改和删除的风险。

注意事项

  • 您可以在解锁延迟期内重新锁定保留规则。

  • 您可以在解锁延迟期到期后重新锁定保留规则。

  • 您无法绕过解锁延迟期。

  • 初始锁定后,您无法更改解锁延迟期。

我们建议您使用 Amazon EventBridge 规则来通知您保留规则锁定状态的变化。有关更多信息,请参阅使用 Amazon EventBridge 监控回收站

您可以使用以下方法之一解锁已锁定的区域级别保留规则。

Recycle Bin console
解锁保留规则
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航面板中,选择 Retention rules(保留规则)。

  3. 在网格中,选择要解锁的已锁定保留规则,然后选择 Actions(操作)、Edit retention rule lock(编辑保留规则锁定)。

  4. 在编辑保留规则锁定屏幕上,选择 Unlock(解锁),然后选择 Save(保存)。

AWS CLI
解锁已锁定的保留规则

使用 unlock-rule AWS CLI 命令。对于 --identifier,指定要解锁的保留规则 ID。

$ aws rbin unlock-rule \ --identifier rule_ID
示例

以下示例命令解锁保留规则 6lsJ2Fa9nh9

$ aws rbin unlock-rule \ --identifier 6lsJ2Fa9nh9

标签保留规则

可以给保留规则分配自定义标签,以便按不同的方式将它们分类,例如按用途、拥有者或环境分类。这有助于根据所分配的自定义标签高效查找特定保留规则。

您可以使用以下方法之一为保留规则分配标签。

Recycle Bin console
标记保留规则
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航窗格中,选择 Retention rules(保留规则)。

  3. 选择要标记的保留规则,选择 Tags(标签)选项卡,然后选择 Manage tags(管理标签)。

  4. 选择 Add tag(添加标签)。对于 Key(键),输入标签建。对于 Value(值),输入键值。

  5. 选择 Save(保存)。

AWS CLI
标记保留规则

使用 tag-resource AWS CLI 命令。对于 --resource-arn,请指定要标记的保留规则的 Amazon Resource Name (ARN),并为 --tags 指定标签键值对。

$ aws rbin tag-resource \ --resource-arn retention_rule_arn \ --tags key=tag_key,value=tag_value
示例

以下示例命令使用标签 arn:aws:rbin:us-east-1:123456789012:rule/nOoSBBtItF3 来标记保留规则 purpose=production

$ aws rbin tag-resource \ --resource-arn arn:aws:rbin:us-east-1:123456789012:rule/nOoSBBtItF3 \ --tags key=purpose,value=production

查看保留规则标签

您可以使用以下方法之一查看分配给保留规则的标签。

Recycle Bin console
查看保留规则的标签
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航窗格中,选择 Retention rules(保留规则)。

  3. 选择要查看标签的保留规则,然后选择 Tags(标签)选项卡。

AWS CLI
查看分配给保留规则的标签

使用 list-tags-for-resource AWS CLI 命令。对于 --resource-arn,请指定保留规则的 ARN。

$ aws rbin list-tags-for-resource \ --resource-arn retention_rule_arn
示例

以下示例命令列举保留规则 arn:aws:rbin:us-east-1:123456789012:rule/nOoSBBtItF3 的标签。

$ aws rbin list-tags-for-resource \ --resource-arn arn:aws:rbin:us-east-1:123456789012:rule/nOoSBBtItF3

从保留规则中删除标签

您可以使用以下方法之一从保留规则中删除标签。

Recycle Bin console
从保留规则中删除标签
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航窗格中,选择 Retention rules(保留规则)。

  3. 选择要从中删除标签的保留规则,选择 Tags(标签)选项卡,然后选择 Manage tags(管理标签)。

  4. 在标签旁选择 Remove(移除),以移除标签。

  5. 选择 Save(保存)。

AWS CLI
从保留规则中删除标签

使用 untag-resource AWS CLI 命令。对于 --resource-arn,请指定保留规则的 ARN。对于 --tagkeys,请指定要删除标签的标签键。

$ aws rbin untag-resource \ --resource-arn retention_rule_arn \ --tagkeys tag_key
示例

以下示例命令删除保留规则 arn:aws:rbin:us-east-1:123456789012:rule/nOoSBBtItF3 的 标签键为 purpose 的标签。

$ aws rbin untag-resource \ --resource-arn arn:aws:rbin:us-east-1:123456789012:rule/nOoSBBtItF3 \ --tagkeys purpose

查看回收站保留规则

您可以随时删除保留规则。删除保留规则时,回收站内在删除完成后将不再保留删除的新资源。根据保留规则中定义的保留期限,在删除保留规则之前发送到回收站的资源将继续保留在回收站中。期限到期后,资源将从回收站中永久删除。

您可以使用以下方法之一删除保留规则。

Recycle Bin console
删除保留规则
  1. 在以下位置打开回收站控制台 https://console.aws.amazon.com/rbin/home/

  2. 在导航窗格中,选择 Retention rules(保留规则)。

  3. 在表格中选择要删除的保留规则,然后选择 Actions(操作)、Delete retention rule(删除保留规则)。

  4. 在系统提示时,输入确认消息并选择 Delete retention rule(删除保留规则)。

AWS CLI
删除保留规则

使用 delete-rule AWS CLI 命令。对于 --identifier,请指定要删除的保留规则的 ID。

$ aws rbin delete-rule --identifier rule_ID
示例

以下示例命令删除保留规则 6lsJ2Fa9nh9

$ aws rbin delete-rule --identifier 6lsJ2Fa9nh9