设置文件库访问策略 (PUT access-policy) - 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 控制台中进行管理。它们提供存储成本分析、存储镜头、高级可选加密功能等功能。

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

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

描述

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

请求

语法

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

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 S3 Glacier 使用与用来对请求进行签名的凭证相关联的 AWS 账户 ID。如果您使用账户 ID,请勿在 ID 中包含任何连字符 ('-')。

请求参数

此操作不使用请求参数。

请求标头

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

请求正文

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

策略

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

类型:字符串

必需:是

响应

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

语法

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

响应标头

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

响应正文

此操作不返回响应正文。

错误

有关 Amazon S3 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 S3 Glacier (S3 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 的更多信息,请参阅以下内容: