已弃用: PUT 存储分段合规性请求
PUT 存储分段合规性请求已弃用。但是,您可以继续使用此请求修改现有旧版合规存储分段的合规性设置。例如,您可以将现有存储分段置于合法保留状态或延长其保留期限。
先前 StorageGRID 版本中提供的 StorageGRID 合规性功能已弃用,并已被 S3 对象锁定取代。 |
要完成此操作,您拥有 S3 : PutBucketCompliance 权限或帐户 root 。
发出 PUT 存储分段合规性请求时,必须为合规性设置的每个字段指定一个值。
请求示例
此示例请求修改名为 mybucket
的存储分段的合规性设置。在此示例中, mybucket
中的对象现在将保留两年( 1 , 051 , 200 分钟),而不是一年,从将对象载入网格开始。此存储分段没有法律上的保留。每个对象将在两年后自动删除。
PUT /mybucket/?x-ntap-sg-compliance HTTP/1.1
Date: date
Authorization: authorization name
Host: host
Content-Length: 152
<SGCompliance>
<RetentionPeriodMinutes>1051200</RetentionPeriodMinutes>
<LegalHold>false</LegalHold>
<AutoDelete>true</AutoDelete>
</SGCompliance>
Name | Description |
---|---|
RetentionPeriodMinutes |
添加到此存储分段的对象的保留期限长度,以分钟为单位。保留期限从将对象载入网格时开始。
|
乐高积木 |
|
自动删除 |
|
合规性设置的一致性级别
当您使用 PUT 存储分段合规性请求更新 S3 存储分段的合规性设置时, StorageGRID 会尝试更新整个网格中存储分段的元数据。默认情况下, StorageGRID 使用 * 强 - 全局 * 一致性级别来保证所有数据中心站点以及包含存储分段元数据的所有存储节点在更改的合规性设置中具有读 - 写一致性。
如果 StorageGRID 由于某个站点上的数据中心站点或多个存储节点不可用而无法达到 * 强 - 全局 * 一致性级别,则响应的 HTTP 状态代码为 503 Service unavailable 。
如果收到此响应,您必须联系网格管理员,以确保所需的存储服务尽快可用。如果网格管理员无法在每个站点提供足够的存储节点,技术支持可能会指示您通过强制执行 * 强站点 * 一致性级别来重试失败的请求。
除非技术支持指示您这样做,并且您了解使用此级别可能产生的后果,否则切勿强制使用 * 强站点 * 一致性级别来满足 PUT 存储分段合规性要求。 |
当一致性级别降低到 * 强站点 * 时, StorageGRID 保证更新后的合规性设置仅对站点中的客户端请求具有读写后一致性。这意味着,在所有站点和存储节点均可用之前, StorageGRID 系统可能会暂时为此存储分段设置多个不一致的设置。设置不一致可能导致意外和意外的行为。例如,如果您将某个存储分段置于合法保留状态并强制降低一致性级别,则某些数据中心站点上可能仍会继续使用存储分段先前的合规性设置(即合法保留)。因此,您认为处于合法保留状态的对象可能会在保留期限到期时被用户删除,或者如果启用了自动删除,也可以删除。
要强制使用 * 强站点 * 一致性级别,请重新发出 PUT 分段合规性请求,并包含 consistency Control
HTTP 请求标头,如下所示:
PUT /mybucket/?x-ntap-sg-compliance HTTP/1.1 Consistency-Control: strong-site
错误响应
-
如果未创建符合要求的存储分段,则响应的 HTTP 状态代码为
404 not found
。 -
如果请求中的
RetentionPeriodMinutes
小于存储分段的当前保留期限,则 HTTP 状态代码为400 bad request
。