设置文件库访问策略(PUT access-policy) - Amazon Glacier

此页面仅适用于使用文件库和 2012 年原始 REST API 的 Amazon Glacier 服务的现有客户。

如果您正在寻找归档存储解决方案,建议使用 Amazon S3 中的 Amazon Glacier 存储类别 S3 Glacier Instant Retrieval、S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive。要了解有关这些存储选项的更多信息,请参阅 Amazon Glacier 存储类别

从 2025 年 12 月 15 日起,Amazon Glacier(最初基于独立文件库的服务)将不再接受新客户,对现有客户不存在任何影响。Amazon Glacier 是一项独立服务,拥有自己的 API,可将数据存储在文件库中,与 Amazon S3 和 Amazon S3 Glacier 存储类别不同。在 Amazon Glacier 中,您现有的数据将确保安全,并且可以无限期地访问。无需进行迁移。对于低成本、长期的存档存储,AWS 建议使用 Amazon S3 Glacier 存储类别,该类别可通过基于 S3 存储桶的 API、完全的 AWS 区域可用性、更低的成本和 AWS 服务集成,提供卓越的客户体验。如果您希望加强功能,可以考虑使用我们的 AWS 将数据从 Amazon Glacier 文件库传输到 Amazon S3 Glacier 存储类别的解决方案指南,迁移到 Amazon S3 Glacier 存储类别。

设置文件库访问策略(PUT access-policy)

描述

此操作会为文件库配置一个访问策略并覆盖现有策略。要配置文件库访问策略,请向文件库的 PUT 子资源发送 access-policy 请求。您可以为每个文件库设置一个访问策略,该策略的大小最多为 20 KB。有关文件库访问策略的更多信息,请参阅文件库访问策略

请求

语法

要设置文件库访问策略,请向文件库的 PUT 子资源的 URI 发送 HTTP access-policy 请求,如以下语法示例所示。

PUT /AccountId/vaults/vaultName/access-policy HTTP/1.1 Host: glacier.Region.amazonaws.com Date: Date Authorization: SignatureValue Content-Length: Length x-amz-glacier-version: 2012-06-01 { "Policy": "string" }

注意

AccountId 值是拥有文件库的账户的 AWS 账户 ID。您可以指定 AWS 账户 ID,也可以选择指定“-”(连字符),在这种情况下,Amazon Glacier 使用与用来对请求进行签名的凭证相关联的 AWS 账户 ID。如果您使用账户 ID,请勿在 ID 中包含任何连字符(-)。

请求参数

此操作不使用请求参数。

请求标头

此操作仅使用所有操作通用的请求标头。有关通用请求标头的信息,请参阅通用请求标头

请求正文

请求正文中包含以下 JSON 字段。

Policy

以 JSON 字符串形式表示的文件库访问策略(使用“\”作为转义符)。

类型:字符串

是否必需:是

响应

作为响应,Amazon Glacier 会返回 204 No Content(如果接受了策略)。

语法

HTTP/1.1 204 No Content x-amzn-RequestId: x-amzn-RequestId Date: Date

响应标头

此操作仅使用大多数响应通用的响应标头。有关通用响应标头的信息,请参阅通用响应标头

响应正文

此操作不返回响应正文。

错误

有关 Amazon Glacier 异常和错误消息的信息,请参阅错误响应

示例

请求示例

以下示例将向文件库的 PUT 子资源的 URI 发送 HTTP access-policy 请求。Policy JSON 字符串使用“\”作为转义符。

PUT /-/vaults/examplevault/access-policy HTTP/1.1 Host: glacier.us-west-2.amazonaws.com x-amz-Date: 20170210T120000Z Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2 Content-Length: length x-amz-glacier-version: 2012-06-01 {"Policy":"{\"Version\":\"2012-10-17\", \"Statement\":[{\"Sid\":\"Define-owner-access-rights\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::999999999999:root\"},\"Action\":\"glacier:DeleteArchive\",\"Resource\":\"arn:aws:glacier:us-west-2:999999999999:vaults/examplevault\"}]}"}

响应示例

如果请求成功,Amazon Glacier(Amazon Glacier)会返回 HTTP 204 No Content,如以下示例中所示。

HTTP/1.1 204 No Content x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q Date: Wed, 10 Feb 2017 12:02:00 GMT

另请参阅

有关在特定语言的 Amazon SDK 中使用此 API 的更多信息,请参阅以下内容: