AWS Backup 保管库锁定
注意
AWS Backup 保管库锁定已由 Cohasset Associates 评估,可在受 SEC 17a-4、CFTC 和 FINRA 法规约束的环境中使用。有关 AWS Backup 保管库锁定如何与这些法规相关的更多信息,请参阅 Cohasset Associates 合规性评估。
AWS Backup 保管库锁定是备份保管库的一项可选功能,它有助于增强备份保管库的安全性和对其的控制力。当锁定功能在合规模式下处于活动状态并且宽限期结束时,只要保管库包含恢复点,客户、账户/数据所有者或 AWS 就无法更改或删除保管库配置。每个保管库可以有一个保管库锁。
AWS Backup 确保您的备份在保留期到期之前一直可供您使用。如果任何用户(包括根用户)尝试删除已锁定保管库中的备份或更改其生命周期属性,AWS Backup 会拒绝该操作。
拥有充足 IAM 权限的用户可以解除锁定在治理模式下的保管库。
冷静期(“宽限期”)到期后,如果保管库包含任何恢复点,则无法删除在合规模式下锁定的保管库。在宽限期内,您仍可以移除保管库锁定并更改锁定配置。
保管库锁定模式
创建保管库锁定时,您可以选择两种模式:治理模式或合规模式。治理模式旨在允许只有拥有充足 IAM 权限的用户才能管理保管库。治理模式可帮助组织满足治理要求,确保只有指定的人员才能对备份保管库进行更改。合规模式适用于在数据保留期结束之前永远不会删除或更改保管库(以及其内容)的备份保管库。一旦合规模式下的保管库被锁定,它就不可变,意味着无法移除锁定(如果保管库为空,而不包含任何恢复点,则可以删除保管库本身)。
拥有相应 IAM 权限的用户可以管理或删除在治理模式下锁定的保管库。
任何用户或 AWS 都无法更改或删除处于合规模式下的保管库锁定。在保管库锁定并且内容和保管库锁定变为不可变之前,合规模式下的保管库锁定功能具有您设置的宽限期。
保管库锁定的好处
AWS Backup 保管库锁定有多项好处,包括:
针对您在备份保管库中存储和创建的所有备份进行 WORM(一次写入、多次读取)配置。
额外防御层,可保护备份保管库中的备份(恢复点)免遭意外或恶意删除。
强制执行保留期,防止特权用户(包括 AWS 账户根用户)提前删除,并符合您组织的数据保护政策和程序。
使用控制台锁定备份保管库
您可以使用 Backup 控制台向 AWS Backup 保管库添加保管库锁定。
要向备份保管库添加保管库锁定,请执行以下操作:
登录到 AWS Management Console,然后通过以下网址打开 AWS Backup 控制台:https://console.aws.amazon.com/backup
。 在导航窗格中,找到备份保管库。单击 Backup 保管库下嵌套的名为保管库锁定的链接。
在保管库锁定的工作原理或保管库锁定下,单击 + 创建保管库锁定。
在保管库锁定详细信息窗格中,选择要应用锁定的保管库。
在保管库锁定模式下,选择要锁定保管库的模式。有关选择模式的更多信息,请参阅本页前面的保管库锁定模式。
对于保留期,选择最小和最大保留期(保留期是可选项)。如果保管库中创建的新备份和复制作业不符合您设置的保留期,则这些作业将失败;这些期限不适用于保管库中已有的恢复点。
如果您选择合规模式,则会显示一个名为保管库锁定开始日期的部分。如果您选择治理模式,则不会显示该部分,并且可以跳过此步骤。
在合规模式下,保管库锁定的冷静期从创建保管库锁定开始,直到保管库及其锁变为不可变且不可更改。您可以选择此期限的持续时间(称为宽限期),但必须至少为 3 天(72 小时)。
重要
宽限期到期后,保管库及其锁定将不可变。任何用户或 AWS 都不能对其进行更改或删除。
如果您对配置选项感到满意,请单击创建保管库锁定。
要确认您希望在所选模式下创建此锁定,请在文本框中键入
confirm
,然后选中确认配置符合预期的复选框。
如果步骤已成功完成,则控制台顶部将显示“成功”横幅。
以编程方式锁定备份保管库
要配置 AWS Backup 保管库锁定,请使用 API PutBackupVaultLockConfiguration
。要包含的参数将取决于您打算采用哪种保管库锁定模式。如果您想在治理模式下创建保管库锁定,请不要包含 ChangeableForDays
。如果包含此参数,则将在合规模式下创建保管库锁定。
以下是创建合规模式保管库锁定的 CLI 示例:
aws backup put-backup-vault-lock-configuration \ --backup-vault-name
my_vault_to_lock
\ --changeable-for-days3
\ --min-retention-days7
\ --max-retention-days30
以下是创建治理模式保管库锁定的 CLI 示例:
aws backup put-backup-vault-lock-configuration \ --backup-vault-name
my_vault_to_lock
\ --min-retention-days7
\ --max-retention-days30
您可以配置四个选项。
-
BackupVaultName
要锁定的保管库的名称。
-
ChangeableForDays
(仅适用于合规模式)此参数指示 AWS Backup 在合规模式下创建保管库锁定。如果您打算在治理模式下创建锁定,请省略此参数。
该值以天数表示。它必须是一个不小于 3 且不大于 36,500 的数字;否则,将返回错误。
从创建此保管库锁定到指定日期到期,可以使用
DeleteBackupVaultLockConfiguration
将保管库锁定从保管库中删除。或者,在此期间,您可以使用PutBackupVaultLockConfiguration
更改配置。在此参数确定的指定日期及之后,备份保管库将不可变且无法更改或删除。
-
MaxRetentionDays
(可选)这是一个以天为单位的数值。这是保管库保留其恢复点的最长保留期。
您选择的最大保留时间范围应与您组织的数据保留政策保持一致。如果您的组织要求将数据保留一段时间,则可以将此值设置为该期限(以天为单位)。例如,可能需要将财务或银行数据保存 7 年(大约 2,557 天,视闰年而定)。
如果未指定此参数,AWS Backup 保管库锁定将不会强制规定最长保留期。如果指定此参数,则生命周期保留期长于最大保留期的备份和复制到此保管库的作业将失败。保管库锁定创建之前已保存在保管库中的恢复点不受影响。您可以指定的最长保留期为 36500 天(大约 100 年)。
-
MinRetentionDays
(可选;对于 CloudFormation 是必需的)这是一个以天为单位的数值。这是保管库保留其恢复点的最短保留期。此设置应设置为您的组织维护数据所需的 时间。例如,如果法规或法律要求将数据保留至少七年,则以天为单位的值约为 2,557,视闰年而定。
如果未指定此参数,AWS Backup 保管库锁定将不会强制规定最短保留期。如果指定此参数,则生命周期保留期短于最小保留期的备份和复制到此保管库的作业将失败。AWS Backup 保管库锁定之前已保存在保管库中的恢复点不受影响。您可以指定的最短保留期为 1 天。
查看 AWS Backup 备份保管库的保管库锁定配置
您可以通过调用 DescribeBackupVault
或 ListBackupVaults
API,随时查看保管库的 AWS Backup 保管库锁定详细信息。
要确定您是否对备份保管库应用了保管库锁定,请调用 DescribeBackupVault
并查看 Locked
属性。如果 "Locked": true
像以下示例一样,说明您已将 AWS Backup 保管库锁定应用于备份保管库。
{ "BackupVaultName": "my_vault_to_lock", "BackupVaultArn": "arn:aws:backup:us-east-1:555500000000:backup-vault:my_vault_to_lock", "EncryptionKeyArn": "arn:aws:kms:us-east-1:555500000000:key/00000000-1111-2222-3333-000000000000", "CreationDate": "2021-09-24T12:25:43.030000-07:00", "CreatorRequestId": "ac6ce255-0456-4f84-bbc4-eec919f50709", "NumberOfRecoveryPoints": 1, "Locked": true, "MinRetentionDays": 7, "MaxRetentionDays": 30, "LockDate": "2021-09-30T10:12:38.089000-07:00" }
上述输出确认了以下选项:
-
Locked
是一个布尔值,表示您是否已将 AWS Backup 保管库锁定应用于此备份保管库。True
意味着 AWS Backup 保管库锁定会导致对存储在保管库中的恢复点的删除或更新操作失败(无论您是否仍处于冷静宽限期)。 -
LockDate
是您的冷静宽限期结束时的 UTC 日期和时间。在此时间之后,您将无法删除或更改对此保管库的锁定。使用任何公开可用的时间转换器将此字符串转换为您的本地时间。
如果 "Locked":false
像以下示例一样,说明您尚未应用保管库锁定(或之前的保管库锁定已被删除)。
{ "BackupVaultName": "my_vault_to_lock", "BackupVaultArn": "arn:aws:backup:us-east-1:555500000000:backup-vault:my_vault_to_lock", "EncryptionKeyArn": "arn:aws:kms:us-east-1:555500000000:key/00000000-1111-2222-3333-000000000000", "CreationDate": "2021-09-24T12:25:43.030000-07:00", "CreatorRequestId": "ac6ce255-0456-4f84-bbc4-eec919f50709", "NumberOfRecoveryPoints": 3, "Locked": false }
在宽限期内移除保管库锁定(合规模式)
要在宽限期(锁定保管库之后但在 LockDate
之前的时间)使用 AWS Backup 控制台删除保管库锁定,请执行以下操作:
登录到 AWS Management Console,然后通过以下网址打开 AWS Backup 控制台:https://console.aws.amazon.com/backup
。 在我的账户下的左侧导航栏中,单击“备份保管库”,然后单击“备份保管库锁定”。
单击您要移除的保管库锁定,然后单击管理保管库锁定。
单击删除保管库锁定。
此时,将显示一个警告框,要求您确认删除保管库锁定的意图。在文本框中键入
confirm
,然后单击确认。
成功完成所有步骤后,控制台屏幕顶部将显示“成功”横幅。
要在宽限期内使用 CLI 命令删除保管库锁定,请使用 DeleteBackupVaultLockConfiguration
,如这个 CLI 示例所示:
aws backup delete-backup-vault-lock-configuration \ --backup-vault-name
my_vault_to_lock
具有锁定保管库的 AWS 账户关闭
当您关闭包含备份保管库的 AWS 账户时,AWS 和 AWS Backup 将在确保备份完好无损的情况下暂停您的账户 90 天。如果您在这 90 天内没有重新打开账户,即使 AWS Backup 保管库锁定已启用,AWS 也会删除备份保管库中的内容。
其它安全注意事项
AWS Backup 保管库锁定额外增加了一层安全保护,加深了您的数据保护防御深度。保管库锁定可以与其他安全功能结合使用:
-
AWS Backup 保管库和恢复点访问策略,允许您在保管库级别授予或拒绝权限,
-
AWS Backup 安全最佳实践,包括允许您通过 AWS 支持的服务授予或拒绝备份和还原权限的客户托管策略库,以及
-
AWS Backup Audit Manager,它允许您根据自己定义的控制列表自动检查备份的合规性。
您可以遍历使用 AWS Backup API 创建框架以使用 AWS Backup Audit Manager 实施控制备份受 AWS Backup 保管库锁定保护,从而帮助确保利用保管库锁的保护您的预期资源。
-
使资源处于非活动状态的机制可能会影响还原资源的能力。虽然仍然无法在锁定的保管库中删除它们,但它们可能处于非活动状态。例如,允许您禁用 AMI 的 Amazon Elastic Compute Cloud 设置可以暂时阻止还原 EC2 实例的备份。这会影响所有 EC2 恢复点,甚至是受保管库锁定功能或法定保留影响的备份。
如果 EC2 备份被禁用,您可以重新启用已禁用的 AMI。重新启用后,它便有资格进行还原。要阻止 AMI 禁用特征,您可以使用 IAM 策略不允许
ec2:DisableImage
。
注意
AWS Backup 保管库锁定与 Amazon S3 Glacier 保管库锁定特征不同,后者仅与 S3 Glacier 兼容。