文件库锁定策略 - Amazon S3 Glacier

此页面仅适用于使用保管库的 S3 Glacier 服务的现有客户以及 2012 年以RESTAPI来的原始客户。

如果您正在寻找档案存储解决方案,我们建议您在亚马逊 S3、S3 Glacier 即时检索、S3 Glacier 灵活检索和 S3 Glacier Deep Archive Dee p Archive 中使用 S3 Glacier 存储类。要了解有关这些存储选项的更多信息,请参阅 Amazon S3 用户指南中的 S3 Glacier 存储类和使用 S3 Glacier 存储类的长期数据存储。这些存储类别使用 Amazon S3API,适用于所有区域,并且可以在 Amazon S3 控制台中进行管理。它们提供存储成本分析、存储镜头、高级可选加密功能等功能。

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

文件库锁定策略

可以为 Amazon S3 Glacier(S3 Glacier)文件库附加一个基于资源的文件库访问策略和一个文件库锁定策略。文件库锁定策略 是您可以锁定的文件库访问策略。使用文件库锁定策略可以帮助您强制执行监管和合规性要求。Amazon S3 Glacier 提供了一系列API操作供您管理文件库锁定策略,请参阅使用 S3 Glacier API 锁定文件库

我们举例来说明文件库锁定策略,假设您需要先将存档保留一年,然后才能删除存档。要实施此要求,您可以创建一个文件库锁定策略,以便在存档保留时间达到 1 年之前拒绝用户删除存档的权限。在锁定一个策略之前,可以先测试该策略。锁定策略后,策略将是不可变的。有关锁定过程的更多信息,请参阅 文件库锁定策略。如果您要管理可更改的其他用户权限,可以使用文件库访问策略(请参阅 库访问策略)。

您可以使用 S3 Glacier API SDKs AWS CLI、Amazon 或 S3 Glacier 控制台来创建和管理文件库锁定策略。有关基于文件库资源的策略所允许的 S3 Glacier 操作的列表,请参阅API 权限参考

示例 1:拒绝针对保留时间不到 365 天的存档的删除权限

假定您需要符合法规要求,只能删除保留时间达到 1 年的存档。可通过实施以下文件库锁定策略来实施此要求。如果要删除的存档的保留时间不到 1 年,则该策略将拒绝对 examplevault 文件库执行 glacier:DeleteArchive 操作。该策略使用特定于 S3 Glacier 的条件键 ArchiveAgeInDays 来实施 1 年保留要求。

{ "Version":"2012-10-17", "Statement":[ { "Sid": "deny-based-on-archive-age", "Principal": "*", "Effect": "Deny", "Action": "glacier:DeleteArchive", "Resource": [ "arn:aws:glacier:us-west-2:123456789012:vaults/examplevault" ], "Condition": { "NumericLessThan" : { "glacier:ArchiveAgeInDays" : "365" } } } ] }

假定您实施了一个基于时间的保留规则,即允许在存档保留时间不到 1 年的情况下删除存档。同时,假定您需要对您的存档实施法定保留策略,以在法律调查期间无限期地禁止删除或修改操作。在这种情况下,法定保留优先于文件库锁定策略中指定的基于时间的保留规则。

为了实施这两个规则,以下示例策略包含两条语句:

  • 第一条语句拒绝任何人删除存档(锁定文件库)。可通过使用 LegalHold 标签执行此锁定。

  • 第二条语句授予在存档保留时间不到 365 天的情况下删除存档的权限。但是,如果满足第一条语句中的条件,即使在存档保留时间不到 365 天的情况下,任何人也无法删除存档。

{ "Version":"2012-10-17", "Statement":[ { "Sid": "lock-vault", "Principal": "*", "Effect": "Deny", "Action": [ "glacier:DeleteArchive" ], "Resource": [ "arn:aws:glacier:us-west-2:123456789012:vaults/examplevault" ], "Condition": { "StringLike": { "glacier:ResourceTag/LegalHold": [ "true", "" ] } } }, { "Sid": "you-can-delete-archive-less-than-1-year-old", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Effect": "Allow", "Action": [ "glacier:DeleteArchive" ], "Resource": [ "arn:aws:glacier:us-west-2:123456789012:vaults/examplevault" ], "Condition": { "NumericLessThan": { "glacier:ArchiveAgeInDays": "365" } } } ] }