此页面仅适用于使用保管库的 S3 Glacier 服务的现有客户以及 2012 年以RESTAPI来的原始客户。
如果您正在寻找档案存储解决方案,我们建议您在亚马逊 S3、S3 Glacier 即时检索、S3 Glacier 灵活检索和 S3 Glacier Deep Archive Dee p Archive 中使用 S3 Glacier 存储类。要了解有关这些存储选项的更多信息,请参阅 Amazon S3 用户指南中的 S3 Glacier 存储类
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
设置文件库通知配置(设置通知配置)
描述
在 Amazon S3 Glacier (S3 Glacier) 中,检索档案和文件库清单是异步操作,您必须首先为这些操作启动任务,等到任务完成后,您才能下载任务输出。您可以将文件库配置为在这些任务完成时向 Amazon Simple Notification Service (Amazon SNS) 主题发布消息。您可以使用此操作来设置文件库中的通知配置。有关更多信息,请参阅在 Amazon S3 Glacier 中配置文件库通知。
要配置文件库通知,请向文件库的 notification-configuration
子资源发送设置请求。通知配置是特定于文件库的;因此,它也称为文件库子资源。请求应包括提供 Amazon Simple Notification Service (Amazon SNS) 主题的 JSON 文档,以及要求 S3 Glacier 向该主题发送通知的事件。
您可以配置文件库为以下文件库事件发布通知:
-
ArchiveRetrievalCompleted
— 为档案检索启动的任务完成 (启动 Job(POST作业)) 时,会发生此事件。已完成任务的状态可能为Succeeded
或Failed
。发送到 SNS 主题的通知是与从 描述任务(获取任务 ID) 返回的输出相同的输出。 -
InventoryRetrievalCompleted
— 为清单检索启动的任务完成 (启动 Job(POST作业)) 时,会发生此事件。已完成任务的状态可能为Succeeded
或Failed
。发送到 SNS 主题的通知是与从 描述任务(获取任务 ID) 返回的输出相同的输出。
Amazon SNS 主题必须向文件库授予允许向该主题发布通知的权限。
请求
要设置您文件库中的通知配置,请向文件库的 notification-configuration
子资源的 URI 发送设置请求。您可以在请求正文中指定配置。配置包括 Amazon SNS 主题名称以及向每个主题触发通知操作的一系列事件。
语法
PUT /
AccountId
/vaults/VaultName
/notification-configuration HTTP/1.1 Host: glacier.Region
.amazonaws.com Date:Date
Authorization:SignatureValue
x-amz-glacier-version: 2012-06-01 { "SNSTopic":String
, "Events":[String
, ...] }
注意
AccountId
值是拥有文件库的账户的 Amazon Web Services 账户 ID。您可以指定 Amazon Web Services 账户 ID,也可以选择指定“-
”(连字符),在这种情况下,Amazon S3 Glacier 使用与用来对请求进行签名的凭证相关联的 Amazon Web Services 账户 ID。如果您使用账户 ID,请勿在 ID 中包含任何连字符 ('-')。
请求参数
此操作不使用请求参数。
请求标头
此操作仅使用所有操作通用的请求头。有关通用请求头的信息,请参阅常见请求标头。
请求正文
请求正文中的 JSON 包含以下字段。
- 事件
-
要求 S3 Glacier 发送通知的一个或多个事件。
有效值:
ArchiveRetrievalCompleted
|InventoryRetrievalCompleted
必需:是
类型:数组
- SNSTopic
-
Amazon SNS 主题 ARN。有关更多信息,请参阅《Amazon Simple Notification Service 入门指南》中的 Amazon SNS 入门。
必需:是
类型:字符串
响应
作为响应,Amazon S3 Glacier (S3 Glacier) 返回 204 No Content
(如果接受了通知配置)。
语法
HTTP/1.1 204 No Content x-amzn-RequestId: x-amzn-RequestId Date: Date
响应标头
此操作仅使用所有操作通用的请求头。有关通用请求头的信息,请参阅常见请求标头。
响应正文
此操作不返回响应正文。
错误
有关 Amazon S3 Glacier 异常和错误消息的信息,请参阅错误响应。
示例
以下示例展示了如何配置文件库通知。
示例请求
以下请求设置了 examplevault
通知配置,以便将两个事件(ArchiveRetrievalCompleted
和 InventoryRetrievalCompleted
)发送到 Amazon SNS 主题 arn:aws:sns:us-west-2:012345678901:mytopic
。
PUT /-/vaults/examplevault/notification-policy HTTP/1.1 Host: glacier.us-west-2.amazonaws.com x-amz-Date: 20170210T120000Z x-amz-glacier-version: 2012-06-01 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2 { "Events": ["ArchiveRetrievalCompleted", "InventoryRetrievalCompleted"], "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic" }
响应示例
成功的响应会返回 204 No Content
。
HTTP/1.1 204 No Content x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q Date: Wed, 10 Feb 2017 12:00:00 GMT
相关部分
另请参阅
有关在特定语言的 Amazon SDK 中使用此 API 的更多信息,请参阅以下内容: