362
Amazon S3 Glacier Entwicklerhandbuch API-Version 2012-06-01

Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 GlacierEntwicklerhandbuch

API-Version 2012-06-01

Page 2: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier Entwicklerhandbuch

Amazon S3 Glacier: EntwicklerhandbuchCopyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's,in any manner that is likely to cause confusion among customers, or in any manner that disparages or discreditsAmazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may notbe affiliated with, connected to, or sponsored by Amazon.

Page 3: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier Entwicklerhandbuch

Table of ContentsWas ist Amazon S3 Glacier? ................................................................................................................ 1

Sind Sie neu bei S3 Glacier? ....................................................................................................... 1Datenmodell ............................................................................................................................... 2

Vault ................................................................................................................................. 2Archive .............................................................................................................................. 3Job ................................................................................................................................... 4Benachrichtigungskonfiguration ............................................................................................. 4

Unterstützte Operationen ............................................................................................................. 5Tresor-Operationen ............................................................................................................. 5Archivoperationen ............................................................................................................... 5Jobs ................................................................................................................................. 5

Zugriff auf Amazon S3 Glacier ...................................................................................................... 6Regionen und Endpunkte ..................................................................................................... 6

Erste Schritte ..................................................................................................................................... 7Schritt 1: Bevor Sie beginnen ....................................................................................................... 7

Einrichten eines AWS-Kontos ............................................................................................... 8Laden Sie das passende AWS SDK herunter. ....................................................................... 11

Schritt 2: Erstellen eines Tresors ................................................................................................. 11Schritt 3: Hochladen eines Archivs in einen Tresor ......................................................................... 13

Hochladen eines Archivs mit Java ....................................................................................... 14Hochladen eines Archivs mithilfe von .NET ........................................................................... 15

Schritt 4: Herunterladen eines Archivs aus einem Tresor ................................................................. 16Herunterladen eines Archivs mit Java .................................................................................. 17Herunterladen eines Archivs mit .NET .................................................................................. 18

Schritt 5: Löschen eines Archivs aus einem Tresor ........................................................................ 20Zugehörige Abschnitte ....................................................................................................... 20Löschen eines Archivs mit Java .......................................................................................... 20Löschen eines Archivs mit .NET .......................................................................................... 21Löschen eines Archivs mit AWS CLI .................................................................................... 22

Schritt 6: Löschen eines Tresors ................................................................................................. 24Wie geht es weiter? .................................................................................................................. 25

Arbeiten mit Tresoren ........................................................................................................................ 26Tresorvorgänge in S3 Glacier ..................................................................................................... 26

Erstellen und Löschen von Tresoren .................................................................................... 26Abrufen von Tresormetadaten ............................................................................................. 27Herunterladen eines Tresorinventars .................................................................................... 27Konfigurieren von Tresorbenachrichtigungen ......................................................................... 27

Erstellen eines Tresors .............................................................................................................. 28Erstellen eines Tresors mit Java ......................................................................................... 28Erstellen eines Tresors mit .NET ......................................................................................... 31Erstellen eines Tresors mithilfe von REST ............................................................................ 34Erstellen eines Tresors mit der Konsole ............................................................................... 34Erstellen eines Tresors mit der AWS CLI .............................................................................. 34

Abrufen von Tresormetadaten ..................................................................................................... 35Abrufen von Tresor-Metadaten mit Java ............................................................................... 36Abrufen von Tresor-Metadaten mit .NET ............................................................................... 38Abrufen von Tresormetadaten mithilfe von REST ................................................................... 39Abrufen von Tresor-Metadaten mit der AWS CLI ................................................................... 40

Herunterladen eines Tresorinventars ............................................................................................ 40Über das Inventar ............................................................................................................. 42Herunterladen einer Tresorinventur mit Java ......................................................................... 42Herunterladen eines Tresorinventars mit .NET ....................................................................... 47Herunterladen eines Tresorinventars mit REST ..................................................................... 52Herunterladen eines Tresorbestands mit der AWS CLI ............................................................ 53

API-Version 2012-06-01iii

Page 4: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier Entwicklerhandbuch

Konfigurieren von Tresorbenachrichtigungen ................................................................................. 55Allgemeine Konzepte ......................................................................................................... 55Konfigurieren von Tresorbenachrichtigungen mithilfe von Java ................................................. 56Konfigurieren von Tresorbenachrichtigungen mithilfe von .NET ................................................. 58Konfigurieren von Tresorbenachrichtigungen mithilfe der REST-API .......................................... 60Konfigurieren von Tresorbenachrichtigungen mithilfe der Konsole ............................................. 61

Löschen eines Tresors .............................................................................................................. 63Löschen eines Tresors mit Java .......................................................................................... 64Löschen eines Tresors mithilfe von .NET .............................................................................. 65Löschen eines Tresors mithilfe von REST ............................................................................ 66Löschen eines leeren Tresors mithilfe der Konsole ................................................................. 66Löschen eines Tresors mithilfe der AWS CLI ........................................................................ 66

Markieren von Tresoren ............................................................................................................. 69Markieren von Tresoren mit der Amazon S3 Glacier-Konsole ................................................... 69Markieren von Tresoren mit der Amazon S3 Glacier-API ......................................................... 70Zugehörige Abschnitte ....................................................................................................... 70

Vault Lock ............................................................................................................................... 70Übersicht über Tresorverriegelung ....................................................................................... 70Verriegeln eines Tresors mithilfe der API .............................................................................. 71

Arbeiten mit Archiven ........................................................................................................................ 73Archivoperationen ..................................................................................................................... 73

Hochladen eines Archivs .................................................................................................... 73Suchen eines Archivs ........................................................................................................ 74Herunterladen eines Archivs ............................................................................................... 74Löschen eines Archivs ....................................................................................................... 74Aktualisieren eines Archivs ................................................................................................. 74

Pflegen von clientseitigen Archivmetadaten ................................................................................... 74Hochladen eines Archivs ............................................................................................................ 75

Optionen zum Hochladen eines Archivs ............................................................................... 75Hochladen eines Archivs in einer einzigen Operation .............................................................. 76Hochladen von großen Archiven in Teilen ............................................................................. 82

Herunterladen eines Archivs ....................................................................................................... 90Abrufen von -Archiven ....................................................................................................... 91Herunterladen eines Archivs mit Java .................................................................................. 94Herunterladen eines Archivs mit .NET ................................................................................ 106Herunterladen eines Archivs mit der REST-API .................................................................... 117

Löschen eines Archivs ............................................................................................................. 117Löschen eines Archivs mit Java ........................................................................................ 118Löschen eines Archivs mit .NET ........................................................................................ 119Löschen eines Archivs mit REST ....................................................................................... 122Löschen eines Archivs mit AWS CLI .................................................................................. 122

Abfragen eines Archivs ............................................................................................................ 124Verwenden der AWS SDKs .............................................................................................................. 125

AWS SDKs, die S3 Glacier unterstützen ..................................................................................... 125AWS SDK-Bibliotheken für Java und .NET .................................................................................. 125

Was ist die Low-Level-&API? ............................................................................................ 126Was ist die High-Level-&API? ........................................................................................... 126Situationen für die Verwendung der High-Level- und der Low-Level-API ................................... 126

Verwendung von AWS SDK for Java ......................................................................................... 127Verwenden der Low-Level-API .......................................................................................... 127Verwenden der High-Level-API .......................................................................................... 128Ausführung von Java-Beispielen unter Verwendung von Eclipse ............................................. 128Festlegen des Endpunkts ................................................................................................. 129

Verwenden von AWS SDK für .NET ........................................................................................... 129Verwenden der Low-Level-API .......................................................................................... 130Verwenden der High-Level-API .......................................................................................... 130Ausführen der NET-Beispiele ............................................................................................ 131

API-Version 2012-06-01iv

Page 5: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier Entwicklerhandbuch

Festlegen des Endpunkts ................................................................................................. 131Sicherheit ....................................................................................................................................... 133

Datenschutz ........................................................................................................................... 133Datenverschlüsselung ...................................................................................................... 134Schlüsselverwaltung ........................................................................................................ 134Richtlinie für den Datenverkehr zwischen Netzwerken ........................................................... 134

Identitäts- und Zugriffsverwaltung ............................................................................................... 135Authentifizierung .............................................................................................................. 135Zugriffskontrolle ............................................................................................................... 136Übersicht über die Verwaltung von Zugriffsberechtigungen .................................................... 137Verwenden von identitätsbasierten Richtlinien (IAM-Richtlinien) .............................................. 141Verwenden ressourcenbasierter Richtlinien (Tresorrichtlinien) ................................................. 145Referenztabelle für Amazon S3 Glacier-API-Berechtigungen .................................................. 150

Protokollieren und überwachen .................................................................................................. 155Compliance-Validierung ............................................................................................................ 156Ausfallsicherheit ...................................................................................................................... 156Sicherheit der Infrastruktur ........................................................................................................ 158

VPC-Endpunkte .............................................................................................................. 158Abfragen von Archiven mit S3 Glacier Select ...................................................................................... 159

Voraussetzungen und Kontingente für S3 Glacier Select ............................................................... 159Wie kann ich Daten mit S3 Glacier Select abfragen? .................................................................... 160

S3 Glacier Select-Ausgabe .............................................................................................. 160Fehlerbehandlung .................................................................................................................... 161Weitere Infos .......................................................................................................................... 161

Richtlinien für den Datenabruf ........................................................................................................... 162Auswahl einer Amazon S3 Glacier-Richtlinie für den Datenabruf ..................................................... 162

Richtlinie „Free Tier Only” ................................................................................................. 163Richtlinie „Max Retrieval Rate” .......................................................................................... 163Keine Richtlinie für den Abruf von Daten ............................................................................ 163

Verwenden der Amazon S3 Glacier-Konsole zum Einrichten einer Richtlinie für den Datenabruf ........... 164Verwenden der Amazon S3 Glacier-API zum Einrichten einer Richtlinie für den Datenabruf ................. 164

Verwenden der REST-API von Amazon S3 Glacier zum Einrichten einer Richtlinie für denDatenabruf ..................................................................................................................... 164Verwenden der AWS-SDKs zum Einrichten einer Richtlinie für den Datenabruf .......................... 165

Markieren von -Ressourcen .............................................................................................................. 166Grundlagen des Markierens ...................................................................................................... 166Einschränkungen für Tags ........................................................................................................ 166Kosten mithilfe von Tags verfolgen ............................................................................................ 167Verwalten der Zugriffskontrolle mit Markieren .............................................................................. 167Zugehörige Abschnitte ............................................................................................................. 167

Prüfprotokollierung mit AWS CloudTrail .............................................................................................. 168Amazon S3 Glacier-Informationen in CloudTrail ........................................................................... 168Grundlagen zu Amazon S3 Glacier-Protokolldateieinträgen ............................................................ 169

API-Referenz .................................................................................................................................. 172Häufig verwendete Anforderungsheader ...................................................................................... 172Allgemeine Antwort-Header ....................................................................................................... 175Signieren von Anforderungen .................................................................................................... 175

Signatur-Berechnungsbeispiel ........................................................................................... 176Berechnen von Signaturen für Streaming-Operationen .......................................................... 178

Berechnen von Prüfsummen ..................................................................................................... 179Struktur-Hash-Beispiel 1: Hochladen eines Archivs in einer einzelnen Anfrage ........................... 180Struktur-Hash-Beispiel 2: Hochladen eines Archivs mit einem mehrteiligen Upload ..................... 181Berechnen des Struktur-Hashs einer Datei .......................................................................... 182Erhalten von Prüfsummen bei Daten-Download ................................................................... 188

Fehlermeldungen ..................................................................................................................... 190Beispiel 1: Beschreiben einer Auftragsanfrage mit einer Auftrags-ID, die nicht existiert ................ 191

API-Version 2012-06-01v

Page 6: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier Entwicklerhandbuch

Beispiel 2: Anfrage zum Auflisten von Aufträgen mit einem ungültigen Wert für denAnfrageparameter ............................................................................................................ 193

Tresor-Operationen .................................................................................................................. 193Abort Vault Lock ............................................................................................................. 194Add Tags To Vault .......................................................................................................... 196Create Vault ................................................................................................................... 199Complete Vault Lock ....................................................................................................... 201Delete Vault ................................................................................................................... 203Delete Vault Access Policy ............................................................................................... 205Delete Vault Notifications .................................................................................................. 207Describe Vault ................................................................................................................ 209Get Vault Access Policy ................................................................................................... 212Get Vault Lock ................................................................................................................ 215Get Vault Notifications ..................................................................................................... 218Initiate Vault Lock ........................................................................................................... 221List Tags For Vault .......................................................................................................... 224List Vaults ...................................................................................................................... 227Remove Tags From Vault ................................................................................................. 232Set Vault Access Policy ................................................................................................... 234Set Vault Notification Configuration .................................................................................... 236

Archivoperationen .................................................................................................................... 239Delete Archive ................................................................................................................ 240Upload Archive ............................................................................................................... 242

Operationen für mehrteiligen Upload .......................................................................................... 245Abort Multipart Upload ..................................................................................................... 246Abschließen eines mehrteiligen Uploads ............................................................................. 248Multipart-Upload initiieren ................................................................................................. 251Teile auflisten ................................................................................................................. 255List Multipart Uploads ...................................................................................................... 260Upload Part .................................................................................................................... 265

Auftragsoperationen ................................................................................................................. 269Describe Job .................................................................................................................. 269Get Job Output ............................................................................................................... 277Initiate Job ..................................................................................................................... 284Aufträge auflisten ............................................................................................................ 294

In Auftragsoperationen verwendete Datentypen ........................................................................... 300CSVInput ....................................................................................................................... 301CSVOutput ..................................................................................................................... 302Verschlüsselung .............................................................................................................. 303GlacierJobDescription ...................................................................................................... 304Grant ............................................................................................................................. 306Grantee ......................................................................................................................... 307InputSerialization ............................................................................................................. 308InventoryRetrievalJobInput ................................................................................................ 308jobParameters ................................................................................................................ 309OutputLocation ................................................................................................................ 311OutputSerialization .......................................................................................................... 311S3Location ..................................................................................................................... 312SelectParameters ............................................................................................................ 313

Datenabrufoperationen ............................................................................................................. 314Get Data Retrieval Policy ................................................................................................. 314List Provision Capacity ..................................................................................................... 317Purchase Provisioned Capacity ......................................................................................... 320Set Data Retrieval Policy .................................................................................................. 322

SQL-Referenz ................................................................................................................................. 326Der Befehl SELECT ................................................................................................................ 326

SELECT-Liste ................................................................................................................. 326

API-Version 2012-06-01vi

Page 7: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier Entwicklerhandbuch

FROM-Klausel ................................................................................................................ 326WHERE-Klausel .............................................................................................................. 330LIMIT-Klausel (nur Amazon S3 Select) ............................................................................... 330Attributzugriff .................................................................................................................. 330Groß-/Kleinschreibung bei Header-/Attributnamen ................................................................. 331Verwenden von reservierten Schlüsselwörtern als benutzerdefinierte Begriffe ............................ 332Skalare Ausdrücke .......................................................................................................... 333

Datentypen ............................................................................................................................. 333Datentypkonvertierungen .................................................................................................. 333Unterstützte Datentypen ................................................................................................... 333

Operators ............................................................................................................................... 334Logische Operatoren ....................................................................................................... 334Vergleichsoperatoren ....................................................................................................... 334Mustervergleichsoperatoren .............................................................................................. 334Mathematische Operatoren ............................................................................................... 335Rangfolge der Operatoren ................................................................................................ 335

Reservierte Schlüsselwörter ...................................................................................................... 335SQL-Funktionen ...................................................................................................................... 339

Aggregationsfunktionen (nur Amazon S3 Select) .................................................................. 339Konditionale Funktionen ................................................................................................... 340Konvertierungsfunktionen .................................................................................................. 341Datumsfunktionen ............................................................................................................ 342Funktionen für Zeichenfolgen ............................................................................................ 348

Dokumentverlauf ............................................................................................................................. 351Frühere Aktualisierungen .......................................................................................................... 351

AWS-Glossar .................................................................................................................................. 354................................................................................................................................................... ccclv

API-Version 2012-06-01vii

Page 8: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSind Sie neu bei S3 Glacier?

Was ist Amazon S3 Glacier?Amazon S3 Glacier ist eine sichere, dauerhafte und äußerst kostengünstige Amazon S3-Speicherklasse fürDatenarchivierung und langfristige Sicherung.

Mithilfe von S3 Glacier können Kunden ihre Daten zu einem günstigen Preis für Monate, Jahre odersogar Jahrzehnte speichern. S3 Glacier bietet den Kunden die Möglichkeit, ihren Verwaltungsaufwandfür den Betrieb und die Skalierung von Speicher auf AWS auszulagern. So müssen sie sich nicht mehrum Kapazitätsplanung, Hardware-Bereitstellung, Datenreplikation, Hardware-Fehlererkennung undWiederherstellung oder zeitintensive Hardware-Migrationen kümmern. Weitere Service-Merkmale undPreisinformationen finden Sie auf der Produktdetailseite zu S3 Glacier.

S3 Glacier ist eine der vielen verschiedenen Speicherklassen für Amazon S3. Für einen allgemeinenÜberblick über Amazon S3 -Kernkonzepte wie Buckets, Zugriffspunkte, Speicherklassen und Objektefinden Sie unter. Was ist Amazon S3 in der Entwicklerhandbuch für Amazon Simple Storage Service.

Themen• Sind Sie neu bei S3 Glacier? (p. 1)• Amazon S3 Glacier-Datenmodell (p. 2)• Unterstützte Operationen in S3 Glacier (p. 5)• Zugriff auf Amazon S3 Glacier (p. 6)

Sind Sie neu bei S3 Glacier?Wenn Sie S3 Glacier zum ersten Mal verwenden, empfehlen wir, die folgenden Abschnitte zu lesen.

• Was ist Amazon S3 Glacier—Der Rest dieses Abschnitts beschreibt das zugrunde liegende Datenmodell,die von ihm unterstützten Operationen und die AWS-SDKs, die Sie für die Interaktion mit dem Serviceverwenden können.

• Erste Schritte – Der Abschnitt Erste Schritte mit Amazon S3 Glacier (p. 7) führt Sie durch denProzess der Erstellung eines Tresors, des Hochladens von Archiven, der Erstellung von Aufträgen zumHerunterladen von Archiven, des Abrufens von Auftragsausgaben und des Löschens von Archiven.

Important

In S3 Glacier ist eine Konsole verfügbar, mit der Sie Tresore erstellen und löschen können.Alle anderen Interaktionen mit S3 Glacier erfordern jedoch, dass Sie die AWS Command LineInterface (AWS CLI) verwenden oder Code schreiben. Zum Hochladen von Daten (Fotos,Videos und andere Dokumente) müssen Sie beispielsweise entweder die AWS CLI verwendenoder Code schreiben, um direkt unter Verwendung der REST-API oder mit den AWS SDKsAnfragen zu senden. Weitere Informationen zur Verwendung von S3 Glacier mit der AWS CLIfinden Sie in der AWS CLI-Referenz für S3 Glacier. Rufen Sie AWS Command Line Interfaceauf, um die AWS CLI zu installieren.

Über den Abschnitt „Erste Schritte“ hinaus möchten Sie möglicherweise noch mehr über S3 Glacier-Operationen erfahren. In den folgenden Abschnitten finden Sie detaillierte Informationen zum Arbeitenmit S3 Glacier mithilfe der REST-API und der AWS Software Development Kits (SDKs) für Java undMicrosoft .NET:

• Verwenden der AWS SDKs mit Amazon S3 Glacier (p. 125)

API-Version 2012-06-011

Page 9: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatenmodell

Dieser Abschnitt bietet eine Übersicht über die AWS SDKs, die in den verschiedenen Codebeispielenin diesem Handbuch verwendet werden. Die Kenntnis dieses Abschnitts wird beim Lesen der folgendenAbschnitte hilfreich sein. Er enthält eine Übersicht über die High-Level- und die Low-Level-APIs, diediese SDKs bieten, wann sie zu verwenden sind, sowie allgemeine Schritte für das Ausführen von indiesem Handbuch bereitgestellten Codebeispielen.

• Arbeiten mit Tresoren in Amazon S3 Glacier (p. 26)

Dieser Abschnitt enthält Details zu verschiedenen Tresor-Operationen, wie z. B. das Erstellen einesTresors, das Abrufen von Tresormetadaten, das Abrufen von Tresorinventaren mithilfe von Aufträgenund das Konfigurieren von Tresorbenachrichtigungen. Zusätzlich zur Verwendung der S3 Glacier-Konsole können Sie die AWS SDKs für verschiedene Tresor-Operationen verwenden. Dieser Abschnittbeschreibt die API und stellt funktionierende Muster mit AWS SDK for Java und .NET zur Verfügung.

• Arbeiten mit Archiven in Amazon S3 Glacier (p. 73)

Dieser Abschnitt enthält Details zu Archivoperationen, wie z. B. das Hochladen eines Archivs in einereinzigen Abfrage oder das Hochladen großer Archive in Teilen mithilfe eines mehrteiligen Uploads. Indiesem Abschnitt wird auch das Erstellen von Jobs zum asynchronen Download von Archiven erläutert.Der Abschnitt liefert Beispiele, die das AWS SDK for Java und .NET verwenden.

• API-Referenz für Amazon S3 Glacier (p. 172)

S3 Glacier ist ein RESTful-Service. Dieser Abschnitt beschreibt die REST-Operationen, einschließlich derSyntax, und Beispielanfragen und -antworten für alle Operationen. Beachten Sie, dass die AWS SDK-Bibliotheken diese API umschließen und damit Ihre Programmieraufgaben vereinfachen.

Amazon Simple Storage Service (Amazon S3) unterstützt die Lebenszykluskonfiguration auf einem S3-Bucket, mit dem Sie Objekte zur Archivierung in die S3 Glacier-Speicherklasse übertragen können. Nacheiner Übertragung von Amazon S3-Objekten in die S3 Glacier-Speicherklasse verwendet Amazon S3intern S3 Glacier für eine dauerhafte Speicherung zu geringeren Kosten. Obwohl die Objekte in S3 Glaciergespeichert sind, bleiben sie Amazon S3-Objekte, die Sie in Amazon S3 verwalten. Sie haben direkt überS3 Glacier keinen Zugriff auf diese Objekte.

Weitere Informationen zur Amazon S3-Lebenszykluskonfiguration und zur Übertragung von Objekten in dieS3 Glacier-Speicherklasse, finden Sie unter Objektlebenszyklusverwaltung und Übergang von Objekten imEntwicklerhandbuch für Amazon Simple Storage Service..

Amazon S3 Glacier-DatenmodellZu den Kernkonzepten des Amazon S3 Glacier (S3 Glacier)-Datenmodells gehören Tresore und Archive.S3 Glacier ist ein REST-basierter Web-Service. Im Hinblick auf REST sind Tresore und Archive dieRessourcen. Darüber hinaus enthält das S3 Glacier-Datenmodell Ressourcen zur Konfiguration vonAufgaben und Benachrichtigungen. Diese Ressourcen vervollständigen die Kernressourcen.

Themen• Vault (p. 2)• Archive (p. 3)• Job (p. 4)• Benachrichtigungskonfiguration (p. 4)

VaultIn S3 Glacier ist ein Tresor ein Container für das Speichern von Archiven. Zum Erstellen eines Tresorsgeben Sie einen Namen an und wählen eine AWS-Region aus, in der er erstellt werden soll.

API-Version 2012-06-012

Page 10: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchArchive

Jede Tresor-Ressource verfügt über eine eindeutige Adresse. Die allgemeine Form ist:

https://<region-specific endpoint>/<account-id>/vaults/<vaultname>

Angenommen zum Beispiel, Sie erstellen einen Tresor (examplevault) in der Region USA West(Oregon). Dieser Tresor kann dann anhand des folgenden URIs adressiert werden:

https://glacier.us-west-2.amazonaws.com/111122223333/vaults/examplevault

In dem URI

• glacier.us-west-2.amazonaws.com identifiziert die Region USA West (Oregon).• ist 111122223333 die AWS-Konto-ID, die den Tresor besitzt.• bezieht sich vaults auf die Sammlung von Tresoren, die zu dem AWS-Konto gehören.• identifiziert examplevault einen bestimmten Tresor in der Tresorsammlung.

Ein AWS-Konto kann Tresore in jeder unterstützten AWS-Region erstellen. Eine Liste der unterstütztenAWS-Regionen finden Sie unter Zugriff auf Amazon S3 Glacier (p. 6). Innerhalb einer Region mussein Konto eindeutige Tresornamen verwenden. Ein AWS-Konto kann Tresore mit dem gleichen Namen inverschiedenen Regionen erstellen.

Sie können eine unbegrenzte Anzahl von Archiven in einem Tresor speichern. Je nach den AnforderungenIhres Unternehmens oder Ihrer Anwendung können Sie diese Archive in einem Tresor oder in mehrerenTresoren speichern.

S3 Glacier unterstützt verschiedene Tresor-Operationen. Beachten Sie, dass Tresor-Operationenregionsspezifisch sind. Wenn Sie beispielsweise einen Tresor erstellen, so erstellen Sie ihn in einerspezifischen Region. Wenn Sie eine Tresorliste anfordern, fordern Sie diese von einer bestimmten AWS-Region an, und die Ergebnisliste umfasst nur Tresore, die in dieser bestimmten Region erstellt wurden.

ArchiveEin Archiv kann aus beliebigen Daten bestehen, z. B: Fotos, Videos oder Dokumenten, und ist eineBasisspeichereinheit in S3 Glacier. Jedes Archiv besitzt eine eindeutige ID und optional eine Beschreibung.Beachten Sie, dass Sie die optionale Beschreibung nur beim Hochladen eines Archivs angeben. S3 Glacierweist dem Archiv eine ID zu, die in der AWS-Region, in der es gespeichert wird, eindeutig ist.

Jedes Archiv hat eine eindeutige Adresse. Die grundlegende Form sieht wie folgt aus:

https://<region-specific endpoint>/<account-id>/vaults/<vault-name>/archives/<archive-id>

Folgender URI ist ein Beispiel-URI eines Archivs, das im Tresor examplevault in Region USA West(Oregon) gespeichert ist:

https://glacier.us-west-2.amazonaws.com/111122223333/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId

Sie können eine unbegrenzte Anzahl von Archiven in einem Tresor speichern.

API-Version 2012-06-013

Page 11: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchJob

Darüber hinaus enthält das S3 Glacier-Datenmodell Ressourcen zur Konfiguration von Aufgaben undBenachrichtigungen. Diese Ressourcen ergänzen die Tresor- und Archiv-Kernressourcen.

JobMit S3 Glacier-Aufgaben können Sie eine Auswahlabfrage an ein Archiv senden, ein Archiv abrufen oderein Inventar des Tresors ermitteln. Wenn Sie eine Abfrage in einem Archiv ausführen, initiieren Sie einenAuftrag, der eine SQL-Abfrage und eine Liste von S3 Glacier Archivobjekte. S3 Glacier Select führt dieAbfrage vor Ort aus und schreibt die Ausgabeergebnisse in Amazon S3.

Das Abrufen eines Archivs und einer Tresorinventur (Archivliste) sind asynchrone Operationen in S3Glacier, in denen Sie zuerst eine Aufgabe initiieren und dann die Ausgabe der Aufgabe herunterladen,nachdem S3 Glacier die Aufgabe abgeschlossen hat.

Note

S3 Glacier bietet eine Archivlösung für die Speicherung kalter Daten. Wenn Ihre Anwendung eineSpeicherlösung benötigt, die Datenabruf in Echtzeit erfordert, sollten Sie die Nutzung von AmazonS3 in Betracht ziehen. Weitere Informationen finden Sie unter Amazon Simple Storage Service(Amazon S3).

Wenn Sie einen Auftrag zur Tresorinventur initiieren möchten, geben Sie einen Tresornamen an. FürAuswahl- und Archivabrufaufträge müssen Sie sowohl den Tresornamen als auch die Archiv-ID angeben.Sie können optional auch eine Beschreibung des Auftrags angeben, um diesen einfacher identifizieren zukönnen.

Sowohl die Aufträge zum Auswählen und Abrufen von Archiven als auch die zur Tresorinventur sindeinem Tresor zugeordnet. Ein Tresor kann jederzeit mehrere Aufträge in Bearbeitung haben. Wenn Sieeine Aufgabenanfrage senden (eine Aufgabe initiieren), gibt S3 Glacier eine Aufgaben-ID zurück, um dieAufgabe nachzuverfolgen. Jeder Auftrag wird eindeutig identifiziert durch einen URI der Form:

https://<region-specific endpoint>/<account-id>/vaults/<vault-name>/jobs/<job-id>

Nachfolgend finden Sie ein Beispiel für einen Auftrag, der einem Tresor examplevault zugeordnet ist.

https://glacier.us-west-2.amazonaws.com/111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID

Für jede Aufgabe pflegt S3 Glacier Informationen wie Aufgabentyp, Beschreibung, Erstellungsdatum,Abschlussdatum und Aufgabenstatus. Sie können Informationen über einen bestimmten Auftrag oder eineListe aller Aufträge, die einem Tresor zugeordnet sind, abrufen. Die Liste von Aufgaben, die S3 Glacierzurückgibt, umfasst alle Aufgaben, die in Bearbeitung sind oder kürzlich beendet wurden.

BenachrichtigungskonfigurationDa die Ausführung von Aufgaben Zeit in Anspruch nimmt, unterstützt S3 Glacier einenBenachrichtigungsmechanismus, der Sie benachrichtigt, wenn eine Aufgabe abgeschlossen ist.Sie können einen Tresor so konfigurieren, dass er eine Benachrichtigung an ein Amazon SimpleNotification Service (Amazon SNS)-Thema sendet, wenn Aufträge abgeschlossen sind. Sie können in derBenachrichtigungskonfiguration ein SNS-Thema pro Tresor angeben.

S3 Glacier speichert die Benachrichtigungskonfiguration als JSON-Dokument. Es folgt ein Beispiel für eineTresorbenachrichtigungskonfiguration:

API-Version 2012-06-014

Page 12: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchUnterstützte Operationen

{ "Topic": "arn:aws:sns:us-west-2:111122223333:mytopic", "Events": ["ArchiveRetrievalCompleted", "InventoryRetrievalCompleted"] }

Beachten Sie, dass Benachrichtigungskonfigurationen Tresoren zugeordnet sind. Sie können eine für jedenTresor haben. Jede Benachrichtigungskonfigurations-Ressource wird eindeutig identifiziert durch einen URIder Form:

https://<region-specific endpoint>/<account-id>/vaults/<vault-name>/notification-configuration

S3 Glacier unterstützt Operationen zum Einrichten, Abrufen und Löschen einerBenachrichtigungskonfiguration. Wenn Sie eine Benachrichtigungskonfiguration löschen, werden keineBenachrichtigungen gesendet, wenn eine Datenabruf-Operation am Tresor abgeschlossen ist.

Unterstützte Operationen in S3 GlacierAmazon S3 Glacier (S3 Glacier) unterstützt eine Reihe von Operationen für die Arbeit mit Tresoren undArchiven (siehe Amazon S3 Glacier-Datenmodell (p. 2)). Von allen unterstützten Operationen sind nurfolgende asynchron:

• Abrufen eines Archivs• Abrufen eines Tresorinventars (Liste von Archiven)

Diese Operationen erfordern, dass Sie zuerst einen Auftrag initiieren und dann die Auftragsausgabeherunterladen. In den folgenden Abschnitten werden die in S3 Glacier verfügbaren Operationenzusammengefasst:

Tresor-OperationenS3 Glacier stellt Operationen zum Erstellen und Löschen von Tresoren zur Verfügung. Sie können eineTresorbeschreibung für einen bestimmten Tresor oder für alle Tresore in einer AWS-Region abrufen.Die Tresorbeschreibung enthält Informationen wie z. B. Erstellungsdatum, Anzahl der Archive im Tresor,von allen Archiven im Tresor verwendete Gesamtgröße in Bytes und das Datum der Erstellung derTresorinventur durch S3 Glacier. S3 Glacier stellt auch Operationen zum Einrichten, Abrufen und Löscheneiner Benachrichtigungskonfiguration für den Tresor bereit. Weitere Informationen finden Sie im Arbeitenmit Tresoren in Amazon S3 Glacier (p. 26).

ArchivoperationenS3 Glacier stellt Operationen für Sie bereit, um Archive hochzuladen und zu löschen. Sie können einbestehendes Archiv nicht aktualisieren, Sie müssen das bestehende Archiv löschen und ein neues Archivhochladen. Beachten Sie, dass S3 Glacier jedes Mal, wenn Sie ein Archiv hochladen, eine neue Archiv-IDgeneriert. Weitere Informationen finden Sie im Arbeiten mit Archiven in Amazon S3 Glacier (p. 73).

JobsSie können eine S3 Glacier-Aufgabe initiieren, um eine Auswahlabfrage an ein Archiv zu senden, ein Archivabzurufen oder ein Inventar des Tresors zu ermitteln.

API-Version 2012-06-015

Page 13: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchZugriff auf Amazon S3 Glacier

Im Folgenden sind die möglichen S3 Glacier-Aufgabentypen aufgeführt:

• select – Eine Auswahlabfrage für ein Archiv ausführen.

Weitere Informationen finden Sie im Abfragen von Archiven mit S3 Glacier Select (p. 159).• archive-retrieval – Ein Archiv abrufen.

Weitere Informationen finden Sie im Herunterladen eines Archivs in Amazon S3 Glacier (p. 90).• inventory-retrieval – Ein Tresorinventar erstellen.

Weitere Informationen finden Sie im Herunterladen eines Tresorinventars in Amazon S3Glacier (p. 40).

Zugriff auf Amazon S3 GlacierBei Amazon S3 Glacier (S3 Glacier) handelt es sich um einen RESTful-Webservice, der HTTPund HTTPS als Serialisierungsformat für den Transport und JSON (JavaScript Object Notation) alsSerialisierungsformat für Meldungen verwendet. Vom Anwendungscode können Anforderungen direkt andie API des S3 Glacier-Webservice gesendet werden. Bei direkter Verwendung der REST-API müssenSie den benötigten Code zum Signieren und Authentifizieren der Anforderungen schreiben. WeitereInformationen zur API finden Sie unter API-Referenz für Amazon S3 Glacier (p. 172).

Alternativ können Sie die Anwendungsentwicklung mithilfe der AWS SDKs, die Aufrufe der S3Glacier-REST-API umschließen, vereinfachen. Sie geben Ihre Anmeldeinformationen an und dieseBibliotheken übernehmen die Authentifizierung und signieren die Anforderungen. Weitere Informationenzur Verwendung von AWS SDKs finden Sie unter Verwenden der AWS SDKs mit Amazon S3Glacier (p. 125).

S3 Glacier bietet außerdem eine Konsole. Sie können mit der Konsole Tresore erstellen und löschen. AlleArchivierungs- und Auftrags-Operationen erfordern jedoch, dass Sie Code schreiben und Anfragen stellen,indem Sie entweder die REST-API direkt oder die AWS SDK Wrapper-Bibliotheken verwenden. Zugriff aufdie S3 Glacier-Konsole erhalten Sie über S3 Glacier-Konsole.

Regionen und EndpunkteSie erstellen einen Tresor in einer bestimmten AWS-Region. Sie senden Ihre S3 Glacier-Anfragen immeran einen Endpunkt, der für eine AWS-Region spezifisch ist. Die Liste der von S3 Glacier unterstütztenAWS-Regionen finden Sie unter Regionen und Endpunkte in der Allgemeinen AWS-Referenz.

API-Version 2012-06-016

Page 14: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSchritt 1: Bevor Sie beginnen

Erste Schritte mit Amazon S3 GlacierBehälter, in denen Archive gespeichert werden, gelten in Amazon S3 Glacier (S3 Glacier) als Tresoreund ein Archiv ist jedes Objekt (z. B. ein Foto, Video oder Dokument), das Sie in einem Tresor speichern.Archive sind die Grundeinheit für das Speichern in S3 Glacier. Bei dieser einführenden Übung haben SieGelegenheit, sich mit den grundlegenden S3 Glacier-Vorgängen für Tresor- und Archivressourcen vertrautzu machen, die im Abschnitt Amazon S3 Glacier-Datenmodell (p. 2) beschrieben werden.

Die ersten Schritte bestehen darin, dass Sie einen Tresor erstellen, ein Archiv hochladen undherunterladen und das Archiv und den Tresor abschließend löschen. Alle diese Vorgänge könnenprogrammatisch ausgeführt werden. Im Rahmen der Übung „Erste Schritte“ nutzen Sie die S3 Glacier-Verwaltungskonsole zum Erstellen und Löschen eines Tresors. Das Hochladen und Herunterladen einesArchivs erfolgt bei dieser Einführung jedoch mit den AWS Software Development Kits (SDKs) für Java undder .NET High-Level-API. Die High-Level-API bietet einen vereinfachten Programmierungsansatz für dasArbeiten mit S3 Glacier. Weitere Informationen zu diesen APIs finden Sie unter Verwenden der AWS SDKsmit Amazon S3 Glacier (p. 125).

Important

S3 Glacier bietet außerdem eine Managementkonsole. Wie in dieser Übung „Erste Schritte“gezeigt, können Sie die Konsole verwenden, um Tresore zu erstellen und zu löschen. Alleanderen Interaktionen mit S3 Glacier erfordern jedoch, dass Sie die AWS Command Line Interface(CLI) verwenden oder Code schreiben. Zum Hochladen von Daten (Fotos, Videos und andereDokumente) müssen Sie beispielsweise entweder die AWS CLI verwenden oder Code schreiben,um direkt unter Verwendung der REST-API oder mit den AWS SDKs Anfragen zu senden.Weitere Informationen zur Verwendung von S3 Glacier mit der AWS CLI finden Sie in der AWSCLI-Referenz für S3 Glacier. Rufen Sie AWS Command Line Interface auf, um die AWS CLI zuinstallieren.

Die Übung „Erste Schritte“ enthält Codebeispiele in Java und C#, die Sie zum Hochladen undHerunterladen eines Archivs verwenden können. Der letzte Abschnitt dieser Einführung beschreibt, wo Sieweitere Informationen für Entwickler über das Arbeiten mit S3 Glacier erhalten.

Themen• Schritt 1: Bevor Sie mit Amazon S3 Glacier beginnen (p. 7)• Schritt 2: Erstellen eines Tresors in Amazon S3 Glacier (p. 11)• Schritt 3: Hochladen eines Archivs in einen Tresor in Amazon S3 Glacier (p. 13)• Schritt 4: Herunterladen eines Archivs aus einem Tresor in Amazon S3 Glacier (p. 16)• Schritt 5: Löschen eines Archivs aus einem Tresor in Amazon S3 Glacier (p. 20)• Schritt 6: Löschen eines Tresors in Amazon S3 Glacier (p. 24)• Wie geht es weiter? (p. 25)

Schritt 1: Bevor Sie mit Amazon S3 Glacierbeginnen

Sie können mit dieser Übung erst beginnen, nachdem Sie ein AWS-Konto eingerichtet haben (sofern Sienoch nicht über ein Konto verfügen). Laden Sie dann eines der AWS Software Development Kits (SDKs)herunter. In den folgenden Abschnitten finden Sie entsprechende Anweisungen.

API-Version 2012-06-017

Page 15: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchEinrichten eines AWS-Kontos

Themen• Einrichten eines AWS-Kontos und eines Administratorbenutzers (p. 8)• Laden Sie das passende AWS SDK herunter. (p. 11)

Important

In Amazon S3 Glacier (S3 Glacier) ist eine Managementkonsole verfügbar, mit der Sie Tresoreerstellen und löschen können. Alle anderen Interaktionen mit S3 Glacier erfordern jedoch, dassSie die AWS Command Line Interface (CLI) verwenden oder Code schreiben. Zum Hochladen vonDaten (Fotos, Videos und andere Dokumente) müssen Sie beispielsweise entweder die AWS CLIverwenden oder Code schreiben, um direkt unter Verwendung der REST-API oder mit den AWSSDKs Anfragen zu senden. Weitere Informationen zur Verwendung von S3 Glacier mit der AWSCLI finden Sie in der AWS CLI-Referenz für S3 Glacier. Rufen Sie AWS Command Line Interfaceauf, um die AWS CLI zu installieren.

Einrichten eines AWS-Kontos und einesAdministratorbenutzersFalls noch nicht geschehen, müssen Sie ein AWS-Konto anlegen und einen Administrator-Benutzer imKonto anlegen.

Folgen Sie den Anweisungen in den folgenden Themen, um die Konfiguration abzuschließen:

Einrichten eines AWS-Kontos und Erstellen einesAdministratornutzersRegistrieren bei AWS

Wenn Sie sich bei Amazon Web Services (AWS) anmelden, wird Ihr AWS-Konto automatisch für alleServices in AWS registriert, einschließlich S3 Glacier. Berechnet werden Ihnen aber nur die Services, dieSie nutzen. Weitere Informationen zu den S3 Glacier-Nutzungsgebühren finden Sie auf der Amazon S3Glacier-Produktseite.

Wenn Sie bereits über ein AWS-Konto verfügen und Sie einen IAM-Benutzer für das Konto erstellt haben,wechseln Sie zur nächsten Aufgabe. Wenn Sie kein AWS-Konto haben, befolgen Sie diese Schritte zumErstellen eines Kontos.

So erstellen Sie ein Amazon-Konto

1. Öffnen Sie https://portal.aws.amazon.com/billing/signup.2. Folgen Sie den Onlineanweisungen.

Der Anmeldeprozess beinhaltet auch einen Telefonanruf und die Eingabe eines Verifizierungscodesüber die Telefontastatur.

Notieren Sie sich die ID Ihres AWS-Kontos. Sie benötigen sie im nächsten Schritt.

Erstellen eines IAM-Benutzers

Wenn Sie in AWS auf Services wie S3 Glacier zugreifen, müssen Sie Anmeldeinformationen angeben.So kann der Service ermitteln, ob Sie über die notwendigen Berechtigungen für den Zugriff auf seineRessourcen verfügen. Für die Konsole müssen Sie Ihr Passwort eingeben. Sie können für Ihr AWS-Konto

API-Version 2012-06-018

Page 16: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchEinrichten eines AWS-Kontos

Zugriffsschlüssel erstellen, um auf die AWS CLI oder die API zuzugreifen. Wir raten Ihnen jedoch davonab, mittels der Anmeldeinformationen für Ihr AWS-Konto auf AWS zuzugreifen. Stattdessen empfehlen wir,AWS Identity and Access Management (IAM) zu verwenden. Erstellen Sie einen IAM-Benutzer und fügenSie den Benutzer zu einer IAM-Gruppe mit Administrator-Berechtigungen hinzu. Anschließend gewährenSie dem von Ihnen erstellten IAM-Benutzer administrative Berechtigungen. Danach können Sie mithilfeeiner speziellen URL und der Anmeldeinformationen des IAM-Benutzers auf AWS zugreifen.

Wenn Sie sich zwar bei AWS angemeldet, aber für sich selbst keinen IAM-Benutzer erstellt haben, könnenSie mithilfe der IAM-Konsole einen Benutzer erstellen.

Für die Erste-Schritte-Beispiele in diesem Handbuch wird davon ausgegangen, dass ein Benutzer mitAdministratorrechten vorhanden ist.

So erstellen Sie einen Administratorbenutzer für sich selbst und fügen ihn einerAdministratorengruppe hinzu (Konsole)

1. Melden Sie sich bei der IAM-Konsole als Kontobesitzer an, indem Sie Root-Benutzer auswählen unddie E-Mail-Adresse Ihres AWS-Kontos eingeben. Geben Sie auf der nächsten Seite Ihr Passwort ein.

Note

Wir empfehlen ausdrücklich, die bewährten Verfahren mithilfe des AdministratorIAM-Benutzers unten zu verwenden und die Anmeldeinformationen des Stammbenutzers aneinem sicheren Ort abzulegen. Melden Sie sich als Stammbenutzer an, um einige Konto- undService-Verwaltungsaufgaben durchzuführen.

2. Wählen Sie im Navigationsbereich Users und dann Add User aus.3. Geben Sie unter Benutzername Administrator als Benutzernamen ein.4. Aktivieren Sie das Kontrollkästchen neben AWS Management Console access (Konsolenzugriff).

Wählen Sie dann Custom password (Benutzerdefiniertes Passwort) aus und geben Sie danach Ihrneues Passwort in das Textfeld ein.

5. (Optional) Standardmäßig erfordert AWS, dass der neue Benutzer bei der ersten Anmeldung ein neuesPasswort erstellt. Sie können das Kontrollkästchen neben User must create a new password at nextsign-in (Benutzer muss bei der nächsten Anmeldung ein neues Passwort erstellen) deaktivieren, umdem neuen Benutzer zu ermöglichen, sein Kennwort nach der Anmeldung zurückzusetzen.

6. Wählen Sie Next: Permissions aus.7. Wählen Sie unter Set permissions (Berechtigungen festlegen) die Option Add user to group (Benutzer

der Gruppe hinzufügen) aus.8. Wählen Sie Create group (Gruppe erstellen) aus.9. Geben Sie im Dialogfeld Create group (Gruppe erstellen) unter Group name (Gruppenname)

Administrators ein.10. Wählen Sie Filter policies (Richtlinien filtern) und anschließend AWS-managed job function (AWS-

verwaltete Auftragsfunktion) aus, um den Tabelleninhalt zu filtern.11. Aktivieren Sie in der Richtlinienliste das Kontrollkästchen AdministratorAccess. Wählen Sie dann

Create group aus.

Note

Sie müssen den Zugriff der IAM-Benutzer und -Rollen auf die Fakturierung aktivieren, bevorSie die AdministratorAccess-Berechtigungen verwenden können, um auf die AWS Billingand Cost Management-Konsole zuzugreifen. Befolgen Sie hierzu die Anweisungen in Schritt 1des Tutorials zum Delegieren des Zugriffs auf die Abrechnungskonsole.

12. Kehren Sie zur Gruppenliste zurück und aktivieren Sie das Kontrollkästchen der neuen Gruppe.Möglicherweise müssen Sie Refresh auswählen, damit die Gruppe in der Liste angezeigt wird.

13. Wählen Sie Weiter: Tags aus.

API-Version 2012-06-019

Page 17: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchEinrichten eines AWS-Kontos

14. (Optional) Fügen Sie dem Benutzer Metadaten hinzu, indem Sie Tags als Schlüssel-Wert-Paareanfügen. Weitere Informationen zur Verwendung von Tags in IAM finden Sie unter Tagging von IAM-Entitäten im IAM-Benutzerhandbuch.

15. Wählen Sie Next: Review aus, damit die Liste der Gruppenmitgliedschaften angezeigt wird, die demneuen Benutzer hinzugefügt werden soll. Wenn Sie bereit sind, fortzufahren, wählen Sie Create user(Benutzer erstellen) aus.

Mit diesen Schritten können Sie weitere Gruppen und Benutzer erstellen und Ihren Benutzern Zugriffauf Ihre AWS-Kontoressourcen gewähren. Weitere Informationen dazu, wie Sie die Berechtigungeneines Benutzers auf bestimmte AWS-Ressourcen mithilfe von Richtlinien beschränken, finden Sie unterZugriffsverwaltung und Beispielrichtlinien.

So melden Sie sich als neuer IAM-Benutzer an

1. Melden Sie sich bei der AWS Management Console ab.2. Verwenden Sie das folgende URL-Format zum Anmelden an der Konsole:

https://aws_account_number.signin.aws.amazon.com/console/

Die aws_account_number ist Ihre AWS-Konto-ID ohne Bindestrich. Wenn beispielsweise Ihre AWS-ID 1234-5678-9012 lautet, ist Ihre AWS-Kontonummer 123456789012: Weitere Informationendarüber, wie Sie Ihre Kontonummer finden, finden Sie unter Ihre AWS-Konto-ID und der dazugehörigeAlias in der IAM-Benutzerhandbuch.

3. Geben Sie den IAM-Benutzernamen und das von Ihnen soeben erstellte Passwort ein. Nachdem Siesich angemeldet haben, wird in der Navigationsleiste your_user_name @ your_aws_account_idangezeigt.

Wenn Sie nicht möchten, dass die URL für Ihre Anmeldeseite Ihre AWS-Konto-ID enthält, können Sie einenKonto-Alias erstellen.

So erstellen oder entfernen Sie einen Konto-Alias

1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

2. Wählen Sie im Navigationsbereich Dashboard aus.3. Suchen Sie den Anmeldelink für IAM-Benutzer.4. Um einen Alias zu erstellen, klicken Sie auf Customize (Anpassen), geben Sie den gewünschten

Namen für den Alias ein und klicken Sie dann auf Yes, Create (Ja, erstellen).5. Um den Alias zu löschen, wählen Sie Customize (Anpassen) und dann Yes, Delete (Ja, löschen). Die

Anmelde-URL mit Ihrer AWS-Konto-ID wird wiederhergestellt.

Nach dem Erstellen eines Konto-Alias verwenden Sie die folgende URL, um sich anzumelden:

https://your_account_alias.signin.aws.amazon.com/console/

Um für Ihr Konto den Anmelde-Link für IAM-Benutzer zu prüfen, öffnen Sie die IAM-Konsole, und prüfenSie auf dem Dashboard den Link unter IAM users sign-in link: (Anmelde-Link für IAM-Benutzer).

Weitere Informationen zu IAM finden Sie unter:

• AWS Identity and Access Management (IAM)• Erste Schritte• IAM-Benutzerhandbuch

API-Version 2012-06-0110

Page 18: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLaden Sie das passende AWS SDK herunter.

Weitere Informationen über die Verwendung von IAM mit S3 Glacier finden Sie unter Identitäts- undZugriffsverwaltung in Amazon S3 Glacier (p. 135).

Laden Sie das passende AWS SDK herunter.Für die Übung „Erste Schritte“ ist es erforderlich, dass Sie die zu verwendende Programmierspracheauswählen und das passende AWS SDK für Ihre Entwicklungsplattform herunterladen.

Die Übung „Erste Schritte“ enthält Beispiele in Java und C#.

Herunterladen von AWS SDK for JavaSie benötigen AWS SDK for Java, um die Java-Beispiele in diesem Entwicklerhandbuch zu testen. Für dasHerunterladen stehen Ihnen die folgenden Optionen zur Verfügung:

• Wenn Sie Eclipse verwenden, können Sie AWS Toolkit for Eclipse über die Aktualisierungswebsite http://aws.amazon.com/eclipse/ herunterladen und installieren. Weitere Informationen finden Sie unter AWSToolkit for Eclipse.

• Wenn Sie eine andere IDE zum Erstellen Ihrer Anwendung verwenden, laden Sie AWS SDK for Javaherunter.

Herunterladen von AWS SDK für .NETSie benötigen AWS SDK für .NET, um die C#-Beispiele in diesem Entwicklerhandbuch zu testen. Für dasHerunterladen stehen Ihnen die folgenden Optionen zur Verfügung:

• Wenn Sie Visual Studio verwenden, können Sie sowohl AWS SDK für .NET als auch AWS Toolkit forVisual Studio installieren. Das Toolkit stellt AWS Explorer für Visual Studio und Projektvorlagen bereit,die Sie für Ihre Entwicklungsarbeiten verwenden können. Um AWS SDK für .NET herunterzuladen,wechseln Sie zu http://aws.amazon.com/sdkfornet. Standardmäßig wird durch das Installationsskriptsowohl die AWS SDK als auch AWS Toolkit for Visual Studio installiert. Unter Benutzerhandbuch fürAWS Toolkit for Visual Studio erfahren Sie mehr über das Toolkit.

• Wenn Sie eine andere IDE zum Erstellen Ihrer Anwendung nutzen, können Sie den für den vorherigenSchritt bereitgestellten Link verwenden und nur AWS SDK für .NET installieren.

Schritt 2: Erstellen eines Tresors in Amazon S3Glacier

Ein Tresor ist ein Container für das Speichern von Archiven. Der erste Schritt erfordert, dass Sie einenTresor in einer der unterstützten AWS-Regionen erstellen. Bei dieser Übung „Erste Schritte“ erstellenSie einen Tresor in der Region USA West (Oregon). Die Liste der von Amazon S3 Glacier (S3 Glacier)unterstützten AWS-Regionen finden Sie unter Regionen und Endpunkte in der Allgemeinen AWS-Referenz.

Sie können Tresore programmatisch oder mit der S3 Glacier-Konsole erstellen. In diesem Abschnitterstellen wir einen Tresor über die Konsole. In einem späteren Schritt laden Sie das Archiv in einen Tresorhoch.

So erstellen Sie einen Tresor

1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die S3 Glacier-Konsole unterhttps://console.aws.amazon.com/glacier/.

API-Version 2012-06-0111

Page 19: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSchritt 2: Erstellen eines Tresors

2. Wählen Sie in der Regionsauswahl eine AWS-Region aus.

Bei dieser Übung „Erste Schritte“ verwenden wir die Region USA West (Oregon).3. Wenn Sie S3 Glacier zum ersten Mal verwenden, klicken Sie auf Get started (Erste Schritte).

(Anderenfalls klicken Sie auf Create Vault (Tresor erstellen.)

4. Geben Sie examplevault als Namen für den Tresor in das Feld Vault Name (Tresorname) ein undklicken Sie auf Next Step (Nächster Schritt).

Für die Bezeichnung von Tresoren gelten bestimmte Richtlinien. Weitere Informationen finden Sieunter Erstellen eines Tresors in Amazon S3 Glacier (p. 28).

5. Wählen Sie Do not enable notifications (Benachrichtigungen nicht aktivieren). Bei dieserEinstiegsübung müssen Sie keine Benachrichtigungen für den Tresor konfigurieren.

Sie können festlegen, dass Benachrichtigungen an Sie oder Ihre Anwendung gesendet werden, sobaldbestimmte S3 Glacier-Aufgaben abgeschlossen sind. Wählen Sie Enable notifications and create anew SNS topic (Benachrichtigungen aktivieren und ein neues SNS-Thema erstellen) oder Enablenotifications and use an existing SNS topic (benachrichtigungen aktivieren und ein bestehendes SNS-Thema verwenden), um Amazon Simple Notification Service (Amazon SNS)-Benachrichtigungeneinzurichten. In den folgenden Schritten laden Sie zuerst ein Archiv hoch. Anschließend laden Sie esmithilfe der High-Level-API des AWS SDK for Java herunter. Wenn Sie die High-Level-API verwenden,ist es nicht notwendig, eine Tresorbenachrichtigung zu konfigurieren, um Daten abzurufen.

API-Version 2012-06-0112

Page 20: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSchritt 3: Hochladen eines Archivs in einen Tresor

6. Wenn die AWS-Region und der Tresorname korrekt sind, klicken Sie auf Submit (Absenden).

7. Ihr neuer Tresor wird auf der Seite S3 Glacier Vaults (&GLshort;-Tresore) aufgeführt.

Schritt 3: Hochladen eines Archivs in einen Tresorin Amazon S3 Glacier

In diesem Schritt laden Sie ein Beispielarchiv in den Tresor hoch, den Sie im vorherigen Schritt erstellthaben (siehe Schritt 2: Erstellen eines Tresors in Amazon S3 Glacier (p. 11)). Klicken Sie am Endedieses Abschnitts auf einen der Links, der der von Ihnen verwendeten Entwicklungsplattform entspricht.

Important

Jeder Archivvorgang (Hochladen, Herunterladen oder Löschen) erfordert, dass SieAWS Command Line Interface (CLI) verwenden oder Code schreiben. Es steht keineKonsolenunterstützung für Archivvorgänge zur Verfügung. Zum Hochladen von Daten (Fotos,Videos und andere Dokumente) müssen Sie beispielsweise entweder die AWS CLI verwendenoder Code schreiben, um direkt unter Verwendung der REST-API oder mit den AWS SDKsAnfragen zu senden. Informationen zum Installieren der AWS CLI finden Sie unter AWSCommand Line Interface. Weitere Informationen zur Verwendung von Amazon S3 Glacier (S3Glacier) mit der AWS CLI finden Sie in der AWS CLI-Referenz für S3 Glacier. Beispiele für die

API-Version 2012-06-0113

Page 21: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs mit Java

Verwendung der AWS CLI zum Hochladen von Archiven in S3 Glacier finden Sie unter Verwendenvon S3 Glacier mit der AWS Command Line Interface.

Als Archiv wird jedes beliebige Objekt (z. B. ein Foto, Video oder Dokument) bezeichnet, das Sie in einemTresor speichern. Es ist eine Basiseinheit der Speicherung in S3 Glacier. Sie können ein Archiv mittelseiner einzigen Anforderung hochladen. Für große Archive bietet S3 Glacier eine API für den mehrteiligenUpload, mit der Sie Archive in mehreren Teilen hochladen können. In diesem einführenden Abschnitt ladenSie ein Musterarchiv mittels einer einzigen Anforderung hoch. Bei dieser Übung geben Sie eine Dateikleineren Umfangs an. Für größere Dateien ist ein mehrteiliger Upload angemessen. Weitere Informationenfinden Sie unter Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82).

Themen• Hochladen eines Archivs mithilfe des AWS SDK for Java in einen Tresor in Amazon S3

Glacier (p. 14)• Hochladen eines Archivs mithilfe des AWS SDK für .NET in einen Tresor in Amazon S3

Glacier (p. 15)

Hochladen eines Archivs mithilfe des AWS SDK forJava in einen Tresor in Amazon S3 GlacierIm folgenden Java-Codebeispiel wird die High-Level-API von AWS SDK for Java zum Hochladen einesBeispielarchivs in den Tresor verwendet. Beachten Sie im Codebeispiel Folgendes:

• Im Beispiel wird eine Instance der AmazonGlacierClient-Klasse erstellt.• Im Beispiel wird die upload-Methode der ArchiveTransferManager-Klasse aus der High-Level-API

von AWS SDK for Java verwendet.• Im Beispiel wird die Region USA West (Oregon) (us-west-2) verwendet, damit die Region dem

Standort entspricht, an dem der Tresor zuvor in Schritt 2: Erstellen eines Tresors in Amazon S3Glacier (p. 11) erstellt wurde.

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführung von Java-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128). Sie müssen den Code wiegezeigt mit dem Namen des hochzuladenden Archivs aktualisieren.

Note

Amazon S3 Glacier (S3 Glacier) führt eine Inventarliste aller in Ihren Tresoren enthaltenenArchive. Wenn Sie das Archiv im folgenden Beispiel hochladen, wird es auf derManagementkonsole erst nach der Aktualisierung des Tresorinventars im Tresor angezeigt. DieseAktualisierung wird in der Regel einmal täglich durchgeführt.

Example — Hochladen eines Archivs mit AWS SDK for Java

import java.io.File;import java.io.IOException;import java.util.Date;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.transfer.ArchiveTransferManager;import com.amazonaws.services.glacier.transfer.UploadResult;

public class AmazonGlacierUploadArchive_GettingStarted {

public static String vaultName = "examplevault2";

API-Version 2012-06-0114

Page 22: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs mithilfe von .NET

public static String archiveToUpload = "*** provide name of file to upload ***"; public static AmazonGlacierClient client; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider(); client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-west-2.amazonaws.com/");

try { ArchiveTransferManager atm = new ArchiveTransferManager(client, credentials); UploadResult result = atm.upload(vaultName, "my archive " + (new Date()), new File(archiveToUpload)); System.out.println("Archive ID: " + result.getArchiveId()); } catch (Exception e) { System.err.println(e); } }}

Hochladen eines Archivs mithilfe des AWS SDKfür .NET in einen Tresor in Amazon S3 GlacierIm folgenden C#-Codebeispiel wird die High-Level-API des AWS SDK für .NET zum Hochladen einesBeispielarchivs in den Tresor verwendet. Beachten Sie im Codebeispiel Folgendes:

• Das Beispiel erstellt eine Instance der ArchiveTransferManager-Klasse für den angegebenenEndpunkt der Amazon S3 Glacier (S3 Glacier)-Region.

• Im Code-Beispiel wird die Region USA West (Oregon) (us-west-2) verwendet, damit die Regiondem Standort entspricht, an dem der Tresor zuvor in Schritt 2: Erstellen eines Tresors in Amazon S3Glacier (p. 11) erstellt wurde.

• Im Beispiel wird die Upload-Methode der ArchiveTransferManager-Klasse zum Hochladen IhresArchivs verwendet. Bei kleinen Archiven lädt diese Methode das Archiv direkt in S3 Glacier hoch. Beigrößeren Archiven verwendet diese Methode die API zum mehrteiligen Upload von S3 Glacier, um denUpload zur besseren Fehlerkorrektur in mehrere Teile aufzuteilen, falls beim Streaming der Daten zu S3Glacier Fehler auftreten sollten.

Eine schrittweise Anleitung zur Ausführung des folgenden Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit dem Namen Ihres Tresors und demNamen des hochzuladenden Archivs aktualisieren.

Note

S3 Glacier führt eine Inventarliste aller in Ihren Tresoren enthaltenen Archive. Wenn Sie dasArchiv im folgenden Beispiel hochladen, wird es auf der Managementkonsole erst nach derAktualisierung des Tresorinventars im Tresor angezeigt. Diese Aktualisierung wird in der Regeleinmal täglich durchgeführt.

Example — Hochladen eines Archivs mithilfe der High-Level-API von AWS SDK für .NET

using System;using Amazon.Glacier;using Amazon.Glacier.Transfer;using Amazon.Runtime;

API-Version 2012-06-0115

Page 23: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSchritt 4: Herunterladen eines Archivs aus einem Tresor

namespace glacier.amazon.com.docsamples{ class ArchiveUploadHighLevel_GettingStarted { static string vaultName = "examplevault"; static string archiveToUpload = "*** Provide file name (with full path) to upload ***";

public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2); // Upload an archive. string archiveId = manager.Upload(vaultName, "getting started archive test", archiveToUpload).ArchiveId; Console.WriteLine("Copy and save the following Archive ID for the next step."); Console.WriteLine("Archive ID: {0}", archiveId); Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } }}

Schritt 4: Herunterladen eines Archivs aus einemTresor in Amazon S3 Glacier

In diesem Schritt laden Sie das Musterarchiv herunter, das Sie zuvor entsprechend Schritt 3: Hochladeneines Archivs in einen Tresor in Amazon S3 Glacier (p. 13) hochgeladen haben.

Important

Jeder Archivvorgang (Hochladen, Herunterladen oder Löschen) erfordert, dass Sie AWSCommand Line Interface (AWS CLI) verwenden oder Code schreiben. Es steht keineKonsolenunterstützung für Archivvorgänge zur Verfügung. Zum Hochladen von Daten (Fotos,Videos und andere Dokumente) müssen Sie beispielsweise entweder die AWS CLI verwendenoder Code schreiben, um Anforderungen direkt unter Verwendung der REST-API oder mit denAWS SDKs zu senden. Weitere Informationen zur Verwendung von Amazon S3 Glacier (S3Glacier) mit der AWS CLI finden Sie in der AWS CLI-Referenz für S3 Glacier. Informationen zumInstallieren der AWS CLI finden Sie unter AWS Command Line Interface.

Das Abrufen eines Archivs von S3 Glacier erfolgt im Allgemeinen als zweistufiger Prozess:

1. Initiieren Sie einen Abrufauftrag.2. Laden Sie die Datenbytes herunter, nachdem der Auftrag abgeschlossen ist.

Wenn Sie ein Archiv von S3 Glacier abrufen möchten, initiieren Sie zuerst eine Aufgabe. Laden Sie dieDaten herunter, nachdem der Auftrag abgeschlossen ist. Weitere Informationen zu Archivabrufen findenSie unter Abrufen von S3 Glacier-Archiven (p. 91).

API-Version 2012-06-0116

Page 24: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

Die Zugriffszeit für Ihre Anforderung hängt davon ab, welche Abrufoption Sie wählen: „Expedited“,„Standard“ oder „Bulk“. Daten, die unter Verwendung von „Expedited“ abgerufen werden, stehennormalerweise innerhalb von 1 bis 5 Minuten zur Verfügung, außer wenn es sich um sehr große Archive(250 MB und mehr) handelt. Das Abrufen von Archiven mit der Option „Standard“ erfordert in der Regel dreibis fünf Stunden. Bulk-Abrufe werden in der Regel innerhalb von fünf bis zwölf Stunden ausgeführt. WeitereInformationen zu den Abrufoptionen finden Sie in den Häufig gestellten Fragen zu S3 Glacier. WeitereInformationen zu den Gebühren für den Datenabruf finden Sie auf der S3 Glacier-Detailseite.

Mit dem Beispielcode in den folgenden Abschnitten wird der Auftrag initiiert, danach wird gewartet, bis derAuftrag abgeschlossen ist, und abschließend werden die Archivdaten heruntergeladen.

Themen• Herunterladen eines Archivs aus einem Tresor in Amazon S3 Glacier mithilfe von AWS SDK for

Java (p. 17)• Herunterladen eines Archivs aus einem Tresor in Amazon S3 Glacier mithilfe von AWS SDK

für .NET (p. 18)

Herunterladen eines Archivs aus einem Tresor inAmazon S3 Glacier mithilfe von AWS SDK for JavaDas folgende Java-Codebeispiel verwendet die High-Level-API von AWS SDK for Java, um das Archivherunterzuladen, das Sie im vorherigen Schritt hochgeladen haben. Beachten Sie im CodebeispielFolgendes:

• Im Beispiel wird eine Instance der AmazonGlacierClient-Klasse erstellt.• Im Code wird die Region USA West (Oregon) (us-west-2) verwendet, damit die Region dem Standort

entspricht, an dem der Tresor in Schritt 2: Erstellen eines Tresors in Amazon S3 Glacier (p. 11) erstelltwurde.

• Im Beispiel wird die download-Methode der ArchiveTransferManager-Klasse aus der High-Level-API von AWS SDK for Java verwendet. Mit dem Beispiel wird ein Amazon SNS-Thema und eine AmazonSimple Queue Service-Warteschlange als Abonnent für dieses Thema erstellt. Wenn Sie einen IAM-Administrator erstellt haben, wie in Schritt 1: Bevor Sie mit Amazon S3 Glacier beginnen (p. 7)beschrieben, hat Ihr Benutzer die erforderlichen IAM-Berechtigungen für die Erstellung und Verwendungdes Amazon SNS-Themas und der Amazon SQS-Warteschlange.

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführung von Java-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128). Sie müssen den Codewie gezeigt mit der Archiv-ID der in Schritt 3: Hochladen eines Archivs in einen Tresor in Amazon S3Glacier (p. 13) hochgeladenen Datei aktualisieren.

Example – Herunterladen eines Archivs mit AWS SDK for Java

import java.io.File;import java.io.IOException;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.transfer.ArchiveTransferManager;import com.amazonaws.services.sns.AmazonSNSClient;import com.amazonaws.services.sqs.AmazonSQSClient;

public class AmazonGlacierDownloadArchive_GettingStarted { public static String vaultName = "examplevault"; public static String archiveId = "*** provide archive ID ***";

API-Version 2012-06-0117

Page 25: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

public static String downloadFilePath = "*** provide location to download archive ***"; public static AmazonGlacierClient glacierClient; public static AmazonSQSClient sqsClient; public static AmazonSNSClient snsClient; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider(); glacierClient = new AmazonGlacierClient(credentials); sqsClient = new AmazonSQSClient(credentials); snsClient = new AmazonSNSClient(credentials); glacierClient.setEndpoint("glacier.us-west-2.amazonaws.com"); sqsClient.setEndpoint("sqs.us-west-2.amazonaws.com"); snsClient.setEndpoint("sns.us-west-2.amazonaws.com");

try { ArchiveTransferManager atm = new ArchiveTransferManager(glacierClient, sqsClient, snsClient); atm.download(vaultName, archiveId, new File(downloadFilePath)); } catch (Exception e) { System.err.println(e); } }}

Herunterladen eines Archivs aus einem Tresor inAmazon S3 Glacier mithilfe von AWS SDK für .NETDas folgende C#-Codebeispiel verwendet die High-Level-API des AWS SDK für .NET, um das Archivherunterzuladen, das Sie vorher in Hochladen eines Archivs mithilfe des AWS SDK für .NET in einenTresor in Amazon S3 Glacier (p. 15) hochgeladen haben. Beachten Sie im Codebeispiel Folgendes:

• Das Beispiel erstellt eine Instance der ArchiveTransferManager-Klasse für den angegebenenEndpunkt der Amazon S3 Glacier (S3 Glacier)-Region.

• Im Code-Beispiel wird die Region USA West (Oregon) (us-west-2) verwendet, damit die Regiondem Standort entspricht, an dem der Tresor zuvor in Schritt 2: Erstellen eines Tresors in Amazon S3Glacier (p. 11) erstellt wurde.

• Im Beispiel wird die Download-Methode der ArchiveTransferManager-Klasse zum HerunterladenIhres Archivs verwendet. Mit dem Beispiel wird ein Amazon SNS-Thema und eine Amazon SimpleQueue Service-Warteschlange als Abonnent für dieses Thema erstellt. Wenn Sie einen IAM-Administrator erstellt haben, wie in Schritt 1: Bevor Sie mit Amazon S3 Glacier beginnen (p. 7)beschrieben, hat Ihr Benutzer die erforderlichen IAM-Berechtigungen für die Erstellung und Verwendungdes Amazon SNS-Themas und der Amazon SQS-Warteschlange.

• Das Beispiel initiiert daraufhin den Abrufauftrag für das Archiv und fragt die Warteschlange für das Archivnach der Verfügbarkeit ab. Wenn das Archiv verfügbar ist, beginnt der Download. Weitere Informationenzu Abrufzeiten finden Sie unter Archiv-Abrufoptionen (p. 92).

API-Version 2012-06-0118

Page 26: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit der Archiv-ID der in Schritt 3: Hochladeneines Archivs in einen Tresor in Amazon S3 Glacier (p. 13) hochgeladenen Datei aktualisieren.

Example – Herunterladen eines Archivs mithilfe der High-Level-API von AWS SDK für .NET

using System;using Amazon.Glacier;using Amazon.Glacier.Transfer;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class ArchiveDownloadHighLevel_GettingStarted { static string vaultName = "examplevault"; static string archiveId = "*** Provide archive ID ***"; static string downloadFilePath = "*** Provide the file name and path to where to store the download ***";

public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2);

var options = new DownloadOptions(); options.StreamTransferProgress += ArchiveDownloadHighLevel_GettingStarted.progress; // Download an archive. Console.WriteLine("Intiating the archive retrieval job and then polling SQS queue for the archive to be available."); Console.WriteLine("Once the archive is available, downloading will begin."); manager.Download(vaultName, archiveId, downloadFilePath, options); Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); }

static int currentPercentage = -1; static void progress(object sender, StreamTransferProgressArgs args) { if (args.PercentDone != currentPercentage) { currentPercentage = args.PercentDone; Console.WriteLine("Downloaded {0}%", args.PercentDone); } } }}

API-Version 2012-06-0119

Page 27: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSchritt 5: Löschen eines Archivs aus einem Tresor

Schritt 5: Löschen eines Archivs aus einem Tresorin Amazon S3 Glacier

In diesem Schritt löschen Sie das Musterarchiv, das Sie zuvor entsprechend Schritt 3: Hochladen einesArchivs in einen Tresor in Amazon S3 Glacier (p. 13) hochgeladen haben.

Important

Sie können ein Archiv nicht über die Amazon S3 Glacier (S3 Glacier)-Konsole löschen. JederArchivvorgang (Hochladen, Herunterladen oder Löschen) erfordert, dass Sie AWS Command LineInterface (CLI) verwenden oder Code schreiben. Zum Hochladen von Daten, z. B. Fotos, Videosund andere Dokumente, müssen Sie entweder die AWS CLI verwenden oder Code schreiben, umdirekt unter Verwendung der REST-API oder mit den AWS-SDKs Anforderungen zu senden.

Löschen Sie das Beispielarchiv, indem Sie einem dieser SDKs oder der AWS CLI folgen:

• Löschen eines Archivs mithilfe des AWS SDK for Java aus einem Tresor in Amazon S3 Glacier (p. 20)• Löschen eines Archivs mithilfe des AWS SDK für .NET aus einem Tresor in Amazon S3

Glacier (p. 21)• Löschen eines Archivs in Amazon S3 Glacier mit AWS Command Line Interface (p. 22)

Zugehörige Abschnitte

• Schritt 3: Hochladen eines Archivs in einen Tresor in Amazon S3 Glacier (p. 13)• Löschen eines Archivs in Amazon S3 Glacier (p. 117)

Löschen eines Archivs mithilfe des AWS SDK for Javaaus einem Tresor in Amazon S3 GlacierIm folgenden Java-Codebeispiel wird AWS SDK for Java zum Löschen des Archivs verwendet. BeachtenSie im Code Folgendes:

• Das DeleteArchiveRequest-Objekt beschreibt die Löschanforderung, einschließlich des Namens vondem Tresor, in dem sich das Archiv befindet, und der Archiv-ID.

• Die deleteArchive-Methode sendet die Anforderung zur Löschung des Archivs an Amazon S3 Glacier(S3 Glacier).

• Im Beispiel wird die Region USA West (Oregon) (us-west-2) verwendet, damit die Regiondem Standort entspricht, an dem der Tresor in Schritt 2: Erstellen eines Tresors in Amazon S3Glacier (p. 11) erstellt wurde.

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführung von Java-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128). Sie müssen den Codewie gezeigt mit der Archiv-ID der in Schritt 3: Hochladen eines Archivs in einen Tresor in Amazon S3Glacier (p. 13) hochgeladenen Datei aktualisieren.

Example — Löschen eines Archivs mit dem AWS SDK for Java

import java.io.IOException;

API-Version 2012-06-0120

Page 28: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit .NET

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.model.DeleteArchiveRequest;

public class AmazonGlacierDeleteArchive_GettingStarted {

public static String vaultName = "examplevault"; public static String archiveId = "*** provide archive ID***"; public static AmazonGlacierClient client; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();

client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-west-2.amazonaws.com/");

try {

// Delete the archive. client.deleteArchive(new DeleteArchiveRequest() .withVaultName(vaultName) .withArchiveId(archiveId)); System.out.println("Deleted archive successfully."); } catch (Exception e) { System.err.println("Archive not deleted."); System.err.println(e); } }}

Löschen eines Archivs mithilfe des AWS SDK für .NETaus einem Tresor in Amazon S3 GlacierDas folgende C#-Codebeispiel verwendet die High-Level-API des AWS SDK für .NET, um das Archiv zulöschen, das Sie im vorherigen Schritt hochgeladen haben. Beachten Sie im Codebeispiel Folgendes:

• Das Beispiel erstellt eine Instance der ArchiveTransferManager-Klasse für den angegebenenEndpunkt der Amazon S3 Glacier (S3 Glacier)-Region.

• Im Code-Beispiel wird die Region USA West (Oregon) (us-west-2) verwendet, damit die Regiondem Standort entspricht, an dem der Tresor zuvor in Schritt 2: Erstellen eines Tresors in Amazon S3Glacier (p. 11) erstellt wurde.

• Das Beispiel verwendet die Delete-Methode der ArchiveTransferManager-Klasse, die als Teil derHigh-Level-API des AWS SDK für .NET bereitgestellt wurde.

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit der Archiv-ID der in Schritt 3: Hochladeneines Archivs in einen Tresor in Amazon S3 Glacier (p. 13) hochgeladenen Datei aktualisieren.

Example — Löschen eines Archivs mithilfe der High-Level-API von AWS SDK für .NET

using System;using Amazon.Glacier;

API-Version 2012-06-0121

Page 29: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit AWS CLI

using Amazon.Glacier.Transfer;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class ArchiveDeleteHighLevel_GettingStarted { static string vaultName = "examplevault"; static string archiveId = "*** Provide archive ID ***";

public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2); manager.DeleteArchive(vaultName, archiveId); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } }}

Löschen eines Archivs in Amazon S3 Glacier mit AWSCommand Line InterfaceSie können Archive in Amazon S3 Glacier (S3 Glacier) mit AWS Command Line Interface (AWS CLI)löschen.

Themen• (Voraussetzung) Einrichten der AWS CLI (p. 22)• Beispiel: Löschen eines Archivs mit AWS CLI (p. 23)

(Voraussetzung) Einrichten der AWS CLI1. Laden Sie die AWS CLI herunter und konfigurieren Sie sie. Anleitungen können Sie den folgenden

Themen im Benutzerhandbuch für AWS Command Line Interface entnehmen.

Installieren der AWS-Befehlszeilenschnittstelle

Configuring the AWS Command Line Interface2. Überprüfen Sie die Einrichtung, indem Sie die folgenden Befehle in die Befehlszeile eingeben. Diese

Befehle stellen nicht explizit Anmeldeinformationen bereit, daher werden die Anmeldeinformationendes Standardprofils verwendet.

• Versuchen Sie, den Befehl help zu verwenden.

aws help

• Verwenden Sie aws s3 ls, um eine Liste der Buckets auf dem konfigurierten Konto abzurufen.

aws s3 ls

• Verwenden Sie aws configure list, um die aktuellen Konfigurationsdaten anzuzeigen.

API-Version 2012-06-0122

Page 30: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit AWS CLI

aws configure list

Beispiel: Löschen eines Archivs mit AWS CLI1. Verwenden Sie den initiate-job-Befehl, um eine Lagerabrufaufgabe zu starten.

aws glacier initiate-job --vault-name awsexamplevault --account-id 111122223333 --job-parameters '{"Type": "inventory-retrieval"}'

Erwartete Ausgabe:

{ "location": "/111122223333/vaults/awsexamplevault/jobs/*** jobid ***", "jobId": "*** jobid ***"}

2. Verwenden Sie den describe-job-Befehl, um den Status der vorherigen Abrufaufgabe zuüberprüfen.

aws glacier describe-job --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid ***

Erwartete Ausgabe:

{ "InventoryRetrievalParameters": { "Format": "JSON" }, "VaultARN": "*** vault arn ***", "Completed": false, "JobId": "*** jobid ***", "Action": "InventoryRetrieval", "CreationDate": "*** job creation date ***", "StatusCode": "InProgress"}

3. Warten Sie, bis der Auftrag abgeschlossen wurde.

Sie müssen warten, bis die Ausgabe des Auftrags zum Download bereit ist. Wenn Sie eineBenachrichtigungskonfiguration auf dem Tresor eingerichtet haben oder beim Start der Aufgabe einAmazon Simple Notification Service-Thema (Amazon SNS) angegeben haben, sendet S3 Glacier eineBenachrichtigung an das Thema, nachdem die Aufgabe beendet wurde.

Sie können Benachrichtigungskonfiguration für bestimmte Ereignisse auf dem Tresor einrichten.Weitere Informationen finden Sie unter Konfigurieren von Tresorbenachrichtigungen in Amazon S3Glacier (p. 55). S3 Glacier sendet eine Nachricht an das angegebene SNS-Thema, wenn dasspezifische Ereignis eintritt.

4. Nach Abschluss laden Sie die Abrufaufgabe mit dem get-job-output-Befehl in die Datei„output.json“ herunter.

API-Version 2012-06-0123

Page 31: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSchritt 6: Löschen eines Tresors

aws glacier get-job-output --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid *** output.json

Dieser Befehl erzeugt eine Datei mit den folgenden Feldern.

{"VaultARN":"arn:aws:glacier:region:111122223333:vaults/awsexamplevault","InventoryDate":"*** job completion date ***","ArchiveList":[{"ArchiveId":"*** archiveid ***","ArchiveDescription":*** archive description (if set) ***,"CreationDate":"*** archive creation date ***","Size":"*** archive size (in bytes) ***","SHA256TreeHash":"*** archive hash ***"}{"ArchiveId":...]}

5. Verwenden Sie den delete-archive-Befehl, um jedes Archiv aus einem Tresor zu löschen, bis keinArchiv übrig bleibt.

aws glacier delete-archive --vault-name awsexamplevault --account-id 111122223333 --archive-id *** archiveid ***

Schritt 6: Löschen eines Tresors in Amazon S3Glacier

Ein Tresor ist ein Container für das Speichern von Archiven. Um einen Amazon S3 Glacier (S3 Glacier)-Tresor zu löschen, müssen Sie zunächst alle vorhandenen Archive im Tresor löschen, die von dem letztenvon S3 Glacier berechneten Inventar erfasst wurden.

Sie können Tresore programmatisch oder mit der S3 Glacier-Konsole löschen. Informationen zumprogrammatischen Löschen eines Tresors finden Sie unter Löschen eines Tresors in Amazon S3Glacier (p. 63).

So löschen Sie einen leeren Tresor

1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die S3 Glacier-Konsole unterhttps://console.aws.amazon.com/glacier/.

2. Wählen Sie in der Regionsauswahl die AWS-Region aus, in der der zu löschende Tresor vorhandenist.

Bei dieser Übung „Erste Schritte“ verwenden wir die Region USA West (Oregon).3. Wählen Sie den leeren Tresor aus, den Sie löschen möchten. Wenn der Tresor nicht leer ist, müssen

Sie alle Archive löschen, bevor Sie den Tresor löschen. Weitere Informationen finden Sie unterLöschen eines Archivs in Amazon S3 Glacier (p. 117)

Bei dieser Übung "Erste Schritte" verwenden wir einen Tresor mit der Bezeichnung examplevault.

API-Version 2012-06-0124

Page 32: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchWie geht es weiter?

4. Klicken Sie auf Delete Vault (Tresor löschen).

So löschen Sie einen Tresor, der nicht leer ist

• Wenn Sie einen Tresor löschen, der nicht leer ist, müssen Sie zunächst alle vorhandenen Archivelöschen, bevor Sie den Tresor löschen. Dies kann durch das Schreiben von Code erfolgen, um eineLöscharchivanforderung zu stellen, entweder mit der REST-API, dem AWS SDK for Java, dem AWSSDK for .NET oder mithilfe der AWS CLI. Informationen zum Löschen von Archiven finden Sie unterSchritt 5: Löschen eines Archivs aus einem Tresor in Amazon S3 Glacier (p. 20).

Wie geht es weiter?Nachdem Sie sich nun mit den ersten Schritten vertraut gemacht haben, können Sie in den folgendenAbschnitten Ihre Kenntnisse von Amazon S3 Glacier (S3 Glacier) vertiefen.

• Arbeiten mit Tresoren in Amazon S3 Glacier (p. 26)• Arbeiten mit Archiven in Amazon S3 Glacier (p. 73)

API-Version 2012-06-0125

Page 33: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchTresorvorgänge in S3 Glacier

Arbeiten mit Tresoren in Amazon S3Glacier

Ein Tresor ist ein Container für das Speichern von Archiven. Geben Sie zum Erstellen eines Tresors einenNamen und die AWS-Region, in der er erstellt werden soll, an. Eine Liste der unterstützten AWS-Regionenfinden Sie unter Zugriff auf Amazon S3 Glacier (p. 6).

Sie können eine unbegrenzte Anzahl von Archiven in einem Tresor speichern.

Important

Amazon S3 Glacier (S3 Glacier) bietet außerdem eine Managementkonsole. Sie können mitder Konsole Tresore erstellen und löschen. Alle anderen Interaktionen mit S3 Glacier erfordernjedoch, dass Sie die AWS Command Line Interface (CLI) verwenden oder Code schreiben.Zum Hochladen von Daten (Fotos, Videos und andere Dokumente) müssen Sie beispielsweiseentweder die AWS CLI verwenden oder Code schreiben, um direkt unter Verwendung der REST-API oder mit den AWS SDKs Anfragen zu senden. Weitere Informationen zur Verwendung vonS3 Glacier mit der AWS CLI finden Sie in der AWS CLI-Referenz für S3 Glacier. Rufen Sie AWSCommand Line Interface auf, um die AWS CLI zu installieren.

Themen• Tresorvorgänge in S3 Glacier (p. 26)• Erstellen eines Tresors in Amazon S3 Glacier (p. 28)• Abrufen von Tresormetadaten in Amazon S3 Glacier (p. 35)• Herunterladen eines Tresorinventars in Amazon S3 Glacier (p. 40)• Konfigurieren von Tresorbenachrichtigungen in Amazon S3 Glacier (p. 55)• Löschen eines Tresors in Amazon S3 Glacier (p. 63)• Markieren der Amazon S3 Glacier-Tresore (p. 69)• Amazon S3 Glacier-Tresorverriegelung (p. 70)

Tresorvorgänge in S3 GlacierS3 Glacier unterstützt verschiedene Tresorvorgänge. Tresorvorgänge sind bestimmten AWS-Regioneneigen. Mit anderen Worten, wenn Sie einen Tresor erstellen, dann erstellen Sie ihn in einer bestimmtenAWS-Region. Wenn Sie Tresore auflisten, gibt S3 Glacier die Liste der Tresore in der AWS-Region zurück,die Sie in der Anfrage angegeben haben.

Erstellen und Löschen von TresorenEin AWS-Konto kann bis zu 1 000 Tresore pro AWS-Region erstellen. Eine Liste der von S3 Glacierunterstützten AWS-Regionen finden Sie unter Regionen und Endpunkte in der Allgemeinen AWS-Referenz.

Sie können einen Tresor nur löschen, wenn bei der letzten Inventur, die von S3 Glacier ermittelt wurde,keine Archive mehr im Tresor vorhanden waren und wenn seit der letzten Inventur keine Schreibvorgängefür den Tresor durchgeführt wurden.

API-Version 2012-06-0126

Page 34: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von Tresormetadaten

Note

S3 Glacier bereitet regelmäßig eine Inventur für jeden Tresor vor, alle 24 Stunden. Da die Inventurdie neuesten Informationen möglicherweise nicht berücksichtigt, stellt S3 Glacier sicher, dassder Tresor tatsächlich leer ist, indem es prüft, ob seit der letzten Tresorinventur Schreibvorgängestattgefunden haben.

Weitere Informationen finden Sie unter Erstellen eines Tresors in Amazon S3 Glacier (p. 28) undLöschen eines Tresors in Amazon S3 Glacier (p. 63).

Abrufen von TresormetadatenSie können Informationen zum Tresor abrufen wie z. B. das Erstellungsdatum des Tresors, die Anzahlder Archive im Tresor und die Gesamtgröße aller Archive im Tresor. S3 Glacier stellt API-Aufrufe bereit,mit denen Sie diese Informationen für einen bestimmten Tresor oder für alle Tresore in einer bestimmtenAWS-Region in Ihrem Konto abrufen können. Weitere Informationen finden Sie unter Abrufen vonTresormetadaten in Amazon S3 Glacier (p. 35).

Herunterladen eines TresorinventarsEin Tresorinventar bezieht sich auf die Liste der Archive in einem Tresor. Für jedes Archiv in der Listestellt das Inventar Archivinformationen bereit, wie z. B. Archiv-ID, Erstellungsdatum und Größe. S3 Glacieraktualisiert das Tresorinventar etwa einmal pro Tag, beginnend mit dem Tag, an dem das erste Archivin den Tresor hochgeladen wird. Ein Tresorinventar muss vorhanden sein, damit Sie es herunterladenkönnen.

Das Herunterladen eines Tresorinventars ist eine asynchrone Operation. Sie müssen zuerst einen Auftraginitiieren, um das Inventar herunterzuladen. Nach dem Empfang der Aufgabenanfrage bereitet S3 Glacierdas Inventar zum Herunterladen vor. Sie können die Inventardaten herunterladen, nachdem der Auftragabgeschlossen ist.

Aufgrund der asynchronen Natur des Auftrags können Sie Amazon Simple Notification Service (AmazonSNS)-Benachrichtigungen verwenden, um eine Benachrichtigung zu erhalten, wenn der Auftragabgeschlossen ist. Sie können ein Amazon SNS-Thema für jede einzelne Auftragsanfrage angebenoder Ihren Tresor so konfigurieren, dass eine Benachrichtigung gesendet wird, wenn bestimmteTresorereignisse eintreten.

S3 Glacier bereitet regelmäßig eine Inventur für jeden Tresor vor, alle 24 Stunden. Wenn dem Tresor seitder letzten Inventur keine Archive hinzugefügt oder aus ihm gelöscht wurden, wird das Inventurdatum nichtaktualisiert. Wenn Sie eine Aufgabe für eine Tresorinventur initiieren, gibt S3 Glacier die letzte generierteInventur zurück, die ein Point-in-Time-Snapshot ist und keine Echtzeitdaten enthält. Möglicherweise findenSie es nicht nützlich, ein Tresorinventar für jeden Archiv-Upload abzurufen. Angenommen jedoch, Siehaben eine clientseitige Datenbank, die Metadaten über die Archive zuordnet, die Sie auf S3 Glacierhochladen. Dann finden Sie es möglicherweise nützlich, wenn die Tresorinventur die Informationen in IhrerDatenbank mit dem aktuellen Tresorinventar abgleicht.

Weitere Informationen zum Abrufen eines Tresorinventars finden Sie unter Herunterladen einesTresorinventars in Amazon S3 Glacier (p. 40).

Konfigurieren von TresorbenachrichtigungenDas Abrufen von beliebigen Daten aus S3 Glacier, etwa eines Archivs aus einem Tresor oder einesTresorinventars, ist ein zweistufiger Prozess, in dem Sie zuerst eine Aufgabe initiieren. Sie können dieAusgabe herunterladen, nachdem der Auftrag abgeschlossen ist. Sie können den Support für S3 Glacier-

API-Version 2012-06-0127

Page 35: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErstellen eines Tresors

Benachrichtigungen verwenden, um zu erfahren, wann die Aufgabe abgeschlossen ist. S3 Glacier sendetBenachrichtigungen an ein von Ihnen bereitgestelltes Amazon Simple Notification Service (Amazon SNS)-Thema.

Sie können Benachrichtigungen auf einem Tresor konfigurieren und Tresorereignisse identifizierenund das Amazon SNS-Thema benachrichtigen lassen, wenn das Ereignis eintritt. Jedes Mal, wenn einTresorereignis eintritt, sendet S3 Glacier eine Benachrichtigung an das angegebene Amazon SNS-Thema. Weitere Informationen finden Sie unter Konfigurieren von Tresorbenachrichtigungen in Amazon S3Glacier (p. 55).

Erstellen eines Tresors in Amazon S3 GlacierDas Erstellen eines Tresors fügt der Reihe von Tresoren in Ihrem Konto einen Tresor hinzu. Ein AWS-Konto kann bis zu 1 000 Tresore pro AWS-Region erstellen. Eine Liste der von Amazon S3 Glacier (S3Glacier) unterstützten AWS-Regionen finden Sie unter Regionen und Endpunkte in der Allgemeinen AWS-Referenz. Informationen zur Erstellung weiterer Tresore finden Sie auf der S3 Glacier-Produktdetailseite.

Wenn Sie einen Tresor erstellen, müssen Sie einen Tresornamen angeben. Folgende Bedingungenmüssen Sie beim Benennen von Tresoren beachten:

• Namen können zwischen 1 und 255 Zeichen lang sein.• Zulässige Zeichen sind a – z, A – Z, 0 – 9, "_" (Unterstrich), "-" (Bindestrich) und "." (Punkt).

Tresornamen müssen innerhalb eines Kontos und der AWS-Region, in der der Tresor erstellt wird,eindeutig sein. Das heißt, dass ein Konto Tresore mit demselben Namen in verschiedenen AWS-Regionenerstellen kann, nicht aber in derselben AWS-Region.

Themen• Erstellen eines Tresors in Amazon S3 Glacier mit der AWS SDK for Java (p. 28)• Erstellen eines Tresors in Amazon S3 Glacier mit der AWS SDK für .NET (p. 31)• Erstellen eines Tresors in Amazon S3 Glacier mithilfe der REST-API-Konsole (p. 34)• Erstellen eines Tresors mit der Amazon S3 Glacier-Konsole (p. 34)• Erstellen eines Tresors in Amazon S3 Glacier mit der AWS Command Line Interface (p. 34)

Erstellen eines Tresors in Amazon S3 Glacier mit derAWS SDK for JavaDie Low-Level-API bietet Methoden für alle Tresorvorgänge und ermöglicht das Erstellen und Löschenvon Tresoren, das Abrufen einer Tresorbeschreibung und einer Liste der in einer bestimmten AWS-Regionerstellten Tresore. Im Folgenden werden die Schritte zum Erstellen eines Tresors mit AWS SDK for Javabeschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, in der ein Tresor erstellt werden soll. Alle Operationen, die Siemit diesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derCreateVaultRequest-Klasse.

API-Version 2012-06-0128

Page 36: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErstellen eines Tresors mit Java

Für Amazon S3 Glacier (S3 Glacier) ist es erforderlich, dass Sie einen Tresornamen und IhreKonto-ID angeben. Wenn Sie keine Konto-ID angeben, wird die Konto-ID übernommen, die denAnmeldeinformationen zugeordnet ist, die Sie zum Signieren der Anfrage verwenden. WeitereInformationen finden Sie im Verwenden der AWS SDK for Java mit Amazon S3 Glacier (p. 127).

3. Ausführen der createVault -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

Die von S3 Glacier zurückgegebene Antwort ist im CreateVaultResult-Objekt verfügbar.

Der folgende Java-Codeausschnitt veranschaulicht die vorherigen Schritte. Der Ausschnitt erstellt einenTresor in der Region us-west-2. Die gedruckte Location-Angabe ist der relative URI des Tresors,einschließlich Ihrer Konto-ID, der AWS-Region und des Tresornamens.

AmazonGlacierClient client = new AmazonGlacierClient(credentials);client.setEndpoint("https://glacier.us-west-2.amazonaws.com");

CreateVaultRequest request = new CreateVaultRequest() .withVaultName("*** provide vault name ***");CreateVaultResult result = client.createVault(request);

System.out.println("Created vault successfully: " + result.getLocation());

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Create Vault (PUTvault) (p. 199).

Beispiel. Erstellen eines Tresors mit der AWS SDK for JavaMit dem folgenden Java-Beispielcode wird ein Tresor in der Region us-west-2 erstellt (weitereInformationen zu AWS-Regionen finden Sie unter Zugriff auf Amazon S3 Glacier (p. 6)). Außerdem ruftder Beispielcode die Tresorinformationen ab, listet alle Tresore in derselben AWS-Region auf und löschtdanach den erstellten Tresor.

Eine schrittweise Anleitung zur Ausführung des folgenden Beispiels finden Sie unter Ausführung von Java-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128).

Example

import java.io.IOException;import java.util.List;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.model.CreateVaultRequest;import com.amazonaws.services.glacier.model.CreateVaultResult;import com.amazonaws.services.glacier.model.DeleteVaultRequest;import com.amazonaws.services.glacier.model.DescribeVaultOutput;import com.amazonaws.services.glacier.model.DescribeVaultRequest;import com.amazonaws.services.glacier.model.DescribeVaultResult;import com.amazonaws.services.glacier.model.ListVaultsRequest;import com.amazonaws.services.glacier.model.ListVaultsResult;

public class AmazonGlacierVaultOperations {

public static AmazonGlacierClient client;

public static void main(String[] args) throws IOException {

API-Version 2012-06-0129

Page 37: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErstellen eines Tresors mit Java

ProfileCredentialsProvider credentials = new ProfileCredentialsProvider(); client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-east-1.amazonaws.com/"); String vaultName = "examplevaultfordelete";

try { createVault(client, vaultName); describeVault(client, vaultName); listVaults(client); deleteVault(client, vaultName);

} catch (Exception e) { System.err.println("Vault operation failed." + e.getMessage()); } }

private static void createVault(AmazonGlacierClient client, String vaultName) { CreateVaultRequest createVaultRequest = new CreateVaultRequest() .withVaultName(vaultName); CreateVaultResult createVaultResult = client.createVault(createVaultRequest);

System.out.println("Created vault successfully: " + createVaultResult.getLocation()); }

private static void describeVault(AmazonGlacierClient client, String vaultName) { DescribeVaultRequest describeVaultRequest = new DescribeVaultRequest() .withVaultName(vaultName); DescribeVaultResult describeVaultResult = client.describeVault(describeVaultRequest);

System.out.println("Describing the vault: " + vaultName); System.out.print( "CreationDate: " + describeVaultResult.getCreationDate() + "\nLastInventoryDate: " + describeVaultResult.getLastInventoryDate() + "\nNumberOfArchives: " + describeVaultResult.getNumberOfArchives() + "\nSizeInBytes: " + describeVaultResult.getSizeInBytes() + "\nVaultARN: " + describeVaultResult.getVaultARN() + "\nVaultName: " + describeVaultResult.getVaultName()); }

private static void listVaults(AmazonGlacierClient client) { ListVaultsRequest listVaultsRequest = new ListVaultsRequest(); ListVaultsResult listVaultsResult = client.listVaults(listVaultsRequest);

List<DescribeVaultOutput> vaultList = listVaultsResult.getVaultList(); System.out.println("\nDescribing all vaults (vault list):"); for (DescribeVaultOutput vault : vaultList) { System.out.println( "\nCreationDate: " + vault.getCreationDate() + "\nLastInventoryDate: " + vault.getLastInventoryDate() + "\nNumberOfArchives: " + vault.getNumberOfArchives() + "\nSizeInBytes: " + vault.getSizeInBytes() + "\nVaultARN: " + vault.getVaultARN() + "\nVaultName: " + vault.getVaultName()); } }

private static void deleteVault(AmazonGlacierClient client, String vaultName) { DeleteVaultRequest request = new DeleteVaultRequest() .withVaultName(vaultName); client.deleteVault(request); System.out.println("Deleted vault: " + vaultName);

API-Version 2012-06-0130

Page 38: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErstellen eines Tresors mit .NET

}

}

Erstellen eines Tresors in Amazon S3 Glacier mit derAWS SDK für .NETSowohl die von AWS SDK for .NET bereitgestellten High-Level- und Low-Level-APIs (p. 125) stellen eineMethode zur Verfügung zum Erstellen eines Tresors.

Themen• Erstellen eines Tresors mithilfe der High-Level-API von AWS SDK für .NET (p. 31)• Erstellen eines Tresors mithilfe der Low-Level-API von AWS SDK für .NET (p. 32)

Erstellen eines Tresors mithilfe der High-Level-API von AWS SDKfür .NETDie ArchiveTransferManager-Klasse der High-Level-API bietet die CreateVault-Methode, mit derSie einen Tresor in einer AWS-Region erstellen können.

Beispiel. Tresoroperationen mit der High-Level-API der AWS SDK für .NET

Mit dem folgenden C#-Beispielcode wird ein Archiv in einem Tresor in der Region USA West (Oregon)erstellt und gelöscht. Eine Liste der AWS-Regionen, in denen Sie Tresore erstellen können, finden Sieunter Zugriff auf Amazon S3 Glacier (p. 6).

Eine schrittweise Anleitung zur Ausführung des folgenden Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit einem Tresornamen aktualisieren.

Example

using System;using Amazon.Glacier;using Amazon.Glacier.Transfer;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class VaultCreateDescribeListVaultsDeleteHighLevel { static string vaultName = "*** Provide vault name ***";

public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2); manager.CreateVault(vaultName); Console.WriteLine("Vault created. To delete the vault, press Enter"); Console.ReadKey(); manager.DeleteVault(vaultName); Console.WriteLine("\nVault deleted. To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); }

API-Version 2012-06-0131

Page 39: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErstellen eines Tresors mit .NET

catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } }}

Erstellen eines Tresors mithilfe der Low-Level-API von AWS SDKfür .NETDie Low-Level-API bietet Methoden für alle Tresorvorgänge und ermöglicht das Erstellen und Löschenvon Tresoren, das Abrufen einer Tresorbeschreibung und einer Liste der in einer bestimmten AWS-Regionerstellten Tresore. Im Folgenden werden die Schritte zum Erstellen eines Tresors mit AWS SDK für .NETbeschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, in der ein Tresor erstellt werden soll. Alle Operationen, die Siemit diesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derCreateVaultRequest-Klasse.

Für Amazon S3 Glacier (S3 Glacier) ist es erforderlich, dass Sie einen Tresornamen und IhreKonto-ID angeben. Wenn Sie keine Konto-ID angeben, wird die Konto-ID übernommen, die denAnmeldeinformationen zugeordnet ist, die Sie zum Signieren der Anforderung verwenden. WeitereInformationen finden Sie im Verwenden der AWS SDK für .NET mit Amazon S3 Glacier (p. 129).

3. Ausführen der CreateVault -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

Die von S3 Glacier zurückgegebene Antwort ist im CreateVaultResponse-Objekt verfügbar.

Beispiel. Tresoroperationen mit der Low-Level-API des AWS SDK für .NET

Im folgenden C#-Codebeispiel werden die vorstehenden Schritte veranschaulicht. Bei diesem Beispiel wirdein Tresor in Region USA West (Oregon) erstellt. Außerdem ruft der Beispielcode die Tresorinformationenab, listet alle Tresore in derselben AWS-Region auf und löscht danach den erstellten Tresor. Die gedruckteLocation-Angabe ist der relative URI des Tresors, einschließlich Ihrer Konto-ID, der AWS-Region und desTresornamens.

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Create Vault (PUTvault) (p. 199).

Eine schrittweise Anleitung zur Ausführung des folgenden Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit einem Tresornamen aktualisieren.

Example

using System;using Amazon.Glacier;using Amazon.Glacier.Model;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{

API-Version 2012-06-0132

Page 40: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErstellen eines Tresors mit .NET

class VaultCreateDescribeListVaultsDelete { static string vaultName = "*** Provide vault name ***"; static AmazonGlacierClient client;

public static void Main(string[] args) { try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Creating a vault."); CreateAVault(); DescribeVault(); GetVaultsList(); Console.WriteLine("\nVault created. Now press Enter to delete the vault..."); Console.ReadKey(); DeleteVault(); } } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); }

static void CreateAVault() { CreateVaultRequest request = new CreateVaultRequest() { VaultName = vaultName }; CreateVaultResponse response = client.CreateVault(request); Console.WriteLine("Vault created: {0}\n", response.Location); }

static void DescribeVault() { DescribeVaultRequest describeVaultRequest = new DescribeVaultRequest() { VaultName = vaultName }; DescribeVaultResponse describeVaultResponse = client.DescribeVault(describeVaultRequest); Console.WriteLine("\nVault description..."); Console.WriteLine( "\nVaultName: " + describeVaultResponse.VaultName + "\nVaultARN: " + describeVaultResponse.VaultARN + "\nVaultCreationDate: " + describeVaultResponse.CreationDate + "\nNumberOfArchives: " + describeVaultResponse.NumberOfArchives + "\nSizeInBytes: " + describeVaultResponse.SizeInBytes + "\nLastInventoryDate: " + describeVaultResponse.LastInventoryDate ); }

static void GetVaultsList() { string lastMarker = null; Console.WriteLine("\n List of vaults in your account in the specific region ..."); do { ListVaultsRequest request = new ListVaultsRequest() { Marker = lastMarker

API-Version 2012-06-0133

Page 41: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErstellen eines Tresors mithilfe von REST

}; ListVaultsResponse response = client.ListVaults(request); foreach (DescribeVaultOutput output in response.VaultList) { Console.WriteLine("Vault Name: {0} \tCreation Date: {1} \t #of archives: {2}", output.VaultName, output.CreationDate, output.NumberOfArchives); } lastMarker = response.Marker; } while (lastMarker != null); }

static void DeleteVault() { DeleteVaultRequest request = new DeleteVaultRequest() { VaultName = vaultName }; DeleteVaultResponse response = client.DeleteVault(request); } }}

Erstellen eines Tresors in Amazon S3 Glacier mithilfeder REST-API-KonsoleZum Erstellen eines Tresors mit der REST-API siehe Create Vault (PUT vault) (p. 199).

Erstellen eines Tresors mit der Amazon S3 Glacier-KonsoleInformationen zum Erstellen eines Tresors mit der Amazon S3 Glacier (S3 Glacier)-Konsole finden Sieunter Schritt 2: Erstellen eines Tresors in Amazon S3 Glacier (p. 11) im Tutorial Erste Schritte.

Erstellen eines Tresors in Amazon S3 Glacier mit derAWS Command Line InterfaceGehen Sie folgendermaßen vor, um einen Tresor in Amazon S3 Glacier (S3 Glacier) mit dem Befehl AWSCommand Line Interface (AWS CLI) zu erstellen.

Themen• (Voraussetzung) Einrichten der AWS CLI (p. 22)• Beispiel: Erstellen eines Tresors in mit der AWS CLI (p. 35)

(Voraussetzung) Einrichten der AWS CLI1. Laden Sie die AWS CLI herunter und konfigurieren Sie sie. Anleitungen können Sie den folgenden

Themen im Benutzerhandbuch für AWS Command Line Interface entnehmen.

Installieren der AWS-Befehlszeilenschnittstelle

Configuring the AWS Command Line Interface

API-Version 2012-06-0134

Page 42: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von Tresormetadaten

2. Überprüfen Sie die Einrichtung, indem Sie die folgenden Befehle in die Befehlszeile eingeben. DieseBefehle stellen nicht explizit Anmeldeinformationen bereit, daher werden die Anmeldeinformationendes Standardprofils verwendet.

• Versuchen Sie, den Befehl help zu verwenden.

aws help

• Verwenden Sie aws s3 ls, um eine Liste der Buckets auf dem konfigurierten Konto abzurufen.

aws s3 ls

• Verwenden Sie aws configure list, um die aktuellen Konfigurationsdaten anzuzeigen.

aws configure list

Beispiel: Erstellen eines Tresors in mit der AWS CLI1. Verwenden Sie den create-vault-Befehl, um einen Tresor namens awsexamplevault unter

Konto 111122223333 zu erstellen.

aws glacier create-vault --vault-name awsexamplevault --account-id 111122223333

Erwartete Ausgabe:

{ "location": "/111122223333/vaults/awsexamplevault"}

2. Überprüfen Sie die Erstellung mithilfe des describe-vault-Befehls.

aws glacier describe-vault --vault-name awsexamplevault --account-id 111122223333

Abrufen von Tresormetadaten in Amazon S3Glacier

Sie können Informationen zum Tresor abrufen wie z. B. das Erstellungsdatum des Tresors, die Anzahl derArchive im Tresor und die Gesamtgröße aller Archive im Tresor. Amazon S3 Glacier (S3 Glacier) stellt API-Aufrufe bereit, mit denen Sie diese Informationen für einen bestimmten Tresor oder für alle Tresore in einerbestimmten Region in Ihrem Konto abrufen können.

Wenn Sie eine Tresorliste abrufen, gibt S3 Glacier die Liste nach ASCII-Werten der Tresornamen sortiertzurück. Die Liste enthält bis zu 1 000 Tresore. Sie sollten immer das die Antwort auf eine Markierungüberprüfen, bei der die Liste fortgesetzt werden soll. Wenn keine Elemente mehr vorhanden sind, ist derWert des Markierungsfelds gleich null. Sie können die Anzahl der in der Antwort zurückgegebenenTresore begrenzen. Wenn mehr Tresore vorhanden sind, als in der Antwort zurückgegeben werden,wird das Ergebnis paginiert. Sie müssen zusätzliche Anfragen senden, um den nächsten Satz Tresoreabzurufen.

Themen

API-Version 2012-06-0135

Page 43: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von Tresor-Metadaten mit Java

• Abrufen von Tresor-Metadaten in Amazon S3 Glacier mit der AWS SDK for Java (p. 36)• Abrufen von Tresor-Metadaten in Amazon S3 Glacier mit der AWS SDK für .NET (p. 38)• Abrufen von Tresormetadaten mithilfe der REST-API (p. 39)• Abrufen von Tresor-Metadaten in Amazon S3 Glacier mit der AWS Command Line Interface (p. 40)

Abrufen von Tresor-Metadaten in Amazon S3 Glaciermit der AWS SDK for JavaThemen

• Abrufen von Tresor-Metadaten für einen Tresor (p. 36)• Abrufen von Tresor-Metadaten für alle Tresore in einer Region (p. 37)• Beispiel. Abrufen von Tresor-Metadaten mit dem AWS SDK for Java (p. 37)

Abrufen von Tresor-Metadaten für einen TresorSie können die Metadaten für einen bestimmten Tresor oder für alle Tresore in einer bestimmten AWS-Region abrufen. Nachfolgend werden die Schritte zum Abrufen der Tresor-Metadaten für einen bestimmtenTresor mithilfe der Low-Level-API von &AWS SDK for Java beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen eine AWS-Region angeben, in der sich der Tresor befindet. Alle Operationen, die Sie mitdiesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derDescribeVaultRequest-Klasse.

Für Amazon S3 Glacier (S3 Glacier) ist es erforderlich, dass Sie einen Tresornamen und IhreKonto-ID angeben. Wenn Sie keine Konto-ID angeben, wird die Konto-ID übernommen, die denAnmeldeinformationen zugeordnet ist, die Sie zum Signieren der Anforderung verwenden. WeitereInformationen finden Sie im Verwenden der AWS SDK for Java mit Amazon S3 Glacier (p. 127).

3. Ausführen der describeVault -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

Die von S3 Glacier zurückgegebenen Tresor-Metadaten sind im DescribeVaultResult-Objektverfügbar.

Der folgende Java-Codeausschnitt veranschaulicht die vorherigen Schritte.

DescribeVaultRequest request = new DescribeVaultRequest() .withVaultName("*** provide vault name***");

DescribeVaultResult result = client.describeVault(request);

System.out.print( "\nCreationDate: " + result.getCreationDate() + "\nLastInventoryDate: " + result.getLastInventoryDate() + "\nNumberOfArchives: " + result.getNumberOfArchives() + "\nSizeInBytes: " + result.getSizeInBytes() + "\nVaultARN: " + result.getVaultARN() + "\nVaultName: " + result.getVaultName());

API-Version 2012-06-0136

Page 44: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von Tresor-Metadaten mit Java

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Describe Vault (GETvault) (p. 209).

Abrufen von Tresor-Metadaten für alle Tresore in einer RegionSie können auch die listVaults-Methode verwenden, um Metadaten für alle Tresore in einerbestimmten AWS-Region abzurufen.

Mit dem folgenden Java-Code-Snippet wird eine Liste der Tresore in der Region us-west-2 abgerufen.Die Anzahl der bei der Anforderung zurückgegebenen Tresore ist auf 5 beschränkt. Das Code-Snippetführt danach eine Reihe von listVaults-Aufrufen aus, um die gesamte Tresorliste aus der AWS-Regionabzurufen.

AmazonGlacierClient client;client.setEndpoint("https://glacier.us-west-2.amazonaws.com/");

String marker = null;do { ListVaultsRequest request = new ListVaultsRequest() .withLimit("5") .withMarker(marker); ListVaultsResult listVaultsResult = client.listVaults(request); List<DescribeVaultOutput> vaultList = listVaultsResult.getVaultList(); marker = listVaultsResult.getMarker(); for (DescribeVaultOutput vault : vaultList) { System.out.println( "\nCreationDate: " + vault.getCreationDate() + "\nLastInventoryDate: " + vault.getLastInventoryDate() + "\nNumberOfArchives: " + vault.getNumberOfArchives() + "\nSizeInBytes: " + vault.getSizeInBytes() + "\nVaultARN: " + vault.getVaultARN() + "\nVaultName: " + vault.getVaultName()); }} while (marker != null);

Wenn Sie im vorhergehenden Codesegment den Wert Limit in der Anforderung nicht festlegen, gibt S3Glacier bis zu 10 Tresore zurück, wie durch die S3 Glacier-API vorgegeben. Wenn mehr aufzulistendeTresore vorhanden sind, enthält das Antwortfeld marker den Amazon-Ressourcennamen (ARN) desTresors, bei dem die Liste mit einer neuen Anforderung fortzusetzen ist. Anderenfalls hat das Feld markerden Wert null.

Beachten Sie, dass die Informationen, die in der Liste für jeden Tresor zurückgegeben werden, mit denInformationen übereinstimmen, die Sie durch Aufrufen der describeVault-Methode für einen bestimmtenTresor erhalten.

Note

Durch die listVaults-Methode wird die zugrunde liegende REST-API aufgerufen (siehe ListVaults (GET vaults) (p. 227)).

Beispiel. Abrufen von Tresor-Metadaten mit dem AWS SDK forJavaEin funktionierendes Codebeispiel finden Sie unter Beispiel. Erstellen eines Tresors mit der AWS SDK forJava (p. 29). Der folgende Java-Beispielcode erstellt einen Tresor und ruft die Tresor-Metadaten ab.

API-Version 2012-06-0137

Page 45: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von Tresor-Metadaten mit .NET

Abrufen von Tresor-Metadaten in Amazon S3 Glaciermit der AWS SDK für .NETThemen

• Abrufen von Tresor-Metadaten für einen Tresor (p. 38)• Abrufen von Tresor-Metadaten für alle Tresore in einer Region (p. 39)• Beispiel. Abrufen von Tresor-Metadaten mithilfe der Low-Level-API des AWS SDK für .NET (p. 39)

Abrufen von Tresor-Metadaten für einen TresorSie können die Metadaten für einen bestimmten Tresor oder für alle Tresore in einer bestimmten AWS-Region abrufen. Nachfolgend werden die Schritte zum Abrufen der Tresor-Metadaten für einen bestimmtenTresor mithilfe der Low-Level-API von AWS SDK für .NET beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen eine AWS-Region angeben, in der sich der Tresor befindet. Alle Operationen, die Sie mitdiesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derDescribeVaultRequest-Klasse.

Für Amazon S3 Glacier (S3 Glacier) ist es erforderlich, dass Sie einen Tresornamen und IhreKonto-ID angeben. Wenn Sie keine Konto-ID angeben, wird die Konto-ID übernommen, die denAnmeldeinformationen zugeordnet ist, die Sie zum Signieren der Anforderung verwenden. WeitereInformationen finden Sie im Verwenden der AWS SDK für .NET mit Amazon S3 Glacier (p. 129).

3. Ausführen der DescribeVault -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

Die von S3 Glacier zurückgegebenen Tresor-Metadaten sind im DescribeVaultResult-Objektverfügbar.

Der folgende C#-Codeausschnitt veranschaulicht die vorherigen Schritte. Das Snippet ruftMetadateninformationen eines vorhandenen Tresors in der Region USA West (Oregon) ab.

AmazonGlacierClient client;client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);

DescribeVaultRequest describeVaultRequest = new DescribeVaultRequest(){ VaultName = "*** Provide vault name ***"}; DescribeVaultResponse describeVaultResponse = client.DescribeVault(describeVaultRequest);Console.WriteLine("\nVault description...");Console.WriteLine( "\nVaultName: " + describeVaultResponse.VaultName + "\nVaultARN: " + describeVaultResponse.VaultARN + "\nVaultCreationDate: " + describeVaultResponse.CreationDate + "\nNumberOfArchives: " + describeVaultResponse.NumberOfArchives + "\nSizeInBytes: " + describeVaultResponse.SizeInBytes + "\nLastInventoryDate: " + describeVaultResponse.LastInventoryDate );

API-Version 2012-06-0138

Page 46: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von Tresormetadaten mithilfe von REST

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Describe Vault (GETvault) (p. 209).

Abrufen von Tresor-Metadaten für alle Tresore in einer RegionSie können auch die ListVaults-Methode verwenden, um Metadaten für alle Tresore in einerbestimmten AWS-Region abzurufen.

Mit dem folgenden C#-Code-Snippet wird eine Liste der Tresore in der Region USA West (Oregon)abgerufen. Die Anzahl der bei der Anforderung zurückgegebenen Tresore ist auf 5 beschränkt. Das Code-Snippet führt danach eine Reihe von ListVaults-Aufrufen aus, um die gesamte Tresorliste aus der AWS-Region abzurufen.

AmazonGlacierClient client;client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);string lastMarker = null;Console.WriteLine("\n List of vaults in your account in the specific AWS Region ...");do{ ListVaultsRequest request = new ListVaultsRequest() { Limit = 5, Marker = lastMarker }; ListVaultsResponse response = client.ListVaults(request); foreach (DescribeVaultOutput output in response.VaultList) { Console.WriteLine("Vault Name: {0} \tCreation Date: {1} \t #of archives: {2}", output.VaultName, output.CreationDate, output.NumberOfArchives); } lastMarker = response.Marker;} while (lastMarker != null);

Wenn Sie im vorhergehenden Codesegment den Wert Limit in der Anforderung nicht festlegen, gibt S3Glacier bis zu 10 Tresore zurück, wie durch die S3 Glacier-API vorgegeben.

Beachten Sie, dass die Informationen, die in der Liste für jeden Tresor zurückgegeben werden, mit denInformationen übereinstimmen, die Sie durch Aufrufen der DescribeVault-Methode für einen bestimmtenTresor erhalten.

Note

Durch die ListVaults-Methode wird die zugrunde liegende REST-API aufgerufen (siehe ListVaults (GET vaults) (p. 227)).

Beispiel. Abrufen von Tresor-Metadaten mithilfe der Low-Level-API des AWS SDK für .NETEin funktionierendes Codebeispiel finden Sie unter Beispiel. Tresoroperationen mit der Low-Level-API desAWS SDK für .NET (p. 32). Der folgende C#-Beispielcode erstellt einen Tresor und ruft die Tresor-Metadaten ab.

Abrufen von Tresormetadaten mithilfe der REST-APIInformationen zum Auflisten von Tresoren mithilfe der REST-API finden Sie unter List Vaults (GETvaults) (p. 227). Um einen Tresor zu beschreiben, siehe Describe Vault (GET vault) (p. 209).

API-Version 2012-06-0139

Page 47: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von Tresor-Metadaten mit der AWS CLI

Abrufen von Tresor-Metadaten in Amazon S3 Glaciermit der AWS Command Line InterfaceDieses Beispiel zeigt, wie Tresorinformationen und Metadaten in Amazon S3 Glacier (S3 Glacier) mithilfeder AWS Command Line Interface (AWS CLI) abgerufen werden.

Themen• (Voraussetzung) Einrichten der AWS CLI (p. 22)• Abrufen von Tresor-Metadaten mithilfe der AWS CLI (p. 40)

(Voraussetzung) Einrichten der AWS CLI1. Laden Sie die AWS CLI herunter und konfigurieren Sie sie. Anleitungen können Sie den folgenden

Themen im Benutzerhandbuch für AWS Command Line Interface entnehmen.

Installieren der AWS-Befehlszeilenschnittstelle

Configuring the AWS Command Line Interface2. Überprüfen Sie die Einrichtung, indem Sie die folgenden Befehle in die Befehlszeile eingeben. Diese

Befehle stellen nicht explizit Anmeldeinformationen bereit, daher werden die Anmeldeinformationendes Standardprofils verwendet.

• Versuchen Sie, den Befehl help zu verwenden.

aws help

• Verwenden Sie aws s3 ls, um eine Liste der Buckets auf dem konfigurierten Konto abzurufen.

aws s3 ls

• Verwenden Sie aws configure list, um die aktuellen Konfigurationsdaten anzuzeigen.

aws configure list

Abrufen von Tresor-Metadaten mithilfe der AWS CLI• Verwenden Sie den describe-vault-Befehl, um einen Tresor mit dem Namen awsexamplevault

unter Konto 111122223333 zu beschreiben.

aws glacier describe-vault --vault-name awsexamplevault --account-id 111122223333

Herunterladen eines Tresorinventars in Amazon S3Glacier

Nachdem Sie Ihr erstes Archiv in Ihren Tresor hochgeladen haben, erstellt Amazon S3 Glacier (S3 Glacier)automatisch ein Tresorinventar und aktualisiert es etwa einmal täglich. Nachdem S3 Glacier das ersteInventar erstellt hat, kann es in der Regel einen halben Tag und sogar bis zu einem Tag dauern, bis diesesInventar abgerufen werden kann. Sie können ein Tresorinventar von S3 Glacier abrufen, indem Sie diefolgenden zwei Schritte durchführen:

API-Version 2012-06-0140

Page 48: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorinventars

1. Initiieren Sie einen Inventarabrufauftrag mit der Operation Initiate Job (POST jobs) (p. 284).

Important

Eine Richtlinie für den Datenabruf kann dazu führen, dass die Anforderung zur Abrufinitiierungzu einer PolicyEnforcedException-Ausnahme führt und fehlschlägt. WeitereInformationen zu Datenabrufrichtlinien finden Sie unter Amazon S3 Glacier-Richtlinien für denDatenabruf (p. 162). Weitere Informationen zur PolicyEnforcedException-Ausnahmefinden Sie unter Fehlermeldungen (p. 190).

2. Laden Sie nach Abschluss des Auftrags die Bytes mit der Operation Get Job Output (GEToutput) (p. 277) herunter.

Um beispielsweise ein Archiv oder ein Tresorinventar abzurufen, müssen Sie zunächst einenAbrufauftrag initiieren. Die Auftragsanforderung wird asynchron ausgeführt. Wenn Sie eine Abrufaufgabeinitiieren, erstellt S3 Glacier eine Aufgabe und gibt eine Aufgaben-ID in der Antwort zurück. Wenn S3Glacier die Aufgabe abgeschlossen hat, können Sie die Aufgabenausgabe, die Archivbytes oder dieTresorinventardaten abrufen.

Der Auftrag muss abgeschlossen sein, bevor Sie die Ausgabe abrufen können. Um den Status desAuftrags festzustellen, haben Sie folgende Optionen:

• Benachrichtigung über den Abschluss des Auftrags abwarten: Sie können ein Amazon SimpleNotification Service (Amazon SNS)-Thema angeben, an das S3 Glacier die Benachrichtigung über denAbschluss der Aufgabe übermittelt. Sie können Amazon SNS-Thema mithilfe der folgenden Methodenangeben:• Geben Sie ein Amazon SNS-Thema pro Auftragsbasis an.

Wenn Sie einen Auftrag initiieren, können Sie optional ein Amazon SNS-Thema angeben.• Richten Sie Benachrichtigungskonfiguration auf dem Tresor ein.

Sie können Benachrichtigungskonfiguration für bestimmte Ereignisse auf dem Tresor einrichten (sieheKonfigurieren von Tresorbenachrichtigungen in Amazon S3 Glacier (p. 55)). S3 Glacier sendetjedes Mal, wenn das spezifische Ereignis eintritt, eine Nachricht an das angegebene SNS-Thema.

Wenn die Benachrichtigungskonfiguration auf dem Tresor eingerichtet ist und Sie auch ein Amazon SNS-Thema angegeben haben, wenn Sie eine Aufgabe initiieren, sendet S3 Glacier eine Nachricht über denAbschluss der Aufgabe an beide Themen.

Sie können das SNS-Thema so konfigurieren, dass Sie per E-Mail benachrichtigt werden oderdie Nachricht in einem Amazon Simple Queue Service (Amazon SQS) gespeichert wird, denIhre Anwendung abfragen kann. Wenn eine Nachricht in der Warteschlange erscheint, könnenSie überprüfen, ob die Aufgabe erfolgreich abgeschlossen ist, und dann die Aufgabenausgabeherunterladen.

• Aufgabeninformationen explizit anfragen: S3 Glacier stellt auch eine Operation zum Beschreiben derAufgabe bereit (Describe Job (GET JobID) (p. 269)), mit der Sie Aufgabeninformationen abfragenkönnen. Sie können diese Anfrage periodisch senden, um Auftragsinformationen zu erhalten. Es wirdallerdings empfohlen, Amazon SNS-Benachrichtigungen zu verwenden.

Note

Die Informationen, die Sie per SNS-Benachrichtigung erhalten, sind identisch mit denInformationen, die Sie mit der Funktion zur Auftragsbeschreibung abrufen.

ThemenAPI-Version 2012-06-01

41

Page 49: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchÜber das Inventar

• Über das Inventar (p. 42)• Herunterladen eines Tresorbestands in Amazon S3 Glacier mit AWS SDK for Java (p. 42)• Herunterladen einer Tresorinventur in Amazon S3 Glacier mit AWS SDK für .NET (p. 47)• Herunterladen eines Tresorinventars mit der REST-API (p. 52)• Herunterladen eines Tresorbestands in Amazon S3 Glacier mit AWS Command Line

Interface (p. 53)

Über das InventarS3 Glacier aktualisiert ein Tresorinventar etwa einmal pro Tag, beginnend mit dem Tag, an dem Sieein Archiv erstmals in den Tresor hochladen. Wenn dem Tresor seit der letzten Inventur keine Archivehinzugefügt oder aus ihm gelöscht wurden, wird das Inventurdatum nicht aktualisiert. Wenn Sie eineAufgabe für eine Tresorinventur initiieren, gibt S3 Glacier die letzte generierte Inventur zurück, die einPoint-in-Time-Snapshot ist und keine Echtzeitdaten enthält. Wenn S3 Glacier das erste Inventar für denTresor erstellt, ist zu beachten, dass es in der Regel einen halben Tag und sogar bis zu einem Tag dauernkann, bis das Inventar abgerufen werden kann.

Möglicherweise finden Sie es nicht nützlich, ein Tresorinventar für jeden Archiv-Upload abzurufen.Angenommen jedoch, Sie haben eine clientseitige Datenbank, die Metadaten über die Archive zuordnet,die Sie auf S3 Glacier hochladen. Dann finden Sie es möglicherweise nützlich, wenn die Tresorinventurdie Informationen in Ihrer Datenbank nach Bedarf mit dem aktuellen Tresorinventar abgleicht. Siekönnen die Anzahl der abgerufenen Elemente des Tresorinventars begrenzen, indem Sie nach demArchiverstellungsdatum filtern oder ein Kontingent festlegen. Weitere Informationen zur Begrenzung desInventarabrufs finden Sie unter Inventarabfrage für einzelne Bereiche (p. 286).

Das Inventar kann in zwei Formaten zurückgegeben werden: kommaseparierte Werte (CSV) oderJSON. Sie können das Format optional angeben, wenn Sie den Inventurauftrag initiieren. JSON istdas Standardformat. Weitere Informationen über die Datenfelder, die in bei einer Inventarabfragezurückgegeben werden, finden Sie unter Antworttext (p. 280) der Get Job Output-API.

Herunterladen eines Tresorbestands in Amazon S3Glacier mit AWS SDK for JavaNachfolgend werden die Schritte zum Abrufen eines Tresorinventars mithilfe der Low-Level-API für AWSSDK for Java beschrieben. Die High-Level-API unterstützt das Abrufen von Tresorinventar nicht.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen eine AWS-Region angeben, in der sich der Tresor befindet. Alle Operationen, die Sie mitdiesem Client durchführen, gelten für diese AWS-Region.

2. Initiieren Sie durch Ausführen der initiateJob-Methode einen Auftrag zum Abrufen des Inventars.

Ausführen initiateJob durch die Bereitstellung von Jobinformationen in einemInitiateJobRequest Objekt.

Note

Beachten Sie, dass wenn noch keine Inventur für den Tresor abgeschlossen wurde, ein Fehlerzurückgegeben wird. Amazon S3 Glacier (S3 Glacier) bereitet regelmäßig eine Inventur fürjeden Tresor vor, alle 24 Stunden.

S3 Glacier gibt als Antwort eine Aufgaben-ID zurück. Die Antwort ist in einer Instance derInitiateJobResult-Klasse verfügbar.

API-Version 2012-06-0142

Page 50: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen einer Tresorinventur mit Java

InitiateJobRequest initJobRequest = new InitiateJobRequest() .withVaultName("*** provide vault name ***") .withJobParameters( new JobParameters() .withType("inventory-retrieval") .withSNSTopic("*** provide SNS topic ARN ****") );

InitiateJobResult initJobResult = client.initiateJob(initJobRequest);String jobId = initJobResult.getJobId();

3. Warten Sie, bis der Auftrag abgeschlossen wurde.

Sie müssen warten, bis die Ausgabe des Auftrags zum Download bereit ist. Wenn Sie entweder eineBenachrichtigungskonfiguration auf dem Tresor eingerichtet haben oder beim Start der Aufgabe einAmazon Simple Notification Service-Thema (Amazon SNS) angegeben haben, sendet S3 Glacier eineBenachrichtigung an das Thema, nachdem die Aufgabe beendet wurde.

Sie können durch einen Aufruf der S3 Glacier-Methode auch describeJob abfragen, um denAufgabenabschlussstatus zu ermitteln. Allerdings wird die Verwendung eines Amazon SNS-Themasfür Benachrichtigungen empfohlen. Im Codebeispiel im folgenden Abschnitt wird Amazon SNS für S3Glacier zum Veröffentlichen einer Nachricht verwendet.

4. Laden Sie die Auftragsausgabe (Tresorinventardaten) herunter, indem Sie die getJobOutput-Methodeausführen.

Sie geben Ihre Konto-ID, Auftrags-ID und den Namen des Tresors an, indem Sie eine Instance derKlasse GetJobOutputRequest erstellen. Wenn Sie keine Konto-ID angeben, wird die Konto-IDübernommen, die den Anmeldeinformationen zugeordnet ist, die Sie zum Signieren der Anfrageverwenden. Weitere Informationen finden Sie im Verwenden der AWS SDK for Java mit Amazon S3Glacier (p. 127).

Die von S3 Glacier zurückgegebene Ausgabe ist im GetJobOutputResult-Objekt verfügbar.

GetJobOutputRequest jobOutputRequest = new GetJobOutputRequest() .withVaultName("*** provide vault name ***") .withJobId("*** provide job ID ***");GetJobOutputResult jobOutputResult = client.getJobOutput(jobOutputRequest);// jobOutputResult.getBody(); provides the output stream.

Note

Informationen zu der REST-API, die dem Auftrag zugrunde liegt, finden Sie unterAuftragsoperationen (p. 269).

Beispiel. Abrufen eines Tresorinventars mit dem AWS SDK forJavaIm folgenden Java-Codebeispiel wird das Tresorinventar vom angegebenen Tresor abgerufen.

Das Beispiel führt die folgenden Aufgaben durch:

• Dies erstellt ein Amazon Simple Notification Service (Amazon SNS)-Thema.

S3 Glacier sendet nach Abschluss der Aufgabe eine Benachrichtigung an dieses Thema.

API-Version 2012-06-0143

Page 51: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen einer Tresorinventur mit Java

• Dies erstellt eine Amazon Simple Queue Service (Amazon SQS)-Warteschlange.

Im Beispiel wird der Warteschlange eine Richtlinie angefügt, um dem Amazon SNS-Thema dasVeröffentlichen von Nachrichten in der Warteschlange zu ermöglichen.

• Initiiert einen Auftrag zum Herunterladen des angegebenen Archivs.

Das erstellte Amazon SNS-Thema wird in der Aufgabenanforderung angegeben, damit S3 Glacier nachAbschluss der Aufgabe eine Benachrichtigung an das Thema veröffentlichen kann.

• Prüft die Amazon SQS-Warteschlange auf eine Nachricht, die die Auftrags-ID enthält.

Ist eine Nachricht vorhanden, parsen Sie das JSON und prüfen Sie, ob der Auftrag erfolgreichabgeschlossen wurde. Wenn eine Nachricht enthalten ist, laden Sie das Archiv herunter.

• Dies bereinigt das System durch Löschen des Amazon SNS-Themas und der erstellten Amazon SQS-Warteschlange.

import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileWriter;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashMap;import java.util.List;import java.util.Map;

import com.fasterxml.jackson.core.JsonFactory;import com.fasterxml.jackson.core.JsonParseException;import com.fasterxml.jackson.core.JsonParser;import com.fasterxml.jackson.databind.JsonNode;import com.fasterxml.jackson.databind.ObjectMapper;

import com.amazonaws.AmazonClientException;import com.amazonaws.auth.policy.Policy;import com.amazonaws.auth.policy.Principal;import com.amazonaws.auth.policy.Resource;import com.amazonaws.auth.policy.Statement;import com.amazonaws.auth.policy.Statement.Effect;import com.amazonaws.auth.policy.actions.SQSActions;import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.model.GetJobOutputRequest;import com.amazonaws.services.glacier.model.GetJobOutputResult;import com.amazonaws.services.glacier.model.InitiateJobRequest;import com.amazonaws.services.glacier.model.InitiateJobResult;import com.amazonaws.services.glacier.model.JobParameters;import com.amazonaws.services.sns.AmazonSNSClient;import com.amazonaws.services.sns.model.CreateTopicRequest;import com.amazonaws.services.sns.model.CreateTopicResult;import com.amazonaws.services.sns.model.DeleteTopicRequest;import com.amazonaws.services.sns.model.SubscribeRequest;import com.amazonaws.services.sns.model.SubscribeResult;import com.amazonaws.services.sns.model.UnsubscribeRequest;import com.amazonaws.services.sqs.AmazonSQSClient;import com.amazonaws.services.sqs.model.CreateQueueRequest;import com.amazonaws.services.sqs.model.CreateQueueResult;import com.amazonaws.services.sqs.model.DeleteQueueRequest;import com.amazonaws.services.sqs.model.GetQueueAttributesRequest;import com.amazonaws.services.sqs.model.GetQueueAttributesResult;import com.amazonaws.services.sqs.model.Message;import com.amazonaws.services.sqs.model.ReceiveMessageRequest;import com.amazonaws.services.sqs.model.SetQueueAttributesRequest;

API-Version 2012-06-0144

Page 52: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen einer Tresorinventur mit Java

public class AmazonGlacierDownloadInventoryWithSQSPolling {

public static String vaultName = "*** provide vault name ***"; public static String snsTopicName = "*** provide topic name ***"; public static String sqsQueueName = "*** provide queue name ***"; public static String sqsQueueARN; public static String sqsQueueURL; public static String snsTopicARN; public static String snsSubscriptionARN; public static String fileName = "*** provide file name ***"; public static String region = "*** region ***"; public static long sleepTime = 600; public static AmazonGlacierClient client; public static AmazonSQSClient sqsClient; public static AmazonSNSClient snsClient; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();

client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier." + region + ".amazonaws.com"); sqsClient = new AmazonSQSClient(credentials); sqsClient.setEndpoint("https://sqs." + region + ".amazonaws.com"); snsClient = new AmazonSNSClient(credentials); snsClient.setEndpoint("https://sns." + region + ".amazonaws.com"); try { setupSQS(); setupSNS();

String jobId = initiateJobRequest(); System.out.println("Jobid = " + jobId); Boolean success = waitForJobToComplete(jobId, sqsQueueURL); if (!success) { throw new Exception("Job did not complete successfully."); } downloadJobOutput(jobId); cleanUp(); } catch (Exception e) { System.err.println("Inventory retrieval failed."); System.err.println(e); } }

private static void setupSQS() { CreateQueueRequest request = new CreateQueueRequest() .withQueueName(sqsQueueName); CreateQueueResult result = sqsClient.createQueue(request); sqsQueueURL = result.getQueueUrl(); GetQueueAttributesRequest qRequest = new GetQueueAttributesRequest() .withQueueUrl(sqsQueueURL) .withAttributeNames("QueueArn"); GetQueueAttributesResult qResult = sqsClient.getQueueAttributes(qRequest); sqsQueueARN = qResult.getAttributes().get("QueueArn"); Policy sqsPolicy = new Policy().withStatements( new Statement(Effect.Allow) .withPrincipals(Principal.AllUsers) .withActions(SQSActions.SendMessage)

API-Version 2012-06-0145

Page 53: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen einer Tresorinventur mit Java

.withResources(new Resource(sqsQueueARN))); Map<String, String> queueAttributes = new HashMap<String, String>(); queueAttributes.put("Policy", sqsPolicy.toJson()); sqsClient.setQueueAttributes(new SetQueueAttributesRequest(sqsQueueURL, queueAttributes));

} private static void setupSNS() { CreateTopicRequest request = new CreateTopicRequest() .withName(snsTopicName); CreateTopicResult result = snsClient.createTopic(request); snsTopicARN = result.getTopicArn();

SubscribeRequest request2 = new SubscribeRequest() .withTopicArn(snsTopicARN) .withEndpoint(sqsQueueARN) .withProtocol("sqs"); SubscribeResult result2 = snsClient.subscribe(request2); snsSubscriptionARN = result2.getSubscriptionArn(); } private static String initiateJobRequest() { JobParameters jobParameters = new JobParameters() .withType("inventory-retrieval") .withSNSTopic(snsTopicARN); InitiateJobRequest request = new InitiateJobRequest() .withVaultName(vaultName) .withJobParameters(jobParameters); InitiateJobResult response = client.initiateJob(request); return response.getJobId(); } private static Boolean waitForJobToComplete(String jobId, String sqsQueueUrl) throws InterruptedException, JsonParseException, IOException { Boolean messageFound = false; Boolean jobSuccessful = false; ObjectMapper mapper = new ObjectMapper(); JsonFactory factory = mapper.getFactory(); while (!messageFound) { List<Message> msgs = sqsClient.receiveMessage( new ReceiveMessageRequest(sqsQueueUrl).withMaxNumberOfMessages(10)).getMessages();

if (msgs.size() > 0) { for (Message m : msgs) { JsonParser jpMessage = factory.createJsonParser(m.getBody()); JsonNode jobMessageNode = mapper.readTree(jpMessage); String jobMessage = jobMessageNode.get("Message").textValue(); JsonParser jpDesc = factory.createJsonParser(jobMessage); JsonNode jobDescNode = mapper.readTree(jpDesc); String retrievedJobId = jobDescNode.get("JobId").textValue(); String statusCode = jobDescNode.get("StatusCode").textValue(); if (retrievedJobId.equals(jobId)) { messageFound = true; if (statusCode.equals("Succeeded")) { jobSuccessful = true; } } }

API-Version 2012-06-0146

Page 54: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorinventars mit .NET

} else { Thread.sleep(sleepTime * 1000); } } return (messageFound && jobSuccessful); } private static void downloadJobOutput(String jobId) throws IOException { GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest() .withVaultName(vaultName) .withJobId(jobId); GetJobOutputResult getJobOutputResult = client.getJobOutput(getJobOutputRequest); FileWriter fstream = new FileWriter(fileName); BufferedWriter out = new BufferedWriter(fstream); BufferedReader in = new BufferedReader(new InputStreamReader(getJobOutputResult.getBody())); String inputLine; try { while ((inputLine = in.readLine()) != null) { out.write(inputLine); } }catch(IOException e) { throw new AmazonClientException("Unable to save archive", e); }finally{ try {in.close();} catch (Exception e) {} try {out.close();} catch (Exception e) {} } System.out.println("Retrieved inventory to " + fileName); } private static void cleanUp() { snsClient.unsubscribe(new UnsubscribeRequest(snsSubscriptionARN)); snsClient.deleteTopic(new DeleteTopicRequest(snsTopicARN)); sqsClient.deleteQueue(new DeleteQueueRequest(sqsQueueURL)); }}

Herunterladen einer Tresorinventur in Amazon S3Glacier mit AWS SDK für .NETNachfolgend werden die Schritte zum Abrufen eines Tresorinventars mithilfe der Low-Level-API für AWSSDK für .NET beschrieben. Die High-Level-API unterstützt das Abrufen von Tresorinventar nicht.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen eine AWS-Region angeben, in der sich der Tresor befindet. Alle Operationen, die Sie mitdiesem Client durchführen, gelten für diese AWS-Region.

2. Initiieren Sie durch Ausführen der InitiateJob-Methode einen Auftrag zum Abrufen des Inventars.

Sie stellen die Aufgabeninformationen in einem InitiateJobRequest-Objekt bereit. Amazon S3Glacier (S3 Glacier) gibt als Antwort eine Auftrags-ID zurück. Die Antwort ist in einer Instance derInitiateJobResponse-Klasse verfügbar.

AmazonGlacierClient client;client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);

API-Version 2012-06-0147

Page 55: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorinventars mit .NET

InitiateJobRequest initJobRequest = new InitiateJobRequest(){ VaultName = vaultName, JobParameters = new JobParameters() { Type = "inventory-retrieval", SNSTopic = "*** Provide Amazon SNS topic arn ***", }};InitiateJobResponse initJobResponse = client.InitiateJob(initJobRequest);string jobId = initJobResponse.JobId;

3. Warten Sie, bis der Auftrag abgeschlossen wurde.

Sie müssen warten, bis die Ausgabe des Auftrags zum Download bereit ist. Wenn Sie eineBenachrichtigungskonfiguration im Tresor unter Angabe eines Amazon Simple Notification Service-(Amazon SNS)-Themas festgelegt oder während der Initiierung einer Aufgabe ein Amazon SNS-Thema angegeben haben, sendet S3 Glacier nach der Beendigung der Aufgabe eine Nachricht andas betreffende Thema. Im Codebeispiel im folgenden Abschnitt wird Amazon SNS für S3 Glacier zumVeröffentlichen einer Nachricht verwendet.

Sie können durch einen Aufruf der S3 Glacier-Methode auch DescribeJob abfragen, um denAufgabenabschlussstatus zu ermitteln. Allerdings wird die Verwendung von Amazon SNS-Themen zurBenachrichtigung empfohlen.

4. Laden Sie die Auftragsausgabe (Tresorinventardaten) herunter, indem Sie die GetJobOutput-Methodeausführen.

Sie erstellen eine Instance der GetJobOutputRequest-Klasse, um Ihre Konto-ID, den Tresornamenund die Auftrags-ID bereitzustellen. Wenn Sie keine Konto-ID angeben, wird die Konto-ID übernommen,die den Anmeldeinformationen zugeordnet ist, die Sie zum Signieren der Anforderung verwenden.Weitere Informationen finden Sie unter Verwenden der AWS SDK für .NET mit Amazon S3Glacier (p. 129).

Die von S3 Glacier zurückgegebene Ausgabe ist im GetJobOutputResponse-Objekt verfügbar.

GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest(){ JobId = jobId, VaultName = vaultName}; GetJobOutputResponse getJobOutputResponse = client.GetJobOutput(getJobOutputRequest); using (Stream webStream = getJobOutputResponse.Body){ using (Stream fileToSave = File.OpenWrite(fileName)) { CopyStream(webStream, fileToSave); }}

Note

Informationen zu der REST-API, die dem Auftrag zugrunde liegt, finden Sie unterAuftragsoperationen (p. 269).

API-Version 2012-06-0148

Page 56: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorinventars mit .NET

Beispiel: Abrufen eines Tresorinventars mit der Low-Level-APIvon AWS SDK für .NETIm folgenden C#-Codebeispiel wird das Tresorinventar vom angegebenen Tresor abgerufen.

Das Beispiel führt die folgenden Aufgaben durch:

• Richten Sie ein Amazon SNS-Thema ein.

S3 Glacier sendet nach Abschluss der Aufgabe eine Benachrichtigung an dieses Thema.• Richten Sie eine Amazon SQS-Warteschlange ein.

Im Beispiel wird der Warteschlange eine Richtlinie angefügt, um dem Amazon SNS-Thema dasVeröffentlichen von Nachrichten zu ermöglichen.

• Initiieren Sie einen Auftrag zum Herunterladen des angegebenen Archivs.

In der Aufgabenanforderung im Beispiel wird das Amazon SNS-Thema angegeben, damit S3 Glaciernach dem Abschluss der Aufgabe eine Nachricht senden kann.

• Überprüfen Sie die Amazon SQS-Warteschlange regelmäßig auf Nachrichten.

Ist eine Nachricht vorhanden, parsen Sie das JSON und prüfen Sie, ob der Auftrag erfolgreichabgeschlossen wurde. Wenn sie eine Nachricht enthält, laden Sie das Archiv herunter. Im Codebeispielwird die JSON.NET-Bibliothek (siehe JSON.NET) zum Analysieren von JSON verwendet.

• Bereinigen Sie das System, indem Sie das Amazon SNS-Thema und die dafür erstellte Amazon SQS-Warteschlange löschen.

Example

using System;using System.Collections.Generic;using System.IO;using System.Threading;using Amazon.Glacier;using Amazon.Glacier.Model;using Amazon.Glacier.Transfer;using Amazon.Runtime;using Amazon.SimpleNotificationService;using Amazon.SimpleNotificationService.Model;using Amazon.SQS;using Amazon.SQS.Model;using Newtonsoft.Json;

namespace glacier.amazon.com.docsamples{ class VaultInventoryJobLowLevelUsingSNSSQS { static string topicArn; static string queueUrl; static string queueArn; static string vaultName = "*** Provide vault name ***"; static string fileName = "*** Provide file name and path where to store inventory ***"; static AmazonSimpleNotificationServiceClient snsClient; static AmazonSQSClient sqsClient; const string SQS_POLICY = "{" + " \"Version\" : \"2012-10-17\"," + " \"Statement\" : [" + " {" +

API-Version 2012-06-0149

Page 57: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorinventars mit .NET

" \"Sid\" : \"sns-rule\"," + " \"Effect\" : \"Allow\"," + " \"Principal\" : {\"AWS\" : \"arn:aws:iam::123456789012:root\" }," + " \"Action\" : \"sqs:SendMessage\"," + " \"Resource\" : \"{QuernArn}\"," + " \"Condition\" : {" + " \"ArnLike\" : {" + " \"aws:SourceArn\" : \"{TopicArn}\"" + " }" + " }" + " }" + " ]" + "}";

public static void Main(string[] args) { AmazonGlacierClient client; try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Setup SNS topic and SQS queue."); SetupTopicAndQueue(); Console.WriteLine("To continue, press Enter"); Console.ReadKey(); Console.WriteLine("Retrieve Inventory List"); GetVaultInventory(client); } Console.WriteLine("Operations successful."); Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } finally { // Delete SNS topic and SQS queue. snsClient.DeleteTopic(new DeleteTopicRequest() { TopicArn = topicArn }); sqsClient.DeleteQueue(new DeleteQueueRequest() { QueueUrl = queueUrl }); } }

static void SetupTopicAndQueue() { long ticks = DateTime.Now.Ticks; // Setup SNS topic. snsClient = new AmazonSimpleNotificationServiceClient(Amazon.RegionEndpoint.USWest2); sqsClient = new AmazonSQSClient(Amazon.RegionEndpoint.USWest2);

topicArn = snsClient.CreateTopic(new CreateTopicRequest { Name = "GlacierDownload-" + ticks }).TopicArn; Console.Write("topicArn: "); Console.WriteLine(topicArn); CreateQueueRequest createQueueRequest = new CreateQueueRequest(); createQueueRequest.QueueName = "GlacierDownload-" + ticks; CreateQueueResponse createQueueResponse = sqsClient.CreateQueue(createQueueRequest); queueUrl = createQueueResponse.QueueUrl; Console.Write("QueueURL: "); Console.WriteLine(queueUrl);

GetQueueAttributesRequest getQueueAttributesRequest = new GetQueueAttributesRequest(); getQueueAttributesRequest.AttributeNames = new List<string> { "QueueArn" }; getQueueAttributesRequest.QueueUrl = queueUrl; GetQueueAttributesResponse response = sqsClient.GetQueueAttributes(getQueueAttributesRequest);

API-Version 2012-06-0150

Page 58: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorinventars mit .NET

queueArn = response.QueueARN; Console.Write("QueueArn: ");Console.WriteLine(queueArn);

// Setup the Amazon SNS topic to publish to the SQS queue. snsClient.Subscribe(new SubscribeRequest() { Protocol = "sqs", Endpoint = queueArn, TopicArn = topicArn });

// Add the policy to the queue so SNS can send messages to the queue. var policy = SQS_POLICY.Replace("{TopicArn}", topicArn).Replace("{QuernArn}", queueArn); sqsClient.SetQueueAttributes(new SetQueueAttributesRequest() { QueueUrl = queueUrl, Attributes = new Dictionary<string, string> { { QueueAttributeName.Policy, policy } } });

} static void GetVaultInventory(AmazonGlacierClient client) { // Initiate job. InitiateJobRequest initJobRequest = new InitiateJobRequest() { VaultName = vaultName, JobParameters = new JobParameters() { Type = "inventory-retrieval", Description = "This job is to download a vault inventory.", SNSTopic = topicArn, } }; InitiateJobResponse initJobResponse = client.InitiateJob(initJobRequest); string jobId = initJobResponse.JobId;

// Check queue for a message and if job completed successfully, download inventory. ProcessQueue(jobId, client); }

private static void ProcessQueue(string jobId, AmazonGlacierClient client) { ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest() { QueueUrl = queueUrl, MaxNumberOfMessages = 1 }; bool jobDone = false; while (!jobDone) { Console.WriteLine("Poll SQS queue"); ReceiveMessageResponse receiveMessageResponse = sqsClient.ReceiveMessage(receiveMessageRequest); if (receiveMessageResponse.Messages.Count == 0) { Thread.Sleep(10000 * 60); continue; } Console.WriteLine("Got message"); Message message = receiveMessageResponse.Messages[0]; Dictionary<string, string> outerLayer = JsonConvert.DeserializeObject<Dictionary<string, string>>(message.Body);

API-Version 2012-06-0151

Page 59: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorinventars mit REST

Dictionary<string, object> fields = JsonConvert.DeserializeObject<Dictionary<string, object>>(outerLayer["Message"]); string statusCode = fields["StatusCode"] as string;

if (string.Equals(statusCode, GlacierUtils.JOB_STATUS_SUCCEEDED, StringComparison.InvariantCultureIgnoreCase)) { Console.WriteLine("Downloading job output"); DownloadOutput(jobId, client); // Save job output to the specified file location. } else if (string.Equals(statusCode, GlacierUtils.JOB_STATUS_FAILED, StringComparison.InvariantCultureIgnoreCase)) Console.WriteLine("Job failed... cannot download the inventory.");

jobDone = true; sqsClient.DeleteMessage(new DeleteMessageRequest() { QueueUrl = queueUrl, ReceiptHandle = message.ReceiptHandle }); } }

private static void DownloadOutput(string jobId, AmazonGlacierClient client) { GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest() { JobId = jobId, VaultName = vaultName }; GetJobOutputResponse getJobOutputResponse = client.GetJobOutput(getJobOutputRequest); using (Stream webStream = getJobOutputResponse.Body) { using (Stream fileToSave = File.OpenWrite(fileName)) { CopyStream(webStream, fileToSave); } } }

public static void CopyStream(Stream input, Stream output) { byte[] buffer = new byte[65536]; int length; while ((length = input.Read(buffer, 0, buffer.Length)) > 0) { output.Write(buffer, 0, length); } } }}

Herunterladen eines Tresorinventars mit der REST-APIHerunterladen eines Tresorinventars mit der REST-API

Herunterladen eines Tresorinventars erfolgt in zwei Schritten.

1. Initiieren Sie einen Auftrag des Typs inventory-retrieval. Weitere Informationen finden Sie imInitiate Job (POST jobs) (p. 284).

2. Laden Sie die Inventardaten herunter, nachdem der Auftrag abgeschlossen ist. Weitere Informationenfinden Sie im Get Job Output (GET output) (p. 277).

API-Version 2012-06-0152

Page 60: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorbestands mit der AWS CLI

Herunterladen eines Tresorbestands in Amazon S3Glacier mit AWS Command Line InterfaceFühren Sie die folgenden Schritte aus, um einen Tresorbestand in Amazon S3 Glacier (S3 Glacier) mit derAWS Command Line Interface (AWS CLI) herunterzuladen.

Themen• (Voraussetzung) Einrichten der AWS CLI (p. 22)• Beispiel: Herunterladen eines Tresorbestands mit der AWS CLI (p. 53)

(Voraussetzung) Einrichten der AWS CLI1. Laden Sie die AWS CLI herunter und konfigurieren Sie sie. Anleitungen können Sie den folgenden

Themen im Benutzerhandbuch für AWS Command Line Interface entnehmen.

Installieren der AWS-Befehlszeilenschnittstelle

Configuring the AWS Command Line Interface2. Überprüfen Sie die Einrichtung, indem Sie die folgenden Befehle in die Befehlszeile eingeben. Diese

Befehle stellen nicht explizit Anmeldeinformationen bereit, daher werden die Anmeldeinformationendes Standardprofils verwendet.

• Versuchen Sie, den Befehl help zu verwenden.

aws help

• Verwenden Sie aws s3 ls, um eine Liste der Buckets auf dem konfigurierten Konto abzurufen.

aws s3 ls

• Verwenden Sie aws configure list, um die aktuellen Konfigurationsdaten anzuzeigen.

aws configure list

Beispiel: Herunterladen eines Tresorbestands mit der AWS CLI1. Verwenden Sie den initiate-job-Befehl, um eine Lagerabrufaufgabe zu starten.

aws glacier initiate-job --vault-name awsexamplevault --account-id 111122223333 --job-parameters '{"Type": "inventory-retrieval"}'

Erwartete Ausgabe:

{ "location": "/111122223333/vaults/awsexamplevault/jobs/*** jobid ***", "jobId": "*** jobid ***"}

2. Verwenden Sie den describe-job-Befehl, um den Status der vorherigen Abrufaufgabe zuüberprüfen.

API-Version 2012-06-0153

Page 61: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Tresorbestands mit der AWS CLI

aws glacier describe-job --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid ***

Erwartete Ausgabe:

{ "InventoryRetrievalParameters": { "Format": "JSON" }, "VaultARN": "*** vault arn ***", "Completed": false, "JobId": "*** jobid ***", "Action": "InventoryRetrieval", "CreationDate": "*** job creation date ***", "StatusCode": "InProgress"}

3. Warten Sie, bis der Auftrag abgeschlossen wurde.

Sie müssen warten, bis die Ausgabe des Auftrags zum Download bereit ist. Die Aufgaben-ID läuftmindestens 24 Stunden, nachdem S3 Glacier die Aufgabe abgeschlossen hat, nicht ab. Wenn Sieentweder eine Benachrichtigungskonfiguration auf dem Tresor eingerichtet haben oder beim Start derAufgabe ein Amazon Simple Notification Service-Thema (Amazon SNS) angegeben haben, sendet S3Glacier eine Benachrichtigung an das Thema, nachdem die Aufgabe beendet wurde.

Sie können die Benachrichtigungskonfiguration für bestimmte Ereignisse auf dem Tresor einrichten.Weitere Informationen finden Sie unter Konfigurieren von Tresorbenachrichtigungen in Amazon S3Glacier (p. 55). S3 Glacier sendet eine Nachricht an das angegebene SNS-Thema, wenn diespezifischen Ereignisse auftreten.

4. Nach Abschluss laden Sie die Abrufaufgabe mit dem get-job-output-Befehl in die Datei„output.json“ herunter.

aws glacier get-job-output --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid *** output.json

Dieser Befehl erzeugt eine Datei mit den folgenden Feldern.

{"VaultARN":"arn:aws:glacier:region:111122223333:vaults/awsexamplevault","InventoryDate":"*** job completion date ***","ArchiveList":[{"ArchiveId":"*** archiveid ***","ArchiveDescription":"*** archive description (if set) ***","CreationDate":"*** archive creation date ***","Size":"*** archive size (in bytes) ***","SHA256TreeHash":"*** archive hash ***"}{"ArchiveId":...]}

API-Version 2012-06-0154

Page 62: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonfigurieren von Tresorbenachrichtigungen

Konfigurieren von Tresorbenachrichtigungen inAmazon S3 Glacier

Das Abrufen von beliebigen Daten aus Amazon S3 Glacier (S3 Glacier), etwa eines Archivs aus einemTresor oder eines Tresorinventars, ist ein zweistufiger Prozess.

1. Initiieren Sie einen Abrufauftrag.2. Sie können die Auftragsausgabe herunterladen, nachdem der Auftrag abgeschlossen ist.

Sie können eine Benachrichtigungskonfiguration für einen Tresor einrichten, so dass nach Abschluss einesAuftrags eine Nachricht an ein Amazon Simple Notification Service (Amazon SNS)-Thema gesendet wird.

Themen• Konfigurieren von Tresorbenachrichtigungen in S3 Glacier: Allgemeine Konzepte (p. 55)• Konfigurieren von Tresorbenachrichtigungen in Amazon S3 Glacier mithilfe des AWS SDK for

Java (p. 56)• Konfigurieren von Tresorbenachrichtigungen in Amazon S3 Glacier mithilfe des AWS SDK

für .NET (p. 58)• Konfigurieren von Tresorbenachrichtigungen in S3 Glacier mithilfe der REST-API (p. 60)• Konfigurieren von Tresorbenachrichtigungen mithilfe der Amazon S3 Glacier-Konsole (p. 61)

Konfigurieren von Tresorbenachrichtigungen in S3Glacier: Allgemeine KonzepteEine S3 Glacier -Abrufauftragsanforderung wird asynchron ausgeführt. Sie müssen warten, bis S3 Glacierdie Aufgabe abschließt, bevor Sie ihre Ausgabe abrufen können. Sie können S3 Glacier regelmäßigabfragen, um den Status der Aufgabe festzustellen, aber das ist kein optimaler Ansatz. S3 Glacierunterstützt auch Benachrichtigungen. Wenn ein Auftrag abgeschlossen ist, kann eine Benachrichtigung anein Amazon Simple Notification Service (Amazon SNS)-Thema gesendet werden. Dafür müssen Sie dieBenachrichtigungskonfiguration auf dem Tresor einrichten. In der Konfiguration identifizieren Sie eines odermehrere Ereignisse und ein Amazon SNS-Thema, an das S3 Glacier eine Nachricht senden soll, wenn dasEreignis eintritt.

S3 Glacier definiert Ereignisse, die sich speziell auf den Abschluss einer Aufgabe beziehen(ArchiveRetrievalCompleted, InventoryRetrievalCompleted), die Sie derBenachrichtigungskonfiguration des Tresors hinzufügen können. Wenn eine bestimmte Aufgabeabgeschlossen ist, veröffentlicht S3 Glacier eine Benachrichtigung an das SNS-Thema.

Die Benachrichtigungskonfiguration ist ein JSON-Dokument, wie im folgenden Beispiel gezeigt.

{ "Topic": "arn:aws:sns:us-west-2:012345678901:mytopic", "Events": ["ArchiveRetrievalCompleted", "InventoryRetrievalCompleted"] }

Beachten Sie, dass Sie für einen Tresor nur ein Amazon SNS-Thema konfigurieren können.

Note

Das Hinzufügen einer Benachrichtigungskonfiguration zu einem Tresor führt dazu, dassS3 Glacier jedes Mal eine Benachrichtigung sendet, wenn das Ereignis eintritt, das in

API-Version 2012-06-0155

Page 63: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonfigurieren von

Tresorbenachrichtigungen mithilfe von Java

der Benachrichtigungskonfiguration spezifiziert ist. Optional können Sie auch in jederAnfrage zur Auftragsinitiierung ein Amazon SNS-Thema angeben. Wenn Sie sowohl dieBenachrichtigungskonfiguration auf dem Tresor hinzufügen als auch ein Amazon SNS-Thema inIhrer Anfrage zur Aufgabeninitiierung angeben, sendet S3 Glacier beide Benachrichtigungen.

Die Nachricht zum Abschluss der Aufgabe, die S3 Glacier sendet, enthält Informationen wie den Typ derAufgabe (InventoryRetrieval, ArchiveRetrieval), Status des Aufgabenabschlusses, Name desSNS-Themas, Aufgabenstatuscode und die Tresor-ARN. Das Folgende ist eine Beispielbenachrichtigung,die S3 Glacier an ein SNS-Thema gesendet hat, nachdem eine InventoryRetrieval-Aufgabeabgeschlossen wurde.

{ "Action": "InventoryRetrieval", "ArchiveId": null, "ArchiveSizeInBytes": null, "Completed": true, "CompletionDate": "2012-06-12T22:20:40.790Z", "CreationDate": "2012-06-12T22:20:36.814Z", "InventorySizeInBytes":11693, "JobDescription": "my retrieval job", "JobId":"HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID", "SHA256TreeHash":null, "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic", "StatusCode":"Succeeded", "StatusMessage": "Succeeded", "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"}

Wenn das Feld Completed wahr ist, müssen Sie auch anhand des StatusCode überprüfen, ob der Joberfolgreich beendet wurde oder fehlgeschlagen ist.

Beachten Sie, dass das Amazon SNS Thema dem Tresor erlauben muss, eine Benachrichtigung zuveröffentlichen. Standardmäßig kann nur der Eigentümer des SNS-Themas eine Nachricht zum Themaveröffentlichen. Wenn das SNS-Thema und der Tresor jedoch unterschiedlichen AWS-Konten gehören,müssen Sie das SNS-Thema so konfigurieren, dass es Veröffentlichungen von dem Tresor akzeptiert. Siekönnen die Richtlinie für das SNS-Thema in der Amazon SNS-Konsole konfigurieren.

Weitere Informationen zu Amazon SNS finden Sie unter Erste Schritte mit Amazon SNS.

Konfigurieren von Tresorbenachrichtigungen inAmazon S3 Glacier mithilfe des AWS SDK for JavaNachfolgend werden die Schritte zum Konfigurieren von Benachrichtigungen auf einem Tresor mithilfe derLow-Level-API für das AWS SDK for Java beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen eine AWS-Region angeben, in der sich der Tresor befindet. Alle Operationen, die Sie mitdiesem Client durchführen, gelten für diese AWS-Region.

2. Stellen Sie Informationen zur Benachrichtigungskonfiguration bereit, indem Sie eine Instance derSetVaultNotificationsRequest-Klasse erstellen.

Sie müssen den Tresornamen, Informationen zur Benachrichtigungskonfiguration und die Konto-ID bereitstellen. Wenn Sie eine Benachrichtigungskonfiguration spezifizieren, geben Sie den ARN(Amazon-Ressourcenname) eines vorhandenen Amazon SNS-Themas und ein oder mehrere Ereignisse

API-Version 2012-06-0156

Page 64: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonfigurieren von

Tresorbenachrichtigungen mithilfe von Java

an, für die Sie benachrichtigt werden möchten. Eine Liste der unterstützten Ereignisse finden Sie unterSet Vault Notification Configuration (PUT notification-configuration) (p. 236).

3. Ausführen der setVaultNotifications -Methode durch Bereitstellen des Anforderungsobjekts alsParameter.

Der folgende Java-Codeausschnitt veranschaulicht die vorherigen Schritte. Der Ausschnitt richteteine Benachrichtigungskonfiguration auf einem Tresor ein. Die Konfiguration stellt die Anfragean Amazon S3 Glacier (S3 Glacier), eine Benachrichtigung an das angegebene Amazon SNS-Thema zu senden, wenn entweder das Ereignis ArchiveRetrievalCompleted oder das EreignisInventoryRetrievalCompleted eintritt.

SetVaultNotificationsRequest request = new SetVaultNotificationsRequest() .withAccountId("-") .withVaultName("*** provide vault name ***") .withVaultNotificationConfig( new VaultNotificationConfig() .withSNSTopic("*** provide SNS topic ARN ***") .withEvents("ArchiveRetrievalCompleted", "InventoryRetrievalCompleted") );client.setVaultNotifications(request);

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Tresor-Operationen (p. 193).

Beispiel. Festlegen der Benachrichtigungskonfiguration in einemTresor mithilfe der AWS SDK for JavaDas folgende Java-Codebeispiel richtet Benachrichtigungskonfiguration für einen Tresor ein, löscht dieKonfiguration und stellt die Konfiguration wieder her. Eine schrittweise Anleitung zur Ausführung desfolgenden Beispiels finden Sie unter Verwenden der AWS SDK for Java mit Amazon S3 Glacier (p. 127).

Example

import java.io.IOException;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.model.DeleteVaultNotificationsRequest;import com.amazonaws.services.glacier.model.GetVaultNotificationsRequest;import com.amazonaws.services.glacier.model.GetVaultNotificationsResult;import com.amazonaws.services.glacier.model.SetVaultNotificationsRequest;import com.amazonaws.services.glacier.model.VaultNotificationConfig;

public class AmazonGlacierVaultNotifications {

public static AmazonGlacierClient client; public static String vaultName = "*** provide vault name ****"; public static String snsTopicARN = "*** provide sns topic ARN ***";

public static void main(String[] args) throws IOException {

ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();

client = new AmazonGlacierClient(credentials);

API-Version 2012-06-0157

Page 65: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonfigurieren von

Tresorbenachrichtigungen mithilfe von .NET

client.setEndpoint("https://glacier.us-east-1.amazonaws.com/");

try {

System.out.println("Adding notification configuration to the vault."); setVaultNotifications(); getVaultNotifications(); deleteVaultNotifications(); } catch (Exception e) { System.err.println("Vault operations failed." + e.getMessage()); } }

private static void setVaultNotifications() { VaultNotificationConfig config = new VaultNotificationConfig() .withSNSTopic(snsTopicARN) .withEvents("ArchiveRetrievalCompleted", "InventoryRetrievalCompleted"); SetVaultNotificationsRequest request = new SetVaultNotificationsRequest() .withVaultName(vaultName) .withVaultNotificationConfig(config); client.setVaultNotifications(request); System.out.println("Notification configured for vault: " + vaultName); }

private static void getVaultNotifications() { VaultNotificationConfig notificationConfig = null; GetVaultNotificationsRequest request = new GetVaultNotificationsRequest() .withVaultName(vaultName); GetVaultNotificationsResult result = client.getVaultNotifications(request); notificationConfig = result.getVaultNotificationConfig();

System.out.println("Notifications configuration for vault: " + vaultName); System.out.println("Topic: " + notificationConfig.getSNSTopic()); System.out.println("Events: " + notificationConfig.getEvents()); }

private static void deleteVaultNotifications() { DeleteVaultNotificationsRequest request = new DeleteVaultNotificationsRequest() .withVaultName(vaultName); client.deleteVaultNotifications(request); System.out.println("Notifications configuration deleted for vault: " + vaultName); }}

Konfigurieren von Tresorbenachrichtigungen inAmazon S3 Glacier mithilfe des AWS SDK für .NETNachfolgend werden die Schritte zum Konfigurieren von Benachrichtigungen auf einem Tresor mithilfe derLow-Level-API für das AWS SDK für .NET beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen eine AWS-Region angeben, in der sich der Tresor befindet. Alle Operationen, die Sie mitdiesem Client durchführen, gelten für diese AWS-Region.

2. Stellen Sie Informationen zur Benachrichtigungskonfiguration bereit, indem Sie eine Instance derSetVaultNotificationsRequest-Klasse erstellen.

API-Version 2012-06-0158

Page 66: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonfigurieren von

Tresorbenachrichtigungen mithilfe von .NET

Sie müssen den Tresornamen, Informationen zur Benachrichtigungskonfiguration und die Konto-ID bereitstellen. Wenn Sie keine Konto-ID angeben, wird die Konto-ID übernommen, die denAnmeldeinformationen zugeordnet ist, die Sie zum Signieren der Anforderung verwenden. WeitereInformationen finden Sie im Verwenden der AWS SDK für .NET mit Amazon S3 Glacier (p. 129).

Wenn Sie eine Benachrichtigungskonfiguration spezifizieren, geben Sie den ARN (Amazon-Ressourcenname) eines vorhandenen Amazon SNS-Themas und ein oder mehrere Ereignisse an, fürdie Sie benachrichtigt werden möchten. Eine Liste der unterstützten Ereignisse finden Sie unter SetVault Notification Configuration (PUT notification-configuration) (p. 236).

3. Ausführen der SetVaultNotifications -Methode durch Bereitstellen des Anforderungsobjekts alsParameter.

4. Nachdem Sie die Benachrichtigungskonfiguration für einen Tresor eingerichtet haben, können Sie dieKonfigurationsinformationen abrufen, indem Sie die Methode GetVaultNotifications aufrufenund sie entfernen, indem Sie die vom Client bereitgestellte Methode DeleteVaultNotificationsaufrufen.

Beispiel. Festlegen der Benachrichtigungskonfiguration in einemTresor mithilfe der AWS SDK für .NETIm folgenden C#-Codebeispiel werden die vorstehenden Schritte veranschaulicht. Das Beispiel richtet dieBenachrichtigungskonfiguration auf dem Tresor ("examplevault") in der Region USA West (Oregon) ein,ruft die Konfiguration ab und löscht sie dann. Die Konfiguration stellt die Anfrage an Amazon S3 Glacier (S3Glacier), eine Benachrichtigung an das angegebene Amazon SNS-Thema zu senden, wenn entweder dasEreignis ArchiveRetrievalCompleted oder das Ereignis InventoryRetrievalCompleted eintritt.

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Tresor-Operationen (p. 193).

Eine schrittweise Anleitung für die Ausführung des folgenden Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt aktualisieren und einen vorhandenenTresornamen und ein Amazon SNS-Thema angeben.

Example

using System;using System.Collections.Generic;using Amazon.Glacier;using Amazon.Glacier.Model;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class VaultNotificationSetGetDelete { static string vaultName = "examplevault"; static string snsTopicARN = "*** Provide Amazon SNS topic ARN ***";

static IAmazonGlacier client;

public static void Main(string[] args) { try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Adding notification configuration to the vault.");

API-Version 2012-06-0159

Page 67: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonfigurieren von Tresorbenachrichtigungen

mithilfe der REST-API

SetVaultNotificationConfig(); GetVaultNotificationConfig(); Console.WriteLine("To delete vault notification configuration, press Enter"); Console.ReadKey(); DeleteVaultNotificationConfig(); } } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); }

static void SetVaultNotificationConfig() {

SetVaultNotificationsRequest request = new SetVaultNotificationsRequest() { VaultName = vaultName, VaultNotificationConfig = new VaultNotificationConfig() { Events = new List<string>() { "ArchiveRetrievalCompleted", "InventoryRetrievalCompleted" }, SNSTopic = snsTopicARN } }; SetVaultNotificationsResponse response = client.SetVaultNotifications(request); }

static void GetVaultNotificationConfig() { GetVaultNotificationsRequest request = new GetVaultNotificationsRequest() { VaultName = vaultName, AccountId = "-" }; GetVaultNotificationsResponse response = client.GetVaultNotifications(request); Console.WriteLine("SNS Topic ARN: {0}", response.VaultNotificationConfig.SNSTopic); foreach (string s in response.VaultNotificationConfig.Events) Console.WriteLine("Event : {0}", s); }

static void DeleteVaultNotificationConfig() { DeleteVaultNotificationsRequest request = new DeleteVaultNotificationsRequest() { VaultName = vaultName }; DeleteVaultNotificationsResponse response = client.DeleteVaultNotifications(request); } }}

Konfigurieren von Tresorbenachrichtigungen in S3Glacier mithilfe der REST-APIInformationen zum Konfigurieren von Tresorbenachrichtigungen mithilfe der REST-API finden Sieunter Set Vault Notification Configuration (PUT notification-configuration) (p. 236). Darüber hinauskönnen Sie auch Tresorbenachrichtigungen abrufen (Get Vault Notifications (GET notification-configuration) (p. 218)) und Tresorbenachrichtigungen löschen (Delete Vault Notifications (DELETEnotification-configuration) (p. 207)).

API-Version 2012-06-0160

Page 68: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonfigurieren von Tresorbenachrichtigungen

mithilfe der Konsole

Konfigurieren von Tresorbenachrichtigungen mithilfeder Amazon S3 Glacier-KonsoleIn diesem Abschnitt wird beschrieben, wie Sie Tresorbenachrichtigungen mithilfe der Amazon S3Glacier (S3 Glacier)-Konsole konfigurieren. Wenn Sie Benachrichtigungen konfigurieren, geben SieAuftragsabschlussereignisse an, die Benachrichtigungen an ein Amazon Simple Notification Service(Amazon SNS)-Thema auslösen. Neben der Benachrichtigungskonfiguration für den Tresor können Sieauch ein Thema angeben, zu dem Benachrichtigungen veröffentlicht werden sollen, wenn Sie einen Auftraginitiieren. Wenn Ihr Tresor so konfiguriert ist, dass für ein bestimmtes Ereignis eine Benachrichtigungerfolgt und Sie in der Anfrage zur Auftragsinitiierung Benachrichtigungen angeben, werden zweiBenachrichtigungen gesendet.

Konfigurieren einer Tresorbenachrichtigung

1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die S3 Glacier-Konsole unterhttps://console.aws.amazon.com/glacier.

2. Wählen Sie einen Tresor aus der Tresorliste aus.

3. Wählen Sie die Registerkarte Notifications (Benachrichtigungen) aus.4. Wählen Sie enabled im Feld Notifications (Benachrichtigungen) aus.

API-Version 2012-06-0161

Page 69: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonfigurieren von Tresorbenachrichtigungen

mithilfe der Konsole

5. Führen Sie auf der Registerkarte Notifications (Nachrichtigungen) einen der folgenden Schritte aus:

Aufgabe Vorgehensweise

Angeben eines vorhandenen AmazonSNS-Themas

Geben Sie das Amazon SNS-Thema im Textfeld AmazonSNS Topic ARN (ARN eines Amazon SNS-Themas) an.

Das Thema ist ein Amazon-Ressourcenname (ARN), derdie unten gezeigte Form hat.

arn:aws:sns:region:accountId:topicname

Sie finden den ARN eines Amazon SNS-Themas in derAmazon Simple Notification Service (Amazon SNS)-Konsole.

Erstellen eines neuen Amazon SNS-Themas

a. Klicken Sie auf create a new SNS topic (Ein neues SNS-Thema erstellen).

Ein Dialogfeld Create Notifications SNS Topic(Benachrichtigungs-SNS-Thema erstellen) wirdangezeigt.

b. Geben Sie im Feld Topic Name (Name des Themas)den Namen des neuen Themas an.

Wenn Sie das Thema mit SMS-Abonnementsabonnieren möchten, geben Sie einen Namen in dasFeld Display Name (Anzeigename) ein.

API-Version 2012-06-0162

Page 70: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Tresors

Aufgabe Vorgehensweisec. Klicken Sie auf Create Topic (Thema erstellen).

Das Textfeld Amazon SNS Topic ARN (Amazon SNS-Thema-ARN) wird mit dem ARN des neuen Themasausgefüllt.

6. Wählen Sie die Ereignisse aus, die Benachrichtigungen auslösen sollen.

Beispiel: Um Benachrichtigungen nur für den Fall auszulösen, dass Archivabrufaufträgeabgeschlossen sind, aktivieren Sie nur Get Archive Job Complete.

7. Klicken Sie auf Speichern.

Important

Standardmäßig sind einem neuen Thema keine Abonnements zugeordnet. UmBenachrichtigungen zu empfangen, die zu diesem Thema veröffentlicht werden, müssen Siedas Thema abonnieren. Befolgen Sie die Schritte in Abonnieren eines Themas im Handbuch„Erste Schritte” für Amazon Simple Notification Service, um ein neues Thema zu abonnieren.

Löschen eines Tresors in Amazon S3 GlacierAmazon S3 Glacier (S3 Glacier) löscht einen Tresor nur, wenn bei der letzten durchgeführten Inventurkeine Archive mehr im Tresor vorhanden waren und wenn seit der letzten Inventur keine Schreibvorgängefür den Tresor durchgeführt wurden. Informationen zum Löschen von Archiven finden Sie unter Löscheneines Archivs in Amazon S3 Glacier (p. 117). Informationen zum Herunterladen eines Tresorinventarsfinden Sie unter Herunterladen eines Tresorinventars in Amazon S3 Glacier (p. 40).

Note

S3 Glacier bereitet regelmäßig eine Inventur für jeden Tresor vor, alle 24 Stunden. Da die Inventurdie neuesten Informationen möglicherweise nicht berücksichtigt, stellt S3 Glacier sicher, dassder Tresor tatsächlich leer ist, indem es prüft, ob seit der letzten Tresorinventur Schreibvorgängestattgefunden haben.

Themen• Löschen eines Tresors in Amazon S3 Glacier mithilfe der AWS SDK for Java (p. 64)

API-Version 2012-06-0163

Page 71: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Tresors mit Java

• Löschen eines Tresors in Amazon S3 Glacier mithilfe der AWS SDK für .NET (p. 65)• Löschen eines Tresors in S3 Glacier mithilfe der REST-API-Konsole (p. 66)• Löschen eines leeren Tresors mithilfe der Amazon S3 Glacier-Konsole (p. 66)• Löschen eines Tresors in Amazon S3 Glacier mithilfe der AWS Command Line Interface (p. 66)

Löschen eines Tresors in Amazon S3 Glacier mithilfeder AWS SDK for JavaNachfolgend werden die Schritte zum Löschen eines Tresors mithilfe der Low-Level-API für AWS SDK forJava beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, aus der ein Tresor gelöscht werden soll. Alle Operationen, dieSie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derDeleteVaultRequest-Klasse.

Sie müssen den Tresornamen und die Konto-ID angeben. Wenn Sie keine Konto-ID angeben, wirddie Konto-ID übernommen, die den Anmeldeinformationen zugeordnet ist, die Sie zum Signieren derAnforderung verwenden. Weitere Informationen finden Sie im Verwenden der AWS SDK for Java mitAmazon S3 Glacier (p. 127).

3. Ausführen der deleteVault -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

Der Tresor wird von Amazon S3 Glacier (S3 Glacier) nur gelöscht, wenn er leer ist. WeitereInformationen finden Sie im Delete Vault (DELETE vault) (p. 203).

Der folgende Java-Codeausschnitt veranschaulicht die vorherigen Schritte.

try { DeleteVaultRequest request = new DeleteVaultRequest() .withVaultName("*** provide vault name ***");

client.deleteVault(request); System.out.println("Deleted vault: " + vaultName);} catch (Exception e) { System.err.println(e.getMessage());}

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Delete Vault (DELETEvault) (p. 203).

Beispiel. Löschen eines Tresors mithilfe der AWS SDK for JavaEin funktionierendes Codebeispiel finden Sie unter Beispiel. Erstellen eines Tresors mit der AWS SDK forJava (p. 29). Das Java-Codebeispiel zeigt grundlegende Tresoroperationen einschließlich dem Erstellenund Löschen von Tresoren.

API-Version 2012-06-0164

Page 72: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Tresors mithilfe von .NET

Löschen eines Tresors in Amazon S3 Glacier mithilfeder AWS SDK für .NETSowohl die von AWS SDK for .NET bereitgestellten High-Level- und Low-Level-APIs (p. 125) stellen eineMethode zur Verfügung zum Löschen eines Tresors.

Themen• Löschen eines Tresors mithilfe der High-Level-API des AWS SDK für .NET (p. 65)• Löschen eines Tresors mithilfe der Low-Level-API des AWS SDK für .NET (p. 65)

Löschen eines Tresors mithilfe der High-Level-API des AWS SDKfür .NETDie ArchiveTransferManager-Klasse der High-Level-API bietet die DeleteVault-Methode, mit derSie einen Tresor löschen können.

Beispiel. Löschen eines Tresors mithilfe der High-Level-API des AWS SDKfür .NET

Ein funktionierendes Codebeispiel finden Sie unter Beispiel. Tresoroperationen mit der High-Level-API derAWS SDK für .NET (p. 31). Das C#-Codebeispiel zeigt grundlegende Tresoroperationen einschließlichdem Erstellen und Löschen von Tresoren.

Löschen eines Tresors mithilfe der Low-Level-API des AWS SDKfür .NETIm Folgenden werden die Schritte zum Löschen eines Tresors mithilfe des AWS SDK für .NETbeschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, aus der ein Tresor gelöscht werden soll. Alle Operationen, dieSie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derDeleteVaultRequest-Klasse.

Sie müssen den Tresornamen und die Konto-ID angeben. Wenn Sie keine Konto-ID angeben, wirddie Konto-ID übernommen, die den Anmeldeinformationen zugeordnet ist, die Sie zum Signieren derAnforderung verwenden. Weitere Informationen finden Sie im Verwenden der AWS SDK für .NET mitAmazon S3 Glacier (p. 129).

3. Ausführen der DeleteVault -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

Der Tresor wird von Amazon S3 Glacier (S3 Glacier) nur gelöscht, wenn er leer ist. WeitereInformationen finden Sie im Delete Vault (DELETE vault) (p. 203).

Der folgende C#-Codeausschnitt veranschaulicht die vorherigen Schritte. Der Ausschnitt ruftMetadateninformationen eines Tresors ab, der in der Standard-AWS-Region liegt.

AmazonGlacier client;

API-Version 2012-06-0165

Page 73: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Tresors mithilfe von REST

client = new AmazonGlacierClient(Amazon.RegionEndpoint.USEast1);

DeleteVaultRequest request = new DeleteVaultRequest(){ VaultName = "*** provide vault name ***"};

DeleteVaultResponse response = client.DeleteVault(request);

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Delete Vault (DELETEvault) (p. 203).

Beispiel. Löschen eines Tresors mithilfe der Low-Level-API des AWS SDKfür .NET

Ein funktionierendes Codebeispiel finden Sie unter Beispiel. Tresoroperationen mit der Low-Level-API desAWS SDK für .NET (p. 32). Das C#-Codebeispiel zeigt grundlegende Tresoroperationen einschließlichdem Erstellen und Löschen von Tresoren.

Löschen eines Tresors in S3 Glacier mithilfe derREST-API-KonsoleInformationen zum Löschen eines Tresors mithilfe der REST-API finden Sie unter Delete Vault (DELETEvault) (p. 203).

Löschen eines leeren Tresors mithilfe der Amazon S3Glacier-KonsoleAmazon S3 Glacier (S3 Glacier) löscht einen Tresor nur, wenn bei der letzten durchgeführten Inventurkeine Archive mehr im Tresor vorhanden waren und wenn seit der letzten Inventur keine Schreibvorgängefür den Tresor durchgeführt wurden. Informationen zum Löschen von Archiven finden Sie unter Löscheneines Archivs in Amazon S3 Glacier (p. 117). Informationen zum Herunterladen eines Tresorinventarsfinden Sie unter Herunterladen eines Tresorinventars in Amazon S3 Glacier (p. 40).

Im Folgenden werden die Schritte zum Löschen eines leeren Tresors mithilfe der S3 Glacier-Konsolebeschrieben.

1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die S3 Glacier-Konsole unterhttps://console.aws.amazon.com/glacier.

2. Wählen Sie in der AWS-Regionsauswahl die AWS-Region aus, in der sich der Tresor befindet.3. Wählen Sie den Tresor aus.4. Klicken Sie auf Delete Vault (Tresor löschen).

Löschen eines Tresors in Amazon S3 Glacier mithilfeder AWS Command Line InterfaceSie können leere und nicht leere Tresore in Amazon S3 Glacier (S3 Glacier) mit der AWS Command LineInterface (AWS CLI) löschen.

API-Version 2012-06-0166

Page 74: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Tresors mithilfe der AWS CLI

Themen• (Voraussetzung) Einrichten der AWS CLI (p. 22)• Beispiel: Löschen eines leeren Tresors mithilfe der AWS CLI (p. 67)• Beispiel: Löschen eines nicht leeren Tresors mithilfe der AWS CLI (p. 67)

(Voraussetzung) Einrichten der AWS CLI1. Laden Sie die AWS CLI herunter und konfigurieren Sie sie. Anleitungen können Sie den folgenden

Themen im Benutzerhandbuch für AWS Command Line Interface entnehmen.

Installieren der AWS-Befehlszeilenschnittstelle

Configuring the AWS Command Line Interface2. Überprüfen Sie die Einrichtung, indem Sie die folgenden Befehle in die Befehlszeile eingeben. Diese

Befehle stellen nicht explizit Anmeldeinformationen bereit, daher werden die Anmeldeinformationendes Standardprofils verwendet.

• Versuchen Sie, den Befehl help zu verwenden.

aws help

• Verwenden Sie aws s3 ls, um eine Liste der Buckets auf dem konfigurierten Konto abzurufen.

aws s3 ls

• Verwenden Sie aws configure list, um die aktuellen Konfigurationsdaten anzuzeigen.

aws configure list

Beispiel: Löschen eines leeren Tresors mithilfe der AWS CLI• Verwenden Sie den delete-vault-Befehl, um einen Tresor zu löschen, der keine Archive enthält.

•aws glacier delete-vault --vault-name awsexamplevault --account-id 111122223333

Beispiel: Löschen eines nicht leeren Tresors mithilfe der AWS CLIS3 Glacier löscht einen Tresor nur, wenn bei der letzten durchgeführten Inventur keine Archive mehrim Tresor vorhanden waren und wenn seit der letzten Inventur keine Schreibvorgänge für den Tresordurchgeführt wurden. Das Löschen eines nicht leeren Tresors erfolgt in drei Schritten: Archiv-IDs aus demBestandsbericht eines Tresors abrufen, jedes Archiv löschen und dann den Tresor löschen.

1. Verwenden Sie den initiate-job-Befehl, um eine Lagerabrufaufgabe zu starten.

aws glacier initiate-job --vault-name awsexamplevault --account-id 111122223333 --job-parameters '{"Type": "inventory-retrieval"}'

Erwartete Ausgabe:

{

API-Version 2012-06-0167

Page 75: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Tresors mithilfe der AWS CLI

"location": "/111122223333/vaults/awsexamplevault/jobs/*** jobid ***", "jobId": "*** jobid ***"}

2. Verwenden Sie den describe-job-Befehl, um den Status der vorherigen Abrufaufgabe zuüberprüfen.

aws glacier describe-job --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid ***

Erwartete Ausgabe:

{ "InventoryRetrievalParameters": { "Format": "JSON" }, "VaultARN": "*** vault arn ***", "Completed": false, "JobId": "*** jobid ***", "Action": "InventoryRetrieval", "CreationDate": "*** job creation date ***", "StatusCode": "InProgress"}

3. Warten Sie, bis der Auftrag abgeschlossen wurde.

Sie müssen warten, bis die Ausgabe des Auftrags zum Download bereit ist. Wenn Sie eineBenachrichtigungskonfiguration auf dem Tresor eingerichtet haben oder beim Start der Aufgabe einAmazon Simple Notification Service-Thema (Amazon SNS) angegeben haben, sendet S3 Glacier eineBenachrichtigung an das Thema, nachdem die Aufgabe beendet wurde.

Sie können Benachrichtigungskonfiguration für bestimmte Ereignisse auf dem Tresor einrichten.Weitere Informationen finden Sie unter Konfigurieren von Tresorbenachrichtigungen in Amazon S3Glacier (p. 55). S3 Glacier sendet eine Nachricht an das angegebene SNS-Thema, wenn dasspezifische Ereignis eintritt.

4. Nach Abschluss laden Sie die Abrufaufgabe mit dem get-job-output-Befehl in die Datei„output.json“ herunter.

aws glacier get-job-output --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid *** output.json

Dieser Befehl erzeugt eine Datei mit den folgenden Feldern.

{"VaultARN":"arn:aws:glacier:region:111122223333:vaults/awsexamplevault","InventoryDate":"*** job completion date ***","ArchiveList":[{"ArchiveId":"*** archiveid ***","ArchiveDescription":*** archive description (if set) ***,"CreationDate":"*** archive creation date ***","Size":"*** archive size (in bytes) ***","SHA256TreeHash":"*** archive hash ***"}{"ArchiveId":...]}

API-Version 2012-06-0168

Page 76: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchMarkieren von Tresoren

5. Verwenden Sie den delete-archive-Befehl, um jedes Archiv aus einem Tresor zu löschen, bis keinArchiv übrig bleibt.

aws glacier delete-archive --vault-name awsexamplevault --account-id 111122223333 --archive-id *** archiveid ***

6. Verwenden Sie den initiate-job-Befehl, um eine neue Lagerabrufaufgabe zu starten.

aws glacier initiate-job --vault-name awsexamplevault --account-id 111122223333 --job-parameters '{"Type": "inventory-retrieval"}'

7. Nach Abschluss löschen Sie mit dem delete-vault-Befehl einen Tresor ohne Archive.

aws glacier delete-vault --vault-name awsexamplevault --account-id 111122223333

Markieren der Amazon S3 Glacier-TresoreSie können Amazon S3 Glacier (S3 Glacier)-Tresoren Metadaten in Form von Tags zuweisen. Ein Tagist ein Schlüssel-Wert-Paar, das Sie für einen Tresor definieren. Grundlegende Informationen über dasMarkieren, einschließlich der Beschränkungen von Tags, finden Sie unter Markieren von Amazon S3Glacier-Ressourcen (p. 166).

In den folgenden Themen wird beschrieben, wie Sie Tags zu Tresoren hinzufügen, auflisten und entfernenkönnen.

Themen• Markieren von Tresoren mit der Amazon S3 Glacier-Konsole (p. 69)• Markieren von Tresoren mit der Amazon S3 Glacier-API (p. 70)• Zugehörige Abschnitte (p. 70)

Markieren von Tresoren mit der Amazon S3 Glacier-KonsoleSie können, wie in den nachfolgenden Verfahren beschrieben, mit der S3 Glacier-Konsole Tagshinzufügen, auflisten und entfernen.

So zeigen Sie die Tags für einen Tresor an

1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die S3 Glacier-Konsole unterhttps://console.aws.amazon.com/glacier.

2. Wählen Sie in der AWS-Regionsauswahl eine AWS-Region aus.3. Wählen Sie auf der Seite Amazon S3 Glacier Vaults (Amazon S3 Glacier-Tresore) einen Tresor aus.4. Wählen Sie die Registerkarte Tags aus. Die Tags für den betreffenden Tresor werden angezeigt.

So fügen Sie einem Tresor ein Tag hinzu

1. Öffnen Sie die S3 Glacier-Konsole und wählen Sie in der AWS-Regionsauswahl eine Region aus.2. Wählen Sie auf der Seite Amazon S3 Glacier Vaults (Amazon S3 Glacier-Tresore) einen Tresor aus.3. Wählen Sie die Registerkarte Tags aus.

API-Version 2012-06-0169

Page 77: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchMarkieren von Tresoren mit der Amazon S3 Glacier-API

4. Geben Sie den Tag-Schlüssel in das Feld Key (Schlüssel) ein oder geben Sie optional einen Tag-Wertim Feld Value (Wert) an und wählen Sie dann Save (Speichern).

Wenn die Schaltfläche Save (Speichern) nicht aktiviert ist, entspricht entweder der angegebeneTag-Schlüssel oder der Tag-Wert nicht den Tag-Einschränkungen. Weitere Informationen zu Tag-Einschränkungen finden Sie unter Einschränkungen für Tags (p. 166).

So entfernen Sie ein Tag aus einem Tresor

1. Öffnen Sie die S3 Glacier-Konsole und wählen Sie in der AWS-Regionsauswahl eine Region aus.2. Wählen Sie auf der Seite Amazon S3 Glacier Vaults (Amazon S3 Glacier-Tresore) einen Tresor aus.3. Wählen Sie die Registerkarte Tags, und aktivieren Sie anschließend das Kontrollkästchen x am Ende

der Zeile, in der das zu löschende Tag beschrieben wird.4. Wählen Sie Delete.

Markieren von Tresoren mit der Amazon S3 Glacier-APISie können Tags mithilfe der S3 Glacier-API hinzufügen, auflisten und entfernen. Beispiele finden Sie in derfolgenden Dokumentation:

Add Tags To Vault (POST tags add) (p. 196)

Fügt Tags für den angegebenen Tresor hinzu oder aktualisiert diese.List Tags For Vault (GET tags) (p. 224)

Listet die Tags für den angegebenen Tresor auf.Remove Tags From Vault (POST tags remove) (p. 232)

Entfernt Tags aus dem angegebenen Tresor.

Zugehörige Abschnitte

• Markieren von Amazon S3 Glacier-Ressourcen (p. 166)

Amazon S3 Glacier-TresorverriegelungDie folgenden Themen beschreiben, wie ein Tresor in Amazon S3 Glacier verriegelt wird und wieTresorverriegelungs-Richtlinien verwendet werden können.

Themen• Übersicht über Tresorverriegelung (p. 70)• Verriegeln eines Tresors mithilfe der Amazon S3 Glacier-API (p. 71)

Übersicht über TresorverriegelungS3 Glacier-Tresorverriegelung erlaubt Ihnen, Compliance-Kontrollen für einzelne S3 Glacier-Tresore miteiner Tresorverriegelungs-Richtlinie problemlos bereitzustellen und durchzusetzen. Sie können in einer

API-Version 2012-06-0170

Page 78: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerriegeln eines Tresors mithilfe der API

Tresorverriegelungs-Richtlinie beispielsweise eine WORM-Bedingung (write once, read many) festlegenund die Richtlinie vor zukünftigen Änderungen schützen. Einmal verriegelt, kann die Richtlinie nicht mehrgeändert werden.

S3 Glacier setzt die Kontrollen durch, die in der Tresorverriegelungs-Richtlinie vorgeschriebensind, um Ihnen dabei zu helfen, Ihre Compliance-Ziele, z. B. in Bezug auf Datenaufbewahrung, zuerreichen. Sie können eine Vielzahl von Compliance-Kontrollen in einer Tresorverriegelungs-Richtliniemithilfe der Richtliniensprache AWS Identity and Access Management (IAM) bereitstellen. WeitereInformationen zu Tresorverriegelungs-Richtlinien finden Sie unter Amazon S3 Glacier-Zugriffskontrolle mitTresorverriegelungs-Richtlinien (p. 148).

Eine Tresorverriegelungs-Richtlinie unterscheidet sich von einer Tresorzugriffs-Richtlinie. Beide Richtlinienregeln Zugriffskontrollen zu Ihrem Tresor. Eine Tresorverriegelungs-Richtlinie kann jedoch gesperrtwerden, um zukünftige Änderungen zu verhindern, und bietet damit eine strenge Durchsetzung für IhreCompliance-Kontrollen. Mit der Tresorverriegelungs-Richtlinie können Sie rechtliche und Compliance-Kontrollen bereitstellen, die in der Regel strenge Kontrollen des Datenzugriffs erfordern. Im Gegensatzdazu implementieren Sie mithilfe von Tresorzugriffsrichtlinien Zugriffskontrollen, die nicht Compliance-abhängig sind, die vielmehr temporär sind und häufig geändert werden. Tresorverriegelungs- undTresorzugriffsrichtlinien können zusammen eingesetzt werden. Beispielsweise können Sie zeitbasierteDatenaufbewahrungsregeln in der Tresorverriegelungs-Richtlinie implementieren (Löschen verweigern) undbestimmten Dritten oder Ihren Geschäftspartnern Lesezugriff gewähren (Lesen erlauben).

Die Verriegelung eines Tresors erfolgt in zwei Schritten:

1. Beginnen Sie die Verriegelung, indem Sie Ihrem Tresor eine Tresorverriegelungs-Richtlinie anfügen,wodurch die Verriegelung in den Status „In Bearbeitung“ versetzt und eine Verriegelungs-IDzurückgegeben wird. Während sie im Status „In Bearbeitung“ ist, haben Sie 24 Stunden Zeit, IhreTresorverriegelungs-Richtlinie zu validieren, bevor die Verriegelungs-ID abläuft.

2. Verwenden Sie die Verriegelungs-ID, um den Verriegelungsprozess abzuschließen. Wenn dieTresorverriegelungsrichtlinie nicht wie erwartet funktioniert, können Sie die Sperre stoppen und vonAnfang an neu starten. Informationen zur Verwendung der S3 Glacier-API zum Verriegeln eines Tresorsfinden Sie unter Verriegeln eines Tresors mithilfe der Amazon S3 Glacier-API (p. 71).

Verriegeln eines Tresors mithilfe der Amazon S3Glacier-APIUm Ihren Tresor mithilfe der Glacier-API zu verriegeln, rufen Sie zunächst Initiate Vault Lock (POST lock-policy) (p. 221) mit einer Tresorverriegelungs-Richtlinie auf, in der die Kontrollen, die Sie implementierenmöchten, spezifiziert werden. Initiate Vault Lock (POST lock-policy) (p. 221) fügt die Richtlinie an IhrenTresor an, überführt die Tresorverriegelung in den Status "In Bearbeitung" und gibt eine eindeutigeVerriegelungs-ID zurück. Nachdem die Tresorverriegelung in den Status „In Bearbeitung“ versetztwurde, haben Sie 24 Stunden Zeit, um die Verriegelung abzuschließen, indem Sie Complete Vault Lock(POST lockId) (p. 201) mit der von Initiate Vault Lock (POST lock-policy) (p. 221) zurückgegebenenVerriegelungs-ID aufrufen. Nachdem der Tresor verriegelt wurde, kann er nicht mehr entriegelt werden.

Wenn Sie den Tresorverriegelungsprozess nicht innerhalb von 24 Stunden nach Eingabe des Status„In Bearbeitung“ beenden, wird Ihr Tresor automatisch den Status „In Bearbeitung“ verlassen und dieTresorverriegelungs-Richtlinie wird entfernt. Sie können Initiate Vault Lock (POST lock-policy) (p. 221)erneut aufrufen, um eine neue Tresorverriegelungs-Richtlinie zu installieren und in den Status „InBearbeitung“ zu wechseln.

Der Status „In Bearbeitung“ bietet die Möglichkeit, Ihre Tresorverriegelungs-Richtlinie vor der Verriegelungzu testen. Ihre Tresorverriegelungs-Richtlinie erreicht während des Status „In Bearbeitung“ ihre volleWirksamkeit, so als ob der Tresor gesperrt wäre, mit der Ausnahme, dass Sie die Richtlinie durch denAufruf von Abort Vault Lock (DELETE lock-policy) (p. 194) entfernen können. Sie können die KombinationAbort Vault Lock (DELETE lock-policy) (p. 194)/Initiate Vault Lock (POST lock-policy) (p. 221) so oft

API-Version 2012-06-0171

Page 79: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerriegeln eines Tresors mithilfe der API

wie nötig wiederholen, um Ihre Richtlinie zu justieren und um die Änderungen an Ihrer Tresorverriegelungs-Richtlinie zu validieren.

Nachdem Sie die Tresorverriegelungs-Richtlinie validiert haben, können Sie Complete Vault Lock(POST lockId) (p. 201) mit der aktuellen Verriegelungs-ID aufrufen, um den Tresorverriegelungs-Prozess abzuschließen. Ihr Tresor wechselt in den verriegelten Status, in dem die Tresorverriegelungs-Richtlinie nicht mehr geändert werden und nicht mehr durch Aufruf von Abort Vault Lock (DELETE lock-policy) (p. 194) entfernt werden kann.

Zugehörige Abschnitte

• Amazon S3 Glacier-Zugriffskontrolle mit Tresorverriegelungs-Richtlinien (p. 148)• Abort Vault Lock (DELETE lock-policy) (p. 194)• Complete Vault Lock (POST lockId) (p. 201)• Get Vault Lock (GET lock-policy) (p. 215)• Initiate Vault Lock (POST lock-policy) (p. 221)

API-Version 2012-06-0172

Page 80: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchArchivoperationen

Arbeiten mit Archiven in Amazon S3Glacier

Als Archiv wird jedes beliebige Objekt bezeichnet, wie z. B. ein Foto, Video oder Dokument, das Sie ineinem Tresor speichern. Es ist eine Basiseinheit der Speicherung in Amazon S3 Glacier (S3 Glacier).Jedes Archiv besitzt eine eindeutige ID und optional eine Beschreibung. Wenn Sie ein Archiv hochladen,gibt S3 Glacier eine Antwort zurück, die eine Archiv-ID enthält. Diese Archiv-ID ist in der AWS-Region, inder das Archiv gespeichert wird, eindeutig. Es folgt ein Beispiel für eine Archiv-ID.

TJgHcrOSfAkV6hdPqOATYfp_0ZaxL1pIBOc02iZ0gDPMr2ig-nhwd_PafstsdIf6HSrjHnP-3p6LCJClYytFT_CBhT9CwNxbRaM5MetS3I-GqwxI3Y8QtgbJbhEQPs0mJ3KExample

Archiv-IDs sind 138 Bytes lang. Wenn Sie ein Archiv hochladen, können Sie optional eine Beschreibungangeben. Sie können ein Archiv mithilfe seiner ID, aber nicht mithilfe seiner Beschreibung abrufen.

Important

S3 Glacier bietet außerdem eine Managementkonsole. Sie können mit der Konsole Tresoreerstellen und löschen. Alle anderen Interaktionen mit S3 Glacier erfordern jedoch, dass Sie dieAWS Command Line Interface (CLI) verwenden oder Code schreiben. Zum Hochladen vonDaten (Fotos, Videos und andere Dokumente) müssen Sie beispielsweise entweder die AWS CLIverwenden oder Code schreiben, um direkt unter Verwendung der REST-API oder mit den AWSSDKs Anfragen zu senden. Weitere Informationen zur Verwendung von S3 Glacier mit der AWSCLI finden Sie in der AWS CLI-Referenz für S3 Glacier. Rufen Sie AWS Command Line Interfaceauf, um die AWS CLI zu installieren.

Themen• Archivoperationen in Amazon S3 Glacier (p. 73)• Pflegen von clientseitigen Archivmetadaten (p. 74)• Hochladen eines Archivs in Amazon S3 Glacier (p. 75)• Herunterladen eines Archivs in Amazon S3 Glacier (p. 90)• Löschen eines Archivs in Amazon S3 Glacier (p. 117)• Abfragen eines Archivs in Amazon S3 Glacier (p. 124)

Archivoperationen in Amazon S3 GlacierS3 Glacier unterstützt die folgenden grundlegenden Archivoperationen: Hochladen, Herunterladen undLöschen. Das Herunterladen eines Archivs ist ein asynchroner Vorgang.

Hochladen eines Archivs in Amazon S3 GlacierSie können ein Archiv in einer einzigen Operation oder in Teilen hochladen. Der API-Aufruf, den Sieverwenden, um ein Archiv in Teilen hochzuladen, wird als „mehrteiliger Upload“ bezeichnet. WeitereInformationen finden Sie unter Hochladen eines Archivs in Amazon S3 Glacier (p. 75).

Important

S3 Glacier bietet außerdem eine Managementkonsole. Sie können mit der Konsole Tresoreerstellen und löschen. Alle anderen Interaktionen mit S3 Glacier erfordern jedoch, dass Sie die

API-Version 2012-06-0173

Page 81: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSuchen eines Archivs

AWS Command Line Interface (CLI) verwenden oder Code schreiben. Zum Hochladen vonDaten (Fotos, Videos und andere Dokumente) müssen Sie beispielsweise entweder die AWS CLIverwenden oder Code schreiben, um direkt unter Verwendung der REST-API oder mit den AWSSDKs Anfragen zu senden. Weitere Informationen zur Verwendung von S3 Glacier mit der AWSCLI finden Sie in der AWS CLI-Referenz für S3 Glacier. Rufen Sie AWS Command Line Interfaceauf, um die AWS CLI zu installieren.

Suchen einer Archiv-ID in Amazon S3 GlacierSie können die Archiv-ID ermitteln, indem Sie das Tresorinventar für den Tresor, in dem sich Archivbefindet, herunterladen. Weitere Informationen zum Herunterladen des Tresorinventars finden Sie unterHerunterladen eines Tresorinventars in Amazon S3 Glacier (p. 40).

Herunterladen eines Archivs in Amazon S3 GlacierDas Herunterladen eines Archivs ist ein asynchroner Vorgang. Sie müssen zunächst einen Auftraginitiieren, um ein bestimmtes Archiv herunterzuladen. Nach dem Empfang der Aufgabenanfrage bereitetS3 Glacier das Archiv zum Herunterladen vor. Sie können Ihre Archivdaten herunterladen, nachdem derAuftrag abgeschlossen ist. Aufgrund des asynchronen Charakters der Aufgabe können Sie an S3 Glacierdie Anfrage stellen, eine Benachrichtigung an ein Amazon Simple Notification Service (Amazon SNS)-Thema zu senden, wenn die Aufgabe abgeschlossen ist. Sie können ein SNS-Thema für jede einzelneAuftragsanfrage angeben oder Ihren Tresor so konfigurieren, dass eine Benachrichtigung gesendet wird,wenn bestimmte Tresorereignisse eintreten. Weitere Informationen über das Herunterladen von Archivenfinden Sie unter Herunterladen eines Archivs in Amazon S3 Glacier (p. 90).

Löschen eines Archivs in Amazon S3 GlacierS3 Glacier stellt einen API-Aufruf bereit, mit dem Sie jeweils ein Archiv löschen können. WeitereInformationen finden Sie unter Löschen eines Archivs in Amazon S3 Glacier (p. 117).

Aktualisieren eines Archivs in S3 GlacierNachdem ein Archiv hochgeladen wurde, kann weder sein Inhalt noch seine Beschreibung aktualisiertwerden. Sie können den Inhalt oder die Beschreibung des Archivs nur aktualisieren, indem Sie das Archivlöschen und ein anderes Archiv hochladen. Beachten Sie, dass jedes Mal, wenn Sie ein Archiv hochladen,S3 Glacier Ihnen eine eindeutige Archiv-ID zurückgibt.

Pflegen von clientseitigen ArchivmetadatenMit Ausnahme der optionalen Archivbeschreibung unterstützt S3 Glacier keine weiteren Metadaten für dieArchive. Wenn Sie ein Archiv hochladen, weist ihm S3 Glacier eine Archiv-ID zu, eine opake Sequenz vonZeichen, die keine Rückschlüsse auf das Archiv erlaubt. Es bietet sich darum an, clientseitig Metadaten fürdie Archive zu erstellen. Die Metadaten können den Archivnamen und weitere sinnvolle Informationen überdas Archiv umfassen.

Note

Wenn Sie eine Kunde von Amazon Simple Storage Service (Amazon S3), dann wissen Sie,dass Sie einem Objekt, wenn Sie es in einen Bucket hochladen, einen Objektschlüssel wie z. B.MyDocument.txt oder SomePhoto.jpg zuweisen können. In S3 Glacier können Sie denArchiven, die Sie hochladen, keinen Schlüsselnamen zuweisen.

Wenn Sie clientseitige Archivmetadaten pflegen, beachten Sie, dass S3 Glacier ein Tresorinventarverwaltet, dass Archiv-IDs und alle Beschreibungen, die Sie beim Hochladen des Archivs angegebenhaben, umfasst. Sie können das Tresorinventar gelegentlich herunterladen, um alle Informationen in Ihrer

API-Version 2012-06-0174

Page 82: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs

kundenseitigen Datenbank, die Sie für die Archivmetadaten pflegen, abzugleichen. S3 Glacier unternimmtdie Tresorinventur jedoch nahezu täglich. Wenn Sie ein Tresorinventar anfordern, gibt S3 Glacier das letzteerstellte Inventar zurück, ein Point-in-Time-Snapshot.

Hochladen eines Archivs in Amazon S3 GlacierIn Amazon S3 Glacier (S3 Glacier) ist eine Managementkonsole verfügbar, mit der Sie Tresore erstellenund löschen können. Allerdings können Sie mit der Managementkonsole keine Archive in S3 Glacierhochladen. Zum Hochladen von Daten, z. B. Fotos, Videos und andere Dokumente, müssen Sie entwederdie AWS CLI verwenden oder Code schreiben, um direkt unter Verwendung der REST-API oder mit denAWS-SDKs Anforderungen zu senden.

Weitere Informationen zur Verwendung von S3 Glacier mit der AWS CLI finden Sie in der AWS CLI-Referenz für S3 Glacier. Rufen Sie AWS Command Line Interface auf, um die AWS CLI zu installieren. Inden folgenden Themen zum Hochladen wird beschrieben, wie Archive mit AWS SDK for Java, AWS SDKfor .NET und der REST-API in S3 Glacier hochgeladen werden.

Themen• Optionen zum Hochladen eines Archivs in Amazon S3 Glacier (p. 75)• Hochladen eines Archivs in einer einzigen Operation (p. 76)• Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82)

Optionen zum Hochladen eines Archivs in Amazon S3GlacierJe nach Größe der Daten, die hochgeladen werden, bietet S3 Glacier die folgenden Optionen:

• Archive in einer einzelnen Operation hochladen – Sie können Archive mit einer Größe zwischen 1 Byteund 4 GB in einem Vorgang hochladen. Wir empfehlen S3 Glacier-Kunden jedoch, zum Hochladen vonArchiven, die größer als 100 MB sind, mehrteilige Uploads zu verwenden. Weitere Informationen findenSie unter Hochladen eines Archivs in einer einzigen Operation (p. 76).

• Hochladen der Archive in Teilen – Mit der API für den mehrteiligen Upload können Sie große Archive mitbis zu 40.000 GB (10.000 * 4 GB) hochladen.

Die API-Funktion für den mehrteiligen Upload soll die Benutzererfahrung beim Hochladen größererArchive verbessern. Sie können Archive in mehreren Teilen hochladen. Diese Teile können unabhängigvoneinander in beliebiger Reihenfolge und parallel hochgeladen werden. Wenn der Upload eines Teilsfehlschlägt, müssen Sie nur diesen Teil und nicht das gesamte Archiv erneut hochladen. Sie könnenmehrteilige Uploads für Archive mit einer Größe von 1 Byte bis zu ca. 40.000 GB verwenden. WeitereInformationen finden Sie unter Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82).

Important

Das S3 Glacier-Tresorinventar wird einmal täglich aktualisiert. Wenn Sie ein Archiv hochladen,wird das dem Tresor neu hinzugefügte Archiv nicht sofort angezeigt (in der Konsole und in derheruntergeladenen Tresorinventarliste), sondern erst nach der Aktualisierung des Tresorinventars.

Verwenden des AWS Snowball-ServiceAWS Snowball beschleunigt das Verschieben großer Datenmengen in und aus AWS mithilfe von Amazon-eigenen Geräten, wobei das Internet umgangen wird. Weitere Informationen erhalten Sie auf der Detailseitevon AWS Snowball.

API-Version 2012-06-0175

Page 83: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs in einer einzigen Operation

Um vorhandene Daten in Amazon S3 Glacier (S3 Glacier) hochzuladen, könnten Sie einen der AWSSnowball-Gerätetypen zum Importieren von Daten in Amazon S3 verwenden und sie dann in die S3Glacier-Speicherklasse für die Archivierung mit Lebenszyklusregeln verschieben. Nach einer Übertragungvon Amazon S3-Objekten in die S3 Glacier-Speicherklasse verwendet Amazon S3 intern S3 Glacier füreine dauerhafte Speicherung zu geringeren Kosten. Obwohl die Objekte in S3 Glacier gespeichert sind,bleiben sie Amazon S3-Objekte, die Sie in Amazon S3 verwalten. Sie haben direkt über S3 Glacier keinenZugriff auf diese Objekte.

Weitere Informationen zur Amazon S3-Lebenszykluskonfiguration und zur Übertragung von Objekten in dieS3 Glacier-Speicherklasse, finden Sie unter Objektlebenszyklusverwaltung und Übergang von Objekten imEntwicklerhandbuch für Amazon Simple Storage Service.

Hochladen eines Archivs in einer einzigen OperationWie in Hochladen eines Archivs in Amazon S3 Glacier (p. 75) beschrieben, können Sie kleinere Archivein einer einzigen Operation hochladen. Wir empfehlen Amazon S3 Glacier (S3 Glacier)-Kunden jedoch,zum Hochladen von Archiven, die größer als 100 MB sind, mehrteilige Uploads zu verwenden.

Themen• Hochladen eines Archivs in einer einzigen Operation mit AWS SDK for Java (p. 76)• Hochladen eines Archivs in einer einzigen Operation in AWS SDK für .NET mit Amazon S3

Glacier (p. 79)• Hochladen eines Archivs in einer einzigen Operation mit der REST-API (p. 82)

Hochladen eines Archivs in einer einzigen Operation mit AWSSDK for JavaSowohl die von AWS SDK for Java bereitgestellten High-Level- und Low-Level-APIs (p. 125) stellen eineMethode zur Verfügung zum Hochladen eines Archivs.

Themen• Hochladen eines Archivs mithilfe der High-Level-API von AWS SDK for Java (p. 76)• Hochladen eines Archivs in einer einzigen Operation mit der Low-Level-API von AWS SDK for Java

(p. 77)

Hochladen eines Archivs mithilfe der High-Level-API von AWS SDK for Java

Die ArchiveTransferManager-Klasse der High-Level-API bietet die upload-Methode, mit der Sie einArchiv in einen Tresor hochladen können.

Note

Sie können die upload-Methode zum Hochladen von kleinen und großen Archiven verwenden.Die Größe des hochzuladenden Archivs entscheidet bei dieser Methode darüber, ob das Archivin einem einzigen Vorgang hochgeladen wird oder ob die API für mehrteilige Uploads verwendetwird, um das Archiv in mehreren Teilen hochzuladen.

Beispiel: Hochladen eines Archivs mit der High-Level-API von AWS SDK for Java

Mit dem folgenden Java-Beispielcode wird ein Archiv in einen Tresor (examplevault) in der Region USAWest (Oregon) (us-west-2) hochgeladen. Eine Liste der unterstützten AWS-Regionen und Endpunktefinden Sie unter Zugriff auf Amazon S3 Glacier (p. 6).

API-Version 2012-06-0176

Page 84: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs in einer einzigen Operation

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführung von Java-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128). Sie müssen den Code wiegezeigt aktualisieren und dabei den Namen des Tresors, in den Sie das Archiv hochladen möchten, undden Namen der hochzuladenden Datei angeben.

Example

import java.io.File;import java.io.IOException;import java.util.Date;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.transfer.ArchiveTransferManager;import com.amazonaws.services.glacier.transfer.UploadResult;

public class ArchiveUploadHighLevel { public static String vaultName = "*** provide vault name ***"; public static String archiveToUpload = "*** provide name of file to upload ***"; public static AmazonGlacierClient client; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider(); client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-west-2.amazonaws.com/");

try { ArchiveTransferManager atm = new ArchiveTransferManager(client, credentials); UploadResult result = atm.upload(vaultName, "my archive " + (new Date()), new File(archiveToUpload)); System.out.println("Archive ID: " + result.getArchiveId()); } catch (Exception e) { System.err.println(e); } }}

Hochladen eines Archivs in einer einzigen Operation mit der Low-Level-API vonAWS SDK for Java

Die Low-Level-API bietet Methoden für alle Archivvorgänge. Im Folgenden werden die Schritte zumHochladen eines Archivs mit AWS SDK for Java beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, in der das Archiv hochgeladen werden soll. Alle Operationen, dieSie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derUploadArchiveRequest-Klasse.

Zusätzlich zu den hochzuladenden Daten müssen Sie eine Prüfsumme (SHA-256-Struktur-Hash) für dieNutzlast, den Tresornamen, die Inhaltslänge der Daten und Ihre Konto-ID angeben.

API-Version 2012-06-0177

Page 85: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs in einer einzigen Operation

Wenn Sie keine Konto-ID angeben, wird die Konto-ID übernommen, die den Anmeldeinformationenzugeordnet ist, die Sie zum Signieren der Anforderung verwenden. Weitere Informationen finden Sie imVerwenden der AWS SDK for Java mit Amazon S3 Glacier (p. 127).

3. Ausführen der uploadArchive -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

In der Antwort gibt Amazon S3 Glacier (S3 Glacier) eine Archiv-ID für das neu hochgeladenen Archivzurück.

Der folgende Java-Codeausschnitt veranschaulicht die vorherigen Schritte.

AmazonGlacierClient client;

UploadArchiveRequest request = new UploadArchiveRequest() .withVaultName("*** provide vault name ***") .withChecksum(checksum) .withBody(new ByteArrayInputStream(body)) .withContentLength((long)body.length);

UploadArchiveResult uploadArchiveResult = client.uploadArchive(request);

System.out.println("Location (includes ArchiveID): " + uploadArchiveResult.getLocation());

Beispiel. Hochladen eines Archivs in einer einzigen Operation mit der Low-Level-API von AWSSDK for Java

Das folgende Java-Codebeispiel verwendet die AWS SDK for Java um ein Archiv in einen Tresorhochzuladen (examplevault). Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sieunter Ausführung von Java-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128).Sie müssen den Code wie angezeigt mit dem Namen des Tresors, in den Sie hochladen möchten, und demNamen der Datei, die Sie hochladen möchten, aktualisieren.

import java.io.ByteArrayInputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.TreeHashGenerator;import com.amazonaws.services.glacier.model.UploadArchiveRequest;import com.amazonaws.services.glacier.model.UploadArchiveResult;public class ArchiveUploadLowLevel {

public static String vaultName = "*** provide vault name ****"; public static String archiveFilePath = "*** provide to file upload ****"; public static AmazonGlacierClient client; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();

client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-east-1.amazonaws.com/");

try { // First open file and read. File file = new File(archiveFilePath); InputStream is = new FileInputStream(file); byte[] body = new byte[(int) file.length()];

API-Version 2012-06-0178

Page 86: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs in einer einzigen Operation

is.read(body); // Send request. UploadArchiveRequest request = new UploadArchiveRequest() .withVaultName(vaultName) .withChecksum(TreeHashGenerator.calculateTreeHash(new File(archiveFilePath))) .withBody(new ByteArrayInputStream(body)) .withContentLength((long)body.length); UploadArchiveResult uploadArchiveResult = client.uploadArchive(request); System.out.println("ArchiveID: " + uploadArchiveResult.getArchiveId()); } catch (Exception e) { System.err.println("Archive not uploaded."); System.err.println(e); } }}

Hochladen eines Archivs in einer einzigen Operation in AWS SDKfür .NET mit Amazon S3 GlacierSowohl die von AWS SDK for .NET bereitgestellten High-Level- und Low-Level-APIs (p. 125) stellen eineMethode zur Verfügung zum Hochladen eines Archivs in einer einzigen Operation.

Themen• Hochladen eines Archivs mithilfe der High-Level-API von AWS SDK für .NET (p. 79)• Hochladen eines Archivs in einer einzigen Operation mit der Low-Level-API von AWS SDK für .NET

(p. 80)

Hochladen eines Archivs mithilfe der High-Level-API von AWS SDK für .NETDie ArchiveTransferManager-Klasse der High-Level-API bietet die Upload-Methode, mit der Sie einArchiv in einen Tresor hochladen können.

Note

Sie können die Upload-Methode zum Hochladen von kleinen und großen Dateien verwenden. DieGröße der hochzuladenden Datei entscheidet bei dieser Methode darüber, ob die Datei in einereinziger Operationen hochgeladen wird oder ob die API für mehrteilige Uploads verwendet wird,um die Datei in mehreren Teilen hochzuladen.

Beispiel: Hochladen eines Archivs mit der High-Level-API von AWS SDK für .NET

Mit dem folgenden C#-Beispielcode wird ein Archiv zu einem Tresor (examplevault) in der Region USAWest (Oregon) hochgeladen.

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit dem Namen der hochzuladenden Dateiaktualisieren.

Example

using System;using Amazon.Glacier;using Amazon.Glacier.Transfer;

API-Version 2012-06-0179

Page 87: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs in einer einzigen Operation

using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class ArchiveUploadHighLevel { static string vaultName = "examplevault"; static string archiveToUpload = "*** Provide file name (with full path) to upload ***";

public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2); // Upload an archive. string archiveId = manager.Upload(vaultName, "upload archive test", archiveToUpload).ArchiveId; Console.WriteLine("Archive ID: (Copy and save this ID for use in other examples.) : {0}", archiveId); Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } }}

Hochladen eines Archivs in einer einzigen Operation mit der Low-Level-API vonAWS SDK für .NET

Die Low-Level-API bietet Methoden für alle Archivvorgänge. Im Folgenden werden die Schritte zumHochladen eines Archivs mit AWS SDK für .NET beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, in der das Archiv hochgeladen werden soll. Alle Operationen, dieSie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derUploadArchiveRequest-Klasse.

Zusätzlich zu den hochzuladenden Daten müssen Sie eine Prüfsumme (SHA-256-Struktur-Hash) für dieNutzlast, den Tresornamen und Ihre Konto-ID angeben.

Wenn Sie keine Konto-ID angeben, wird die Konto-ID übernommen, die den Anmeldeinformationenzugeordnet ist, die Sie zum Signieren der Anforderung verwenden. Weitere Informationen finden Sie imVerwenden der AWS SDK für .NET mit Amazon S3 Glacier (p. 129).

3. Ausführen der UploadArchive -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

In der Antwort gibt S3 Glacier eine Archiv-ID für das neu hochgeladenen Archiv zurück.

Beispiel. Hochladen eines Archivs in einer einzigen Operation mit der Low-Level-API von AWSSDK für .NET

Im folgenden C#-Codebeispiel werden die vorstehenden Schritte veranschaulicht. Im folgenden Beispielwird AWS SDK für .NET zum Hochladen eines Archivs in einen Tresor (examplevault) verwendet.

API-Version 2012-06-0180

Page 88: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen eines Archivs in einer einzigen Operation

Note

Weitere Informationen zur zugrunde liegenden REST-API für das Hochladen eines Archivs in einereinzigen Anforderung finden Sie unter Upload Archive (POST archive) (p. 242).

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit dem Namen der hochzuladenden Dateiaktualisieren.

Example

using System;using System.IO;using Amazon.Glacier;using Amazon.Glacier.Model;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class ArchiveUploadSingleOpLowLevel { static string vaultName = "examplevault"; static string archiveToUpload = "*** Provide file name (with full path) to upload ***";

public static void Main(string[] args) { AmazonGlacierClient client; try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Uploading an archive."); string archiveId = UploadAnArchive(client); Console.WriteLine("Archive ID: {0}", archiveId); } } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); }

static string UploadAnArchive(AmazonGlacierClient client) { using (FileStream fileStream = new FileStream(archiveToUpload, FileMode.Open, FileAccess.Read)) { string treeHash = TreeHashGenerator.CalculateTreeHash(fileStream); UploadArchiveRequest request = new UploadArchiveRequest() { VaultName = vaultName, Body = fileStream, Checksum = treeHash }; UploadArchiveResponse response = client.UploadArchive(request); string archiveID = response.ArchiveId; return archiveID; } } }}

API-Version 2012-06-0181

Page 89: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen von großen Archiven in Teilen

Hochladen eines Archivs in einer einzigen Operation mit derREST-APISie können mit dem API-Aufruf "Upload Archive (Archiv hochladen)" ein Archiv in einer einzigen Operationhochladen. Weitere Informationen finden Sie unter Upload Archive (POST archive) (p. 242).

Hochladen von großen Archiven in Teilen (MultipartUpload)Themen

• Mehrteiliger Upload (p. 82)• Kurzinfo (p. 83)• Hochladen von großen Archiven in Teilen mit der AWS SDK for Java (p. 84)• Hochladen von großen Archiven mithilfe des AWS SDK für .NET (p. 87)• Hochladen von großen Archiven in Teilen mit der REST-API (p. 90)

Mehrteiliger UploadWie unter Hochladen eines Archivs in Amazon S3 Glacier (p. 75) beschrieben, empfehlen wir AmazonS3 Glacier (S3 Glacier)-Kunden, für Archive, die größer als 100 MB sind, den mehrteiligen Upload zuverwenden.

1. Multipart-Upload initiieren

Wenn Sie eine Anforderung zum Initiieren eines mehrteiligen Uploads senden, gibt S3 Glacier einemehrteilige Upload-ID zurück, die den mehrteiligen Upload auf eindeutige Weise kennzeichnet.Diese ID ist bei allen darauf folgenden mehrteiligen Upload-Vorgängen erforderlich. Diese ID läuftmindestens 24 Stunden, nachdem S3 Glacier die Aufgabe abgeschlossen hat, nicht ab.

Geben Sie in der Anforderung, mit der Sie den mehrteiligen Upload starten, die Größe der einzelnenTeile in Bytes an. Mit Ausnahme des letzten Teils muss jeder der hochzuladenden Teile diese Größeaufweisen.

Note

Es ist nicht notwendig, dass Ihnen die Gesamtgröße des Archivs bekannt ist, wenn Siemehrteilige Uploads verwenden. Das bedeutet, dass Sie mehrteilige Uploads verwendenkönnen, wenn Sie die Archivgröße beim Hochladen des Archivs nicht kennen. Sie müssenlediglich beim Start des mehrteiligen Uploads die Größe der Teile festlegen.

Bei der Anforderung zur Initiierung des mehrteiligen Uploads können Sie auch eine optionaleBeschreibung des Archivs angeben.

2. Teile hochladen

Bei jeder Anforderung zum Hochladen eines Teils müssen Sie die ID für den mehrteiligen Uploadangeben, die Sie in Schritt 1 erhalten haben. Die Anforderung muss auch Informationen zumInhaltsbereich (in Bytes) enthalten, durch die die Position des Teils im fertigen Archiv identifiziert wird.S3 Glacier verwendet die Informationen zum Inhaltsbereich, um das Archiv abschließend wieder inder richtigen Reihenfolge zusammenzustellen. Da Sie den Inhaltsbereich für jedes hochzuladende Teilangeben, ist dessen Position im abschließend zusammengesetzten Archiv genau gekennzeichnet.Darum können Sie die Teile in beliebiger Reihenfolge hochladen. Sie können Teile auch parallelhochladen. Wenn Sie einen neuen Teil mit denselben Informationen zum Inhaltsbereich hochladen wiefür einen bereits hochgeladenen Teil, wird der zuvor hochgeladene Teil überschrieben.

API-Version 2012-06-0182

Page 90: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen von großen Archiven in Teilen

3. Mehrteiligen Upload abschließen (oder stoppen)

Nachdem Sie alle Archivteile hochgeladen haben, schließen Sie den Vorgang ab. Sie müssen auchjetzt wieder die Upload-ID in der Anforderung angeben. S3 Glacier erstellt ein Archiv, indem es Teilein aufsteigender Reihenfolge auf Grundlage der von Ihnen angegebenen Inhaltsbereiche verkettet. DieAntwort von S3 Glacier auf die Anforderung zum Abschließen eines mehrteiligen Uploads enthält eineArchiv-ID für das neue erstellte Archiv. Wenn Sie bei der Anforderung zur Initiierung des mehrteiligenUploads eine optionale Archivbeschreibung angegeben haben, assoziiert S3 Glacier die Beschreibungmit dem zusammengestellten Archiv. Wenn Sie einen mehrteiligen Upload erfolgreich abgeschlossenhaben, können Sie nicht mehr auf die ID für den mehrteiligen Upload verweisen. Sie können also nichtauf Teile zugreifen, die mit der ID für den mehrteiligen Upload assoziiert sind.

Wenn Sie einen mehrteiligen Upload stoppen, können Sie keine weiteren Teile mit dieser ID desmehrteiligen Uploads hochladen. Der gesamte Speicher, der von allen Teilen verbraucht wird, diemit dem angehaltenen mehrteiligen Upload verbunden sind, wird freigegeben. Wenn Teile-Uploadsin Bearbeitung waren, können sie dennoch erfolgreich sein oder fehlschlagen, selbst nachdem sieangehalten wurden.

Zusätzliche Operationen für den mehrteiligen Upload

Amazon S3 Glacier (S3 Glacier) bietet die folgenden zusätzlichen API-Aufrufe für den mehrteiligen Upload.

• Teile auflisten—Mit dieser Operation können Sie die Teile eines bestimmten mehrteiligen Uploadsauflisten. Dabei werden Informationen zu den Teilen zurückgegeben, die Sie bei einem mehrteiligenUpload hochgeladen haben. Bei jeder List Parts-Anforderung gibt S3 Glacier Informationen für bis zu1 000 Teile zurück. Wenn eine größere Anzahl von Teilen für den mehrteiligen Upload aufzuführen ist,werden die Ergebnisse in Seiten unterteilt und die Antwort enthält eine Markierung an der Stelle, an derdie Liste fortgesetzt werden muss. Sie müssen weitere Anforderungen senden, um die nachfolgendenTeile abzurufen. Beachten Sie, dass die zurückgegebene Teileauflistung keine Teile enthält, die nochnicht vollständig hochgeladen wurden.

• Mehrteilige Uploads auflisten—Mit dieser Operation können Sie eine Liste der laufenden mehrteiligenUploads abrufen. Ein laufender mehrteiliger Upload ist ein Upload, den Sie initiiert, aber noch nichtabgeschlossen oder gestoppt haben. Auf jede Anforderung zum Auflisten der mehrteiligen Uploadsgibt S3 Glacier bis zu 1 000 mehrteilige Uploads zurück. Wenn eine größere Anzahl von mehrteiligenUploads aufzuführen ist, werden die Ergebnisse in Seiten unterteilt und die Antwort enthält eineMarkierung an der Stelle, an der die Liste fortgesetzt werden muss. Sie müssen weitere Anforderungensenden, um die verbleibenden mehrteiligen Uploads abzurufen.

KurzinfoDie folgende Tabelle enthält die Core-Spezifikationen für den mehrteiligen Upload.

Item Spezifikation

Maximale Archivgröße 10.000 x 4 GB

Maximale Anzahl von Teilen pro Upload 10.000

Teilegröße 1 MB bis 4 GB, der letzte Teil kann < 1 MB sein. Sie geben dieGröße in Bytes an.

Die Größe der Teile muss mindestens ein Megabyte(1 024 KB) betragen bzw. als ein mit dem Faktor 2multipliziertes Vielfaches angegeben werden. Beispiele:

API-Version 2012-06-0183

Page 91: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen von großen Archiven in Teilen

Item Spezifikation1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB),8388608 (8 MB).

Maximale Anzahl der zurückgegebenenTeile bei einer Anforderung zumAuflisten der Teile

1 000

Maximale Anzahl der zurückgegebenenmehrteiligen Uploads bei einerAnforderung zum Auflisten mehrteiligerUploads

1 000

Hochladen von großen Archiven in Teilen mit der AWS SDK forJavaSowohl die von AWS SDK for Java bereitgestellten High-Level- und Low-Level-APIs (p. 125) stellen eineMethode zur Verfügung zum Hochladen eines großen Archivs (Informationen dazu unter Hochladen einesArchivs in Amazon S3 Glacier (p. 75)).

• Die High-Level-API bietet eine Methode, mit der Sie ein Archiv jeder Größe hochladen können. DieGröße der hochzuladenden Datei entscheidet bei dieser Methode darüber, ob ein Archiv in einemeinzigen Vorgang hochgeladen wird oder ob die Unterstützung in Amazon S3 Glacier (S3 Glacier) fürmehrteilige Uploads verwendet wird, um sie in mehreren Teilen hochzuladen.

• Die Low-Level-API wird eng auf die zugrundeliegende REST-Implementierung abgebildet. Dementsprechend wird eine Methode zum Hochladen kleiner Archive in einer Operation bereitgestellt undeine Gruppen von Methoden, die den mehrteiligen Upload größerer Archive unterstützen. In diesemAbschnitt wird das Hochladen großer Archive in Teilen mithilfe der Low-Level-API beschrieben.

Weitere Informationen zu High-Level- und Low-level-APIs finden Sie unter Verwenden der AWS SDK forJava mit Amazon S3 Glacier (p. 127).

Themen• Hochladen großer Archive in Teilen mithilfe der High-Level-API des AWS SDK for Java (p. 84)• Große Archive in Teilen mithilfe der Low-Level-API des AWS SDK for Java hochladen (p. 84)

Hochladen großer Archive in Teilen mithilfe der High-Level-API des AWS SDK forJava

Sie verwenden die gleichen Methoden der High-Level-API für den Upload kleiner und großer Archive.Auf Grundlage der Archivgröße bestimmen die High-Level-API-Methoden, ob das Archiv in einer einzigenOperation oder mithilfe der von S3 Glacier bereitgestellten API für mehrteilige Uploads hochgeladen wird.Weitere Informationen finden Sie unter Hochladen eines Archivs mithilfe der High-Level-API von AWS SDKfor Java (p. 76).

Große Archive in Teilen mithilfe der Low-Level-API des AWS SDK for Javahochladen

Zur präzisen Steuerung des Uploads können Sie das Low-Level-API verwenden, über das Sie die Anfragekonfigurieren und die Antwort bearbeiten können. Im Folgenden werden die Schritte zum Hochladen großerArchive in Teilen mit dem AWS SDK for Java beschrieben.

API-Version 2012-06-0184

Page 92: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen von großen Archiven in Teilen

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, in der das Archiv gespeichert werden soll. Alle Operationen, dieSie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Initiieren eines mehrteiligen Uploads durch Aufrufen der Methode initiateMultipartUpload.

Sie müssen den Namen des Tresors, in den Sie das Archiv hochladen möchten, die Größe der Teile, dieSie verwenden möchten, um Archivteile hochzuladen, und optional eine Beschreibung angeben. DieseInformationen stellen Sie bereit, indem Sie eine Instance der InitiateMultipartUploadRequest-Klasse erstellen. Als Antwort gibt S3 Glacier eine Upload-ID zurück.

3. Laden Sie Teile durch den Aufruf der uploadMultipartPart-Methode hoch.

Für jeden hochgeladenen Teil müssen folgende Angaben gemacht werden: der Tresorname und Byte-Bereich im endgültig zusammengestellten Archiv, das in diesem Teil hochgeladen wird, sowie diePrüfsumme der Teildaten und die Upload-ID.

4. Führen Sie den mehrteiligen Upload aus, indem Sie die Methode completeMultipartUploadaufrufen.

Sie müssen die Upload-ID, die Prüfsumme des gesamten Archivs, die Archivgröße (kombinierte Größealler hochgeladenen Teile) und den Tresornamen bereitstellen. S3 Glacier stellt das Archiv aus denhochgeladenen Teilen zusammen und gibt eine Archiv-ID zurück.

Beispiel: Hochladen eines großen Archivs in Teilen mithilfe von AWS SDK for Java

Im folgenden Java-Codebeispiel wird AWS SDK for Java zum Hochladen eines Archivs in den Tresorverwendet (examplevault). Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sieunter Ausführung von Java-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128). Siemüssen den Code wie gezeigt mit dem Namen der hochzuladenden Datei aktualisieren.

Note

Dieses Beispiel gilt für Teilgrößen von 1 MB bis 1 GB. Allerdings unterstützt S3 Glacier Teilgrößenbis zu 4 GB.

Example

import java.io.ByteArrayInputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.security.NoSuchAlgorithmException;import java.util.Arrays;import java.util.Date;import java.util.LinkedList;import java.util.List;

import com.amazonaws.AmazonClientException;import com.amazonaws.AmazonServiceException;import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.TreeHashGenerator;import com.amazonaws.services.glacier.model.CompleteMultipartUploadRequest;import com.amazonaws.services.glacier.model.CompleteMultipartUploadResult;import com.amazonaws.services.glacier.model.InitiateMultipartUploadRequest;import com.amazonaws.services.glacier.model.InitiateMultipartUploadResult;import com.amazonaws.services.glacier.model.UploadMultipartPartRequest;import com.amazonaws.services.glacier.model.UploadMultipartPartResult;

API-Version 2012-06-0185

Page 93: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen von großen Archiven in Teilen

import com.amazonaws.util.BinaryUtils;

public class ArchiveMPU {

public static String vaultName = "examplevault"; // This example works for part sizes up to 1 GB. public static String partSize = "1048576"; // 1 MB. public static String archiveFilePath = "*** provide archive file path ***"; public static AmazonGlacierClient client; public static void main(String[] args) throws IOException {

ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();

client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-west-2.amazonaws.com/");

try { System.out.println("Uploading an archive."); String uploadId = initiateMultipartUpload(); String checksum = uploadParts(uploadId); String archiveId = CompleteMultiPartUpload(uploadId, checksum); System.out.println("Completed an archive. ArchiveId: " + archiveId); } catch (Exception e) { System.err.println(e); }

} private static String initiateMultipartUpload() { // Initiate InitiateMultipartUploadRequest request = new InitiateMultipartUploadRequest() .withVaultName(vaultName) .withArchiveDescription("my archive " + (new Date())) .withPartSize(partSize); InitiateMultipartUploadResult result = client.initiateMultipartUpload(request); System.out.println("ArchiveID: " + result.getUploadId()); return result.getUploadId(); }

private static String uploadParts(String uploadId) throws AmazonServiceException, NoSuchAlgorithmException, AmazonClientException, IOException {

int filePosition = 0; long currentPosition = 0; byte[] buffer = new byte[Integer.valueOf(partSize)]; List<byte[]> binaryChecksums = new LinkedList<byte[]>(); File file = new File(archiveFilePath); FileInputStream fileToUpload = new FileInputStream(file); String contentRange; int read = 0; while (currentPosition < file.length()) { read = fileToUpload.read(buffer, filePosition, buffer.length); if (read == -1) { break; } byte[] bytesRead = Arrays.copyOf(buffer, read);

contentRange = String.format("bytes %s-%s/*", currentPosition, currentPosition + read - 1); String checksum = TreeHashGenerator.calculateTreeHash(new ByteArrayInputStream(bytesRead)); byte[] binaryChecksum = BinaryUtils.fromHex(checksum);

API-Version 2012-06-0186

Page 94: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen von großen Archiven in Teilen

binaryChecksums.add(binaryChecksum); System.out.println(contentRange); //Upload part. UploadMultipartPartRequest partRequest = new UploadMultipartPartRequest() .withVaultName(vaultName) .withBody(new ByteArrayInputStream(bytesRead)) .withChecksum(checksum) .withRange(contentRange) .withUploadId(uploadId); UploadMultipartPartResult partResult = client.uploadMultipartPart(partRequest); System.out.println("Part uploaded, checksum: " + partResult.getChecksum()); currentPosition = currentPosition + read; } fileToUpload.close(); String checksum = TreeHashGenerator.calculateTreeHash(binaryChecksums); return checksum; }

private static String CompleteMultiPartUpload(String uploadId, String checksum) throws NoSuchAlgorithmException, IOException { File file = new File(archiveFilePath);

CompleteMultipartUploadRequest compRequest = new CompleteMultipartUploadRequest() .withVaultName(vaultName) .withUploadId(uploadId) .withChecksum(checksum) .withArchiveSize(String.valueOf(file.length())); CompleteMultipartUploadResult compResult = client.completeMultipartUpload(compRequest); return compResult.getLocation(); }}

Hochladen von großen Archiven mithilfe des AWS SDK für .NETSowohl die von AWS SDK for .NET bereitgestellten High-Level- und Low-Level-APIs (p. 125) stelleneine Methode zur Verfügung zum Hochladen großer Archive in Teilen (siehe Hochladen eines Archivs inAmazon S3 Glacier (p. 75)).

• Die High-Level-API bietet eine Methode, mit der Sie ein Archiv jeder Größe hochladen können. DieGröße der hochzuladenden Datei entscheidet bei dieser Methode darüber, ob ein Archiv in einemeinzigen Vorgang hochgeladen wird oder ob die Unterstützung in Amazon S3 Glacier (S3 Glacier) fürmehrteilige Uploads verwendet wird, um sie in mehreren Teilen hochzuladen.

• Die Low-Level-API wird eng auf die zugrundeliegende REST-Implementierung abgebildet. Dementsprechend wird eine Methode zum Hochladen kleiner Archive in einer Operation bereitgestellt undeine Gruppen von Methoden, die den mehrteiligen Upload größerer Archive unterstützen. In diesemAbschnitt wird das Hochladen großer Archive in Teilen mithilfe der Low-Level-API beschrieben.

Weitere Informationen zu High-Level- und Low-level-APIs finden Sie unter Verwenden der AWS SDKfür .NET mit Amazon S3 Glacier (p. 129).

Themen• Hochladen großer Archive in Teilen mithilfe der High-Level-API des AWS SDK für .NET (p. 88)• Hochladen großer Archive in Teilen mithilfe der Low-Level-API des AWS SDK für .NET (p. 88)

API-Version 2012-06-0187

Page 95: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen von großen Archiven in Teilen

Hochladen großer Archive in Teilen mithilfe der High-Level-API des AWS SDKfür .NETSie verwenden die gleichen Methoden der High-Level-API für den Upload kleiner und großer Archive.Auf Grundlage der Archivgröße bestimmen die High-Level-API-Methoden, ob das Archiv in einer einzigenOperation oder mithilfe der von S3 Glacier bereitgestellten API für mehrteilige Uploads hochgeladen wird.Weitere Informationen finden Sie unter Hochladen eines Archivs mithilfe der High-Level-API von AWS SDKfür .NET (p. 79).

Hochladen großer Archive in Teilen mithilfe der Low-Level-API des AWS SDKfür .NETZur präzisen Steuerung des Uploads können Sie das Low-Level-API verwenden, über das Sie die Anfragekonfigurieren und die Antwort bearbeiten können. Im Folgenden werden die Schritte zum Hochladen großerArchive in Teilen mit dem AWS SDK für .NET beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, in der das Archiv gespeichert werden soll. Alle Operationen, dieSie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Initiieren eines mehrteiligen Uploads durch Aufrufen der Methode InitiateMultipartUpload.

Sie müssen den Namen des Tresors, in den Sie das Archiv hochladen möchten, die Größe der Teile, dieSie verwenden möchten, um Archivteile hochzuladen, und optional eine Beschreibung angeben. DieseInformationen stellen Sie bereit, indem Sie eine Instance der InitiateMultipartUploadRequest-Klasse erstellen. Als Antwort gibt S3 Glacier eine Upload-ID zurück.

3. Laden Sie Teile durch den Aufruf der UploadMultipartPart-Methode hoch.

Für jeden hochgeladenen Teil müssen folgende Angaben gemacht werden: der Tresorname und Byte-Bereich im endgültig zusammengestellten Archiv, das in diesem Teil hochgeladen wird, sowie diePrüfsumme der Teildaten und die Upload-ID.

4. Führen Sie den mehrteiligen Upload aus, indem Sie die Methode CompleteMultipartUploadaufrufen.

Sie müssen die Upload-ID, die Prüfsumme des gesamten Archivs, die Archivgröße (kombinierte Größealler hochgeladenen Teile) und den Tresornamen bereitstellen. S3 Glacier stellt das Archiv aus denhochgeladenen Teilen zusammen und gibt eine Archiv-ID zurück.

Beispiel: Hochladen eines großen Archivs in Teilen mithilfe des AWS SDK for .NET

Im folgenden C#-Codebeispiel wird das AWS SDK für .NET zum Hochladen eines Archivs in den Tresorverwendet (examplevault). Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sieunter Ausführen von Codebeispielen (p. 131). Sie müssen den Code wie gezeigt mit dem Namen einerhochzuladenden Datei aktualisieren.

Example

using System;using System.Collections.Generic;using System.IO;using Amazon.Glacier;using Amazon.Glacier.Model;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class ArchiveUploadMPU

API-Version 2012-06-0188

Page 96: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHochladen von großen Archiven in Teilen

{ static string vaultName = "examplevault"; static string archiveToUpload = "*** Provide file name (with full path) to upload ***"; static long partSize = 4194304; // 4 MB.

public static void Main(string[] args) { AmazonGlacierClient client; List<string> partChecksumList = new List<string>(); try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Uploading an archive."); string uploadId = InitiateMultipartUpload(client); partChecksumList = UploadParts(uploadId, client); string archiveId = CompleteMPU(uploadId, client, partChecksumList); Console.WriteLine("Archive ID: {0}", archiveId); } Console.WriteLine("Operations successful. To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); }

static string InitiateMultipartUpload(AmazonGlacierClient client) { InitiateMultipartUploadRequest initiateMPUrequest = new InitiateMultipartUploadRequest() {

VaultName = vaultName, PartSize = partSize, ArchiveDescription = "Test doc uploaded using MPU." };

InitiateMultipartUploadResponse initiateMPUresponse = client.InitiateMultipartUpload(initiateMPUrequest);

return initiateMPUresponse.UploadId; }

static List<string> UploadParts(string uploadID, AmazonGlacierClient client) { List<string> partChecksumList = new List<string>(); long currentPosition = 0; var buffer = new byte[Convert.ToInt32(partSize)];

long fileLength = new FileInfo(archiveToUpload).Length; using (FileStream fileToUpload = new FileStream(archiveToUpload, FileMode.Open, FileAccess.Read)) { while (fileToUpload.Position < fileLength) { Stream uploadPartStream = GlacierUtils.CreatePartStream(fileToUpload, partSize); string checksum = TreeHashGenerator.CalculateTreeHash(uploadPartStream); partChecksumList.Add(checksum); // Upload part. UploadMultipartPartRequest uploadMPUrequest = new UploadMultipartPartRequest() {

VaultName = vaultName,

API-Version 2012-06-0189

Page 97: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs

Body = uploadPartStream, Checksum = checksum, UploadId = uploadID }; uploadMPUrequest.SetRange(currentPosition, currentPosition + uploadPartStream.Length - 1); client.UploadMultipartPart(uploadMPUrequest);

currentPosition = currentPosition + uploadPartStream.Length; } } return partChecksumList; }

static string CompleteMPU(string uploadID, AmazonGlacierClient client, List<string> partChecksumList) { long fileLength = new FileInfo(archiveToUpload).Length; CompleteMultipartUploadRequest completeMPUrequest = new CompleteMultipartUploadRequest() { UploadId = uploadID, ArchiveSize = fileLength.ToString(), Checksum = TreeHashGenerator.CalculateTreeHash(partChecksumList), VaultName = vaultName };

CompleteMultipartUploadResponse completeMPUresponse = client.CompleteMultipartUpload(completeMPUrequest); return completeMPUresponse.ArchiveId; } }}

Hochladen von großen Archiven in Teilen mit der REST-APIWie unter Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82) beschrieben, beziehtsich der Begriff "mehrteiliger Upload" auf einen Satz von -Operationen, mit denen Sie ein Archiv in Teilenhochladen und damit zusammenhängende Operationen ausführen können. Weitere Informationen zudiesen Operationen finden Sie unter folgenden API-Referenzthemen:

• Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251)• Upload Part (PUT uploadID) (p. 265)• Complete Multipart Upload (POST uploadID) (p. 248)• Abort Multipart Upload (DELETE uploadID) (p. 246)• List Parts (GET uploadID) (p. 255)• List Multipart Uploads (GET multipart-uploads) (p. 260)

Herunterladen eines Archivs in Amazon S3 GlacierIn Amazon S3 Glacier (S3 Glacier) ist eine Managementkonsole verfügbar, mit der Sie Tresore erstellenund löschen können. Allerdings können Sie keine Archive mit der Managementkonsole von S3 Glacierherunterladen. Zum Herunterladen von Daten, z. B. Fotos, Videos und andere Dokumente, müssen Sieentweder die AWS CLI verwenden oder Code schreiben, um Anforderungen direkt unter Verwendung derREST-API oder mit den AWS SDKs zu senden.

Weitere Informationen zur Verwendung von S3 Glacier mit der AWS CLI finden Sie in der AWS CLI-Referenz für S3 Glacier. Informationen zum Installieren der AWS CLI finden Sie unter AWS Command Line

API-Version 2012-06-0190

Page 98: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von -Archiven

Interface. In den folgenden Themen zum Herunterladen eines Archivs wird beschrieben, wie Archive mitAWS SDK for Java, AWS SDK for .NET und der REST-API in S3 Glacier heruntergeladen werden.

Abrufen von S3 Glacier-ArchivenDas Abrufen eines Archivs von Amazon S3 Glacier (S3 Glacier) ist ein asynchroner Vorgang. Dabeiwird zuerst eine Aufgabe initiiert und anschließend, nachdem sie abgeschlossen ist, wird das Ergebnisheruntergeladen. Zum Initiieren eines Auftrags zum Abrufen eines Archivs können Sie die Initiate Job(POST jobs) (p. 284)-REST-API oder einen gleichwertigen Befehl in der AWS-&CLI; oder den AWS SDKsverwenden.

Themen• Archiv-Abrufoptionen (p. 92)• Abrufen von Archivbereichen (p. 94)

Das Abrufen eines Archivs von S3 Glacier erfolgt als zweistufiger Prozess.

So rufen Sie ein Archiv ab

1. Initiieren Sie einen Auftrag zum Abrufen eines Archivs.

a. Ermitteln Sie die ID des Archivs, das Sie abrufen möchten. Sie finden die Archiv-ID ineiner Inventarliste des Tresors. Weitere Informationen finden Sie im Herunterladen einesTresorinventars in Amazon S3 Glacier (p. 40).

b. Initiieren Sie eine Aufgabe, mit der Sie S3 Glacier anweisen, ein vollständiges Archiv oder einenTeil eines Archivs unter Verwendung der Operation Initiate Job (POST jobs) (p. 284) zumHerunterladen vorzubereiten.

Wenn Sie einen Auftrag initiieren, S3 Glacier gibt eine Auftrags-ID in der Antwort zurück und führt denAuftrag asynchron aus. (Sie können die Auftragsausgabe erst herunterladen, nachdem der Auftrag wiein Schritt 2 beschrieben abgeschlossen ist.)

Important

Wenn es sich nur um einen Standardabruf handelt, kann die Richtlinie für denDatenabruf dazu führen, dass die Anforderung zur Abrufinitiierung zu einerPolicyEnforcedException-Ausnahme führt und fehlschlägt. Weitere Informationenzu Datenabrufrichtlinien finden Sie unter Amazon S3 Glacier-Richtlinien für denDatenabruf (p. 162). Weitere Informationen zur PolicyEnforcedException-Ausnahmefinden Sie unter Fehlermeldungen (p. 190).

Bei Bedarf können Sie große Segmente der in S3 Glacier gespeicherten Daten wiederherstellen.So können Sie beispielsweise Daten für eine sekundäre Kopie wiederherstellen. Wenn Sie jedocheine große Datenmenge wiederherstellen müssen, bedenken Sie, dass S3 Glacier für 35 zufälligeWiederherstellungsanforderungen pro täglich gespeicherten Pebibyte (PiB) konzipiert ist.

Weitere Informationen zum Wiederherstellen von Daten aus diesen Speicherklassen finden Sie unter Amazon S3-Speicherklassen für die Archivierung von Objekten im Entwicklerhandbuch für AmazonSimple Storage Service.

2. Laden Sie nach Abschluss des Auftrags die Bytes mit der Operation Get Job Output (GEToutput) (p. 277) herunter.

Sie können alle Bytes herunterladen oder einen Bytebereich festlegen, sodass nur ein Teil derAuftragsausgabe heruntergeladen wird. Bei einer größeren Ausgabemenge bietet es sich an,die Ausgabe in Datenblöcken herunterzuladen, um Fehlern beim Herunterladen, wie z. B. durcheinen Ausfall des Netzwerks, vorzubeugen. Wenn Sie eine einzige Anforderung zum Abrufen der

API-Version 2012-06-0191

Page 99: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von -Archiven

gesamten Auftragsausgabe übermitteln, sind Sie bei Netzwerkausfällen gezwungen, den Vorgangzum Herunterladen der Ausgabe von Anfang an neu zu starten. Wenn Sie die Ausgabe jedoch inDatenblöcken herunterladen, müssen Sie bei einem Fehler nur den betroffenen Teil der Ausgabe undnicht die gesamten Ausgabedaten erneut herunterladen.

S3 Glacier muss eine Aufgabe zuerst abschließen, bevor Sie die Ausgabe abrufen können. Nachdem einAuftrag abgeschlossen ist, bleibt er 24 Stunden lang verfügbar. Sie haben also 24 Stunden Zeit, um nachBeendigung des Auftrags die Ausgabe herunterzuladen. Verwenden Sie eine der folgenden Optionen, umden Status des Auftrags zu überprüfen und festzustellen, ob der Auftrag abgeschlossen ist:

• Warten Sie die Benachrichtigung über den Abschluss der Aufgabe ab: Sie können ein Amazon SimpleNotification Service (Amazon SNS)-Thema angeben, an das S3 Glacier eine Benachrichtigung überden Abschluss der Aufgabe übermittelt. S3 Glacier sendet erst nach Beendigung der Aufgabe eineBenachrichtigung an dieses Thema.

Beim Initiieren eines Auftrags können Sie ein Amazon SNS-Thema für den Auftrag angeben. Wenn IhrTresor so konfiguriert ist, dass bei Abrufereignissen, die das Archiv betreffen, Benachrichtigungen anein Amazon SNS-Thema gesendet werden, veröffentlicht S3 Glacier ebenfalls eine Benachrichtigungunter dem entsprechenden SNS-Thema. Weitere Informationen finden Sie im Konfigurieren vonTresorbenachrichtigungen in Amazon S3 Glacier (p. 55).

• Fordern Sie explizit Informationen zur Aufgabe an: Sie können auch den S3 Glacier-Vorgang zumBeschreiben der Aufgabe verwenden (Describe Job (GET JobID) (p. 269)), um regelmäßig dieAufgabeninformationen zu überprüfen. Wir empfehlen jedoch die Verwendung von Amazon SNS-Benachrichtigungen.

Note

Die Informationen, die Sie in der SNS-Benachrichtigung erhalten, sind identisch mit denInformationen, die Sie mit der Funktion zur Auftragsbeschreibung abrufen.

Archiv-AbrufoptionenEntsprechend den Erfordernissen, die für Sie im Hinblick auf die Zugriffszeit und die Kosten erfüllt seinmüssen, können Sie beim Initiieren eines Auftrags zum Abrufen eines Archivs die folgenden Einstellungenfestlegen. Informationen zu den Abrufpreisen finden Sie in der S3 Glacier-Preisliste.

• Beschleunigt — Beschleunigte Abrufe ermöglichen Ihnen den schnellen Zugriff auf Ihre Daten, wenngelegentliche dringende Anfragen für eine Teilmenge von Archiven erforderlich sind. Daten, die unterVerwendung von „Expedited“ abgerufen werden, stehen normalerweise innerhalb von 1 bis 5 Minuten zurVerfügung, außer wenn es sich um sehr große Archive (250 MB und mehr) handelt. Die bereitgestellteKapazität stellt sicher, dass für Expedited-Abrufe Abrufkapazität verfügbar ist, wenn Sie sie benötigen.Weitere Informationen finden Sie im Bereitgestellte Kapazität (p. 93).

• Standardausführung — Mit Standardabrufen können Sie innerhalb weniger Stunden auf jedes IhrerArchive zugreifen. Standard-Abrufe werden in der Regel innerhalb von drei bis fünf Stunden ausgeführt.Dies ist die Standardoption für Abrufanforderungen, in denen keine Abrufoption angegeben ist.

• Bulk – Bulk-Abrufe sind die kostengünstigste Abrufoption von S3 Glacier. Sie ermöglichen Ihnen, großeDatenmengen bis hin zu Petabytes innerhalb von einem Tag abzurufen. Bulk-Abrufe werden in der Regelinnerhalb von fünf bis zwölf Stunden ausgeführt.

Um einen Expedited-, Standard- oder Bulk-Abruf durchzuführen, setzten Sie den Tier-Parameter inder Initiate Job (POST jobs) (p. 284)-REST-API-Anforderung auf die gewünschte Option bzw. auf dieentsprechende Option in der AWS CLI oder den AWS SDKs. Wenn Sie bereitgestellte Durchsatzkapazitätgekauft haben, werden alle Expedited-Abrufe automatisch über Ihre bereitgestellte Kapazität erledigt.

API-Version 2012-06-0192

Page 100: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbrufen von -Archiven

Bereitgestellte Kapazität

Die bereitgestellte Kapazität hilft sicherzustellen, dass für Expedited-Abrufe Abrufkapazität verfügbarist, wenn Sie sie benötigen. Jede Kapazitätseinheit stellt sicher, dass alle fünf Minuten mindestens dreiExpedited-Abrufe ausgeführt werden können, und bietet bis zu 150 MB/s Abrufdurchsatz.

Sie sollten bereitgestellte Abrufkapazität kaufen, wenn Ihre Workload einen sehr zuverlässigen undvorhersehbaren Zugriff auf eine Untermenge Ihrer Daten innerhalb von Minuten erforderlich macht. Ohnebereitgestellte Kapazität werden Expedited-Abrufe akzeptiert, außer in seltenen Situationen unüblich hoherNachfrage. Wenn Sie unbedingt Zugriff auf Expedited-Abrufe benötigen, müssen Sie auf alle Fälle einebereitgestellte Abrufkapazität kaufen.

Kaufen von bereitgestellter Durchsatzkapazität

Sie können bereitgestellte Kapazitätseinheiten über die S3 Glacier-Konsole, die Purchase ProvisionedCapacity (POST provisioned-capacity) (p. 320)-REST-API, die AWS-SDKs oder die AWS CLI kaufen.Weitere Informationen zu den Preisen für die bereitgestellte Kapazität finden Sie in der S3 Glacier-Preisliste.

Eine bereitgestellte Kapazitätseinheit ist ab dem Datum und der Uhrzeit des Kaufs (dem Startdatum), einenMonat lang gültig. Die Einheit läuft am Ablaufdatum ab, das auf die nächste Sekunde gerundet genau einenMonat nach dem Startdatum liegt.

Wenn das Startdatum der 31. Tag eines Monats ist, dann ist der letzte Tag des nächsten Monats dasAblaufdatum. Beispiel: Ist das Startdatum der 31. August, dann ist der 30. September das Ablaufdatum. Istdas Startdatum der 31. Januar, dann ist der 28. Februar das Ablaufdatum.

Wenn Sie bereitgestellte Kapazität über die S3 Glacier-Konsole kaufen möchten, wählen Sie Einstellungenund dann Bereitgestellte Kapazität.

Falls Sie noch nicht über bereitgestellte Kapazität verfügen, aber Kapazität kaufen möchten, wählen SieAdd 1 capacity unit (1 Kapazitätseinheit hinzufügen= und dann Buy (Kaufen).

API-Version 2012-06-0193

Page 101: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

Nachdem der Kauf abgeschlossen ist, können Sie erneut Buy (Kaufen) wählen, um zusätzlicheKapazitätseinheiten zu kaufen. Wählen Sie Close (Schließen), wenn Sie damit fertig sind.

Abrufen von ArchivbereichenBeim Abrufen eines Archivs von S3 Glacier haben Sie die Möglichkeit, nur einen bestimmten Bereich bzw.einen Teil des Archivs abzurufen. In der Standardeinstellung wird das vollständige Archiv abgerufen. In denfolgenden Fällen ist es von Vorteil einen bestimmten Bereich von Bytes anzugeben:

• Verteilen der Datenmenge auf mehrere Downloads – Nach Beendigung der Abrufanforderung besteht24 Stunden lang die Möglichkeit, die abgerufenen Daten von S3 Glacier herunterzuladen. Sie könnenalso einzelne Bereiche des Archivs separat herunterladen, um den gesamten Download-Vorgang überden verfügbaren Zeitraum zu verteilen.

• Abrufen eines bestimmten Teils eines großen Archivs – Es kann beispielsweise vorkommen, dass Sieviele Dateien zuvor aggregiert und zusammen in ein einziges Archiv hochgeladen haben, jetzt abernur eine kleine Auswahl der Dateien abrufen möchten. In diesem Fall können Sie einen Bereich desArchivs angeben, der die gewünschten Dateien enthält, und eine Abrufanforderung übermitteln. Siekönnen allerdings auch mehrere Abrufanforderungen initiieren, die jeweils für einen Bereich mit eineroder mehreren Dateien gelten.

Beim Initiieren eines Abrufauftrags für bestimmte Bereiche müssen Sie sich bei der Angabe des Bereichsauf Megabytes beziehen. Das heißt, dass der Bytebereich bei null (am Anfang des Archivs) oder bei jedemnachfolgenden vollen Megabytewert beginnen kann (1 MB, 2 MB, 3 MB usw.).

Das Ende des Bereichs kann entweder das Ende Ihres Archivs oder ein beliebiges 1-MB-Intervallsein, das größer als der Anfang Ihres Bereichs ist. Wenn Sie beim Herunterladen der DatenPrüfsummenwerte erhalten möchten (nach Beendigung des Abrufauftrags), muss der Bereich, den Siebei der Auftragsinitiierung anfordern, außerdem mit dem Struktur-Hash abgeglichen werden. Prüfsummenerlauben Ihnen sicherzustellen, dass die Daten bei der Übertragung nicht beschädigt wurden. WeitereInformationen zum Megabyte- und Struktur-Hash-Abgleich finden Sie unter Erhalten von Prüfsummen beiDaten-Download (p. 188).

Herunterladen eines Archivs in Amazon S3 Glacier mitAWS SDK for JavaSowohl die von AWS SDK for Java bereitgestellten High-Level- und Low-Level-APIs (p. 125) stellen eineMethode zur Verfügung zum Herunterladen eines Archivs.

Themen• Herunterladen eines Archivs mit der High-Level-API von AWS SDK for Java (p. 95)• Herunterladen eines Archivs mit der Low-Level-API von AWS SDK for Java (p. 96)

API-Version 2012-06-0194

Page 102: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

Herunterladen eines Archivs mit der High-Level-API von AWSSDK for JavaDie ArchiveTransferManager-Klasse der High-Level-API bietet die download-Methode, mit der Sie einArchiv herunterladen können.

Important

Die ArchiveTransferManager-Klasse erstellt ein Amazon Simple Notification Service (AmazonSNS)-Thema und eine Amazon Simple Queue Service (Amazon SQS)-Warteschlange alsAbonnent für dieses Thema. Die Klasse initiiert daraufhin den Abrufauftrag für das Archiv undfragt die Warteschlange für das Archiv nach der Verfügbarkeit ab. Wenn das Archiv verfügbarist, beginnt der Download. Weitere Informationen zu Abrufzeiten finden Sie unter Archiv-Abrufoptionen (p. 92).

Beispiel: Herunterladen eines Archivs mithilfe der High-Level-API von AWS SDKfor JavaMit dem folgenden Java-Beispielcode wird ein Archiv aus einem Tresor (examplevault) in der RegionUSA West (Oregon) (us-west-2) heruntergeladen.

Schritt-für-Schritt-Anleitungen für die Ausführung dieses Beispiels finden Sie unter Ausführung vonJava-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128). Sie müssen denCode wie gezeigt mit einer vorhandenen Archiv-ID und dem lokalen Dateipfad zum Speicherort desheruntergeladenen Archivs aktualisieren.

Example

import java.io.File;import java.io.IOException;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.transfer.ArchiveTransferManager;import com.amazonaws.services.sns.AmazonSNSClient;import com.amazonaws.services.sqs.AmazonSQSClient;

public class ArchiveDownloadHighLevel { public static String vaultName = "examplevault"; public static String archiveId = "*** provide archive ID ***"; public static String downloadFilePath = "*** provide location to download archive ***"; public static AmazonGlacierClient glacierClient; public static AmazonSQSClient sqsClient; public static AmazonSNSClient snsClient; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider(); glacierClient = new AmazonGlacierClient(credentials); sqsClient = new AmazonSQSClient(credentials); snsClient = new AmazonSNSClient(credentials); glacierClient.setEndpoint("glacier.us-west-2.amazonaws.com"); sqsClient.setEndpoint("sqs.us-west-2.amazonaws.com"); snsClient.setEndpoint("sns.us-west-2.amazonaws.com");

try {

API-Version 2012-06-0195

Page 103: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

ArchiveTransferManager atm = new ArchiveTransferManager(glacierClient, sqsClient, snsClient); atm.download(vaultName, archiveId, new File(downloadFilePath)); System.out.println("Downloaded file to " + downloadFilePath); } catch (Exception e) { System.err.println(e); } }}

Herunterladen eines Archivs mit der Low-Level-API von AWSSDK for JavaNachfolgend werden die Schritte zum Abrufen eines Tresorbestands mithilfe der Low-Level-API für AWSSDK for Java beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, aus der das Archiv heruntergeladen werden soll. AlleOperationen, die Sie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Initiieren eines mehrteiligen archive-retrieval-Auftrags durch Ausführen der initiateJob-Methode.

Sie stellen Aufgabeninformationen bereit, wie beispielsweise die Archiv-ID des herunterzuladendenArchivs und das optionale Amazon SNS-Thema, an das Amazon S3 Glacier (S3 Glacier)bei Beendigung der Aufgabe eine Nachricht übermitteln soll, indem Sie eine Instance derInitiateJobRequest-Klasse erstellen. S3 Glacier gibt als Antwort eine Aufgaben-ID zurück. DieAntwort ist in einer Instance der InitiateJobResult-Klasse verfügbar.

JobParameters jobParameters = new JobParameters() .withArchiveId("*** provide an archive id ***") .withDescription("archive retrieval") .withRetrievalByteRange("*** provide a retrieval range***") // optional .withType("archive-retrieval");

InitiateJobResult initiateJobResult = client.initiateJob(new InitiateJobRequest() .withJobParameters(jobParameters) .withVaultName(vaultName)); String jobId = initiateJobResult.getJobId();

Optional können Sie einen Byte-Bereich angeben, um von S3 Glacier nur die teilweise Vorbereitungdes Archivs anzufordern. Sie können beispielsweise die vorherige Anforderung aktualisieren, indem Siedie folgende Anweisung hinzufügen und von S3 Glacier nur die Vorbereitung des 1 bis 2 MB großenArchivteils anfordern.

int ONE_MEG = 1048576;String retrievalByteRange = String.format("%s-%s", ONE_MEG, 2*ONE_MEG -1);

JobParameters jobParameters = new JobParameters() .withType("archive-retrieval") .withArchiveId(archiveId) .withRetrievalByteRange(retrievalByteRange) .withSNSTopic(snsTopicARN);

API-Version 2012-06-0196

Page 104: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

InitiateJobResult initiateJobResult = client.initiateJob(new InitiateJobRequest() .withJobParameters(jobParameters) .withVaultName(vaultName)); String jobId = initiateJobResult.getJobId();

3. Warten Sie, bis der Auftrag abgeschlossen wurde.

Sie müssen warten, bis die Ausgabe des Auftrags zum Download bereit ist. Wenn Sie eineBenachrichtigungskonfiguration im Tresor unter Angabe eines Amazon Simple Notification Service(Amazon SNS)-Themas festgelegt oder während der Initiierung einer Aufgabe ein Amazon SNS-Thema angegeben haben, sendet S3 Glacier nach der Beendigung der Aufgabe eine Nachricht an dasbetreffende Thema.

Sie können S3 Glacier auch durch einen Aufruf der describeJob-Methode überprüfen, um denAufgabenabschlussstatus zu ermitteln. Allerdings wird die Verwendung eines Amazon SNS-Themas fürBenachrichtigungen empfohlen.

4. Laden Sie die Auftragsausgabe (Archivdaten) herunter, indem Sie die getJobOutput-Methodeausführen.

Sie erstellen eine Instance der GetJobOutputRequest-Klasse, um die Informationen in derAnforderung, wie beispielsweise die Auftrags-ID und den Tresornamen, bereitzustellen. Die von S3Glacier zurückgegebene Ausgabe ist im GetJobOutputResult-Objekt verfügbar.

GetJobOutputRequest jobOutputRequest = new GetJobOutputRequest() .withJobId("*** provide a job ID ***") .withVaultName("*** provide a vault name ****");GetJobOutputResult jobOutputResult = client.getJobOutput(jobOutputRequest);

// jobOutputResult.getBody() // Provides the input stream.

Mit dem vorherigen Codeabschnitt wird die gesamte Auftragsausgabe heruntergeladen. Sie könnenoptional nur einen Teil der Ausgabe abrufen oder die gesamte Ausgabe in kleineren Datenblöckenherunterladen, indem Sie den Bytebereich für GetJobOutputRequest angeben.

GetJobOutputRequest jobOutputRequest = new GetJobOutputRequest() .withJobId("*** provide a job ID ***") .withRange("bytes=0-1048575") // Download only the first 1 MB of the output. .withVaultName("*** provide a vault name ****");

Als Reaktion auf Ihren GetJobOutput-Aufruf gibt S3 Glacier die Prüfsumme für den heruntergeladenenTeil der Daten zurück, sofern bestimmte Bedingungen erfüllt sind. Weitere Informationen finden Sie unterErhalten von Prüfsummen bei Daten-Download (p. 188).

Zur Überprüfung eines fehlerfreien Downloads können Sie anschließend auf Client-Seite die Prüfsummeberechnen und mit der von S3 Glacier in der Antwort gesendeten Prüfsumme vergleichen.

Bei einem Auftrag zum Abrufen eines Archivs, bei dem ein optionaler Bereich angegeben ist, ist diePrüfsumme des abgerufenen Bereichs (SHA256TreeHash) in der Auftragsbeschreibung enthalten. Mitdiesem Wert können Sie die Genauigkeit des gesamten später herunterzuladenden Byte-Bereichs weiterüberprüfen. Sie können beispielsweise einen Auftrag initiieren, durch den zuerst ein mit dem Struktur-Hash abgeglichener Bereich abgerufen und dann die Ausgabe in Datenblöcken so heruntergeladen wird,dass für jede der GetJobOutput-Anforderungen eine Prüfsumme zurückgegeben wird. Anschließendkönnen Sie die Prüfsumme für jeden auf der Clientseite heruntergeladenen Teil und schließlich dasStruktur-Hash berechnen. Sie können sie mit der Prüfsumme vergleichen, die von S3 Glacier als Antwort

API-Version 2012-06-0197

Page 105: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

auf Ihren Beschreibungsaufgabe zurückgibt, um zu überprüfen, ob der gesamte heruntergeladene Byte-Bereich mit dem in S3 Glacier gespeicherten Byte-Bereich übereinstimmt.

Ein funktionierendes Beispiel finden Sie unter Beispiel 2: Abrufen eines Archivs mithilfe der Low-Level-API von AWS SDK for Java – Herunterladen der Ausgabe in Datenblöcken (p. 102).

Beispiel 1: Abrufen eines Archivs mithilfe der Low-Level-API von AWS SDK forJavaMit dem folgenden Java-Beispielcode wird ein Archiv aus dem angegebenen Tresor heruntergeladen.Nachdem der Auftrag abgeschlossen ist, lädt der Beispielcode die gesamte Ausgabe in einem einzigengetJobOutput-Aufruf herunter. Ein Beispiel für das Herunterladen der Ausgabe in Datenblöckenfinden Sie unter Beispiel 2: Abrufen eines Archivs mithilfe der Low-Level-API von AWS SDK for Java –Herunterladen der Ausgabe in Datenblöcken (p. 102).

Das Beispiel führt die folgenden Aufgaben durch:

• Dies erstellt ein Amazon Simple Notification Service (Amazon SNS)-Thema.

S3 Glacier sendet nach Abschluss der Aufgabe eine Benachrichtigung an dieses Thema.• Dies erstellt eine Amazon Simple Queue Service (Amazon SQS)-Warteschlange.

Im Beispiel wird der Warteschlange eine Richtlinie angefügt, um dem Amazon SNS-Thema dasVeröffentlichen von Nachrichten in der Warteschlange zu ermöglichen.

• Initiiert einen Auftrag zum Herunterladen des angegebenen Archivs.

Das erstellte Amazon SNS-Thema wird in der Aufgabenanforderung angegeben, damit S3 Glacier nachAbschluss der Aufgabe eine Benachrichtigung an das Thema veröffentlichen kann.

• Prüft die Amazon SQS-Warteschlange regelmäßig auf eine Nachricht, die die Auftrags-ID enthält.

Ist eine Nachricht vorhanden, parsen Sie das JSON und prüfen Sie, ob der Auftrag erfolgreichabgeschlossen wurde. Wenn eine Nachricht enthalten ist, laden Sie das Archiv herunter.

• Dies bereinigt das System durch Löschen des Amazon SNS-Themas und der erstellten Amazon SQS-Warteschlange.

import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileOutputStream;import java.io.FileWriter;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.util.HashMap;import java.util.List;import java.util.Map;

import org.codehaus.jackson.JsonFactory;import org.codehaus.jackson.JsonNode;import org.codehaus.jackson.JsonParseException;import org.codehaus.jackson.JsonParser;import org.codehaus.jackson.map.ObjectMapper;

import com.amazonaws.AmazonClientException;import com.amazonaws.auth.policy.Policy;

API-Version 2012-06-0198

Page 106: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

import com.amazonaws.auth.policy.Principal;import com.amazonaws.auth.policy.Resource;import com.amazonaws.auth.policy.Statement;import com.amazonaws.auth.policy.Statement.Effect;import com.amazonaws.auth.policy.actions.SQSActions;import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.model.GetJobOutputRequest;import com.amazonaws.services.glacier.model.GetJobOutputResult;import com.amazonaws.services.glacier.model.InitiateJobRequest;import com.amazonaws.services.glacier.model.InitiateJobResult;import com.amazonaws.services.glacier.model.JobParameters;import com.amazonaws.services.sns.AmazonSNSClient;import com.amazonaws.services.sns.model.CreateTopicRequest;import com.amazonaws.services.sns.model.CreateTopicResult;import com.amazonaws.services.sns.model.DeleteTopicRequest;import com.amazonaws.services.sns.model.SubscribeRequest;import com.amazonaws.services.sns.model.SubscribeResult;import com.amazonaws.services.sns.model.UnsubscribeRequest;import com.amazonaws.services.sqs.AmazonSQSClient;import com.amazonaws.services.sqs.model.CreateQueueRequest;import com.amazonaws.services.sqs.model.CreateQueueResult;import com.amazonaws.services.sqs.model.DeleteQueueRequest;import com.amazonaws.services.sqs.model.GetQueueAttributesRequest;import com.amazonaws.services.sqs.model.GetQueueAttributesResult;import com.amazonaws.services.sqs.model.Message;import com.amazonaws.services.sqs.model.ReceiveMessageRequest;import com.amazonaws.services.sqs.model.SetQueueAttributesRequest;

public class AmazonGlacierDownloadArchiveWithSQSPolling { public static String archiveId = "*** provide archive ID ****"; public static String vaultName = "*** provide vault name ***"; public static String snsTopicName = "*** provide topic name ***"; public static String sqsQueueName = "*** provide queue name ***"; public static String sqsQueueARN; public static String sqsQueueURL; public static String snsTopicARN; public static String snsSubscriptionARN; public static String fileName = "*** provide file name ***"; public static String region = "*** region ***"; public static long sleepTime = 600; public static AmazonGlacierClient client; public static AmazonSQSClient sqsClient; public static AmazonSNSClient snsClient; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();

client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier." + region + ".amazonaws.com"); sqsClient = new AmazonSQSClient(credentials); sqsClient.setEndpoint("https://sqs." + region + ".amazonaws.com"); snsClient = new AmazonSNSClient(credentials); snsClient.setEndpoint("https://sns." + region + ".amazonaws.com"); try { setupSQS(); setupSNS();

String jobId = initiateJobRequest(); System.out.println("Jobid = " + jobId);

API-Version 2012-06-0199

Page 107: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

Boolean success = waitForJobToComplete(jobId, sqsQueueURL); if (!success) { throw new Exception("Job did not complete successfully."); } downloadJobOutput(jobId); cleanUp(); } catch (Exception e) { System.err.println("Archive retrieval failed."); System.err.println(e); } }

private static void setupSQS() { CreateQueueRequest request = new CreateQueueRequest() .withQueueName(sqsQueueName); CreateQueueResult result = sqsClient.createQueue(request); sqsQueueURL = result.getQueueUrl(); GetQueueAttributesRequest qRequest = new GetQueueAttributesRequest() .withQueueUrl(sqsQueueURL) .withAttributeNames("QueueArn"); GetQueueAttributesResult qResult = sqsClient.getQueueAttributes(qRequest); sqsQueueARN = qResult.getAttributes().get("QueueArn"); Policy sqsPolicy = new Policy().withStatements( new Statement(Effect.Allow) .withPrincipals(Principal.AllUsers) .withActions(SQSActions.SendMessage) .withResources(new Resource(sqsQueueARN))); Map<String, String> queueAttributes = new HashMap<String, String>(); queueAttributes.put("Policy", sqsPolicy.toJson()); sqsClient.setQueueAttributes(new SetQueueAttributesRequest(sqsQueueURL, queueAttributes));

} private static void setupSNS() { CreateTopicRequest request = new CreateTopicRequest() .withName(snsTopicName); CreateTopicResult result = snsClient.createTopic(request); snsTopicARN = result.getTopicArn();

SubscribeRequest request2 = new SubscribeRequest() .withTopicArn(snsTopicARN) .withEndpoint(sqsQueueARN) .withProtocol("sqs"); SubscribeResult result2 = snsClient.subscribe(request2); snsSubscriptionARN = result2.getSubscriptionArn(); } private static String initiateJobRequest() { JobParameters jobParameters = new JobParameters() .withType("archive-retrieval") .withArchiveId(archiveId) .withSNSTopic(snsTopicARN); InitiateJobRequest request = new InitiateJobRequest() .withVaultName(vaultName) .withJobParameters(jobParameters); InitiateJobResult response = client.initiateJob(request); return response.getJobId();

API-Version 2012-06-01100

Page 108: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

} private static Boolean waitForJobToComplete(String jobId, String sqsQueueUrl) throws InterruptedException, JsonParseException, IOException { Boolean messageFound = false; Boolean jobSuccessful = false; ObjectMapper mapper = new ObjectMapper(); JsonFactory factory = mapper.getJsonFactory(); while (!messageFound) { List<Message> msgs = sqsClient.receiveMessage( new ReceiveMessageRequest(sqsQueueUrl).withMaxNumberOfMessages(10)).getMessages();

if (msgs.size() > 0) { for (Message m : msgs) { JsonParser jpMessage = factory.createJsonParser(m.getBody()); JsonNode jobMessageNode = mapper.readTree(jpMessage); String jobMessage = jobMessageNode.get("Message").getTextValue(); JsonParser jpDesc = factory.createJsonParser(jobMessage); JsonNode jobDescNode = mapper.readTree(jpDesc); String retrievedJobId = jobDescNode.get("JobId").getTextValue(); String statusCode = jobDescNode.get("StatusCode").getTextValue(); if (retrievedJobId.equals(jobId)) { messageFound = true; if (statusCode.equals("Succeeded")) { jobSuccessful = true; } } } } else { Thread.sleep(sleepTime * 1000); } } return (messageFound && jobSuccessful); } private static void downloadJobOutput(String jobId) throws IOException { GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest() .withVaultName(vaultName) .withJobId(jobId); GetJobOutputResult getJobOutputResult = client.getJobOutput(getJobOutputRequest); InputStream input = new BufferedInputStream(getJobOutputResult.getBody()); OutputStream output = null; try { output = new BufferedOutputStream(new FileOutputStream(fileName));

byte[] buffer = new byte[1024 * 1024];

int bytesRead = 0; do { bytesRead = input.read(buffer); if (bytesRead <= 0) break; output.write(buffer, 0, bytesRead); } while (bytesRead > 0); } catch (IOException e) { throw new AmazonClientException("Unable to save archive", e); } finally { try {input.close();} catch (Exception e) {} try {output.close();} catch (Exception e) {} }

API-Version 2012-06-01101

Page 109: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

System.out.println("Retrieved archive to " + fileName); } private static void cleanUp() { snsClient.unsubscribe(new UnsubscribeRequest(snsSubscriptionARN)); snsClient.deleteTopic(new DeleteTopicRequest(snsTopicARN)); sqsClient.deleteQueue(new DeleteQueueRequest(sqsQueueURL)); }}

Beispiel 2: Abrufen eines Archivs mithilfe der Low-Level-API von AWS SDK forJava – Herunterladen der Ausgabe in DatenblöckenIm folgenden Java-Codebeispiel wird von S3 Glacier ein Objekt aus einem Archiv abgerufen. DerBeispielcode gibt den abzurufenden Bytebereich in einem GetJobOutputRequest-Objekt an und lädt dieAuftragsausgabe in Datenblöcken herunter.

import java.io.BufferedInputStream;import java.io.ByteArrayInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.util.HashMap;import java.util.List;import java.util.Map;

import com.fasterxml.jackson.core.JsonFactory;import com.fasterxml.jackson.core.JsonParseException;import com.fasterxml.jackson.core.JsonParser;import com.fasterxml.jackson.databind.JsonNode;import com.fasterxml.jackson.databind.ObjectMapper;

import com.amazonaws.auth.policy.Policy;import com.amazonaws.auth.policy.Principal;import com.amazonaws.auth.policy.Resource;import com.amazonaws.auth.policy.Statement;import com.amazonaws.auth.policy.Statement.Effect;import com.amazonaws.auth.policy.actions.SQSActions;import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.TreeHashGenerator;import com.amazonaws.services.glacier.model.GetJobOutputRequest;import com.amazonaws.services.glacier.model.GetJobOutputResult;import com.amazonaws.services.glacier.model.InitiateJobRequest;import com.amazonaws.services.glacier.model.InitiateJobResult;import com.amazonaws.services.glacier.model.JobParameters;import com.amazonaws.services.sns.AmazonSNSClient;import com.amazonaws.services.sns.model.CreateTopicRequest;import com.amazonaws.services.sns.model.CreateTopicResult;import com.amazonaws.services.sns.model.DeleteTopicRequest;import com.amazonaws.services.sns.model.SubscribeRequest;import com.amazonaws.services.sns.model.SubscribeResult;import com.amazonaws.services.sns.model.UnsubscribeRequest;import com.amazonaws.services.sqs.AmazonSQSClient;import com.amazonaws.services.sqs.model.CreateQueueRequest;import com.amazonaws.services.sqs.model.CreateQueueResult;import com.amazonaws.services.sqs.model.DeleteQueueRequest;import com.amazonaws.services.sqs.model.GetQueueAttributesRequest;import com.amazonaws.services.sqs.model.GetQueueAttributesResult;import com.amazonaws.services.sqs.model.Message;import com.amazonaws.services.sqs.model.ReceiveMessageRequest;import com.amazonaws.services.sqs.model.SetQueueAttributesRequest;

API-Version 2012-06-01102

Page 110: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

public class ArchiveDownloadLowLevelWithRange { public static String vaultName = "*** provide vault name ***"; public static String archiveId = "*** provide archive id ***"; public static String snsTopicName = "glacier-temp-sns-topic"; public static String sqsQueueName = "glacier-temp-sqs-queue"; public static long downloadChunkSize = 4194304; // 4 MB public static String sqsQueueARN; public static String sqsQueueURL; public static String snsTopicARN; public static String snsSubscriptionARN; public static String fileName = "*** provide file name to save archive to ***"; public static String region = "*** region ***"; public static long sleepTime = 600; public static AmazonGlacierClient client; public static AmazonSQSClient sqsClient; public static AmazonSNSClient snsClient; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();

client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier." + region + ".amazonaws.com"); sqsClient = new AmazonSQSClient(credentials); sqsClient.setEndpoint("https://sqs." + region + ".amazonaws.com"); snsClient = new AmazonSNSClient(credentials); snsClient.setEndpoint("https://sns." + region + ".amazonaws.com"); try { setupSQS(); setupSNS();

String jobId = initiateJobRequest(); System.out.println("Jobid = " + jobId); long archiveSizeInBytes = waitForJobToComplete(jobId, sqsQueueURL); if (archiveSizeInBytes==-1) { throw new Exception("Job did not complete successfully."); } downloadJobOutput(jobId, archiveSizeInBytes); cleanUp(); } catch (Exception e) { System.err.println("Archive retrieval failed."); System.err.println(e); } }

private static void setupSQS() { CreateQueueRequest request = new CreateQueueRequest() .withQueueName(sqsQueueName); CreateQueueResult result = sqsClient.createQueue(request); sqsQueueURL = result.getQueueUrl(); GetQueueAttributesRequest qRequest = new GetQueueAttributesRequest() .withQueueUrl(sqsQueueURL) .withAttributeNames("QueueArn"); GetQueueAttributesResult qResult = sqsClient.getQueueAttributes(qRequest); sqsQueueARN = qResult.getAttributes().get("QueueArn"); Policy sqsPolicy =

API-Version 2012-06-01103

Page 111: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

new Policy().withStatements( new Statement(Effect.Allow) .withPrincipals(Principal.AllUsers) .withActions(SQSActions.SendMessage) .withResources(new Resource(sqsQueueARN))); Map<String, String> queueAttributes = new HashMap<String, String>(); queueAttributes.put("Policy", sqsPolicy.toJson()); sqsClient.setQueueAttributes(new SetQueueAttributesRequest(sqsQueueURL, queueAttributes));

} private static void setupSNS() { CreateTopicRequest request = new CreateTopicRequest() .withName(snsTopicName); CreateTopicResult result = snsClient.createTopic(request); snsTopicARN = result.getTopicArn();

SubscribeRequest request2 = new SubscribeRequest() .withTopicArn(snsTopicARN) .withEndpoint(sqsQueueARN) .withProtocol("sqs"); SubscribeResult result2 = snsClient.subscribe(request2); snsSubscriptionARN = result2.getSubscriptionArn(); } private static String initiateJobRequest() { JobParameters jobParameters = new JobParameters() .withType("archive-retrieval") .withArchiveId(archiveId) .withSNSTopic(snsTopicARN); InitiateJobRequest request = new InitiateJobRequest() .withVaultName(vaultName) .withJobParameters(jobParameters); InitiateJobResult response = client.initiateJob(request); return response.getJobId(); } private static long waitForJobToComplete(String jobId, String sqsQueueUrl) throws InterruptedException, JsonParseException, IOException { Boolean messageFound = false; Boolean jobSuccessful = false; long archiveSizeInBytes = -1; ObjectMapper mapper = new ObjectMapper(); JsonFactory factory = mapper.getFactory(); while (!messageFound) { List<Message> msgs = sqsClient.receiveMessage( new ReceiveMessageRequest(sqsQueueUrl).withMaxNumberOfMessages(10)).getMessages();

if (msgs.size() > 0) { for (Message m : msgs) { JsonParser jpMessage = factory.createJsonParser(m.getBody()); JsonNode jobMessageNode = mapper.readTree(jpMessage); String jobMessage = jobMessageNode.get("Message").textValue(); JsonParser jpDesc = factory.createJsonParser(jobMessage); JsonNode jobDescNode = mapper.readTree(jpDesc); String retrievedJobId = jobDescNode.get("JobId").textValue(); String statusCode = jobDescNode.get("StatusCode").textValue(); archiveSizeInBytes = jobDescNode.get("ArchiveSizeInBytes").longValue();

API-Version 2012-06-01104

Page 112: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit Java

if (retrievedJobId.equals(jobId)) { messageFound = true; if (statusCode.equals("Succeeded")) { jobSuccessful = true; } } } } else { Thread.sleep(sleepTime * 1000); } } return (messageFound && jobSuccessful) ? archiveSizeInBytes : -1; } private static void downloadJobOutput(String jobId, long archiveSizeInBytes) throws IOException { if (archiveSizeInBytes < 0) { System.err.println("Nothing to download."); return; }

System.out.println("archiveSizeInBytes: " + archiveSizeInBytes); FileOutputStream fstream = new FileOutputStream(fileName); long startRange = 0; long endRange = (downloadChunkSize > archiveSizeInBytes) ? archiveSizeInBytes -1 : downloadChunkSize - 1;

do {

GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest() .withVaultName(vaultName) .withRange("bytes=" + startRange + "-" + endRange) .withJobId(jobId); GetJobOutputResult getJobOutputResult = client.getJobOutput(getJobOutputRequest);

BufferedInputStream is = new BufferedInputStream(getJobOutputResult.getBody()); byte[] buffer = new byte[(int)(endRange - startRange + 1)];

System.out.println("Checksum received: " + getJobOutputResult.getChecksum()); System.out.println("Content range " + getJobOutputResult.getContentRange());

int totalRead = 0; while (totalRead < buffer.length) { int bytesRemaining = buffer.length - totalRead; int read = is.read(buffer, totalRead, bytesRemaining); if (read > 0) { totalRead = totalRead + read; } else { break; } } System.out.println("Calculated checksum: " + TreeHashGenerator.calculateTreeHash(new ByteArrayInputStream(buffer))); System.out.println("read = " + totalRead); fstream.write(buffer); startRange = startRange + (long)totalRead; endRange = ((endRange + downloadChunkSize) > archiveSizeInBytes) ? archiveSizeInBytes : (endRange + downloadChunkSize); is.close();

API-Version 2012-06-01105

Page 113: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

} while (endRange <= archiveSizeInBytes && startRange < archiveSizeInBytes); fstream.close(); System.out.println("Retrieved file to " + fileName);

} private static void cleanUp() { snsClient.unsubscribe(new UnsubscribeRequest(snsSubscriptionARN)); snsClient.deleteTopic(new DeleteTopicRequest(snsTopicARN)); sqsClient.deleteQueue(new DeleteQueueRequest(sqsQueueURL)); }}

Herunterladen eines Archivs in Amazon S3 Glacier mitAWS SDK für .NETSowohl die von AWS SDK for .NET bereitgestellten High-Level- und Low-Level-APIs (p. 125) stellen eineMethode zur Verfügung zum Herunterladen eines Archivs.

Themen• Herunterladen eines Archivs mit der High-Level-API von AWS SDK für .NET (p. 106)• Herunterladen eines Archivs mithilfe der Low-Level-API von AWS SDK für .NET (p. 107)

Herunterladen eines Archivs mit der High-Level-API von AWSSDK für .NETDie ArchiveTransferManager-Klasse der High-Level-API bietet die Download-Methode, mit der Sie einArchiv herunterladen können.

Important

Die ArchiveTransferManager-Klasse erstellt ein Amazon Simple Notification Service (AmazonSNS)-Thema und eine Amazon Simple Queue Service (Amazon SQS)-Warteschlange alsAbonnent für dieses Thema. Die Klasse initiiert daraufhin den Abrufauftrag für das Archiv undfragt die Warteschlange für das Archiv nach der Verfügbarkeit ab. Wenn das Archiv verfügbarist, beginnt der Download. Weitere Informationen zu Abrufzeiten finden Sie unter Archiv-Abrufoptionen (p. 92).

Beispiel: Herunterladen eines Archivs mithilfe der High-Level-API von AWS SDKfür .NETMit dem folgenden C#-Beispielcode wird ein Archiv aus einem Tresor (examplevault) in der Region USAWest (Oregon) heruntergeladen.

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit einer vorhandenen Archiv-ID und demlokalen Dateipfad zum Speicherort des heruntergeladenen Archivs aktualisieren.

using System;using Amazon.Glacier;using Amazon.Glacier.Transfer;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class ArchiveDownloadHighLevel

API-Version 2012-06-01106

Page 114: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

{ static string vaultName = "examplevault"; static string archiveId = "*** Provide archive ID ***"; static string downloadFilePath = "*** Provide the file name and path to where to store the download ***";

public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2);

var options = new DownloadOptions(); options.StreamTransferProgress += ArchiveDownloadHighLevel.progress; // Download an archive. Console.WriteLine("Intiating the archive retrieval job and then polling SQS queue for the archive to be available."); Console.WriteLine("Once the archive is available, downloading will begin."); manager.Download(vaultName, archiveId, downloadFilePath, options); Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); }

static int currentPercentage = -1; static void progress(object sender, StreamTransferProgressArgs args) { if (args.PercentDone != currentPercentage) { currentPercentage = args.PercentDone; Console.WriteLine("Downloaded {0}%", args.PercentDone); } } }}

Herunterladen eines Archivs mithilfe der Low-Level-API von AWSSDK für .NETNachfolgend werden die Schritte zum Herunterladen eines Amazon S3 Glacier (S3 Glacier)-Archivs mithilfeder Low-Level-API von AWS SDK für .NET beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, aus der das Archiv heruntergeladen werden soll. AlleOperationen, die Sie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Initiieren eines mehrteiligen archive-retrieval-Auftrags durch Ausführen der InitiateJob-Methode.

Sie stellen Aufgabeninformationen bereit, wie beispielsweise die Archiv-ID des herunterzuladendenArchivs und das optionale Amazon SNS-Thema, an das S3 Glacier bei Beendigung der Aufgabeeine Nachricht übermitteln soll, indem Sie eine Instance der InitiateJobRequest-Klasseerstellen. S3 Glacier gibt als Antwort eine Aufgaben-ID zurück. Die Antwort ist in einer Instance derInitiateJobResponse-Klasse verfügbar.

AmazonGlacierClient client;

API-Version 2012-06-01107

Page 115: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);

InitiateJobRequest initJobRequest = new InitiateJobRequest(){ VaultName = vaultName, JobParameters = new JobParameters() { Type = "archive-retrieval", ArchiveId = "*** Provide archive id ***", SNSTopic = "*** Provide Amazon SNS topic ARN ***", }};

InitiateJobResponse initJobResponse = client.InitiateJob(initJobRequest);string jobId = initJobResponse.JobId;

Sie können optional einen Bytebereich angeben, damit S3 Glacier nur einen Teil des Archivs vorbereitet,wie in der folgenden Anforderung gezeigt. Die Anforderung weist S3 Glacier an, nur den Archivbereichvon 1 MB bis 2 MB vorzubereiten.

AmazonGlacierClient client;client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);

InitiateJobRequest initJobRequest = new InitiateJobRequest(){ VaultName = vaultName, JobParameters = new JobParameters() { Type = "archive-retrieval", ArchiveId = "*** Provide archive id ***", SNSTopic = "*** Provide Amazon SNS topic ARN ***", }};// Specify byte range.int ONE_MEG = 1048576;initJobRequest.JobParameters.RetrievalByteRange = string.Format("{0}-{1}", ONE_MEG, 2 * ONE_MEG -1);

InitiateJobResponse initJobResponse = client.InitiateJob(initJobRequest);string jobId = initJobResponse.JobId;

3. Warten Sie, bis der Auftrag abgeschlossen wurde.

Sie müssen warten, bis die Ausgabe des Auftrags zum Download bereit ist. Wenn Sie eineBenachrichtigungskonfiguration im Tresor unter Angabe eines Amazon Simple Notification Service(Amazon SNS)-Themas festgelegt oder während der Initiierung einer Aufgabe ein Amazon SNS-Thema angegeben haben, sendet S3 Glacier nach der Beendigung der Aufgabe eine Nachricht andas betreffende Thema. Im Codebeispiel im folgenden Abschnitt wird Amazon SNS für S3 Glacier zumVeröffentlichen einer Nachricht verwendet.

Sie können S3 Glacier auch durch einen Aufruf der DescribeJob-Methode überprüfen, um denAufgabenabschlussstatus zu ermitteln. Allerdings wird die Verwendung eines Amazon SNS-Themas fürBenachrichtigungen empfohlen.

4. Laden Sie die Auftragsausgabe (Archivdaten) herunter, indem Sie die GetJobOutput-Methodeausführen.

Sie erstellen eine Instance der GetJobOutputRequest-Klasse, um die Informationen in derAnforderung, wie beispielsweise die Auftrags-ID und den Tresornamen, bereitzustellen. Die von S3Glacier zurückgegebene Ausgabe ist im GetJobOutputResponse-Objekt verfügbar.

API-Version 2012-06-01108

Page 116: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest(){ JobId = jobId, VaultName = vaultName};

GetJobOutputResponse getJobOutputResponse = client.GetJobOutput(getJobOutputRequest);using (Stream webStream = getJobOutputResponse.Body){ using (Stream fileToSave = File.OpenWrite(fileName)) { CopyStream(webStream, fileToSave); }}

Mit dem vorherigen Codeabschnitt wird die gesamte Auftragsausgabe heruntergeladen. Sie könnenoptional nur einen Teil der Ausgabe abrufen oder die gesamte Ausgabe in kleineren Datenblöckenherunterladen, indem Sie den Bytebereich für GetJobOutputRequest angeben.

GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest(){ JobId = jobId, VaultName = vaultName};getJobOutputRequest.SetRange(0, 1048575); // Download only the first 1 MB chunk of the output.

Als Reaktion auf Ihren GetJobOutput-Aufruf gibt S3 Glacier die Prüfsumme für den heruntergeladenenTeil der Daten zurück, sofern bestimmte Bedingungen erfüllt sind. Weitere Informationen finden Sie unterErhalten von Prüfsummen bei Daten-Download (p. 188).

Zur Überprüfung eines fehlerfreien Downloads können Sie anschließend auf Client-Seite die Prüfsummeberechnen und mit der von S3 Glacier in der Antwort gesendeten Prüfsumme vergleichen.

Wenn bei einem Auftrag zum Abrufen eines Archivs ein Bereich angegeben ist, enthält die abgerufeneAuftragsbeschreibung die Prüfsumme für den abgerufenen Bereich (SHA256TreeHash). Sie könnenanhand dieses Werts die Genauigkeit für den gesamten Bytebereich verifizieren, den Sie späterherunterladen. Sie können beispielsweise einen Auftrag initiieren, durch den zuerst ein mit dem Struktur-Hash abgeglichener Bereich abgerufen und dann die Ausgabe in Datenblöcken so heruntergeladen wird,dass für jede der GetJobOutput-Anforderungen eine Prüfsumme zurückgegeben wird. Anschließendkönnen Sie die Prüfsumme für jeden auf der Clientseite heruntergeladenen Teil und schließlich dasStruktur-Hash berechnen. Sie können sie mit der Prüfsumme vergleichen, die von S3 Glacier als Antwortauf Ihren Beschreibungsaufgabe zurückgibt, um zu überprüfen, ob der gesamte heruntergeladene Byte-Bereich mit dem in S3 Glacier gespeicherten Byte-Bereich übereinstimmt.

Ein funktionierendes Beispiel finden Sie unter Beispiel 2: Abrufen eines Archivs mithilfe der Low-Level-API von AWS SDK für .NET – Herunterladen der Ausgabe in Datenblöcken (p. 113).

Beispiel 1: Abrufen eines Archivs mithilfe der Low-Level-API von AWS SDKfür .NET

Mit dem folgenden C#-Beispielcode wird ein Archiv aus dem angegebenen Tresor heruntergeladen.Nachdem der Auftrag abgeschlossen ist, lädt der Beispielcode die gesamte Ausgabe in einem einzigenGetJobOutput-Aufruf herunter. Ein Beispiel für das Herunterladen der Ausgabe in Datenblöckenfinden Sie unter Beispiel 2: Abrufen eines Archivs mithilfe der Low-Level-API von AWS SDK für .NET –Herunterladen der Ausgabe in Datenblöcken (p. 113).

API-Version 2012-06-01109

Page 117: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

Das Beispiel führt die folgenden Aufgaben durch:

• Richtet ein Amazon Simple Notification Service (Amazon SNS)-Thema ein

S3 Glacier sendet nach Abschluss der Aufgabe eine Benachrichtigung an dieses Thema.• Richtet eine Amazon Simple Queue Service (Amazon SQS)-Warteschlange ein.

Im Beispiel wird der Warteschlange eine Richtlinie angefügt, um dem Amazon SNS-Thema dasVeröffentlichen von Nachrichten zu ermöglichen.

• Initiiert einen Auftrag zum Herunterladen des angegebenen Archivs.

In der Aufgabenanforderung im Beispiel wird das Amazon SNS-Thema angegeben, damit S3 Glaciernach dem Abschluss der Aufgabe eine Nachricht senden kann.

• Überprüft regelmäßig die Amazon SQS-Warteschlange auf Nachrichten.

Ist eine Nachricht vorhanden, parsen Sie das JSON und prüfen Sie, ob der Auftrag erfolgreichabgeschlossen wurde. Wenn sie eine Nachricht enthält, laden Sie das Archiv herunter. Im Codebeispielwird die JSON.NET-Bibliothek (siehe JSON.NET) zum Analysieren von JSON verwendet.

• Bereinigt das System durch Löschen des Amazon SNS-Themas und der erstellten Amazon SQS-Warteschlange.

using System;using System.Collections.Generic;using System.IO;using System.Threading;using Amazon.Glacier;using Amazon.Glacier.Model;using Amazon.Runtime;using Amazon.SimpleNotificationService;using Amazon.SimpleNotificationService.Model;using Amazon.SQS;using Amazon.SQS.Model;using Newtonsoft.Json;

namespace glacier.amazon.com.docsamples{ class ArchiveDownloadLowLevelUsingSNSSQS { static string topicArn; static string queueUrl; static string queueArn; static string vaultName = "*** Provide vault name ***"; static string archiveID = "*** Provide archive ID ***"; static string fileName = "*** Provide the file name and path to where to store downloaded archive ***"; static AmazonSimpleNotificationServiceClient snsClient; static AmazonSQSClient sqsClient; const string SQS_POLICY = "{" + " \"Version\" : \"2012-10-17\"," + " \"Statement\" : [" + " {" + " \"Sid\" : \"sns-rule\"," + " \"Effect\" : \"Allow\"," + " \"Principal\" : {\"Service\" : \"sns.amazonaws.com\" }," + " \"Action\" : \"sqs:SendMessage\"," + " \"Resource\" : \"{QueueArn}\"," + " \"Condition\" : {" + " \"ArnLike\" : {" + " \"aws:SourceArn\" : \"{TopicArn}\"" + " }" +

API-Version 2012-06-01110

Page 118: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

" }" + " }" + " ]" + "}";

public static void Main(string[] args) { AmazonGlacierClient client; try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Setup SNS topic and SQS queue."); SetupTopicAndQueue(); Console.WriteLine("To continue, press Enter"); Console.ReadKey(); Console.WriteLine("Retrieving..."); RetrieveArchive(client); } Console.WriteLine("Operations successful. To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } finally { // Delete SNS topic and SQS queue. snsClient.DeleteTopic(new DeleteTopicRequest() { TopicArn = topicArn }); sqsClient.DeleteQueue(new DeleteQueueRequest() { QueueUrl = queueUrl }); } }

static void SetupTopicAndQueue() { snsClient = new AmazonSimpleNotificationServiceClient(Amazon.RegionEndpoint.USWest2); sqsClient = new AmazonSQSClient(Amazon.RegionEndpoint.USWest2);

long ticks = DateTime.Now.Ticks; topicArn = snsClient.CreateTopic(new CreateTopicRequest { Name = "GlacierDownload-" + ticks }).TopicArn; Console.Write("topicArn: "); Console.WriteLine(topicArn);

CreateQueueRequest createQueueRequest = new CreateQueueRequest(); createQueueRequest.QueueName = "GlacierDownload-" + ticks; CreateQueueResponse createQueueResponse = sqsClient.CreateQueue(createQueueRequest); queueUrl = createQueueResponse.QueueUrl; Console.Write("QueueURL: "); Console.WriteLine(queueUrl);

GetQueueAttributesRequest getQueueAttributesRequest = new GetQueueAttributesRequest(); getQueueAttributesRequest.AttributeNames = new List<string> { "QueueArn" }; getQueueAttributesRequest.QueueUrl = queueUrl; GetQueueAttributesResponse response = sqsClient.GetQueueAttributes(getQueueAttributesRequest); queueArn = response.QueueARN; Console.Write("QueueArn: "); Console.WriteLine(queueArn);

// Setup the Amazon SNS topic to publish to the SQS queue. snsClient.Subscribe(new SubscribeRequest() { Protocol = "sqs", Endpoint = queueArn, TopicArn = topicArn });

// Add policy to the queue so SNS can send messages to the queue.

API-Version 2012-06-01111

Page 119: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

var policy = SQS_POLICY.Replace("{TopicArn}", topicArn).Replace("{QueueArn}", queueArn);

sqsClient.SetQueueAttributes(new SetQueueAttributesRequest() { QueueUrl = queueUrl, Attributes = new Dictionary<string, string> { { QueueAttributeName.Policy, policy } } }); }

static void RetrieveArchive(AmazonGlacierClient client) { // Initiate job. InitiateJobRequest initJobRequest = new InitiateJobRequest() { VaultName = vaultName, JobParameters = new JobParameters() { Type = "archive-retrieval", ArchiveId = archiveID, Description = "This job is to download archive.", SNSTopic = topicArn, } }; InitiateJobResponse initJobResponse = client.InitiateJob(initJobRequest); string jobId = initJobResponse.JobId;

// Check queue for a message and if job completed successfully, download archive. ProcessQueue(jobId, client); }

private static void ProcessQueue(string jobId, AmazonGlacierClient client) { ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest() { QueueUrl = queueUrl, MaxNumberOfMessages = 1 }; bool jobDone = false; while (!jobDone) { Console.WriteLine("Poll SQS queue"); ReceiveMessageResponse receiveMessageResponse = sqsClient.ReceiveMessage(receiveMessageRequest); if (receiveMessageResponse.Messages.Count == 0) { Thread.Sleep(10000 * 60); continue; } Console.WriteLine("Got message"); Message message = receiveMessageResponse.Messages[0]; Dictionary<string, string> outerLayer = JsonConvert.DeserializeObject<Dictionary<string, string>>(message.Body); Dictionary<string, object> fields = JsonConvert.DeserializeObject<Dictionary<string, object>>(outerLayer["Message"]); string statusCode = fields["StatusCode"] as string;

if (string.Equals(statusCode, GlacierUtils.JOB_STATUS_SUCCEEDED, StringComparison.InvariantCultureIgnoreCase)) { Console.WriteLine("Downloading job output"); DownloadOutput(jobId, client); // Save job output to the specified file location. } else if (string.Equals(statusCode, GlacierUtils.JOB_STATUS_FAILED, StringComparison.InvariantCultureIgnoreCase)) Console.WriteLine("Job failed... cannot download the archive.");

API-Version 2012-06-01112

Page 120: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

jobDone = true; sqsClient.DeleteMessage(new DeleteMessageRequest() { QueueUrl = queueUrl, ReceiptHandle = message.ReceiptHandle }); } }

private static void DownloadOutput(string jobId, AmazonGlacierClient client) { GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest() { JobId = jobId, VaultName = vaultName }; GetJobOutputResponse getJobOutputResponse = client.GetJobOutput(getJobOutputRequest); using (Stream webStream = getJobOutputResponse.Body) { using (Stream fileToSave = File.OpenWrite(fileName)) { CopyStream(webStream, fileToSave); } } }

public static void CopyStream(Stream input, Stream output) { byte[] buffer = new byte[65536]; int length; while ((length = input.Read(buffer, 0, buffer.Length)) > 0) { output.Write(buffer, 0, length); } } }}

Beispiel 2: Abrufen eines Archivs mithilfe der Low-Level-API von AWS SDKfür .NET – Herunterladen der Ausgabe in Datenblöcken

Das folgende C#-Codebeispiel ruft ein Objekt aus einem Archiv von S3 Glacier ab. Der Beispielcode gibtden abzurufenden Bytebereich in einem GetJobOutputRequest-Objekt an und lädt die Auftragsausgabein Datenblöcken herunter.

using System;using System.Collections.Generic;using System.IO;using System.Threading;using Amazon.Glacier;using Amazon.Glacier.Model;using Amazon.Glacier.Transfer;using Amazon.Runtime;using Amazon.SimpleNotificationService;using Amazon.SimpleNotificationService.Model;using Amazon.SQS;using Amazon.SQS.Model;using Newtonsoft.Json;using System.Collections.Specialized;

namespace glacier.amazon.com.docsamples{ class ArchiveDownloadLowLevelUsingSQLSNSOutputUsingRange {

API-Version 2012-06-01113

Page 121: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

static string topicArn; static string queueUrl; static string queueArn; static string vaultName = "*** Provide vault name ***"; static string archiveId = "*** Provide archive ID ***"; static string fileName = "*** Provide the file name and path to where to store downloaded archive ***"; static AmazonSimpleNotificationServiceClient snsClient; static AmazonSQSClient sqsClient; const string SQS_POLICY = "{" + " \"Version\" : \"2012-10-17\"," + " \"Statement\" : [" + " {" + " \"Sid\" : \"sns-rule\"," + " \"Effect\" : \"Allow\"," + " \"Principal\" : {\"AWS\" : \"arn:aws:iam::123456789012:root\" }," + " \"Action\" : \"sqs:SendMessage\"," + " \"Resource\" : \"{QuernArn}\"," + " \"Condition\" : {" + " \"ArnLike\" : {" + " \"aws:SourceArn\" : \"{TopicArn}\"" + " }" + " }" + " }" + " ]" + "}";

public static void Main(string[] args) { AmazonGlacierClient client;

try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Setup SNS topic and SQS queue."); SetupTopicAndQueue(); Console.WriteLine("To continue, press Enter"); Console.ReadKey();

Console.WriteLine("Download archive"); DownloadAnArchive(archiveId, client); } Console.WriteLine("Operations successful. To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } finally { // Delete SNS topic and SQS queue. snsClient.DeleteTopic(new DeleteTopicRequest() { TopicArn = topicArn }); sqsClient.DeleteQueue(new DeleteQueueRequest() { QueueUrl = queueUrl }); } }

static void SetupTopicAndQueue() { long ticks = DateTime.Now.Ticks; // Setup SNS topic. snsClient = new AmazonSimpleNotificationServiceClient(Amazon.RegionEndpoint.USWest2); sqsClient = new AmazonSQSClient(Amazon.RegionEndpoint.USWest2);

API-Version 2012-06-01114

Page 122: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

topicArn = snsClient.CreateTopic(new CreateTopicRequest { Name = "GlacierDownload-" + ticks }).TopicArn; Console.Write("topicArn: "); Console.WriteLine(topicArn);

CreateQueueRequest createQueueRequest = new CreateQueueRequest(); createQueueRequest.QueueName = "GlacierDownload-" + ticks; CreateQueueResponse createQueueResponse = sqsClient.CreateQueue(createQueueRequest); queueUrl = createQueueResponse.QueueUrl; Console.Write("QueueURL: "); Console.WriteLine(queueUrl);

GetQueueAttributesRequest getQueueAttributesRequest = new GetQueueAttributesRequest(); getQueueAttributesRequest.AttributeNames = new List<string> { "QueueArn" }; getQueueAttributesRequest.QueueUrl = queueUrl; GetQueueAttributesResponse response = sqsClient.GetQueueAttributes(getQueueAttributesRequest); queueArn = response.QueueARN; Console.Write("QueueArn: "); Console.WriteLine(queueArn);

// Setup the Amazon SNS topic to publish to the SQS queue. snsClient.Subscribe(new SubscribeRequest() { Protocol = "sqs", Endpoint = queueArn, TopicArn = topicArn });

// Add the policy to the queue so SNS can send messages to the queue. var policy = SQS_POLICY.Replace("{TopicArn}", topicArn).Replace("{QuernArn}", queueArn);

sqsClient.SetQueueAttributes(new SetQueueAttributesRequest() { QueueUrl = queueUrl, Attributes = new Dictionary<string, string> { { QueueAttributeName.Policy, policy } } }); }

static void DownloadAnArchive(string archiveId, AmazonGlacierClient client) { // Initiate job. InitiateJobRequest initJobRequest = new InitiateJobRequest() {

VaultName = vaultName, JobParameters = new JobParameters() { Type = "archive-retrieval", ArchiveId = archiveId, Description = "This job is to download the archive.", SNSTopic = topicArn, } }; InitiateJobResponse initJobResponse = client.InitiateJob(initJobRequest); string jobId = initJobResponse.JobId;

// Check queue for a message and if job completed successfully, download archive. ProcessQueue(jobId, client); }

private static void ProcessQueue(string jobId, AmazonGlacierClient client) {

API-Version 2012-06-01115

Page 123: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit .NET

var receiveMessageRequest = new ReceiveMessageRequest() { QueueUrl = queueUrl, MaxNumberOfMessages = 1 }; bool jobDone = false; while (!jobDone) { Console.WriteLine("Poll SQS queue"); ReceiveMessageResponse receiveMessageResponse = sqsClient.ReceiveMessage(receiveMessageRequest); if (receiveMessageResponse.Messages.Count == 0) { Thread.Sleep(10000 * 60); continue; } Console.WriteLine("Got message"); Message message = receiveMessageResponse.Messages[0]; Dictionary<string, string> outerLayer = JsonConvert.DeserializeObject<Dictionary<string, string>>(message.Body); Dictionary<string, object> fields = JsonConvert.DeserializeObject<Dictionary<string, object>>(outerLayer["Message"]); string statusCode = fields["StatusCode"] as string; if (string.Equals(statusCode, GlacierUtils.JOB_STATUS_SUCCEEDED, StringComparison.InvariantCultureIgnoreCase)) { long archiveSize = Convert.ToInt64(fields["ArchiveSizeInBytes"]); Console.WriteLine("Downloading job output"); DownloadOutput(jobId, archiveSize, client); // This where we save job output to the specified file location. } else if (string.Equals(statusCode, GlacierUtils.JOB_STATUS_FAILED, StringComparison.InvariantCultureIgnoreCase)) Console.WriteLine("Job failed... cannot download the archive."); jobDone = true; sqsClient.DeleteMessage(new DeleteMessageRequest() { QueueUrl = queueUrl, ReceiptHandle = message.ReceiptHandle }); } }

private static void DownloadOutput(string jobId, long archiveSize, AmazonGlacierClient client) { long partSize = 4 * (long)Math.Pow(2, 20); // 4 MB. using (Stream fileToSave = new FileStream(fileName, FileMode.Create, FileAccess.Write)) {

long currentPosition = 0; do { GetJobOutputRequest getJobOutputRequest = new GetJobOutputRequest() { JobId = jobId, VaultName = vaultName };

long endPosition = currentPosition + partSize - 1; if (endPosition > archiveSize) endPosition = archiveSize;

getJobOutputRequest.SetRange(currentPosition, endPosition); GetJobOutputResponse getJobOutputResponse = client.GetJobOutput(getJobOutputRequest);

using (Stream webStream = getJobOutputResponse.Body) { CopyStream(webStream, fileToSave); }

API-Version 2012-06-01116

Page 124: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHerunterladen eines Archivs mit der REST-API

currentPosition += partSize; } while (currentPosition < archiveSize); } }

public static void CopyStream(Stream input, Stream output) { byte[] buffer = new byte[65536]; int length; while ((length = input.Read(buffer, 0, buffer.Length)) > 0) { output.Write(buffer, 0, length); } } }}

Herunterladen eines Archivs mit der REST-APISo laden Sie ein Archiv mit der REST-API herunter

Das Herunterladen eines Archivs ist ein zweistufiger Prozess.

1. Initiieren Sie einen Auftrag des Typs archive-retrieval. Weitere Informationen finden Sie imInitiate Job (POST jobs) (p. 284).

2. Laden Sie die Archivdaten herunter, wenn der Auftrag abgeschlossen ist. Weitere Informationen findenSie im Get Job Output (GET output) (p. 277).

Löschen eines Archivs in Amazon S3 GlacierSie können ein Archiv nicht über die Amazon S3 Glacier (S3 Glacier)-Managementkonsole löschen. Um einArchiv zu löschen, müssen Sie die AWS Command Line Interface (CLI) verwenden oder Code schreiben,um einen Löschauftrag entweder direkt mithilfe der REST-API oder des AWS SDK for Java und .NET-Wrapper-Bibliotheken auszuführen. In den folgenden Themen wird erklärt, wie das AWS SDK for Javaund .NET-Wrapper-Bibliotheken sowie die REST API und die AWS CLI verwendet werden.

Themen• Löschen eines Archivs in Amazon S3 Glacier mit AWS SDK for Java (p. 118)• Löschen eines Archivs in Amazon S3 Glacier mit AWS SDK für .NET (p. 119)• Löschen eines Amazon S3 Glacier-Archivs mit der REST-API (p. 122)• Löschen eines Archivs in Amazon S3 Glacier mit AWS Command Line Interface (p. 122)

Sie können zu einem gegebenen Zeitpunkt jeweils nur ein Archiv aus einem Tresor löschen. Zum Löschendes Archivs müssen Sie dessen Archiv-ID in Ihrer Löschanfrage angeben. Sie können die Archiv-IDermitteln, indem Sie das Tresorinventar für den Tresor, in dem sich Archiv befindet, herunterladen.Weitere Informationen zum Herunterladen des Tresorinventars finden Sie unter Herunterladen einesTresorinventars in Amazon S3 Glacier (p. 40).

Nach der Löschung eines Archivs kann noch eine erfolgreiche Anforderung zur Initiierung eines Auftragszum Abrufen des gelöschten Archivs möglich sein, der betreffende Auftrag schlägt jedoch fehl.

Wenn Sie ein Archiv löschen und währenddessen noch ein Abruf des Archivs über die Archiv-ID bearbeitetwird, kann der Abruf den folgenden Szenarien entsprechend fehlschlagen oder gelingen:

API-Version 2012-06-01117

Page 125: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit Java

• Wenn die Daten für die Archivabrufaufgabe gerade zum Herunterladen vorbereitet werden, wennS3 Glacier die Anforderung zum Löschen des Archivs empfängt, dann schlägt der Archivabrufwahrscheinlich fehl.

• Wenn das Archiv zu dem Zeitpunkt, zu dem S3 Glacier die Anforderung zum Löschen des Archivsempfängt, bereits erfolgreich für die Archivabrufaufgabe zum Herunterladen vorbereitet wurde, dannkönnen Sie die Ausgabe herunterladen.

Weitere Informationen zum Archivabruf finden Sie unter Herunterladen eines Archivs in Amazon S3Glacier (p. 90).

Dieser Vorgang ist idempotent. Das Löschen eines bereits gelöschten Archivs erzeugt keinen Fehler.

Wenn Sie nach dem Löschen eines Archivs sofort das Tresorinventar herunterladen, kann das gelöschteArchiv in die Liste aufgenommen werden, da S3 Glacier das Tresorinventar nur etwa einmal pro Tagvorbereitet.

Löschen eines Archivs in Amazon S3 Glacier mit AWSSDK for JavaIm Folgenden werden die Schritte zum Löschen eines Archivs mithilfe der AWS SDK for Java-Low-Level-API beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, in der das zu löschende Archiv gespeichert wird. AlleOperationen, die Sie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derDeleteArchiveRequest-Klasse.

Sie müssen eine Archiv-ID, einen Tresornamen und Ihre Konto-ID angeben. Wenn Sie keine Konto-IDangeben, wird die Konto-ID übernommen, die den Anmeldeinformationen zugeordnet ist, die Sie zumSignieren der Anforderung verwenden. Weitere Informationen finden Sie im Verwenden der AWS SDKfor Java mit Amazon S3 Glacier (p. 127).

3. Ausführen der deleteArchive -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

Der folgende Java-Codeausschnitt veranschaulicht die vorherigen Schritte.

AmazonGlacierClient client;

DeleteArchiveRequest request = new DeleteArchiveRequest() .withVaultName("*** provide a vault name ***") .withArchiveId("*** provide an archive ID ***");

client.deleteArchive(request);

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Delete Archive (DELETEarchive) (p. 240).

Beispiel. Löschen eines Archivs mit AWS SDK for JavaDas folgende Java-Codebeispiel verwendet die AWS SDK for Java um ein Archiv zu löschen. Eineschrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführung von Java-Beispielen

API-Version 2012-06-01118

Page 126: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit .NET

für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128). Sie müssen den Code wie gezeigt miteinem Tresornamen und der Archiv-ID des Archivs aktualisieren, das Sie löschen möchten.

Example

import java.io.IOException;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.services.glacier.AmazonGlacierClient;import com.amazonaws.services.glacier.model.DeleteArchiveRequest;

public class ArchiveDelete {

public static String vaultName = "*** provide vault name ****"; public static String archiveId = "*** provide archive ID***"; public static AmazonGlacierClient client; public static void main(String[] args) throws IOException { ProfileCredentialsProvider credentials = new ProfileCredentialsProvider();

client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-east-1.amazonaws.com/");

try {

// Delete the archive. client.deleteArchive(new DeleteArchiveRequest() .withVaultName(vaultName) .withArchiveId(archiveId)); System.out.println("Deleted archive successfully."); } catch (Exception e) { System.err.println("Archive not deleted."); System.err.println(e); } }}

Löschen eines Archivs in Amazon S3 Glacier mit AWSSDK für .NETSowohl die von AWS SDK for .NET bereitgestellten High-Level- und Low-Level-APIs (p. 125) stellen eineMethode zur Verfügung zum Löschen eines Archivs.

Themen• Löschen eines Archivs mithilfe der High-Level-API von AWS SDK für .NET (p. 119)• Löschen eines Archivs mithilfe der Low-Level-API von AWS SDK für .NET (p. 120)

Löschen eines Archivs mithilfe der High-Level-API von AWS SDKfür .NETDie ArchiveTransferManager-Klasse der High-Level-API bietet die DeleteArchive-Methode, mit derSie ein Archiv löschen können.

API-Version 2012-06-01119

Page 127: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit .NET

Beispiel. Löschen eines Archivs mithilfe der High-Level-API von AWS SDKfür .NET

Das folgende C#-Codebeispiel verwendet die High-Level-API des AWS SDK für .NET um ein Archiv zulöschen. Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit der Archiv-ID des Archivs aktualisieren,das Sie löschen möchten.

Example

using System;using Amazon.Glacier;using Amazon.Glacier.Transfer;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class ArchiveDeleteHighLevel { static string vaultName = "examplevault"; static string archiveId = "*** Provide archive ID ***";

public static void Main(string[] args) { try { var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2); manager.DeleteArchive(vaultName, archiveId); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); } }}

Löschen eines Archivs mithilfe der Low-Level-API von AWS SDKfür .NETIm Folgenden werden die Schritte zum Löschen eines Archivs mit AWS SDK für .NET beschrieben.

1. Erstellen einer Instance der AmazonGlacierClient-Klasse (Client).

Sie müssen die AWS-Region angeben, in der das zu löschende Archiv gespeichert wird. AlleOperationen, die Sie mit diesem Client durchführen, gelten für diese AWS-Region.

2. Um die Anforderungsinformationen bereitzustellen, erstellen Sie eine Instance derDeleteArchiveRequest-Klasse.

Sie müssen eine Archiv-ID, einen Tresornamen und Ihre Konto-ID angeben. Wenn Sie keine Konto-IDangeben, wird die Konto-ID übernommen, die den Anmeldeinformationen zugeordnet ist, die Sie zumSignieren der Anforderung verwenden. Weitere Informationen finden Sie im Verwenden der AWS SDKsmit Amazon S3 Glacier (p. 125).

3. Ausführen der DeleteArchive -Methode durch Bereitstellen des Anforderungsobjekts als Parameter.

API-Version 2012-06-01120

Page 128: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit .NET

Beispiel. Löschen eines Archivs mithilfe der Low-Level-API der AWS SDKfür .NET

Im folgenden C#-Codebeispiel werden die vorstehenden Schritte veranschaulicht. In diesem Beispiel wirddie Low-Level-API von AWS SDK für .NET zum Löschen eines Archivs eingesetzt.

Note

Weitere Information zur zugrunde liegenden REST-API finden Sie unter Delete Archive (DELETEarchive) (p. 240).

Eine schrittweise Anleitung für das Ausführen dieses Beispiels finden Sie unter Ausführen vonCodebeispielen (p. 131). Sie müssen den Code wie gezeigt mit der Archiv-ID des zu löschenden Archivsaktualisieren.

Example

using System;using Amazon.Glacier;using Amazon.Glacier.Model;using Amazon.Runtime;

namespace glacier.amazon.com.docsamples{ class ArchiveDeleteLowLevel { static string vaultName = "examplevault"; static string archiveId = "*** Provide archive ID ***";

public static void Main(string[] args) { AmazonGlacierClient client; try { using (client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2)) { Console.WriteLine("Deleting the archive"); DeleteAnArchive(client); } Console.WriteLine("Operations successful. To continue, press Enter"); Console.ReadKey(); } catch (AmazonGlacierException e) { Console.WriteLine(e.Message); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } Console.WriteLine("To continue, press Enter"); Console.ReadKey(); }

static void DeleteAnArchive(AmazonGlacierClient client) { DeleteArchiveRequest request = new DeleteArchiveRequest() { VaultName = vaultName, ArchiveId = archiveId }; DeleteArchiveResponse response = client.DeleteArchive(request); } }}

API-Version 2012-06-01121

Page 129: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit REST

Löschen eines Amazon S3 Glacier-Archivs mit derREST-APISie können die API zum Löschen von Archiven verwenden, um ein Archiv zu löschen.

• Informationen zur API zum Löschen von Archiven finden Sie unter Delete Archive (DELETEarchive) (p. 240).

• Weitere Informationen zur Verwendung der REST-API finden Sie unter API-Referenz für Amazon S3Glacier (p. 172).

Löschen eines Archivs in Amazon S3 Glacier mit AWSCommand Line InterfaceSie können Archive in Amazon S3 Glacier (S3 Glacier) mit AWS Command Line Interface (AWS CLI)löschen.

Themen• (Voraussetzung) Einrichten der AWS CLI (p. 22)• Beispiel: Löschen eines Archivs mit AWS CLI (p. 122)

(Voraussetzung) Einrichten der AWS CLI1. Laden Sie die AWS CLI herunter und konfigurieren Sie sie. Anleitungen können Sie den folgenden

Themen im Benutzerhandbuch für AWS Command Line Interface entnehmen.

Installieren der AWS-Befehlszeilenschnittstelle

Configuring the AWS Command Line Interface2. Überprüfen Sie die Einrichtung, indem Sie die folgenden Befehle in die Befehlszeile eingeben. Diese

Befehle stellen nicht explizit Anmeldeinformationen bereit, daher werden die Anmeldeinformationendes Standardprofils verwendet.

• Versuchen Sie, den Befehl help zu verwenden.

aws help

• Verwenden Sie aws s3 ls, um eine Liste der Buckets auf dem konfigurierten Konto abzurufen.

aws s3 ls

• Verwenden Sie aws configure list, um die aktuellen Konfigurationsdaten anzuzeigen.

aws configure list

Beispiel: Löschen eines Archivs mit AWS CLI1. Verwenden Sie den initiate-job-Befehl, um eine Lagerabrufaufgabe zu starten.

API-Version 2012-06-01122

Page 130: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchLöschen eines Archivs mit AWS CLI

aws glacier initiate-job --vault-name awsexamplevault --account-id 111122223333 --job-parameters '{"Type": "inventory-retrieval"}'

Erwartete Ausgabe:

{ "location": "/111122223333/vaults/awsexamplevault/jobs/*** jobid ***", "jobId": "*** jobid ***"}

2. Verwenden Sie den describe-job-Befehl, um den Status der vorherigen Abrufaufgabe zuüberprüfen.

aws glacier describe-job --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid ***

Erwartete Ausgabe:

{ "InventoryRetrievalParameters": { "Format": "JSON" }, "VaultARN": "*** vault arn ***", "Completed": false, "JobId": "*** jobid ***", "Action": "InventoryRetrieval", "CreationDate": "*** job creation date ***", "StatusCode": "InProgress"}

3. Warten Sie, bis der Auftrag abgeschlossen wurde.

Sie müssen warten, bis die Ausgabe des Auftrags zum Download bereit ist. Wenn Sie eineBenachrichtigungskonfiguration auf dem Tresor eingerichtet haben oder beim Start der Aufgabe einAmazon Simple Notification Service-Thema (Amazon SNS) angegeben haben, sendet S3 Glacier eineBenachrichtigung an das Thema, nachdem die Aufgabe beendet wurde.

Sie können Benachrichtigungskonfiguration für bestimmte Ereignisse auf dem Tresor einrichten.Weitere Informationen finden Sie unter Konfigurieren von Tresorbenachrichtigungen in AmazonS3 Glacier (p. 55). S3 Glacier sendet eine Nachricht an das angegebene SNS-Thema, wenn dasspezifische Ereignis eintritt.

4. Nach Abschluss laden Sie die Abrufaufgabe mit dem get-job-output-Befehl in die Datei„output.json“ herunter.

aws glacier get-job-output --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid *** output.json

Dieser Befehl erzeugt eine Datei mit den folgenden Feldern.

{"VaultARN":"arn:aws:glacier:region:111122223333:vaults/awsexamplevault","InventoryDate":"*** job completion date ***",

API-Version 2012-06-01123

Page 131: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbfragen eines Archivs

"ArchiveList":[{"ArchiveId":"*** archiveid ***","ArchiveDescription":*** archive description (if set) ***,"CreationDate":"*** archive creation date ***","Size":"*** archive size (in bytes) ***","SHA256TreeHash":"*** archive hash ***"}{"ArchiveId":...]}

5. Verwenden Sie den delete-archive-Befehl, um jedes Archiv aus einem Tresor zu löschen, bis keinArchiv übrig bleibt.

aws glacier delete-archive --vault-name awsexamplevault --account-id 111122223333 --archive-id *** archiveid ***

Abfragen eines Archivs in Amazon S3 GlacierInformationen zum Abfragen von Amazon S3 Glacier (S3 Glacier)-Archiven mit SQL finden Sie unterAbfragen von Archiven mit S3 Glacier Select (p. 159).

API-Version 2012-06-01124

Page 132: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAWS SDKs, die S3 Glacier unterstützen

Verwenden der AWS SDKs mitAmazon S3 Glacier

Amazon Web Services bietet SDKs, mit denen Sie Anwendungen für Amazon S3 Glacier (S3 Glacier)entwickeln können. Die SDK-Bibliotheken umschließen die zugrunde liegende S3 Glacier-API undvereinfachen damit Ihre Programmieraufgaben. Für jede an S3 Glacier gesendete Anforderung müssenSie beispielsweise eine Signatur hinzufügen, um Ihre Anforderungen zu authentifizieren. Wenn Sie dieSDK-Bibliotheken verwenden, müssen Sie nur Ihre AWS-Sicherheitsanmeldeinformationen in Ihrem Codeangeben. Die Bibliotheken berechnen dann die notwendige Signatur und fügen sie der an S3 Glaciergesendeten Anforderung hinzu. Die AWS SDKs enthalten Bibliotheken, die sich der zugrunde liegendenREST-API zuordnen lassen, und sie stellen Objekte zur Verfügung, mit denen Sie mühelos Anforderungenerstellen und Antworten verarbeiten können.

Themen• AWS SDKs, die S3 Glacier unterstützen (p. 125)• AWS SDK-Bibliotheken für Java und .NET (p. 125)• Verwenden der AWS SDK for Java mit Amazon S3 Glacier (p. 127)• Verwenden der AWS SDK für .NET mit Amazon S3 Glacier (p. 129)

AWS SDKs, die S3 Glacier unterstützenS3 Glacier wird von den folgenden AWS SDKs unterstützt:

• AWS SDK für C++• AWS SDK for Go• AWS SDK für Java• AWS SDK für JavaScript in Node.js• AWS SDK für .NET• AWS SDK für PHP• AWS SDK für Python (Boto)• AWS SDK für Ruby

Dieses Handbuch für Entwickler enthält zahlreiche Beispiele für die Verwendung der Java- und .NET-SDKs beim Arbeiten mit S3 Glacier. Bibliotheken und Beispiel-Code finden Sie unter Beispiel-Code undBibliotheken.

Die AWS Command Line Interface (AWS CLI) ist ein vereinheitlichtes Tool zur Verwaltung von AWS-Services, einschließlich von S3 Glacier. Weitere Informationen zum Herunterladen von AWS CLI findenSie unter AWS Command Line Interface. Eine Liste der S3 Glacier-CLI-Befehle finden Sie in der AWS-CLI-Befehlsreferenz.

AWS SDK-Bibliotheken für Java und .NETDie AWS SDKs for Java und .NET bieten sowohl High-Level- als auch Low-Level-Wrapper-Bibliotheken.

API-Version 2012-06-01125

Page 133: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchWas ist die Low-Level-&API?

Was ist die Low-Level-&API?Die Low-Level-Wrapper-Bibliotheken können der zugrunde liegenden und von S3 Glacier unterstütztenREST-API (API-Referenz für Amazon S3 Glacier (p. 172)) direkt zugeordnet werden. Die Low-Level-API stellt für jede S3 Glacier-REST-Operation eine entsprechende Methode, ein Anforderungsobjekt,mit dem Sie Anforderungsinformationen angeben können, sowie ein Antwortobjekt bereit, mit dem Siedie S3 Glacier-Antwort verarbeiten können. Die Low-Level-Wrapper-Bibliotheken sind die vollständigsteImplementierung der zugrunde liegenden S3 Glacier-Operationen.

Weitere Informationen zu diesen SDK-Bibliotheken finden Sie unter Verwenden der AWS SDK for Java mitAmazon S3 Glacier (p. 127) und Verwenden der AWS SDK für .NET mit Amazon S3 Glacier (p. 129).

Was ist die High-Level-&API?Zur weiteren Vereinfachung der Anwendungsentwicklung bieten diese Bibliotheken für einige Operationeneine Abstraktion auf höherer Ebene. Beispiel,

• Hochladen eines Archivs – Um ein Archiv mit der Low-Level-API hochzuladen, müssen Sie zusätzlichzum Namen der Datei und des Tresors, in dem das Archiv gespeichert werden soll, eine Prüfsumme(SHA-256-Struktur-Hash) für die Nutzlast angeben. Die High-Level-API berechnet jedoch die Prüfsummefür Sie.

• Herunterladen eines Archivs oder eines Tresorinventars – Wenn Sie ein Archiv mit der Low-Level-API herunterladen möchten, initiieren Sie einen entsprechenden Auftrag. Warten Sie anschließend,bis der Auftrag abgeschlossen ist, bevor Sie die Ausgabe des Auftrags herunterladen. Sie müssenzusätzlichen Code schreiben, um ein Amazon Simple Notification Service (Amazon SNS)-Thema für S3Glacier einzurichten, durch das Sie benachrichtigt werden, wenn die Aufgabe abgeschlossen ist. Siebenötigen außerdem einen Abfragemechanismus, der überprüft, ob eine Nachricht über den Abschlussdes Auftrags an das Thema übermittelt wurde. Die High-Level-API stellt zum Herunterladen eines Archivseine Methode bereit, die alle diese Schritte erledigt. Sie geben lediglich eine Archiv-ID und den Pfad zudem Ordner an, in dem Sie die heruntergeladenen Daten speichern möchten.

Weitere Informationen zu diesen SDK-Bibliotheken finden Sie unter Verwenden der AWS SDK for Java mitAmazon S3 Glacier (p. 127) und Verwenden der AWS SDK für .NET mit Amazon S3 Glacier (p. 129).

Situationen für die Verwendung der High-Level- undder Low-Level-APIWenn die High-Level-API Methoden bietet, die Sie zum Ausführen der Operation benötigen, ist esin der Regel ratsam, die High-Level-API zu verwenden, weil damit der gesamte Vorgang vereinfachtwird. Wenn die High-Level-API keine vorteilhaften Funktionen bietet, können Sie die Low-Level-APIverwenden. Die Low-Level-API ermöglicht die differenzierte Steuerung der Operation, z. B. mittels einerLogik für Wiederholversuche bei Fehlern. Beim Hochladen eines Archivs verwendet die High-Level-APIbeispielsweise die Dateigröße, um zu bestimmen, ob das Archiv in einer einzigen Operation oder mithilfeder API für mehrteilige Uploads hochgeladen wird. Für den Fall, dass der Hochladevorgang fehlschlägt,verfügt die API ebenfalls über eine integrierte Logik für Wiederholversuche. Falls für Ihre Anwendung einedifferenzierte Steuerung dieser Entscheidungen erforderlich ist, können Sie die Low-Level-API verwenden.

API-Version 2012-06-01126

Page 134: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwendung von AWS SDK for Java

Verwenden der AWS SDK for Java mit Amazon S3Glacier

Das AWS SDK for Java bietet sowohl High-Level- als auch Low-Level-APIs für Amazon S3 Glacier (S3Glacier), wie in Verwenden der AWS SDKs mit Amazon S3 Glacier (p. 125) beschrieben. WeitereInformationen zum Herunterladen des AWS SDK for Java finden Sie unter AWS SDK for Java.

Note

Das AWS SDK for Java bietet thread-sichere Clients für den Zugriff auf S3 Glacier. Als bewährteMethode sollten Ihre Anwendungen einen Client erstellen und diesen zwischen den Threadswiederverwenden.

Themen• Verwenden der Low-Level-API (p. 127)• Verwenden der High-Level-API (p. 128)• Ausführung von Java-Beispielen für Amazon S3 Glacier unter Verwendung von Eclipse (p. 128)• Festlegen des Endpunkts (p. 129)

Verwenden der Low-Level-APIDie AmazonGlacierClient-Klasse der Low-Level-API enthält alle Methoden, die sich denzugrunde liegenden REST-Operationen in S3 Glacier zuordnen lassen (API-Referenz für Amazon S3Glacier (p. 172)). Wenn Sie eine dieser Methoden aufrufen, müssen Sie ein zugehöriges Anfrageobjekterstellen und ein Antwortobjekt bereitstellen, mit dem die Methode der Operation die S3 Glacier-Antwortzurückgeben kann.

Beispielsweise stellt die AmazonGlacierClient-Klasse die createVault-Methode für die Erstellungeines Tresors zur Verfügung. Diese Methode lässt sich der zugrunde liegenden REST-Operation „CreateVault” zuordnen (siehe Create Vault (PUT vault) (p. 199)). Um diese Methode zu verwenden, müssenSie Instances des CreateVaultResult-Objekts erstellen, das die S3 Glacier-Antwort erhält, wie imfolgenden Java-Codeausschnitt gezeigt:

AmazonGlacierClient client = new AmazonGlacierClient(credentials);client.setEndpoint("https://glacier.us-west-2.amazonaws.com/");

CreateVaultRequest request = new CreateVaultRequest() .withAccountId("-") .withVaultName(vaultName);CreateVaultResult result = client.createVault(createVaultRequest);

Alle Low-Level-Beispiele in diesem Handbuch entsprechen diesem Muster.

Note

Im vorstehenden Codesegment wird beim Erstellen der Anfrage AccountID angegeben.Bei Verwendung des AWS SDK for Java ist die Angabe der AccountId in der Anfrageoptional, und daher wird dieser Wert in allen Low-Level-Beispielen in diesem Handbuch nichtfestgelegt. Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen‚-‘ (Bindestrich) angeben. Bei Angabe eines Bindestrichs verwendet S3 Glacier die AWS-Konto-

API-Version 2012-06-01127

Page 135: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden der High-Level-API

ID, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationen verknüpftist. Wenn Sie Ihre Konto-ID angeben, müssen Sie sie ohne Bindestriche eingeben. Wenn Sie beiVerwendung von AWS SDK for Java keine Konto-ID angeben, legt die Bibliotheksfunktion dieKonto-ID auf ‚-‘ fest,

Verwenden der High-Level-APIZur weiteren Vereinfachung der Anwendungsentwicklung stellt AWS SDK for Java dieArchiveTransferManager-Klasse bereit, die für einige Methoden der Low-Level-API eine Abstraktionauf höherer Ebene implementiert. Sie stellt nützliche Methoden wie upload und download für dieArchivoperationen bereit.

Beispielsweise wird im folgenden Java-Codeausschnitt die High-Level-Methode upload zum Hochladeneines Archivs verwendet.

String vaultName = "examplevault";String archiveToUpload = "c:/folder/exampleArchive.zip";

ArchiveTransferManager atm = new ArchiveTransferManager(client, credentials);String archiveId = atm.upload(vaultName, "Tax 2012 documents", new File(archiveToUpload)).getArchiveId();

Beachten Sie, dass alle von Ihnen durchgeführten Operationen für die AWS-Region gelten, die Sie beimErstellen des ArchiveTransferManager-Objekts angegeben haben. Wenn Sie keine AWS-Regionangeben, legt das AWS SDK for Java us-east-1 als Standardregion fest.

Alle High-Level-Beispiele in diesem Handbuch entsprechen diesem Muster.

Note

Die High-Level-Klasse ArchiveTransferManager kann mit einer AmazonGlacierClient-Instance oder einer AWSCredentials-Instance konstruiert werden.

Ausführung von Java-Beispielen für Amazon S3Glacier unter Verwendung von EclipseAm einfachsten gelingt der Einstieg in die Java-Codebeispiele, indem die neueste AWS Toolkit for Eclipseinstalliert wird. Informationen zum Installieren oder Aktualisieren des neuesten Toolkits finden Sie unterhttp://aws.amazon.com/eclipse. Die folgenden Aufgaben führen Sie durch das Erstellen und Testen derJava-Codebeispiele aus diesem Abschnitt.

Allgemeiner Vorgang bei der Erstellung von Java-Codebeispielen

1 Erstellen Sie ein Standardprofil der Anmeldeinformationen für Ihre AWS-Anmeldeinformationen, wie im AWS SDK for Java-Thema Eingeben der AWS-Anmeldetatenim AWS SDK for Java beschrieben.

2 Erstellen Sie ein neues AWS Java-Projekt in Eclipse. Das Projekt ist mit dem AWS SDK forJava vorkonfiguriert.

3 Kopieren Sie den Code aus dem Abschnitt, den Sie gerade lesen, in Ihr Projekt.

4 Aktualisieren Sie den Code mit den erforderlichen Daten. Wenn Sie beispielsweise eineDatei hochladen, geben Sie den Dateipfad und den Bucket-Namen an.

API-Version 2012-06-01128

Page 136: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFestlegen des Endpunkts

5 Führen Sie den Code aus. Stellen Sie sicher, dass das Objekt mit der AWS ManagementConsole erstellt wurde. Weitere Informationen zur AWS Management Console finden Sieunter http://aws.amazon.com/console/.

Festlegen des EndpunktsStandardmäßig verwendet die AWS SDK for Java den Endpunkt https://glacier.us-east-1.amazonaws.com. Sie können den Endpunkt explizit festlegen, wie in den folgenden Java-Codeausschnitten gezeigt.

Der folgende Codeausschnitt zeigt, wie der Endpunkt in der Low-Level-API auf die Region USA West(Oregon) (us-west-2) festgelegt wird.

Example

client = new AmazonGlacierClient(credentials);client.setEndpoint("glacier.us-west-2.amazonaws.com");

Der folgende Codeausschnitt zeigt, wie der Endpunkt in der High-Level-API auf die Region USA West(Oregon) festgelegt wird.

glacierClient = new AmazonGlacierClient(credentials);sqsClient = new AmazonSQSClient(credentials);snsClient = new AmazonSNSClient(credentials); glacierClient.setEndpoint("glacier.us-west-2.amazonaws.com");sqsClient.setEndpoint("sqs.us-west-2.amazonaws.com");snsClient.setEndpoint("sns.us-west-2.amazonaws.com");

ArchiveTransferManager atm = new ArchiveTransferManager(glacierClient, sqsClient, snsClient);

Eine Liste der unterstützten AWS-Regionen und Endpunkte finden Sie unter Zugriff auf Amazon S3Glacier (p. 6).

Verwenden der AWS SDK für .NET mit Amazon S3Glacier

Die AWS SDK für .NET-API ist in der Datei AWSSDK.dll verfügbar. Weitere Informationen zumHerunterladen von AWS SDK für .NET finden Sie unter Beispiel-Code und Bibliotheken. Wie in Verwendender AWS SDKs mit Amazon S3 Glacier (p. 125) beschrieben, stellt AWS SDK für .NET sowohl eine High-Level- als auch eine Low-Level-API bereit.

Note

Low-Level-API und High-Level-API stellen thread-sichere Clients für den Zugriff auf S3 Glacier zurVerfügung. Als bewährte Methode sollten Ihre Anwendungen einen Client erstellen und diesenzwischen den Threads wiederverwenden.

Themen• Verwenden der Low-Level-API (p. 130)• Verwenden der High-Level-API (p. 130)

API-Version 2012-06-01129

Page 137: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden der Low-Level-API

• Ausführen von Codebeispielen (p. 131)• Festlegen des Endpunkts (p. 131)

Verwenden der Low-Level-APIDie AmazonGlacierClient-Klasse der Low-Level-API enthält alle Methoden, die sich den zugrundeliegenden REST-Operationen in Amazon S3 Glacier (S3 Glacier) zuordnen lassen (API-Referenz fürAmazon S3 Glacier (p. 172)). Wenn Sie eine dieser Methoden aufrufen, müssen Sie ein zugehörigesAnforderungsobjekt erstellen und ein Antwortobjekt bereitstellen, mit dem die Methode der Operation eineS3 Glacier-Antwort zurückgeben kann.

Beispielsweise stellt die AmazonGlacierClient-Klasse die CreateVault-Methode für die Erstellungeines Tresors zur Verfügung. Diese Methode lässt sich der zugrunde liegenden REST-Operation „CreateVault” zuordnen (siehe Create Vault (PUT vault) (p. 199)). Um diese Methode verwenden zu können,müssen Sie Instances der Klassen CreateVaultRequest und CreateVaultResponse erstellen,um Anforderungsinformationen bereitzustellen und eine S3 Glacier-Antwort zu empfangen. Dies wird imfolgenden C#-Codeausschnitt dargestellt:

AmazonGlacierClient client;client = new AmazonGlacierClient(Amazon.RegionEndpoint.USEast1);

CreateVaultRequest request = new CreateVaultRequest(){ AccountId = "-", VaultName = "*** Provide vault name ***"};

CreateVaultResponse response = client.CreateVault(request);

Alle Low-Level-Beispiele in diesem Handbuch entsprechen diesem Muster.

Note

Im vorstehenden Codesegment wird beim Erstellen der Anfrage AccountId angegeben.Bei Verwendung des AWS SDK für .NET ist die Angabe der AccountId in der Anfrageoptional, und daher wird dieser Wert in allen Low-Level-Beispielen in diesem Handbuch nichtfestgelegt. Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen‚-‘ (Bindestrich) angeben. Bei Angabe eines Bindestrichs verwendet S3 Glacier die AWS-Konto-ID, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationen verknüpftist. Wenn Sie Ihre Konto-ID angeben, müssen Sie sie ohne Bindestriche eingeben. Wenn Sie beiVerwendung von AWS SDK für .NET keine Konto-ID angeben, legt die Bibliotheksfunktion dieKonto-ID auf ‚-‘ fest,

Verwenden der High-Level-APIZur weiteren Vereinfachung der Anwendungsentwicklung stellt AWS SDK für .NET dieArchiveTransferManager-Klasse bereit, die für einige Methoden der Low-Level-API eine Abstraktionauf höherer Ebene implementiert. Sie stellt nützliche Methoden wie Upload und Download für dieArchivoperationen bereit.

Beispielsweise wird im folgenden C#-Codeausschnitt die High-Level-Methode Upload zum Hochladeneines Archivs verwendet.

API-Version 2012-06-01130

Page 138: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAusführen der NET-Beispiele

string vaultName = "examplevault";string archiveToUpload = "c:\folder\exampleArchive.zip";

var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USEast1);string archiveId = manager.Upload(vaultName, "archive description", archiveToUpload).ArchiveId;

Beachten Sie, dass alle von Ihnen durchgeführten Operationen für die AWS-Region gelten, die Sie beimErstellen des ArchiveTransferManager-Objekts angegeben haben. Alle High-Level-Beispiele in diesemHandbuch entsprechen diesem Muster.

Note

Auch die ArchiveTransferManager-Klasse der High-Level-API braucht den Low-Level-Client AmazonGlacierClient, den Sie entweder explizit übergeben oder vonArchiveTransferManager erstellen lassen können.

Ausführen von CodebeispielenAm einfachsten gelingt der Einstieg in die .NET-Codebeispiele durch die Installation von AWS SDKfür .NET. Weitere Informationen finden Sie unter AWS SDK for .NET.

Im folgenden Verfahren werden die Schritte beschrieben, mit denen Sie die in diesem Handbuchbereitgestellten Codebeispiele testen können.

Allgemeines Vorgehen zum Erstellen der .NET-Codebeispiele (mit Visual Studio)

1 Erstellen Sie ein Anmeldeinformationsprofil für Ihre AWS-Anmeldeinformationen, wie im AWSSDK for .NET-Thema Konfigurieren von AWS-Anmeldeinformationen beschrieben.

2 Erstellen Sie ein neues Visual Studio-Projekt mit der Vorlage AWS Empty Projects.

3 Ersetzen des Codes in der Projektdatei, Program.cs, durch den Code in dem Abschnitt,den Sie gerade lesen.

4 Führen Sie den Code aus. Stellen Sie sicher, dass das Objekt mit der AWS ManagementConsole erstellt wurde. Weitere Informationen zur AWS Management Console finden Sieunter http://aws.amazon.com/console/.

Festlegen des EndpunktsStandardmäßig legt AWS SDK für .NET den Endpunkt auf Region USA West (Oregon) fest (https://glacier.us-west-2.amazonaws.com). Sie können den Endpunkt auf andere AWS-Regionenfestlegen, wie in den folgenden C#-Codeausschnitten gezeigt.

Der folgende Codeausschnitt zeigt, wie der Endpunkt in der Low-Level-API auf die Region USA West(Oregon) (us-west-2) festgelegt wird.

Example

AmazonGlacierClient client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);

Der folgende Codeausschnitt zeigt, wie der Endpunkt in der High-Level-API auf die Region USA West(Oregon) festgelegt wird.

API-Version 2012-06-01131

Page 139: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFestlegen des Endpunkts

var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2);

Eine aktuelle Liste der unterstützten AWS-Regionen und Endpunkte finden Sie unter Zugriff auf Amazon S3Glacier (p. 6).

API-Version 2012-06-01132

Page 140: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatenschutz

Sicherheit in Amazon S3 GlacierCloud-Sicherheit hat bei AWS höchste Priorität. Als AWS-Kunde profitieren Sie von einer Rechenzentrums-und Netzwerkarchitektur, die eingerichtet wurde, um die Anforderungen der anspruchsvollstenOrganisationen in puncto Sicherheit zu erfüllen.

Sicherheit ist eine übergreifende Verantwortlichkeit zwischen AWS und Ihnen. Im Modell derübergreifenden Verantwortlichkeit wird Folgendes mit „Sicherheit der Cloud“ bzw. „Sicherheit in der Cloud“umschrieben:

• Sicherheit der Cloud – AWS ist für den Schutz der Infrastruktur verantwortlich, in der AWS-Services inder AWS Cloud ausgeführt werden. AWS bietet Ihnen außerdem Services, die Sie auf sichere Weiseverwenden können. Die Wirksamkeit unserer Sicherheitsfunktionen wird regelmäßig von externenPrüfern im Rahmen des AWS-Compliance-Programms getestet und überprüft. Informationen zuden Compliance-Programmen, die für Amazon S3 Glacier (S3 Glacier) gelten, finden Sie unter VomCompliance-Programm abgedeckte AWS-Services.

• Sicherheit in der Cloud – Ihre Verantwortung richtet sich nach dem AWS-Service, den Sie verwenden.In Ihre Verantwortung fallen außerdem weitere Faktoren, wie z. B. die Vertraulichkeit der Daten, dieAnforderungen Ihrer Organisation sowie geltende Gesetze und Vorschriften.

Diese Dokumentation beschreibt, wie Sie das Modell der übergreifenden Verantwortlichkeit bei derVerwendung von S3 Glacier anwenden können. Die folgenden Themen veranschaulichen, wie SieS3 Glacier zur Erfüllung Ihrer Sicherheits- und Compliance-Ziele konfigurieren können. Sie erfahrenaußerdem, wie Sie andere AWS-Services verwenden können, die Ihnen beim Überwachen und SichernIhrer S3 Glacier-Ressourcen helfen.

Themen• Datenschutz in Amazon S3 Glacier (p. 133)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)• Protokollierung und Überwachung in Amazon S3 Glacier (p. 155)• Compliance-Validierung für Amazon S3 Glacier (p. 156)• Ausfallsicherheit in Amazon S3 Glacier (p. 156)• Sicherheit der Infrastruktur in Amazon S3 Glacier (p. 158)

Datenschutz in Amazon S3 GlacierAmazon S3 Glacier (S3 Glacier) bietet einen sehr robusten Cloud-Speicher für die langfristige Sicherungund Archivierung von Daten. S3 Glacier bietet 99,999999999 % Beständigkeit und umfassende Sicherheits-und Compliance-Funktionen, die Ihnen dabei helfen können, strenge gesetzliche Vorgaben zu erfüllen. S3Glacier speichert Daten auf redundante Weise in mehreren AWS-Availability Zones (AZ) und auf mehrerenGeräten in den einzelnen AZs. Um die Haltbarkeit zu erhöhen, S3 Glacier speichert Ihre Daten synchronüber mehrere AZs bevor ein erfolgreicher Upload bestätigt wird.

Weitere Informationen über die AWS globale Cloud-Infrastruktur finden Sie unter Globale Infrastruktur.

Aus Datenschutzgründen empfehlen wir, dass Sie die Anmeldeinformationen des AWS-Kontos schützenund einzelne Benutzerkonten mit AWS Identity and Access Management (IAM) einrichten, damit jederBenutzer nur die Berechtigungen erhält, die für die Erfüllung seiner Aufgaben erforderlich sind.

Wenn Sie FIPS 140 - 2-validierte kryptografische Module für den Zugriff auf AWS über eineBefehlszeilenschnittstelle oder eine API benötigen, verwenden Sie einen FIPS-Endpunkt. Weitere

API-Version 2012-06-01133

Page 141: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatenverschlüsselung

Informationen zu den verfügbaren FIPS-Endpunkten finden Sie unter Bundesstandard zurInformationsverarbeitung (FIPS) 140 - 2.

Topics• Datenverschlüsselung (p. 134)• Schlüsselverwaltung (p. 134)• Richtlinie für den Datenverkehr zwischen Netzwerken (p. 134)

DatenverschlüsselungDieser Datenschutz bezieht sich auf Daten bei der Übertragung (wenn sie zu oder von Amazon S3Glacier geschickt werden), ebenso wie auf ruhende Daten (die in AWS-Rechenzentren auf Datenträgerngespeichert sind). Sie können Daten während der Übertragung schützen, die direkt zu S3 Glacier mithilfevon Secure Sockets Layer (SSL) oder einer clientseitigen Verschlüsselung hochgeladen werden.

Sie können auch auf S3 Glacier über Amazon Simple Storage Service (Amazon S3) zugreifen. AmazonS3 unterstützt die Lebenszykluskonfiguration auf einem Amazon S3-Bucket, mit dem Sie Objektezur Archivierung in die Amazon S3 S3 Glacier-Speicherklasse übertragen können. Daten werdenbei Übertragung zwischen Amazon S3 und S3 Glacier über Lebenszyklusrichtlinien mithilfe von SSLverschlüsselt.

Daten im Ruhezustand, die in S3 Glacier gespeichert sind, werden automatisch serverseitig mit 256-BitAdvanced Encryption Standard (AES-256) mit von AWS verwalteten Schlüsseln verschlüsselt. Wenn Siees vorziehen, Ihre eigenen Schlüssel zu verwalten, können Sie auch die clientseitige Verschlüsselungvor dem Speichern der Daten in S3 Glacier verwenden. Weitere Informationen zum Einrichten derStandardverschlüsselung für Amazon S3 finden Sie unter Amazon S3-Standardverschlüsselung imEntwicklerhandbuch für Amazon Simple Storage Service.

SchlüsselverwaltungDie serverseitige Verschlüsselung betrifft die Datenverschlüsselung in Ruhe —, das heißt, Amazon S3Glacier verschlüsselt Ihre Daten, während es sie in seine Rechenzentren schreibt, und entschlüsselt siefür Sie, wenn Sie darauf zugreifen. Wenn Sie Ihre Anfrage authentifizieren und Zugriffsberechtigungenbesitzen, gibt es in Bezug auf die Art und Weise, wie Sie auf verschlüsselte oder nicht verschlüsselte Datenzugreifen, keinen Unterschied.

Daten in Ruhe, die in S3 Glacier gespeichert sind, werden automatisch mit AES-256 unter Verwendung vonAWS verwalteter Schlüssel verschlüsselt. Als zusätzlicher Schutz wird der eigentliche Schlüssel von AWSmit einem Master-Schlüssel verschlüsselt, der regelmäßig rotiert wird.

Richtlinie für den Datenverkehr zwischen NetzwerkenZugriff auf Amazon S3 Glacier über das Netzwerk erfolgt durch veröffentlichte AWS-APIs. Clients müssenTransport Layer Security (TLS) 1.0 unterstützen. Wir empfehlen TLS 1.2 oder höher. Clients müssenaußerdem Cipher Suites mit PFS (Perfect Forward Secrecy) wie DHE (Ephemeral Diffie-Hellman) oderECDHE (Elliptic Curve Ephemeral Diffie-Hellman) unterstützen. Die meisten modernen Systemen wieJava 7 und höher unterstützen diese Modi. Außerdem müssen Sie die Anfragen mit einer Zugriffsschlüssel-ID und einem geheimen Zugriffsschlüssel signieren, die einem IAM-Prinzipal zugeordnet sind. Sie könnenauch AWS Security Token Service (AWS STS) verwenden um temporäre Sicherheitsanmeldeinformationenzu generieren.

VPC-EndpunkteEin VPC-Endpunkt ermöglicht Ihnen, eine private Verbindung zwischen Ihrer VPC und unterstützten AWS-Services und VPC-Endpunktservices mit AWS PrivateLink einzurichten, ohne dass ein Internet-Gateway,

API-Version 2012-06-01134

Page 142: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchIdentitäts- und Zugriffsverwaltung

ein NAT-Gerät, eine VPN-Verbindung oder eine AWS Direct Connect-Verbindung erforderlich sind. ObwohlS3 Glacier VPC-Endpunkte nicht direkt unterstützt, können Sie Amazon Simple Storage Service (AmazonS3) VPC-Endpunkte direkt nutzen, wenn Sie den Zugriff auf S3 Glacier als mit Amazon S3 integrierteSpeicherstufe durchführen.

Weitere Informationen zur Amazon S3-Lebenszykluskonfiguration und zur Übertragung von Objekten in dieS3 Glacier-Speicherklasse, finden Sie unter Objektlebenszyklusverwaltung und Übergang von Objektenim Entwicklerhandbuch für Amazon Simple Storage Service. Weitere Informationen über VPC-Endpunktefinden Sie unter VPC-Endpunkte im Amazon VPC Benutzerhandbuch.

Identitäts- und Zugriffsverwaltung in Amazon S3Glacier

Für den Zugriff auf Amazon S3 Glacier (S3 Glacier) werden Anmeldeinformationen benötigt, die AWSzur Authentifizierung Ihrer Anforderungen verwenden kann. Diese Anmeldeinformationen müssenBerechtigungen für den Zugriff auf AWS-Ressourcen wie zum Beispiel einen S3 Glacier-Tresor oder einenAmazon S3-Bucket haben. In den folgenden Abschnitten erfahren Sie, wie Sie Ihre Ressourcen mithilfevon AWS Identity and Access Management (IAM) und S3 Glacier schützen können, indem Sie den Zugriffdarauf kontrollieren.

• Authentifizierung (p. 135)• Zugriffskontrolle (p. 136)

AuthentifizierungSie können mit einer der folgenden Identitäten auf AWS zugreifen:

• Stammbenutzer des AWS-Kontos – Wenn Sie ein AWS-Konto neu erstellen, enthält es zunächst nureine einzelne Anmeldeidentität, die über Vollzugriff auf sämtliche AWS-Services und -Ressourcenim Konto verfügt. Diese Identität wird als Root-Benutzer des AWS-Kontos bezeichnet. Um aufes zuzugreifen, müssen Sie sich mit der E-Mail-Adresse und dem Passwort anmelden, die zurErstellung des Kontos verwendet wurden. Wir raten ausdrücklich davon ab, den Root-Benutzer fürAlltagsaufgaben einschließlich administrativen Aufgaben zu verwenden. Bleiben Sie stattdessen beider bewährten Methode, den Root-Benutzer nur zu verwenden, um Ihren ersten IAM-Benutzer zuerstellen. Anschließend legen Sie die Anmeldedaten für den Root-Benutzer an einem sicheren Ort abund verwenden ihn nur, um einige Konto- und Service-Verwaltungsaufgaben durchzuführen.

• IAM-Benutzer – Ein IAM-Benutzer ist eine Identität in Ihrem AWS-Konto mit bestimmtenbenutzerdefinierten Berechtigungen (z. B. die Berechtigung zum Erstellen von a vault in S3 Glacier). Siekönnen einen IAM-Benutzernamen und ein Passwort für die Anmeldung bei sicheren AWS-Webseitenverwenden. Dazu zählen beispielsweise die AWS Management Console, AWS-Diskussionsforen und dasAWS Support Center.

 

Zusätzlich zu einem Benutzernamen und Passwort können Sie Zugriffsschlüssel für jeden Benutzererstellen. Verwenden Sie diese Schlüssel, wenn Sie über eines der verschiedenen SDKs oder über dieAWS Command Line Interface (CLI) programmgesteuert auf AWS-Services zugreifen. Das SDK und dieCLI-Tools verwenden die Zugriffsschlüssel, um Ihre Anfrage verschlüsselt zu signieren. Wenn Sie keineAWS-Tools verwenden, müssen Sie die Anforderung selbst signieren. S3 Glacier supportsSignatureVersion 4 ein Protokoll für die Authentifizierung eingehender API-Anfragen. Weitere Informationen zur

API-Version 2012-06-01135

Page 143: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchZugriffskontrolle

Authentifizierung von Anfragen finden Sie unter Signature Version 4-Signaturprozess im AWS GeneralReference.

 • IAM-Rolle – Eine IAM-Rolle ist eine IAM-Identität, die Sie in Ihrem Konto mit bestimmten Berechtigungen

erstellen können. Eine IAM-Rolle ist einem IAM-Benutzer insofern sehr ähnlich, weil es sich hierbeium eine AWS-Identität mit Berechtigungsrichtlinien handelt, die festlegen, welche Aktionen dieIdentität in AWS ausführen kann und welche nicht. Eine Rolle ist jedoch nicht einer einzigen Personzugeordnet, sondern kann von allen Personen angenommen werden, die diese Rolle benötigen. EinerRolle sind außerdem keine standardmäßigen, langfristigen Anmeldeinformationen (Passwörter oderZugriffsschlüssel) zugeordnet. Wenn Sie eine Rolle annehmen, erhalten Sie stattdessen temporäreAnmeldeinformationen für Ihre Rollensitzung. IAM-Rollen mit temporären Anmeldeinformationen sind infolgenden Situationen hilfreich:

 • Zugriff für verbundene Benutzer – Statt einen IAM-Benutzer zu erstellen, können Sie vorhandene

Identitäten von AWS Directory Service, aus Ihrem Unternehmens-Benutzerverzeichnis oder von einemWeb-Identitätsanbieter verwenden. Diese werden als verbundene Benutzer bezeichnet. AWS weisteinem verbundenen Benutzer eine Rolle zu, wenn der Zugriff über einen Identitätsanbieter angefordertwird. Weitere Informationen zu verbundenen Benutzern finden Sie unter Verbundene Benutzer undRollen im IAM-Benutzerhandbuch.

 • Zugriff auf AWS-Services: – Eine Servicerolle ist eine IAM-Rolle, die ein Service übernimmt, um

Aktionen in Ihrem Namen durchzuführen. Service-Rollen bieten nur Zugriff innerhalb Ihres Kontosund können nicht genutzt werden, um Zugriff auf Services in anderen Konten zu erteilen. Ein IAM-Administrator kann eine Servicerolle in IAM erstellen, ändern und löschen. Weitere Informationenfinden Sie unter Erstellen einer Rolle zum Delegieren von Berechtigungen an einen AWS-Service imIAM-Benutzerhandbuch.

 • Anwendungen, die auf Amazon EC2 ausgeführt werden: – Sie können eine IAM-Rolle nutzen,

um temporäre Anmeldeinformationen für Anwendungen zu verwalten, die auf einer EC2-Instance ausgeführt werden und AWS CLI- oder AWS-API-Anforderungen durchführen. Das istempfehlenswerter als Zugriffsschlüssel innerhalb der EC2 Instance zu speichern. Erstellen Sie einInstance-Profil, das an die Instance angefügt ist, um eine AWS-Rolle einer EC2-Instance zuzuweisenund die Rolle für sämtliche Anwendungen der Instance bereitzustellen. Ein Instance-Profil enthältdie Rolle und ermöglicht, dass Programme, die in der EC2-Instance ausgeführt werden, temporäreAnmeldeinformationen erhalten. Weitere Informationen finden Sie unter Verwenden einer IAM-Rollezum Erteilen von Berechtigungen für Anwendungen, die auf Amazon EC2-Instances ausgeführtwerden im IAM-Benutzerhandbuch.

ZugriffskontrolleSie können zwar über gültige Anmeldeinformationen zur Authentifizierung Ihrer Anforderungen verfügen,doch Sie können die S3 Glacier-Ressourcen nur mit entsprechenden Berechtigungen erstellen oder daraufzugreifen. So benötigen Sie beispielsweise Berechtigungen zum Erstellen eines S3 Glacier-Tresors.

In den folgenden Abschnitten wird die Verwaltung von Berechtigungen beschrieben. Wir empfehlen Ihnen,zunächst die Übersicht zu lesen.

• Übersicht über die Verwaltung von Zugriffsberechtigungen für Ihre Amazon S3 Glacier-Ressourcen (p. 137)

• Verwenden von identitätsbasierten Richtlinien (IAM-Richtlinien) für Amazon S3 Glacier (p. 141)

API-Version 2012-06-01136

Page 144: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchÜbersicht über die Verwaltung von Zugriffsberechtigungen

• Verwenden ressourcenbasierter Richtlinien für Amazon S3 Glacier (Tresorrichtlinien) (p. 145)

Übersicht über die Verwaltung vonZugriffsberechtigungen für Ihre Amazon S3 Glacier-RessourcenJede AWS-Ressource ist Eigentum eines AWS-Kontos und die Berechtigungen für die Erstellung einerRessource oder den Zugriff darauf werden durch Berechtigungsrichtlinien geregelt. Ein Kontoadministratorkann IAM-Identitäten (d. h. Benutzer, Gruppen und Rollen) Berechtigungsrichtlinien zuweisen.Manche Services (z. B. Amazon S3 Glacier (S3 Glacier)) unterstützen auch die Zuweisung vonBerechtigungsrichtlinien zu Ressourcen.

Note

Ein Kontoadministrator (oder Administratorbenutzer) ist ein Benutzer mit Administratorrechten.Weitere Informationen finden Sie unter Bewährte Methoden für IAM im IAM-Benutzerhandbuch.

Beim Erteilen von Berechtigungen entscheiden Sie, wer die Berechtigungen erhält, für welche Ressourcendie Berechtigungen gelten und welche Aktionen an diesen Ressourcen gestattet werden sollen.

Themen• Amazon S3 Glacier-Ressourcen und -Operationen (p. 137)• Grundlegendes zum Eigentum an Ressourcen (p. 137)• Verwalten des Zugriffs auf Ressourcen (p. 138)• Angeben der Richtlinienelemente: Aktionen, Effekte, Ressourcen und Prinzipale (p. 140)• Angeben von Bedingungen in einer Richtlinie (p. 141)

Amazon S3 Glacier-Ressourcen und -Operationen

In S3 Glacier ist die primäre Ressource ein Tresor. S3 Glacier unterstützt Richtlinien nur auf derTresorebene. Das heißt, dass der Resource-Wert, den Sie in einer IAM-Richtlinie angeben, einbestimmter Tresor oder eine Reihe von Tresoren in einer bestimmten AWS-Region sein kann. S3 Glacierunterstützt keine Berechtigungen auf Archivebene.

Bei allen S3 Glacier-Aktionen gibt Resource den Tresor an, dem Sie die Berechtigungen erteilen möchten.Diese Ressourcen verfügen über eindeutige Amazon-Ressourcennamen (ARNs), die ihnen wie in derfolgenden Tabelle dargestellt, zugewiesen werden, und Sie können im ARN ein Platzhalterzeichen (*)verwenden, um jeden Tresornamen zuzuordnen.

S3 Glacier bietet eine Reihe von Operationen für die S3 Glacier-Ressourcen an. Weitere Informationen zuden verfügbaren Operationen finden Sie unter API-Referenz für Amazon S3 Glacier (p. 172).

Grundlegendes zum Eigentum an RessourcenBei dem AWS-Konto, das die Ressource erstellt, handelt es sich um den Ressourceneigentümer. Genauergesagt ist der Ressourceneigentümer das AWS-Konto der Prinzipal-Entität (d. h. das Root-Konto, ein IAM-Benutzer oder eine IAM-Rolle), welche die Anforderung, die die Ressource erstellt, authentifiziert. DieFunktionsweise wird anhand der folgenden Beispiele deutlich:

API-Version 2012-06-01137

Page 145: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchÜbersicht über die Verwaltung von Zugriffsberechtigungen

• Wenn Sie die Stammkonto-Anmeldeinformationen Ihres AWS-Kontos zum Erstellen eines S3 Glacier-Tresors verwenden, ist Ihr AWS-Konto der Ressourceneigentümer (in S3 Glacier ist die Ressource derS3 Glacier-Tresor).

• Wenn Sie einen IAM-Benutzer in Ihrem AWS-Konto erstellen und diesem Berechtigungen zum Erstelleneines S3 Glacier-Tresors erteilen, kann dieser Benutzer einen S3 Glacier-Tresor erstellen. Eigentümerder Ressource des S3 Glacier-Tresors ist jedoch Ihr AWS-Konto, zu dem der Benutzer gehört.

• Wenn Sie in Ihrem AWS-Konto eine IAM-Rolle mit Berechtigungen zum Erstellen eines S3 Glacier-Tresors einrichten, kann jeder, der die Rolle übernimmt, S3 Glacier-Tresore erstellen. Eigentümer der S3Glacier-Tresorressourcen ist das AWS-Konto, zu dem die Rolle gehört.

Verwalten des Zugriffs auf RessourcenEine Berechtigungsrichtlinie beschreibt, wer Zugriff auf welche Objekte hat. Im folgenden Abschnitt werdendie verfügbaren Optionen zum Erstellen von Berechtigungsrichtlinien erläutert.

Note

Dieser Abschnitt behandelt die Verwendung von IAM im Zusammenhang mit S3 Glacier. Er enthältkeine detaillierten Informationen über den IAM-Service. Eine umfassende IAM-Dokumentationfinden Sie im Thema Was ist IAM? im IAM-Benutzerhandbuch. Informationen über die IAM-Richtliniensyntax und Beschreibungen finden Sie in der AWS IAM Policy Reference (AWS IAM-Richtlinienreferenz) im IAM-Benutzerhandbuch.

Richtlinien, die einer IAM-Identität zugeordnet sind, werden als identitätsbasierte Richtlinien (IAM-Richtlinien) bezeichnet, während Richtlinien, die einer Ressource zugeordnet sind, als ressourcenbasierteRichtlinien bezeichnet werden. S3 Glacier unterstützt Richtlinien auf Identititätsbasis (IAM-Richtlinien) undRichtlinien auf Ressourcenbasis.

Themen• Identitätsbasierte Richtlinien (IAM-Richtlinien) (p. 138)• Ressourcenbasierte Richtlinien (Amazon S3 Glacier-Tresorrichtlinien) (p. 139)

Identitätsbasierte Richtlinien (IAM-Richtlinien)

Richtlinien können IAM-Identitäten zugewiesen werden. Sie können z. B. Folgendes tun:

• Anfügen von Berechtigungsrichtlinien zu Benutzern oder Gruppen in Ihrem Konto – einKontoadministrator kann eine Berechtigungsrichtlinie verwenden, die einem bestimmten Benutzerzugeordnet ist, um diesem Benutzer Berechtigungen zum Erstellen eines S3 Glacier-Tresors zu erteilen.

• Einer Rolle eine Berechtigungsrichtlinie zuweisen (kontoübergreifende Berechtigungen erteilen) – Siekönnen einer IAM-Rolle eine identitätsbasierte Berechtigungsrichtlinie zuweisen, um kontoübergreifendeBerechtigungen zu erteilen. Beispielsweise kann der Administrator in Konto A eine Rolle erstellen, umeinem anderen AWS-Konto (z. B. Konto B) oder einem AWS-Service kontoübergreifende Berechtigungenzu erteilen. Dazu geht er folgendermaßen vor:

1. Der Administrator von Konto A erstellt eine IAM-Rolle und fügt ihr eine Berechtigungsrichtlinie an, dieBerechtigungen für Ressourcen in Konto A erteilt.

2. Der Administrator von Konto A weist der Rolle eine Vertrauensrichtlinie zu, die Konto B als denPrinzipal identifiziert, der die Rolle übernehmen kann.

3. Der Administrator von Konto B kann nun Berechtigungen zur Übernahme der Rolle an alle Benutzer inKonto B delegieren. Daraufhin können die Benutzer in Konto B auf Ressourcen von Konto A zugreifen.Der Prinzipal in der Vertrauensrichtlinie kann auch ein AWS-Service-Prinzipal sein. Somit können Sieauch einem AWS-Service die Berechtigungen zur Übernahme der Rolle erteilen.

API-Version 2012-06-01138

Page 146: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchÜbersicht über die Verwaltung von Zugriffsberechtigungen

Weitere Informationen zum Delegieren von Berechtigungen mithilfe von IAM finden Sie unter AccessManagement im IAM-Benutzerhandbuch.

Es folgt eine Beispielrichtlinie, mit der einer Ressource Berechtigungen für drei Aktionen gewährt werden,die sich auf S3 Glacier-Tresore beziehen (glacier:CreateVault, glacier:DescribeVault undglacier:ListVaults). Dazu wird der Amazon-Ressourcenname (ARN) verwendet, der alle dieseTresore in der AWS-Region us-west-2 identifiziert. ARNs identifizieren AWS-Ressourcen eindeutig.Weitere Informationen zu den in S3 Glacier verwendeten ARNs finden Sie unter Amazon S3 Glacier-Ressourcen und -Operationen (p. 137).

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glacier:CreateVault", "glacier:DescribeVault", "glacier:ListVaults" ], "Resource": "arn:aws:glacier:us-west-2:123456789012:vaults/*" } ]}

Die Richtlinie gewährt Berechtigungen zum Erstellen, Auflisten und Abrufen von Tresorbeschreibungen inder Region us-west-2. Das Platzhalterzeichen (*) am Ende des ARN bedeutet, dass diese Anweisungjedem Tresornamen entsprechen kann.

Important

Wenn Sie Berechtigungen zum Erstellen eines Tresors mit der glacier:CreateVault-Operation gewähren, müssen Sie das Platzhalterzeichen (*) verwenden, da Sie den Tresornamennicht kennen, bis Sie den Tresor erstellt haben.

Weitere Informationen zur Verwendung von identitätsbasierten Richtlinien mit S3 Glacier finden Sieunter Verwenden von identitätsbasierten Richtlinien (IAM-Richtlinien) für Amazon S3 Glacier (p. 141).Weitere Informationen zu Benutzern, Gruppen, Rollen und Berechtigungen finden Sie im Thema Identitäten(Benutzer, Gruppen und Rollen) im IAM-Benutzerhandbuch.

 

Ressourcenbasierte Richtlinien (Amazon S3 Glacier-Tresorrichtlinien)Jedem S3 Glacier-Tresor können ressourcenbasierte Berechtigungsrichtlinien zugeordnet werden. BeiS3 Glacier ist ein S3 Glacier-Tresor die Primärressource und ressourcenbasierte Richtlinien werden alsTresorrichtlinien bezeichnet.

Mit S3 Glacier-Tresorrichtlinien werden Berechtigungen auf folgende Weise verwaltet:

• Verwalten Sie Benutzerberechtigungen in Ihrem Konto in einer einzelnen Tresorrichtlinie, anstatt einzelneBenutzerrichtlinien zu erstellen.

• Verwalten Sie kontoübergreifende Berechtigungen als eine Alternative zur Verwendung von IAM-Rollen.

Einem S3 Glacier-Tresor kann eine ressourcenbasierte Tresorzugriffsrichtlinie und eineTresorverriegelungsrichtlinie zugeordnet werden. Eine S3 Glacier-Tresorzugriffsrichtlinie ist eineressourcenbasierte Richtlinie, die Sie zur Verwaltung der Berechtigungen für Ihren Tresor verwendenkönnen. Eine Tresorverriegelungs-Richtlinie ist eine Tresorzugriffsrichtlinie, die gesperrt werden kann.

API-Version 2012-06-01139

Page 147: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchÜbersicht über die Verwaltung von Zugriffsberechtigungen

Nachdem Sie eine Tresorverriegelungsrichtlinie gesperrt haben, kann die Richtlinie nicht geändert werden.Mit einer Tresorverriegelungsrichtlinie können Sie Compliance-Steuerung erzwingen.

Sie können Tresorrichtlinien verwenden, um allen Benutzern Berechtigungen zu gewähren, oder Siekönnen den Zugriff auf einige AWS-Konten beschränken, indem Sie eine Richtlinie einer Tresorressourcedirekt anfügen. Beispielsweise können Sie mit einer S3 Glacier-Tresorrichtlinie allen AWS-Konten nurschreibgeschützte Berechtigungen gewähren oder Berechtigungen zum Upload von Archiven nur einigenAWS-Konten erteilen.

Tresorrichtlinien erleichtern das Erteilen von kontoübergreifendem Zugriff, wenn Sie Ihren Tresor für andereAWS-Regionen freigeben müssen. Sie können in einer Tresorverriegelungs-Richtlinie beispielsweiseeine WORM-Bedingung (write once, read many) festlegen und die Richtlinie vor zukünftigen Änderungenschützen. So können Sie z. B. einem Geschäftspartner mit einem anderen AWS-Konto schreibgeschütztenTresorzugriff erteilen, indem Sie dieses Konto einfach einschließen und Aktionen in der Tresorrichtliniezulassen. Sie können auf diese Weise kontoübergreifenden Zugriff für mehrere Benutzer erteilen und alleBenutzer mit kontoübergreifendem Zugriff an einem Ort in der Tresorzugriffsrichtlinie anzeigen. Ein Beispieleiner Tresorrichtlinie für kontoübergreifenden Zugriff finden Sie unter Beispiel 1: Berechtigungen überKonten hinweg für bestimmte Amazon S3 Glacier-Aktionen erteilen (p. 146).

Weitere Informationen zur Verwendung von Tresorrichtlinien mit S3 Glacier finden Sie unter Verwendenressourcenbasierter Richtlinien für Amazon S3 Glacier (Tresorrichtlinien) (p. 145). Weitere Informationenzu IAM-Rollen (identitätsbasierte Richtlinien) im Gegensatz zu ressourcenbasierten Richtlinien finden Sieunter So unterscheiden sich IAM-Rollen von ressourcenbasierten Richtlinien im IAM-Benutzerhandbuch.

Angeben der Richtlinienelemente: Aktionen, Effekte, Ressourcenund PrinzipaleFür jeden S3 Glacier-Ressourcentyp definiert der Service eine Reihe von API-Operationen (Informationendazu unter API-Referenz für Amazon S3 Glacier (p. 172)). Zur Erteilung von Berechtigungen für dieseAPI-Operationen definiert S3 Glacier eine Reihe von Aktionen, die Sie in einer Richtlinie angeben können.Zur Durchführung einer API-Operation können Berechtigungen für mehrere Aktionen erforderlich sein. Beider Erteilung von Berechtigungen für bestimmte Aktionen geben Sie auch die Ressource an, für die dieAktionen zugelassen oder verweigert werden.

Grundlegende Richtlinienelemente:

• Ressource – In einer Richtlinie wird der Amazon-Ressourcenname (ARN) zur Identifizierung derRessource verwendet, für die die Richtlinie gilt. Weitere Informationen finden Sie unter Amazon S3Glacier-Ressourcen und -Operationen (p. 137).

• Aktionen – Mit Aktionsschlüsselwörtern geben Sie die Ressourcenoperationen an, die Sie zulassen oderverweigern möchten.

Die Berechtigung Create Vault erteilt dem Benutzer zum Beispiel Berechtigungen zum Ausführen derglacier:CreateVault-S3 Glacier-Operation.

• Auswirkung – Die von Ihnen festgelegte Auswirkung, wenn ein Benutzer die jeweilige Aktion anfordert –entweder "Allow" (Zugriffserlaubnis) oder "Deny" (Zugriffsverweigerung). Wenn Sie den Zugriff auf eineRessource nicht ausdrücklich gestatten ("Allow"), wird er automatisch verweigert. Sie können den Zugriffauf eine Ressource auch explizit verweigern. So können Sie sicherstellen, dass Benutzer nicht daraufzugreifen können, auch wenn der Zugriff durch eine andere Richtlinie gestattet wird.

• Prinzipal – In identitätsbasierten Richtlinien (IAM-Richtlinien) ist der Benutzer, dem die Richtliniezugewiesen ist, automatisch der Prinzipal. In ressourcenbasierten Richtlinien müssen Sie den Benutzer,das Konto, den Service oder die sonstige Entität angeben, die die Berechtigungen erhalten soll (gilt nurfür ressourcenbasierte Richtlinien).

Weitere Informationen zur IAM-Richtliniensyntax und entsprechende Beschreibungen enthält die AWS IAM-JSON-Richtlinienreferenz im IAM-Benutzerhandbuch.

API-Version 2012-06-01140

Page 148: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden von identitätsbasierten

Richtlinien (IAM-Richtlinien)

Eine Tabelle mit allen S3 Glacier-API-Aktionen und den Ressourcen, für die diese gelten, findenSie unter Amazon S3 Glacier-API-Berechtigungen: Referenztabelle für Aktionen, Ressourcen undBedingungen (p. 150).

Angeben von Bedingungen in einer RichtlinieBeim Erteilen von Berechtigungen können Sie mithilfe der IAM-Richtliniensyntax die Bedingungenangeben, unter denen die Richtlinie wirksam werden soll. Beispielsweise kann festgelegt werden, dass eineRichtlinie erst ab einem bestimmten Datum gilt. Weitere Informationen zum Angeben von Bedingungen ineiner Richtliniensyntax finden Sie unter Bedingung im IAM-Benutzerhandbuch.

AWS bietet eine Reihe von vordefinierten Bedingungsschlüsseln (AWS-weite Bedingungsschlüssel) füralle AWS-Services, die IAM für die Zugriffskontrolle unterstützen. Für AWS-weite Bedingungsschlüsselwird das Präfix aws verwendet. S3 Glacier unterstützt alle AWS-weiten Bedingungsschlüssel inTresorzugriffs- und Tresorverriegelungsrichtlinien. Sie können beispielsweise den Bedingungsschlüsselaws:MultiFactorAuthPresent verwenden, um eine bestimmte Multi-Factor Authentication (MFA)anzufordern, wenn eine Aktion angefragt wird. Weitere Informationen und eine vollständige Liste derAWS-weiten Bedingungsschlüssel finden Sie unter Verfügbare Schlüssel für Bedingungen im IAM-Benutzerhandbuch.

Zusätzlich bietet S3 Glacier auch eigene Bedingungsschlüssel an, die Sie in Condition-Elemente ineiner IAM-Berechtigungsrichtlinie einbinden können.S3 Glacier-spezifische Bedingungsschlüssel sindnur anwendbar, wenn S3 Glacier-spezifische Berechtigungen gewährt werden. Den Namen von S3Glacier-Bedingungsschlüsseln ist glacier: vorangestellt. Die folgende Tabelle zeigt die S3 Glacier-Bedingungsschlüssel, die für S3 Glacier-Ressourcen gültig sind.

S3 Glacier-Bedingungsschlüssel

Beschreibung Werttyp

glacier:ArchiveAgeInDaysWird verwendet, um zu bewerten, wie lange (in Tagen) einArchiv im Tresor gespeichert war.

Ganzzahl

glacier:ResourceTag/TagKey

Ermöglicht die Verwendung eines Tags in Ihren Richtlinien.Weitere Informationen zur Markierung von Ressourcenfinden Sie unter Verwalten der Zugriffskontrolle mitMarkieren (p. 167).

Zeichenfolge

Beispiele für die Verwendung der S3 Glacier-spezifischen Bedingungsschlüssel finden Sie unter AmazonS3 Glacier-Zugriffskontrolle mit Tresorverriegelungs-Richtlinien (p. 148).

Verwandte Themen

• Verwenden von identitätsbasierten Richtlinien (IAM-Richtlinien) für Amazon S3 Glacier (p. 141)• Verwenden ressourcenbasierter Richtlinien für Amazon S3 Glacier (Tresorrichtlinien) (p. 145)• Amazon S3 Glacier-API-Berechtigungen: Referenztabelle für Aktionen, Ressourcen und

Bedingungen (p. 150)

Verwenden von identitätsbasierten Richtlinien (IAM-Richtlinien) für Amazon S3 GlacierIn diesem Thema finden Sie Beispiele für identitätsbasierte Richtlinien, in denen ein Kontoadministrator denIAM-Identitäten (Benutzer, Gruppen und Rollen) Berechtigungsrichtlinien anfügen kann.

API-Version 2012-06-01141

Page 149: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden von identitätsbasierten

Richtlinien (IAM-Richtlinien)

Important

Wir empfehlen Ihnen, zunächst die einführenden Themen zu lesen, in denen die Grundkonzepteund für Sie verfügbaren Optionen zum Verwalten des Zugriffs auf Ihre Amazon S3 Glacier (S3Glacier)-Ressourcen erläutert werden. Weitere Informationen finden Sie unter Übersicht über dieVerwaltung von Zugriffsberechtigungen für Ihre Amazon S3 Glacier-Ressourcen (p. 137).

Das Thema besteht aus folgenden Abschnitten:

• Erforderliche Berechtigungen für die Verwendung der Amazon S3 Glacier-Konsole (p. 142)• Verwaltete AWS-Richtlinien (vordefinierte Richtlinien) für Amazon S3 Glacier (p. 143)• Beispiele für vom Kunden verwaltete Richtlinien (p. 143)

Hier ein Beispiel für eine Berechtigungsrichtlinie.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glacier:CreateVault", "glacier:DescribeVault", "glacier:ListVaults" ], "Resource": "arn:aws:glacier:us-west-2:123456789012:vaults/*" } ]}

Die Richtlinie gewährt einer Ressource Berechtigungen für drei Aktionen, die sich auf S3 Glacier-Tresorebeziehen (glacier:CreateVault, glacier:DescribeVault und glacier:ListVaults). Dazu wirdder Amazon-Ressourcenname (ARN) verwendet, der alle diese Tresore in der AWS-Region us-west-2identifiziert.

Das Platzhalterzeichen (*) am Ende des ARN bedeutet, dass diese Anweisung jedem Tresornamenentsprechen kann. Die Anweisung ermöglicht die glacier:DescribeVault-Aktion bei jedem Tresorin der angegebenen AWS-Region us-west-2. Wenn Sie die Berechtigungen für diese Aktion nur aufeinen bestimmten Tresor einschränken möchten, ersetzen Sie das Platzhalterzeichen (*) durch denTresornamen.

Erforderliche Berechtigungen für die Verwendung der Amazon S3Glacier-KonsoleDie S3 Glacier-Konsole bietet eine integrierte Umgebung zum Erstellen und Verwalten von S3 Glacier-Tresoren. Die von Ihnen erstellten IAM-Benutzer müssen mindestens die Berechtigungen für dieglacier:ListVaults-Aktion erhalten, um die S3 Glacier-Konsole, wie im folgenden Beispielverdeutlicht, anzuzeigen.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "glacier:ListVaults" ],

API-Version 2012-06-01142

Page 150: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden von identitätsbasierten

Richtlinien (IAM-Richtlinien)

"Effect": "Allow", "Resource": "*" } ]}

Beide im nächsten Abschnitt besprochenen verwalteten AWS-Richtlinien von S3 Glacier gewährenBerechtigungen für glacier:ListVaults.

Verwaltete AWS-Richtlinien (vordefinierte Richtlinien) für AmazonS3 GlacierDurch die Bereitstellung von eigenständigen IAM-Richtlinien, die von AWS erstellt und administriert werden,deckt AWS viele häufige Anwendungsfälle ab. Die verwalteten Richtlinien erteilen die erforderlichenBerechtigungen für viele häufige Anwendungsfälle, sodass Sie nicht mühsam ermitteln müssen, welcheBerechtigungen erforderlich sind. Weitere Informationen finden Sie unter AWS-verwaltete Richtlinien imIAM-Benutzerhandbuch.

Die folgenden AWS-verwalteten Richtlinien, die an Benutzer in Ihrem Konto angefügt werden, geltenspeziell für S3 Glacier:

• AmazonGlacierReadOnlyAccess – gewährt schreibgeschützten Zugriff auf S3 Glacier über die AWSManagement Console.

• AmazonGlacierFullAccess – gewährt vollständigen Zugriff auf S3 Glacier über die AWS ManagementConsole.

Note

Sie können diese Berechtigungsrichtlinien prüfen, indem Sie sich bei der IAM-Konsole anmeldenund dort nach bestimmten Richtlinien suchen.

Sie können auch Ihre eigenen, benutzerdefinierten IAM-Richtlinien erstellen, um Berechtigungen für S3Glacier-API-Aktionen und -Ressourcen zu gewähren. Die benutzerdefinierten Richtlinien können Sie dannden IAM-Benutzern oder -Gruppen anfügen, die diese Berechtigungen benötigen, oder benutzerdefiniertenAusführungsrollen (IAM-Rollen), die Sie für Ihre S3 Glacier-Tresore erstellen.

Beispiele für vom Kunden verwaltete RichtlinienIn diesem Abschnitt finden Sie Beispiele für Benutzerrichtlinien, die Berechtigungen für verschiedene S3Glacier-Aktionen gewähren. Diese Richtlinien funktionieren, wenn Sie die S3 Glacier-REST-API, die AWS-SDKs, die AWS-CLI oder falls zutreffend, die S3 Glacier-Verwaltungskonsole nutzen.

Note

In allen Beispielen werden die USA West (Oregon)-Region (us-west-2) und fiktive Konto-IDsverwendet.

Beispiele• Beispiel 1: Einem Benutzer das Herunterladen von Archiven aus einem Tresor erlauben (p. 144)• Beispiel 2: Einem Benutzer erlauben, einen Tresor zu erstellen und Benachrichtigungen zu

konfigurieren (p. 144)• Beispiel 3: Einem Benutzer das Hochladen von Archiven zu einem bestimmten Tresor

erlauben (p. 145)• Beispiel 4: Einem Benutzer volle Berechtigungen für einen bestimmten Tresor erteilen (p. 145)

API-Version 2012-06-01143

Page 151: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden von identitätsbasierten

Richtlinien (IAM-Richtlinien)

Beispiel 1: Einem Benutzer das Herunterladen von Archiven aus einem Tresorerlauben

Wenn Sie ein Archiv herunterladen möchten, initiieren Sie zuerst einen Auftrag, um das Archiv abzurufen.Sie können die Daten herunterladen, nachdem der Abrufauftrag abgeschlossen wurde. Die folgendeBeispielrichtlinie gewährt Berechtigungen für die glacier:InitiateJob-Aktion, um einen Auftrag zuinitiieren (der es dem Benutzer ermöglicht, einen Archiv- oder Tresorbestand aus dem Tresor abzurufen),und Berechtigungen für die glacier:GetJobOutput-Aktion, um die abgerufenen Daten herunterzuladen.Die Richtlinie gewährt zudem die Berechtigungen zur Durchführung der glacier:DescribeJob-Aktion,sodass der Benutzer den Auftragsstatus abrufen kann. Weitere Informationen finden Sie unter Initiate Job(POST jobs) (p. 284).

Mit der Richtlinie werden diese Berechtigungen für einen Tresor namens examplevaultverliehen. Siekönnen den Tresor-ARN von der Amazon S3 Glacier-Konsole oder programmgesteuert durch den Aufrufder API-Aktion Describe Vault (GET vault) (p. 209) oder List Vaults (GET vaults) (p. 227) abrufen.

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "arn:aws:glacier:us-west-2:123456789012:vaults/examplevault", "Action":["glacier:InitiateJob", "glacier:GetJobOutput", "glacier:DescribeJob"] } ]}

Beispiel 2: Einem Benutzer erlauben, einen Tresor zu erstellen undBenachrichtigungen zu konfigurieren

Die folgende Beispielrichtlinie gewährt die Berechtigungen zur Erstellung eines Tresor in der us-west-2-Region, wie im Resource-Element angegeben, und zur Konfiguration von Benachrichtigungen.Weitere Informationen zur Arbeit mit Benachrichtigungen finden Sie unter Konfigurieren vonTresorbenachrichtigungen in Amazon S3 Glacier (p. 55). Die Richtlinie gewährt zudem Berechtigungenzum Auflisten der Tresore in der AWS-Region und zum Abrufen einer bestimmten Tresorbeschreibung.

Important

Wenn Sie Berechtigungen zum Erstellen eines Tresors mit der glacier:CreateVault-Operation gewähren, müssen Sie das Platzhalterzeichen (*) im Resource-Wert verwenden, daSie den Tresornamen nicht kennen, bis Sie den Tresor erstellt haben.

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "arn:aws:glacier:us-west-2:123456789012:vaults/*", "Action":["glacier:CreateVault", "glacier:SetVaultNotifications", "glacier:GetVaultNotifications", "glacier:DeleteVaultNotifications", "glacier:DescribeVault", "glacier:ListVaults"] } ]}

API-Version 2012-06-01144

Page 152: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden ressourcenbasierter

Richtlinien (Tresorrichtlinien)

Beispiel 3: Einem Benutzer das Hochladen von Archiven zu einem bestimmtenTresor erlaubenDie folgende Beispielrichtlinie gewährt die Berechtigungen zum Hochladen von Archiven zu einembestimmten Tresor in der us-west-2-Region. Diese Berechtigungen ermöglichen es einem Benutzer, einArchiv mithilfe der API-Operation Upload Archive (POST archive) (p. 242) auf einmal oder mittels der API-Operation Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251) in Teilen hochzuladen.

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "arn:aws:glacier:us-west-2:123456789012:vaults/examplevault", "Action":["glacier:UploadArchive", "glacier:InitiateMultipartUpload", "glacier:UploadMultipartPart", "glacier:ListParts", "glacier:ListMultipartUploads", "glacier:CompleteMultipartUpload"] } ]}

Beispiel 4: Einem Benutzer volle Berechtigungen für einen bestimmten TresorerteilenMit der folgenden Beispielrichtlinie werden alle S3 Glacier-Aktionen für einen Tresor mit dem Namenexamplevault Berechtigungen erteilt.

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "arn:aws:glacier:us-west-2:123456789012:vaults/examplevault", "Action":["glacier:*"] } ]}

Verwenden ressourcenbasierter Richtlinien fürAmazon S3 Glacier (Tresorrichtlinien)Ein Amazon S3 Glacier (S3 Glacier)-Tresor ist die primäre Ressource in S3 Glacier. Sie könneneiner Richtlinie, die einem S3 Glacier-Tresor zugeordnet wurde, Berechtigungen hinzufügen.Berechtigungsrichtlinien, die S3 Glacier-Tresoren angefügt sind, werden als ressourcenbasierteRichtlinien (oder in S3 Glacier als Tresorrichtlinien) bezeichnet. Jedem S3 Glacier-Tresor könnenressourcenbasierte Berechtigungsrichtlinien zugeordnet werden. Informationen zu den verfügbarenBerechtigungsrichtlinienoptionen finden Sie unter Verwalten des Zugriffs auf Ressourcen (p. 138).

Important

Wir empfehlen Ihnen vor dem Erstellen ressourcenbasierter Richtlinien, zunächst die einführendenThemen zu lesen, in denen die Grundkonzepte und verfügbaren Optionen zum Verwalten desZugriffs auf Ihre S3 Glacier-Ressourcen erläutert werden. Weitere Informationen finden Sie

API-Version 2012-06-01145

Page 153: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden ressourcenbasierter

Richtlinien (Tresorrichtlinien)

unter Übersicht über die Verwaltung von Zugriffsberechtigungen für Ihre Amazon S3 Glacier-Ressourcen (p. 137).

Einem S3 Glacier-Tresor kann eine ressourcenbasierte Tresorzugriffsrichtlinie und eineTresorverriegelungsrichtlinie zugeordnet werden. Eine Amazon S3 Glacier--Tresorzugriffsrichtlinie ist eineressourcenbasierte Richtlinie, die Sie zur Verwaltung der Berechtigungen für Ihren Tresor verwendenkönnen. Eine Tresorverriegelungs-Richtlinie ist eine Tresorzugriffsrichtlinie, die gesperrt werden kann.Nachdem Sie eine Tresorverriegelungs-Richtlinie gesperrt haben, kann die Richtlinie nicht geändertwerden. Mit einer Tresorverriegelungsrichtlinie können Sie Compliance-Steuerung erzwingen.

Weitere Informationen finden Sie unter den folgenden Themen.

Themen• Amazon S3 Glacier-Zugriffskontrolle mit Tresorzugriffsrichtlinien (p. 146)• Amazon S3 Glacier-Zugriffskontrolle mit Tresorverriegelungs-Richtlinien (p. 148)

Amazon S3 Glacier-Zugriffskontrolle mit TresorzugriffsrichtlinienEine Amazon S3 Glacier-Tresorzugriffsrichtlinie ist eine ressourcenbasierte Richtlinie, die Siezur Verwaltung der Berechtigungen für Ihren Tresor verwenden können. Informationen zu denverschiedenen verfügbaren Berechtigungsrichtlinienoptionen finden Sie unter Verwalten des Zugriffs aufRessourcen (p. 138).

Sie können eine Tresorzugriffsrichtlinie für jeden Tresor erstellen, um Berechtigungen zu verwalten. Siekönnen Berechtigungen in einer Tresorzugriffsrichtlinie jederzeit ändern. S3 Glacier unterstützt auch eineTresorverriegelungs-Richtlinie auf jedem Tresor, die, nachdem Sie sie gesperrt haben, nicht mehr geändertwerden kann. Weitere Informationen zur Arbeit mit Tresorverriegelungs-Richtlinien finden Sie unter AmazonS3 Glacier-Zugriffskontrolle mit Tresorverriegelungs-Richtlinien (p. 148).

Sie können die Glacier-API, AWS SDKs, AWS-CLI oder die S3 Glacier-Konsole verwenden, umTresorzugriffsrichtlinien zu erstellen und zu verwalten. Eine Liste von zulässigen Operationen fürressourcenbasierte Tresorzugriffsrichtlinien finden Sie unter Amazon S3 Glacier-API-Berechtigungen:Referenztabelle für Aktionen, Ressourcen und Bedingungen (p. 150).

Beispiele• Beispiel 1: Berechtigungen über Konten hinweg für bestimmte Amazon S3 Glacier-Aktionen

erteilen (p. 146)• Beispiel 2: Berechtigungen über Konten hinweg für MFA-Löschoperationen erteilen (p. 147)

Beispiel 1: Berechtigungen über Konten hinweg für bestimmte Amazon S3Glacier-Aktionen erteilen

Die folgende Beispielrichtlinie erteilt Berechtigungen über Konten hinweg für zwei AWS-Konten für eineReihe von S3 Glacier-Operationen auf einem Tresor namens examplevault.

Note

Dem Konto, das den Tresor besitzt, werden alle mit dem Tresor verbundenen Kosten in Rechnunggestellt. Alle Kosten für Anfragen, Datentransfer und Abruf, die von berechtigten externen Kontengetätigt werden, werden dem Konto in Rechnung gestellt, das den Tresor besitzt.

{ "Version":"2012-10-17", "Statement":[ {

API-Version 2012-06-01146

Page 154: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden ressourcenbasierter

Richtlinien (Tresorrichtlinien)

"Sid":"cross-account-upload", "Principal": { "AWS": [ "arn:aws:iam::123456789012:root", "arn:aws:iam::444455556666:root" ] }, "Effect":"Allow", "Action": [ "glacier:UploadArchive", "glacier:InitiateMultipartUpload", "glacier:AbortMultipartUpload", "glacier:CompleteMultipartUpload" ], "Resource": [ "arn:aws:glacier:us-west-2:999999999999:vaults/examplevault" ] } ]}

Beispiel 2: Berechtigungen über Konten hinweg für MFA-LöschoperationenerteilenSie können Multi-Factor Authentication (MFA) verwenden, um Ihre S3 Glacier-Ressourcen zu schützen.Um ein zusätzliches Maß an Sicherheit zu bieten, verlangt MFA, dass Benutzer den physischenBesitz eines MFA-Geräts anhand eines gültigen MFA-Codes nachweisen. Weitere Informationen zumKonfigurieren des MFA-Zugriffs finden Sie unter Konfigurieren eines MFA-geschützten API-Zugriffs im IAM-Benutzerhandbuch.

Die Beispielrichtlinie erteilt einem AWS-Konto mit temporären Anmeldeinformationen dieBerechtigung, Archive aus einem Tresor namens „examplevault“ zu löschen, vorausgesetzt dieAnfrage wird mit einem MFA-Gerät authentifiziert. Die Richtlinie verwendet den Bedingungsschlüsselaws:MultiFactorAuthPresent, um diese zusätzliche Anforderung anzugeben. Weitere Informationenfinden Sie unter Verfügbare Schlüssel für Bedingungen im IAM-Benutzerhandbuch.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "add-mfa-delete-requirement", "Principal": { "AWS": [ "arn:aws:iam::123456789012:root" ] }, "Effect": "Allow", "Action": [ "glacier:Delete*" ], "Resource": [ "arn:aws:glacier:us-west-2:999999999999:vaults/examplevault" ], "Condition": { "Bool": { "aws:MultiFactorAuthPresent": true } } } ]}

API-Version 2012-06-01147

Page 155: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden ressourcenbasierter

Richtlinien (Tresorrichtlinien)

Zugehörige Abschnitte

• Delete Vault Access Policy (DELETE access-policy) (p. 205)• Get Vault Access Policy (GET access-policy) (p. 212)• Set Vault Access Policy (PUT access-policy) (p. 234)

Amazon S3 Glacier-Zugriffskontrolle mit Tresorverriegelungs-RichtlinienEinem Amazon S3 Glacier (S3 Glacier)-Tresor kann eine ressourcenbasierte Tresorzugriffsrichtlinieund eine Tresorverriegelungsrichtlinie angefügt werden. Eine Tresorverriegelungs-Richtlinie ist eineTresorzugriffsrichtlinie, die Sie sperren können. Mithilfe einer Tresorverriegelungs-Richtlinie können Siegesetzliche und Compliance-Anforderungen durchsetzen. Amazon S3 Glacier stellt Ihnen eine Reihevon API-Operationen bereit, um die Tresorverriegelungs-Richtlinien zu verwalten, siehe Verriegeln einesTresors mithilfe der Amazon S3 Glacier-API (p. 71).

Nehmen wir als ein Beispiel für eine Tresorverriegelungs-Richtlinie an, dass Sie verpflichtet sind, Archivefür ein Jahr aufzubewahren, bevor Sie sie löschen dürfen. Um diese Anforderung zu implementieren,können Sie eine Tresorverriegelungs-Richtlinie erstellen, die Benutzern die Berechtigung verweigert,ein Archiv zu löschen, wenn dieses Archiv noch nicht ein Jahr lang existiert. Sie können diese Richtlinietesten, bevor Sie sie sperren. Nachdem Sie die Richtlinie gesperrt haben, kann sie nicht mehr geändertwerden. Weitere Informationen über den Verriegelungsprozess finden Sie unter Amazon S3 Glacier-Tresorverriegelung (p. 70). Wenn Sie andere Benutzerberechtigungen verwalten möchten, diegeändert werden können, können Sie die Tresorzugriffsrichtlinie verwenden (siehe Amazon S3 Glacier-Zugriffskontrolle mit Tresorzugriffsrichtlinien (p. 146)).

Sie können die S3 Glacier-API, AWS SDKs, AWS-CLI oder die S3 Glacier-Konsole verwenden, umTresorverriegelungsrichtlinien zu erstellen und zu verwalten. Eine Liste von zulässigen S3 Glacier-Aktionen für ressourcenbasierte Tresorrichtlinien finden Sie unter Amazon S3 Glacier-API-Berechtigungen:Referenztabelle für Aktionen, Ressourcen und Bedingungen (p. 150).

Beispiele• Beispiel 1: Berechtigungen zum Löschen von Archiven, die weniger als 365 Tage alt sind,

verweigern (p. 148)• Beispiel 2: Berechtigungen zum Löschen basierend auf einem Tag verweigern (p. 149)

Beispiel 1: Berechtigungen zum Löschen von Archiven, die weniger als 365 Tagealt sind, verweigern

Angenommen, Sie haben eine gesetzliche Verpflichtung, Archive bis zu einem Jahr aufzubewahren,bevor Sie sie löschen können. Sie können diese Anforderung durchsetzen, indem Sie diefolgende Tresorverriegelungs-Richtlinie implementieren. Die Richtlinie verweigert die Aktionglacier:DeleteArchive auf dem Tresor „examplevault“, wenn das zu löschende Archiv wenigerals ein Jahr alt ist. Die Richtlinie verwendet den S3 Glacier-spezifischen BedingungsschlüsselArchiveAgeInDays, um die Pflicht zur einjährigen Aufbewahrung durchzusetzen.

{ "Version":"2012-10-17", "Statement":[ { "Sid": "deny-based-on-archive-age", "Principal": "*", "Effect": "Deny",

API-Version 2012-06-01148

Page 156: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden ressourcenbasierter

Richtlinien (Tresorrichtlinien)

"Action": "glacier:DeleteArchive", "Resource": [ "arn:aws:glacier:us-west-2:123456789012:vaults/examplevault" ], "Condition": { "NumericLessThan" : { "glacier:ArchiveAgeInDays" : "365" } } } ]}

Beispiel 2: Berechtigungen zum Löschen basierend auf einem Tag verweigern

Angenommen, Sie haben eine zeitabhängige Aufbewahrungsregel, nach der ein Archiv gelöscht werdenkann, wenn es weniger als ein Jahr alt ist. Nehmen Sie gleichzeitig an, dass Sie Ihre Archive rechtssicheraufbewahren müssen, um auf unbestimmte Zeit eine Löschung oder Änderung während einer gerichtlichenUntersuchung zu verhindern. In diesem Fall hat die Pflicht zur rechtssicheren Aufbewahrung Vorrang vorder zeitabhängigen Aufbewahrungsregel, die in der Tresorverriegelungs-Richtlinie spezifiziert wurde.

Um diese beiden Regeln in Kraft zu setzen, enthält die folgende Beispielrichtlinie zwei Anweisungen:

• Die erste Anweisung verweigert allen Benutzern die Berechtigung zum Löschen und verriegelt denTresor. Diese Verriegelung erfolgt mithilfe des Tags LegalHold.

• Die zweite Anweisung gewährt Berechtigungen zum Löschen, wenn das Archiv weniger als 365 Tagealt ist. Aber selbst wenn Archive weniger als 365 Tage alt sind, kann niemand sie löschen, wenn dieBedingung in der ersten Anweisung erfüllt ist.

{ "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": [

API-Version 2012-06-01149

Page 157: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchReferenztabelle für Amazon S3 Glacier-API-Berechtigungen

"arn:aws:glacier:us-west-2:123456789012:vaults/examplevault" ], "Condition": { "NumericLessThan": { "glacier:ArchiveAgeInDays": "365" } } } ]}

Zugehörige Abschnitte

• Amazon S3 Glacier-Tresorverriegelung (p. 70)• Abort Vault Lock (DELETE lock-policy) (p. 194)• Complete Vault Lock (POST lockId) (p. 201)• Get Vault Lock (GET lock-policy) (p. 215)• Initiate Vault Lock (POST lock-policy) (p. 221)

Amazon S3 Glacier-API-Berechtigungen:Referenztabelle für Aktionen, Ressourcen undBedingungenWenn Sie die Zugriffskontrolle (p. 136) einrichten und eine Berechtigungsrichtlinie für eine IAM-Identität(identitätsbasierte Richtlinien) oder eine Ressource (ressourcenbasierte Richtlinien) verfassen, könnenSie die folgende Tabelle als Referenz verwenden. In der Liste sind sämtliche S3 Glacier-API-Operationensowie die zugehörigen Aktionen und AWS-Ressourcen, für die Sie Berechtigungen erteilen können,aufgeführt.

Die Aktionen geben Sie im Action-Element und den Wert für die Ressource im Resource-Element derRichtlinie an. Außerdem können Sie mithilfe des Condition-Elements der IAM-Richtliniensyntax dieBedingungen angeben, unter denen die Richtlinie wirksam werden soll.

Um eine Aktion anzugeben, verwenden Sie das Präfix glacier: gefolgt vom Namen der API-Operation(z. B. glacier:CreateVault). Bei den meisten S3 Glacier-Aktionen gibt Resource den Tresor an, demSie die Berechtigungen erteilen möchten. Sie geben einen Tresor mit dem Tresor-ARN als Resource-Wert an. Bedingungen werden mithilfe vordefinierter Bedingungsschlüssel formuliert. Weitere Informationenfinden Sie unter Übersicht über die Verwaltung von Zugriffsberechtigungen für Ihre Amazon S3 Glacier-Ressourcen (p. 137).

In der folgenden Tabelle werden Aktionen aufgeführt, die bei identitäts- und ressourcenbasierten Richtlinienverwendet werden können.

Note

Einige Aktionen können nur bei identitätsbasierten Richtlinien verwendet werden. Diese Aktionenwerden mit einem roten Sternchen (*) nach dem Namen der API-Operation in der ersten Spaltegekennzeichnet.

S3 Glacier-API und erforderliche Berechtigungen für Aktionen

Abort Multipart Upload (DELETE uploadID) (p. 246)

Erforderliche Berechtigungen (API-Aktionen): glacier:AbortMultipartUpload

API-Version 2012-06-01150

Page 158: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchReferenztabelle für Amazon S3 Glacier-API-Berechtigungen

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:Abort Vault Lock (DELETE lock-policy) (p. 194)

Erforderliche Berechtigungen (API-Aktionen): glacier:AbortVaultLock

Ressourcen:

S3 Glacier-Bedingungsschlüssel:Add Tags To Vault (POST tags add) (p. 196)

Erforderliche Berechtigungen (API-Aktionen):glacier:AddTagsToVault

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyComplete Multipart Upload (POST uploadID) (p. 248)

Erforderliche Berechtigungen (API-Aktionen):glacier:CompleteMultipartUpload

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyComplete Vault Lock (POST lockId) (p. 201)

Erforderliche Berechtigungen (API-Aktionen):glacier:CompleteVaultLock

Ressourcen:

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyCreate Vault (PUT vault) (p. 199) *

Erforderliche Berechtigungen (API-Aktionen):glacier:CreateVault

Ressourcen:

S3 Glacier-Bedingungsschlüssel:Delete Archive (DELETE archive) (p. 240)

Erforderliche Berechtigungen (API-Aktionen):glacier:DeleteArchive

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ArchiveAgeInDays, glacier:ResourceTag/TagKeyDelete Vault (DELETE vault) (p. 203)

Erforderliche Berechtigungen (API-Aktionen):glacier:DeleteVault

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

API-Version 2012-06-01151

Page 159: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchReferenztabelle für Amazon S3 Glacier-API-Berechtigungen

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyDelete Vault Access Policy (DELETE access-policy) (p. 205)

Erforderliche Berechtigungen (API-Aktionen):glacier:DeleteVaultAccessPolicy

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyDelete Vault Notifications (DELETE notification-configuration) (p. 207)

Erforderliche Berechtigungen (API-Aktionen):glacier:DeleteVaultNotifications

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyDescribe Job (GET JobID) (p. 269)

Erforderliche Berechtigungen (API-Aktionen):glacier:DescribeJob

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:Describe Vault (GET vault) (p. 209)

Erforderliche Berechtigungen (API-Aktionen):glacier:DescribeVault

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:Get Data Retrieval Policy (GET policy) (p. 314) *

Erforderliche Berechtigungen (API-Aktionen):glacier:GetDataRetrievalPolicy

Ressourcen: arn:aws:glacier:region:account-id:policies/retrieval-limit-policy

S3 Glacier-Bedingungsschlüssel:Get Job Output (GET output) (p. 277)

Erforderliche Berechtigungen (API-Aktionen):glacier:GetJobOutput

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:Get Vault Access Policy (GET access-policy) (p. 212)

Erforderliche Berechtigungen (API-Aktionen):glacier:GetVaultAccessPolicy

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

API-Version 2012-06-01152

Page 160: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchReferenztabelle für Amazon S3 Glacier-API-Berechtigungen

S3 Glacier-Bedingungsschlüssel:Get Vault Lock (GET lock-policy) (p. 215)

Erforderliche Berechtigungen (API-Aktionen):glacier:GetVaultLock

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:Get Vault Notifications (GET notification-configuration) (p. 218)

Erforderliche Berechtigungen (API-Aktionen):glacier:GetVaultNotifications

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:Initiate Job (POST jobs) (p. 284)

Erforderliche Berechtigungen (API-Aktionen):glacier:InitiateJob

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ArchiveAgeInDays, glacier:ResourceTag/TagKeyMehrteiligen Upload initiieren (POST multipart uploads) (p. 251)

Erforderliche Berechtigungen (API-Aktionen):glacier:InitiateMultipartUpload

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyInitiate Vault Lock (POST lock-policy) (p. 221)

Erforderliche Berechtigungen (API-Aktionen):glacier:InitiateVaultLock

Ressourcen:

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyAufträge auflisten (GET jobs) (p. 294)

Erforderliche Berechtigungen (API-Aktionen):glacier:ListJobs

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:List Multipart Uploads (GET multipart-uploads) (p. 260)

Erforderliche Berechtigungen (API-Aktionen):glacier:ListMultipartUploads

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

API-Version 2012-06-01153

Page 161: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchReferenztabelle für Amazon S3 Glacier-API-Berechtigungen

S3 Glacier-Bedingungsschlüssel:List Parts (GET uploadID) (p. 255)

Erforderliche Berechtigungen (API-Aktionen):glacier:ListParts

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:List Tags For Vault (GET tags) (p. 224)

Erforderliche Berechtigungen (API-Aktionen):glacier:ListTagsForVault

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:List Vaults (GET vaults) (p. 227)

Erforderliche Berechtigungen (API-Aktionen):glacier:ListVaults

Ressourcen:

S3 Glacier-Bedingungsschlüssel:Remove Tags From Vault (POST tags remove) (p. 232)

Erforderliche Berechtigungen (API-Aktionen):glacier:RemoveTagsFromVault

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeySet Data Retrieval Policy (PUT policy) (p. 322) *

Erforderliche Berechtigungen (API-Aktionen):glacier:SetDataRetrievalPolicy

Ressourcen:arn:aws:glacier:region:account-id:policies/retrieval-limit-policy

S3 Glacier-Bedingungsschlüssel:Set Vault Access Policy (PUT access-policy) (p. 234)

Erforderliche Berechtigungen (API-Aktionen):glacier:SetVaultAccessPolicy

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeySet Vault Notification Configuration (PUT notification-configuration) (p. 236)

Erforderliche Berechtigungen (API-Aktionen):glacier:SetVaultNotifications

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKey

API-Version 2012-06-01154

Page 162: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchProtokollieren und überwachen

Upload Archive (POST archive) (p. 242)

Erforderliche Berechtigungen (API-Aktionen):glacier:UploadArchive

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKeyUpload Part (PUT uploadID) (p. 265)

Erforderliche Berechtigungen (API-Aktionen):glacier:UploadMultipartPart

Ressourcen: arn:aws:glacier:region:account-id:vaults/vault-name, arn:aws:glacier:region:account-id:vaults/example*,arn:aws:glacier:region:account-id:vaults/*

S3 Glacier-Bedingungsschlüssel:glacier:ResourceTag/TagKey

Protokollierung und Überwachung in Amazon S3Glacier

Die Überwachung ist ein wichtiger Teil der Aufrechterhaltung von Zuverlässigkeit, Verfügbarkeitund Performance von Amazon S3 Glacier (S3 Glacier) und Ihren AWS-Lösungen. Sie solltenÜberwachungsdaten von allen Teilen Ihrer AWS-Lösung erfassen. So können Sie die Quelle eines Ausfallsleichter identifizieren und debuggen, falls ein solcher auftritt. AWS bietet die folgenden Tools für dieÜberwachung Ihrer S3 Glacier-Ressourcen und die Reaktion auf potenzielle Vorfälle:

Amazon CloudWatch-Alarme

Bei der Verwendung von S3 Glacier über Amazon S3 können Sie Amazon CloudWatch-Alarmeverwenden, um eine einzelne Metrik über einen von Ihnen angegebenen Zeitraum zu überwachen.Wenn die Metrik einen bestimmten Schwellenwert überschreitet, wird eine Benachrichtigung an einAmazon SNS-Thema oder an eine AWS – Auto Scaling-Richtlinie gesendet. CloudWatch-Alarme rufenkeine Aktionen auf, da sie einen besonderen Status aufweisen. Der Status muss sich stattdessengeändert haben und für eine festgelegte Anzahl an Zeiträumen aufrechterhalten worden sein. WeitereInformationen finden Sie unter Überwachen von Metriken mit Amazon CloudWatch.

AWS CloudTrail-Protokolle

CloudTrail zeichnet die Aktionen eines Benutzers, einer Rolle oder eines AWS-Services in S3 Glacierauf. CloudTrail erfasst alle API-Aufrufe für S3 Glacier als Ereignisse, einschließlich Aufrufen von der S3Glacier-Konsole und von Codeaufrufen an die S3 Glacier-APIs. Weitere Informationen finden Sie unterProtokollieren von Amazon S3 Glacier-API-Aufrufen mit AWS CloudTrail (p. 168)

AWS Trusted Advisor

Trusted Advisor stützt sich auf bewährte Methoden, die sich während der gesamtenBetriebsgeschichte der Betreuung vieler Hunderttausend AWS-Kunden ergeben haben. TrustedAdvisor überprüft Ihre AWS-Umgebung und gibt dann Empfehlungen, sobald sich Möglichkeitenergeben, Kosten zu senken, die Systemleistung zu verbessern oder Sicherheitslücken zu schließen.Alle AWS-Kunden haben Zugriff auf fünf Trusted Advisor-Prüfungen. Kunden mit dem „Business“- oder„Enterprise“-Support-Plan können alle Trusted Advisor-Prüfungen anzeigen.

Weitere Informationen finden Sie unter AWS Trusted Advisor im AWS Support-Benutzerhandbuch.

API-Version 2012-06-01155

Page 163: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchCompliance-Validierung

Compliance-Validierung für Amazon S3 GlacierDie Sicherheit und Compliance von Amazon S3 Glacier (S3 Glacier) wird von externen Prüfern im Rahmenmehrerer AWS-Compliance-Programme bewertet, einschließlich der folgenden:

• System and Organization Controls (SOC)• Payment Card Industry Data Security Standard (PCI DSS)• Federal Risk and Authorization Management Program (FedRAMP)• Health Insurance Portability and Accountability Act (HIPAA)

AWS bietet eine häufig aktualisierte Liste der AWS-Services, die von bestimmten Compliance-Programmenverwendet werden, unter AWS-Services im Bereich von Compliance-Programmen.

Audit-Berichte von Drittanbietern stehen Ihnen zum Download über AWS Artifact zur Verfügung.Weitere Informationen finden Sie unter Herunterladen von Berichten in AWS Artifact im AWS Artifact-Benutzerhandbuch.

Weitere Informationen zu AWS-Compliance-Programmen finden Sie unter AWS-Compliance-Programme.

Welche Compliance-Verpflichtungen Sie bei der Verwendung von S3 Glacier haben, hängt von derVertraulichkeit Ihrer Daten, den Compliance-Zielen Ihrer Organisation und den geltenden Gesetzen undVorschriften ab. Wenn Ihre Nutzung von S3 Glacier Gegenstand der Einhaltung von Standards wie HIPAA,PCI oder FedRAMP ist, stellt AWS Ressourcen zur Unterstützung bereit:

• Amazon S3 Glacier-Tresorverriegelung (p. 70) erlaubt Ihnen, Compliance-Kontrollen für einzelne S3Glacier-Tresore mit einer Tresorverriegelungs-Richtlinie problemlos bereitzustellen und durchzusetzen.Sie können in einer Tresorverriegelungs-Richtlinie beispielsweise eine WORM-Bedingung (write once,read many) festlegen und die Richtlinie vor zukünftigen Änderungen schützen. Nachdem die Richtliniegesperrt ist, kann sie nicht mehr geändert werden. Tresorverriegelungs-Richtlinien können Ihnen dabeihelfen, die Einhaltung von regulatorischen Frameworks wie SEC17a-4 und HIPAA zu gewährleisten.

• Kurzanleitungen für Sicherheit und Compliance In erläutern Überlegungen zur Architektur sowie dieeinzelnen Schritte zur Bereitstellung von sicherheits- und compliance-orientierten Basisumgebungen inAWS.

• In Architecting for HIPAA Security and Compliance wird erläutert, wie Unternehmen AWS verwenden,um HIPAA-Anforderungen zu erfüllen.

• Das AWS Well-Architected Tool (AWS WA Tool) ist ein Service in der Cloud, der einen einheitlichenProzess bietet, mit dem Sie Ihre Architektur mithilfe von bewährten AWS-Methoden messen können. DasAWS WA Tool bietet Empfehlungen dazu, wie Sie Ihre Workloads zuverlässiger, sicherer, effizienter undkostengünstiger gestalten können.

• Die AWS-Compliance-Ressourcen enthalten mehrere Arbeitsmappen und Leitfäden, die möglicherweisefür Ihre Branche und Ihren Standort relevant sind.

• AWS Config hilft Ihnen bei der Bewertung, zu welchem Grad die Konfiguration Ihrer Ressourcen deninternen Vorgehensweisen, Branchenrichtlinien und Vorschriften entspricht.

• Der AWS-Security Hub liefert einen umfassenden Überblick über den Sicherheitsstatus in AWS. Sokönnen Sie die Compliance mit den Sicherheitsstandards und den bewährten Methoden der Brancheabgleichen.

Ausfallsicherheit in Amazon S3 GlacierIm Zentrum der globalen AWS-Infrastruktur stehen Regionen und Availability Zones. AWS-Regionenstellen mehrere physisch getrennte und isolierte Availability Zones bereit, die über hoch redundanteNetzwerke mit niedriger Latenz und hohen Durchsätzen verbunden sind. Diese Availability Zones bieten

API-Version 2012-06-01156

Page 164: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAusfallsicherheit

Ihnen eine effektive Methode zum Entwerfen und Betreiben von Anwendungen und Datenbanken. Sie sindverfügbarer, fehlertoleranter und skalierbarer als herkömmliche einzelne Rechenzentrumsinfrastrukturenoder Multi-Rechenzentrumsinfrastrukturen. S3 Glacier speichert Daten auf redundante Weise in mehrerenAWS-Availability Zones (AZ) und auf mehreren Geräten in den einzelnen AZs. Zur Steigerung derBeständigkeit speichert S3 Glacier Ihre Daten synchron in mehreren Availability Zones, bevor einerfolgreicher Upload bestätigt wird.

Weitere Informationen über zu AWS-Regionen und Availability Zones finden Sie unterAWSGlobaleInfrastruktur.

API-Version 2012-06-01157

Page 165: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSicherheit der Infrastruktur

Sicherheit der Infrastruktur in Amazon S3 GlacierAls verwalteter Service ist Amazon S3 Glacier (S3 Glacier) durch die globalen Verfahren zurGewährleistung der Netzwerksicherheit von AWS geschützt, die unter Amazon Web Services: beschriebensind. Übersicht über Sicherheitsprozesse.

Der Zugriff auf S3 Glacier über das Netzwerk erfolgt über AWS, die von APIs veröffentlicht werden. Clientsmüssen Transport Layer Security (TLS) 1.0 unterstützen. TLS 1.2 oder höher wird jedoch empfohlen.Clients müssen außerdem Cipher Suites mit PFS (Perfect Forward Secrecy) wie DHE (Ephemeral Diffie-Hellman) oder ECDHE (Elliptic Curve Ephemeral Diffie-Hellman) unterstützen. Die meisten modernenSystemen wie Java 7 und höher unterstützen diese Modi. Darüber hinaus müssen Anforderungen miteinem Zugriffsschlüssel-ID und einem geheimen Zugriffsschlüssel signiert werden, der einem IAM-Prinzipal zugeordnet ist. Sie können auch AWS Security Token Service (AWS STS) um temporäreSicherheitsanmeldeinformationen zur Signierung von Anforderungen zu generieren.

VPC-EndpunkteEin Virtual Private Cloud (VPC)-Endpunkt ermöglicht es Ihnen, Ihre VPC privat mit unterstützten AWS-Services und VPC-Endpunktservices über AWS PrivateLink zu verbinden, ohne dass ein Internet-Gateway,ein NAT-Gerät, eine VPN-Verbindung oder eine AWS Direct Connect-Verbindung erforderlich sind. ObwohlS3 Glacier VPC-Endpunkte nicht direkt unterstützt, können Sie Amazon S3 VPC-Endpunkte direkt nutzen,wenn Sie den Zugriff auf S3 Glacier als mit Amazon S3 integrierte Speicherstufe durchführen.

Weitere Informationen zur Amazon S3-Lebenszykluskonfiguration und zur Übertragung von Objekten in dieS3 Glacier-Speicherklasse, finden Sie unter Objektlebenszyklusverwaltung und Übergang von Objektenim Entwicklerhandbuch für Amazon Simple Storage Service.. Weitere Informationen über VPC-Endpunktefinden Sie unter VPC-Endpunkte im Amazon VPC Benutzerhandbuch.

API-Version 2012-06-01158

Page 166: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVoraussetzungen und Kontingente für S3 Glacier Select

Abfragen von Archiven mit S3 GlacierSelect

Mit S3 Glacier Select können Sie Filteroperationen mit einfachen SQL-Anweisungen direkt auf Ihre Datenin S3 Glacier anwenden. Wenn Sie eine SQL-Abfrage für ein S3 Glacier-Archivobjekt bereitstellen, führt S3Glacier Select die Abfrage durch und schreibt die Ausgabeergebnisse in Amazon S3. Mit S3 Glacier Selectkönnen Sie Abfragen und benutzerdefinierte Analysen für Ihre Daten in S3 Glacier durchführen, ohne IhreDaten in einem teureren Kontingent wie Amazon S3 wiederherstellen zu müssen.

Wenn Sie select-Abfragen ausführen, stellt S3 Glacier drei Datenzugriffsstufen bereit: expedited, standardund bulk. Für diese Kontingente stehen jeweils eigene Datenzugriffszeiten und -kosten zur Verfügung.Wählen Sie ein passendes Kontingent aus, je nachdem, wie schnell Daten verfügbar sein sollen. Daten, dieunter Verwendung des "Expedited"-Kontingents abgerufen werden, stehen normalerweise innerhalb von 1bis 5 Minuten zur Verfügung, außer wenn es sich um sehr große Archive (250 MB und mehr) handelt. DasStandardkontingent ist in drei bis fünf Stunden abgeschlossen. "bulk"-Abrufe werden innerhalb von 5 bis 12Stunden verarbeitet. Weitere Informationen zu Stufenpreisen finden Sie unter S3 Glacier-Preise.

Sie können S3 Glacier Select mit den AWS SDKs, der S3 Glacier-REST-API und der AWS Command LineInterface (AWS CLI) verwenden.

Themen• Voraussetzungen und Kontingente für S3 Glacier Select (p. 159)• Wie kann ich Daten mit S3 Glacier Select abfragen? (p. 160)• Fehlerbehandlung (p. 161)• Weitere Infos (p. 161)

Voraussetzungen und Kontingente für S3 GlacierSelect

Für die Verwendung von S3 Glacier Select müssen folgende Voraussetzungen erfüllt sein:

• Archivobjekte, die mit S3 Glacier Select abgerufen werden, müssen als unkomprimierte CSV-Dateivorliegen.

• Sie benötigen einen S3-Bucket. Außerdem muss das AWS-Konto, mit dem Sie eine S3 Glacier Select-Aufgabe initiieren, über Schreibberechtigung für den S3-Bucket verfügen. Der Amazon S3-Bucket musssich in derselben AWS-Region befinden wie der Tresor, der das abzurufende Archivobjekt enthält.

• Sie benötigen die Berechtigung zum Aufrufen von Get Job Output (GET output) (p. 277).

Für die Verwendung von S3 Glacier Select gelten die folgenden Kontingente:

• Es gibt keine Kontingente für die Anzahl der Datensätze, die von S3 Glacier Select verarbeitet werdenkönnen. Ein Ein- oder Ausgabedatensatz darf höchstens 1 MB groß sein, andernfalls schlägt die Abfragefehl. Es gibt ein Kontingent von 1.048.576 Spalten pro Datensatz.

• Es gibt kein Kontingent für die Größe der Endergebnisse. Die Ergebnisse werden jedoch in mehrereTeile aufgeteilt.

• Ein SQL-Ausdruck ist auf 128 KB beschränkt.

API-Version 2012-06-01159

Page 167: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchWie kann ich Daten mit S3 Glacier Select abfragen?

Wie kann ich Daten mit S3 Glacier Select abfragen?Sie können mit S3 Glacier Select SQL-Befehle nutzen, um S3 Glacier-Archivobjekte abzurufen,die im unkomprimierten CSV-Format vorliegen. Mit dieser Einschränkung können Sie einfacheAbfrageoperationen für textbasierte Daten in S3 Glacier ausführen. Sie können beispielsweise nach einembestimmten Namen oder einer bestimmten ID innerhalb einer Menge von Archivtextdateien suchen.

Um Ihre S3 Glacier-Daten abzufragen, erstellen Sie eine "select"-Aufgabe mit der Operation Initiate Job(POST jobs) (p. 284). Wenn Sie einen Auswahlauftrag initiieren, geben Sie den SQL-Ausdruck, dasabzufragende Archiv sowie den Speicherort für die Ergebnisse in Amazon S3 an.

Im folgenden Beispiel werden alle Datensätze aus dem Archiv zurückgegeben, das durch die Archiv-ID inInitiate Job (POST jobs) (p. 284) angegeben wurde.

SELECT * FROM archive

S3 Glacier Select unterstützt eine Untermenge der ANSI SQL-Sprache. Es unterstützt gängigeSQL-Filterklauseln wie SELECT, FROM und WHERE. Die Klauseln SUM, COUNT, GROUP BY,JOINS, DISTINCT, UNION, ORDER BY und LIMIT werden nicht unterstützt. Weitere Informationenzur Unterstützung für SQL finden Sie unter SQL-Referenz für Amazon S3 Select und S3 GlacierSelect. (p. 326).

S3 Glacier Select-AusgabeWenn Sie einen Auswahlauftrag initiieren, legen Sie einen Ausgabespeicherort für die Ergebnisse derAuswahlabfrage fest. Dieser Speicherort muss ein Amazon S3-Bucket in derselben AWS-Region sein wieder Tresor, der das abzurufende Archivobjekt enthält. Das AWS-Konto, von dem aus der Auftrag initiiertwird, muss über Schreibberechtigungen für den S3-Bucket verfügen.

Sie können die S3-Speicherklasse und die Verschlüsselung für die in gespeicherten Ausgabeobjekteangeben. Amazon S3. (z. B.. S3 Glacier Select unterstützt SSE-KMS- und SSE-S3-Verschlüsselung. S3Glacier Select unterstützt keine SSE-C- und clientseitige Verschlüsselung. Weitere Informationen zu denAmazon S3-Speicherklassen und Verschlüsselungen finden Sie unter Speicherklassen und Schützen vonDaten mithilfe serverseitiger Verschlüsselung im Entwicklerhandbuch für Amazon Simple Storage Service.

S3 Glacier Select-Ergebnisse werden in dem S3-Bucket zusammen mit dem Präfix gespeichert, dasim Ausgabespeicherort unter Initiate Job (POST jobs) (p. 284) festgelegt wurde. Anhand dieserInformationen erstellt S3 Glacier Select ein eindeutiges Präfix mit Verweis auf die Aufgaben-ID. DiesesAuftrags-ID-Präfix wird im x-amz-job-output-path-Header in einer Initiate Job (POST jobs) (p. 284)-Antwort zurückgegeben. (Präfixe werden verwendet, um S3-Objekte zu gruppieren, indem Objektnamenmit einer gemeinsamen Zeichenfolge beginnen.) Unter diesem eindeutigen Präfix werden zwei neue Präfixeerstellt, results für Ergebnisse und errors für Protokolle und Fehler. Nach Abschluss des Auftrags wirdein Ergebnismanifest mit dem Speicherort aller Ergebnisse geschrieben.

Außerdem wird die Platzhalterdatei job.txt in das Ausgabeverzeichnis geschrieben. Diese Datei wirdniemals aktualisiert und dient folgenden Zwecken:

• Synchrone Validierung der Schreibberechtigung und der meisten SQL-Syntaxfehler• Bereitstellung einer statischen Ausgabe ähnlich wie Describe Job (GET JobID) (p. 269), auf die Sie

jederzeit einfach verweisen können

Angenommen, Sie initiieren eine S3 Glacier Aufgabe mit dem Ausgabeort für die angegebenen Ergebnisseauswählen als s3://example-bucket/my-prefixund die Auftragsantwort gibt die Auftrags-IDzurück als examplekne1209ualkdjh812elkassdu9012e. (z. B.. Nachdem der ausgewählte Auftragabgeschlossen ist, sehen Sie Folgendes: Amazon S3 -Objekte in Ihrem Bucket:

API-Version 2012-06-01160

Page 168: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFehlerbehandlung

s3://example-bucket/my-prefix/examplekne1209ualkdjh812elkassdu9012e/job.txts3://example-bucket/my-prefix/examplekne1209ualkdjh812elkassdu9012e/results/abcs3://example-bucket/my-prefix/examplekne1209ualkdjh812elkassdu9012e/results/defs3://example-bucket/my-prefix/examplekne1209ualkdjh812elkassdu9012e/results/ghis3://example-bucket/my-prefix/examplekne1209ualkdjh812elkassdu9012e/result_manifest.txt

Die Auswahlabfrageergebnisse werden in mehrere Teile aufgeteilt. In dem Beispiel verwendet S3Glacier Select das Präfix, das beim Festlegen des Ausgabespeicherorts eingerichtet wurde, undhängt die Aufgaben-ID an das Präfix results an. Anschließend werden die Ergebnisse in drei Teilengeschrieben, wobei die Objektnamen auf abc, , und Sie haben die Möglichkeit def, und ghi. (z. B.. DasErgebnismanifest enthält alle drei Dateien, um den programmgesteuerten Abruf zu ermöglichen. Wenn derAuftrag mit einem Fehler fehlschlägt, wird eine Datei mit dem Fehlerpräfix angezeigt und es wird eine Dateierror_manifest.txt erstellt.

Wenn die Datei result_manifest.txt vorhanden ist und die Datei error_manifest.txt fehlt, wurdeder Auftrag auf jeden Fall erfolgreich abgeschlossen. Für die Anordnung der Ergebnisse gibt es jedochkeine Garantie.

Note

Die Länge eines Amazon S3-Objektnamens, auch als der Schlüssel bezeichnet, darf 1.024 Bytesnicht überschreiten. S3 Glacier reserviert 128 Bytes für Präfixe. Die Länge des Amazon S3-Speicherpfads darf 512 Bytes nicht überschreiten. Bei einer Anforderung mit einer Länge über512 Bytes wird eine Ausnahme zurückgegeben und die Anforderung wird nicht akzeptiert.

FehlerbehandlungS3 Glacier Select benachrichtigt Sie über zwei Arten von Fehlern. Der erste Fehlertyp wird synchron zumAbsenden von Abfragen in Initiate Job (POST jobs) (p. 284) an Sie gesendet. Diese Fehler werdenim Rahmen der HTTP-Antwort gesendet. Der zweite Fehlertyp kann auftreten, nachdem die Abfrageerfolgreich akzeptiert wurde, wenn dann bei der Ausführung der Abfrage ein Fehler auftritt. In diesem Fallwerden die Fehler in den unter dem errors-Präfix angegebenen Ausgabespeicherort geschrieben.

S3 Glacier Select stoppt die Ausführung der Abfrage, wenn ein Fehler auftritt. Um die Abfrage erfolgreichauszuführen, müssen Sie alle Fehler beheben. Welche Datensätze zu einem Fehler geführt haben, könnenSie den Protokollen entnehmen.

Da Abfragen parallel auf mehreren Rechenknoten ausgeführt werden, werden die Fehler nicht inReihenfolge angezeigt. Wenn eine Abfrage beispielsweise mit einem Fehler in Zeile 6234 scheitert,bedeutet das nicht, dass alle Zeilen vor Zeile 6234 erfolgreich verarbeitet wurden. Beim nächsten Durchlaufder Abfrage kann der Fehler an anderer Stelle angezeigt werden.

Weitere Infos• Initiate Job (POST jobs) (p. 284)• Describe Job (GET JobID) (p. 269)• Aufträge auflisten (GET jobs) (p. 294)• Arbeiten mit Archiven in Amazon S3 Glacier (p. 73)

API-Version 2012-06-01161

Page 169: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAuswahl einer Amazon S3 Glacier-

Richtlinie für den Datenabruf

Amazon S3 Glacier-Richtlinien fürden Datenabruf

Mit Amazon S3 Glacier (S3 Glacier)-Richtlinien für den Datenabruf können Sie mühelos Kontingentefür den Datenabruf festlegen und die maximale Datenabrufrate für Ihr AWS-Konto in jeder AWS-Regionverwalten. Weitere Informationen zu den S3 Glacier-Gebühren für den Datenabruf finden Sie unter S3Glacier-Preise.

Important

Eine Richtlinie für den Datenabruf gilt nur für einen Standardabruf und Abrufanforderungen,die direkt an S3 Glacier gesendet werden. Anforderungen zur Datenwiederherstellung für dieSpeicherklasse S3 Glacier von Amazon Simple Storage Service (Amazon S3) werden damitnicht verwaltet. Weitere Informationen zur S3 Glacier-Speicherklasse finden Sie unter S3 Glacier-Speicherklasse und Übergang von Objekten im Entwicklerhandbuch für Amazon Simple StorageService.

Themen• Auswahl einer Amazon S3 Glacier-Richtlinie für den Datenabruf (p. 162)• Verwenden der Amazon S3 Glacier-Konsole zum Einrichten einer Richtlinie für den

Datenabruf (p. 164)• Verwenden der Amazon S3 Glacier-API zum Einrichten einer Richtlinie für den Datenabruf (p. 164)

Auswahl einer Amazon S3 Glacier-Richtlinie für denDatenabruf

Sie können aus drei Arten von S3 Glacier Datenabrufrichtlinien: Kein Abruflimit, , und Sie haben dieMöglichkeit Nur kostenloses Kontingent, und Max. Abrufrate. „No Retrieval Limit“ ist die standardmäßigeRichtlinie für für Abrufe. Wenn Sie die Richtlinie „No Retrieval Limit (Kein Abruflimit)“ verwenden, wird keinAbrufkontingent verwendet, und alle gültigen Datenabrufanforderungen werden akzeptiert.

Mithilfe der Richtlinie „Free Tier Only” können Sie den Datenabruf auf das tägliche kostenlose Kontingentbeschränken, so dass keine zusätzlichen Datenabrufkosten anfallen. Wenn Sie mehr Daten als daskostenlose Kontingent abrufen möchten, verwenden Sie die Richtlinie „Max Retrieval Rate (MaximaleAbrufrate)“, um ein Kontingent für die Abrufrate von Bytes pro Stunde festzulegen. Die Richtlinie „MaxRetrieval Rate (Maximale Abrufrate)“ stellt sicher, dass die höchste Abrufrate aller Abrufaufgaben desKontos in einer AWS-Region nicht das festgelegte Bytes-pro-Stunde-Kontingent überschreitet.

Sowohl bei Verwendung der Richtlinie „Free Tier Only (Nur kostenloses Kontingent)“ als auch der Richtlinie„Max Retrieval Rate (Maximale Abrufrate)“ werden Datenabrufanforderungen, durch die die angegebenenAbruflimits überschritten würden, nicht akzeptiert. Wenn Sie die Richtlinie „Free Tier Only” verwendenlehnt S3 Glacier entsprechend alle Abrufanforderungen ab, die Ihr kostenloses Kontingent überschreitenwürden. Wenn Sie die Richtlinie „Max Retrieval Rate (Maximale Abrufrate)“ verwenden, lehnt S3 GlacierAbrufanforderungen ab, die bewirken würden, dass die höchste Abrufrate der in Bearbeitung befindlichenAufgaben das in der Richtlinie festgelegte Bytes-pro-Stunde-Kontingent überschreitet. Diese Richtlinienerleichtern die Verwaltung der Datenabrufkosten.

API-Version 2012-06-01162

Page 170: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchRichtlinie „Free Tier Only”

Es folgen einige nützliche Fakten zu den Richtlinien für den Datenabruf:

• Die Richtlinieneinstellungen für den Datenabruf haben keinen Einfluss auf den Zeitraum von 3 bis 5Stunden, den der Abruf der Daten mithilfe von Standard-Abrufen aus S3 Glacier in Anspruch nimmt.

• Die Festlegung einer neuen Richtlinie für den Datenabruf wirkt sich nicht auf zuvor akzeptierteAbrufaufträge aus, die bereits in Bearbeitung sind.

• Wenn eine Anforderung für einen Abrufauftrag wegen einer Richtlinie für den Datenabruf abgelehnt wird,werden Ihnen weder der Auftrag noch die Anforderung in Rechnung gestellt.

• Sie können für jede AWS-Region eine Richtlinie für den Datenabruf festlegen. Diese Richtlinie regeltdann alle Datenabrufaktivitäten, die unter Ihrem Konto in der betreffenden AWS-Region durchgeführtwerden. Eine Datenabrufrichtlinie ist für eine bestimmte AWS-Region spezifisch, da die Kosten für denDatenabruf zwischen AWS-Regionen variieren. Weitere Informationen finden Sie unter S3 Glacier-Preise.

Richtlinie „Free Tier Only”Sie können eine Richtlinie für den Datenabruf auf „Free Tier Only” festlegen, um sicherzustellen, dass daskostenlose Datenabrufkontingent nicht überschritten wird. Wenn eine Abrufanforderung abgelehnt wird,erhalten Sie eine Fehlermeldung, die besagt, dass die Anforderung aufgrund der aktuellen Richtlinie für denDatenabruf verweigert worden.

Sie legen die Richtlinie für den Datenabruf für eine bestimmte AWS-Region auf „Free Tier Only” fest.Sobald die Richtlinie aktiviert worden ist, können Sie an einem Tag nicht mehr Daten abrufen, als dasanteilige kostenlose tägliche Abrufkontigent dieser AWS-Region vorsieht, und es entstehen Ihnen keineKosten für den Datenabruf.

Sie können zur Richtlinie „Free Tier Only” wechseln, wenn Sie in einem Monat Kosten für den Datenabrufverursacht haben. Die Richtlinie „Free Tier Only” wirkt sich nur auf neue Abrufanforderungen aus, nicht aufvergangene Anforderungen. Die zuvor entstandenen Kosten werden Ihnen in Rechnung gestellt.

Richtlinie „Max Retrieval Rate”Sie können eine Richtlinie für den Datenabruf auf „Max Retrieval Rate (Maximale Abrufrate)“ festlegen,um die maximale Datenabrufrate durch die Angabe eines maximalen Datenabrufkontingents in Bytespro Stunde zu steuern. Wenn Sie die Richtlinie für den Datenabruf auf „Max Retrieval Rate (MaximaleAbrufrate)“ festlegen, werden neue Abrufanforderungen zurückgewiesen, wenn sie bewirken würden, dassdie höchste Abrufrate der in Bearbeitung befindlichen Aufträge das in der Richtlinie festgelegte Bytes-pro-Stunde-Kontingent überschreitet. Wenn eine Abrufanforderung abgelehnt wird, erhalten Sie eineFehlermeldung, die besagt, dass die Anforderung aufgrund der aktuellen Richtlinie für den Datenabrufabgelehnt worden ist.

Wenn Sie die Richtlinie für den Datenabruf auf „Max Retrieval Rate” festlegen, kann sich dies daraufauswirken, welches kostenloses Kontingent Sie am Tag nutzen können. Angenommen, Sie legen „MaxRetrieval Rate” z. B. auf 1 MB pro Stunde fest. Das ist weniger als die in der Richtlinie für das kostenloseKontingent festgelegte Rate von 14 MB pro Stunde. Um das tägliche kostenlose Kontingent optimal zunutzen, legen Sie Ihre Richtlinie zunächst auf "Free Tier Only (Nur kostenloses Kontingent)" fest undwechseln später bei Bedarf zur Richtlinie "Max Retrieval Rate" (Max. Abrufrate). Weitere Informationendazu, wie Ihr Abrufkontingent berechnet wird, finden Sie unter S3 Glacier – Häufig gestellte Fragen.

Keine Richtlinie für den Abruf von DatenWenn Sie Ihre Richtlinie für den Datenabruf auf „No Retrieval Limit” festgelegt haben, werden alle gültigenDatenabrufanforderungen akzeptiert.

API-Version 2012-06-01163

Page 171: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden der Amazon S3 Glacier-Konsole zum

Einrichten einer Richtlinie für den Datenabruf

Verwenden der Amazon S3 Glacier-Konsole zumEinrichten einer Richtlinie für den Datenabruf

Sie können die Richtlinie für den Datenabruf auf der S3 Glacier-Konsole oder mithilfe der S3 Glacier-APIanzeigen und aktualisieren. Um die Richtlinie für den Datenabruf in der Konsole einzurichten, wählen Sieeine AWS-Region und klicken dann auf Einstellungen.

Sie können eine der drei Datenabrufrichtlinien auswählen: Nur kostenloses Kontingent, , und Sie habendie Möglichkeit Max. Abrufrate, oder Kein Abruflimit. Wenn Sie auf Max Retrieval Rate (Max. Abrufrate)klicken, müssen Sie einen Wert im Feld GB/Hour (GB/Stunde) angeben. Sobald Sie einen Wert in das FeldGB/Hour (GB/Stunde) eingeben, berechnet die Konsole die geschätzten Kosten für Sie. Klicken Sie auf NoRetrieval Limit (Kein Abruflimit), wenn die Datenabrufrate keinerlei Beschränkungen unterliegen soll.

Sie können für jede AWS-Region eine Richtlinie für den Datenabruf konfigurieren. Jede Richtlinie trittinnerhalb weniger Minuten nach dem Klicken auf Save (Speichern) in Kraft.

Verwenden der Amazon S3 Glacier-API zumEinrichten einer Richtlinie für den Datenabruf

Sie können mit der REST-API oder den AWS-SDKs von S3 Glacier eine Richtlinie für den Datenabrufanzeigen und festlegen.

Verwenden der REST-API von Amazon S3 Glacierzum Einrichten einer Richtlinie für den DatenabrufSie können mit der REST-API von S3 Glacier eine Richtlinie für den Datenabruf anzeigen und festlegen.Mit der Get Data Retrieval Policy (GET policy) (p. 314)-Operation können Sie eine vorhandene Richtliniefür den Datenabruf anzeigen. Zum Einrichten einer Richtlinie für den Datenabruf verwenden Sie die SetData Retrieval Policy (PUT policy) (p. 322)-Operation.

API-Version 2012-06-01164

Page 172: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden der AWS-SDKs zum Einrichten

einer Richtlinie für den Datenabruf

Bei Verwendung der PUT-Richtlinienoperation wählen Sie den Richtlinientyp für den Datenabruf durchFestlegen des JSON-Felds Strategy auf den Wert BytesPerHour, FreeTier bzw. None fest.BytesPerHour entspricht der Auswahl von Max Retrieval Rate (Max. Abrufrate) in der Konsole,FreeTier entspricht der Auswahl von Free Tier Only (Nur kostenloses Kontingent) und None entsprichtder Auswahl von No Retrieval Policy (Keine Abrufrichtlinie).

Wenn Sie die Initiate Job (POST jobs) (p. 284) -Operation, um einen Datenabrufauftrag zu initiieren, derdie maximale Abrufrate überschreitet, die in Ihrer Datenabrufrichtlinie festgelegt ist, stoppt die Initiate-Job-Operation und löst eine Ausnahme aus.

Verwenden der AWS-SDKs zum Einrichten einerRichtlinie für den DatenabrufAWS stellt SDKs zur Anwendungsentwicklung für S3 Glacier bereit. Diese SDKs enthalten Bibliotheken, diesich der zugrunde liegenden REST-API zuordnen lassen, und sie stellen Objekte zur Verfügung, mit denenSie mühelos Anforderungen erstellen und Antworten verarbeiten können. Weitere Informationen finden Sieim Verwenden der AWS SDKs mit Amazon S3 Glacier (p. 125).

API-Version 2012-06-01165

Page 173: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGrundlagen des Markierens

Markieren von Amazon S3 Glacier-Ressourcen

Ein Tag ist eine Markierung, die Sie einer AWS-Ressource zuordnen. Jedes Tag besteht aus einemSchlüssel und einem Wert, die Sie beide selbst definieren. Sie können die Tags, die Sie definieren,Amazon S3 Glacier (S3 Glacier)-Tresorressourcen zuweisen. Die Verwendung von Tags ist ein einfacher,aber effizienter Weg, um AWS-Ressourcen zu verwalten und Daten, einschließlich Fakturierungsdaten, zuorganisieren.

Themen• Grundlagen des Markierens (p. 166)• Einschränkungen für Tags (p. 166)• Kosten mithilfe von Tags verfolgen (p. 167)• Verwalten der Zugriffskontrolle mit Markieren (p. 167)• Zugehörige Abschnitte (p. 167)

Grundlagen des MarkierensSie verwenden die S3 Glacier-Konsole, AWS Command Line Interface (AWS CLI) oder S3 Glacier-API, umdie folgenden Aufgaben abzuschließen:

• Hinzufügen von Tags zu einem Tresor• Auflisten der Tags für einen Tresor• Entfernen von Tags von einem Tresor

Informationen darüber, wie Sie Tags hinzufügen, auflisten und entfernen, finden Sie unter Markieren derAmazon S3 Glacier-Tresore (p. 69).

Sie können Tags verwenden, um Ihre Tresore zu kategorisieren. Sie können Tresore beispielsweise nachZweck, Inhaber oder Umgebung kategorisieren. Da Sie für jeden Tag den Schlüssel und Wert definieren,können Sie eine auf benutzerdefinierte Reihe von Kategorien anlegen, die Ihren jeweiligen Anforderungengerecht wird. Sie könnten zum Beispiel eine Reihe von Tags definieren, mit der Sie Tresore nach Inhaberund Zweck für den Tresor nachverfolgen können. Im Folgenden sind einige Beispiele für Tags aufgeführt:

• Eigentümer: Name• Zweck: Videoarchive• Umgebung: Produktion

Einschränkungen für TagsGrundlegende Tag-Beschränkungen sind wie folgt:

• Die maximale Anzahl an Tags pro Ressource (Tresor) beträgt 50.• Bei Tag-Schlüsseln und -Werten muss die Groß-/Kleinschreibung beachtet werden.

API-Version 2012-06-01166

Page 174: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKosten mithilfe von Tags verfolgen

Tag-Schlüssel-Beschränkungen sind wie folgt:

• Innerhalb eines Satzes von Tags für einen Tresor muss jeder Tag-Schlüssel eindeutig sein. Wenn Sieeinen Tag mit einem Schlüssel hinzufügen, der bereits verwendet wird, wird das vorhandene Schlüssel-Wert-Paar durch den neuen Tag überschrieben.

• Tag-Schlüssel können nicht mit aws: beginnen, da dieses Präfix für die Verwendung durch AWSreserviert ist. AWS kann zwar in Ihrem Namen Tags, die mit diesem Präfix beginnen, erstellen, Siekönnen diese jedoch nicht bearbeiten oder löschen.

• Tag-Schlüssel müssen zwischen 1 und 128 Unicode-Zeichen lang sein.• Tag-Schlüssel müssen aus den folgenden Zeichen bestehen: Unicode-Buchstaben, Ziffern, Leerzeichen

und die folgenden Sonderzeichen: _ . / = + - @:

Tag-Wert-Beschränkungen sind wie folgt:

• Tag-Werte müssen zwischen 0 und 255 Unicode-Zeichen lang sein.• Tag-Werte können leer sein. Andernfalls müssen sie aus den folgenden Zeichen bestehen: Unicode-

Buchstaben, Ziffern, Leerzeichen und eines der folgenden Sonderzeichen: _ . / = + - @:

Kosten mithilfe von Tags verfolgenSie können Tags verwenden, um Ihre AWS-Kosten zu kategorisieren und zu verfolgen. Wenn Sie Tags aufbeliebige AWS-Ressourcen, einschließlich Tresore, anwenden, enthält der AWS-Kostenzuordnungsberichtmit Tags aggregierte Nutzungs- und Kostendaten. Sie können Tags anwenden, die geschäftlicheKategorien (wie Kostenstellen, Anwendungsnamen und Eigentümer) darstellen, um die Kosten für mehrereServices zu organisieren. Weitere Informationen finden Sie unter Verwenden von Kostenzuordnungs-Tagsfür benutzerdefinierte Fakturierungsberichte im Benutzerhandbuch für AWS Billing and Cost Management.

Verwalten der Zugriffskontrolle mit MarkierenSie können Tags als eine Bedingung in einer Zugriffsrichtlinienanweisung verwenden. Sie könnenbeispielsweise ein Tag für rechtliche Aufbewahrungsfristen einrichten und es als Bedingung in eineDatenaufbewahrungsrichtlinie einfügen, die besagt, dass "Löschen des Archivs von allen abgelehntwird, wenn der Tagwert für rechtliche Aufbewahrungsfristen auf True festgelegt ist". Sie können dieDatenaufbewahrungsrichtlinie bereitstellen und das Tag für rechtliche Aufbewahrungsfristen unter normalenBedingungen auf False setzen. Wenn Ihre Daten in Warteschleife gesetzt werden, um eine Untersuchungzu unterstützen, können Sie die gesetzliche Aufbewahrung einfach einschalten, indem Sie den Wert desTags auf True festlegen und diese Aufbewahrung später auf ähnliche Weise wieder entfernen. WeitereInformationen finden Sie unter Zugriffssteuerung mit Tags im IAM-Benutzerhandbuch.

Zugehörige Abschnitte• Markieren der Amazon S3 Glacier-Tresore (p. 69)

API-Version 2012-06-01167

Page 175: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAmazon S3 Glacier-Informationen in CloudTrail

Protokollieren von Amazon S3Glacier-API-Aufrufen mit AWSCloudTrail

Amazon S3 Glacier (S3 Glacier) ist in AWS CloudTrail integriert. Dies ist ein Service, der die Aktioneneines Benutzers, einer Rolle oder eines AWS-Services in S3 Glacier aufzeichnet. CloudTrail erfasst alleAPI-Aufrufe für S3 Glacier als Ereignisse, einschließlich Aufrufen von der S3 Glacier-Konsole und vonCode-Aufrufen an die S3 Glacier-APIs. Wenn Sie einen Trail erstellen, können Sie die kontinuierlicheBereitstellung von CloudTrail-Ereignissen an einen Amazon S3-Bucket, einschließlich Ereignissen fürS3 Glacier, aktivieren. Auch wenn Sie keinen Trail konfigurieren, können Sie die neuesten Ereignisse inder CloudTrail-Konsole in Event history (Ereignisverlauf) anzeigen. Mit den von CloudTrail gesammeltenInformationen können Sie die an S3 Glacier gestellte Anfrage, die IP-Adresse, von der die Anfrage gestelltwurde, den Initiator der Anfrage, den Zeitpunkt der Anfrage und weitere Angaben bestimmen.

Weitere Informationen zu CloudTrail finden Sie im AWS CloudTrail User Guide.

Amazon S3 Glacier-Informationen in CloudTrailCloudTrail wird beim Erstellen Ihres AWS-Kontos für Sie aktiviert. Die in S3 Glacier auftretenden Aktivitätenwerden als CloudTrail-Ereignis zusammen mit anderen AWS-Serviceereignissen in Event history(Ereignisverlauf) aufgezeichnet. Sie können die neusten Ereignisse in Ihrem AWS-Konto anzeigen, suchenund herunterladen. Weitere Informationen finden Sie unter Anzeigen von Ereignissen mit dem CloudTrail-API-Ereignisverlauf.

Erstellen Sie für eine fortlaufende Aufzeichnung der Ereignisse in Ihrem AWS-Konto, darunter Ereignissefür S3 Glacier, einen Trail. Ein Trail ermöglicht CloudTrail die Übermittlung von Protokolldateien an einenAmazon S3-Bucket. Wenn Sie einen Pfad in der Konsole anlegen, gilt dieser standardmäßig für alle AWS-Regionen. Der Trail protokolliert Ereignisse aus allen AWS-Regionen in der AWS-Partition und stellt dieProtokolldateien in dem Amazon S3-Bucket bereit, den Sie angeben. Darüber hinaus können Sie andereAWS-Services konfigurieren, um die in den CloudTrail-Protokollen erfassten Ereignisdaten weiter zuanalysieren und entsprechend zu agieren. Weitere Informationen finden Sie unter:

• Übersicht zum Erstellen eines Pfads• In CloudTrail unterstützte Services und Integrationen• Konfigurieren von Amazon SNS-Benachrichtigungen für CloudTrail• Empfangen von CloudTrail-Protokolldateien aus mehreren Regionen und EmpfangenCloudTrail von

Protokolldateien aus mehreren Konten

Alle S3 Glacier-Aktionen werden von CloudTrail protokolliert und in der API-Referenz für Amazon S3Glacier (p. 172) dokumentiert. Zum Beispiel werden durch Aufrufe der Aktionen Create Vault (PUTvault) (p. 199), Delete Vault (DELETE vault) (p. 203) und List Vaults (GET vaults) (p. 227) Einträge inden CloudTrail-Protokolldateien generiert.

Jedes Event oder jeder Protokolleintrag enthält Informationen über den Ersteller der Anfrage. Anhand derIdentitätsinformationen zur Benutzeridentität können Sie Folgendes bestimmen:

• Ob die Anforderung mit Root- oder IAM-Benutzeranmeldeinformationen ausgeführt wurde.

API-Version 2012-06-01168

Page 176: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGrundlagen zu Amazon S3 Glacier-Protokolldateieinträgen

• Ob die Anforderung mit temporären Sicherheitsanmeldeinformationen für eine Rolle oder einenföderierten Benutzer ausgeführt wurde.

• Ob die Anforderung von einem anderen AWS-Service getätigt wurde.

Weitere Informationen finden Sie unter CloudTrail-Element "userIdentity".

Grundlagen zu Amazon S3 Glacier-Protokolldateieinträgen

Ein Trail ist eine Konfiguration, durch die Ereignisse an den von Ihnen angegebenen Amazon S3-Bucketübermittelt werden. CloudTrail-Protokolldateien können einen oder mehrere Einträge enthalten. EinEreignis repräsentiert eine einzelne Anforderung aus einer beliebigen Quelle und enthält unter anderemInformationen über die angeforderte Aktion, das Datum und die Uhrzeit der Aktion sowie über dieAnforderungsparameter. CloudTrail-Protokolldateien sind kein geordnetes Stacktrace der öffentlichen API-Aufrufe und erscheinen daher nicht in einer bestimmten Reihenfolge.

Das folgende Beispiel zeigt einen CloudTrail-Protokolleintrag, der die Aktionen Create Vault (PUTvault) (p. 199), Delete Vault (DELETE vault) (p. 203), List Vaults (GET vaults) (p. 227) und DescribeVault (GET vault) (p. 209) demonstriert.

{ "Records": [ { "awsRegion": "us-east-1", "eventID": "52f8c821-002e-4549-857f-8193a15246fa", "eventName": "CreateVault", "eventSource": "glacier.amazonaws.com", "eventTime": "2014-12-10T19:05:15Z", "eventType": "AwsApiCall", "eventVersion": "1.02", "recipientAccountId": "999999999999", "requestID": "HJiLgvfXCY88QJAC6rRoexS9ThvI21Q1Nqukfly02hcUPPo", "requestParameters": { "accountId": "-", "vaultName": "myVaultName" }, "responseElements": { "location": "/999999999999/vaults/myVaultName" }, "sourceIPAddress": "127.0.0.1", "userAgent": "aws-sdk-java/1.9.6 Mac_OS_X/10.9.5 Java_HotSpot(TM)_64-Bit_Server_VM/25.25-b02/1.8.0_25", "userIdentity": { "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "accountId": "999999999999", "arn": "arn:aws:iam::999999999999:user/myUserName", "principalId": "A1B2C3D4E5F6G7EXAMPLE", "type": "IAMUser", "userName": "myUserName" } }, { "awsRegion": "us-east-1", "eventID": "cdd33060-4758-416a-b7b9-dafd3afcec90", "eventName": "DeleteVault", "eventSource": "glacier.amazonaws.com", "eventTime": "2014-12-10T19:05:15Z", "eventType": "AwsApiCall",

API-Version 2012-06-01169

Page 177: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGrundlagen zu Amazon S3 Glacier-Protokolldateieinträgen

"eventVersion": "1.02", "recipientAccountId": "999999999999", "requestID": "GGdw-VfhVfLCFwAM6iVUvMQ6-fMwSqSO9FmRd0eRSa_Fc7c", "requestParameters": { "accountId": "-", "vaultName": "myVaultName" }, "responseElements": null, "sourceIPAddress": "127.0.0.1", "userAgent": "aws-sdk-java/1.9.6 Mac_OS_X/10.9.5 Java_HotSpot(TM)_64-Bit_Server_VM/25.25-b02/1.8.0_25", "userIdentity": { "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "accountId": "999999999999", "arn": "arn:aws:iam::999999999999:user/myUserName", "principalId": "A1B2C3D4E5F6G7EXAMPLE", "type": "IAMUser", "userName": "myUserName" } }, { "awsRegion": "us-east-1", "eventID": "355750b4-e8b0-46be-9676-e786b1442470", "eventName": "ListVaults", "eventSource": "glacier.amazonaws.com", "eventTime": "2014-12-10T19:05:15Z", "eventType": "AwsApiCall", "eventVersion": "1.02", "recipientAccountId": "999999999999", "requestID": "yPTs22ghTsWprFivb-2u30FAaDALIZP17t4jM_xL9QJQyVA", "requestParameters": { "accountId": "-" }, "responseElements": null, "sourceIPAddress": "127.0.0.1", "userAgent": "aws-sdk-java/1.9.6 Mac_OS_X/10.9.5 Java_HotSpot(TM)_64-Bit_Server_VM/25.25-b02/1.8.0_25", "userIdentity": { "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "accountId": "999999999999", "arn": "arn:aws:iam::999999999999:user/myUserName", "principalId": "A1B2C3D4E5F6G7EXAMPLE", "type": "IAMUser", "userName": "myUserName" } }, { "awsRegion": "us-east-1", "eventID": "569e830e-b075-4444-a826-aa8b0acad6c7", "eventName": "DescribeVault", "eventSource": "glacier.amazonaws.com", "eventTime": "2014-12-10T19:05:15Z", "eventType": "AwsApiCall", "eventVersion": "1.02", "recipientAccountId": "999999999999", "requestID": "QRt1ZdFLGn0TCm784HmKafBmcB2lVaV81UU3fsOR3PtoIiM", "requestParameters": { "accountId": "-", "vaultName": "myVaultName" }, "responseElements": null, "sourceIPAddress": "127.0.0.1", "userAgent": "aws-sdk-java/1.9.6 Mac_OS_X/10.9.5 Java_HotSpot(TM)_64-Bit_Server_VM/25.25-b02/1.8.0_25", "userIdentity": { "accessKeyId": "AKIAIOSFODNN7EXAMPLE",

API-Version 2012-06-01170

Page 178: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGrundlagen zu Amazon S3 Glacier-Protokolldateieinträgen

"accountId": "999999999999", "arn": "arn:aws:iam::999999999999:user/myUserName", "principalId": "A1B2C3D4E5F6G7EXAMPLE", "type": "IAMUser", "userName": "myUserName" } } ]}

API-Version 2012-06-01171

Page 179: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHäufig verwendete Anforderungsheader

API-Referenz für Amazon S3 GlacierAmazon S3 Glacier (S3 Glacier) unterstützt eine Reihe von Operationen, im Besonderen eine Reihe vonRESTful-API-Aufrufen, durch die Sie mit dem Service interagieren können.

Sie können eine beliebige Programmierbibliothek verwenden, die HTTP-Anfragen senden kann, um IhreREST-Anfragen an S3 Glacier zu senden. Wenn eine REST-Anfrage gesendet wird, verlangt S3 Glaciervon Ihnen, jede Anforderung durch eine Signatur zu autorisieren. Außerdem müssen Sie bei Upload einesArchivs die Prüfsumme der Nutzlast berechnen und in Ihrer Anfrage einschließen. Weitere Informationenfinden Sie unter Signieren von Anforderungen (p. 175).

Falls ein Fehler auftritt, müssen Sie wissen, was S3 Glacier in einer Fehlerantwort sendet, damit Siediese Daten verarbeiten können. In diesem Abschnitt werden zusätzlich zur Dokumentation der REST-Operationen alle diese Informationen bereitgestellt, damit Sie REST-API-Aufrufe direkt durchführenkönnen.

Sie können die REST-API-Aufrufe entweder direkt verwenden, oder die AWS-SDKs, die Wrapper-Bibliotheken bereitstellen, um Ihre Programmieraufgabe zu vereinfachen. Diese Bibliotheken signieren jedevon Ihnen gesendete Anfrage und berechnen die Prüfsumme der Nutzlast in Ihrer Anfrage. Dadurch wirdIhre Programmieraufgabe bei Verwendung der AWS-SDKs vereinfacht. Dieser Entwicklerleitfaden bietetfunktionierende Beispiele grundlegender S3 Glacier-Operationen mit AWS SDK for Java und .NET. WeitereInformationen finden Sie unter Verwenden der AWS SDKs mit Amazon S3 Glacier (p. 125).

Themen• Häufig verwendete Anforderungsheader (p. 172)• Allgemeine Antwort-Header (p. 175)• Signieren von Anforderungen (p. 175)• Berechnen von Prüfsummen (p. 179)• Fehlermeldungen (p. 190)• Tresor-Operationen (p. 193)• Archivoperationen (p. 239)• Operationen für mehrteiligen Upload (p. 245)• Auftragsoperationen (p. 269)• In Auftragsoperationen verwendete Datentypen (p. 300)• Datenabrufoperationen (p. 314)

Häufig verwendete AnforderungsheaderAmazon S3 Glacier (S3 Glacier)-REST-Anforderungen schließen Header ein, die grundlegendeInformationen über die Anforderung enthalten. In der folgenden Tabellen werden die Header beschrieben,die in allen S3 Glacier-REST-Anforderungen verwendet werden können.

Header-Name Beschreibung Erforderlich

Authorization Der Header, der zum Signieren von Anforderungenerforderlich ist. S3 Glacier erfordert Signature Version4. Weitere Informationen finden Sie unter Signierenvon Anforderungen (p. 175).

Typ: Zeichenfolge

Ja

API-Version 2012-06-01172

Page 180: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHäufig verwendete Anforderungsheader

Header-Name Beschreibung Erforderlich

Content-Length Die Länge des Anforderungstextes (ohne Header).

Typ: Zeichenfolge

Bedingung: Nur für die Upload Archive (POSTarchive) (p. 242)-API erforderlich.

Bedingt

Date Das Datum, an dem die im Authorization-Headerenthaltene Signatur erstellt werden kann. Wenn derDate-Header zum Signieren verwendet werden soll,muss das Format den Grundsätzen von ISO 8601entsprechen In diesem Fall wird der x-amz-date-Header nicht benötigt. Wenn x-amz-date vorhandenist, hat dieser Wert immer Vorrang vor dem Wert desDate-Headers.

Wenn der Datum-Header nicht zum Signierenverwendet wird, kann er in einem der vollständigenDatumsformate angegeben werden, die durch RFC2616, Abschnitt 3.3, festgelegt sind. Die folgendeDatum-/Uhrzeitangabe Wed, 10 Feb 201712:00:00 GMT ist beispielsweise ein gültiger Datum/Uhrzeit-Header in Verbindung mit S3 Glacier.

Wenn der Date-Header zum Signieren verwendet wird,muss er den Grundsätzen von ISO 8601 entsprechenund im Format YYYYMMDD'T'HHMMSS'Z' angegebenwerden.

Typ: Zeichenfolge

Bedingung: Wenn Date zwar angegeben ist, abernicht das ISO 8601-Grundformat aufweist, muss auchder x-amz-date-Header vorhanden sein. WennDate entsprechend den Grundsätzen von ISO 8601angegeben ist, reicht diese Angabe zum Signieren vonAnforderungen aus und der x-amz-date-Header istnicht erforderlich. Weitere Informationen finden Sieunter Umgang mit Datumswerten in Signature Version4 im Amazon Web Services-Glossar.

Bedingt

Host Dieser Header kennzeichnet den Service-Endpunkt, anden Sie Ihre Anforderungen senden. Der Wert mussdas Format „glacier.region.amazonaws.com“aufweisen, wobei „region“ durch eine AWS-Regionsbezeichnung in der Art us-west-2 ersetztwird.

Typ: Zeichenfolge

Ja

API-Version 2012-06-01173

Page 181: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchHäufig verwendete Anforderungsheader

Header-Name Beschreibung Erforderlich

x-amz-content-sha256 Die berechnete SHA256-Prüfsumme einervollständigen Nutzlast, die entweder mittels UploadArchive (POST archive) (p. 242) oder Upload Part(PUT uploadID) (p. 265) hochgeladen wird. DieserHeader stimmt nicht mit dem x-amz-sha256-tree-hash-Header überein, obwohl für einigekleine Nutzlasten unter Umständen dieselben Werteverwendet werden. Wenn x-amz-content-sha256erforderlich ist, muss sowohl x-amz-content-sha256 als auch x-amz-sha256-tree-hashangegeben werden.

Typ: Zeichenfolge

Bedingung: Erforderlich für Streaming-API, UploadArchive (POST archive) (p. 242) und Upload Part(PUT uploadID) (p. 265).

Bedingt

x-amz-date Das Datum, an dem die Signatur im Autorisierungs-Header erstellt wurde. Das Datum muss denGrundsätzen von ISO 8601 entsprechen und imFormat YYYYMMDD'T'HHMMSS'Z' angegebenwerden. Die folgende Datum/Uhrzeit-Angabe20170210T120000Z ist ein gültiger x-amz-date-Wert für S3 Glacier.

Typ: Zeichenfolge

Bedingung: x-amz-date ist bei allen Anforderungenoptional. Damit kann das Datum überschriebenwerden, das zum Signieren von Anforderungenverwendet wird. Wenn der Date-Header denGrundsätzen von ISO 8601 entspricht, ist x-amz-date nicht erforderlich. Wenn x-amz-date vorhandenist, hat dieser Wert immer Vorrang vor dem Wert desDate-Headers. Weitere Informationen finden Sie unterUmgang mit Datumswerten in Signature Version 4 imAmazon Web Services-Glossar.

Bedingt

x-amz-glacier-version Die zu verwendende S3 Glacier-API-Version. Dieaktuelle Version ist 2012-06-01.

Typ: Zeichenfolge

Ja

API-Version 2012-06-01174

Page 182: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAllgemeine Antwort-Header

Header-Name Beschreibung Erforderlich

x-amz-sha256-tree-hash

Die berechnete SHA256-Struktur-Hash-Prüfsummefür ein hochgeladenes vollständiges Archiv(Upload Archive (POST archive) (p. 242)) oderTeilarchiv (Upload Part (PUT uploadID) (p. 265)).Weitere Informationen zum Berechnen dieserPrüfsumme finden Sie unter Berechnen vonPrüfsummen (p. 179).

Typ: Zeichenfolge

Standard: keiner

Bedingung: Erforderlich für Upload Archive(POST archive) (p. 242) und Upload Part (PUTuploadID) (p. 265).

Bedingt

Allgemeine Antwort-HeaderIn der folgenden Tabelle werden Antwort-Header beschrieben, die für die meisten API-Antworten gelten.

Name Beschreibung

Content-Length Die Länge des Antworttexts in Bytes.

Typ: Zeichenfolge

Date Datum und Uhrzeit der Antwort von Amazon S3 Glacier (S3 Glacier), z. B.Wed, 10 Feb 2017 12:00:00 GMT. Das Datumsformat muss einem dervollständigen Datumsformate folgen, die in RFC 2616, Abschnitt 3.3 angegebensind. Beachten Sie, dass ein zurückgegebenes Date leicht von anderenDaten abweichen kann. So stimmt das von einem Upload Archive (POSTarchive) (p. 242) zurückgegebene Datum möglicherweise nicht mit dem für dasArchiv in einer Bestandsliste für den Tresor angegebenen Datum überein.

Typ: Zeichenfolge

x-amzn-RequestId

Ein von S3 Glacier erstellter Wert, der die Anforderung eindeutig identifiziert. Fallsein Problem mit S3 Glacier auftritt, kann AWS das Problem anhand dieses Wertsbeheben. Es ist empfehlenswert, diese Werte zu protokollieren.

Typ: Zeichenfolge

x-amz-sha256-tree-hash

Die SHA256-Struktur-Hash-Prüfsumme des Archiv- oder Bestandtexts. WeitereInformationen zum Berechnen dieser Prüfsumme finden Sie unter Berechnen vonPrüfsummen (p. 179).

Typ: Zeichenfolge

Signieren von AnforderungenS3 Glacier erfordert, dass Sie jede gesendete Anforderung durch eine Signatur authentifizieren. ZumSignieren einer Anforderung berechnen Sie eine digitale Signatur mit einer kryptografischen Hash-Funktion.

API-Version 2012-06-01175

Page 183: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSignatur-Berechnungsbeispiel

Ein kryptografischer Hash ist eine Funktion, die auf Grundlage der Eingabe einen einzigartigen Hash-Wertzurückgibt. Die Eingabe in die Hash-Funktion besteht aus dem Text Ihrer Anforderung und Ihrem geheimenZugriffsschlüssel. Die Hash-Funktion gibt einen Hash-Wert zurück, den Sie in die Anforderung als IhreSignatur einfügen. Die Signatur ist Teil des Headers Authorization in der Anforderung.

Nach dem Erhalt Ihrer Anforderung berechnet S3 Glacier die Signatur mit derselben Hash-Funktion undden von Ihnen zum Signieren der Anforderung eingegebenen Daten neu. Wenn die so berechnete Signaturmit der Signatur in der Anforderung übereinstimmt, verarbeitet S3 Glacier die Anforderung. Andernfalls wirddie Anforderung abgelehnt.

Die Authentifizierung mittels AWS Signature Version 4 wird von S3 Glacier unterstützt. Der Prozess zumBerechnen einer Signatur lässt sich in drei Aufgaben untergliedern:

• Aufgabe 1: Erstellen einer kanonischen Anforderung

Ordnen Sie Ihre HTTP-Anforderung in einem kanonischen Format neu an. Die Verwendung eineskanonischen Formats ist erforderlich, weil S3 Glacier das gleiche kanonische Format verwendet, wenneine Signatur erneut berechnet wird, um sie mit der von Ihnen gesendeten Signatur zu vergleichen.

• Aufgabe 2: Erstellen einer zu signierenden Zeichenfolge

Erstellen Sie eine Zeichenfolge, die Sie als einen der Eingabewerte für die kryptografische Hash-Funktion nutzen. Die als zu signierende Zeichenfolge bezeichnete Zeichenfolge ist eine Kombination ausdem Namen des Hash-Algorithmus, dem Anforderungsdatum, einer Zeichenfolge mit dem Umfang derAnmeldeinformationen und der kanonischen Anforderung aus der vorherigen Aufgabe. Die Zeichenfolgemit dem Umfang der Anmeldeinformationen selbst ist eine Kombination aus Datum, AWS-Region undServiceinformationen.

• Aufgabe 3: Erstellen einer Signatur

Erstellen Sie eine Signatur für Ihre Anforderung. Verwenden Sie dazu eine kryptografische Hash-Funktion, die zwei Eingabezeichenfolgen akzeptiert: die zu signierende Zeichenfolge und einenabgeleiteten Schlüssel. Der abgeleitete Schlüssel wird unter Nutzung des geheimen Zugriffsschlüsselsund der Zeichenfolge mit dem Umfang der Anmeldeinformationen berechnet, um eine Reihe von Hash-Nachrichtenauthentifizierungscodes (Hashed Message Authentication Code, HMAC) zu erstellen.Beachten Sie, dass die bei diesem Signaturschritt verwendete Hash-Funktion nicht mit dem Struktur-Hash-Algorithmus übereinstimmt, der von S3 Glacier-APIs verwendet wird, die Daten hochladen.

Themen• Signatur-Berechnungsbeispiel (p. 176)• Berechnen von Signaturen für Streaming-Operationen (p. 178)

Signatur-BerechnungsbeispielDas folgende Beispiel macht Sie damit vertraut, wie Sie eine Signatur für Create Vault(PUT vault) (p. 199) erstellen. Das Beispiel kann als Referenz verwendet werden, um IhreSignaturberechnungsmethode zu überprüfen. Andere Referenzberechnungen finden Sie in derSignaturversion 4-Testsuite des Amazon Web Services-Glossars.

In diesem Beispiel wird Folgendes angenommen:

• Der Zeitstempel der Anforderung ist Fri, 25 May 2012 00:24:53 GMT.• Der Endpunkt ist Region USA Ost (N.-Virginia) us-east-1.

Die allgemeine Anforderungssyntax (einschließlich JSON-Text) ist:

API-Version 2012-06-01176

Page 184: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSignatur-Berechnungsbeispiel

PUT /-/vaults/examplevault HTTP/1.1Host: glacier.us-east-1.amazonaws.comDate: Fri, 25 May 2012 00:24:53 GMTAuthorization: SignatureToBeCalculatedx-amz-glacier-version: 2012-06-01

Die kanonische Form der für Aufgabe 1: Erstellen einer kanonischen Anforderung (p. 176) berechnetenAnforderung ist:

PUT/-/vaults/examplevault

host:glacier.us-east-1.amazonaws.comx-amz-date:20120525T002453Zx-amz-glacier-version:2012-06-01

host;x-amz-date;x-amz-glacier-versione3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Die letzte Zeile der kanonischen Anforderungen ist der Hash des Anforderungstextes. Beachten Sie auchdie leere dritte Zeile in der kanonischen Anforderung. Der Grund dafür ist, dass es keine Abfrageparameterfür diese API gibt.

Die zu signierende Zeichenfolge für Aufgabe 2: Erstellen einer zu signierenden Zeichenfolge (p. 176) ist:

AWS4-HMAC-SHA25620120525T002453Z20120525/us-east-1/glacier/aws4_request5f1da1a2d0feb614dd03d71e87928b8e449ac87614479332aced3a701f916743

Die erste Zeile der zu signierenden Zeichenfolge ist der Name des Algorithmus, die zweite Zeile derZeitstempel, die dritte Zeile der Geltungsbereich der Anmeldeinformationen und die letzte Zeile ein Hashder kanonischen Anforderung aus Aufgabe 1: Erstellen einer kanonischen Anforderung (p. 176). Indem Geltungsbereich für die Anmeldeinformationen ist auch u.a. der Name des zu verwenden Serviceangegeben, glacier.

Für Aufgabe 3: Erstellen einer Signatur (p. 176) kann der abgeleitete Schlüssel wie folgt dargestelltwerden:

derived key = HMAC(HMAC(HMAC(HMAC("AWS4" + YourSecretAccessKey,"20120525"),"us-east-1"),"glacier"),"aws4_request")

Wenn der geheime Zugriffsschlüssel wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY verwendetwird, lautet die berechnete Signatur:

3ce5b2f2fffac9262b4da9256f8d086b4aaf42eba5f111c21681a65a127b7c2a

Der letzte Schritt besteht im Erstellen des Authorization-Headers. Für den Demo-ZugriffsschlüsselAKIAIOSFODNN7EXAMPLE (mit hinzugefügten Zeilenumbrüchen zur besseren Lesbarkeit) lautet derHeader:

API-Version 2012-06-01177

Page 185: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBerechnen von Signaturen für Streaming-Operationen

Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20120525/us-east-1/glacier/aws4_request, SignedHeaders=host;x-amz-date;x-amz-glacier-version, Signature=3ce5b2f2fffac9262b4da9256f8d086b4aaf42eba5f111c21681a65a127b7c2a

Berechnen von Signaturen für Streaming-OperationenUpload Archive (POST archive) (p. 242) und Upload Part (PUT uploadID) (p. 265) sind Streaming-Operationen, für die Sie beim Signieren und Senden der Anforderung einen zusätzlichen Header x-amz-content-sha256 angeben müssen. Die Signierschritte für die Streaming-Operationen sind mit denSchritten für andere Operationen identisch. Es muss lediglich ein Streaming-Header hinzugefügt werden.

Die Berechnung des Streaming-Headers x-amz-content-sha256 beruht auf dem SHA256-Hash desgesamten Inhalts (Nutzlast), der hochgeladen werden soll. Beachten Sie, dass diese Berechnung sichvom SHA256-Struktur-Hash (Berechnen von Prüfsummen (p. 179)) unterscheidet. Außer in trivialenEinzelfällen unterscheidet sich der SHA 256-Hash-Wert der Nutzlastdaten vom SHA256-Struktur-Hash derNutzlastdaten.

Wenn die Nutzlastdaten in Form eines Byte-Arrays angegeben werden, können Sie das folgende Java-Code-Snippet zur Berechnung des SHA256-Hash verwenden.

public static byte[] computePayloadSHA256Hash2(byte[] payload) throws NoSuchAlgorithmException, IOException { BufferedInputStream bis = new BufferedInputStream(new ByteArrayInputStream(payload)); MessageDigest messageDigest = MessageDigest.getInstance("SHA-256"); byte[] buffer = new byte[4096]; int bytesRead = -1; while ( (bytesRead = bis.read(buffer, 0, buffer.length)) != -1 ) { messageDigest.update(buffer, 0, bytesRead); } return messageDigest.digest();}

In C# können Sie das SHA256-Hash der Nutzlastdaten auf ähnliche Weise berechnen, wie im folgendenCode-Snippet gezeigt.

public static byte[] CalculateSHA256Hash(byte[] payload){ SHA256 sha256 = System.Security.Cryptography.SHA256.Create(); byte[] hash = sha256.ComputeHash(payload);

return hash;}

Signatur-Berechnungsbeispiel für die Streaming-APIDas folgende Beispiel macht Sie damit vertraut, wie Sie eine Signatur für Upload Archive (POSTarchive) (p. 242), eine der beiden Streaming-APIs in S3 Glacier, erstellen. In diesem Beispiel wirdFolgendes angenommen:

• Der Zeitstempel der Anforderung ist Mon, 07 May 2012 00:00:00 GMT.• Der Endpunkt ist Region USA Ost (N.-Virginia), us-east-1.• Die Inhaltsnutzlast ist die Zeichenfolge „Willkommen bei S3 Glacier.“

API-Version 2012-06-01178

Page 186: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBerechnen von Prüfsummen

Die allgemeine Anforderungssyntax (einschließlich JSON-Text) ist unten im Beispiel zu sehen. BeachtenSie, dass der Header x-amz-content-sha256 eingeschlossen ist. In diesem vereinfachten Beispielhaben x-amz-sha256-tree-hash und x-amz-content-sha256 denselben Wert. Beim Hochladen vonArchiven, die größer als 1 MB sind, ist dies jedoch nicht der Fall.

POST /-/vaults/examplevault HTTP/1.1Host: glacier.us-east-1.amazonaws.comDate: Mon, 07 May 2012 00:00:00 GMTx-amz-archive-description: my archivex-amz-sha256-tree-hash: SHA256 tree hashx-amz-content-sha256: SHA256 payload hash Authorization: SignatureToBeCalculatedx-amz-glacier-version: 2012-06-01

Die kanonische Form der Anforderung, die für Aufgabe 1: Erstellen einer kanonischenAnforderung (p. 176) berechnet wird, ist unten zu sehen. Beachten Sie, dass der Streaming-Headerx-amz-content-sha256 mit seinem Wert eingeschlossen ist. Das bedeutet, dass zuerst die Nutzlastgelesen und der SHA256-Hash berechnet werden muss, bevor die Signatur berechnet wird.

POST/-/vaults/examplevault

host:glacier.us-east-1.amazonaws.comx-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628x-amz-date:20120507T000000Zx-amz-glacier-version:2012-06-01

host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628

Der Rest der Signaturberechnung erfolgt entsprechend den unter Signatur-Berechnungsbeispiel (p. 176)beschriebenen Schritten. Der Authorization-Header mit dem geheimen ZugriffschlüsselwJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY und dem Zugriffschlüssel AKIAIOSFODNN7EXAMPLE(mit hinzugefügten Zeilenumbrüchen zur besseren Lesbarkeit) ist unten dargestellt:

Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20120507/us-east-1/glacier/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version, Signature=b092397439375d59119072764a1e9a144677c43d9906fd98a5742c57a2855de6

Berechnen von PrüfsummenBei einem Archiv-Upload müssen die Header x-amz-sha256-tree-hash und x-amz-content-sha256 enthalten sein. Der x-amz-sha256-tree-hash-Header ist eine Prüfsumme der Nutzlast inIhrem Anfragetext. In diesem Thema wird die Berechnung des x-amz-sha256-tree-hash-Headersbeschrieben. Der x-amz-content-sha256-Header ist ein Hash der gesamten Nutzlast und ist für dieAutorisierung erforderlich. Weitere Informationen finden Sie unter Signatur-Berechnungsbeispiel für dieStreaming-API (p. 178).

Die Nutzlast Ihrer Anfrage kann Folgendes sein:

• Gesamtes Archiv – Beim Upload eines Archivs in einer einzelnen Anfrage mit der „Upload Archive“-API senden Sie das gesamte Archiv im Anfragetext. In diesem Fall muss die Prüfsumme des gesamtenArchivs enthalten sein.

API-Version 2012-06-01179

Page 187: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchStruktur-Hash-Beispiel 1: Hochladen

eines Archivs in einer einzelnen Anfrage

• Archivteil – Beim Upload eines Archivs in Teilen mit der API für mehrteiligen Upload senden Sie nureinen Teil des Archivs im Anfragetext. In diesem Fall ist die Prüfsumme des Archivteils enthalten.Nachdem Sie alle Teile hochgeladen haben, senden Sie eine „Complete Multipart Upload“-Anfrage, inder die Prüfsumme des gesamten Archivs enthalten sein muss.

Die Prüfsumme für die Nutzlast ist ein SHA-256-Struktur-Hash. Dies wird als Struktur-Hash bezeichnet, dabei der Berechnung der Prüfsumme die Struktur eines SHA-256-Hash-Werts berechnet wird. Der Hash-Wert am Stamm ist die Prüfsumme des gesamten Archivs.

Note

In diesem Abschnitt wird eine Möglichkeit zur Berechnung des SHA-256-Struktur-Hashsbeschrieben. Allerdings können Sie einen beliebigen Vorgang verwenden, bei dem das gleicheErgebnis erzielt wird.

Der SHA-256-Struktur-Hash wird wie folgt berechnet:

1. Berechnen Sie den SHA-256-Hash für jeden 1 MB großen Teil der Nutzlastdaten. Der letzte Datenanteilkann kleiner als 1 MB sein. Wenn Sie beispielsweise ein Archiv mit 3,2 MB hochladen, berechnen Siedie SHA-256-Hash-Werte für jeden der ersten drei 1 MB großen Datenstücke und berechnen dannden SHA-256-Hash der verbleibenden 0,2 MB Daten. Diese Hash-Werte formen die Blattknoten derBaumstruktur.

2. Erstellen Sie die nächste Ebene der Baumstruktur.a. Verketten Sie die Hash-Werte von zwei aufeinanderfolgenden untergeordneten Knoten und

berechnen Sie den SHA-256-Wert der verketteten Hash-Werte. Durch diese Verkettung undErstellung des SHA-256-Hashs wird ein übergeordneten Knoten für die beiden untergeordnetenKnoten erstellt.

b. Wenn nur ein untergeordneter Knoten übrig bleibt, heben Sie diesen Hash-Wert auf die nächsteEbene in der Baumstruktur an.

3. Wiederholen Sie Schritt 2, bis die sich daraus ergebende Struktur einen Stamm hat. Der Stamm derBaumstruktur stellt einen Hash des gesamten Archivs bereit und ein Stamm der entsprechendenNebenstruktur stellt den Hash des Teils eines mehrteiligen Uploads bereit.

Themen• Struktur-Hash-Beispiel 1: Hochladen eines Archivs in einer einzelnen Anfrage (p. 180)• Struktur-Hash-Beispiel 2: Hochladen eines Archivs mit einem mehrteiligen Upload (p. 181)• Berechnen des Struktur-Hashs einer Datei (p. 182)• Erhalten von Prüfsummen bei Daten-Download (p. 188)

Struktur-Hash-Beispiel 1: Hochladen eines Archivs ineiner einzelnen AnfrageWenn Sie ein Archiv in einer einzelnen Anfrage mit der „Upload Archive“-API hochladen (Informationendazu unter Upload Archive (POST archive) (p. 242)), ist das gesamte Archiv in der Anfragenutzlastenthalten. Dem entsprechend muss der Struktur-Hash des gesamten Archivs im x-amz-sha256-tree-hash-Anfrage-Header enthalten sein. Angenommen, Sie möchten ein Archiv mit 6,5 MB hochladen. Dasfolgende Diagramm verdeutlicht den Vorgang zur Erstellung eines SHA-256-Hashs für das Archiv. Sielesen das Archiv und berechnen den SHA-256-Hash für jeden 1 MB große Teil. Sie berechnen den Hashfür die 0,5 MB der verbleiben Daten und erstellen die Struktur wie in den folgenden Schritten beschrieben.

API-Version 2012-06-01180

Page 188: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchStruktur-Hash-Beispiel 2: Hochladen eines

Archivs mit einem mehrteiligen Upload

Struktur-Hash-Beispiel 2: Hochladen eines Archivs miteinem mehrteiligen UploadDer Vorgang zur Berechnung des Struktur-Hashs beim Upload eines Archivs mittels mehrteiligem Uploadentspricht dem Archiv-Upload in einer einzelnen Anfrage. Der einzige Unterschied besteht darin, dass beieinem mehrteiligen Upload in jeder Anfrage (mit der Upload Part (PUT uploadID) (p. 265)-API) nur einTeil des Archivs hochgeladen wird, und Sie daher die Prüfsumme nur dieses Teils im x-amz-sha256-tree-hash-Anfrage-Header bereitstellen. Nachdem alle Teile hochgeladen wurden, müssen Sie allerdingsdie „Complete Multipart Upload“-Anfrage senden (Informationen unter Complete Multipart Upload (POSTuploadID) (p. 248)), wobei der Struktur-Hash des gesamten Archivs im x-amz-sha256-tree-hash-Anfrage-Header enthalten ist.

API-Version 2012-06-01181

Page 189: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBerechnen des Struktur-Hashs einer Datei

Berechnen des Struktur-Hashs einer DateiDie hier gezeigten Algorithmen wurden zu Demonstrationszwecken ausgewählt. Sie können den Codenach Bedarf für Ihr Implementierungsszenario optimieren. Wenn Sie ein AWS-SDK zur Programmierung inAmazon S3 Glacier (S3 Glacier) verwenden, wird die Struktur-Hash-Berechnung für Sie durchgeführt, undSie müssen lediglich den Dateiverweis bereitstellen.

Example 1: Java-Beispiel

Im folgenden Beispiel wird verdeutlicht, wie der SHA256-Struktur-Hash einer Datei mit Java berechnet wird.Sie können dieses Beispiel entweder ausführen, indem Sie den Speicherort einer Datei als ein Argumentangeben, oder Sie können die TreeHashExample.computeSHA256TreeHash-Methode direkt aus IhremCode verwenden.

import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;

public class TreeHashExample {

static final int ONE_MB = 1024 * 1024;

/** * Compute the Hex representation of the SHA-256 tree hash for the specified * File * * @param args * args[0]: a file to compute a SHA-256 tree hash for */ public static void main(String[] args) {

if (args.length < 1) { System.err.println("Missing required filename argument"); System.exit(-1); }

File inputFile = new File(args[0]); try {

byte[] treeHash = computeSHA256TreeHash(inputFile); System.out.printf("SHA-256 Tree Hash = %s\n", toHex(treeHash));

} catch (IOException ioe) { System.err.format("Exception when reading from file %s: %s", inputFile, ioe.getMessage()); System.exit(-1);

} catch (NoSuchAlgorithmException nsae) { System.err.format("Cannot locate MessageDigest algorithm for SHA-256: %s", nsae.getMessage()); System.exit(-1); } }

/** * Computes the SHA-256 tree hash for the given file * * @param inputFile * a File to compute the SHA-256 tree hash for * @return a byte[] containing the SHA-256 tree hash * @throws IOException

API-Version 2012-06-01182

Page 190: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBerechnen des Struktur-Hashs einer Datei

* Thrown if there's an issue reading the input file * @throws NoSuchAlgorithmException */ public static byte[] computeSHA256TreeHash(File inputFile) throws IOException, NoSuchAlgorithmException {

byte[][] chunkSHA256Hashes = getChunkSHA256Hashes(inputFile); return computeSHA256TreeHash(chunkSHA256Hashes); }

/** * Computes a SHA256 checksum for each 1 MB chunk of the input file. This * includes the checksum for the last chunk even if it is smaller than 1 MB. * * @param file * A file to compute checksums on * @return a byte[][] containing the checksums of each 1 MB chunk * @throws IOException * Thrown if there's an IOException when reading the file * @throws NoSuchAlgorithmException * Thrown if SHA-256 MessageDigest can't be found */ public static byte[][] getChunkSHA256Hashes(File file) throws IOException, NoSuchAlgorithmException {

MessageDigest md = MessageDigest.getInstance("SHA-256");

long numChunks = file.length() / ONE_MB; if (file.length() % ONE_MB > 0) { numChunks++; }

if (numChunks == 0) { return new byte[][] { md.digest() }; }

byte[][] chunkSHA256Hashes = new byte[(int) numChunks][]; FileInputStream fileStream = null;

try { fileStream = new FileInputStream(file); byte[] buff = new byte[ONE_MB];

int bytesRead; int idx = 0;

while ((bytesRead = fileStream.read(buff, 0, ONE_MB)) > 0) { md.reset(); md.update(buff, 0, bytesRead); chunkSHA256Hashes[idx++] = md.digest(); }

return chunkSHA256Hashes;

} finally { if (fileStream != null) { try { fileStream.close(); } catch (IOException ioe) { System.err.printf("Exception while closing %s.\n %s", file.getName(), ioe.getMessage()); } } } }

API-Version 2012-06-01183

Page 191: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBerechnen des Struktur-Hashs einer Datei

/** * Computes the SHA-256 tree hash for the passed array of 1 MB chunk * checksums. * * This method uses a pair of arrays to iteratively compute the tree hash * level by level. Each iteration takes two adjacent elements from the * previous level source array, computes the SHA-256 hash on their * concatenated value and places the result in the next level's destination * array. At the end of an iteration, the destination array becomes the * source array for the next level. * * @param chunkSHA256Hashes * An array of SHA-256 checksums * @return A byte[] containing the SHA-256 tree hash for the input chunks * @throws NoSuchAlgorithmException * Thrown if SHA-256 MessageDigest can't be found */ public static byte[] computeSHA256TreeHash(byte[][] chunkSHA256Hashes) throws NoSuchAlgorithmException {

MessageDigest md = MessageDigest.getInstance("SHA-256");

byte[][] prevLvlHashes = chunkSHA256Hashes;

while (prevLvlHashes.length > 1) {

int len = prevLvlHashes.length / 2; if (prevLvlHashes.length % 2 != 0) { len++; }

byte[][] currLvlHashes = new byte[len][];

int j = 0; for (int i = 0; i < prevLvlHashes.length; i = i + 2, j++) {

// If there are at least two elements remaining if (prevLvlHashes.length - i > 1) {

// Calculate a digest of the concatenated nodes md.reset(); md.update(prevLvlHashes[i]); md.update(prevLvlHashes[i + 1]); currLvlHashes[j] = md.digest();

} else { // Take care of remaining odd chunk currLvlHashes[j] = prevLvlHashes[i]; } }

prevLvlHashes = currLvlHashes; }

return prevLvlHashes[0]; }

/** * Returns the hexadecimal representation of the input byte array * * @param data * a byte[] to convert to Hex characters * @return A String containing Hex characters */ public static String toHex(byte[] data) { StringBuilder sb = new StringBuilder(data.length * 2);

API-Version 2012-06-01184

Page 192: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBerechnen des Struktur-Hashs einer Datei

for (int i = 0; i < data.length; i++) { String hex = Integer.toHexString(data[i] & 0xFF);

if (hex.length() == 1) { // Append leading zero. sb.append("0"); } sb.append(hex); } return sb.toString().toLowerCase(); }}

Example 2: C# .NET-Beispiel

Im folgenden Beispiel wird verdeutlicht, wie der SHA256-Struktur-Hash einer Datei berechnet wird. Siekönnen dieses Beispiel ausführen, indem Sie den Speicherort der Datei als Argument angeben.

using System;using System.IO;

using System.Security.Cryptography;

namespace ExampleTreeHash{ class Program { static int ONE_MB = 1024 * 1024;

/** * Compute the Hex representation of the SHA-256 tree hash for the * specified file * * @param args * args[0]: a file to compute a SHA-256 tree hash for */ public static void Main(string[] args) { if (args.Length < 1) { Console.WriteLine("Missing required filename argument"); Environment.Exit(-1); } FileStream inputFile = File.Open(args[0], FileMode.Open, FileAccess.Read); try { byte[] treeHash = ComputeSHA256TreeHash(inputFile); Console.WriteLine("SHA-256 Tree Hash = {0}", BitConverter.ToString(treeHash).Replace("-", "").ToLower()); Console.ReadLine(); Environment.Exit(-1); } catch (IOException ioe) { Console.WriteLine("Exception when reading from file {0}: {1}", inputFile, ioe.Message); Console.ReadLine(); Environment.Exit(-1); } catch (Exception e) { Console.WriteLine("Cannot locate MessageDigest algorithm for SHA-256: {0}", e.Message); Console.WriteLine(e.GetType());

API-Version 2012-06-01185

Page 193: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBerechnen des Struktur-Hashs einer Datei

Console.ReadLine(); Environment.Exit(-1); } Console.ReadLine(); }

/** * Computes the SHA-256 tree hash for the given file * * @param inputFile * A file to compute the SHA-256 tree hash for * @return a byte[] containing the SHA-256 tree hash */ public static byte[] ComputeSHA256TreeHash(FileStream inputFile) { byte[][] chunkSHA256Hashes = GetChunkSHA256Hashes(inputFile); return ComputeSHA256TreeHash(chunkSHA256Hashes); }

/** * Computes a SHA256 checksum for each 1 MB chunk of the input file. This * includes the checksum for the last chunk even if it is smaller than 1 MB. * * @param file * A file to compute checksums on * @return a byte[][] containing the checksums of each 1MB chunk */ public static byte[][] GetChunkSHA256Hashes(FileStream file) { long numChunks = file.Length / ONE_MB; if (file.Length % ONE_MB > 0) { numChunks++; }

if (numChunks == 0) { return new byte[][] { CalculateSHA256Hash(null, 0) }; } byte[][] chunkSHA256Hashes = new byte[(int)numChunks][];

try { byte[] buff = new byte[ONE_MB];

int bytesRead; int idx = 0;

while ((bytesRead = file.Read(buff, 0, ONE_MB)) > 0) { chunkSHA256Hashes[idx++] = CalculateSHA256Hash(buff, bytesRead); } return chunkSHA256Hashes; } finally { if (file != null) { try { file.Close(); } catch (IOException ioe) {

API-Version 2012-06-01186

Page 194: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBerechnen des Struktur-Hashs einer Datei

throw ioe; } } }

}

/** * Computes the SHA-256 tree hash for the passed array of 1MB chunk * checksums. * * This method uses a pair of arrays to iteratively compute the tree hash * level by level. Each iteration takes two adjacent elements from the * previous level source array, computes the SHA-256 hash on their * concatenated value and places the result in the next level's destination * array. At the end of an iteration, the destination array becomes the * source array for the next level. * * @param chunkSHA256Hashes * An array of SHA-256 checksums * @return A byte[] containing the SHA-256 tree hash for the input chunks */ public static byte[] ComputeSHA256TreeHash(byte[][] chunkSHA256Hashes) { byte[][] prevLvlHashes = chunkSHA256Hashes; while (prevLvlHashes.GetLength(0) > 1) {

int len = prevLvlHashes.GetLength(0) / 2; if (prevLvlHashes.GetLength(0) % 2 != 0) { len++; }

byte[][] currLvlHashes = new byte[len][];

int j = 0; for (int i = 0; i < prevLvlHashes.GetLength(0); i = i + 2, j++) {

// If there are at least two elements remaining if (prevLvlHashes.GetLength(0) - i > 1) {

// Calculate a digest of the concatenated nodes byte[] firstPart = prevLvlHashes[i]; byte[] secondPart = prevLvlHashes[i + 1]; byte[] concatenation = new byte[firstPart.Length + secondPart.Length]; System.Buffer.BlockCopy(firstPart, 0, concatenation, 0, firstPart.Length); System.Buffer.BlockCopy(secondPart, 0, concatenation, firstPart.Length, secondPart.Length);

currLvlHashes[j] = CalculateSHA256Hash(concatenation, concatenation.Length);

} else { // Take care of remaining odd chunk currLvlHashes[j] = prevLvlHashes[i]; } }

prevLvlHashes = currLvlHashes; }

API-Version 2012-06-01187

Page 195: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErhalten von Prüfsummen bei Daten-Download

return prevLvlHashes[0]; }

public static byte[] CalculateSHA256Hash(byte[] inputBytes, int count) { SHA256 sha256 = System.Security.Cryptography.SHA256.Create(); byte[] hash = sha256.ComputeHash(inputBytes, 0, count); return hash; } }}

Erhalten von Prüfsummen bei Daten-DownloadBeim Abrufen eines Archivs mit der „Initiate Job“-API (Informationen unter Initiate Job (POSTjobs) (p. 284)) können Sie optional einen abzurufenden Bereich des Archivs angeben. Beim Abrufeneines Archivs mit der „Get Job Output“-API (Informationen unter Get Job Output (GET output) (p. 277))können Sie optional einen abzurufenden Bereich des Archivs angeben. Es ist wichtig, dass Sie zweiMerkmale dieser Bereiche verstehen, wenn Sie Ihre Archivdaten abrufen und herunterladen. Derabzurufende Bereich muss durch Megabytewerte auf das Archiv beziehen. Sowohl der abzurufende alsauch der herunterzuladende Bereich muss sich durch Struktur-Hash-Werte zuordnen lassen, um die Werteder Prüfsumme zu erhalten, wenn Sie Ihre Daten herunterladen. Die beiden Typen der Bereichszuordnungwerden wie folgt definiert:

• Durch Megabyte-Werte zugeordnet – Ein Bereich [StartByte, EndByte] ist durch Megabytewertezugeordnet (1024*1024), wenn StartBytes durch 1 MB dividierbar ist und EndBytes plus 1 durch 1 MBdividierbar oder gleich dem Ende des angegebenen Archivs (Archiv-Byte-Größe minus 1) ist. Ein in der„Initiate Job“-API verwendeter Bereich, sofern angegeben, muss durch Megabytewerte zugeordnet sein.

• Durch Struktur-Hash-Werte zugeordnet – Ein Bereich [StartBytes, EndBytes] gilt nur dann in Bezug aufein Archiv als durch Struktur-Hash-Werte zugeordnet, wenn der Stamm des für den Bereich erstelltenStruktur-Hashs einem Knoten in dem Struktur-Hash des gesamten Archivs entspricht. Sowohl derabzurufende als auch der herunterzuladende Bereich muss durch Struktur-Hash-Werte zugeordnet sein,um die Werte der Prüfsumme für Ihre heruntergeladenen Daten zu erhalten. Ein Beispiel für Bereicheund deren Beziehungen zum Archiv-Struktur-Hash finden Sie unter Struktur-Hash-Beispiel: Abrufen einesdurch Struktur-Hash-Werte zugeordneten Archivbereichs (p. 189).

Beachten Sie, dass ein durch Struktur-Hash-Werte zugeordneter Bereich zudem durch Megabyte-Wertezugeordnet ist. Ein durch Megabyte-Werte zugeordneter Bereich ist allerdings nicht notwendigerweisedurch Struktur-Hash-Werte zugeordnet.

Mit den folgenden Fällen wird beschreiben, wann Sie beim Download Ihrer Archivdaten einenPrüfsummenwert erhalten:

• Wenn Sie in der „Initiate Job“-Anfrage keinen abzurufenden Bereich angeben und das gesamte Archiv inder „Get Job“-Anfrage herunterladen.

• Wenn Sie in der „Initiate Job“-Anfrage keinen abzurufenden Bereich angeben und einen durch Struktur-Hash-Werte zugeordneten Bereich zum Download in der „Get Job“-Anfrage angeben.

• Wenn Sie in der „Initiate Job“-Anfrage keinen durch Struktur-Hash-Werte zugeordneten Bereich angebenund den gesamten Bereich in der „Get Job“-Anfrage herunterladen.

• Wenn Sie in der „Initiate Job“-Anfrage einen durch Struktur-Hash-Werte zugeordneten Bereich angebenund einen durch Struktur-Hash-Werte zugeordneten Bereich zum Download in der „Get Job“-Anfrageangeben.

API-Version 2012-06-01188

Page 196: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchErhalten von Prüfsummen bei Daten-Download

Wenn Sie einen abzurufenden Bereich in der „Initiate Job“-Anfrage angeben, der nicht auf einStruktur-Hash bezogen ist, dann können Sie Ihre Archivdaten dennoch abrufen, aber es werden keinePrüfsummenwerte zurückgegeben, wenn Sie die Daten in der „Get Job“-Anfrage herunterladen.

Struktur-Hash-Beispiel: Abrufen eines durch Struktur-Hash-Wertezugeordneten ArchivbereichsAngenommen, es ist ein 6,5 MB großes Archiv in Ihrem Tresor vorhanden und Sie möchten 2 MB desArchivs abrufen. Wie Sie den 2-MB-Bereich in der „Initiate Job“-Anfrage angeben, bestimmt, ob Sie beimDownload der Daten Prüfsummenwerte für die Daten erhalten. Im folgenden Diagramm werden zwei 2 MBgroße Bereiche für 6,5 MB große Archive dargestellt, die heruntergeladen werden können. Beide Bereichesind durch Megabyte-Werte zugeordnet, aber nur eins ist durch Struktur-Hash-Werte zugeordnet.

Durch Struktur-Hash-Werte zugeordnet BereichsangabeIn diesem Abschnitt wird genau angegeben, was einen durch Struktur-Hash-Werte zugeordneten Bereichausmacht. Durch Struktur-Hash-Werte zugeordnete Bereiche sind wichtig, wenn Sie einen Teil einesArchivs herunterladen und Sie den abzurufenden Datenbereich und den herunterzuladenden Bereich ausden abgerufenen Daten angeben. Wenn diese beiden Bereiche durch Struktur-Hash-Werte zugeordnetsind, erhalten Sie beim Download der Daten Prüfsummendaten.

Ein Bereich [A, B] gilt nur dann hinsichtlich eines Archiv als durch Struktur-Hash-Werte zugeordnet, wennein neuer Struktur-Hash über [A, B] des Stamm des für den Bereich erstellten Struktur-Hashs einem Knotenin dem Struktur-Hash des gesamten Archivs entspricht. Dies wird im Diagramm in Struktur-Hash-Beispiel:Abrufen eines durch Struktur-Hash-Werte zugeordneten Archivbereichs (p. 189) verdeutlicht. In diesemAbschnitt werden die Angaben für Struktur-Hash-Zuordnung bereitgestellt.

Beachten Sie [P, Q] als die Bereichsabfrage für ein Archiv von N Megabyte (MB). Wobei P sowie QMehrfache eines MB sind. Beachten Sie, dass der tatsächliche eingeschlossene Bereich [P MB, Q MB –1 Byte] ist. Zur Vereinfachung zeigen wir dies allerdings als [P, Q]. Demnach ergibt sich Folgendes:

• Wenn P eine ungerade Zahl ist, gibt es nur einen möglichen durch Struktur-Hash-Werte zugeordnetenBereich – [P, P + 1 MB].

• Wenn P eine gerade Zahl und k die Maximalzahl ist, wobei P als 2k * X geschrieben werden kann, dannsind höchstens k durch Struktur-Hash-Werte zugeordnete Bereiche möglich, die mit P beginnen. X isteine Ganzzahl größer als 0. Die durch Struktur-Hash-Werte zugeordneten Bereiche fallen in folgendeKategorien:

API-Version 2012-06-01189

Page 197: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFehlermeldungen

• Für jedes i, wobei (0 <= i <= k) ist und P + 2i < N ist, dann ist [P, Q + 2i] ein durch Struktur-Hash-Wertezugeordneter Bereich.

• P = 0 ist ein besonderer Fall, bei dem A = 2[lgN]*0 ist.

FehlermeldungenIm Falle eines Fehlers gibt die API eine der folgenden Ausnahmen zurück:

Code Beschreibung HTTP-Statuscode

Typ

AccessDeniedException Wird zurückgegeben, wenn eseinen versuchten Zugriff auf eineRessource gab, der von einer AWSIdentity and Access Management(IAM)-Richtlinie nicht erlaubt ist,oder wenn die falsche AWS-Konto-ID in dem Anfrage-URI verwendetwurde. Weitere Informationenfinden Sie unter Identitäts- undZugriffsverwaltung in Amazon S3Glacier (p. 135).

403Forbidden

Client

BadRequest Wird zurückgegeben, wenn dieAnfrage nicht verarbeitet werdenkann.

400 BadRequest

Client

ExpiredTokenException Wird zurückgegeben, wenn das inder Anfrage verwendete Sicherheits-Token abgelaufen ist.

403Forbidden

Client

InsufficientCapacityExceptionWird zurückgegeben, wenn nichtausreichende Kapazität vorhandenist, um die beschleunigte Anfrage zuverarbeiten. Dieser Fehler gilt nur fürbeschleunigte Abrufe und nicht fürStandard- oder Massenabrufe.

503 ServiceUnavailable

herstellen

InvalidParameterValueExceptionWird zurückgegeben, wenn einParameter der Anfrage falschangegeben wurde.

400 BadRequest

Client

InvalidSignatureException Wird zurückgegeben, wenn dieAnfragesignatur ungültig ist.

403Forbidden

Client

LimitExceededException Wird zurückgegeben, wenn dieAnfrage dazu führt, dass einesder folgenden Limits überschrittenwird: ein Tresorlimit, ein Tags-Limitoder das Limit der bereitgestelltenKapazität.

400 BadRequest

Client

MissingAuthenticationTokenExceptionWird zurückgegeben, wenn keineAuthentifizierungsdaten für dieAnfrage gefunden werden.

400 BadRequest

Client

API-Version 2012-06-01190

Page 198: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBeispiel 1: Beschreiben einer Auftragsanfrage

mit einer Auftrags-ID, die nicht existiert

Code Beschreibung HTTP-Statuscode

Typ

MissingParameterValueExceptionWird zurückgegeben, wennein erforderlicher Header oderParameter in der Anfrage fehlt.

400 BadRequest

Client

PolicyEnforcedException Wird zurückgegeben, wenn einAbrufauftrag das Limit der Abrufrateder aktuellen Datenrichtlinieüberschreitet. Weitere Informationenzu Datenabrufrichtlinien finden Sieunter Amazon S3 Glacier-Richtlinienfür den Datenabruf (p. 162).

400 BadRequest

Client

ResourceNotFoundException Wird zurückgegeben, wenn dieangegebene Ressource, wie z. B.ein Tresor, Upload-ID oder Auftrags-ID nicht vorhanden ist.

404 NotFound

Client

RequestTimeoutException Wird zurückgegeben, wenn eswährend des Hochladens einesArchivs bei Amazon S3 Glacier (S3Glacier) zu einem Timeout kommt.

408 RequestTimeout

Client

SerializationException Wird zurückgegeben, wenn derText der Anfrage ungültig ist. Wenneine JSON-Nutzlast eingeschlossenist, prüfen Sie, ob sie ein gültigesFormat hat.

400 BadRequest

Client

ServiceUnavailableException Wird zurückgegeben, wennder Service die Anfrage nichtabschließen kann.

500 InternalServer Error

herstellen

ThrottlingException Wird zurückgegeben, wenn SieIhre Anfragerate an S3 Glacierreduzieren müssen.

400 BadRequest

Client

UnrecognizedClientException Wird zurückgegeben, wenn dieZugriffsschlüssel-ID oder derSicherheitstoken ungültig ist.

400 BadRequest

Client

Verschiedene S3 Glacier-APIs geben den gleichen Ausnahmefehler zurück, aber mit verschiedenenNachrichten zum Ausnahmefehler, um Ihnen dabei zu helfen, den jeweiligen Fehler zu beheben.

S3 Glacier gibt Informationen zum Fehler im Antworttext zurück. Die folgenden Beispiele zeigen einige derAntworten auf Fehler.

Beispiel 1: Beschreiben einer Auftragsanfrage miteiner Auftrags-ID, die nicht existiertAngenommen, Sie senden eine Describe Job (GET JobID) (p. 269)-Anfrage für einen Auftrags, der nichtexistiert. Das heißt, Sie geben eine Auftrags-ID an, die nicht existiert.

API-Version 2012-06-01191

Page 199: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBeispiel 1: Beschreiben einer Auftragsanfrage

mit einer Auftrags-ID, die nicht existiert

GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVEXAMPLEbadJobID HTTP/1.1Host: glacier.us-west-2.amazonaws.comDate: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Als Antwort darauf gibt S3 Glacier folgende Antwort zum Fehler zurück.

HTTP/1.1 404 Not Foundx-amzn-RequestId: AAABaZ9N92Iiyv4N7sru3ABEpSQkuFtmH3NP6aAC51ixfjgContent-Type: application/jsonContent-Length: 185Date: Wed, 10 Feb 2017 12:00:00 GMT{ "code": "ResourceNotFoundException", "message": "The job ID was not found: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVEXAMPLEbadJobID", "type": "Client" }

Wobei gilt:

Code

Eine der allgemeinen Ausnahmen.

Typ: ZeichenfolgeFehlermeldung

Eine generische Beschreibung der Fehlerbedingung, die für die API spezifisch ist, die den Fehlerzurückgibt.

Typ: ZeichenfolgeTyp

Die Quelle des Fehlers. Das Feld kann einen der folgenden Werte haben: Client, Server oderUnknown

Typ: Zeichenfolge.

Beachten Sie Folgendes in der vorherigen Antwort:

• Als Antwort auf den Fehler gibt S3 Glacier Statuscodewerte von 4xx und 5xx zurück. In diesem Beispielist der Statuscode 404 Not Found.

• Der Wert des Content-Type-Headers application/json zeigt JSON im Text an• Das JSON im Text liefert die Information zum Fehler.

Angenommen, Sie geben in der vorherigen Anfrage anstatt einer falschen Auftrags-ID einen Tresor an, dernicht existiert. Die Antwort gibt eine andere Nachricht zurück.

HTTP/1.1 404 Not Foundx-amzn-RequestId: AAABBeC9Zw0rp_5D0L8VfB3FA_WlTupqTKAUehMcPhdgni0Content-Type: application/jsonContent-Length: 154

API-Version 2012-06-01192

Page 200: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchBeispiel 2: Anfrage zum Auflisten von Aufträgen miteinem ungültigen Wert für den Anfrageparameter

Date: Wed, 10 Feb 2017 12:00:00 GMT{ "code": "ResourceNotFoundException", "message": "Vault not found for ARN: arn:aws:glacier:us-west-2:012345678901:vaults/examplevault", "type": "Client"}

Beispiel 2: Anfrage zum Auflisten von Aufträgen miteinem ungültigen Wert für den AnfrageparameterIn diesem Beispiel senden Sie eine Aufträge auflisten (GET jobs) (p. 294)-Anfrage zum Abrufen vonTresoraufträgen mit einem bestimmten statuscode und Sie geben einen falschen statuscode-Wertfinished an, anstatt der zulässigen Werte InProgress, Succeeded oder Failed.

GET /-/vaults/examplevault/jobs?statuscode=finished HTTP/1.1 Host: glacier.us-west-2.amazonaws.com Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

S3 Glacier gibt den Fehler InvalidParameterValueException mit einer entsprechenden Meldungzurück.

HTTP/1.1 400 Bad Requestx-amzn-RequestId: AAABaZ9N92Iiyv4N7sru3ABEpSQkuFtmH3NP6aAC51ixfjgContent-Type: application/jsonContent-Length: 141Date: Wed, 10 Feb 2017 12:00:00 GMT{ "code": "InvalidParameterValueException", "message": "The job status code is not valid: finished", "type: "Client"}

Tresor-OperationenEs folgenden die in S3 Glacier verfügbaren Tresoroperationen.

Themen• Abort Vault Lock (DELETE lock-policy) (p. 194)• Add Tags To Vault (POST tags add) (p. 196)• Create Vault (PUT vault) (p. 199)• Complete Vault Lock (POST lockId) (p. 201)• Delete Vault (DELETE vault) (p. 203)• Delete Vault Access Policy (DELETE access-policy) (p. 205)• Delete Vault Notifications (DELETE notification-configuration) (p. 207)• Describe Vault (GET vault) (p. 209)• Get Vault Access Policy (GET access-policy) (p. 212)• Get Vault Lock (GET lock-policy) (p. 215)

API-Version 2012-06-01193

Page 201: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbort Vault Lock

• Get Vault Notifications (GET notification-configuration) (p. 218)• Initiate Vault Lock (POST lock-policy) (p. 221)• List Tags For Vault (GET tags) (p. 224)• List Vaults (GET vaults) (p. 227)• Remove Tags From Vault (POST tags remove) (p. 232)• Set Vault Access Policy (PUT access-policy) (p. 234)• Set Vault Notification Configuration (PUT notification-configuration) (p. 236)

Abort Vault Lock (DELETE lock-policy)DescriptionDieser Vorgang stoppt den Tresorverriegelungsprozess, wenn sich die Tresorverriegelung nicht in derLocked Bundesland. Wenn diese Operation angefordert wird, während die Tresorsperre den StatusLocked aufweist, gibt die Operation einen AccessDeniedException-Fehler zurück. Durch das Stoppendes Tresorverriegelungsprozesses wird die Tresorverriegelungsrichtlinie aus dem angegebenen Tresorentfernt.

Eine Tresorverriegelung wird in den Status InProgress versetzt, indem Initiate Vault Lock (POST lock-policy) (p. 221) aufgerufen wird. Eine Tresorverriegelung wird in den Status Locked versetzt, indemComplete Vault Lock (POST lockId) (p. 201) aufgerufen wird. Sie können den Status einer Tresorsperreabrufen, indem Sie Get Vault Lock (GET lock-policy) (p. 215) aufrufen. Weitere Informationen über denTresorverriegelungsprozess finden Sie unter Amazon S3 Glacier-Tresorverriegelung (p. 70). WeitereInformationen zu Tresorverriegelungs-Richtlinien finden Sie unter Amazon S3 Glacier-Zugriffskontrolle mitTresorverriegelungs-Richtlinien (p. 148).

Dieser Vorgang ist idempotent. Sie können diesen Vorgang mehrmals aufrufen, wenn der Tresor denStatus InProgress aufweist oder wenn keine Richtlinie mit dem Tresor verknüpft ist.

RequestsUm die Tresor-Sperrrichtlinie zu löschen, senden Sie eine HTTP-DELETE-Anforderung an den URI derUnterressource lock-policy des Tresors.

Syntax

DELETE /AccountId/vaults/vaultName/lock-policy HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

API-Version 2012-06-01194

Page 202: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbort Vault Lock

Anforderungs-Header

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

ResponsesWenn die Richtlinie gelöscht wurde, gibt S3 Glacier als Antwort HTTP 204 No Content zurück.

Syntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

Errors

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

ExamplesDas folgende Beispiel zeigt, wie Sie den Tresorsperrprozess anhalten.

Beispielanfrage

In diesem Beispiel wird eine DELETE-Anfrage an die Unterressource lock-policy des Tresors namensexamplevault gesendet.

DELETE /-/vaults/examplevault/lock-policy HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000ZAuthorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2x-amz-glacier-version: 2012-06-01

Beispielantwort

Wenn die Richtlinie gelöscht wurde, gibt S3 Glacier die Antwort HTTP 204 No Content zurück, wie imfolgenden Beispiel gezeigt.

API-Version 2012-06-01195

Page 203: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAdd Tags To Vault

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT

Zugehörige Abschnitte

• Complete Vault Lock (POST lockId) (p. 201)

• Get Vault Lock (GET lock-policy) (p. 215)

• Initiate Vault Lock (POST lock-policy) (p. 221)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle ()

Add Tags To Vault (POST tags add)Mit dieser Operation werden einem Tresor die angegebenen Tags hinzugefügt. Jedes Tag besteht auseinem Schlüssel und einem Wert. Jeder Tresor kann bis zu 50 Tags aufweisen. Wenn Ihre Anforderungeine Überschreitung des Tag-Grenzwerts für den Tresors zur Folge hätte, löst der Vorgang den FehlerLimitExceededException aus.

Wenn ein Tag bereits im Tresor unter dem angegebenen Schlüssel vorhanden ist, wird der vorhandeneSchlüsselwert überschrieben. Weitere Informationen zu Tags erhalten Sie unter Markieren von Amazon S3Glacier-Ressourcen (p. 166).

AnforderungssyntaxUm einem Tresor Tags hinzuzufügen, senden Sie eine HTTP-POST-Anforderung an den URI der Tags, wieim folgenden Syntaxbeispiel gezeigt.

POST /AccountId/vaults/vaultName/tags?operation=add HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Length: Lengthx-amz-glacier-version: 2012-06-01 { "Tags": { "string": "string", "string": "string" } }

API-Version 2012-06-01196

Page 204: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAdd Tags To Vault

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

Anfrageparameter

Name Beschreibung Erforderlich

operation=add Ein einziger Abfragezeichenfolgeparameter operation mit demWert add zur Unterscheidung von Remove Tags From Vault (POSTtags remove) (p. 232).

Ja

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Der Anforderungstext enthält die folgenden JSON-Felder.

Tags

Die Tags, die dem Tresor hinzugefügt werden sollen. Jedes Tag besteht aus einem Schlüssel undeinem Wert. Der Wert kann auch eine leere Zeichenfolge sein.

Typ: Zeichenfolge-zu-Zeichenfolge-Zuweisung

Längenbeschränkungen: Minimale Länge von 1. Die maximale Länge beträgt 10 Zeichen.

Erforderlich: Ja

AntwortenWenn die Anfrage erfolgreich ist, gibt der Service die HTTP-Antwort 204 No Content zurück.

Syntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

API-Version 2012-06-01197

Page 205: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAdd Tags To Vault

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

Fehler

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispielanfrage

Das folgende Beispiel zeigt die HTTP-POST-Anforderung mit den Tags, die dem Tresor hinzugefügtwerden sollen.

POST /-/vaults/examplevault/tags?operation=add HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000ZAuthorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2Content-Length: lengthx-amz-glacier-version: 2012-06-01 { "Tags": { "examplekey1": "examplevalue1", "examplekey2": "examplevalue2" } }

Beispielantwort

Falls die Anforderung erfolgreich war, gibt S3 Glacier den im folgenden Beispiel gezeigten Code HTTP 204No Content zurück.

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMT

Zugehörige Abschnitte

• List Tags For Vault (GET tags) (p. 224)

• Remove Tags From Vault (POST tags remove) (p. 232)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

API-Version 2012-06-01198

Page 206: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchCreate Vault

Create Vault (PUT vault)BeschreibungMit dieser Operation wird ein neuer Tresor mit dem angegebenen Namen erstellt.  Der Name des Tresorsmuss innerhalb der AWS-Region für ein AWS-Konto eindeutig sein. Sie können bis zu 1.000 Tresore proKonto erstellen. Informationen zur Erstellung weiterer Tresore finden Sie auf der Amazon S3 Glacier-Produkt-Detailseite.

Sie müssen bei der Benennung eines Tresors die folgenden Richtlinien beachten.

• Namen können zwischen 1 und 255 Zeichen lang sein.• Zulässige Zeichen sind a – z, A – Z, 0 – 9, "_" (Unterstrich), "-" (Bindestrich) und "." (Punkt).

Diese Operation ist idempotent. Sie können die gleiche Anforderung mehrfach senden. Dies bleibt ohneEffekt, nachdem der angegebene Tresor einmal von Amazon S3 Glacier (S3 Glacier) erstellt wurde.

AnforderungenSyntax

Zum Erstellen eines Tresors senden Sie eine HTTP PUT-Anforderung an den URI des zu erstellendenTresors.

PUT /AccountId/vaults/VaultName HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Length: Lengthx-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

Anfrageparameter

Dieser Vorgang verwendet keine Anforderungsparameter.

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Der Anforderungstext für diese Operation muss leer sein (0 Bytes).

API-Version 2012-06-01199

Page 207: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchCreate Vault

AntwortenSyntax

HTTP/1.1 201 Createdx-amzn-RequestId: x-amzn-RequestIdDate: DateLocation: Location

Antwort-HeaderEin erfolgreiche Antwort umfasst neben den für alle Vorgänge geltenden Antwort-Header die folgendenAntwort-Header. Weitere Informationen über allgemeine Antwort-Header finden Sie unter AllgemeineAntwort-Header (p. 175).

Name Beschreibung

Location Der relative URI-Pad des erstellten Tresors.

Typ: Zeichenfolge

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispielanfrageIm folgenden Beispiel wird eine HTTP PUT-Anfrage gesendet, um einen Tresor namens examplevaultzu erstellen.

PUT /-/vaults/examplevault HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Content-Length: 0Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

BeispielantwortDer Tresor wird von S3 Glacier erstellt und der relative URI-Pfad des Tresors wird im Location-Headerangegeben. Die Konto-ID wird im Location-Header immer angegeben. Dies ist unabhängig von derAngabe der Konto-ID oder eines Bindestrichs („-“) in der Anfrage.

HTTP/1.1 201 Createdx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMT

API-Version 2012-06-01200

Page 208: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchComplete Vault Lock

Location: /111122223333/vaults/examplevault

Zugehörige Abschnitte

• List Vaults (GET vaults) (p. 227)• Delete Vault (DELETE vault) (p. 203)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Complete Vault Lock (POST lockId)BeschreibungDiese Operation schließt den Tresorverriegelungsprozess ab, indem sie die Tresorverriegelung vomZustand InProgress in den Zustand Locked überführt, wodurch die Tresorverriegelungsrichtlinieunveränderbar wird. Eine Tresorverriegelung wird in den Status InProgress versetzt, indem InitiateVault Lock (POST lock-policy) (p. 221) aufgerufen wird. Sie können den Status der Tresorverriegelungabrufen, indem Sie Get Vault Lock (GET lock-policy) (p. 215) aufrufen. Weitere Informationen über denTresorverriegelungsprozess finden Sie unter Amazon S3 Glacier-Tresorverriegelung (p. 70).

Dieser Vorgang ist idempotent. Diese Anfrage ist immer erfolgreich, wenn die Tresorverriegelung im StatusLocked ist und die bereitgestellte Verriegelungs-ID der Verriegelungs-ID entspricht, die ursprünglich für dieVerriegelung des Tresors verwendet wurde.

Wenn eine ungültige Verriegelungs-ID in der Anfrage übergeben wird, wenn die Tresorverriegelungim Status Locked ist, gibt die Operation einen AccessDeniedException-Fehler zurück. Wenn eineungültige Verriegelungs-ID in der Anfrage übergeben wird, wenn die Tresorverriegelung im StatusInProgress ist, gibt die Operation einen InvalidParameter-Fehler zurück.

AnforderungenUm den Tresorverriegelungsprozess abzuschließen, senden Sie eine HTTP-POST-Anfrage an den URI derlock-policy-Unterressource des Tresors mit einer gültigen Verriegelungs-ID.

Syntax

POST /AccountId/vaults/vaultName/lock-policy/lockId HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Length: Lengthx-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationen

API-Version 2012-06-01201

Page 209: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchComplete Vault Lock

verknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

Der lockId-Wert ist die von einer Initiate Vault Lock (POST lock-policy) (p. 221)-Anfrage erhalteneVerriegelungs-ID.

Anfrageparameter

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

AntwortenWenn die Anfrage erfolgreich ist, gibt der Service die HTTP-Antwort 204 No Content zurück.

Syntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

Fehler

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispielanfrage

Im folgenden Beispiel wird eine HTTP-POST-Anfrage mit der Verriegelungs-ID gesendet, um denTresorverriegelungsprozess abzuschließen.

POST /-/vaults/examplevault/lock-policy/AE863rKkWZU53SLW5be4DUcW HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Z

API-Version 2012-06-01202

Page 210: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDelete Vault

Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2Content-Length: lengthx-amz-glacier-version: 2012-06-01

BeispielantwortFalls die Anforderung erfolgreich war, gibt Amazon S3 Glacier (S3 Glacier) als Antwort HTTP 204 NoContent zurück, wie im folgenden Beispiel gezeigt.

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMT

Zugehörige Abschnitte

• Abort Vault Lock (DELETE lock-policy) (p. 194)

• Get Vault Lock (GET lock-policy) (p. 215)

• Initiate Vault Lock (POST lock-policy) (p. 221)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Delete Vault (DELETE vault)BeschreibungDiese Operation löscht einen Tresor. Amazon S3 Glacier (S3 Glacier) löscht einen Tresor nur, wenn gemäßder letzten Inventur keine Archive mehr im Tresor vorhanden sind und wenn seit der letzten Inventur keineSchreibvorgänge für den Tresor durchgeführt wurden. Wenn eine dieser Bedingungen nicht erfüllt ist, wirddas Löschen des Tresors fehlschlagen (d. h., der Tresor wird nicht entfernt) und S3 Glacier gibt einenFehler zurück.

Sie können die Describe Vault (GET vault) (p. 209)-Operation verwenden, die Informationen zum Tresorbereitstellt, einschließlich der Anzahl der Archive im Tresor. Allerdings basiert die Information auf dem vonS3 Glacier zuletzt erstellten Tresorinventar.

Dieser Vorgang ist idempotent.

Note

Wenn Sie einen Tresor löschen, wird die Tresorzugriffsrichtlinie, die dem Tresor angefügt ist,ebenfalls gelöscht. Weitere Informationen zu Tresorzugriffsrichtlinien finden Sie unter Amazon S3Glacier-Zugriffskontrolle mit Tresorzugriffsrichtlinien (p. 146).

API-Version 2012-06-01203

Page 211: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDelete Vault

AnforderungenUm einen Tresor zu löschen, senden Sie eine DELETE-Anfrage an den Ressourcen-URI des Tresors.

Syntax

DELETE /AccountId/vaults/VaultName HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-HeaderFür diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

API-Version 2012-06-01204

Page 212: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDelete Vault Access Policy

BeispieleBeispielanfrageIm folgenden Beispiel wird ein Tresor namens examplevault gelöscht. Die Beispielanfrage ist eineDELETE-Anfrage an den URI der zu löschenden Ressource (Tresor).

DELETE /-/vaults/examplevault HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMT

Zugehörige Abschnitte

• Create Vault (PUT vault) (p. 199)• List Vaults (GET vaults) (p. 227)• Initiate Job (POST jobs) (p. 284)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Delete Vault Access Policy (DELETE access-policy)BeschreibungDiese Operation löscht die dem angegebenen Tresor zugeordnete Zugriffsrichtlinie. Die Operation ist„eventually consistent“, das heißt, es kann etwas dauern, bevor Amazon S3 Glacier (S3 Glacier) dieZugriffsrichtlinie vollständig entfernt, und möglicherweise sehen Sie noch für kurze Zeit die Auswirkungender Richtlinie, nachdem Sie die Löschanfrage gesendet haben.

Dieser Vorgang ist idempotent. Sie können das Löschen mehrmals aufrufen, auch wenn dem Tresor keineRichtlinie zugeordnet ist. Weitere Informationen zu Tresorzugriffsrichtlinien finden Sie unter Amazon S3Glacier-Zugriffskontrolle mit Tresorzugriffsrichtlinien (p. 146).

AnforderungenUm die aktuelle Tresorzugriffsrichtlinie zu löschen, senden Sie eine HTTP-DELETE-Anfrage an den URI derUnterressource access-policy des Tresors.

API-Version 2012-06-01205

Page 213: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDelete Vault Access Policy

Syntax

DELETE /AccountId/vaults/vaultName/access-policy HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Anfrageparameter

Dieser Vorgang verwendet keine Anforderungsparameter.

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

AntwortenWenn die Richtlinie gelöscht wurde, gibt S3 Glacier als Antwort 204 No Content zurück.

Syntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

Fehler

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

API-Version 2012-06-01206

Page 214: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDelete Vault Notifications

BeispieleDas folgende Beispiel zeigt, wie eine Tresorzugriffsrichtlinie gelöscht wird.

Beispielanfrage

In diesem Beispiel wird eine DELETE-Anfrage an die Unterressource access-policy des Tresorsnamens examplevault gesendet.

DELETE /-/vaults/examplevault/access-policy HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000ZAuthorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2x-amz-glacier-version: 2012-06-01

Beispielantwort

Wenn die Richtlinie erfolgreich gelöscht wurde, gibt S3 Glacier als Reaktion einen 204 No Contentzurück, wie im folgenden Beispiel gezeigt.

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT

Zugehörige Abschnitte

• Get Vault Access Policy (GET access-policy) (p. 212)

• Set Vault Access Policy (PUT access-policy) (p. 234)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Delete Vault Notifications (DELETE notification-configuration)BeschreibungDiese Operation löscht die für einen Tresor eingestellte Benachrichtigungskonfiguration Set VaultNotification Configuration (PUT notification-configuration) (p. 236). Die Operation ist "eventuallyconsistent", das heißt, es kann etwas dauern, bis Amazon S3 Glacier (S3 Glacier) die Benachrichtigungenvollständig deaktiviert, und möglicherweise empfangen Sie noch für kurze Zeit Benachrichtigungen,nachdem Sie die Löschanfrage gesendet haben.

API-Version 2012-06-01207

Page 215: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDelete Vault Notifications

AnforderungenSenden Sie eine DELETE-Anfrage an die Unterressource notification-configuration des Tresors,um die Benachrichtigungskonfiguration eines Tresors zu löschen.

Syntax

DELETE /AccountId/vaults/VaultName/notification-configuration HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-HeaderFür diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

API-Version 2012-06-01208

Page 216: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Vault

BeispieleDas folgende Beispiel zeigt, wie die Benachrichtigungskonfiguration für einen Tresor entfernt wird.

BeispielanfrageIn diesem Beispiel wird eine DELETE-Anfrage an die Unterressource notification-configurationdes Tresors namens examplevault gesendet.

DELETE /111122223333/vaults/examplevault/notification-configuration HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Z x-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT

Zugehörige Abschnitte

• Get Vault Notifications (GET notification-configuration) (p. 218)• Set Vault Notification Configuration (PUT notification-configuration) (p. 236)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Describe Vault (GET vault)BeschreibungDiese Operation gibt Informationen über einen Tresor zurück, einschließlich Tresor-ARN (Amazon-Ressourcenname), Datum der Erstellung, Anzahl der Archive im Tresor und Gesamtgröße aller Archiveim Tresor. Die Anzahl der Archive und ihre Gesamtgröße entsprechen der letzten von Amazon S3 Glacier(S3 Glacier) generierten Tresorinventur (siehe Arbeiten mit Tresoren in Amazon S3 Glacier (p. 26)). S3Glacier generiert Tresorinventuren annähernd täglich. Das bedeutet, dass wenn Sie ein Archiv zum Tresorhinzufügen oder aus ihm entfernen und dann sofort eine Anfrage zur Tresorbeschreibung senden, dieÄnderungen möglicherweise in der Antwort nicht reflektiert werden.

AnforderungenSenden Sie eine GET-Anfrage an den URI der spezifischen Tresorressource, um Informationen über einenTresor zu erhalten.

API-Version 2012-06-01209

Page 217: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Vault

Syntax

GET /AccountId/vaults/VaultName HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: Length

{ "CreationDate" : String, "LastInventoryDate" : String, "NumberOfArchives" : Number, "SizeInBytes" : Number, "VaultARN" : String, "VaultName" : String}

Antwort-HeaderFür diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

AntworttextDer Antworttext enthält die folgenden JSON-Felder.

API-Version 2012-06-01210

Page 218: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Vault

CreationDate

Das UTC-Datum, zu dem der Tresor erstellt wurde.

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

LastInventoryDate

Das UTC-Datum, zu dem S3 Glacier die letzte Tresorinventur abgeschlossen hat. Informationen zumInitiieren einer Inventur für einen Tresor finden Sie unter Initiate Job (POST jobs) (p. 284).

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

NumberOfArchives

Die Anzahl der Archive im Tresor gemäß der letzten Tresorinventur. Dieses Feld wird Nullzurückgeben, wenn noch keine Inventur auf dem Tresor ausgeführt wurde, zum Beispiel, wenn Sie denTresor gerade erst erstellt haben.

Typ: ZahlSizeInBytes

Die Gesamtgröße in Bytes der Archive im Tresor, einschließlich jedes Overheads pro Archiv, amDatum der letzten Inventur. Dieses Feld wird null zurückgeben, wenn noch keine Inventur auf demTresor ausgeführt wurde, zum Beispiel, wenn Sie den Tresor gerade erst erstellt haben.

Typ: ZahlVaultARN

Der Amazon-Ressourcenname (ARN) des Tresors.

Typ: ZeichenfolgeVaultName

Der Tresorname, der zum Zeitpunkt der Erstellung angegeben wurde. Der Tresorname ist auch in derARN des Tresors enthalten.

Typ: Zeichenfolge

Fehler

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispielanfrage

Das folgende Beispiel zeigt, wie Sie Informationen über den Tresor namens examplevault erhalten.

GET /-/vaults/examplevault HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

API-Version 2012-06-01211

Page 219: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Access Policy

Beispielantwort

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMTContent-Type: application/jsonContent-Length: 260

{ "CreationDate" : "2012-02-20T17:01:45.198Z", "LastInventoryDate" : "2012-03-20T17:03:43.221Z", "NumberOfArchives" : 192, "SizeInBytes" : 78088912, "VaultARN" : "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault", "VaultName" : "examplevault"}

Zugehörige Abschnitte

• Create Vault (PUT vault) (p. 199)• List Vaults (GET vaults) (p. 227)• Delete Vault (DELETE vault) (p. 203)• Initiate Job (POST jobs) (p. 284)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Get Vault Access Policy (GET access-policy)BeschreibungDiese Operation ruft die access-policy-Unterressource ab, die auf dem Tresor eingerichtet ist. WeitereInformationen über das Einrichten von Unterressourcen finden Sie unter Set Vault Access Policy (PUTaccess-policy) (p. 234). Wenn auf dem Tresor keine Zugriffsrichtlinie eingerichtet ist, gibt die Operationeinen 404 Not found-Fehler zurück. Weitere Informationen zu Tresorzugriffsrichtlinien finden Sie unterAmazon S3 Glacier-Zugriffskontrolle mit Tresorzugriffsrichtlinien (p. 146).

AnforderungenUm die aktuelle Tresorzugriffsrichtlinie zurückzugeben, senden Sie eine HTTP-GET-Anfrage an den URIder Unterressource access-policy des Tresors.

Syntax

GET /AccountId/vaults/vaultName/access-policy HTTP/1.1Host: glacier.Region.amazonaws.comDate: Date

API-Version 2012-06-01212

Page 220: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Access Policy

Authorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Anfrageparameter

Dieser Vorgang verwendet keine Anforderungsparameter.

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

AntwortenAls Antwort gibt Amazon S3 Glacier (S3 Glacier) die Tresorzugriffsrichtlinie im JSON-Format im Antworttextzurück.

Syntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: length { "Policy": "string"}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

Richtlinie

Die Tresorzugriffsrichtlinie als eine JSON-Zeichenfolge, die "\" als Escape-Zeichen verwendet.

Typ: Zeichenfolge

API-Version 2012-06-01213

Page 221: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Access Policy

Fehler

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleDas folgende Beispiel zeigt, wie eine Tresorzugriffsrichtlinie abgerufen wird.

Beispielanfrage

In diesem Beispiel wird eine GET-Anforderung an den URI der access-policy-Unterressource einesTresors gesendet.

GET /-/vaults/examplevault/access-policy HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Wenn die Antwort erfolgreich war, gibt S3 Glacier die Tresorverriegelungsrichtlinie als eine JSON-Zeichenfolge im Antworttext zurück. Die zurückgegebene JSON-Zeichenfolge verwendet „\“ als Escape-Zeichen, wie in den Beispielen Set Vault Access Policy (PUT access-policy) (p. 234) gezeigt. Dasfolgende Beispiel zeigt die zurückgegebene JSON-Zeichenfolge zur besseren Lesbarkeit allerdings ohneals Escape-Zeichen.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: length

{ "Policy": " { "Version": "2012-10-17", "Statement": [ { "Sid": "allow-time-based-deletes", "Principal": { "AWS": "999999999999" }, "Effect": "Allow", "Action": "glacier:Delete*", "Resource": [ "arn:aws:glacier:us-west-2:999999999999:vaults/examplevault" ], "Condition": { "DateGreaterThan": { "aws:CurrentTime": "2018-12-31T00:00:00Z" } } } ] } "

API-Version 2012-06-01214

Page 222: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Lock

}

Zugehörige Abschnitte

• Delete Vault Access Policy (DELETE access-policy) (p. 205)

• Set Vault Access Policy (PUT access-policy) (p. 234)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Get Vault Lock (GET lock-policy)DescriptionMit dieser Operation werden die folgenden Attribute aus der lock-policy-Unterressource abgerufen, diefür den angegeben Tresor festgelegt ist:

• Die für den Tresor festgelegte Tresorverriegelungsrichtlinie.• Der Status der Tresorverriegelung. Er lautet entweder InProgess oder Locked.• Bei Ablauf der Verriegelungs-ID. Die Verriegelungs-ID wird verwendet, um den Prozess zur

Tresorverriegelung abzuschließen.• Wenn die Tresorverriegelung initiiert und in den InProgress-Status versetzt wurde.

Eine Tresorverriegelung wird in den Status InProgress versetzt, indem Initiate Vault Lock(POST lock-policy) (p. 221) aufgerufen wird. Eine Tresorverriegelung wird in den Status Lockedversetzt, indem Complete Vault Lock (POST lockId) (p. 201) aufgerufen wird. Sie können denTresorverriegelungsprozess stoppen, indem Sie Abort Vault Lock (DELETE lock-policy) (p. 194).Weitere Informationen über den Tresorverriegelungsprozess finden Sie unter Amazon S3 Glacier-Tresorverriegelung (p. 70).

Wenn auf dem Tresor keine Tresorverriegelungsrichtlinie eingerichtet ist, gibt die Operation einen 404 Notfound-Fehler zurück. Weitere Informationen zu Tresorverriegelungs-Richtlinien finden Sie unter AmazonS3 Glacier-Zugriffskontrolle mit Tresorverriegelungs-Richtlinien (p. 148).

RequestsSie geben die aktuelle Tresorverriegelungsrichtlinie und andere Attribute zurück, indem Sie eineHTTP-GET-Anfrage an den URI der lock-policy-Unterressource des Tresors senden. Orientieren Siesich dabei an dem folgenden Syntaxbeispiel.

Syntax

GET /AccountId/vaults/vaultName/lock-policy HTTP/1.1Host: glacier.Region.amazonaws.comDate: Date

API-Version 2012-06-01215

Page 223: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Lock

Authorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

Anforderungs-HeaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

ResponsesAls Antwort gibt Amazon S3 Glacier (S3 Glacier) die Tresorzugriffsrichtlinie im JSON-Format im Antworttextzurück.

Syntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: length { "Policy": "string", "State": "string", "ExpirationDate": "string", "CreationDate":"string"}

Antwort-HeaderFür diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

AntworttextDer Antworttext enthält die folgenden JSON-Felder.

Richtlinie

Die Tresorverriegelungsrichtlinie als eine JSON-Zeichenfolge, bei der "\" als Escape-Zeichenverwendet wird.

API-Version 2012-06-01216

Page 224: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Lock

Typ : Zeichenfolge.Status

Der Status der Tresorverriegelung.

Typ : Zeichenfolge.

Gültige Werte: InProgress|LockedExpirationDate

Datum und Uhrzeit im UTC-Format für den Ablauf der Verriegelungs-ID. Dieser Wert kann nulllauten, wenn die Tresorverriegelung den Status Locked angenommen hat.

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

CreationDate

Datum und Uhrzeit im UTC-Format für den Zeitpunkt, an dem die Tresorverriegelung den StatusInProgress angenommen hat.

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

Errors

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

ExamplesDas folgende Beispiel zeigt, wie eine Tresorverriegelungsrichtlinie abgerufen wird.

Beispielanfrage

In diesem Beispiel wird eine GET-Anforderung an den URI der lock-policy-Unterressource einesTresors gesendet.

GET /-/vaults/examplevault/lock-policy HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Wenn die Antwort erfolgreich war, gibt S3 Glacier die Tresorverriegelungsrichtlinie als eine JSON-Zeichenfolge im Antworttext zurück. Die zurückgegebene JSON-Zeichenfolge, bei der "\" als Escape-Zeichen verwendet wird, wie in der Beispielanforderung Initiate Vault Lock (POST lock-policy) (p. 221)verdeutlicht. Das folgende Beispiel zeigt die zurückgegebene JSON-Zeichenfolge zur besseren Lesbarkeitallerdings ohne als Escape-Zeichen.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q

API-Version 2012-06-01217

Page 225: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Notifications

Date: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: length

{ "Policy": " { "Version": "2012-10-17", "Statement": [ { "Sid": "Define-vault-lock", "Principal": { "AWS": "arn:aws:iam::999999999999:root" }, "Effect": "Deny", "Action": "glacier:DeleteArchive", "Resource": [ "arn:aws:glacier:us-west-2:999999999999:vaults/examplevault" ], "Condition": { "NumericLessThanEquals": { "glacier:ArchiveAgeInDays": "365" } } } ] } ", "State": "InProgress", "ExpirationDate": "exampledate", "CreationDate": "exampledate" }

Zugehörige Abschnitte

• Abort Vault Lock (DELETE lock-policy) (p. 194)

• Complete Vault Lock (POST lockId) (p. 201)

• Initiate Vault Lock (POST lock-policy) (p. 221)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle ()

Get Vault Notifications (GET notification-configuration)BeschreibungDiese Operation ruft die notification-configuration-Unterressource ab, die auf dem Tresoreingerichtet ist, (siehe Set Vault Notification Configuration (PUT notification-configuration) (p. 236).

API-Version 2012-06-01218

Page 226: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Notifications

Wenn die Benachrichtigungskonfiguration für einen Tresor nicht eingerichtet ist, gibt die Operation einen404 Not Found-Fehler zurück. Weitere Informationen zu Tresorbenachrichtigungen finden Sie unterKonfigurieren von Tresorbenachrichtigungen in Amazon S3 Glacier (p. 55).

AnforderungenUm Informationen zur Benachrichtigungskonfiguration abzurufen, senden Sie eine GET-Anfrage an den URIder notification-configuration-Unterressource des Tresors.

Syntax

GET /AccountId/vaults/VaultName/notification-configuration HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Anfrageparameter

Dieser Vorgang verwendet keine Anforderungsparameter.

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: length{ "Events": [ String, ... ], "SNSTopic": String}

API-Version 2012-06-01219

Page 227: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Vault Notifications

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

Events

Eine Liste eines oder mehrerer Ereignisse, für die Amazon S3 Glacier (S3 Glacier) eineBenachrichtigung an das angegebene Amazon SNS-Thema senden wird. Informationen überTresorereignisse, für die Sie Tresore so konfigurieren können, dass Benachrichtigungen veröffentlichtwerden, finden Sie unter Set Vault Notification Configuration (PUT notification-configuration) (p. 236).

Typ: ArraySNSTopic

Der ARN (Amazon-Ressourcenname) des Amazon Simple Notification Service (Amazon SNS)-Themas. Weitere Informationen finden Sie unter Erste Schritte mit dem Amazon SNS im Handbuch„Erste Schritte” für Amazon Simple Notification Service.

Typ: Zeichenfolge

Fehler

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleDas folgende Beispiel zeigt, wie die Benachrichtigungskonfiguration für einen Tresor abgerufen wird.

Beispielanfrage

In diesem Beispiel wird eine GET-Anfrage an die notification-configuration-Unterressource einesTresors gesendet.

GET /-/vaults/examplevault/notification-configuration HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Falls die Anforderung erfolgreich beantwortet wird, wird das Dokument zur Konfiguration derPrüfprotokollierung im Antworttext im JSON-Format angezeigt. In diesem Beispiel zeigt dieKonfiguration, dass Benachrichtigungen für zwei Ereignisse (ArchiveRetrievalCompletedund InventoryRetrievalCompleted) an das Amazon SNS-Thema arn:aws:sns:us-west-2:012345678901:mytopic gesendet werden.

API-Version 2012-06-01220

Page 228: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Vault Lock

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: 150 { "Events": [ "ArchiveRetrievalCompleted", "InventoryRetrievalCompleted" ], "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic"}

Zugehörige Abschnitte

• Delete Vault Notifications (DELETE notification-configuration) (p. 207)• Set Vault Notification Configuration (PUT notification-configuration) (p. 236)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Initiate Vault Lock (POST lock-policy)DescriptionDiese Operation initiiert den Prozess zur Tresorverriegelung, indem Folgendes geschieht:

• Installieren einer Richtlinie zur Tresorverriegelung für den angegebenen Tresor.• Einstellen des Verriegelungsstatus der Tresorverriegelung auf InProgress.• Rückgabe einer Verriegelungs-ID, die verwendet wird, um den Prozess zur Tresorverriegelung

abzuschließen.

Sie können pro Tresor eine Richtlinie zur Tresorverriegelung mit einer Größe von bis zu 20 KB festlegen.Weitere Informationen zu Tresorverriegelungs-Richtlinien finden Sie unter Amazon S3 Glacier-Zugriffskontrolle mit Tresorverriegelungs-Richtlinien (p. 148).

Sie müssen den Prozess zur Tresorverriegelung innerhalb von 24 Stunden, nachdem dieTresorverriegelung in den Status InProgress eintritt, abschließen. Nach diesen 24 Stunden läuft dieVerriegelungs-ID ab, der Tresor verlässt automatisch den Status InProgress und die Richtlinie zurTresorverriegelung wird vom Tresor entfernt. Sie rufen Complete Vault Lock (POST lockId) (p. 201) auf,um den Prozess zur Tresorverriegelung abzuschließen, indem Sie den Status der Tresorverriegelung aufLocked einstellen.

Note

Wenn eine Tresorverriegelung im Status Locked ist, können Sie keine neue Tresorverriegelungfür den Tresor initiieren.

API-Version 2012-06-01221

Page 229: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Vault Lock

Sie können den Tresorverriegelungsprozess stoppen, indem Sie Abort Vault Lock (DELETE lock-policy) (p. 194). Sie können den Status der Tresorverriegelung abrufen, indem Sie Get Vault Lock (GETlock-policy) (p. 215) aufrufen. Weitere Informationen über den Tresorverriegelungsprozess finden Sieunter Amazon S3 Glacier-Tresorverriegelung (p. 70).

Wenn diese Operation aufgerufen wird, wenn die Tresorverriegelung im Status InProgress ist, gibtdie Operation einen AccessDeniedException-Fehler zurück. Wenn die Tresorverriegelung im StatusInProgress ist, müssen Sie Abort Vault Lock (DELETE lock-policy) (p. 194) aufrufen, bevor Sie eineneue Tresorverriegelungs-Richtlinie initiieren können.

RequestsUm den Prozess zur Tresorverriegelung zu initiieren, senden Sie eine HTTP-POST-Anforderung anden URI der lock-policy-Unterressource des Tresors. Orientieren Sie sich dabei an dem folgendenSyntaxbeispiel.

Syntax

POST /AccountId/vaults/vaultName/lock-policy HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Length: Lengthx-amz-glacier-version: 2012-06-01 { "Policy": "string"}

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

Anfrageparameter

Dieser Vorgang verwendet keine Anforderungsparameter.

Anforderungs-Header

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Der Anforderungstext enthält die folgenden JSON-Felder.

Richtlinie

Die Tresorverriegelungsrichtlinie als eine JSON-Zeichenfolge, bei der "\" als Escape-Zeichenverwendet wird.

API-Version 2012-06-01222

Page 230: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Vault Lock

Typ : Zeichenfolge.

Erforderlich Ja.

ResponsesAmazon S3 Glacier (S3 Glacier) gibt als Antwort HTTP 201 Created zurück, wenn die Richtlinieakzeptiert wurde.

Syntax

HTTP/1.1 201 Createdx-amzn-RequestId: x-amzn-RequestIdDate: Datex-amz-lock-id: lockId

Antwort-Header

Ein erfolgreiche Antwort umfasst neben den für alle Vorgänge geltenden Antwort-Header die folgendenAntwort-Header. Weitere Informationen über allgemeine Antwort-Header finden Sie unter AllgemeineAntwort-Header (p. 175).

Name Description (Beschreibung)

x-amz-lock-id Die Verriegelungs-ID, die verwendet wird, um den Prozess zur Tresorverriegelungabzuschließen.

Typ : Zeichenfolge.

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

Errors

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

ExamplesBeispielanfrage

Das folgende Beispiel sendet eine HTTP-PUT-Anfrage an den URI der lock-policy-Unterressource desTresors. In der JSON-Zeichenfolge Policy wird „\“ als Escape-Zeichen verwendet.

PUT /-/vaults/examplevault/lock-policy HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000ZAuthorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2Content-Length: lengthx-amz-glacier-version: 2012-06-01

API-Version 2012-06-01223

Page 231: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Tags For Vault

{"Policy":"{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"Define-vault-lock\",\"Effect\":\"Deny\",\"Principal\":{\"AWS\":\"arn:aws:iam::999999999999:root\"},\"Action\":\"glacier:DeleteArchive\",\"Resource\":\"arn:aws:glacier:us-west-2:999999999999:vaults/examplevault\",\"Condition\":{\"NumericLessThanEquals\":{\"glacier:ArchiveAgeinDays\":\"365\"}}}]}"}

Beispielantwort

Falls die Anfrage erfolgreich war, gibt S3 Glacier die Antwort HTTP 201 Created zurück, wie imfolgenden Beispiel gezeigt.

HTTP/1.1 201 Createdx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMTx-amz-lock-id: AE863rKkWZU53SLW5be4DUcW

Zugehörige Abschnitte

• Abort Vault Lock (DELETE lock-policy) (p. 194)

• Complete Vault Lock (POST lockId) (p. 201)

• Get Vault Lock (GET lock-policy) (p. 215)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle ()

List Tags For Vault (GET tags)Diese Operation listet alle Tags auf, die einem Tresor angefügt sind. Die Operation gibt eine leereZuweisung zurück, wenn keine Tags vorhanden sind. Weitere Informationen zu Tags erhalten Sie unterMarkieren von Amazon S3 Glacier-Ressourcen (p. 166).

AnforderungssyntaxUm die Tags für einen Tresor aufzulisten, senden Sie eine HTTP-GET-Anfrage an den URI der Tags, wieim folgenden Syntaxbeispiel gezeigt.

GET /AccountId/vaults/vaultName/tags HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

API-Version 2012-06-01224

Page 232: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Tags For Vault

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

AntwortenWenn die Operation erfolgreich ist, sendet der Service eine HTTP-200 OK-Antwort zurück.

Antwortsyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: Length{ "Tags": { "string" : "string", "string" : "string" }}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

Tags

Die dem Tresor angefügten Tags. Jedes Tag besteht aus einem Schlüssel und einem Wert.

Typ: Zeichenfolge-zu-Zeichenfolge-Zuweisung

API-Version 2012-06-01225

Page 233: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Tags For Vault

Erforderlich: Ja

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispiel: Auflisten von Tags für einen TresorDas folgende Beispiel listet die Tags für einen Tresor auf.

Beispielanfrage

In diesem Beispiel wird eine GET-Anfrage gesendet, um eine Liste von Tags von dem angegebenen Tresorabzurufen.

GET /-/vaults/examplevault/tags HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Wenn die Anfrage erfolgreich war, gibt Amazon S3 Glacier (S3 Glacier) ein HTTP 200 OK mit einer Listeder Tags für den Tresor zurück, wie im folgenden Beispiel dargestellt wird.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMTContent-Type: application/jsonContent-Length: length

{ "Tags", { "examplekey1": "examplevalue1", "examplekey2": "examplevalue2" } }

Zugehörige Abschnitte

• Add Tags To Vault (POST tags add) (p. 196)

• Remove Tags From Vault (POST tags remove) (p. 232)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

API-Version 2012-06-01226

Page 234: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Vaults

• AWS-Befehlszeilenschnittstelle

List Vaults (GET vaults)BeschreibungDiese Operation listet alle Tresore auf, die das Konto des aufrufenden Benutzers besitzt. Diezurückgegebene Liste ist ASCII-sortiert nach Tresorname.

Standardmäßig gibt diese Operation bis zu 10 Elemente pro Anfrage zurück. Wenn mehr aufzulistendeTresore vorhanden sind, enthält das Feld marker im Antworttext den Amazon-Ressourcennamen (ARN)des Tresors, bei dem die Liste mit einer neuen List Vaults-Anfrage fortzusetzen ist, andernfalls hat das Feldmarker den Wert null. Legen Sie in Ihrer nächsten List Vaults-Anfrage den Parameter marker auf denWert fest, den Amazon S3 Glacier (S3 Glacier) in den Antworten auf Ihre vorherige List Vaults-Anfragezurückgegeben hat. Sie können die in der Antwort zurückgegebene Anzahl der Tresore auch begrenzen,indem Sie in der Anfrage den Parameter limit angeben.

AnforderungenUm eine Liste der Tresore abzurufen, senden Sie eine GET-Anfrage an die Ressource Tresore.

Syntax

GET /AccountId/vaults HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

Anfrageparameter

Für diesen Vorgang werden die folgenden Anforderungsparameter verwendet.

Name Beschreibung Erforderlich

limit Die maximale Anzahl der zurückzugebenden Tresore. DasStandardlimit ist 10. Die Anzahl der zurückgegebenen Tresorekann kleiner sein als das festgelegte Limit, aber die Anzahl derzurückgegebenen Tresore überschreitet das Limit nie.

Typ: Zeichenfolge

Beschränkungen: Mindestganzzahlwert 1. Höchstganzzahlwert 10.

Nein

API-Version 2012-06-01227

Page 235: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Vaults

Name Beschreibung Erforderlich

marker Eine zur Paginierung verwendete Zeichenfolge. marker gibtden ARN des Tresors an, nach dem die Auflistung der Tresorebeginnen soll. (Der von marker angegebene Tresor ist in derzurückgegebenen Liste nicht enthalten.) Rufen Sie den Wertfür marker aus einer vorherigen List Vaults-Antwort ab. Siemüssen marker nur dann einschließen, wenn Sie die Paginierungder Ergebnisse fortsetzen, die in einer vorherigen List Vaults-Anfrage gestartet wurde. Die Angabe eines leeren Werts ("") für dieMarkierung gibt eine Liste von Tresoren zurück, die mit dem erstenTresor beginnt.

Typ: Zeichenfolge

Einschränkungen: Keine

Nein

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: Length

{ "Marker": String "VaultList": [ { "CreationDate": String, "LastInventoryDate": String, "NumberOfArchives": Number, "SizeInBytes": Number, "VaultARN": String, "VaultName": String }, ... ]}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

API-Version 2012-06-01228

Page 236: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Vaults

AntworttextDer Antworttext enthält die folgenden JSON-Felder.

CreationDate

Das Erstellungsdatum des Tresors, in UTC (Coordinated Universal Time).

Typ: Zeichenfolge. Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

LastInventoryDate

Das Datum der letzten Tresorinventur, in UTC (Coordinated Universal Time). Dieses Feld kann Nullsein, wenn noch keine Inventur auf dem Tresor ausgeführt wurde, zum Beispiel, wenn Sie den Tresorgerade erst erstellt haben. Informationen zum Initiieren einer Inventur für einen Tresor finden Sie unterInitiate Job (POST jobs) (p. 284).

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

Marker

Der vaultARN, der angibt, wo die Paginierung der Ergebnisse fortgesetzt werden soll. Mithilfe desmarker in einer anderen List Vaults-Anfrage erhalten Sie mehr Tresore in der Liste. Wenn keineanderen Tresore vorhanden sind, ist dieser Wert null.

Typ: ZeichenfolgeNumberOfArchives

Die Anzahl der Archive im Tresor am Datum der letzten Inventur.

Typ: ZahlSizeInBytes

Die Gesamtgröße, in Bytes, aller Archive im Tresor, einschließlich jedes Overheads pro Archiv, amDatum der letzten Inventur.

Typ: ZahlVaultARN

Der Amazon-Ressourcenname (ARN) des Tresors.

Typ: ZeichenfolgeVaultList

Ein Array von Objekten, von dem jedes Objekt eine Beschreibung eines Tresors bereitstellt.

Typ: ArrayVaultName

Der Name des Tresors.

Typ: Zeichenfolge

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

API-Version 2012-06-01229

Page 237: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Vaults

BeispieleBeispiel: Alle Tresore auflisten

Das folgende Beispiel listet Tresore auf. Da die Parameter marker und limit in der Anfrage nichtangegeben sind, werden bis zu 10 Tresore zurückgegeben.

Beispielanfrage

GET /-/vaults HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Der Marker ist null und zeigt damit an, dass keine aufzulistenden Tresore mehr vorhanden sind.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMTContent-Type: application/jsonContent-Length: 497

{ "Marker": null, "VaultList": [ { "CreationDate": "2012-03-16T22:22:47.214Z", "LastInventoryDate": "2012-03-21T22:06:51.218Z", "NumberOfArchives": 2, "SizeInBytes": 12334, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault1", "VaultName": "examplevault1" }, { "CreationDate": "2012-03-19T22:06:51.218Z", "LastInventoryDate": "2012-03-21T22:06:51.218Z", "NumberOfArchives": 0, "SizeInBytes": 0, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault2", "VaultName": "examplevault2" }, { "CreationDate": "2012-03-19T22:06:51.218Z", "LastInventoryDate": "2012-03-25T12:14:31.121Z", "NumberOfArchives": 0, "SizeInBytes": 0, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault3", "VaultName": "examplevault3" } ]}

Beispiel: Teilweise Liste von Tresoren

Das folgende Beispiel gibt zwei Tresore zurück, beginnend mit dem vom marker angegebenen Tresor.

API-Version 2012-06-01230

Page 238: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Vaults

Beispielanfrage

GET /-/vaults?limit=2&marker=arn:aws:glacier:us-west-2:012345678901:vaults/examplevault1 HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Zwei Tresore werden in der Liste zurückgegeben. Der Marker enthält den ARN des Tresors, mit dem diePaginierung in einer weiteren List Vaults-Anfrage fortgesetzt wird.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMTContent-Type: application/jsonContent-Length: 497

{ "Marker": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault3", "VaultList": [ { "CreationDate": "2012-03-16T22:22:47.214Z", "LastInventoryDate": "2012-03-21T22:06:51.218Z", "NumberOfArchives": 2, "SizeInBytes": 12334, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault1", "VaultName": "examplevault1" }, { "CreationDate": "2012-03-19T22:06:51.218Z", "LastInventoryDate": "2012-03-21T22:06:51.218Z", "NumberOfArchives": 0, "SizeInBytes": 0, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault2", "VaultName": "examplevault2" } ]}

Zugehörige Abschnitte

• Create Vault (PUT vault) (p. 199)• Delete Vault (DELETE vault) (p. 203)• Initiate Job (POST jobs) (p. 284)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

API-Version 2012-06-01231

Page 239: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchRemove Tags From Vault

Remove Tags From Vault (POST tags remove)Mit dieser Operation werden Tags aus der Gruppe der Tags entfernt, die einem Tresor angefügt sind.Weitere Informationen zu Tags erhalten Sie unter Markieren von Amazon S3 Glacier-Ressourcen (p. 166).

Dieser Vorgang ist idempotent. Der Vorgang wird erfolgreich ausgeführt, auch wenn dem Tresor keineTags angefügt wurden.

AnforderungssyntaxUm Tags aus einem Tresor zu entfernen, senden Sie eine HTTP-POST-Anforderung an den URI der Tags,wie im folgenden Syntaxbeispiel gezeigt.

POST /AccountId/vaults/vaultName/tags?operation=remove HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Length: Lengthx-amz-glacier-version: 2012-06-01{ "TagKeys": [ "string", "string" ]}

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

Anfrageparameter

Name Beschreibung Erforderlich

operation=remove Ein einziger Abfragezeichenfolgeparameter operation mit demWert remove zur Unterscheidung von Add Tags To Vault (POSTtags add) (p. 196).

Ja

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Der Anforderungstext enthält die folgenden JSON-Felder.

API-Version 2012-06-01232

Page 240: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchRemove Tags From Vault

TagKeys

Eine Liste der Tag-Schlüssel. Alle entsprechenden Tags werden aus dem Tresor entfernt.

Typ: Zeichenfolge-Array

Längenbeschränkung: Mindestens 1 Element in der Liste. Maximal 10 Elemente in der Liste.

Erforderlich: Ja

AntwortenWenn die Aktion erfolgreich ist, gibt der Dienst die HTTP-Antwort 204 No Content mit leerem HTTP-Textinhalt zurück.

Syntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

Fehler

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispielanfrage

Das folgende Beispiel zeigt die HTTP-POST-Anforderung zum Entfernen der angegebenen Tags.

POST /-/vaults/examplevault/tags?operation=remove HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000ZAuthorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2Content-Length: lengthx-amz-glacier-version: 2012-06-01 { "TagsKeys": [ "examplekey1", "examplekey2" ]

API-Version 2012-06-01233

Page 241: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Vault Access Policy

}

Beispielantwort

Falls die Anforderung erfolgreich war, gibt Amazon S3 Glacier (S3 Glacier) den im folgenden Beispielgezeigten Code HTTP 204 No Content zurück.

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMT

Zugehörige Abschnitte

• Add Tags To Vault (POST tags add) (p. 196)

• List Tags For Vault (GET tags) (p. 224)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Set Vault Access Policy (PUT access-policy)BeschreibungMit diesem Vorgang wird eine Zugriffsichtlinie für einen Tresor festgelegt, wodurch gleichzeitigeine bereits vorhandene Richtlinie überschrieben wird. Senden Sie eine PUT-Anforderung an dieaccess-policy-Unterressource des Tresors, um eine Tresor-Zugriffsrichtlinie zu konfigurieren.Sie können pro Tresor eine Zugriffsrichtlinie mit einer Größe von bis zu 20 KB festlegen. WeitereInformationen zu Tresorzugriffsrichtlinien finden Sie unter Amazon S3 Glacier-Zugriffskontrolle mitTresorzugriffsrichtlinien (p. 146).

AnforderungenSyntax

Sie legen eine Tresor-Zugriffsrichtlinie fest, indem Sie eine HTTP-PUT-Anforderung an den URI deraccess-policy-Unterressource des Tresors senden. Orientieren Sie sich dabei an dem folgendenSyntaxbeispiel.

PUT /AccountId/vaults/vaultName/access-policy HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Length: Lengthx-amz-glacier-version: 2012-06-01 {

API-Version 2012-06-01234

Page 242: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Vault Access Policy

"Policy": "string"}

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDer Anforderungstext enthält die folgenden JSON-Felder.

Richtlinie

Die Tresorzugriffsrichtlinie als eine JSON-Zeichenfolge, die "\" als Escape-Zeichen verwendet.

Typ: Zeichenfolge

Erforderlich: Ja

AntwortenAls Antwort gibt S3 Glacier 204 No Content zurück, wenn die Richtlinie akzeptiert wurde.

Syntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-HeaderFür diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

API-Version 2012-06-01235

Page 243: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Vault Notification Configuration

BeispieleBeispielanfrage

Das folgende Beispiel sendet eine HTTP-PUT-Anfrage an den URI der access-policy-Unterressourcedes Tresors. In der JSON-Zeichenfolge Policy wird „\“ als Escape-Zeichen verwendet.

PUT /-/vaults/examplevault/access-policy HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000ZAuthorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2Content-Length: lengthx-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\"}]}"}

Beispielantwort

Falls die Anforderung erfolgreich war, gibt Amazon S3 Glacier (S3 Glacier) den im folgenden Beispielgezeigten Code HTTP 204 No Content zurück.

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMT

Zugehörige Abschnitte

• Delete Vault Access Policy (DELETE access-policy) (p. 205)

• Get Vault Access Policy (GET access-policy) (p. 212)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

Set Vault Notification Configuration (PUT notification-configuration)BeschreibungDas Abrufen eines Archivs und eines Tresorinventars sind asynchrone Operationen in Amazon S3Glacier (S3 Glacier), für die Sie zuerst eine Aufgabe initiieren und dann warten müssen, bis die Aufgabe

API-Version 2012-06-01236

Page 244: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Vault Notification Configuration

abgeschlossen ist, bevor Sie die Ausgabe der Aufgabe herunterladen können. Sie können einenTresor so konfigurieren, dass er eine Mitteilung an ein Amazon Simple Notification Service (AmazonSNS)-Thema sendet, wenn diese Aufträge abgeschlossen sind. Sie können mithilfe dieser OperationBenachrichtigungen für den Tresor konfigurieren. Weitere Informationen finden Sie unter Konfigurieren vonTresorbenachrichtigungen in Amazon S3 Glacier (p. 55).

Senden Sie eine PUT-Anforderung an die Unterressource notification-configuration des Tresors,um Tresorbenachrichtigungen zu konfigurieren. Eine Benachrichtigungskonfiguration ist spezifisch für einenTresor. Daher wird sie auch als eine Unterressource des Tresors bezeichnet. Die Anfrage sollte ein JSON-Dokument enthalten, das ein Amazon Simple Notification Service (Amazon SNS)-Thema angibt, sowie dieEreignisse, für die S3 Glacier Benachrichtigungen an das Thema senden soll.

Sie können einen Tresor so konfigurieren, dass er eine Benachrichtigung für die folgendenTresorereignisse veröffentlicht:

• ArchiveRetrievalCompleted: Dieses Ereignis tritt ein, wenn ein Auftrag abgeschlossen ist, der füreinen Archivabruf initiiert wurde (Initiate Job (POST jobs) (p. 284)). Der Status des abgeschlossenenAuftrags kann Succeeded oder Failed sein. Die Benachrichtigung, die an das SNS-Thema gesendetwird, ist die gleiche Ausgabe, wie sie von Describe Job (GET JobID) (p. 269) zurückgegeben wurde.

• InventoryRetrievalCompleted: Dieses Ereignis tritt ein, wenn ein Auftrag abgeschlossenist, der für einen Inventarabruf initiiert wurde (Initiate Job (POST jobs) (p. 284)). Der Status desabgeschlossenen Auftrags kann Succeeded oder Failed sein. Die Benachrichtigung, die an dasSNS-Thema gesendet wird, ist die gleiche Ausgabe, wie sie von Describe Job (GET JobID) (p. 269)zurückgegeben wurde.

Amazon SNS-Themen müssen die Berechtigung für den Tresor erteilen, damit Benachrichtigungen für dasThema veröffentlicht werden dürfen.

AnforderungenSenden Sie eine PUT-Anfrage an den URI der Unterressource notification-configuration desTresors, um die Benachrichtigungskonfiguration auf Ihrem Tresor einzurichten. Geben Sie die Konfigurationim Antworttext an. Die Konfiguration umfasst den Namen des Amazon SNS-Themas und ein Array vonEreignissen, die Benachrichtigungen für jedes Thema auslösen.

Syntax

PUT /AccountId/vaults/VaultName/notification-configuration HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

{ "SNSTopic": String, "Events":[String, ...] }

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

API-Version 2012-06-01237

Page 245: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Vault Notification Configuration

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDer JSON im Anfragentext enthält die folgenden Felder.

Events

Ein Array von einem oder mehreren Ereignissen, für die S3 Glacier Benachrichtigungen senden soll.

Zulässige Werte: ArchiveRetrievalCompleted | InventoryRetrievalCompleted

Erforderlich: Ja

Typ: ArraySNSTopic

Der ARN des Amazon SNS-Themas. Weitere Informationen finden Sie unter Erste Schritte mit AmazonSNS im Handbuch „Erste Schritte” für Amazon Simple Notification Service.

Erforderlich: Ja

Typ: Zeichenfolge

AntwortenAls Antwort gibt Amazon S3 Glacier (S3 Glacier) 204 No Content zurück, wenn dieBenachrichtigungskonfiguration akzeptiert wurde.

Syntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-HeaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

API-Version 2012-06-01238

Page 246: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchArchivoperationen

BeispieleDas folgende Beispiel zeigt, wie eine Tresorbenachrichtigung konfiguriert wird.

Beispielanfrage

Die folgende Anfrage richtet die examplevault-Benachrichtigungskonfiguration so ein,dass Benachrichtigungen für zwei Ereignisse (ArchiveRetrievalCompleted undInventoryRetrievalCompleted ) zum Amazon SNS-Thema arn:aws:sns:us-west-2:012345678901:mytopic gesendet werden.

PUT /-/vaults/examplevault/notification-policy HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: 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" }

Beispielantwort

Eine erfolgreiche Antwort gibt ein 204 No Content zurück.

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT

Zugehörige Abschnitte

• Get Vault Notifications (GET notification-configuration) (p. 218)• Delete Vault Notifications (DELETE notification-configuration) (p. 207)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Weitere Informationen finden Sie auch unter:Weitere Informationen zur Verwendung dieser API in einem der sprachspezifischen AWS SDKs finden Sieunter:

• AWS-Befehlszeilenschnittstelle

ArchivoperationenEs folgenden die zur Verwendung in S3 Glacier verfügbaren Archivoperationen.

Themen• Delete Archive (DELETE archive) (p. 240)

API-Version 2012-06-01239

Page 247: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDelete Archive

• Upload Archive (POST archive) (p. 242)

Delete Archive (DELETE archive)BeschreibungMit dieser Operation wird ein Archiv aus einem Tresor gelöscht. Sie können zu einem gegebenen Zeitpunktjeweils nur ein Archiv aus einem Tresor löschen. Zum Löschen des Archivs müssen Sie dessen Archiv-ID in der Löschanforderung angeben. Sie können die Archiv-ID ermitteln, indem Sie das Tresorinventarfür den Tresor, in dem sich Archiv befindet, herunterladen. Weitere Informationen zum Herunterladen desTresorinventars finden Sie unter Herunterladen eines Tresorinventars in Amazon S3 Glacier (p. 40).

Nach der Löschung eines Archivs kann noch eine erfolgreiche Anforderung zur Initiierung eines Auftragszum Abrufen des gelöschten Archivs möglich sein, der betreffende Auftrag schlägt jedoch fehl.

Wenn Sie ein Archiv löschen und währenddessen noch ein Abruf des Archivs über die Archiv-ID bearbeitetwird, kann der Abruf den folgenden Szenarien entsprechend fehlschlagen oder gelingen:

• Wenn die Daten für die Archivabrufaufgabe gerade noch zum Herunterladen vorbereitet werden, wennAmazon S3 Glacier (S3 Glacier) die Anforderung zum Löschen des Archivs empfängt, dann schlägt derArchivabruf wahrscheinlich fehl.

• Wenn das Archiv zu dem Zeitpunkt, zu dem S3 Glacier die Anforderung zum Löschen des Archivsempfängt, bereits erfolgreich für die Archivabrufaufgabe zum Herunterladen vorbereitet wurde, dannkönnen Sie die Ausgabe herunterladen.

Weitere Informationen zum Archivabruf finden Sie unter Herunterladen eines Archivs in Amazon S3Glacier (p. 90).

Dieser Vorgang ist idempotent. Der Versuch, ein bereits gelöschtes Archiv zu löschen, erzeugt keinenFehler.

AnforderungenZum Löschen eines Archivs senden Sie eine DELETE-Anforderung an den URI der Archivressource.

Syntax

DELETE /AccountId/vaults/VaultName/archives/ArchiveID HTTP/1.1Host: glacier.Region.amazonaws.comx-amz-Date: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

API-Version 2012-06-01240

Page 248: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDelete Archive

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-HeaderFür diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleIm folgenden Beispiel wird gezeigt, wie ein Archiv aus dem Tresor namens examplevault gelöscht wird.

BeispielanfrageDie ID des zu löschenden Archivs wird als untergeordnete Ressource von archives angegeben.

DELETE /-/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

BeispielantwortWenn die Anforderung erfolgreich ist, antwortet S3 Glacier mit 204 No Content, um anzuzeigen, dassdas Archiv gelöscht wurde.

HTTP/1.1 204 No Content

API-Version 2012-06-01241

Page 249: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchUpload Archive

x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT

Zugehörige Abschnitte

• Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251)• Upload Archive (POST archive) (p. 242)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Upload Archive (POST archive)BeschreibungMit dieser Operation wird ein Archiv einem Tresor hinzugefügt. Erfolgreich hochgeladene Daten werdendauerhaft gespeichert. Die von Amazon S3 Glacier (S3 Glacier) zurückgegebene Antwort enthält dieArchiv-ID im x-amz-archive-id-Header. Sie sollten die zurückgegeben Archiv-ID speichern, damit Siespäter auf das Archiv zugreifen können.

Sie müssen den SHA256-Struktur-Hash der hochgeladenen Daten angeben. Weitere Informationen überdie Berechnung eines SHA256-Struktur-Hash finden Sie unter Berechnen von Prüfsummen (p. 179).

Beim Hochladen eines Archivs können Sie eine optionale Beschreibung des Archivs mit bis zu 1 024druckbaren ASCII-Zeichen angeben. S3 Glacier gibt die Archivbeschreibung zurück, wenn Sie das Archivabrufen oder die Tresorinventarliste abfragen. S3 Glacier interpretiert diese Beschreibung in keinerWeise. Eine Archivbeschreibung muss nicht eindeutig sein. Die Beschreibung bietet keine Möglichkeit, dieArchivliste abzurufen oder zu sortieren.

Mit Ausnahme der optionalen Archivbeschreibung unterstützt S3 Glacier keine weiteren Metadaten für dieArchive. Die Archiv-ID ist eine opake Sequenz von Zeichen, die keine Rückschlüsse auf das Archiv erlaubt.Es bietet sich darum an, clientseitig Metadaten für die Archive zu erstellen. Weitere Informationen findenSie unter Arbeiten mit Archiven in Amazon S3 Glacier (p. 73).

Archive sind unveränderlich. Nachdem ein Archiv hochgeladen wurde, kann weder das Archiv noch seineBeschreibung bearbeitet werden.

AnforderungenVerwenden Sie zum Hochladen eines Archivs die HTTP-POST-Methode und richten Sie Anforderungauf die archives-Unterressource des Tresors aus, in dem Sie das Archiv speichern möchten. DieAnforderung muss die Größe der Archivnutzlast und die Prüfsumme (SHA256-Struktur-Hash) enthalten undkann optional auch eine Beschreibung des Archivs beinhalten.

Syntax

POST /AccountId/vaults/VaultName/archivesHost: glacier.Region.amazonaws.comx-amz-glacier-version: 2012-06-01Date: DateAuthorization: SignatureValuex-amz-archive-description: Descriptionx-amz-sha256-tree-hash: SHA256 tree hashx-amz-content-sha256: SHA256 linear hashContent-Length: Length

API-Version 2012-06-01242

Page 250: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchUpload Archive

<Request body.>

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterBei dieser Implementierung der Operation werden keine Anforderungsparameter verwendet.

AnforderungsheaderFür diesen Vorgang werden neben den für alle Vorgänge geltenden Anforderungs-Header die folgendenAnforderungs-Header verwendet. Weitere Informationen über allgemeine Anforderungs-Header finden Sieunter Häufig verwendete Anforderungsheader (p. 172).

Name Beschreibung Erforderlich

Content-Length Die Größe des Objekts in Bytes. Weitere Informationenfinden Sie unter http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13.

Typ: Zahl

Standard: keiner

Einschränkungen: Keine

Ja

x-amz-archive-description

Die optionale Beschreibung des Archivs, das Sie hochladen. Eskann sich dabei um eine Beschreibung in Textform oder eineKennzeichnung Ihrer Wahl handeln. Die Beschreibung musssich nicht eindeutig von den Beschreibungen für andere Archiveunterscheiden. Wenn Sie die Inventarliste eines Tresors abrufen(siehe Initiate Job (POST jobs) (p. 284)), enthält die Antwortdiese Beschreibung für jedes zurückgegebene Archiv.

Typ: Zeichenfolge

Standard: keiner

Einschränkungen: Die Beschreibung darf höchstens1 024 Zeichen umfassen. Zulässig sind 7-Bit-ASCII-Zeichen ohneSteuercodes, also die ASCII-Dezimalwerte 32 bis 126 bzw. dieASCII-Hexadezimalwerte 0x20 bis 0x7E.

Nein

x-amz-content-sha256

Die SHA256-Prüfsumme (ein linearer Hash) für die Nutzlast.Dieser Wert stimmt nicht mit dem im x-amz-sha256-tree-hash-Header angegebenen Wert überein.

Typ: Zeichenfolge

Standard: keiner

Einschränkungen: Keine

Ja

API-Version 2012-06-01243

Page 251: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchUpload Archive

Name Beschreibung Erforderlich

x-amz-sha256-tree-hash

Die vom Benutzer berechnete Prüfsumme (SHA256-Struktur-Hash) für die Nutzlast. Weitere Informationen über dieBerechnung des SHA256-Struktur-Hash finden Sie unterBerechnen von Prüfsummen (p. 179). Wenn S3 Glaciereine andere Prüfsumme für die Nutzlast berechnet, wird dieAnforderung abgelehnt.

Typ: Zeichenfolge

Standard: keiner

Einschränkungen: Keine

Ja

AnforderungstextDer Anfragetext enthält die hochzuladenden Daten.

AntwortenS3 Glacier speichert das Archiv dauerhaft und gibt in der Antwort einen URI-Pfad zur Archiv-ID zurück.

Syntax

HTTP/1.1 201 Createdx-amzn-RequestId: x-amzn-RequestIdDate: Datex-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacierLocation: Locationx-amz-archive-id: ArchiveId

Antwort-HeaderEin erfolgreiche Antwort umfasst neben den für alle Vorgänge geltenden Antwort-Header die folgendenAntwort-Header. Weitere Informationen über allgemeine Antwort-Header finden Sie unter AllgemeineAntwort-Header (p. 175).

Name Beschreibung

Location Der relative URI-Pfad der neu hinzugefügten Archivressource.

Typ: Zeichenfolge

x-amz-archive-id

Die ID des Archivs. Dieser Wert wird ebenfalls als Teil des Location-Headersangegeben.

Typ: Zeichenfolge

x-amz-sha256-tree-hash

Die von S3 Glacier berechnete Prüfsumme für das Archiv.

Typ: Zeichenfolge

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

API-Version 2012-06-01244

Page 252: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchOperationen für mehrteiligen Upload

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispielanfrageDas folgende Beispiel zeigt eine Anforderung zum Hochladen eines Archivs.

POST /-/vaults/examplevault/archives HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-sha256-tree-hash: beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60x-amz-content-sha256: 7f2fe580edb35154041fa3d4b41dd6d3adaef0c85d2ff6309f1d4b520eeecda3Content-Length: 2097152x-amz-glacier-version: 2012-06-01Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version,Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace

<Request body (2097152 bytes).>

BeispielantwortDie unten gezeigte Antwort enthält einen Location-Header, dem Sie die ID entnehmen können, die S3Glacier dem Archiv zugewiesen hat.

HTTP/1.1 201 Createdx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTx-amz-sha256-tree-hash: beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60Location: /111122223333/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveIdx-amz-archive-id: NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId

Zugehörige Abschnitte

• Arbeiten mit Archiven in Amazon S3 Glacier (p. 73)• Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82)• Delete Archive (DELETE archive) (p. 240)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Operationen für mehrteiligen UploadEs folgen die Operationen zum mehrteiligen Upload, die zur Verwendung in S3 Glacier verfügbar sind.

Themen• Abort Multipart Upload (DELETE uploadID) (p. 246)• Complete Multipart Upload (POST uploadID) (p. 248)• Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251)

API-Version 2012-06-01245

Page 253: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbort Multipart Upload

• List Parts (GET uploadID) (p. 255)• List Multipart Uploads (GET multipart-uploads) (p. 260)• Upload Part (PUT uploadID) (p. 265)

Abort Multipart Upload (DELETE uploadID)DescriptionDieser mehrteilige Upload-Vorgang stoppt einen mehrteiligen Upload, der durch die Upload-ID identifiziertwird.

Wenn die Anforderung zum Abbruch des mehrteiligen Uploads erfolgreich ist, können Sie die Upload-IDnicht mehr zum Hochladen weiterer Teile oder für andere Operationen verwenden. Das Stoppen einesabgeschlossenen mehrteiligen Uploads schlägt fehl. Das Stoppen eines bereits angehaltenen Uploads wirdjedoch für kurze Zeit erfolgreich sein.

Dieser Vorgang ist idempotent.

Weitere Informationen über mehrteilige Uploads finden Sie unter Hochladen von großen Archiven in Teilen(Multipart Upload) (p. 82).

RequestsUm einen mehrteiligen Upload zu stoppen, senden Sie ein HTTP DELETE an den URI des multipart-uploads -Unterressource des Tresors und identifizieren Sie die spezifische mehrteilige Upload-ID als Teildes URI.

Syntax

DELETE /AccountId/vaults/VaultName/multipart-uploads/uploadID HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

Anforderungs-HeaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

API-Version 2012-06-01246

Page 254: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbort Multipart Upload

ResponsesSyntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

Errors

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

ExampleBeispielanfrage

Im folgenden Beispiel wird eine DELETE-Anforderung an den URI einer Ressource mit der ID desmehrteiligen Uploads gesendet.

DELETE /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT

Zugehörige Abschnitte

• Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251)• Upload Part (PUT uploadID) (p. 265)• Complete Multipart Upload (POST uploadID) (p. 248)• List Multipart Uploads (GET multipart-uploads) (p. 260)• List Parts (GET uploadID) (p. 255)

API-Version 2012-06-01247

Page 255: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbschließen eines mehrteiligen Uploads

• Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Complete Multipart Upload (POST uploadID)DescriptionSie rufen diese mehrteilige Upload-Operation auf, um Amazon S3 Glacier (S3 Glacier) zu informieren,dass alle Archivteile hochgeladen wurden und S3 Glacier das Archiv jetzt aus den hochgeladenen Teilenzusammenstellen kann.

Weitere Informationen über mehrteilige Uploads finden Sie unter Hochladen von großen Archiven in Teilen(Multipart Upload) (p. 82).

Nach der Zusammenstellung und Speicherung des Archivs im Tresor gibt S3 Glacier die Archiv-ID derneu erstellten Archivressource zurück. Nachdem Sie ein Archiv hochgeladen haben, sollten Sie diezurückgegebene Archiv-ID speichern, um das Archiv an einem späteren Zeitpunkt abrufen zu können.

Sie müssen den berechneten SHA256-Struktur-Hash des gesamten hochgeladenen Archivs in die Anfrageeinschließen. Weitere Informationen über die Berechnung eines SHA256-Struktur-Hash finden Sie unterBerechnen von Prüfsummen (p. 179). Auf der Serverseite konstruiert S3 Glacier den SHA256-Struktur-Hash des gesamten Archivs ebenfalls. Wenn die Werte übereinstimmen, speichert S3 Glacier das Archivim Tresor. Andernfalls wird ein Fehler zurückgegeben und die Operation schlägt fehl. Die List Parts (GETuploadID) (p. 255)-Operation gibt eine Liste der hochgeladenen Teile für einen bestimmten mehrteiligenUpload zurück. Sie enthält die Prüfsummeninformationen für jeden hochgeladenen Teil, die zum Debuggeneines Problems mit einer falschen Prüfsumme genutzt werden können.

Außerdem prüft S3 Glacier auf fehlende Inhaltsbereiche. Beim Upload von Teilen geben Sie Bereichswertean, die bestimmen, wie die Teile in der endgültigen Zusammenstellung des Archivs zusammenpassen.Beim Zusammenstellen des endgültigen Archivs prüft S3 Glacier auf fehlende Inhaltsbereiche. S3 Glaciergibt einen Fehler zurück, wenn fehlende Inhaltsbereiche gefunden wurden. In dem Fall schlägt die„Complete Multipart Upload“-Operation fehl.

Die „Complete Multipart Upload“-Operation ist idempotent. Wenn Sie die Operation innerhalb vonkurzer Zeit nach der ersten erfolgreichen „Complete Multipart Upload“-Operation erneut aufrufen, istdiese Operation erfolgreich und gibt die gleiche Archiv-ID zurück. Dies ist nützlich für den Fall, dass einNetzwerkproblem auftritt oder ein 500-Serverfehler auftritt. In diesem Fall können Sie Ihre Anfrage zumvollständigen mehrteiligen Upload wiederholen und dieselbe Archiv-ID erhalten, ohne doppelte Archivezu erstellen. Beachten Sie jedoch, dass Sie die „List Parts“-Operation nach Abschluss des mehrteiligenUploads nicht aufrufen können, und der mehrteilige Upload nicht in der „List Multipart Uploads“-Antwortangezeigt wird. Dies ist auch dann der Fall, wenn ein idempotenter Abschluss möglich ist.

RequestsUm einen mehrteiligen Upload abzuschließen, senden Sie eine HTTP POST-Anfrage an den URIder Upload-ID, die S3 Glacier als Antwort auf Ihre „Initiate Multipart Upload“-Anfrage erstellt hat. Diesist der gleiche URI, den Sie beim Uploads der Teile verwendet haben. Zusätzlich zu den üblichenerforderlichen Headern müssen Sie das Ergebnis des SHA256-Struktur-Hashs des gesamten Archivs unddie Gesamtgröße des Archivs in Byte einschließen.

Syntax

POST /AccountId/vaults/VaultName/multipart-uploads/uploadIDHost: glacier.Region.amazonaws.comDate: date

API-Version 2012-06-01248

Page 256: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbschließen eines mehrteiligen Uploads

Authorization: SignatureValuex-amz-sha256-tree-hash: SHA256 tree hash of the archivex-amz-archive-size: ArchiveSize in bytesx-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Anfrageparameter

Dieser Vorgang verwendet keine Anforderungsparameter.

Anforderungs-Header

Für diesen Vorgang werden neben den für alle Vorgänge geltenden Anforderungs-Header die folgendenAnforderungs-Header verwendet. Weitere Informationen über allgemeine Anforderungs-Header finden Sieunter Häufig verwendete Anforderungsheader (p. 172).

Name Description (Beschreibung) Erforderlich

x-amz-archive-size

Die Gesamtgröße des gesamten Archivs in Byte. Dieser Wertsollte die Summe aller Größen der einzelnen Teile sein, die Siehochgeladen haben.

Typ : Zeichenfolge.

Standard Keine.

Einschränkungen Keine.

Ja.

x-amz-sha256-tree-hash

Der SHA256-Struktur-Hash des gesamten Archivs. Dies ist derStruktur-Hash des SHA256-Struktur-Hashs der einzelnen Teile.Wenn der Wert, den Sie in der Anfrage angeben, nicht mit demSHA256-Struktur-Hash des endgültig zusammengestellten Archivs,wie er von S3 Glacier berechnet wurde, übereinstimmt, gibt S3Glacier einen Fehler zurück und die Anfrage schlägt fehl.

Typ : Zeichenfolge.

Standard Keine.

Einschränkungen Keine.

Ja.

Anfrage-Elemente

Bei dieser Operation werden keine Anfrageelemente verwendet.

ResponsesAmazon S3 Glacier (S3 Glacier) erstellt einen SHA256-Struktur-Hash des gesamten Archivs. Wenn derWert mit dem SHA256-Struktur-Hash des gesamten von Ihnen in der Anfrage angegebenen Archivs

API-Version 2012-06-01249

Page 257: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAbschließen eines mehrteiligen Uploads

übereinstimmt, fügt S3 Glacier das Archiv dem Tresor hinzu. Als Antwort wird der HTTP-Location-Headermit dem URL-Pfad der neu erstellten Archivressource zurückgegeben. Wenn die in der Anfrage gesendeteArchivgröße oder der SHA256 nicht übereinstimmen, gibt S3 Glacier einen Fehler zurück und der Uploadbleibt in einem nicht abgeschlossenen Status. Es ist möglich, die „Complete Multipart Upload“-Operationspäter mit korrekten Werten zu wiederholen. Dann können Sie erfolgreich ein Archiv erstellen. Wenn einmehrteiliger Upload nicht abgeschlossen wird, fordert S3 Glacier die Upload-ID schließlich zurück.

Syntax

HTTP/1.1 201 Createdx-amzn-RequestId: x-amzn-RequestIdDate: DateLocation: Locationx-amz-archive-id: ArchiveId

Antwort-HeaderEin erfolgreiche Antwort umfasst neben den für alle Vorgänge geltenden Antwort-Header die folgendenAntwort-Header. Weitere Informationen über allgemeine Antwort-Header finden Sie unter AllgemeineAntwort-Header (p. 175).

Name Description (Beschreibung)

Location Der relative URI-Pfad des neu erstellen Archivs. Diese URL umfasst die Archiv-ID,die von S3 Glacier erstellt wird.

Typ : Zeichenfolge.

x-amz-archive-id

Die ID des Archivs. Dieser Wert wird ebenfalls als Teil des Location-Headersangegeben.

Typ : Zeichenfolge.

AntwortfelderDieser Vorgang gibt keinen Antworttext zurück.

ExampleBeispielanfrageIn diesem Beispiel wird eine HTTP POST-Anfrage an den URI gesendet, der von einer „Initiate MultipartUpload“-Anfrage zurückgegeben wurde. In der Anfrage werden der SHA256-Struktur-Hash des gesamtenArchivs und die Gesamtgröße des Archivs angegeben.

POST /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1Host: glacier.us-west-2.amazonaws.comz-amz-Date: 20170210T120000Zx-amz-sha256-tree-hash:1ffc0f54dd5fdd66b62da70d25edacd0x-amz-archive-size:8388608x-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

API-Version 2012-06-01250

Page 258: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchMultipart-Upload initiieren

BeispielantwortDie folgende Beispielantwort zeigt, dass S3 Glacier aus den hochgeladenen Teilen erfolgreich ein Archiverstellt hat. Die Antwort umfasst die Archiv-ID mit vollständigem Pfad.

HTTP/1.1 201 Createdx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTLocation: /111122223333/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveIdx-amz-archive-id: NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId

Sie können jetzt HTTP-Anfragen an den URI der neu hinzugefügten Ressource/des Archivs senden. Siekönnen beispielsweise eine GET-Anfrage senden, um das Archiv abzurufen.

Zugehörige Abschnitte

• Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251)• Upload Part (PUT uploadID) (p. 265)• Abort Multipart Upload (DELETE uploadID) (p. 246)• List Multipart Uploads (GET multipart-uploads) (p. 260)• List Parts (GET uploadID) (p. 255)• Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82)• Delete Archive (DELETE archive) (p. 240)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Mehrteiligen Upload initiieren (POST multipartuploads)DescriptionDiese Operation startet einen mehrteiligen Upload (siehe Hochladen von großen Archiven in Teilen(Multipart Upload) (p. 82)). Amazon S3 Glacier (S3 Glacier) erstellt eine Ressource für einen mehrteiligenUpload und gibt die Upload-ID in der Antwort zurück. Sie verwenden diese Upload-ID bei allen darauffolgenden mehrteiligen Upload-Vorgängen.

Wenn Sie den mehrteiligen Upload initiieren, geben Sie die Größe der einzelnen Teile in Bytes an. DieGröße der Teile muss mindestens ein Megabyte (1024 KB) betragen bzw. als ein mit dem Faktor 1048576multipliziertes Vielfaches angegeben werden, also z. B. 1 (2097152 MB), 2 (4194304 MB), 4 (8388608 MB),8 (8 MB) usw. Der kleinste zulässige Wert für die Größe ist 1 MB, der größte 4 GB.

Mit Ausnahme des letzten Teils muss jeder Teil, den Sie mit dieser Upload-ID hochladen, dieselbe Größeaufweisen. Der letzte Teil kann dieselbe Größe haben oder kleiner sein. Beispiel: Angenommen, Siemöchten eine Datei mit 16,2 MB hochladen. Wenn Sie einen mehrteiligen Upload mit 4 MB großen Teileninitiieren, laden Sie vier Teile mit jeweils 4 MB und ein Teil mit 0,2 MB hoch.

Note

Es ist dabei nicht notwendig, dass Ihnen die Gesamtgröße des Archivs bekannt ist, wenn Sie denmehrteiligen Upload starten. S3 Glacier erfordert keine Angabe der Gesamtgröße des Archivs.

API-Version 2012-06-01251

Page 259: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchMultipart-Upload initiieren

Wenn der mehrteilige Upload erfolgreich abgeschlossen ist, entfernt S3 Glacier die Ressource für denmehrteiligen Upload, auf die die ID verweist. S3 Glacier entfernt die Ressource auch, wenn Sie denmehrteiligen Upload abbrechen, und normalerweise nach 24 Stunden ohne Aktivität. Die ID ist unterUmständen nach 24 Stunden noch vorhanden. Dieses Verhalten kann jedoch von Anwendungen nichtvorausgesetzt werden.

RequestsSenden Sie zum Initiieren eines mehrteiligen Uploads eine HTTP-POST-Anforderung an den URI dermultipart-uploads-Unterressource des Tresors, in dem Sie das Archiv speichern möchten. DieAnforderung muss die Größe der Teile enthalten und kann optional auch eine Beschreibung des Archivsbeinhalten.

Syntax

POST /AccountId/vaults/VaultName/multipart-uploads Host: glacier.us-west-2.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01x-amz-archive-description: ArchiveDescriptionx-amz-part-size: PartSize

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

Anforderungs-HeaderFür diesen Vorgang werden neben den für alle Vorgänge geltenden Anforderungs-Header die folgendenAnforderungs-Header verwendet. Weitere Informationen über allgemeine Anforderungs-Header finden Sieunter Häufig verwendete Anforderungsheader (p. 172).

Name Description (Beschreibung) Erforderlich

x-amz-part-size Die Größe jedes Teils mit Ausnahme des letztenTeils, in Bytes. Der letzte Teil kann kleiner als dieanderen Teile sein.

Typ: Zeichenfolge

Standard: Keine

Einschränkungen: Die Größe der Teilemuss mindestens ein Megabyte (1024 KB)betragen bzw. als ein mit dem Faktor 1048576multipliziertes Vielfaches angegeben werden,also z. B. 1 (2097152 MB), 2 (4194304 MB),4 (8388608 MB), 8 (8 MB) usw. Der kleinste

Ja

API-Version 2012-06-01252

Page 260: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchMultipart-Upload initiieren

Name Description (Beschreibung) Erforderlichzulässige Wert für die Größe ist 1 MB, der größte4 GB (4 096 MB).

x-amz-archive-description Die Beschreibung des Archivs, das Sie inTeilen hochladen. Es kann sich dabei um eineBeschreibung in Textform oder eine eindeutigeKennzeichnung Ihrer Wahl handeln. WennSie eine Inventarliste eines Tresors abrufen(siehe Initiate Job (POST jobs) (p. 284)),enthält die Antwort diese Beschreibung für jedeszurückgegebene Archiv. Leerzeichen am Anfangvon Archivbeschreibungen werden entfernt.

Typ: Zeichenfolge

Standard: Keine

Einschränkungen: Die Beschreibung musskleiner oder gleich 1024 Byte sein. Zulässig sind7-Bit-ASCII-Zeichen ohne Steuercodes, also dieASCII-Dezimalwerte 32 bis 126 bzw. die ASCII-Hexadezimalwerte 0x20 bis 0x7E.

Nein

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

ResponsesAls Antwort erstellt S3 Glacier eine Ressource für den mehrteiligen Upload, die durch eine IDgekennzeichnet ist, und gibt den relativen URI-Pfad für die ID des mehrteiligen Uploads zurück.

Syntax

HTTP/1.1 201 Createdx-amzn-RequestId: x-amzn-RequestIdDate: DateLocation: Locationx-amz-multipart-upload-id: multiPartUploadId

Antwort-Header

Ein erfolgreiche Antwort umfasst neben den für alle Vorgänge geltenden Antwort-Header die folgendenAntwort-Header. Weitere Informationen über allgemeine Antwort-Header finden Sie unter AllgemeineAntwort-Header (p. 175).

Name Description (Beschreibung)

Location Der relative URI-Pfad für die ID des mehrteiligen Uploads, die S3 Glacier erstellthat. Über den URI-Pfad können Sie Ihre Anforderungen zum Hochladen von Teilengenau ausrichten und den mehrteiligen Upload abschließen.

Typ: Zeichenfolge

API-Version 2012-06-01253

Page 261: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchMultipart-Upload initiieren

Name Description (Beschreibung)

x-amz-multipart-upload-id

Die ID des mehrteiligen Uploads. Dieser Wert wird ebenfalls als Teil des Location-Headers angegeben.

Typ: Zeichenfolge

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

Errors

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispielBeispielanfrage

Das folgende Beispiel initiiert einen mehrteiligen Upload durch Senden einer HTTP-POST-Anforderungan den URI der multipart-uploads-Unterressource eines Tresors mit dem Namen examplevault.Die Anforderung enthält Header, die die Größe der Teile von 4 MB (4194304 Bytes) und die optionaleArchivbeschreibung angeben.

POST /-/vaults/examplevault/multipart-uploads Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-archive-description: MyArchive-101x-amz-part-size: 4194304x-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

S3 Glacier erstellt eine Ressource für den mehrteiligen Upload und fügt sie der multipart-uploads-Unterressource des Tresors hinzu. Der Location-Antwort-Header schließt den relativen URI-Pfad zur IDfür den mehrteiligen Upload ein.

HTTP/1.1 201 Createdx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTLocation: /111122223333/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLEx-amz-multipart-upload-id: OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE

Weitere Informationen über das Hochladen einzelner Teile finden Sie unter Upload Part (PUTuploadID) (p. 265).

Zugehörige Abschnitte

API-Version 2012-06-01254

Page 262: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchTeile auflisten

• Upload Part (PUT uploadID) (p. 265)• Complete Multipart Upload (POST uploadID) (p. 248)• Abort Multipart Upload (DELETE uploadID) (p. 246)• List Multipart Uploads (GET multipart-uploads) (p. 260)• List Parts (GET uploadID) (p. 255)• Delete Archive (DELETE archive) (p. 240)• Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

List Parts (GET uploadID)BeschreibungDiese mehrteilige Upload-Operation listet die Teile eines Archivs auf, die in einem spezifischen mehrteiligenUpload, der durch eine Upload-ID identifiziert wird, hochgeladen wurde. Weitere Informationen übermehrteilige Uploads finden Sie unter Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82).

Sie können diese Anfrage jederzeit stellen, während ein mehrteiliger Upload in Bearbeitung ist, bevor Sieden mehrteiligen Upload abschließen. S3 Glacier gibt die Teileliste zurück, sortiert nach dem Bereich, denSie beim Hochladen jedes Teils angegeben haben. Wenn Sie eine List Parts-Anfrage senden, nachdem dermehrteilige Upload abgeschlossen ist, gibt Amazon S3 Glacier (S3 Glacier) einen Fehler zurück.

Die List Parts-Operation unterstützt Paginierung. Sie sollten immer das Feld Marker im Antworttextauf eine Markierung überprüfen, bei der die Liste fortgesetzt werden soll. Wenn keine Elemente mehrvorhanden sind, ist der Wert des Felds marker gleich null. Wenn der marker-Wert nicht Null ist,senden Sie, um den nächsten Teilsatz abzurufen, eine weitere List Parts-Anforderung, wobei der marker-Anfrageparameter auf den Wert festgelegt ist, den S3 Glacier als Antwort auf Ihre vorherige List Parts-Anforderung zurückgegeben hat.

Sie können die in der Antwort zurückgegebene Anzahl der Teile auch begrenzen, indem Sie in der Anfrageden Parameter limit angeben.

AnforderungenSyntax

Um die Liste der Teile in einem mehrteiligen Upload, der in Bearbeitung ist, aufzulisten, senden Sie eineGET-Anfrage an den URI der Ressource mit der ID des mehrteiligen Uploads. Die ID des mehrteiligenUploads wird zurückgegeben, wenn Sie einen mehrteiligen Upload initiieren (Mehrteiligen Upload initiieren(POST multipart uploads) (p. 251)). Sie können optional die Parameter marker und limit angeben.

GET /AccountId/vaults/VaultName/multipart-uploads/uploadID HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signieren

API-Version 2012-06-01255

Page 263: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchTeile auflisten

der Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Anfrageparameter

Name Beschreibung Erforderlich

limit Die maximale Anzahl der zurückzugebenden Teile. DasStandardlimit ist 50. Die Anzahl der zurückgegebenen Teilekann kleiner sein als das festgelegte Limit, aber die Anzahl derzurückgegebenen Teile überschreitet das Limit nie.

Typ: Zeichenfolge

Beschränkungen: Mindestganzzahlwert 1. Höchstganzzahlwert 50.

Nein

marker Eine zur Paginierung verwendete opake Zeichenfolge. markergibt den Teil an, mit dem die Auflistung von Teilen beginnen soll.Rufen Sie den marker-Wert von der Antwort einer vorherigen ListParts-Antwort ab. Sie müssen den marker nur dann einschließen,wenn Sie die Paginierung der Ergebnisse fortsetzen, die in einervorherigen List Parts-Anfrage gestartet wurde.

Typ: Zeichenfolge

Einschränkungen: Keine

Nein

Anforderungsheader

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: Length

{ "ArchiveDescription" : String, "CreationDate" : String, "Marker": String, "MultipartUploadId" : String, "PartSizeInBytes" : Number, "Parts" : [ { "RangeInBytes" : String, "SHA256TreeHash" : String

API-Version 2012-06-01256

Page 264: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchTeile auflisten

}, ... ], "VaultARN" : String}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

ArchiveDescription

Die Beschreibung des Archivs, die in der Initiate Multipart Upload-Anfrage angegeben wurde. DerWert dieses Felds ist null, wenn in der Initiate Multipart Upload-Operation keine Archivbeschreibungangegeben wurde.

Typ: ZeichenfolgeCreationDate

Die UTC-Zeit, zu der der mehrteilige Upload initiiert wurde.

Typ: Zeichenfolge. Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

Marker

Eine opake Zeichenfolge, die angibt, wo die Paginierung der Ergebnisse fortgesetzt werden soll.Mithilfe des marker in einer anderen List Parts-Anfrage erhalten Sie mehr Aufträge in der Liste. Wennkeine anderen Teile vorhanden sind, ist dieser Wert null.

Typ: ZeichenfolgeMultipartUploadId

Die ID des Uploads, zu dem die Teile gehören.

Typ: ZeichenfolgePartSizeInBytes

Die Größe des Teils in Bytes. Dies ist derselbe Wert wie der, den Sie in der Initiate Multipart Upload-Anfrage angegeben haben.

Typ: ZahlKomponenten

Eine Liste der Teilegrößen des mehrteiligen Uploads. Jedes Objekt im Array enthält ein RangeBytesund sha256-tree-hash Name-Wert-Paar.

Typ: ArrayRangeInBytes

Der Byte-Bereich eines Teils, einschließlich des oberen Werts des Bereichs.

API-Version 2012-06-01257

Page 265: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchTeile auflisten

Typ: ZeichenfolgeSHA256TreeHash

Der Wert des SHA256-Struktur-Hash, den S3 Glacier für den Teil berechnet hat. Dieses Feld hatniemals den Wert null.

Typ: ZeichenfolgeVaultARN

Der ARN (Amazon-Ressourcenname) des Tresors, für den der mehrteilige Upload initiiert wurde.

Typ: Zeichenfolge

Fehler

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispiel: Auflisten von Teilen eines mehrteiligen Uploads

Im folgenden Beispiel werden alle Teile eines Uploads aufgelistet. In dem Beispiel wird eine HTTP-GET-Anfrage an den URI der spezifischen ID des mehrteiligen Uploads gesendet, der in Bearbeitung ist, und eswerden bis zu 1 000 Teile zurückgegeben.

Beispielanfrage

GET /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

In der Antwort gibt S3 Glacier eine Liste der hochgeladenen Teile zurück, die der angegebenen IDdes mehrteiligen Uploads zugeordnet sind. In diesem Beispiel gibt es nur zwei Teile. Der Wert deszurückgegebenen Marker-Felds ist null. Dadurch wird angezeigt, dass keine Teile des mehrteiligenUploads mehr vorhanden sind.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: 412 { "ArchiveDescription" : "archive description", "CreationDate" : "2012-03-20T17:03:43.221Z", "Marker": null, "MultipartUploadId" : "OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE",

API-Version 2012-06-01258

Page 266: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchTeile auflisten

"PartSizeInBytes" : 4194304, "Parts" : [ { "RangeInBytes" : "0-4194303", "SHA256TreeHash" : "01d34dabf7be316472c93b1ef80721f5d4" }, { "RangeInBytes" : "4194304-8388607", "SHA256TreeHash" : "0195875365afda349fc21c84c099987164" }], "VaultARN" : "arn:aws:glacier:us-west-2:012345678901:vaults/demo1-vault"}

Beispiel: Auflisten von Teilen eines mehrteiligen Uploads (Angeben der ParameterMarkierung und Limitanfrage)

Das folgende Beispiel zeigt, wie Sie Paginierung verwenden können, um eine begrenzte Anzahl vonErgebnissen zu erhalten. In dem Beispiel wird eine HTTP-GET-Anfrage an den URI der spezifischen IDeines mehrteiligen Uploads gesendet, der in Bearbeitung ist, um ein Teil zurückzugeben. Ein Start-marker-Parameter gibt an, bei welchem Teil die Teileliste startet. Sie können den marker-Wert von der Antworteiner vorherigen Anfrage für eine Teileliste abrufen. Darüber hinaus ist der limit-Parameter in diesemBeispiel auf 1 eingestellt und es wird ein Teil zurückgegeben. Beachten Sie, dass das Marker-Feld nichtnull ist, was bedeutet, das noch mindestens ein Teil abzurufen ist.

Beispielanfrage

GET /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE?marker=1001&limit=1 HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

In der Antwort gibt S3 Glacier eine Liste der hochgeladenen Teile zurück, die der angegebenen ID desmehrteiligen Uploads in Bearbeitung zugeordnet sind.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: text/jsonContent-Length: 412 { "ArchiveDescription" : "archive description 1", "CreationDate" : "2012-03-20T17:03:43.221Z", "Marker": "MfgsKHVjbQ6EldVl72bn3_n5h2TaGZQUO-Qb3B9j3TITf7WajQ", "MultipartUploadId" : "OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE", "PartSizeInBytes" : 4194304, "Parts" : [ { "RangeInBytes" : "4194304-8388607", "SHA256TreeHash" : "01d34dabf7be316472c93b1ef80721f5d4" }],

API-Version 2012-06-01259

Page 267: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Multipart Uploads

"VaultARN" : "arn:aws:glacier:us-west-2:012345678901:vaults/demo1-vault"}

Zugehörige Abschnitte

• Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251)• Upload Part (PUT uploadID) (p. 265)• Complete Multipart Upload (POST uploadID) (p. 248)• Abort Multipart Upload (DELETE uploadID) (p. 246)• List Multipart Uploads (GET multipart-uploads) (p. 260)• Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

List Multipart Uploads (GET multipart-uploads)DescriptionDiese mehrteilige Upload-Operation listet mehrteilige Uploads auf, die für den angegebenen Tresor inBearbeitung sind. Ein laufender mehrteiliger Upload ist ein mehrteiliger Upload, der von einem MehrteiligenUpload initiieren (POST multipart uploads) (p. 251) -Anforderung, wurde aber noch nicht abgeschlossenoder gestoppt. Die in der List Multipart Upload-Antwort zurückgegebene Liste hat keine garantierteReihenfolge.

Die List Multipart Uploads-Operation unterstützt Paginierung. Standardmäßig gibt diese Operation bis zu50 mehrteilige Uploads in der Antwort zurück. Sie sollten immer das Feld marker im Antworttext auf eineMarkierung überprüfen, bei der die Liste fortgesetzt werden soll. Wenn keine Elemente mehr vorhandensind, ist der Wert des Felds marker gleich null.

Wenn der marker-Wert nicht Null ist, senden Sie, um den nächsten Satz mehrteiliger Uploads abzurufen,eine weitere List Multipart Uploads-Anforderung, wobei der marker-Anfrageparameter auf den Wertfestgelegt ist, den Amazon S3 Glacier (S3 Glacier) als Antwort auf Ihre vorherige List Multipart Uploads-Anforderung zurückgegeben hat.

Beachten Sie den Unterschied zwischen dieser Operation und der Operation List Parts (GETuploadID) (p. 255). Die List Multipart Uploads-Operation listet alle mehrteiligen Uploads für einen Tresorauf. Die List Parts-Operation gibt Teile eines bestimmten mehrteiligen Uploads zurück, die von einerUpload-ID identifiziert werden.

Weitere Informationen über mehrteilige Uploads finden Sie unter Hochladen von großen Archiven in Teilen(Multipart Upload) (p. 82).

RequestsSyntax

Um mehrteilige Uploads aufzulisten, senden Sie eine GET-Anfrage an den URI der multipart-uploads-Unterressource des Tresors. Sie können optional die Parameter marker und limit angeben.

GET /AccountId/vaults/VaultName/multipart-uploads HTTP/1.1Host: glacier.Region.amazonaws.comDate: Date

API-Version 2012-06-01260

Page 268: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Multipart Uploads

Authorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Anfrageparameter

Name Description (Beschreibung) Erforderlich

limit Gibt die Höchstanzahl von Uploads an, die im Antworttextzurückgegeben werden. Falls nicht angegeben, gibt die ListUploads-Operation bis zu 50 Uploads zurück.

Typ : Zeichenfolge.

Einschränkungen Minimaler ganzzahliger Wert von 1. (z. B..Maximaler ganzzahliger Wert von 50.

Nein

marker Eine undurchsichtige Zeichenfolge, die für die Paginierungverwendet wird. marker gibt den Upload an, bei dem die Liste derUploads beginnen soll. Rufen Sie den Wert für marker aus einervorherigen List Uploads-Antwort ab. Sie müssen marker nur danneinschließen, wenn Sie die Paginierung der Ergebnisse fortsetzen,die in einer vorherigen List Uploads-Anfrage gestartet wurde.

Typ : Zeichenfolge.

Einschränkungen Keine.

Nein

Anforderungs-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

ResponsesSyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: Length

API-Version 2012-06-01261

Page 269: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Multipart Uploads

{ "Marker": String, "UploadsList" : [ { "ArchiveDescription": String, "CreationDate": String, "MultipartUploadId": String, "PartSizeInBytes": Number, "VaultARN": String }, ... ]}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

ArchiveDescription

Die Beschreibung des Archivs, die in der Initiate Multipart Upload-Anfrage angegeben wurde. DerWert dieses Felds ist null, wenn in der Initiate Multipart Upload-Operation keine Archivbeschreibungangegeben wurde.

Typ : Zeichenfolge.CreationDate

Die UTC-Zeit, zu der der mehrteilige Upload initiiert wurde.

Typ Zeichenfolge. Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

Marker

Eine opake Zeichenfolge, die angibt, wo die Paginierung der Ergebnisse fortgesetzt werden soll.Mithilfe des marker in einer anderen List Multipart Uploads-Anfrage erhalten Sie mehr Uploads in derListe. Wenn keine anderen Uploads vorhanden sind, ist dieser Wert null.

Typ : Zeichenfolge.PartSizeInBytes

Die in der Anfrage Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251) angegebeneTeilgröße. Dies ist die Größe aller Teile im Upload außer dem letzten Teil, der kleiner sein kann alsdiese Größe.

Typ ZahlMultipartUploadId

Die ID des mehrteiligen Uploads.

Typ : Zeichenfolge.

API-Version 2012-06-01262

Page 270: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Multipart Uploads

UploadsList

Eine Liste von Metadaten über mehrteilige Upload-Objekte. Jedes Element in der Liste enthält einenSatz von Namen-Wert-Paaren für den entsprechenden Upload, einschließlich ArchiveDescription,CreationDate, MultipartUploadId, PartSizeInBytes und VaultARN.

Typ ArrayVaultARN

Der ARN (Amazon-Ressourcenname) des Tresors, der das Archiv enthält.

Typ : Zeichenfolge.

Errors

Für weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

ExamplesBeispiel. Alle mehrteiligen Uploads auflisten

Das folgende Beispiel listet alle mehrteiligen Uploads auf, die für den Tresor in Bearbeitung sind. DasBeispiel zeigt eine HTTP-GET-Anfrage an den URI der multipart-uploads-Unterressource einesbestimmten Tresors. Weil die Parameter marker und limit in der Anfrage nicht angegeben sind, werdenbis zu 1 000 mehrteilige Uploads in Bearbeitung zurückgegeben.

Beispielanfrage

GET /-/vaults/examplevault/multipart-uploads HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

In der Antwort gibt S3 Glacier eine Liste aller mehrteiligen Uploads zurück, die für den bestimmten Tresorin Bearbeitung sind. Das Feld marker hat den Wert null, wodurch angezeigt wird, dass keine weiterenaufzulistenden Uploads vorhanden sind.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: 1054 { "Marker": null, "UploadsList": [ { "ArchiveDescription": "archive 1", "CreationDate": "2012-03-19T23:20:59.130Z", "MultipartUploadId": "xsQdFIRsfJr20CW2AbZBKpRZAFTZSJIMtL2hYf8mvp8dM0m4RUzlaqoEye6g3h3ecqB_zqwB7zLDMeSWhwo65re4C4Ev",

API-Version 2012-06-01263

Page 271: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Multipart Uploads

"PartSizeInBytes": 4194304, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault" }, { "ArchiveDescription": "archive 2", "CreationDate": "2012-04-01T15:00:00.000Z", "MultipartUploadId": "nPyGOnyFcx67qqX7E-0tSGiRi88hHMOwOxR-_jNyM6RjVMFfV29lFqZ3rNsSaWBugg6OP92pRtufeHdQH7ClIpSF6uJc", "PartSizeInBytes": 4194304, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault" }, { "ArchiveDescription": "archive 3", "CreationDate": "2012-03-20T17:03:43.221Z", "MultipartUploadId": "qt-RBst_7yO8gVIonIBsAxr2t-db0pE4s8MNeGjKjGdNpuU-cdSAcqG62guwV9r5jh5mLyFPzFEitTpNE7iQfHiu1XoV", "PartSizeInBytes": 4194304, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault" } ]}

Beispiel. Teilweise Liste mehrteiliger Uploads

Das folgende Beispiel zeigt, wie Sie Paginierung verwenden können, um eine begrenzte Anzahl vonErgebnissen zu erhalten. Das Beispiel zeigt eine HTTP-GET-Anfrage an den URI der multipart-uploads-Unterressource für einen bestimmten Tresor. In diesem Beispiel ist der Parameter limit auf 1festgelegt, was bedeutet, dass nur ein Upload in der Liste zurückgegeben wird, und der Parameter markerzeigt die ID des mehrteiligen Uploads an, mit dem die zurückgegebene Liste beginnt.

Beispielanfrage

GET /-/vaults/examplevault/multipart-uploads?limit=1&marker=xsQdFIRsfJr20CW2AbZBKpRZAFTZSJIMtL2hYf8mvp8dM0m4RUzlaqoEye6g3h3ecqB_zqwB7zLDMeSWhwo65re4C4Ev HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

In der Antwort gibt Amazon S3 Glacier (S3 Glacier) eine Liste von nicht mehr als zwei mehrteiligen Uploadsin Bearbeitung für den angegebenen Tresor zurück, beginnend mit der angegebenen Markierung und zweiErgebnisse zurückgebend.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: 470

{ "Marker": "qt-RBst_7yO8gVIonIBsAxr2t-db0pE4s8MNeGjKjGdNpuU-cdSAcqG62guwV9r5jh5mLyFPzFEitTpNE7iQfHiu1XoV", "UploadsList" : [ { "ArchiveDescription": "archive 2", "CreationDate": "2012-04-01T15:00:00.000Z",

API-Version 2012-06-01264

Page 272: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchUpload Part

"MultipartUploadId": "nPyGOnyFcx67qqX7E-0tSGiRi88hHMOwOxR-_jNyM6RjVMFfV29lFqZ3rNsSaWBugg6OP92pRtufeHdQH7ClIpSF6uJc", "PartSizeInBytes": 4194304, "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault" } ]}

Zugehörige Abschnitte

• Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251)• Upload Part (PUT uploadID) (p. 265)• Complete Multipart Upload (POST uploadID) (p. 248)• Abort Multipart Upload (DELETE uploadID) (p. 246)• List Parts (GET uploadID) (p. 255)• Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Upload Part (PUT uploadID)BeschreibungDiese mehrteilige Upload-Operation lädt einen Teil eines Archivs hoch. Sie können Teile eines Archivsin beliebiger Reihenfolge hochladen, weil Sie in Ihrer Upload Part-Anfrage den Bytebereich in demzusammengesetzten Archiv angeben, der in diesem Teil hochgeladen wird. Sie können diese Teile auchparallel hochladen. Sie können bis zu 10 000 Teile für einen mehrteiligen Upload hochladen.

Weitere Informationen über mehrteilige Uploads finden Sie unter Hochladen von großen Archiven in Teilen(Multipart Upload) (p. 82).

Amazon S3 Glacier (S3 Glacier) lehnt Ihre Anfrage zum Hochladen eines Teils ab, wenn eine der folgendenBedingungen zutrifft:

• SHA256-Struktur-Hash passt nicht: Um sicherzustellen, dass Teiledaten bei der Übertragung nichtbeschädigt werden, wird ein SHA256-Struktur-Hash des Teils berechnet und in Ihre Anfrage integriert.Beim Empfang der Teiledaten berechnet S3 Glacier ebenfalls einen SHA256-Struktur-Hash. Wenn diebeiden Hash-Werte einander nicht entsprechen, schlägt die Operation fehl. Weitere Informationen überdie Berechnung eines SHA256-Struktur-Hash finden Sie unter Berechnen von Prüfsummen (p. 179).

• Linearer SHA256-Hash passt nicht: Für die Autorisierung ist es erforderlich, dass ein linearer SHA256-Hash der gesamten hochgeladenen Nutzlast berechnet und in Ihre Anfrage integriert wird. WeitereInformationen über die Berechnung eines linearen SHA256-Hash finden Sie unter Berechnen vonPrüfsummen (p. 179).

• Größe des Teils passt nicht: Die Größe jedes Teils mit Ausnahme des letzten muss derGröße entsprechen, die in der entsprechenden Mehrteiligen Upload initiieren (POST multipartuploads) (p. 251)-Anfrage angegeben ist. Die Größe des letzten Teils muss dieselbe Größe wie dieangegebene Größe haben oder kleiner sein.

Note

Wenn Sie einen Teil hochladen, dessen Größe kleiner ist als die Teilegröße, die Sie in Ihreranfänglichen Anfrage zum mehrteiligen Upload angegeben haben, und dieser Teil nicht der

API-Version 2012-06-01265

Page 273: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchUpload Part

letzte Teil ist, dann wird die Anfrage zum Hochladen des Teils erfolgreich sein. Die folgendeComplete Multipart Upload-Anfrage jedoch wird fehlschlagen.

• Bereich stimmt nicht überein: Der Wert des Bytebereichs in der Anfrage stimmt nicht mit der Teilegrößeüberein, die in der entsprechenden anfänglichen Anfrage angegeben ist. Wenn Sie zum Beispiel eineTeilegröße von 4194304 Bytes (4 MB) angeben, dann sind 0 bis 4194303 Bytes (4 MB –1) und 4194304(4 MB) bis 8388607 (8 MB –1) gültige Bereiche für den Teil. Wenn Sie jedoch einen Bereichswert von2 MB bis 6 MB einrichten, stimmt der Bereich nicht mit der Teilegröße überein und der Upload schlägtfehl.

Dieser Vorgang ist idempotent. Wenn Sie denselben Teil mehrere Male hochladen, überschreiben dieDaten in der jüngeren Anfrage die vorher hochgeladenen Daten.

AnforderungenSie senden diese HTTP-PUT-Anfrage an den URI der Upload-ID, die von Ihrer Initiate Multipart Upload-Anfrage zurückgegeben wurde. S3 Glacier verwendet die Upload-ID, um Teile-Uploads einem bestimmtenmehrteiligen Upload zuzuordnen. Die Anfrage muss einen SHA256-Struktur-Hash der Teiledaten enthalten(x-amz-SHA256-tree-hash-Header), einen linearen SHA256-Hash der gesamten Nutzlast (x-amz-content-sha256-Header), den Bytebereich (Content-Range-Header) und die Länge des Teils in Bytes(Content-Length-Header).

Syntax

PUT /AccountId/vaults/VaultName/multipart-uploads/uploadID HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Range: ContentRangeContent-Length: PayloadSizeContent-Type: application/octet-streamx-amz-sha256-tree-hash: Checksum of the partx-amz-content-sha256: Checksum of the entire payload x-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Anfrageparameter

Dieser Vorgang verwendet keine Anforderungsparameter.

Anforderungsheader

Für diesen Vorgang werden neben den für alle Vorgänge geltenden Anforderungs-Header die folgendenAnforderungs-Header verwendet. Weitere Informationen über allgemeine Anforderungs-Header finden Sieunter Häufig verwendete Anforderungsheader (p. 172).

Name Beschreibung Erforderlich

Content-Length Identifiziert die Länge des Teils in Bytes. Nein

API-Version 2012-06-01266

Page 274: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchUpload Part

Name Beschreibung ErforderlichTyp: Zeichenfolge

Standard: keiner

Einschränkungen: Keine

Content-Range Identifiziert den Bytebereich in demzusammengesetzten Archiv, der in diesem Teilhochgeladen wird. S3 Glacier verwendet dieseInformationen, um das Archiv in der richtigenReihenfolge zusammenzustellen. Das Format diesesHeaders folgt RFC 2616. Ein Beispiel-Header ist:Content-Range:bytes 0-4194303/*.

Typ: Zeichenfolge

Standard: keiner

Einschränkungen: Der Bereich darf nicht größer seinals die Teilegröße, die Sie bei der Initiierung desmehrteiligen Uploads angegeben haben.

Ja

x-amz-content-sha256

Die SHA256-Prüfsumme (ein linearer Hash) für diehochgeladene Nutzlast. Dieser Wert stimmt nichtmit dem im x-amz-sha256-tree-hash-Headerangegebenen Wert überein.

Typ: Zeichenfolge

Standard: keiner

Einschränkungen: Keine

Ja

x-amz-sha256-tree-hash

Gibt einen SHA256-Struktur-Hash der Daten an, diehochgeladen werden. Weitere Informationen über dieBerechnung eines SHA256-Struktur-Hash finden Sieunter Berechnen von Prüfsummen (p. 179).

Typ: Zeichenfolge

Standard: keiner

Einschränkungen: Keine

Ja

Anforderungstext

Der Anfragetext enthält die hochzuladenden Daten.

AntwortenBei erfolgreichem Teile-Upload gibt S3 Glacier eine 204 No Content-Antwort zurück.

Syntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestId

API-Version 2012-06-01267

Page 275: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchUpload Part

Date: Datex-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacier

Antwort-Header

Ein erfolgreiche Antwort umfasst neben den für alle Vorgänge geltenden Antwort-Header die folgendenAntwort-Header. Weitere Informationen über allgemeine Antwort-Header finden Sie unter AllgemeineAntwort-Header (p. 175).

Name Beschreibung

x-amz-sha256-tree-hash

Der SHA256-Struktur-Hash, den S3 Glacier für den hochgeladenen Teilberechnet hat.

Typ: Zeichenfolge

Antworttext

Dieser Vorgang gibt keinen Antworttext zurück.

BeispielMit der folgenden Anfrage wird ein Teil von 4 MB hochgeladen. Die Anfrage stellt den Bytebereich so ein,dass dies der erste Teil im Archiv ist.

Beispielanfrage

Das Beispiel sendet eine HTTP-PUT-Anfrage zum Hochladen eines Teils von 4 MB. Die Anfrage wird anden URI der Upload-ID gesendet, die von der Initiate Multipart Upload-Anfrage zurückgegeben wurde. DerContent-Range-Header identifiziert den Teil als den ersten 4‑MB-Datenteil des Archivs.

PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1Host: glacier.us-west-2.amazonaws.comDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Range:bytes 0-4194303/*x-amz-sha256-tree-hash:c06f7cd4baacb087002a99a5f48bf953x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628Content-Length: 4194304Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version,Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace

Um den nächsten Teil hochzuladen, ist die Vorgehensweise gleich. Sie müssen jedoch einen neuenSHA256-Struktur-Hash für den hochzuladenden Teil berechnen und auch einen neuen Bytebereichangeben, um anzuzeigen, an welche Stelle im fertigen Archiv der Teil gehört. Die folgende Anfrage lädteinen anderen Teil mit derselben Upload-ID hoch. Die Anfrage gibt die nächsten 4 MB des Archivs nachder vorherigen Anfrage und eine Teilegröße von 4 MB an.

PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1Host: glacier.us-west-2.amazonaws.comDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Range:bytes 4194304-8388607/*

API-Version 2012-06-01268

Page 276: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAuftragsoperationen

Content-Length: 4194304x-amz-sha256-tree-hash:f10e02544d651e2c3ce90a4307427493x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628x-amz-glacier-version: 2012-06-01Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20120525/us-west-2/glacier/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version, Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace

Die Teile können in beliebiger Reihenfolge hochgeladen werden. S3 Glacier verwendet die Bereichsangabefür jeden Teil, um die Reihenfolge zu bestimmen, in der sie zusammengesetzt werden sollen.

Beispielantwort

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Qx-amz-sha256-tree-hash: c06f7cd4baacb087002a99a5f48bf953Date: Wed, 10 Feb 2017 12:00:00 GMT

Zugehörige Abschnitte

• Mehrteiligen Upload initiieren (POST multipart uploads) (p. 251)• Upload Part (PUT uploadID) (p. 265)• Complete Multipart Upload (POST uploadID) (p. 248)• Abort Multipart Upload (DELETE uploadID) (p. 246)• List Multipart Uploads (GET multipart-uploads) (p. 260)• List Parts (GET uploadID) (p. 255)• Hochladen von großen Archiven in Teilen (Multipart Upload) (p. 82)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

AuftragsoperationenEs folgenden die in S3 Glacier verfügbaren Aufgabenoperationen.

Themen• Describe Job (GET JobID) (p. 269)• Get Job Output (GET output) (p. 277)• Initiate Job (POST jobs) (p. 284)• Aufträge auflisten (GET jobs) (p. 294)

Describe Job (GET JobID)BeschreibungDiese Operation gibt Informationen über eine Aufgabe zurück, die Sie vorher initiiert haben,einschließlich des Datums der Initiierung der Aufgabe, des Benutzers, der die Aufgabe initiiert hat, desAufgabenstatuscodes/der -nachricht und des Amazon Simple Notification Service (Amazon SNS)-Themas,das zu benachrichtigen ist, nachdem Amazon S3 Glacier (S3 Glacier) die Aufgabe abgeschlossen hat.Weitere Informationen zur Initiierung eines Auftrags finden Sie unter Initiate Job (POST jobs) (p. 284).

API-Version 2012-06-01269

Page 277: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Job

Note

Mit dieser Operation können Sie den Status Ihres Auftrags prüfen. Wir empfehlen jedoch dringend,ein Amazon SNS-Thema einzurichten und es in Ihrer Anfrage zur Aufgabeninitiierung anzugeben,damit S3 Glacier das Thema benachrichtigen kann, nachdem die Aufgabe abgeschlossen wurde.

Eine Aufgaben-ID läuft mindestens 24 Stunden, nachdem S3 Glacier die Aufgabe abgeschlossen hat, nichtab.

AnforderungenSyntaxUm Informationen zu einem Auftrag zu erhalten, verwenden Sie die HTTP-GET-Methode und beschränkenSie den Umfang der Anfrage auf den bestimmten Auftrag. Beachten Sie, dass der relative URI-Pfadderselbe ist wie der, den S3 Glacier zurückgegeben hat, als Sie die Aufgabe initiiert haben.

GET /AccountID/vaults/VaultName/jobs/JobID HTTP/1.1Host: glacier.Region.amazonaws.comDate: dateAuthorization: signatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Note

Wenn Sie in der Anfrage die JobID weglassen, gibt die Antwort eine Liste aller aktiven Aufträgefür den angegebenen Tresor zurück. Weitere Informationen über das Auflisten von Aufträgenfinden Sie unter Aufträge auflisten (GET jobs) (p. 294).

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 201 Created

API-Version 2012-06-01270

Page 278: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Job

x-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: Length

{ "Action": "string", "ArchiveId": "string", "ArchiveSHA256TreeHash": "string", "ArchiveSizeInBytes": number, "Completed": boolean, "CompletionDate": "string", "CreationDate": "string", "InventoryRetrievalParameters": { "EndDate": "string", "Format": "string", "Limit": "string", "Marker": "string", "StartDate": "string" }, "InventorySizeInBytes": number, "JobDescription": "string", "JobId": "string", "JobOutputPath": "string", "OutputLocation": { "S3": { "AccessControlList": [ { "Grantee": { "DisplayName": "string", "EmailAddress": "string", "ID": "string", "Type": "string", "URI": "string" }, "Permission": "string" } ], "BucketName": "string", "CannedACL": "string", "Encryption": { "EncryptionType": "string", "KMSContext": "string", "KMSKeyId": "string" }, "Prefix": "string", "StorageClass": "string", "Tagging": { "string": "string" }, "UserMetadata": { "string": "string" } } }, "RetrievalByteRange": "string", "SelectParameters": { "Expression": "string", "ExpressionType": "string", "InputSerialization": { "csv": { "Comments": "string", "FieldDelimiter": "string", "FileHeaderInfo": "string", "QuoteCharacter": "string", "QuoteEscapeCharacter": "string",

API-Version 2012-06-01271

Page 279: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Job

"RecordDelimiter": "string" } }, "OutputSerialization": { "csv": { "FieldDelimiter": "string", "QuoteCharacter": "string", "QuoteEscapeCharacter": "string", "QuoteFields": "string", "RecordDelimiter": "string" } } }, "SHA256TreeHash": "string", "SNSTopic": "string", "StatusCode": "string", "StatusMessage": "string", "Tier": "string", "VaultARN": "string"}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

Aktion

Der Auftragstyp. Er ist entweder ArchiveRetrieval, InventoryRetrieval oder Select.

Typ: ZeichenfolgeArchiveId

Die Archiv-ID, die für eine Auswahl oder einen Archivabruf angefordert wurde. Andernfalls ist diesesFeld null.

Typ: ZeichenfolgeArchiveSHA256TreeHash

Der SHA256-Struktur-Hash des gesamten Archivs für einen Archivabrufauftrag. FürInventarabrufaufträge ist dieses Feld null.

Typ: ZeichenfolgeArchiveSizeInBytes

Für einen ArchiveRetrieval-Auftrag ist dies die Größe in Bytes des zum Herunterladenangeforderten Archivs. Für den InventoryRetrieval-Auftrag ist der Wert null.

Typ: ZahlCompleted

Der Auftragsstatus. Wenn ein Archiv- oder Inventarabrufauftrag abgeschlossen wurde, können Sie dieAusgabe des Auftrags über Get Job Output (GET output) (p. 277) abrufen.

Typ: Boolescher Wert

API-Version 2012-06-01272

Page 280: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Job

CompletionDate

Uhrzeit der Fertigstellung der Auftragsanforderung in UTC (Universal Coordinated Time). Während derAuftrag in Bearbeitung ist, ist der Wert Null.

Typ: ZeichenfolgeCreationDate

Der Zeitpunkt (UTC) der Erstellung des Auftrags.

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

InventoryRetrievalParameters

Die Eingabeparameter für die Inventarabfrage für einzelne Bereiche

Typ: InventoryRetrievalJobInput (p. 308) ObjektInventorySizeInBytes

Für einen InventoryRetrieval-Auftrag ist dies die Größe in Bytes des zum Herunterladenangeforderten Inventars. Für den ArchiveRetrieval- oder Select-Auftrag ist der Wert null.

Typ: ZahlJobDescription

Die Auftragsbeschreibung, die Sie bei der Initiierung des Auftrags angegeben haben.

Typ: ZeichenfolgeJobId

Die ID, die die Aufgabe in S3 Glacier identifiziert

Typ: ZeichenfolgeJobOutputPath

Enthält den Speicherort für die Auftragsausgabe.

Typ: ZeichenfolgeOutputLocation

Ein Objekt, das Informationen zum Speicherort der Ergebnisse und Fehler des ausgewählten Jobsenthält

Typ: OutputLocation (p. 311) ObjektRetrievalByteRange

Der abgerufene Bytebereich für Aufträge zum Abrufen von Archiven in der Form"StartByteValue-EndByteValue". Wenn Sie keinen Bereich angeben, wird das gesamte Archivabgerufen. Auch ist der Wert StartByteValue gleich 0 und der Wert EndByteValue entspricht der Größedes Archivs minus 1. Für Inventarabruf- und Auswahlaufträge ist dieses Feld null.

Typ: ZeichenfolgeSelectParameters

Ein Objekt mit Informationen zu den Parametern für eine Auswahl

Typ: SelectParameters (p. 313) Objekt

API-Version 2012-06-01273

Page 281: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Job

SHA256TreeHash

Der SHA256-Struktur-Hash-Wert für den angeforderten Bereich eines Archivs. Wenn in der InitiateJob (POST jobs) (p. 284)-Anfrage für ein Archiv ein mit dem Struktur-Hash abgeglichener Bereichangegeben wurde, gibt dieses Feld einen Wert zurück. Weitere Informationen zur Verwendung vonmit dem Struktur-Hash abgeglichenen Bereichen beim Abrufen von Archivbereichen finden Sie unterErhalten von Prüfsummen bei Daten-Download (p. 188).

Wenn das gesamte Archiv abgerufen wird, ist dieser Wert mit dem ArchiveSHA256TreeHash-Wertidentisch.

In den folgenden Situationen hat dieses Feld den Wert null.• Aufträge zum Abruf von Archiven, die einen Bereich angeben, der nicht mit dem Struktur-Hash

abgeglichen ist.• Archivaufträge, die einen Bereich festlegen, der das gesamte Archiv einschließt, und deren

Auftragsstatus InProgress lautet.• Inventaraufträge.• Wählen Sie die Aufträge aus.

Typ: ZeichenfolgeSNSTopic

Ein Amazon SNS-Thema, das Benachrichtigungen empfängt

Typ: ZeichenfolgeStatusCode

Der Code, der den Status des Auftrags angibt

Zulässige Werte: InProgress | Succeeded | Failed

Typ: ZeichenfolgeStatusMessage

Eine freundliche Nachricht, die den Auftragsstatus beschreibt.

Typ: ZeichenfolgeStufe

Das Datenzugriffskontingent, das für die Auswahl oder den Archivabruf verwendet wird

Zulässige Werte: Bulk | Expedited | Standard

Typ: ZeichenfolgeVaultARN

Der Amazon-Ressourcennamen (ARN) des Tresors, von dem der Auftrag eine Unterressource ist.

Typ: Zeichenfolge

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleDas folgende Beispiel zeigt die Anfrage für einen Auftrag, der ein Archiv abruft.

API-Version 2012-06-01274

Page 282: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Job

Beispielanfrage: Auftragsbeschreibung abrufen

GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Der Antworttext enthält JSON zur Beschreibung des angegebenen Auftrags. Beachten Sie, dass fürden Inventarabruf und für den Archivabruf die JSON-Felder gleich sind. Wenn jedoch ein Feld für denAuftragstyp nicht gültig ist, ist sein Wert null. Es folgt eine Beispielantwort auf einen Archivabrufauftrag.Beachten Sie Folgendes:

• Der Wert des Action-Felds ist ArchiveRetrieval.• Das ArchiveSizeInBytes-Feld zeigt die Größe des im Archivabrufauftrag angeforderten Archivs.• Das ArchiveSHA256TreeHash-Feld zeigt den SHA256-Struktur-Hash für das gesamte Archiv.• Das RetrievalByteRange-Feld zeigt den in der Anfrage zur Auftragsinitiierung angeforderten Bereich.

In diesem Beispiel wird das gesamte Archiv angefordert.• Das SHA256TreeHash-Feld zeigt den SHA256-Struktur-Hash für den in der Anfrage

zur Auftragsinitiierung angeforderten Bereich. In diesem Beispiel ist es gleich demArchiveSHA256TreeHash-Feld, das heißt, dass das gesamte Archiv angefordert wurde.

• Der Wert des InventorySizeInBytes-Felds ist null, weil es für einen Archivabrufauftrag nicht gültigist.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: 419{ "Action": "ArchiveRetrieval", "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId", "ArchiveSizeInBytes": 16777216, "ArchiveSHA256TreeHash": "beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60", "Completed": false, "CompletionDate": null, "CreationDate": "2012-05-15T17:21:39.339Z", "InventorySizeInBytes": null, "JobDescription": "My ArchiveRetrieval Job", "JobId": "HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID", "RetrievalByteRange": "0-16777215", "SHA256TreeHash": "beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60", "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic", "StatusCode": "InProgress", "StatusMessage": "Operation in progress.", "Tier": "Bulk", "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"}

API-Version 2012-06-01275

Page 283: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDescribe Job

Es folgt eine Beispielantwort auf einen Inventarabrufauftrag. Beachten Sie Folgendes:

• Der Wert des Action-Felds ist InventoryRetrieval.• Die Werte der Felder ArchiveSizeInBytes, ArchiveSHA256TreeHash und RetrievalByteRange

sind Null, weil diese Felder für einen Inventarabrufauftrag nicht gültig sind.• Der Wert des InventorySizeInBytes-Felds ist null, weil der Auftrag noch in Bearbeitung ist und

das Inventar noch nicht vollständig zum Herunterladen vorbereitet hat. Wenn der Auftrag vor IhrerAnforderung zur Auftragsbeschreibung abgeschlossen war, zeigt dieses Feld Ihnen die Größe derAusgabe an.

{ "Action": "InventoryRetrieval", "ArchiveId": null, "ArchiveSizeInBytes": null, "ArchiveSHA256TreeHash": null, "Completed": false, "CompletionDate": null, "CreationDate": "2012-05-15T23:18:13.224Z", "InventorySizeInBytes": null, "JobDescription": "Inventory Description", "JobId": "HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID", "RetrievalByteRange": null, "SHA256TreeHash": null, "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic", "StatusCode": "InProgress", "StatusMessage": "Operation in progress.", "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"}

Es folgt eine Beispielantwort auf einen abgeschlossenen Inventarabrufauftrag mit einer Markierung, durchdie die Paginierung des Tresorinventarabrufs fortgesetzt wird.

{ "Action": "InventoryRetrieval", "ArchiveId": null, "ArchiveSHA256TreeHash": null, "ArchiveSizeInBytes": null, "Completed": true, "CompletionDate": "2013-12-05T21:51:13.591Z", "CreationDate": "2013-12-05T21:51:12.281Z", "InventorySizeInBytes": 777062, "JobDescription": null, "JobId": "sCC2RZNBF2nildYD_roe0J9bHRdPQUbDRkmTdg-mXi2u3lc49uW6TcEhDF2D9pB2phx-BN30JaBru7PMyOlfXHdStzu8", "NextInventoryRetrievalMarker": null, "RetrievalByteRange": null, "SHA256TreeHash": null, "SNSTopic": null, "StatusCode": "Succeeded", "StatusMessage": "Succeeded", "Tier": "Bulk", "VaultARN": "arn:aws:glacier-devo:us-west-2:836579025725:vaults/inventory-icecube-2", "InventoryRetrievalParameters": { "StartDate": "2013-11-12T13:43:12Z", "EndDate": "2013-11-20T08:12:45Z", "Limit": "120000", "Format": "JSON", "Marker": "vyS0t2jHQe5qbcDggIeD50chS1SXwYMrkVKo0KHiTUjEYxBGCqRLKaiySzdN7QXGVVV5XZpNVG67pCZ_uykQXFMLaxOSu2hO_-5C0AtWMDrfo7LgVOyfnveDRuOSecUo3Ueq7K0"

API-Version 2012-06-01276

Page 284: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Job Output

}, }

Zugehörige Abschnitte

• Get Job Output (GET output) (p. 277)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Get Job Output (GET output)BeschreibungDiese Operation lädt die Ausgabe des Auftrags herunter, den Sie mithilfe von Initiate Job (POSTjobs) (p. 284) initiiert haben. Abhängig von dem Auftragstyp, den Sie spezifiziert haben, als Sie denAuftrag initiierten, wird die Ausgabe entweder der Inhalt eines Archivs oder ein Tresorinventar sein.

Sie können die gesamte Auftragsausgabe oder optional nur einen Teil der Auftragsausgabe herunterladen,indem Sie einen Bytebereich festlegen. Sowohl für Archivierungs- als auch für Inventarabrufaufträge solltenSie die heruntergeladene Größe mit der Größe vergleichen, die in den Headern von der Antwort Get JobOutput response zurückgegeben wird.

Bei Archivabrufaufträgen sollten Sie auch überprüfen, ob die Größe Ihren Erwartungen entspricht. WennSie einen Teil der Ausgabe herunterladen, basiert die erwartete Größe auf dem von Ihnen angegebenenBytebereich. Wenn Sie z. B. einen Bereich von bytes=0-1048575 angeben, sollten Sie überprüfen, obdie Größe Ihres Downloads 1 048 576 Bytes ist. Wenn Sie ein komplettes Archiv herunterladen, entsprichtdie erwartete Größe der Größe, die das Archiv hatte, als Sie es in Amazon S3 Glacier (S3 Glacier)hochluden. Die erwartete Größe wird auch in den Headern der Antwort Get Job Output zurückgegeben.

Im Falle einer Archivabrufaufgabe gibt S3 Glacier abhängig vom angegebenen Bytebereich die Prüfsummefür den Teil der Daten zurück. Um sicherzustellen, dass der Teil, den Sie heruntergeladen haben, diekorrekten Daten enthält, berechnen Sie die Prüfsumme auf dem Client, überprüfen Sie, ob die Werteübereinstimmen und ob die Größe Ihren Erwartungen entspricht.

Eine Aufgaben-ID läuft mindestens 24 Stunden, nachdem S3 Glacier die Aufgabe abgeschlossen hat, nichtab. Das heißt, Sie können die Aufgabenausgabe innerhalb von 24 Stunden nach Abschluss der Aufgabedurch S3 Glacier herunterladen.

AnforderungenSyntaxUm eine Auftragsausgabe abzurufen, senden Sie die HTTP-GET-Anfrage an den URI der output desjeweiligen Auftrags.

GET /AccountId/vaults/VaultName/jobs/JobID/output HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueRange: ByteRangeToRetrievex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signieren

API-Version 2012-06-01277

Page 285: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Job Output

der Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden neben den für alle Vorgänge geltenden Anforderungs-Header die folgendenAnforderungs-Header verwendet. Weitere Informationen über allgemeine Anforderungs-Header finden Sieunter Häufig verwendete Anforderungsheader (p. 172).

Name Beschreibung Erforderlich

Range Der Bytebereich, der von der Ausgabe abgerufen werden soll.Wenn Sie zum Beispiel die ersten 1 048 576 Bytes herunterladenmöchten, geben Sie den Bereich an als bytes=0-1048575.Weitere Informationen finden Sie unter Range Header FieldDefinition. Der Bereich ist relativ zu jedem Bereich, der in derAnfrage zur Auftragsinitiierung angegeben wurde. Standardmäßiglädt diese Operation die gesamte Ausgabe herunter.

Wenn die Auftragsaufgabe groß ist, können Sie den Header derRange-Anfrage verwenden, um einen Teil der Ausgabe abzurufen.Damit können Sie die gesamte Ausgabe in kleineren Byte-Blöckenherunterladen. Angenommen, Sie haben 1 GB Auftragsausgabe,die Sie herunterladen möchten, und Sie beschließen, jeweilsDatenblöcke von 128 MB herunterzuladen, insgesamt also achtAnfragen zum Abrufen von Auftragsausgaben. Sie können dieAuftragsausgabe mithilfe des folgenden Prozesses herunterladen:

1. Laden Sie einen Block von 128 MB der Ausgabe herunter,indem Sie den entsprechenden Bytebereich mithilfe des Range-Headers angeben. Überprüfen Sie, ob Sie alle 128 MB Datenerhalten haben.

2. Zusammen mit den Daten wird die Antwort eine Prüfsumme derNutzlast enthalten. Sie berechnen die Prüfsumme der Nutzlastauf dem Client und vergleichen sie mit der Prüfsumme, die Siein der Antwort erhalten haben, um sicherzustellen, dass Sie alleerwarteten Daten erhalten haben.

3. Wiederholen Sie die Schritte 1 und 2 für alle acht 128 MBgroßen Datenblöcke der Ausgabe, wobei Sie jeweils denentsprechenden Bytebereich angeben.

4. Nach dem Herunterladen aller Teile der Auftragsausgabe habenSie eine Liste mit acht Prüfsummenwerten. Berechnen Sie denStruktur-Hash dieser Werte, um die Prüfsumme der gesamtenAusgabe zu ermitteln. Mit der Operation Describe Job (GETJobID) (p. 269) erhalten Sie Informationen zu dem Auftrag,der Ihnen die Ausgabe bereitgestellt hat. Die Antwort enthält diePrüfsumme des gesamten in S3 Glacier gespeicherten Archivs.Sie vergleichen diesen Wert mit der von Ihnen berechnetenPrüfsumme, um sicherzustellen, dass Sie den gesamtenArchivinhalt fehlerfrei heruntergeladen haben.

Typ: Zeichenfolge

Nein

API-Version 2012-06-01278

Page 286: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Job Output

Name Beschreibung ErforderlichStandard: keiner

Einschränkungen: Keine

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

Antworten

Syntax

Bei einer Anfrage zum Abruf, die alle Auftragsdaten zurückgibt, gibt die Auftragsausgabeantwort einen200 OK-Antwortcode zurück. Wenn Teile des Inhalts angefragt werden, z. B. wenn Sie in der Anfrage denRange-Header angegeben haben, wird der Antwortcode 206 Partial Content zurückgegeben.

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: ContentTypeContent-Length: Lengthx-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacier

[Body containing job output.]

Antwort-Header

Header Beschreibung

Content-Range Der von S3 Glacier zurückgegebene Bytebereich. Wenn nur ein Teil derAusgabe heruntergeladen wird, liefert die Antwort den Bytebereich, den S3Glacier zurückgegeben hat.

Zum Beispiel gibt bytes 0-1048575/8388608 die ersten 1 MB von 8 MBzurück.

Weitere Informationen über den Content-Range-Header finden Sie unterContent-Range Header Field Definition.

Typ: Zeichenfolge

Content-Type Der Inhaltstyp hängt davon ab, ob die Auftragsausgabe ein Archiv oder einTresorinventar ist.

• Für Archivdaten ist der Inhaltstyp application/octet-stream.• Für Tresorinventar, wenn Sie bei der Initiierung des Auftrags das CSV-

Format angefragt haben, ist der Inhaltstyp text/csv. Andernfalls wirdTresorinventar standardmäßig als JSON zurückgegeben und der Inhaltstypist application/json.

Typ: Zeichenfolge

API-Version 2012-06-01279

Page 287: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Job Output

Header Beschreibung

x-amz-sha256-tree-hash

Die Prüfsumme der Daten in der Antwort. Dieser Header wird nurzurückgegeben, wenn die Ausgabe eines Archivabrufauftrags abgerufenwird. Darüber hinaus wird dieser Header angezeigt, wenn der abgerufeneDatenbereich, der in der Anfrage zur Auftragsinitiierung angefragt wurde, mitdem Struktur-Hash abgeglichen ist und der herunterzuladende Bereich in„Get Job Output“ ebenfalls mit dem Struktur-Hash abgeglichen ist. WeitereInformationen zum Abgleichen von Bereichen mit dem Struktur-Hash findenSie unter Erhalten von Prüfsummen bei Daten-Download (p. 188).

Wenn Sie z. B. in Ihrer Anfrage zur Auftragsinitiierung einen mit dem Struktur-Hash abgeglichenen Bereich angegeben haben (der das gesamte Archivumfasst), dann erhalten Sie die Prüfsumme der von Ihnen heruntergeladenenDaten unter den folgenden Bedingungen:

• Sie erhalten den gesamten Bereich der abgerufenen Daten.• Sie fordern einen Bytebereich der abgerufenen Daten an, der die Größe

von einem Megabyte (1024 KB) multipliziert mit dem Faktor 2 hat undmit einem Vielfachen der Größe des angeforderten Bereichs beginnt undendet. Wenn Sie z. B. 3,1 MB an abgerufenen Daten haben und Sie einenBereich für die Rückgabe bestimmen, der bei 1 MB beginnt und bei 2 MBendet, dann wird der x-amz-sha256-tree-hash als ein Antwort-Headerzurückgegeben.

• Sie fordern einen Bereich zur Rückgabe der abgerufenen Daten an, der biszum Ende der Daten reicht, und der Beginn des Bereichs ist ein Vielfachesder Größe des abzurufenden Bereichs, aufgerundet bis zum nächstenFaktor von zwei, aber nicht kleiner als ein Megabyte (1024 KB). Wenn Siez. B. 3,1 MB an abgerufenen Daten haben und Sie einen Bereich für dieRückgabe bestimmen, der bei 2 MB beginnt und bei 3.1 MB (dem Ende derDaten) endet, dann wird der x-amz-sha256-tree-hash als ein Antwort-Header zurückgegeben.

Typ: Zeichenfolge

Antworttext

S3 Glacier gibt die Aufgabenausgabe im Antworttext zurück. Je nach Auftragstyp kann die Ausgabe derInhalt eines Archivs oder das Tresorinventar sein. Im Falle eines Tresorinventars wird standardmäßig dieInventarliste als folgender JSON-Text zurückgegeben.

{ "VaultARN": String, "InventoryDate": String, "ArchiveList": [ {"ArchiveId": String, "ArchiveDescription": String, "CreationDate": String, "Size": Number, "SHA256TreeHash": String }, ... ]}

API-Version 2012-06-01280

Page 288: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Job Output

Wenn Sie das CSV-Ausgabeformat (kommaseparierte Werte) bei der Initiierung des Tresorinventarauftragsangefordert haben, wird das Tresorinventar im CSV-Format im Text zurückgegeben. Das CSV-Formathat fünf Spalten, „ArchiveId“, „ArchiveDescription“, „CreationDate“, „Size“ und „SHA256TreeHash“, mitdenselben Definitionen wie die entsprechenden JSON-Felder.

Note

In dem zurückgegebenen CSV-Format können Felder zurückgegeben werden, die vollständigin doppelten Anführungszeichen eingeschlossen sind. Felder, die ein Komma oder doppelteAnführungszeichen enthalten, werden immer eingeschlossen in doppelten Anführungszeichenzurückgegeben. Zum Beispiel wird my archive description,1 zurückgegeben als "myarchive description,1". Doppelte Anführungszeichen, die innerhalb von zurückgegebenenFeldern sind, die in doppelten Anführungszeichen eingeschlossen sind, werden durch einenvorangestellten umgekehrten Schrägstrich als Escape-Zeichen geschützt. Zum Beispiel wird myarchive description,1"2 zurückgegeben als "my archive description,1\"2" und myarchive description,1\"2 zurückgegeben als "my archive description,1\\"2". Dasumgekehrte Schrägstrichzeichen wird nicht durch ein Escape-Zeichen geschützt.

Der JSON-Antworttext enthält die folgenden JSON-Felder.

ArchiveDescription

Die Beschreibung eines Archivs.

Typ: ZeichenfolgeArchiveId

Die ID eines Archivs.

Typ: ZeichenfolgeArchiveList

Ein Array von Archivmetadaten. Jedes Objekt in dem Array steht für Metadaten für ein im Tresorenthaltenes Archiv.

Typ: ArrayCreationDate

Datum und Uhrzeit (UTC), wann das Archiv erstellt wurde.

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

InventoryDate

Datum und Uhrzeit (UTC) der letzten Inventur für den Tresor, die nach Änderungen am Tresorabgeschlossen wurde. Obwohl S3 Glacier einmal täglich eine Tresorinventur durchführt, wird dasDatum der Inventur nur dann aktualisiert, wenn seit der letzten Inventur etwas zum Archiv hinzugefügtoder aus ihm gelöscht wurde.

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

SHA256TreeHash

Der Struktur-Hash des Archivs.

Typ: ZeichenfolgeGröße

Die Größe des Archivs in Bytes.

API-Version 2012-06-01281

Page 289: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Job Output

Typ: ZahlVaultARN

Die ARN-Ressource (Amazon-Ressourcenname), von der der Archivabruf angefordert wurde.

Typ: Zeichenfolge

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleDas folgende Beispiel zeigt die Anfrage für einen Auftrag, der ein Archiv abruft.

Beispiel 1: Ausgabe herunterladenIn diesem Beispiel werden die von S3 Glacier vorbereiteten Daten als Antwort auf die Aufgabenanfrage zurInitiierung eines Archivabrufs abgerufen.

Beispielanfrage

GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID/output HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Es folgt eine Beispielantwort eines Archivabrufauftrags. Beachten Sie, dass der Content-Type-Headerapplication/octet-stream ist und dass der x-amz-sha256-tree-hash-Header in der Antwortenthalten ist, das heißt, dass alle Auftragsdaten zurückgegeben wurden.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Qx-amz-sha256-tree-hash: beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60Date: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/octet-streamContent-Length: 1048576

[Archive data.]

Es folgt eine Beispielantwort eines Inventarabrufauftrags. Beachten Sie, dass der Content-Type-Headerapplication/json ist. Beachten Sie auch, dass die Antwort nicht den x-amz-sha256-tree-hash-Header enthält.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: 906

{

API-Version 2012-06-01282

Page 290: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Job Output

"VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault", "InventoryDate": "2011-12-12T14:19:01Z", "ArchiveList": [ { "ArchiveId": "DMTmICA2n5Tdqq5BV2z7og-A20xnpAPKt3UXwWxdWsn_D6auTUrW6kwy5Qyj9xd1MCE1mBYvMQ63LWaT8yTMzMaCxB_9VBWrW4Jw4zsvg5kehAPDVKcppUD1X7b24JukOr4mMAq-oA", "ArchiveDescription": "my archive1", "CreationDate": "2012-05-15T17:19:46.700Z", "Size": 2140123, "SHA256TreeHash": "6b9d4cf8697bd3af6aa1b590a0b27b337da5b18988dbcc619a3e608a554a1e62" }, { "ArchiveId": "2lHzwhKhgF2JHyvCS-ZRuF08IQLuyB4265Hs3AXj9MoAIhz7tbXAvcFeHusgU_hViO1WeCBe0N5lsYYHRyZ7rrmRkNRuYrXUs_sjl2K8ume_7mKO_0i7C-uHE1oHqaW9d37pabXrSA", "ArchiveDescription": "my archive2", "CreationDate": "2012-05-15T17:21:39.339Z", "Size": 2140123, "SHA256TreeHash": "7f2fe580edb35154041fa3d4b41dd6d3adaef0c85d2ff6309f1d4b520eeecda3" } ]}

Beispiel 2: Ausgabe nur teilweise herunterladenIn diesem Beispiel wird das von S3 Glacier vorbereitete Archiv nur teilweise als Antwort auf IhreAufgabenanfrage zur Initiierung eines Archivabrufs abgerufen. Die Anfrage verwendet den optionalenRange-Header, um nur die ersten 1 024 Bytes abzurufen.

Beispielanfrage

GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID/output HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000ZRange: bytes=0-1023 x-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Die folgende erfolgreiche Antwort zeigt die 206 Partial Content-Antwort. In diesem Fall enthält dieAntwort auch einen Content-Range-Header, der den Bytebereich angibt, den S3 Glacier zurückgibt.

HTTP/1.1 206 Partial Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Range: bytes 0-1023/8388608Content-Type: application/octet-streamContent-Length: 1024

[Archive data.]

Zugehörige Abschnitte

• Describe Job (GET JobID) (p. 269)

API-Version 2012-06-01283

Page 291: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

• Initiate Job (POST jobs) (p. 284)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Initiate Job (POST jobs)Nachfolgend finden Sie die Operationen, mit denen die folgenden Amazon S3 Glacier (S3 Glacier)-Aufgabentypen initiiert werden:

• select – Eine Auswahlabfrage für ein Archiv ausführen.• archive-retrieval – Ein Archiv abrufen.• inventory-retrieval – Ein Tresorinventar erstellen.

Themen• Arbeiten mit Amazon S3 Glacier Select-Aufträgen (p. 284)• Initiieren eines Archiv- oder Tresorinventarabrufs (p. 285)• Requests (p. 287)• Responses (p. 289)• Examples (p. 290)• Zugehörige Abschnitte (p. 294)

Arbeiten mit Amazon S3 Glacier Select-AufträgenVerwenden Sie eine S3 Glacier Select-Aufgabe, um SQL-Abfragen für Archivobjekte auszuführen. Diedurch den Auswahlauftrag abgefragten Archivobjekte müssen als unkomprimierte CSV-Datei vorliegen.Einen Überblick über S3 Glacier Select-Aufgaben finden Sie unter Abfragen von Archiven mit S3 GlacierSelect (p. 159).

Gehen Sie beim Initiieren eines Auswahlauftrags wie folgt vor:

• Definieren Sie einen Ausgabespeicherort für die Ausgabe Ihrer Auswahlabfrage. DieserSpeicherort muss ein Amazon S3-Bucket in derselben AWS-Region sein wie der Tresor, der dasabzurufende Archivobjekt enthält. Das AWS-Konto, von dem aus der Auftrag initiiert wird, muss überSchreibberechtigungen für den S3-Bucket verfügen. Sie können die Speicherklasse und Verschlüsselungfür Ausgabeobjekte in Amazon S3 festlegen. Beim Festlegen von S3Location (p. 312) kann es hilfreichsein, sich mit den folgenden Themen der Amazon S3-Dokumentation vertraut zu machen:• PUT Object in der Amazon Simple Storage Service API Reference• Zugriffsverwaltung mit ACLs im Entwicklerhandbuch für Amazon Simple Storage Service• Schützen von Daten mithilfe serverseitiger Verschlüsselung im Entwicklerhandbuch für Amazon Simple

Storage Service• Definieren Sie den SQL-Ausdruck für SELECT für Ihre Abfrage in SelectParameters (p. 313). Sie

können beispielsweise Ausdrücke wie in den folgenden Beispielen verwenden:• Mit dem folgenden Beispielausdruck werden alle Datensätze aus dem angegebenen Objekt

zurückgegeben.

SELECT * FROM archive

• Sofern Sie keine Header für im Objekt gespeicherte Daten verwenden, können Sie Spalten mitPositionsheadern angeben.

SELECT s._1, s._2 FROM archive s WHERE s._3 > 100

API-Version 2012-06-01284

Page 292: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

• Wenn Sie Header verwenden und die fileHeaderInfo in CSVInput (p. 301) auf Use festlegen,können Sie Header in der Abfrage angeben. (Wenn Sie die fileHeaderInfo Feld zu Ignore,wird die erste Zeile für die Abfrage übersprungen.) Sie können keine Ordinalpositionen mit denSpaltennamen der Kopfzeile mischen.

SELECT s.Id, s.FirstName, s.SSN FROM archive s

Weitere Informationen zur Verwendung von SQL mit S3 Glacier Select finden Sie unter SQL-Referenz fürAmazon S3 Select und S3 Glacier Select. (p. 326).

Sie können beim Initiieren eines Auswahlauftrags auch wie folgt vorgehen:

• Legen Sie das Expedited-Kontingent fest, um Ihre Abfragen zu beschleunigen. Weitere Informationenfinden Sie im Expedited-, Standard- und Bulk-Kontingente (p. 287).

• Geben Sie Details zum Datenserialisierungsformat des abzufragenden Eingabeobjekts und derSerialisierung der CSV-kodierten Abfrageergebnisse an.

• Geben Sie ein Amazon Simple Notification Service (Amazon SNS)-Thema an, an das S3 Glacier dieBenachrichtigung über den Abschluss der Aufgabe übermittelt. Sie können ein SNS-Thema für jedeAuftragsanforderung angeben. Die Benachrichtigung wird erst gesendet, nachdem S3 Glacier denAuftrag abgeschlossen hat.

• Sie können Describe Job (GET JobID) (p. 269) verwenden, um Informationen zum Auftragsstatus zuerhalten, während der Auftrag noch ausgeführt wird. Es ist jedoch effizienter, wenn Sie sich durch eineAmazon SNS-Benachrichtigung darüber informieren lassen, dass ein Auftrag abgeschlossen ist.

Folgendes ist beim Arbeiten mit Auswahlaufträgen nicht möglich:

• Aufrufen der Operation GetJobOutput. Die Auftragsausgabe wird in den Ausgabespeicherortgeschrieben.

• Auswahl von Bereichen

Ein Beispiel für das Initiieren eines Auswahlauftrags finden Sie unter Beispielanfrage Einen ausgewähltenJob initiieren (p. 292).

Initiieren eines Archiv- oder TresorinventarabrufsDas Abrufen eines Archivs oder des Tresorinventars ist ein asynchroner Vorgang, für den Sie einen Auftraginitiieren müssen. Nach dem Start kann die Aufgabe nicht abgebrochen werden. Das Abrufen erfolgt in zweiSchritten:

1. Initiieren Sie einen Abrufauftrag mit der Operation Initiate Job (POST jobs) (p. 284).

Important

Eine Datenabrufrichtlinie kann dazu führen, dass Ihre Anforderung zum Initiieren einesAbrufauftrags mit einem fehlschlägt PolicyEnforcedException. (z. B.. WeitereInformationen zu Datenabrufrichtlinien finden Sie unter Amazon S3 Glacier-Richtlinien für denDatenabruf (p. 162). Weitere Informationen zur PolicyEnforcedException-Ausnahmefinden Sie unter Fehlermeldungen (p. 190).

2. Laden Sie nach Abschluss des Auftrags die Bytes mit der Operation Get Job Output (GEToutput) (p. 277) herunter.

Die Abrufanforderung wird asynchron ausgeführt. Wenn Sie eine Abrufaufgabe initiieren, erstellt S3Glacier eine Aufgabe und gibt eine Aufgaben-ID in der Antwort zurück. Wenn S3 Glacier die Aufgabe

API-Version 2012-06-01285

Page 293: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

fertiggestellt hat, können Sie die Aufgabensausgabe (d. h. die Archiv- oder Inventardaten) abrufen. WeitereInformationen über das Abrufen der Auftragsausgabe finden Sie in den Hinweisen zum Get Job Output(GET output) (p. 277)-Vorgang.

Der Auftrag muss abgeschlossen sein, bevor Sie die Ausgabe abrufen können. Verwenden Sie eine derfolgenden Optionen, um festzustellen, wann ein Auftrag abgeschlossen ist:

• Benachrichtigung über Amazon SNS – Sie können ein Amazon SNS-Thema angeben, an das S3 Glacierdie Benachrichtigung über den Abschluss der Aufgabe übermittelt. Geben Sie dazu ein SNS-Thema fürjede Auftragsanforderung an. Die Benachrichtigung wird erst gesendet, nachdem S3 Glacier den Auftragabgeschlossen hat. Zusätzlich zur Angabe eines SNS-Themas für jede Auftragsanforderung könnenSie Tresorbenachrichtigungen für einen Tresor konfigurieren, sodass Auftragsbenachrichtigungenfür alle Abrufvorgänge gesendet werden. Weitere Informationen finden Sie im Set Vault NotificationConfiguration (PUT notification-configuration) (p. 236).

• Abrufen von Auftragsdetails – Sie können eine Describe Job (GET JobID) (p. 269)-Anforderungübermitteln, um Informationen zum Auftragsstatus zu erhalten, während der Auftrag noch ausgeführtwird. Es ist jedoch effizienter, wenn Sie sich durch eine Amazon SNS-Benachrichtigung darüberinformieren lassen, dass ein Auftrag abgeschlossen ist.

Note

Die Informationen, die Sie in der Benachrichtigung erhalten, sind identisch mit den Informationen,die durch den Describe Job (GET JobID) (p. 269)-Aufruf ermittelt werden.

Wenn Sie für ein bestimmtes Ereignis sowohl die Benachrichtigung im Tresor konfigurieren als auchein SNS-Thema bei der Initiierungsanforderung für den Auftrag angeben, sendet S3 Glacier beideBenachrichtigungen. Weitere Informationen finden Sie im Set Vault Notification Configuration (PUTnotification-configuration) (p. 236).

Die Inventarliste des TresorsS3 Glacier aktualisiert ein Tresorinventar etwa einmal pro Tag, beginnend mit dem Tag, an dem Sieein Archiv erstmals in den Tresor hochladen. Wenn dem Tresor seit der letzten Inventur keine Archivehinzugefügt oder aus ihm gelöscht wurden, wird das Inventurdatum nicht aktualisiert. Wenn Sie eineAufgabe für eine Tresorinventur initiieren, gibt S3 Glacier die letzte generierte Inventur zurück, die einPoint-in-Time-Snapshot ist und keine Echtzeitdaten enthält.

Wenn S3 Glacier das erste Inventar für den Tresor erstellt, kann es in der Regel einen halben Tag undsogar bis zu einem Tag dauern, bis das Inventar abgerufen werden kann.

Möglicherweise finden Sie es nicht nützlich, ein Tresorinventar für jeden Archiv-Upload abzurufen.Angenommen jedoch, Sie haben eine clientseitige Datenbank, die Metadaten über die Archive zuordnet,die Sie auf S3 Glacier hochladen. Dann finden Sie es möglicherweise nützlich, wenn die Tresorinventurdie Informationen in Ihrer Datenbank nach Bedarf mit dem aktuellen Tresorinventar abgleicht. WeitereInformationen über die Datenfelder, die bei einer Inventarabfrage zurückgegeben werden, finden Sie unterAntworttext (p. 280).

Inventarabfrage für einzelne BereicheSie können die Anzahl der abgerufenen Tresorinventarelemente beschränken, indem Sie nach demArchiverstellungsdatum filtern oder ein Limit festlegen.

Filtern nach dem Archiverstellungsdatum

Sie können Inventarelemente für Archive abrufen, die zwischen dem StartDate und dem EndDateerstellt wurden, indem Sie die Werte für diese Parameter in der Initiate Job-Anforderung angeben. Dadurchwerden Archive zurückgegeben, die am oder nach dem StartDate und vor dem EndDate erstellt wurden.Wenn Sie nur die StartDate ohne die EndDate, rufen Sie das Inventar für alle Archive ab, die am oder

API-Version 2012-06-01286

Page 294: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

nach dem erstellt wurden. StartDate. (z. B.. Wenn Sie nur die EndDate ohne die StartDate, erhaltenSie den Bestand für alle Archive, die vor der EndDate.

Beschränken der Inventarelemente für einzelne Abrufvorgänge

Sie können die Anzahl der zurückgegebenen Inventarelemente beschränken, indem Sie den Limit-Parameter in der Initiate Job-Anforderung festlegen. Die Ausgabe des Bestandsauftrags enthältBestandselemente bis zum angegebenen Limit. (z. B.. Wenn mehr Bestandselemente verfügbar sind,wird das Ergebnis paginiert. Nachdem ein Auftrag abgeschlossen ist, können Sie mithilfe der DescribeJob (GET JobID) (p. 269)-Operation eine Markierung abrufen, die Sie für eine nachfolgende InitiateJob-Anforderung verwenden können. Die Markierung kennzeichnet den Startpunkt, ab dem die nächsteGruppe der Inventarelemente abgerufen wird. Sie können durch das gesamte Inventar blättern, indemSie wiederholt Initiate Job-Anforderungen mit der Markierung aus der vorherigen Describe Job-Ausgabeausführen. Verfahren Sie so, bis eine Markierung von Describe Job mit Null zurückgegeben wird. Diesbedeutet, dass keine Inventarelemente mehr verfügbar sind.

Sie können die Limit-Parameter zusammen mit den Datenbereichsparametern verwenden.

Abrufen eines ArchivbereichsSie können den Abrufvorgang für das gesamte Archiv oder einen Bereich des Archivs initiieren. BeimAbrufen von Archivbereichen haben Sie die Möglichkeit einen Bytebereich anzugeben oder das gesamteArchiv abzurufen. Der Bereich muss in Megabytewerten (MB) angegeben werden. Das bedeutet, derStartwert muss 1 MB oder ein Vielfaches davon sein und der Bereichsendwert plus 1 muss durch 1 MBteilbar sein oder dem Ende des Archivs entsprechen. Wenn beim Abrufen eines Archivbereichs keineganzen Megabytewerte angegeben werden, wird als Antwort 400 zurückgegeben. Um sicherzustellen,dass Sie Prüfsummenwerte für Daten erhalten, die Sie mit der Funktion Get Job Output (Get Job Output(GET output) (p. 277)) herunterladen, muss der Bereich mit dem Struktur-Hash abgeglichen sein.Weitere Informationen zum Abgleichen von Bereichen mit dem Struktur-Hash finden Sie unter Erhalten vonPrüfsummen bei Daten-Download (p. 188).

Expedited-, Standard- und Bulk-KontingenteBeim Initiieren eines Auswahl- oder Archivabrufauftrags können Sie eine der folgenden Optionen im FeldTier des >Anforderungstexts angeben:

• Expedited – "Expedited"-Abrufe ermöglichen Ihnen den schnellen Zugriff auf Ihre Daten, wenngelegentliche dringende Zugriffe für eine Teilmenge der Archive erforderlich sind. Daten, die unterVerwendung des "Expedited"-Kontingents abgerufen werden, stehen normalerweise innerhalb von 1 bis5 Minuten zur Verfügung, außer wenn es sich um sehr große Archive (250 MB und mehr) handelt.

• Standard – Standard-Abrufe gestatten Ihnen, innerhalb von mehreren Stunden auf jedes Ihrer Archivezuzugreifen. Daten, die über das Standardkontingent abgerufen werden, sind in der Regel innerhalbvon drei bis fünf Stunden verfügbar. Diese Option ist für Auftragsanforderungen, für die kein Kontingentangegeben wird, das Standardkontingent.

• Bulk – Bulk-Abrufe sind das kostengünstigste Kontingent von S3 Glacier. Sie ermöglichen Ihnen, großeDatenmengen bis hin zu Petabytes innerhalb von einem Tag abzurufen. Daten, die über das Bulk-Kontingent abgerufen werden, sind in der Regel innerhalb von 5 bis 12 Stunden verfügbar.

Weitere Informationen zu Expedited- und Bulk-Abrufen finden Sie unter Abrufen von S3 Glacier-Archiven (p. 91).

RequestsVerwenden Sie zum Initiieren eines Auftrags die HTTP-POST-Methode und beschränken Sie den Umfangder Anforderung auf die jobs-Unterressource des Tresors. Sie legen die Details der Auftragsanforderungim JSON-Dokument für Ihre Anforderung fest. Der Auftragstyp wird im Feld Type angegeben. Optionalkönnen Sie auch ein SNSTopic-Feld festlegen, um ein Amazon SNS-Thema anzugeben, an das S3Glacier nach Beendigung der Aufgabe die Benachrichtigung übermitteln kann.

API-Version 2012-06-01287

Page 295: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

Note

Damit eine Benachrichtigung an Amazon SNS übermittelt wird, müssen Sie das Thema selbsterstellen, falls es noch nicht vorhanden ist. S3 Glacier legt das Thema nicht für Sie an. DemThema müssen entsprechende Berechtigungen zugewiesen werden, damit Veröffentlichungenaus einem S3 Glacier-Tresor empfangen werden können. S3 Glacier überprüft nicht, ob derTresor über die Berechtigung verfügt, Veröffentlichungen an das Thema zu übermitteln. Wenn dieBerechtigungen nicht ordnungsgemäß konfiguriert sind, erhalten Sie unter Umständen selbst nachBeendigung des Auftrags keine Benachrichtigung.

Syntax

Nachfolgend sehen Sie die Anforderungssyntax für das Initiieren eines Auftrags.

POST /AccountId/vaults/VaultName/jobs HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

{ "jobParameters": { "ArchiveId": "string", "Description": "string", "Format": "string", "InventoryRetrievalParameters": { "EndDate": "string", "Limit": "string", "Marker": "string", "StartDate": "string" }, "OutputLocation": { "S3": { "AccessControlList": [ { "Grantee": { "DisplayName": "string", "EmailAddress": "string", "ID": "string", "Type": "string", "URI": "string" }, "Permission": "string" } ], "BucketName": "string", "CannedACL": "string", "Encryption": { "EncryptionType": "string", "KMSContext": "string", "KMSKeyId": "string" }, "Prefix": "string", "StorageClass": "string", "Tagging": { "string" : "string" }, "UserMetadata": { "string" : "string" } } }, "RetrievalByteRange": "string",

API-Version 2012-06-01288

Page 296: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

"SelectParameters": { "Expression": "string", "ExpressionType": "string", "InputSerialization": { "csv": { "Comments": "string", "FieldDelimiter": "string", "FileHeaderInfo": "string", "QuoteCharacter": "string", "QuoteEscapeCharacter": "string", "RecordDelimiter": "string" } }, "OutputSerialization": { "csv": { "FieldDelimiter": "string", "QuoteCharacter": "string", "QuoteEscapeCharacter": "string", "QuoteFields": "string", "RecordDelimiter": "string" } } }, "SNSTopic": "string", "Tier": "string", "Type": "string" }}

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

AnforderungstextDie Anforderung akzeptiert die folgenden Daten im JSON-Format im Text der Anforderung.

jobParameters

Bietet Optionen für die Angabe von Auftragsinformationen.

Typ: jobParameters (p. 309) Objekt

Erforderlich Ja.

ResponsesS3 Glacier erstellt die Aufgabe. In der Antwort wird der URI des Auftrags zurückgegeben.

Syntax

HTTP/1.1 202 Acceptedx-amzn-RequestId: x-amzn-RequestIdDate: DateLocation: locationx-amz-job-id: jobId

API-Version 2012-06-01289

Page 297: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

x-amz-job-output-path: jobOutputPath

Antwort-Header

Header Description (Beschreibung)

Location Der relative URI-Pfad des Auftrags. Sie können diesen URI-Pfad verwenden, umden Auftragsstatus zu ermitteln. Weitere Informationen finden Sie im Describe Job(GET JobID) (p. 269).

Typ : Zeichenfolge.

Standard Keine.

x-amz-job-id Die ID des Auftrags. Dieser Wert wird ebenfalls als Teil des Location-Headersangegeben.

Typ : Zeichenfolge.

Standard Keine.

x-amz-job-output-path

Dieser Header wird nur für Auswahlauftragstypen zurückgegeben. Der Pfad desSpeicherorts, an dem die Auswahlergebnisse gespeichert werden

Typ : Zeichenfolge.

Standard Keine.

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

ErrorsDiese Operation umfasst neben den bei allen Amazon S3 Glacier-Operationen möglichen Fehlern denbzw. die folgenden Fehler. Für weitere Informationen über Amazon S3 Glacier-Fehler und eine Liste derFehlercodes siehe Fehlermeldungen (p. 190).

: Code Description (Beschreibung) HTTP-Statuscode

Typ

InsufficientCapacityExceptionWird zurückgegeben, wenndie vorhandene Kapazität nichtausreicht, um diese beschleunigteAnforderung zu verarbeiten. DieserFehler gilt nur für beschleunigteAbrufe und nicht für Standard- oderMassenabrufe.

503 ServiceUnavailable

herstellen

ExamplesBeispielanfrage Initiieren Sie einen Auftrag zum Abrufen eines Archivs.

POST /-/vaults/examplevault/jobs HTTP/1.1

API-Version 2012-06-01290

Page 298: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

{ "Type": "archive-retrieval", "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId", "Description": "My archive description", "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-ArchiveRetrieval-topic-Example", "Tier" : "Bulk"}

Das folgende Beispiel zeigt den Text einer Anforderung, durch die ein abzurufender Archivbereich mithilfedes RetrievalByteRange-Feldes festgelegt wird.

{ "Type": "archive-retrieval", "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId", "Description": "My archive description", "RetrievalByteRange": "2097152-4194303", "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-ArchiveRetrieval-topic-Example", "Tier" : "Bulk"}

Beispielantwort

HTTP/1.1 202 Acceptedx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTLocation: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobIDx-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID

Beispielanfrage Initiieren eines BestandsabrufauftragsDie folgende Anforderung initiiert einen Auftrag für eine Inventarabfrage, durch die eine Liste der Archive imexamplevault-Tresor angefordert wird. Da das Format im Text der Anforderung auf CSV festgelegt ist,wird das Inventar im CSV-Format zurückgegeben.

POST /-/vaults/examplevault/jobs HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000ZContent-Type: application/x-www-form-urlencodedx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

{ "Type": "inventory-retrieval", "Description": "My inventory job", "Format": "CSV", "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-InventoryRetrieval-topic-Example"}

API-Version 2012-06-01291

Page 299: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

Beispielantwort

HTTP/1.1 202 Acceptedx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobIDx-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID

Beispielanfragen: Initiieren Sie einen Bestandsabrufauftrag, indem SieDatumsfilterung mit einem festgelegten Limit und eine nachfolgende Anforderungzum Abrufen der nächsten Seite von Bestandselementen verwenden.

Die folgende Anforderung initiiert einen Auftrag zum Abrufen des Tresorinventars durch Filtern der Datenund Festlegen eines Limits.

{ "ArchiveId": null, "Description": null, "Format": "CSV", "RetrievalByteRange": null, "SNSTopic": null, "Type": "inventory-retrieval", "InventoryRetrievalParameters": { "StartDate": "2013-12-04T21:25:42Z", "EndDate": "2013-12-05T21:25:42Z", "Limit" : "10000" }, }

Die folgende Anforderung ist ein Beispiel für eine Folgeanforderung zum Abrufen der nächsten Seite derInventarelemente mithilfe einer Markierung, die durch Describe Job (GET JobID) (p. 269) übermitteltwurde.

{ "ArchiveId": null, "Description": null, "Format": "CSV", "RetrievalByteRange": null, "SNSTopic": null, "Type": "inventory-retrieval", "InventoryRetrievalParameters": { "StartDate": "2013-12-04T21:25:42Z", "EndDate": "2013-12-05T21:25:42Z", "Limit": "10000", "Marker": "vyS0t2jHQe5qbcDggIeD50chS1SXwYMrkVKo0KHiTUjEYxBGCqRLKaiySzdN7QXGVVV5XZpNVG67pCZ_uykQXFMLaxOSu2hO_-5C0AtWMDrfo7LgVOyfnveDRuOSecUo3Ueq7K0" }, }

Beispielanfrage Einen ausgewählten Job initiieren

Mit der folgenden Anforderung wird ein Auswahlauftrag initiiert.

POST /-/vaults/examplevault/jobs HTTP/1.1Host: glacier.us-west-2.amazonaws.com

API-Version 2012-06-01292

Page 300: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInitiate Job

x-amz-Date: 20170210T120000ZContent-Type: application/x-www-form-urlencodedx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

{ "Type": "select", "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId", "Description": null, "SNSTopic": null,

"Tier": "Bulk", "SelectParameters": { "Expression": "select * from archive", "ExpressionType": "SQL", "InputSerialization": { "csv": { "Comments": null, "FileHeaderInfo": "None", "QuoteEscapeCharacter": "\"", "RecordDelimiter": "\n", "FieldDelimiter": ",", "QuoteCharacter": "\"" } }, "OutputSerialization": { "csv": { "QuoteFields": "AsNeeded", "QuoteEscapeCharacter": null, "RecordDelimiter": "\n", "FieldDelimiter": ",", "QuoteCharacter": "\"" } } }, "OutputLocation": { "S3": { "BucketName": "bucket-name", "Prefix": "test", "Encryption": { "EncryptionType": "AES256" }, "CannedACL": "private", "StorageClass": "STANDARD" } }}

Beispielantwort

HTTP/1.1 202 Acceptedx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobIDx-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobIDx-amz-job-output-path: test/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID/

API-Version 2012-06-01293

Page 301: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAufträge auflisten

Zugehörige Abschnitte

• Describe Job (GET JobID) (p. 269)• Get Job Output (GET output) (p. 277)• SQL-Referenz für Amazon S3 Select und S3 Glacier Select. (p. 326)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

Aufträge auflisten (GET jobs)BeschreibungDurch diese Operation wird eine Liste der Aufträge für einen Tresor erstellt, einschließlich der Aufträge, diegerade ausgeführt werden, und der vor kurzem abgeschlossenen Aufträge.

Note

Abgeschlossene Aufgaben werden von Amazon S3 Glacier (S3 Glacier) noch vorübergehend füreinen beschränkten Zeitraum gespeichert. Letztendlich werden jedoch alle Aufgaben entfernt. DieAusgabe der abgeschlossenen Aufträge kann abgerufen werden. Da abgeschlossene Aufträgenicht sofort entfernt werden, haben Sie die Möglichkeit, die Auftragsausgabe auch dann nochherunterzuladen, wenn Sie die Benachrichtigung über den Abschluss des Auftrags verpassthaben oder wenn Ihr erster Versuch, die Daten herunterzuladen, nicht gelingt. Angenommen,Sie starten einen Auftrag zum Abrufen eines Archivs, um ein Archiv herunterzuladen. Sie startenden Download, nachdem der Auftrag abgeschlossen ist, aber gerade in diesem Moment tritt einNetzwerkfehler auf. Solange der Auftrag noch vorhanden ist, können Sie erneut versuchen, dasArchiv herunterzuladen.

Die List Jobs-Operation unterstützt Paginierung. Sie sollten immer das Marker-Antwortfeld überprüfen.Wenn keine Aufträge mehr vorhanden sind, wird das Marker-Feld auf null gesetzt. Wenn weitereAufträge aufgeführt werden können, zeigt das Marker-Feld einen anderen Wert als null an. Sie könnendiesen Wert verwenden, um die Paginierung der Liste fortzusetzen. Wenn eine Liste aller Aufträge abeinem bestimmten Auftrag zurückgegeben werden soll, legen Sie den marker-Anforderungsparameterauf den Marker-Wert fest, den Sie für den entsprechenden Auftrag bei einer vorherigen List Jobs-Anforderung ermittelt haben.

Mit dem limit-Parameter in der Anforderung können Sie eine Höchstgrenze für die Anzahl derAufträge festlegen, die in der Antwort zurückgegeben werden. Das Standardlimit ist 50. Die Anzahlder zurückgegebenen Aufträge kann kleiner sein als das festgelegte Limit, aber die Anzahl derzurückgegebenen Aufträge überschreitet das Limit nie.

Darüber hinaus können Sie die zurückgegebene Auftragsliste filtern, indem Sie wahlweise den Parameterstatuscode und/oder den Parameter completed festlegen. Bei Verwendung des Parametersstatuscode können Sie weiterhin angeben, dass nur die Aufträge zurückgegeben werden sollen, dieeinen der folgenden Status aufweisen: InProgress, Succeeded oder Failed. Bei Verwendung desParameters completed können Sie angeben, dass entweder nur abgeschlossene (true) oder nur dienoch nicht abgeschlossenen Aufträge (false) zurückgegeben werden sollen.

AnforderungenSyntax

Um eine Liste der Aufträge jedes Typs abzurufen, senden Sie eine GET-Anforderung an den URI der jobs-Unterressource des Tresors.

API-Version 2012-06-01294

Page 302: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAufträge auflisten

GET /AccountId/vaults/VaultName/jobs HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID des Kontos, das für den Tresor zuständig ist.Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich (-)angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie eine Konto-IDverwenden, führen Sie in der ID keine Bindestriche (‚-‘)mit auf.

Anfrageparameter

Name Beschreibung Erforderlich

completed Der Status der zurückzugebenden Aufträge. Sie können true oderfalse angeben.

Typ: boolescher Wert

Einschränkungen: Keine

Nein

limit Die maximale Anzahl der zurückzugebenden Aufträge. DasStandardlimit ist 50. Die Anzahl der zurückgegebenen Aufträgekann kleiner sein als das festgelegte Limit, aber die Anzahl derzurückgegebenen Aufträge überschreitet das Limit nie.

Typ: Zeichenfolge

Beschränkungen: Mindestganzzahlwert 1. Höchstganzzahlwert 50.

Nein

marker Eine opake Zeichenfolge für die Paginierung, durch die der Auftragfestgelegt wird, mit dem die Liste der Aufträge beginnen soll. Siekönnen den Wert für marker der Antwort auf eine vorherige ListJobs-Anforderung entnehmen. Sie müssen marker nur danneinschließen, wenn Sie die Paginierung der Ergebnisse fortsetzen,die in einer vorherigen „“-Anforderung gestartet wurde.List Jobs

Typ: Zeichenfolge

Einschränkungen: Keine

Nein

statuscode Der Auftragsstatus, der zurückgegeben werden soll.

Typ: Zeichenfolge

Einschränkungen: Einer der folgenden Werte: InProgress,Succeeded oder Failed.

Nein

AnforderungsheaderFür diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

API-Version 2012-06-01295

Page 303: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAufträge auflisten

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateLocation: Location Content-Type: application/jsonContent-Length: Length

{ "JobList": [ { "Action": "string", "ArchiveId": "string", "ArchiveSHA256TreeHash": "string", "ArchiveSizeInBytes": number, "Completed": boolean, "CompletionDate": "string", "CreationDate": "string", "InventoryRetrievalParameters": { "EndDate": "string", "Format": "string", "Limit": "string", "Marker": "string", "StartDate": "string" }, "InventorySizeInBytes": number, "JobDescription": "string", "JobId": "string", "JobOutputPath": "string", "OutputLocation": { "S3": { "AccessControlList": [ { "Grantee": { "DisplayName": "string", "EmailAddress": "string", "ID": "string", "Type": "string", "URI": "string" }, "Permission": "string" } ], "BucketName": "string", "CannedACL": "string", "Encryption": { "EncryptionType": "string", "KMSContext": "string", "KMSKeyId": "string" }, "Prefix": "string", "StorageClass": "string", "Tagging": { "string": "string" }, "UserMetadata": {

API-Version 2012-06-01296

Page 304: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAufträge auflisten

"string": "string" } } }, "RetrievalByteRange": "string", "SelectParameters": { "Expression": "string", "ExpressionType": "string", "InputSerialization": { "csv": { "Comments": "string", "FieldDelimiter": "string", "FileHeaderInfo": "string", "QuoteCharacter": "string", "QuoteEscapeCharacter": "string", "RecordDelimiter": "string" } }, "OutputSerialization": { "csv": { "FieldDelimiter": "string", "QuoteCharacter": "string", "QuoteEscapeCharacter": "string", "QuoteFields": "string", "RecordDelimiter": "string" } } }, "SHA256TreeHash": "string", "SNSTopic": "string", "StatusCode": "string", "StatusMessage": "string", "Tier": "string", "VaultARN": "string" } ], "Marker": "string"}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

JobList

Eine Liste der Auftragsobjekte. Jedes Auftragsobjekt enthält Metadaten, die den Auftrag beschreiben.

Typ: Array von GlacierJobDescription (p. 304)-ObjektenMarker

Eine opake Zeichenfolge, die angibt, wo die Paginierung der Ergebnisse fortgesetzt werden soll.Verwenden Sie den marker-Wert in einer neuen List Jobs-Anforderung, um weitere Aufträge inder Liste zu erhalten. Wenn keine weiteren Aufträge vorhanden sind, ist dieser Wert null.

Typ: Zeichenfolge

API-Version 2012-06-01297

Page 305: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAufträge auflisten

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleDie folgenden Beispiele zeigen, wie Informationen über Tresoraufträge zurückgegeben werden. Im erstenBeispiel wird eine Liste mit zwei Aufträgen zurückgegeben, während das zweite Beispiel zeigt, wie eineUntermenge von Aufträgen zurückgegeben wird.

Beispiel: Alle Aufträge zurückgeben

Beispielanfrage

Die folgende GET-Anforderung gibt die Aufträge für einen Tresor zurück.

GET /-/vaults/examplevault/jobs HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Die folgende Antwort enthält einen Auftrag zum Abrufen eines Archivs und einen Inventarabrufauftrag miteiner Markierung, durch die die Paginierung des Tresorinventarabrufs fortgesetzt wird. Die Antwort zeigtaußerdem, dass das Marker-Feld auf null gesetzt wurde, wodurch angezeigt wird, dass keine weiterenAufträge vorhanden sind.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT Content-Type: application/jsonContent-Length: 1444

{ "JobList": [ { "Action": "ArchiveRetrieval", "ArchiveId": "BDfaUQul0dVzYwAMr8YSa_6_8abbhZq-i1oT69g8ByClfJyBgAGBkWl2QbF5os851P7Y7KdZDOHWJIn4rh1ZHaOYD3MgFhK_g0oDPesW34uHQoVGwoIqubf6BgUEfQm_wrU4Jlm3cA", "ArchiveSizeInBytes": 1048576, "ArchiveSHA256TreeHash": "25499381569ab2f85e1fd0eb93c5406a178ab77c5933056eb5d6e7d4adda609b", "Completed": true, "CompletionDate": "2012-05-01T00:00:09.304Z", "CreationDate": "2012-05-01T00:00:06.663Z", "InventorySizeInBytes": null, "JobDescription": null, "JobId": "hDe9t9DTHXqFw8sBGpLQQOmIM0-JrGtu1O_YFKLnzQ64548qJc667BRWTwBLZC76Ygy1jHYruqXkdcAhRsh0hYv4eVRU", "RetrievalByteRange": "0-1048575", "SHA256TreeHash": "25499381569ab2f85e1fd0eb93c5406a178ab77c5933056eb5d6e7d4adda609b", "SNSTopic": null, "StatusCode": "Succeeded", "StatusMessage": "Succeeded", "Tier": "Bulk", "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"

API-Version 2012-06-01298

Page 306: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchAufträge auflisten

}, { "Action": "InventoryRetrieval", "ArchiveId": null, "ArchiveSizeInBytes": null, "ArchiveSHA256TreeHash": null, "Completed": true, "CompletionDate": "2013-05-11T00:25:18.831Z", "CreationDate": "2013-05-11T00:25:14.981Z", "InventorySizeInBytes": 1988, "JobDescription": null, "JobId": "2cvVOnBL36btzyP3pobwIceiaJebM1bx9vZOOUtmNAr0KaVZ4WkWgVjiPldJ73VU7imlm0pnZriBVBebnqaAcirZq_C5", "RetrievalByteRange": null, "SHA256TreeHash": null, "SNSTopic": null, "StatusCode": "Succeeded", "StatusMessage": "Succeeded", "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault" "InventoryRetrievalParameters": { "StartDate": "2013-11-12T13:43:12Z", "EndDate": "2013-11-20T08:12:45Z", "Limit": "120000", "Format": "JSON", "Marker": "vyS0t2jHQe5qbcDggIeD50chS1SXwYMrkVKo0KHiTUjEYxBGCqRLKaiySzdN7QXGVVV5XZpNVG67pCZ_uykQXFMLaxOSu2hO_-5C0AtWMDrfo7LgVOyfnveDRuOSecUo3Ueq7K0" } ], "Marker": null }

Beispiel: Teilliste der Aufträge zurückgeben

Beispielanfrage

Mit der folgenden GET-Anforderung wird der Auftrag zurückgegeben, der durch den marker-Parameter festgelegt wurde. Wenn der limit-Parameter auf gesetzt wird, werden bis zu zwei Aufträgezurückgegeben.2

GET /-/vaults/examplevault/jobs?marker=HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID&limit=2 HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Beispielantwort

Die folgende Antwort zeigt zwei zurückgegebene Aufträge und das Marker-Feld enthält einen anderenWert als null. Dieser Wert kann verwendet werden, um die Paginierung der Auftragsliste fortzusetzen.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMT Content-Type: application/jsonContent-Length: 1744

{ "JobList": [

API-Version 2012-06-01299

Page 307: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchIn Auftragsoperationen verwendete Datentypen

{ "Action": "ArchiveRetrieval", "ArchiveId": "58-3KpZfcMPUznvMZNPaKyJx9wODCsWTnqcjtx2CjKZ6b-XgxEuA8yvZOYTPQfd7gWR4GRm2XR08gcnWbLV4VPV_kDWtZJKi0TFhKKVPzwrZnA4-FXuIBfViYUIVveeiBE51FO4bvg", "ArchiveSizeInBytes": 8388608, "ArchiveSHA256TreeHash": "106086b256ddf0fedf3d9e72f461d5983a2566247ebe7e1949246bc61359b4f4", "Completed": true, "CompletionDate": "2012-05-01T00:25:20.043Z", "CreationDate": "2012-05-01T00:25:16.344Z", "InventorySizeInBytes": null, "JobDescription": "aaabbbccc", "JobId": "s4MvaNHIh6mOa1f8iY4ioG2921SDPihXxh3Kv0FBX-JbNPctpRvE4c2_BifuhdGLqEhGBNGeB6Ub-JMunR9JoVa8y1hQ", "RetrievalByteRange": "0-8388607", "SHA256TreeHash": "106086b256ddf0fedf3d9e72f461d5983a2566247ebe7e1949246bc61359b4f4", "SNSTopic": null, "StatusCode": "Succeeded", "StatusMessage": "Succeeded", "Tier": "Bulk", "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault" }, { "Action": "ArchiveRetrieval", "ArchiveId": "2NVGpf83U6qB9M2u-Ihh61yoFLRDEoh7YLZWKBn80A2i1xG8uieBwGjAr4RkzOHA0E07ZjtI267R03Z-6Hxd8pyGQkBdciCSH1-Lw63Kx9qKpZbPCdU0uTW_WAdwF6lR6w8iSyKdvw", "ArchiveSizeInBytes": 1048576, "ArchiveSHA256TreeHash": "3d2ae052b2978727e0c51c0a5e32961c6a56650d1f2e4ceccab6472a5ed4a0", "Completed": true, "CompletionDate": "2012-05-01T16:59:48.444Z", "CreationDate": "2012-05-01T16:59:42.977Z", "InventorySizeInBytes": null, "JobDescription": "aaabbbccc", "JobId": "CQ_tf6fOR4jrJCL61Mfk6VM03oY8lmnWK93KK4gLig1UPAbZiN3UV4G_5nq4AfmJHQ_dOMLOX5k8ItFv0wCPN0oaz5dG", "RetrievalByteRange": "0-1048575", "SHA256TreeHash": "3d2ae052b2978727e0c51c0a5e32961c6a56650d1f2e4ceccab6472a5ed4a0", "SNSTopic": null, "StatusCode": "Succeeded", "StatusMessage": "Succeeded", "Tier": "Standard", "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault" } ], "Marker": "CQ_tf6fOR4jrJCL61Mfk6VM03oY8lmnWK93KK4gLig1UPAbZiN3UV4G_5nq4AfmJHQ_dOMLOX5k8ItFv0wCPN0oaz5dG"}

Zugehörige Abschnitte

• Describe Job (GET JobID) (p. 269)• Identitäts- und Zugriffsverwaltung in Amazon S3 Glacier (p. 135)

In Auftragsoperationen verwendete DatentypenNachfolgend sind die Datentypen beschrieben, die in Aufgabenoperationen in S3 Glacier verwendetwerden.

API-Version 2012-06-01300

Page 308: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchCSVInput

Themen• CSVInput (p. 301)• CSVOutput (p. 302)• Verschlüsselung (p. 303)• GlacierJobDescription (p. 304)• Grant (p. 306)• Grantee (p. 307)• InputSerialization (p. 308)• InventoryRetrievalJobInput (p. 308)• jobParameters (p. 309)• OutputLocation (p. 311)• OutputSerialization (p. 311)• S3Location (p. 312)• SelectParameters (p. 313)

CSVInputEnthält Informationen zur CSV-Datei.

InhaltKommentare

Ein einzelnes Zeichen, mit dem angegeben wird, dass eine Zeile ignoriert werden soll, wenn dasZeichen am Anfang der Reihe vorhanden ist

Typ: Zeichenfolge

Erforderlich: NeinFieldDelimiter

Ein einzelnes Zeichen, das zum Trennen einzelner Felder innerhalb eines Datensatzes verwendet wirdDas Zeichen muss \n, \r oder ein ASCII-Zeichen im Bereich 32–126 sein. Standardmäßig wird einKomma (,) verwendet.

Typ: Zeichenfolge

Standard: ,

Erforderlich: NeinFileHeaderInfo

Ein Wert zur Beschreibung, wie mit der ersten Zeile der Eingabe verfahren werden soll

Typ: Zeichenfolge

Zulässige Werte: Use | Ignore | None

Erforderlich: NeinQuoteCharacter

Ein einzelnes Zeichen, das als Escape-Zeichen verwendet wird, wenn das Feldtrennzeichen Teil desWerts ist

API-Version 2012-06-01301

Page 309: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchCSVOutput

Typ: Zeichenfolge

Erforderlich: NeinQuoteEscapeCharacter

Ein einzelnes Zeichen, das als Escape-Zeichen für Anführungszeichen innerhalb eines Wertsverwendet wird, in dem bereits ein Escape-Zeichen verwendet wird

Typ: Zeichenfolge

Erforderlich: NeinRecordDelimiter

Ein einzelnes Zeichen, das zum Trennen einzelner Datensätze voneinander verwendet wird

Typ: Zeichenfolge

Erforderlich: Nein

Weitere Infos

• Initiate Job (POST jobs) (p. 284)

CSVOutputEnthält Informationen zum CSV-Format, in dem die Auftragsergebnisse gespeichert sind.

InhaltFieldDelimiter

Ein einzelnes Zeichen, das zum Trennen einzelner Felder innerhalb eines Datensatzes verwendet wird

Typ: Zeichenfolge

Erforderlich: NeinQuoteCharacter

Ein einzelnes Zeichen, das als Escape-Zeichen verwendet wird, wenn das Feldtrennzeichen Teil desWerts ist

Typ: Zeichenfolge

Erforderlich: NeinQuoteEscapeCharacter

Ein einzelnes Zeichen, das als Escape-Zeichen für Anführungszeichen innerhalb eines Wertsverwendet wird, in dem bereits ein Escape-Zeichen verwendet wird

Typ: Zeichenfolge

Erforderlich: NeinQuoteFields

Ein Wert, der angibt, ob alle Ausgabefelder in Anführungszeichen aufgeführt werden sollen

API-Version 2012-06-01302

Page 310: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerschlüsselung

Zulässige Werte: ALWAYS | ASNEEDED

Typ: Zeichenfolge

Erforderlich: NeinRecordDelimiter

Ein einzelnes Zeichen, das zum Trennen einzelner Datensätze voneinander verwendet wird

Typ: Zeichenfolge

Erforderlich: Nein

Weitere Infos

• Initiate Job (POST jobs) (p. 284)

VerschlüsselungEnthält Informationen zur Verschlüsselung, mit der die Auftragsergebnisse in Amazon S3 gespeichertwerden.

InhaltVerschlüsselung

Der serverseitige Verschlüsselungsalgorithmus, der zum Speichern von Auftragsergebnissen inAmazon S3 verwendet wird. Standardmäßig wird keine Verschlüsselung verwendet.

Typ: Zeichenfolge

Zulässige Werte: aws:kms | AES256

Erforderlich: NeinKMSContext

Optional. Wenn der Verschlüsselungstyp aws:kms, ist, können Sie diesen Wert verwenden, um denVerschlüsselungskontext für die Auftragsergebnisse festzulegen.

Typ: Zeichenfolge

Erforderlich: NeinKMSKeyId

Die AWS Key Management Service (AWS KMS)-Schlüssel-ID, die Sie zur Objektverschlüsselungverwenden

Typ: Zeichenfolge

Erforderlich: Nein

Weitere Infos

API-Version 2012-06-01303

Page 311: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGlacierJobDescription

• Initiate Job (POST jobs) (p. 284)

GlacierJobDescriptionEnthält die Beschreibung einer Amazon S3 Glacier (S3 Glacier)-Aufgabe.

InhaltAktion

Der Auftragstyp. Er ist entweder ArchiveRetrieval, InventoryRetrieval oder Select.

Typ: ZeichenfolgeArchiveId

Die Archiv-ID, die für eine Auswahl oder einen Archivabruf angefordert wurde. Andernfalls ist diesesFeld null.

Typ: ZeichenfolgeArchiveSHA256TreeHash

Der SHA256-Struktur-Hash des gesamten Archivs für einen Archivabruf. Für Inventarabrufaufträge istdieses Feld null.

Typ: ZeichenfolgeArchiveSizeInBytes

Für einen ArchiveRetrieval-Auftrag ist dies die Größe in Bytes des zum Herunterladenangeforderten Archivs. Für den InventoryRetrieval-Auftrag ist der Wert null.

Typ: ZahlCompleted

true, wenn der Auftrag abgeschlossen ist; anderenfalls false.

Typ: Boolescher WertCompletionDate

Das Datum, an dem der Auftrag abgeschlossen wurde

Uhrzeit der Fertigstellung der Auftragsanforderung in UTC (Universal Coordinated Time). Während derAuftrag in Bearbeitung ist, ist der Wert Null.

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

CreationDate

Datum und Uhrzeit des Starts des Auftrags in UTC (Universal Coordinated Time).

Typ: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

InventoryRetrievalParameters

Die Eingabeparameter für die Inventarabfrage für einzelne Bereiche

Typ: InventoryRetrievalJobInput (p. 308) Objekt

API-Version 2012-06-01304

Page 312: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGlacierJobDescription

InventorySizeInBytes

Für einen InventoryRetrieval-Auftrag ist dies die Größe in Bytes des zum Herunterladenangeforderten Inventars. Für den ArchiveRetrieval- oder Select-Auftrag ist der Wert null.

Typ: ZahlJobDescription

Die Auftragsbeschreibung, die Sie bei der Initiierung des Auftrags angegeben haben

Typ: ZeichenfolgeJobId

Die ID, die die Aufgabe in S3 Glacier identifiziert

Typ: ZeichenfolgeJobOutputPath

Enthält den Speicherort für die Auftragsausgabe.

Typ: ZeichenfolgeOutputLocation

Ein Objekt, das Informationen zum Speicherort der Ergebnisse und Fehler des ausgewählten Jobsenthält

Typ: OutputLocation (p. 311) ObjektRetrievalByteRange

Der abgerufene Bytebereich für Aufträge zum Abrufen von Archiven in der Form"StartByteValue-EndByteValue". Wenn kein Bereich angegeben ist, wird das gesamte Archivabgerufen und der Wert StartByteValue ist gleich 0 und der Wert EndByteValue entspricht der Größedes Archivs minus 1. Für Inventarabrufaufträge ist dieses Feld null.

Typ: ZeichenfolgeSelectParameters

Ein Objekt mit Informationen zu den Parametern für eine Auswahl

Typ: SelectParameters (p. 313) ObjektSHA256TreeHash

Der SHA256-Struktur-Hash-Wert für den angeforderten Bereich eines Archivs. Wenn in der InitiateJob (POST jobs) (p. 284)-Anfrage für ein Archiv ein mit dem Struktur-Hash abgeglichener Bereichangegeben wurde, gibt dieses Feld einen Wert zurück. Weitere Informationen zur Verwendung vonmit dem Struktur-Hash abgeglichenen Bereichen beim Abrufen von Archivbereichen finden Sie unterErhalten von Prüfsummen bei Daten-Download (p. 188).

Wenn das gesamte Archiv abgerufen wird, ist dieser Wert mit dem ArchiveSHA256TreeHash-Wertidentisch.

In den folgenden Situationen hat dieses Feld den Wert null.• Aufträge zum Abruf von Archiven, die einen Bereich angeben, der nicht mit dem Struktur-Hash

abgeglichen ist.• Archivaufträge, die einen Bereich festlegen, der das gesamte Archiv einschließt, und deren

Auftragsstatus InProgress lautet.• Inventaraufträge.• Wählen Sie die Aufträge aus.

API-Version 2012-06-01305

Page 313: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGrant

Typ: ZeichenfolgeSNSTopic

Der Amazon-Ressourcenname (ARN), der das Amazon SNS-Thema bezeichnet, an das nachBeendigung oder Fehlschlagen eines Auftrags eine Benachrichtigung gesendet wird, sofernBenachrichtigungen bei der Initiierung des Auftrags (Initiate Job (POST jobs) (p. 284)) konfiguriertwurden.

Typ: ZeichenfolgeStatusCode

Der Code, der den Status des Auftrags angibt

Zulässige Werte: InProgress | Succeeded | Failed

Typ: ZeichenfolgeStatusMessage

Die Nachricht für den Auftragsstatus.

Typ: ZeichenfolgeStufe

Das Datenzugriffskontingent, das für die Auswahl oder den Archivabruf verwendet wird

Zulässige Werte: Expedited | Standard | Bulk

Typ: ZeichenfolgeVaultARN

Der ARN des Tresors, von dem der Auftrag eine Unterressource ist

Typ: Zeichenfolge

Weitere Infos• Initiate Job (POST jobs) (p. 284)

GrantEnthält Informationen zu einer Zuwendung.

InhaltGrantee

Das Empfänger einer Zuwendung

Typ: Grantee (p. 307) Objekt

Erforderlich: NeinBerechtigung

Die Berechtigung, die der Empfänger erhält

Typ: Zeichenfolge

API-Version 2012-06-01306

Page 314: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGrantee

Zulässige Werte: FULL_CONTROL | WRITE | WRITE_ACP | READ | READ_ACP

Erforderlich: Nein

Weitere Infos

• Initiate Job (POST jobs) (p. 284)

GranteeEnthält Informationen zu einem Zuwendungsempfänger.

InhaltDisplayName

Der Anzeigename des Empfängers

Typ: Zeichenfolge

Erforderlich: NeinEmailAddress

Die E-Mail-Adresse des Empfängers

Typ: Zeichenfolge

Erforderlich: NeinID

Die kanonische Benutzer-ID des Empfängers

Typ: Zeichenfolge

Erforderlich: NeinTyp

Der Typ des Empfängers

Typ: Zeichenfolge

Zulässige Werte: AmazonCustomerByEmail | CanonicalUser | Group

Erforderlich: NeinURI

Die URI der Empfängergruppe

Typ: Zeichenfolge

Erforderlich: Nein

Weitere Infos

API-Version 2012-06-01307

Page 315: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchInputSerialization

• Initiate Job (POST jobs) (p. 284)

InputSerializationBeschreibt, wie das Archiv serialisiert wird.

InhaltCSV

Ein Objekt, das die Serialisierung eines CSV-kodierten Objekts beschreibt

Typ: CSVInput (p. 301) Objekt

Erforderlich: Nein

Weitere Infos

• Initiate Job (POST jobs) (p. 284)

InventoryRetrievalJobInputBietet Optionen für die Angabe eines Bereichsinventarabrufs.

InhaltEndDate

Das Ende des Datumsbereichs (in UTC-Zeit) für den Abruf eines Tresorinventars, das Archive umfasst,die vor diesem Datum erstellt wurden

Zulässige Werte: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat (YYYY-MM-DDThh:mm:ssTZD) mit Sekundenangabe: 2013-03-20T17:03:43Z.

Typ: Zeichenfolge. Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat (YYYY-MM-DDThh:mm:ssTZD) mit Sekundenangabe: 2013-03-20T17:03:43Z.

Erforderlich: NeinFormat

Das Ausgabeformat für die Tresorinventarliste, das beim Initiieren des Auftrags zum Abrufen einerTresorinventarliste durch die Initiate Job (POST jobs) (p. 284)-Anfrage festgelegt wird.

Zulässige Werte: CSV | JSON

Erforderlich: Nein

Typ: ZeichenfolgeLimit

Die Höchstzahl der Inventarelemente an, die bei jeder Anforderung zum Abrufen des Tresorinventarszurückgegeben werden können

Gültige Werte: Eine Ganzzahl gleich oder größer als 1.

API-Version 2012-06-01308

Page 316: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchjobParameters

Typ: Zeichenfolge

Erforderlich: NeinMarker

Eine opake Zeichenfolge, die angibt, wo die Paginierung der Ergebnisse des Abrufs desTresorinventars fortgesetzt werden soll. Sie verwenden diese Markierung in einer neuenInitiate Job-Anforderung, um zusätzliche Inventarelemente zu erhalten. Wenn keine weiterenInventarelemente vorhanden sind, ist dieser Wert null.

Typ: Zeichenfolge

Erforderlich: NeinStartDate

Der Beginn des Datumsbereichs (in UTC-Zeit) für den Abruf eines Tresorinventars, das Archiveumfasst, die an oder nach diesem Datum erstellt wurden

Zulässige Werte: Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat (YYYY-MM-DDThh:mm:ssTZD) mit Sekundenangabe: 2013-03-20T17:03:43Z.

Typ: Zeichenfolge. Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat (YYYY-MM-DDThh:mm:ssTZD) mit Sekundenangabe: 2013-03-20T17:03:43Z.

Erforderlich: Nein

Weitere Infos• Initiate Job (POST jobs) (p. 284)

jobParametersBietet Optionen zum Definieren von Jobs

InhaltArchiveId

Die ID des gewünschten Archivs. Dieses Feld ist erforderlich, wenn das Feld Type auf select oderarchive-retrieval eingestellt ist. Wenn Sie dieses Feld bei einer Auftragsanforderung für eineInventarabfrage festlegen, tritt ein Fehler auf.

Gültige Werte: Es muss sich um eine gültige Archiv-ID handeln, die Sie bei einer vorherigenAnforderung an Amazon S3 Glacier (S3 Glacier) ermittelt haben.

Typ: Zeichenfolge

Erforderlich: Ja, wenn Type auf select oder archive-retrieval eingestellt ist.Beschreibung

Geben Sie die optionale Beschreibung für den Auftrag ein.

Gültige Werte: Die Beschreibung darf höchstens 1 024 Bytes umfassen. Zulässig sind 7-Bit-ASCII-Zeichen ohne Steuercodes, also die ASCII-Dezimalwerte 32–126 bzw. die ASCII-Hexadezimalwerte0x20–0x7E.

Typ: Zeichenfolge

API-Version 2012-06-01309

Page 317: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchjobParameters

Erforderlich: NeinFormat

(Optional) Das Ausgabeformat, das beim Initiieren des Auftrags zum Abrufen einer Tresorinventarlistefestgelegt wird. Wenn Sie einen Inventarauftrag initiieren und kein Format-Feld angeben, wird JSONals Standardformat verwendet.

Zulässige Werte: CSV | JSON

Typ: Zeichenfolge

Erforderlich: NeinInventoryRetrievalParameters

Die Eingabeparameter für die Inventarabfrage für einzelne Bereiche

Typ: InventoryRetrievalJobInput (p. 308) Objekt

Erforderlich: NeinOutputLocation

Ein Objekt, das Informationen zum Speicherort der Ergebnisse des ausgewählten Jobs enthält

Typ: OutputLocation (p. 311) Objekt

Erforderlich: Ja, für select-AufträgeRetrievalByteRange

Der für archive-retrieval abzurufende Bytebereich in der Form"StartByteValue-EndByteValue". Wenn kein Bereich angegeben ist, wird das gesamte Archivabgerufen. Wenn ein Feldwert angegeben wird, muss der Bereich in Megabytewerten (1024*1024)angegeben werden. Das bedeutet, StartByteValue muss 1 MB oder ein Vielfaches davon sein undEndByteValue plus 1 muss durch 1 MB teilbar sein oder dem Ende des Archivs entsprechen, das alsder Wert der Archivbytegröße minus 1 angegeben ist. Wenn die Angabe für RetrievalByteRange keinganzer Megabytewert ist, wird bei diesem Vorgang die Antwort 400 zurückgegeben.

Wenn Sie dieses Feld bei einer inventory-retrieval- oder select-Auftragsanforderungfestlegen, tritt ein Fehler auf.

Typ: Zeichenfolge

Erforderlich: NeinSelectParameters

Ein Objekt mit Informationen zu den Parametern für eine Auswahl

Typ: SelectParameters (p. 313) Objekt

Erforderlich: NeinSNSTopic

Der Amazon-Ressourcenname (ARN) des Amazon SNS-Themas, an das S3 Glacier eineBenachrichtigung sendet, wenn die Aufgabe abgeschlossen ist und die Ausgabe zum Herunterladenbereitsteht. Das angegebene Thema veröffentlicht die Benachrichtigung an die Abonnenten.

Das SNS-Thema muss vorhanden sein. Wenn es nicht vorhanden ist, wird es von S3 Glacier auchnicht erstellt. Das SNS-Thema muss außerdem über eine Richtlinie verfügen, die dem Konto, über dasder Auftrag erstellt wurde, erlaubt, Nachrichten im Thema zu veröffentlichen. Weitere Informationen

API-Version 2012-06-01310

Page 318: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchOutputLocation

über SNS-Themennamen finden Sie unter CreateTopic in der Amazon Simple Notification Service API-Referenz.

Typ: Zeichenfolge

Erforderlich: NeinStufe

Das Kontingent, das für eine Auswahl oder einen Archivabruf verwendet wird. Der Standardwert istStandard.

Zulässige Werte: Expedited | Standard | Bulk

Typ: Zeichenfolge

Erforderlich: NeinTyp

Der Auftragstyp. Sie können einen Auftrag initiieren, um eine Auswahlabfrage an ein Archiv zu senden,ein Archiv abzurufen oder ein Inventar des Tresors zu ermitteln.

Zulässige Werte: select | archive-retrieval | inventory-retrieval

Typ: Zeichenfolge

Erforderlich: Ja

Weitere Infos• Initiate Job (POST jobs) (p. 284)

OutputLocationEnthält Informationen zum Speicherort, wo die Ergebnisse und Fehler des Auftrags gespeichert werden.

InhaltS3

Ein Objekt, das einen Amazon S3-Speicherort beschreibt, an dem die Ergebnisse derWiederherstellungsanforderung gespeichert werden

Typ: S3Location (p. 312)

Erforderlich: Ja

Weitere Infos• Initiate Job (POST jobs) (p. 284)

OutputSerializationBeschreibt, wie die Ausgabe serialisiert wird.

API-Version 2012-06-01311

Page 319: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchS3Location

InhaltCSV

Ein Objekt, das die Serialisierung der CSV-kodierten Abfrageergebnisse beschreibt

Typ: CSVOutput (p. 302) Objekt

Erforderlich: Nein

Weitere Infos

• Initiate Job (POST jobs) (p. 284)

S3LocationEnthält Informationen zum Speicherort in Amazon S3, wo die Ergebnisse des Auftrags gespeichert werden.

InhaltAccessControlList

Eine Liste mit Berechtigungen, über die der Zugriff auf die gespeicherten Ergebnisse gesteuert wird

Typ: Array von Grant (p. 306)-Objekten

Erforderlich: NeinBucket-Name

Der Name des Amazon S3-Buckets, in dem die Auftragsergebnisse gespeichert werden. Der Bucketmuss sich in derselben AWS-Region befinden wie der Tresor, der das Eingabearchivobjekt enthält.

Typ: Zeichenfolge

Erforderlich: JaCannedACL

Die vordefinierte Zugriffskontrollliste (ACL), die auf die Auftragsergebnisse angewendet wird

Typ: Zeichenfolge

Zulässige Werte: private | public-read | public-read-write | aws-exec-read |authenticated-read | bucket-owner-read | bucket-owner-full-control

Erforderlich: NeinVerschlüsselung

Ein Objekt, das Informationen zur Verschlüsselung enthält, mit der die Auftragsergebnisse in AmazonS3 gespeichert werden

Typ: Verschlüsselung (p. 303) Objekt

Erforderlich: Nein

API-Version 2012-06-01312

Page 320: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSelectParameters

Präfix

Das Präfix, das den Ergebnissen für diese Anforderung vorangestellt wird. Die maximale Länge für dasPräfix beträgt 512 Byte.

Typ: Zeichenfolge

Erforderlich: JaStorageClass

Die Speicherklasse, die zum Speichern der Auftragsergebnisse verwendet wird

Typ: Zeichenfolge

Zulässige Werte: STANDARD | REDUCED_REDUNDANCY | STANDARD_IA

Erforderlich: NeinMarkieren

Die Tag-Menge, die auf die Auftragsergebnisse angewendet wird

Typ: Abbildung einer Zeichenfolge auf eine Zeichenfolge

Erforderlich: NeinUserMetadata

Eine Zuordnung der Metadaten, die mit den Auftragsergebnissen in Amazon S3 gespeichert werden.

Typ: Abbildung einer Zeichenfolge auf eine Zeichenfolge

Erforderlich: Nein

Weitere Infos

• Initiate Job (POST jobs) (p. 284)

SelectParametersDieser Artikel enthält Informationen zu den Parametern für die Auswahl.

InhaltAusdruck

Der Ausdruck, der zur Auswahl des Objekts verwendet wird. Der Ausdruck darf das Kontingent von128.000 Zeichen nicht überschreiten.

Typ: Zeichenfolge

Erforderlich: JaExpressionType

Der Typ des bereitgestellten Ausdrucks, beispielsweise SQL

Zulässige Werte: SQL

API-Version 2012-06-01313

Page 321: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatenabrufoperationen

Typ: Zeichenfolge

Erforderlich: JaInputSerialization

Beschreibt das Serialisierungsformat des Objekts in der Auswahl.

Typ: InputSerialization (p. 308) Objekt

Erforderlich: NeinOutputSerialization

Beschreibt, wie die Ergebnisse des Auswahlauftrags serialisiert werden.

Erforderlich: Nein

Typ: OutputSerialization (p. 311) Objekt

Weitere Infos

• Initiate Job (POST jobs) (p. 284)

DatenabrufoperationenEs folgen die Operationen in Bezug auf Datenabrufe, die in S3 Glacier verfügbar sind.

Themen• Get Data Retrieval Policy (GET policy) (p. 314)• List Provisioned Capacity (GET provisioned-capacity) (p. 317)• Purchase Provisioned Capacity (POST provisioned-capacity) (p. 320)• Set Data Retrieval Policy (PUT policy) (p. 322)

Get Data Retrieval Policy (GET policy)BeschreibungDieser Vorgang gibt die aktuelle Richtlinie für den Datenabruf für das AWS-Konto und die AWS-Regionzurück, die in der GET-Anforderung angegeben sind. Weitere Informationen zu Datenabrufrichtlinien findenSie unter Amazon S3 Glacier-Richtlinien für den Datenabruf (p. 162).

AnforderungenSenden Sie eine HTTP-GET-Anforderung an den URI der Richtlinie für den Datenabruf, damit die aktuelleDatenabruf-Richtlinie zurückgegeben wird. Orientieren Sie sich dabei an dem folgenden Syntaxbeispiel.

Syntax

GET /AccountId/policies/data-retrieval HTTP/1.1Host: glacier.Region.amazonaws.comDate: Date

API-Version 2012-06-01314

Page 322: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Data Retrieval Policy

Authorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

Anfrageparameter

Dieser Vorgang verwendet keine Anforderungsparameter.

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

AntwortenSyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: length{ "Policy": { "Rules":[ { "BytesPerHour": Number, "Strategy": String } ] }}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

API-Version 2012-06-01315

Page 323: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGet Data Retrieval Policy

BytesPerHour

Die Höchstanzahl an Bytes, die in einer Stunde abgerufen werden können.

Dieses Feld ist nur vorhanden, wenn der Wert im Strategy-Feld BytesPerHour ist.

Typ: ZahlRegeln

Die Richtlinienregel. Obwohl es sich hierbei um einen Listentyp handelt, wird nur eine einzige Regelangezeigt, die ein Strategy-Feld und optional ein BytesPerHour-Feld enthält.

Typ: ArrayStrategie

Der Typ der Richtlinie für den Datenabruf.

Typ: Zeichenfolge

Gültige Werte: BytesPerHour|FreeTier|None. BytesPerHour entspricht der Auswahl von MaxRetrieval Rate (Max. Abrufrate) in der Konsole. FreeTier entspricht der Auswahl von Free Tier Only(Nur kostenloses Kontingent) in der Konsole. None entspricht der Auswahl von No Retrieval Policy(Keine Abrufrichtlinie) in der Konsole. Weitere Informationen zur Auswahl von Datenabrufrichtlinien inder Konsole finden Sie unter Amazon S3 Glacier-Richtlinien für den Datenabruf (p. 162).

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleDas folgende Beispiel demonstriert, wie eine Richtlinie für den Datenabruf abgerufen wird.

BeispielanfrageIn diesem Beispiel wird eine GET-Anforderung an den URI für den Speicherort der Richtlinie gesendet.

GET /-/policies/data-retrieval HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

BeispielantwortFalls die Anforderung erfolgreich beantwortet wird, wird die Richtlinie für den Datenabruf im Antworttext imJSON-Format angezeigt.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:00:00 GMTContent-Type: application/jsonContent-Length: 85 {

API-Version 2012-06-01316

Page 324: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Provision Capacity

"Policy": { "Rules":[ { "BytesPerHour":10737418240, "Strategy":"BytesPerHour" } ] }}

Zugehörige Abschnitte

• Set Data Retrieval Policy (PUT policy) (p. 322)

• Initiate Job (POST jobs) (p. 284)

List Provisioned Capacity (GET provisioned-capacity)Diese Operation führt die bereitgestellten Kapazitätseinheiten für das angegebene AWS-Konto auf. WeitereInformationen über bereitgestellte Kapazität finden Sie unter Archiv-Abrufoptionen (p. 92).

Eine bereitgestellte Kapazitätseinheit ist ab dem Datum und der Uhrzeit des Kaufs (dem Startdatum), einenMonat lang gültig. Die Einheit läuft am Ablaufdatum ab, das auf die nächste Sekunde gerundet genau einenMonat nach dem Startdatum liegt.

Wenn das Startdatum der 31. Tag eines Monats ist, dann ist der letzte Tag des nächsten Monats dasAblaufdatum. Beispiel: Ist das Startdatum der 31. August, dann ist der 30. September das Ablaufdatum.Ist das Startdatum der 31. Januar, dann ist der 28. Februar das Ablaufdatum. Diese Funktionalität wird imBeispielantwort (p. 319) veranschaulicht.

AnforderungssyntaxWenn Sie die bereitgestellte Abrufkapazität für ein Konto aufführen möchten, senden Sie eine HTTP GET-Anfrage an den URI der bereitgestellten Kapazität, wie im folgenden Syntax-Beispiel verdeutlicht wird.

GET /AccountId/provisioned-capacity HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValuex-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

API-Version 2012-06-01317

Page 325: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Provision Capacity

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDieser Vorgang besitzt keinen Anforderungstext.

AntwortenWenn die Operation erfolgreich ist, sendet der Service eine HTTP-200 OK-Antwort zurück.

Antwortsyntax

HTTP/1.1 200 OKx-amzn-RequestId: x-amzn-RequestIdDate: DateContent-Type: application/jsonContent-Length: Length{ "ProvisionedCapacityList": { "CapacityId" : "string", "StartDate" : "string" "ExpirationDate" : "string" }}

Antwort-Header

Für diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

Antworttext

Der Antworttext enthält die folgenden JSON-Felder.

CapacityId

Die ID, mit der die bereitgestellte Kapazitätseinheit identifiziert wird.

Typ: Zeichenfolge.StartDate

Das Datum (Coordinated Universal Time – UTC), an dem die bereitgestellte Kapazitätseinheit gekauftwurde.

Typ: Zeichenfolge. Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

ExpirationDate

Das Datum (Coordinated Universal Time – UTC), an dem die bereitgestellte Kapazitätseinheit abläuftwurde.

API-Version 2012-06-01318

Page 326: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchList Provision Capacity

Typ: Zeichenfolge. Ein Beispiel für eine Zeichenfolgendarstellung im ISO 8601-Datumsformat:2013-03-20T17:03:43.221Z.

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleEs folgt ein Beispiel für das Aufführen der bereitgestellten Kapazitätseinheiten für ein Konto.

BeispielanfrageIn diesem Beispiel wird eine GET-Anfrage gesendet, um eine Liste der bereitgestellten Kapazitätseinheitenfür das angegebene Konto abzurufen.

GET /123456789012/priority-capacity HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

BeispielantwortWenn die Anfrage erfolgreich war, gibt Amazon S3 Glacier (S3 Glacier) ein HTTP 200 OK mit einer Listeder bereitgestellten Kapazitätseinheiten für das Konto zurück, wie im folgenden Beispiel dargestellt wird.

Die zuerst angeführte bereitgestellte Kapazitätseinheit ist ein Beispiel einer Einheit mit dem 31. Januar2017 als Startdatum und dem 28. Februar 2017 als Ablaufdatum. Wie bereits erwähnt, ist das Ablaufdatumbei einem Startdatum am 31. Tag eines Monats der letzte Tag des nächsten Monats.

HTTP/1.1 200 OKx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMTContent-Type: application/jsonContent-Length: length

{ "ProvisionedCapacityList", { "CapacityId": "zSaq7NzHFQDANTfQkDen4V7z", "StartDate": "2017-01-31T14:26:33.031Z", "ExpirationDate": "2017-02-28T14:26:33.000Z", }, { "CapacityId": "yXaq7NzHFQNADTfQkDen4V7z", "StartDate": "2016-12-13T20:11:51.095Z"", "ExpirationDate": "2017-01-13T20:11:51.000Z" ", }, ...}

Zugehörige Abschnitte

• Purchase Provisioned Capacity (POST provisioned-capacity) (p. 320)

API-Version 2012-06-01319

Page 327: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchPurchase Provisioned Capacity

Purchase Provisioned Capacity (POST provisioned-capacity)Diese Operation kauft eine bereitgestellte Kapazitätseinheit für ein AWS-Konto.

Eine bereitgestellte Kapazitätseinheit ist ab dem Datum und der Uhrzeit des Kaufs (dem Startdatum), einenMonat lang gültig. Die Einheit läuft am Ablaufdatum ab, das auf die nächste Sekunde gerundet genau einenMonat nach dem Startdatum liegt.

Wenn das Startdatum der 31. Tag eines Monats ist, dann ist der letzte Tag des nächsten Monats dasAblaufdatum. Beispiel: Ist das Startdatum der 31. August, dann ist der 30. September das Ablaufdatum. Istdas Startdatum der 31. Januar, dann ist der 28. Februar das Ablaufdatum.

Die bereitgestellte Kapazität hilft sicherzustellen, dass für Expedited-Abrufe Abrufkapazität verfügbarist, wenn Sie sie benötigen. Jede Kapazitätseinheit stellt sicher, dass alle fünf Minuten mindestens dreiExpedited-Abrufe durchgeführt werden können, und bietet bis zu 150 MB/s Abrufdurchsatz. WeitereInformationen über bereitgestellte Kapazität finden Sie unter Archiv-Abrufoptionen (p. 92).

Note

Es gilt ein Limit von zwei bereitgestellten Kapazitätseinheiten pro AWS-Konto.

RequestsSenden Sie eine HTTP-POST-Anfrage an den Provisioned-Capacity-URI, um eine Einheit bereitgestellterKapazität für ein AWS-Konto zu kaufen.

Syntax

POST /AccountId/provisioned-capacity HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Length: Lengthx-amz-glacier-version: 2012-06-01

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

Anfrageparameter

Anforderungsheader

Für diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

Anforderungstext

Dieser Vorgang besitzt keinen Anforderungstext.

API-Version 2012-06-01320

Page 328: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchPurchase Provisioned Capacity

ResponsesWenn die Anfrage erfolgreich ist, gibt der Service die HTTP-Antwort 201 Created zurück.

Syntax

HTTP/1.1 201 Createdx-amzn-RequestId: x-amzn-RequestIdDate: Datex-amz-capacity-id: CapacityId

Antwort-HeaderEin erfolgreiche Antwort umfasst neben den für alle Vorgänge geltenden Antwort-Header die folgendenAntwort-Header. Weitere Informationen über allgemeine Antwort-Header finden Sie unter AllgemeineAntwort-Header (p. 175).

Name Beschreibung

x-amz-capacity-id Die ID, mit der die bereitgestellte Kapazitätseinheit identifiziert wird.

Typ: Zeichenkette

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

ErrorsDiese Operation umfasst neben den bei allen Amazon S3 Glacier-Operationen möglichen Fehlern denbzw. die folgenden Fehler. Für weitere Informationen über Amazon S3 Glacier-Fehler und eine Liste derFehlercodes siehe Fehlermeldungen (p. 190).

Code Beschreibung HTTP-Statuscode

Typ

LimitExceededException Wird zurückgegeben, wenn diegestellte Anfrage das Limit fürEinheiten bereitgestellter Kapazitätdes Kontos überschreiten würde.

400 BadRequest

Client

ExamplesDas Folgende ist ein Beispiel für den Kauf bereitgestellter Kapazität für ein Konto.

BeispielanfrageIm folgenden Beispiel wir eine HTTP-POST-Anfrage gesendet, um eine Einheit bereitgestellter Kapazität zukaufen.

POST /123456789012/provisioned-capacity HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Z

API-Version 2012-06-01321

Page 329: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Data Retrieval Policy

Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2Content-Length: lengthx-amz-glacier-version: 2012-06-01

BeispielantwortFalls die Anforderung erfolgreich war, gibt Amazon S3 Glacier (S3 Glacier) als Antwort HTTP 201Created zurück, wie im folgenden Beispiel gezeigt.

HTTP/1.1 201 Createdx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMTx-amz-capacity-id: zSaq7NzHFQDANTfQkDen4V7z

Zugehörige Abschnitte

• List Provisioned Capacity (GET provisioned-capacity) (p. 317)

Set Data Retrieval Policy (PUT policy)BeschreibungDurch diese Operation wird eine Richtlinie für den Datenabruf in der AWS-Region, die in der PUT-Anfrageangegeben wurde, eingerichtet und dann umgesetzt. Sie können eine Richtlinie pro AWS-Region für einAWS-Konto einrichten. Die Richtlinie wird bei einer erfolgreichen PUT-Operation innerhalb weniger Minutenumgesetzt.

Die Operation zur Einrichtung der Richtlinie wirkt sich nicht auf Abrufaufträge aus, die in Bearbeitungwaren, bevor die Richtlinie umgesetzt wurde. Weitere Informationen zu Datenabrufrichtlinien finden Sieunter Amazon S3 Glacier-Richtlinien für den Datenabruf (p. 162).

AnforderungenSyntaxSenden Sie eine HTTP-PUT-Anfrage an den URI der Datenabrufrichtlinie, um eine Datenabrufrichtlinieeinzurichten. Orientieren Sie sich dabei an dem folgenden Syntaxbeispiel.

PUT /AccountId/policies/data-retrieval HTTP/1.1Host: glacier.Region.amazonaws.comDate: DateAuthorization: SignatureValueContent-Length: Lengthx-amz-glacier-version: 2012-06-01 { "Policy": { "Rules":[ { "Strategy": String, "BytesPerHour": Number } ]

API-Version 2012-06-01322

Page 330: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Data Retrieval Policy

}}

Note

Der AccountId-Wert ist die AWS-Konto-ID. Dieser Wert muss mit der AWS-Konto-IDübereinstimmen, die mit den zum Signieren der Anforderung verwendeten Anmeldeinformationenverknüpft ist. Sie können entweder eine AWS-Konto-ID oder optional einen einzelnen Bindestrich(-) angeben. Dann verwendet Amazon S3 Glacier die AWS-Konto-ID, die mit den zum Signierender Anforderung verwendeten Anmeldeinformationen verknüpft ist. Wenn Sie Ihre Konto-IDangeben, führen Sie in der ID keine Bindestriche (‚-‘) mit auf.

AnfrageparameterDieser Vorgang verwendet keine Anforderungsparameter.

AnforderungsheaderFür diesen Vorgang werden ausschließlich Anforderungs-Header verwendet, die für alle Vorgängegelten. Weitere Informationen über allgemeine Anforderungs-Header finden Sie unter Häufig verwendeteAnforderungsheader (p. 172).

AnforderungstextDer Anforderungstext enthält die folgenden JSON-Felder.

BytesPerHour

Die Höchstanzahl an Bytes, die in einer Stunde abgerufen werden können.

Dieses Feld ist nur dann ein Pflichtfeld, wenn der Wert im Strategy-Feld BytesPerHour ist. Ihre PUT-Operation wird abgelehnt, wenn das Strategy-Feld nicht auf BytesPerHour festgelegt ist und Siedieses Feld festlegen.

Typ: Zahl

Erforderlich: Ja, wenn das Strategie-Feld auf BytesPerHour festgelegt ist. Ansonsten nein.

Gültige Werte: Mindestganzzahlwert 1. Höchstganzzahlwert 2^63 - 1 inklusive.Regeln

Die Richtlinienregel. Obwohl es sich hierbei um einen Listentyp handelt, darf nur eine einzige Regelangezeigt sein, die ein Strategy-Feld und optional ein BytesPerHour-Feld enthält.

Typ: Array

Erforderlich: JaStrategie

Der Typ der einzurichtenden Datenabrufrichtlinie.

Typ: Zeichenfolge

Erforderlich: Ja

Gültige Werte: BytesPerHour|FreeTier|None. BytesPerHour entspricht der Auswahl von MaxRetrieval Rate (Max. Abrufrate) in der Konsole. FreeTier entspricht der Auswahl von Free Tier Only(Nur kostenloses Kontingent) in der Konsole. None entspricht der Auswahl von No Retrieval Policy

API-Version 2012-06-01323

Page 331: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Data Retrieval Policy

(Keine Abrufrichtlinie) in der Konsole. Weitere Informationen zur Auswahl von Datenabrufrichtlinien inder Konsole finden Sie unter Amazon S3 Glacier-Richtlinien für den Datenabruf (p. 162).

AntwortenSyntax

HTTP/1.1 204 No Contentx-amzn-RequestId: x-amzn-RequestIdDate: Date

Antwort-HeaderFür diesen Vorgang werden ausschließlich Antwort-Header verwendet, die für die meisten Antwortengelten. Weitere Informationen über allgemeine Antwort-Header finden Sie unter Allgemeine Antwort-Header (p. 175).

AntworttextDieser Vorgang gibt keinen Antworttext zurück.

FehlerFür weitere Informationen über Amazon S3 Glacier-Ausnahmen und -Fehlermeldungen sieheFehlermeldungen (p. 190).

BeispieleBeispielanfrageIm folgenden Beispiel wird eine HTTP-PUT-Anfrage gesendet, mit dem Strategy-Feld festgelegt aufBytesPerHour.

PUT /-/policies/data-retrieval HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2 { "Policy": { "Rules":[ { "Strategy":"BytesPerHour", "BytesPerHour":10737418240 } ] }}

Im folgenden Beispiel wird eine HTTP-PUT-Anfrage gesendet, mit dem Strategy-Feld festgelegt aufFreeTier.

PUT /-/policies/data-retrieval HTTP/1.1

API-Version 2012-06-01324

Page 332: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSet Data Retrieval Policy

Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2 { "Policy": { "Rules":[ { "Strategy":"FreeTier" } ] }}

Im folgenden Beispiel wird eine HTTP-PUT-Anfrage gesendet, mit dem Strategy-Feld festgelegt auf None.

PUT /-/policies/data-retrieval HTTP/1.1Host: glacier.us-west-2.amazonaws.comx-amz-Date: 20170210T120000Zx-amz-glacier-version: 2012-06-01Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2 { "Policy": { "Rules":[ { "Strategy":"None" } ] }}

Beispielantwort

Falls die Anfrage erfolgreich war, legt Amazon S3 Glacier (S3 Glacier) die Richtlinie fest und gibt HTTP204 No Content zurück, wie im folgenden Beispiel gezeigt.

HTTP/1.1 204 No Contentx-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-QDate: Wed, 10 Feb 2017 12:02:00 GMT

Zugehörige Abschnitte

• Get Data Retrieval Policy (GET policy) (p. 314)

• Initiate Job (POST jobs) (p. 284)

API-Version 2012-06-01325

Page 333: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDer Befehl SELECT

SQL-Referenz für Amazon S3 Selectund S3 Glacier Select.

In dieser Referenz finden Sie eine Beschreibung der SQL (Structured Query Language)-Elemente, die vonAmazon S3 Select und S3 Glacier Select unterstützt werden.

Themen• Der Befehl SELECT (p. 326)• Datentypen (p. 333)• Operators (p. 334)• Reservierte Schlüsselwörter (p. 335)• SQL-Funktionen (p. 339)

Der Befehl SELECTAmazon S3 Select und S3 Glacier Select unterstützen nur den SQL-Befehl SELECT. Die folgenden ANSI-Standardklauseln werden für SELECT unterstützt:

• SELECT table• FROM-Klausel• WHERE-Klausel• LIMIT-Klausel (nur Amazon S3 Select)

Note

Amazon S3 Select- und S3 Glacier Select-Abfragen unterstützen derzeit keine Unterabfragen oderJoins.

SELECT-ListeDie SELECT-Liste nennt die Spalten, Funktionen und Ausdrücke, die die Abfrage zurückgeben soll. DerListe stellt die Ausgabe der Abfrage dar.

SELECT *SELECT projection [ AS column_alias | column_alias ] [, ...]

Bei der ersten Form mit * (Sternchen) werden alle Zeilen zurückgegeben, die die Bedingung der WHERE-Klausel erfüllen. Bei der zweiten Form wird eine Zeile mit benutzerdefinierten skalaren Ausgabeausdrückenprojection für jede Spalte erstellt.

FROM-KlauselAmazon S3 Select und S3 Glacier Select unterstützen die folgenden Formen der FROM-Klausel:

FROM table_nameFROM table_name aliasFROM table_name AS alias

API-Version 2012-06-01326

Page 334: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFROM-Klausel

Wobei table_name entweder S3Object (für Amazon S3 Select) bzw. ARCHIVE oder OBJECT (fürS3 Glacier Select) ist und auf das abzurufende Archiv verweist. Benutzer traditioneller relationalerDatenbanken können sich dies als Datenbankschema mit mehreren Ansichten einer Tabelle vorstellen.

Gemäß Standard-SQL erstellt die FROM-Klausel Zeilen, die in der WHERE-Klausel gefiltert und in der ListeSELECT projiziert werden.

Im Fall von JSON-Objekten, die in Amazon S3 Select gespeichert sind, können Sie auch die folgendenFormate der FROM-Klausel verwenden:

FROM S3Object[*].pathFROM S3Object[*].path aliasFROM S3Object[*].path AS alias

Unter Verwendung dieses Format der FROM-Klausel können Sie aus Arrays oder Objekten innerhalb einesJSON-Objekts auswählen. Sie können path unter Verwendung eines der folgenden Formate angeben:

• Nach Name (in einem Objekt): .name oder ['name']• Nach Index (in einem Array): [index]• Nach Platzhalter (in einem Objekt): .*• Nach Platzhalter (in einem Array): [*]

Note

• Das Format der FROM-Klausel funktioniert nur mit JSON-Objekten.• Platzhalter übermitteln stets mindestens einen Datensatz. Wenn kein Datensatz übereinstimmt,

Amazon S3 Select gibt den Wert aus MISSING. (z. B.. Während der Ausgabeserialisierung(nach Abschluss der Abfrage), Amazon S3 Wählen Sie Ersetzt MISSING Werte mit leerenDatensätzen.

• Aggregatfunktionen (AVG, , und Sie haben die Möglichkeit COUNT, , und Sie haben dieMöglichkeit MAX, , und Sie haben die Möglichkeit MIN, und SUM) Überspringen MISSING -Werte.

• Wenn Sie bei Verwendung eines Platzhalters keinen Alias angeben, können Sie auf dieZeile verweisen, die das letzte Element im Pfad verwendet. Sie könnten beispielsweisealle Preise aus einer Liste von Büchern mit der Abfrage auswählen SELECT priceFROM S3Object[*].books[*].price. (z. B.. Wenn der Pfad mit einem Platzhalterund nicht mit einem Namen endet, können Sie den Wert verwenden _1 um aufdie Zeile zu verweisen. Beispielsweise könnten Sie anstelle von SELECT priceFROM S3Object[*].books[*].price die Abfrage SELECT _1.price FROMS3Object[*].books[*] verwenden.

• Amazon S3 Select behandelt ein JSON-Dokument stets als Array aus Werten auf Root-Ebene.Daher hat selbst wenn das JSON-Objekt, das Sie abfragen, nur ein Root-Element hat, die FROM-Klausel muss beginnen mit S3Object[*]. (z. B.. Aus Kompatibilitätsgründen Amazon S3 MitSelect (Auswählen) können Sie den Platzhalter weglassen, wenn Sie keinen Pfad einschließen.Daher ist die vollständige Klausel FROM S3Object entspricht FROM S3Object[*] asS3Object. (z. B.. Wenn Sie einen Pfad hinzufügen, müssen Sie auch den Platzhalterverwenden. Daher sind sowohl FROM S3Object als auch FROM S3Object[*].path gültigeKlauseln, nicht aber FROM S3Object.path.

Example

Beispiele

Beispiel 1

Dieses Beispiel zeigt Ergebnisse unter Verwendung des folgenden Datensatzes und der folgendenAbfrage:

API-Version 2012-06-01327

Page 335: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFROM-Klausel

{ "Rules": [ {"id": "id-1", "condition": "x < 20"}, {"condition": "y > x"}, {"id": "id-2", "condition": "z = DEBUG"} ]},{ "created": "June 27", "modified": "July 6"}

SELECT id FROM S3Object[*].Rules[*].id

{"id":"id-1"},{},{"id":"id-2"},{}

Amazon S3 Select produziert die einzelnen Ergebnisse aus den folgenden Gründen:

• {"id":"id-1"} — S3Object[0].Rules[0].id produzierte eine Übereinstimmung.• {} — S3Object[0].Rules[1].id produzierte keine Übereinstimmung mit einem Datensatz. Daher

übermittelte Amazon S3 Select MISSING, was anschließend während der Ausgabeserialisierung in einenleeren Daten geändert und zurückgegeben wurde.

• {"id":"id-2"} — S3Object[0].Rules[2].id produzierte eine Übereinstimmung.• {} — S3Object[1] produzierte keine Übereinstimmung für Rules. Daher übermittelte Amazon S3 SelectMISSING, was anschließend während der Ausgabeserialisierung in einen leeren Daten geändert undzurückgegeben wurde.

Wenn Sie nicht möchten, Amazon S3 Wählen Sie diese Option, um leere Datensätze zurückzugeben, wennkeine Übereinstimmung gefunden wird. Sie können den Wert testen. MISSING. (z. B.. Die folgende Abfragegibt die gleichen Ergebnisse wie die vorherige Abfrage zurück, jedoch ohne die leeren Werte:

SELECT id FROM S3Object[*].Rules[*].id WHERE id IS NOT MISSING

{"id":"id-1"},{"id":"id-2"}

Beispiel 2

Dieses Beispiel zeigt Ergebnisse unter Verwendung des folgenden Datensatzes und der folgendenAbfragen:

{ "created": "936864000", "dir_name": "important_docs", "files": [ { "name": "." }, { "name": ".." }, { "name": ".aws"

API-Version 2012-06-01328

Page 336: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFROM-Klausel

}, { "name": "downloads" } ], "owner": "AWS S3"},{ "created": "936864000", "dir_name": "other_docs", "files": [ { "name": "." }, { "name": ".." }, { "name": "my stuff" }, { "name": "backup" } ], "owner": "User"}

SELECT d.dir_name, d.files FROM S3Object[*] d

{ "dir_name": "important_docs", "files": [ { "name": "." }, { "name": ".." }, { "name": ".aws" }, { "name": "downloads" } ]},{ "dir_name": "other_docs", "files": [ { "name": "." }, { "name": ".." }, { "name": "my stuff" }, { "name": "backup" } ]}

API-Version 2012-06-01329

Page 337: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchWHERE-Klausel

SELECT _1.dir_name, _1.owner FROM S3Object[*]

{ "dir_name": "important_docs", "owner": "AWS S3"},{ "dir_name": "other_docs", "owner": "User"}

WHERE-KlauselDie WHERE-Klausel hat die folgende Syntax:

WHERE condition

Die WHERE-Klausel filtert Zeilen basierend auf der Bedingung. Eine Bedingung ist ein Ausdruck, der alsErgebnis einen booleschen Wert zurückgibt. Nur Zeilen, deren Bedingung als TRUE ausgewertet wird,werden als Ergebnis zurückgegeben.

LIMIT-Klausel (nur Amazon S3 Select)Die LIMIT-Klausel hat die folgende Syntax:

LIMIT number

Die LIMIT-Klausel begrenzt die Anzahl der von der Abfrage zurückgegebenen Datensätze basierend aufdem number-Wert.

Note

Die LIMIT-Klausel wird von S3 Glacier Select nicht unterstützt.

AttributzugriffDie Klauseln SELECT und WHERE können mithilfe einer der nachfolgend genannten Methoden auf einenDatensatz verweisen. Das ist abhängig davon, ob die abzufragende Datei im CSV- oder JSON-Formatvorliegt.

CSV• Spaltennummern – Sie können auf die Nte-Spalte einer Zeile mit dem Spaltennamen _N verweisen,

wobei "N" die Spaltenposition angibt. Der Positionszähler beginnt mit 1. Die erste Spalte heißt demnach_1, die zweite Spalte heißt _2.

Sie können eine Spalte als _N oder alias._N. (z. B.. Zum Beispiel: _2 und myAlias._2 sind beidegültige Möglichkeiten, auf eine Spalte im SELECT Liste und WHERE -Klausel.

• Spalten-Header – Bei Objekten im CSV-Format, die eine Kopfzeile enthalten, sind die Header für dieSELECT-Liste und die WHERE-Klausel verfügbar. Besonders in SELECT- und WHERE-Klauselausdrückenin traditionellem SQL können Sie mit alias.column_name oder column_name auf die Spaltenverweisen.

API-Version 2012-06-01330

Page 338: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchGroß-/Kleinschreibung bei Header-/Attributnamen

JSON (nur Amazon S3 Select)• Dokument (Dokument) – Sie können auf JSON-Dokumentfelder zugreifen als alias.name. (z. B..) Auf

verschachtelte Felder kann auch zugegriffen werden, z. B. alias.name1.name2.name3.• Liste – Sie können über nullbasierte Indizes mit dem Operator [] auf Elemente in einer JSON-

Liste zugreifen. Sie können beispielsweise auf das zweite Element einer Liste zugreifen alsalias[1]. (z. B.. Der Zugriff auf Listenelemente kann mit Feldern kombiniert werden alsalias.name1.name2[1].name3.

• Beispiele Betrachten Sie dieses JSON-Objekt als Beispiel-Dataset:

{"name": "Susan Smith","org": "engineering","projects": [ {"project_name":"project1", "completed":false}, {"project_name":"project2", "completed":true} ]}

Beispiel 1

Die folgende Abfrage gibt die folgenden Ergebnisse zurück:

Select s.name from S3Object s

{"name":"Susan Smith"}

Beispiel 2

Die folgende Abfrage gibt die folgenden Ergebnisse zurück:

Select s.projects[0].project_name from S3Object s

{"project_name":"project1"}

Groß-/Kleinschreibung bei Header-/AttributnamenIn Amazon S3 Select und S3 Glacier Select können Sie mithilfe von doppelten Anführungszeichenangeben, dass bei Spalten-Headern (für CSV-Objekte) und Attributen (für JSON-Objekte) dieGroß-/Kleinschreibung beachtet werden muss. Ohne doppelte Anführungszeichen muss die Groß-/Kleinschreibung bei Objekt-Headern/-attributen nicht berücksichtigt werden. Im Falle einer Zweideutigkeitwird ein Fehler ausgegeben.

In den folgenden Beispielen handelt es sich entweder um 1) Amazon S3- oder S3 Glacier-Objekte im CSV-Format mit spezifizierten Spalten-Headern und mit auf "Use" (Verwenden) gesetztem FileHeaderInfo-Wert für die Abfrageanforderung oder um 2) Amazon S3-Objekte im JSON-Format mit spezifiziertenAttributen.

Beispiel 1 Das abzufragende Objekt hat Kopfzeile/Attribut "NAME".

• Mit folgendem Ausdruck werden erfolgreich Werte vom Objekt zurückgegeben (keineAnführungszeichen: Groß-/Kleinschreibung muss nicht beachtet werden):

API-Version 2012-06-01331

Page 339: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchVerwenden von reservierten Schlüsselwörtern

als benutzerdefinierte Begriffe

SELECT s.name from S3Object s

• Der folgende Ausdruck führt zum 400-Fehler MissingHeaderName (Anführungszeichen: Groß-/Kleinschreibung muss beachtet werden):

SELECT s."name" from S3Object s

Beispiel 2 Die Schaltfläche Amazon S3 Das abgefragte Objekt hat einen Header/Attribut mit "NAME" undeinen weiteren Header/Attribut mit "name".

• Der folgende Ausdruck führt zum 400-Fehler AmbiguousFieldName (keine Anführungszeichen: Groß-/Kleinschreibung muss nicht beachtet werden, aber es gibt zwei Übereinstimmungen):

SELECT s.name from S3Object s

• Mit folgendem Ausdruck werden erfolgreich Werte vom Objekt zurückgegeben (Anführungszeichen:Groß-/Kleinschreibung muss beachtet werden und damit wird die Zweideutigkeit aufgelöst):

SELECT s."NAME" from S3Object s

Verwenden von reservierten Schlüsselwörtern alsbenutzerdefinierte BegriffeAmazon S3 Wählen Sie und S3 Glacier Wählen Sie aus, um einen Satz reservierter Schlüsselwörter zuhaben, die zum Ausführen der SQL-Ausdrücke benötigt werden, die zum Abfragen von Objektinhaltenverwendet werden. Zu den reservierten Schlüsselwörtern zählen Funktionsnamen, Datentypen, Operatorenetc. Gelegentlich können sich benutzerdefinierte Begriffe – wie z. B. Spalten-Header (bei CSV-Dateien)oder Attribute (bei JSON-Objekten) – mit einem reservierten Schlüsselwort überschneiden. In diesem Fallgeben Sie mithilfe von doppelten Anführungszeichen an, dass Sie absichtlich einen benutzerdefiniertenBegriff verwenden, der mit einem reservierten Schlüsselwort übereinstimmt. Andernfalls wird ein 400-Parse-Fehler ausgegeben.

Eine vollständige Liste der reservierten Schlüsselwörter finden Sie unter ReservierteSchlüsselwörter (p. 335).

Im folgenden Beispiel handelt es sich entweder um 1) Amazon S3- oder S3 Glacier-Objekte im CSV-Format mit spezifizierten Spalten-Headern und mit auf "Use" (Verwenden) gesetztem FileHeaderInfo-Wert für die Abfrageanforderung oder um 2) Amazon S3-Objekte im JSON-Format mit spezifiziertenAttributen.

Beispiel. Das abgefragte Objekt hat einen Header/ein Attribut mit dem Namen "CAST", das ein reserviertesSchlüsselwort ist.

• Mit folgendem Ausdruck werden erfolgreich Werte vom Objekt zurückgegeben (Anführungszeichen:benutzerdefinierter Header/Attribut):

SELECT s."CAST" from S3Object s

• Der folgende Ausdruck führt zu einem 400-Parse-Fehler (keine Anführungszeichen: Übereinstimmungmit reserviertem Schlüsselwort):

SELECT s.CAST from S3Object s

API-Version 2012-06-01332

Page 340: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSkalare Ausdrücke

Skalare AusdrückeInnerhalb der WHERE-Klausel und der SELECT-Liste können Sie skalare SQL-Ausdrücke verwenden. Diessind Ausdrücke, die skalare Werte zurückgeben. Sie haben das folgende Format:

• Literal

Ein SQL-Literal• column_reference

Ein Verweis auf eine Spalte im Format spaltenname oder alias.spaltenname.• unary_op Ausdruck

Wobei unary_op ein unärer SQL-Operator ist• Ausdruck binary_op Ausdruck

Wobei binary_op ein binärer SQL-Operator ist• func_name

Wobei func_name der Name einer aufzurufenden skalaren Funktion ist

• Ausdruck [ NOT ] BETWEEN Ausdruck AND Ausdruck

• Ausdruck LIKE Ausdruck [ ESCAPE Ausdruck ] (z. B. für die

DatentypenAmazon S3 Select und S3 Glacier Select unterstützen mehrere primitive Datentypen.

DatentypkonvertierungenAllgemein sollte die Funktion CAST verwendet werden, wenn sie definiert ist. Falls CAST nicht definiert ist,werden alle Eingabedaten als Zeichenfolge betrachtet. Sie müssen bei Bedarf in geeignete Datentypenumgewandelt werden.

Weitere Informationen zur Funktion CAST finden Sie unter CAST (p. 341).

Unterstützte DatentypenAmazon S3 Select und S3 Glacier Select unterstützen die folgenden primitiven Datentypen.

Name Description (Beschreibung) Beispiele

bool FALSE oder TRUE FALSE

int, integer 8-Byte-Ganzzahl im Bereich -9.223.372.036.854.775.808 bis9.223.372.036.854.775.807.

100000

: Zeichenfolge UTF-8-kodierte Zeichenfolge mit variabler Länge. DasStandardlimit ist ein Zeichen. Das maximale Zeichenlimit beträgt2.147.483.647.

'xyz'

API-Version 2012-06-01333

Page 341: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchOperators

Name Description (Beschreibung) Beispiele

Gleitkommazahl 8-Byte-Gleitkommazahl CAST(0.456AS FLOAT)

decimal, numeric Zahl mit der Basis 10 mit einer maximalen Genauigkeit von 38(d. h. maximale Anzahl signifikanter Ziffern) und einer Größezwischen -231 und 231-1 (d. h. der Exponent der Basis 10).

123.456

Zeitstempel Zeitstempel stellen einen bestimmten Zeitpunkt dar, enthaltenimmer einen lokalen Versatz und können beliebig genau sein.

Im Textformat befolgen Zeitstempel den W3C-Hinweis zuDatums- und Zeitformaten, müssen jedoch mit dem Buchstaben"T" enden, wenn die Präzision nicht mindestens ein ganzer Tagist. Sekundenbruchteile mit mindestens einer Stelle bis zu beliebigvielen Stellen sind zulässig. Der lokale Zeitversatz kann entwederals Versatz im Format Stunde:Minute von UTC-Zeit oder alsBuchstabe "Z" zur Angabe einer lokalen UTC-Zeit angegebenwerden. Er ist für Zeitstempel mit Uhrzeit erforderlich, für reineDatumswerte jedoch nicht zulässig.

CAST('2007-04-05T14:30Z'ASTIMESTAMP)

OperatorsAmazon S3 Select und S3 Glacier Select unterstützen die folgenden Operatoren.

Logische Operatoren

• AND

• NOT

• OR

Vergleichsoperatoren

• <

• >

• <=

• >=

• =

• <>

• !=

• BETWEEN

• IN – Zum Beispiel: IN ('a', 'b', 'c')

Mustervergleichsoperatoren• LIKE

API-Version 2012-06-01334

Page 342: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchMathematische Operatoren

Mathematische OperatorenEs werden Addition, Subtraktion, Multiplikation, Division und Modulo unterstützt.

• +• -• *• %

Rangfolge der OperatorenDie folgende Tabelle zeigt die Rangfolge der Operatoren in absteigender Reihenfolge.

Operator/Element

Assoziativität Erforderlich

- rechts unär minus

*, /, % links Multiplikation,Division undModulo

+, - links Addition undSubtraktion

IN   Mitgliedschaftfestlegen

BETWEEN   in Bereichenthalten

LIKE   Zeichenfolgenübereinstimmung

<>   kleiner als,größer als

= rechts Gleichheit,Zuweisung

NOT rechts logischeNegation

AND links logischeVerbindung

ODER links logischeDisjunktion

Reservierte SchlüsselwörterNachstehend finden Sie eine Liste der reservierten Schlüsselwörter für Amazon S3 Select und S3 GlacierSelect. Dazu gehören Funktionsnamen, Datentypen, Operatoren usw., die zum Ausführen der SQL-Ausdrücke erforderlich sind, die zum Abfragen von Objektinhalten verwendet werden.

absolute

API-Version 2012-06-01335

Page 343: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchReservierte Schlüsselwörter

actionaddallallocatealterandanyareasascassertionatauthorizationavgbagbeginbetweenbitbit_lengthblobboolbooleanbothbycascadecascadedcasecastcatalogcharchar_lengthcharactercharacter_lengthcheckclobclosecoalescecollatecollationcolumncommitconnectconnectionconstraintconstraintscontinueconvertcorrespondingcountcreatecrosscurrentcurrent_datecurrent_timecurrent_timestampcurrent_usercursordatedaydeallocatedecdecimaldeclaredefaultdeferrabledeferred

API-Version 2012-06-01336

Page 344: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchReservierte Schlüsselwörter

deletedescdescribedescriptordiagnosticsdisconnectdistinctdomaindoubledropelseendend-execescapeexceptexceptionexecexecuteexistsexternalextractfalsefetchfirstfloatforforeignfoundfromfullgetglobalgogotograntgrouphavinghouridentityimmediateinindicatorinitiallyinnerinputinsensitiveinsertintintegerintersectintervalintoisisolationjoinkeylanguagelastleadingleftlevellikelimitlistlocallower

API-Version 2012-06-01337

Page 345: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchReservierte Schlüsselwörter

matchmaxminminutemissingmodulemonthnamesnationalnaturalncharnextnonotnullnullifnumericoctet_lengthofononlyopenoptionororderouteroutputoverlapspadpartialpivotpositionprecisionpreparepreserveprimarypriorprivilegesprocedurepublicreadrealreferencesrelativerestrictrevokerightrollbackrowsschemascrollsecondsectionselectsessionsession_usersetsexpsizesmallintsomespacesqlsqlcodesqlerrorsqlstate

API-Version 2012-06-01338

Page 346: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchSQL-Funktionen

stringstructsubstringsumsymbolsystem_usertabletemporarythentimetimestamptimezone_hourtimezone_minutetotrailingtransactiontranslatetranslationtrimtruetupleunionuniqueunknownunpivotupdateupperusageuserusingvaluevaluesvarcharvaryingviewwhenwheneverwherewithworkwriteyearzone

SQL-FunktionenAmazon S3 Select und S3 Glacier Select unterstützen mehrere SQL-Funktionen.

Themen• Aggregationsfunktionen (nur Amazon S3 Select) (p. 339)• Konditionale Funktionen (p. 340)• Konvertierungsfunktionen (p. 341)• Datumsfunktionen (p. 342)• Funktionen für Zeichenfolgen (p. 348)

Aggregationsfunktionen (nur Amazon S3 Select)Amazon S3 Select unterstützt die folgenden Aggregationsfunktionen.

API-Version 2012-06-01339

Page 347: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonditionale Funktionen

Note

S3 Glacier Select unterstützt keine Aggregationsfunktionen.

Funktion Argumenttyp Typ derRückgabe

AVG(expression)INT, FLOAT, DECIMAL DECIMAL für einINT-Argument,FLOAT für einGleitkomma-Argument;andernfallsgleich demArgumentdatentyp.

COUNT - INT

MAX(expression)INT, DECIMAL Entspricht demArgumenttyp.

MIN(expression)INT, DECIMAL Entspricht demArgumenttyp.

SUM(expression)INT, FLOAT, DOUBLE, DECIMAL INT für einINT-Argument,FLOAT für einGleitkomma-Argument;andernfallsgleich demArgumentdatentyp.

Konditionale FunktionenAmazon S3 Select und S3 Glacier Select unterstützen die folgenden konditionalen Funktionen.

Themen• COALESCE (p. 340)• NULLIF (p. 341)

COALESCEWertet die Argumente nacheinander aus und gibt das erste unbekannte zurück, das heißt, das erste, dasnicht null oder nicht fehlend ist. Null und fehlend werden von der Funktion nicht übernommen.

Syntax

COALESCE ( expression, expression, ... )

Parameters

Ausdruck

Der Zielausdruck, der von der Funktion verwendet wird.

API-Version 2012-06-01340

Page 348: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchKonvertierungsfunktionen

Examples

COALESCE(1) -- 1COALESCE(null) -- nullCOALESCE(null, null) -- nullCOALESCE(missing) -- nullCOALESCE(missing, missing) -- nullCOALESCE(1, null) -- 1COALESCE(null, null, 1) -- 1COALESCE(null, 'string') -- 'string'COALESCE(missing, 1) -- 1

NULLIFGibt bei zwei Ausdrücken, die das gleiche Auswertungsergebnis haben, NULL zurück. Andernfalls wird dasAuswertungsergebnis für den ersten Ausdruck zurückgegeben.

Syntax

NULLIF ( expression1, expression2 )

Parameters

expression1, expression2

Die Zielausdrücke, die von der Funktion verwendet werden.

Examples

NULLIF(1, 1) -- nullNULLIF(1, 2) -- 1NULLIF(1.0, 1) -- nullNULLIF(1, '1') -- 1NULLIF([1], [1]) -- nullNULLIF(1, NULL) -- 1NULLIF(NULL, 1) -- nullNULLIF(null, null) -- nullNULLIF(missing, null) -- nullNULLIF(missing, missing) -- null

KonvertierungsfunktionenAmazon S3 Select und S3 Glacier Select unterstützen die folgenden Konvertierungsfunktionen.

Themen• CAST (p. 341)

CASTDie CAST-Funktion konvertiert ein Element, z. B. einen Ausdruck zur Auswertung eines einzelnen Werts,von einem Typ in einen anderen.

Syntax

CAST ( expression AS data_type )

API-Version 2012-06-01341

Page 349: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatumsfunktionen

Parameters

Ausdruck

Eine Kombination von Werten, Operatoren und SQL-Funktionen, die zu einem Wert ausgewertetwerden können

data_type

Der Zieldatentyp, z. B. INT, in den der Ausdruck umgewandelt werden soll Eine Liste der unterstütztenDatentypen finden Sie unter Datentypen (p. 333).

Examples

CAST('2007-04-05T14:30Z' AS TIMESTAMP)CAST(0.456 AS FLOAT)

DatumsfunktionenAmazon S3 Select und S3 Glacier Select unterstützen die folgenden Datumsfunktionen.

Themen• DATE_ADD (p. 342)• DATE_DIFF (p. 343)• EXTRACT (p. 344)• TO_STRING (p. 344)• TO_TIMESTAMP (p. 347)• UTCNOW (p. 347)

DATE_ADDGibt bei einem Datumsteil, einer Menge und einem Zeitstempel einen aktualisierten Zeitstempel zurück,indem der Datumsteil anhand der Menge modifiziert wird.

Syntax

DATE_ADD( date_part, quantity, timestamp )

Parameters

date_part

Gibt den zu modifizierenden Teil des Datums an. Dabei kann es sich um einen der folgenden Wertehandeln:• Jahr• Monat• Tag• Stunde• Minute• Sekunde

API-Version 2012-06-01342

Page 350: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatumsfunktionen

quantity

Der Wert, der auf den aktualisierten Zeitstempel anzuwenden ist. Positive "quantity"-Werte werdenzum "date_part"-Wert des Zeitstempels addiert, negative Werte werden subtrahiert.

Zeitstempel

Der Zielzeitstempel, der von der Funktion verwendet wird.

Examples

DATE_ADD(year, 5, `2010-01-01T`) -- 2015-01-01 (equivalent to 2015-01-01T)DATE_ADD(month, 1, `2010T`) -- 2010-02T (result will add precision as necessary)DATE_ADD(month, 13, `2010T`) -- 2011-02TDATE_ADD(day, -1, `2017-01-10T`) -- 2017-01-09 (equivalent to 2017-01-09T)DATE_ADD(hour, 1, `2017T`) -- 2017-01-01T01:00-00:00DATE_ADD(hour, 1, `2017-01-02T03:04Z`) -- 2017-01-02T04:04ZDATE_ADD(minute, 1, `2017-01-02T03:04:05.006Z`) -- 2017-01-02T03:05:05.006ZDATE_ADD(second, 1, `2017-01-02T03:04:05.006Z`) -- 2017-01-02T03:04:06.006Z

DATE_DIFFGibt bei einem Datumsteil und zwei gültigen Zeitstempeln die Differenz in Datumsteilen an. DerRückgabewert ist eine negative Ganzzahl, wenn die date_part Wert von timestamp1 ist größer alsdie date_part Wert von timestamp2. (z. B.. Der Rückgabewert ist eine positive Ganzzahl, wenn diedate_part Wert von timestamp1 ist kleiner als die date_part Wert von timestamp2.

Syntax

DATE_DIFF( date_part, timestamp1, timestamp2 )

Parameters

date_part

Gibt den zu vergleichenden Teil der Zeitstempel an. Die Definition von date_part finden Sie unterDATE_ADD (p. 342).

timestamp1

Der erste Zeitstempel für den Vergleich.timestamp2

Der zweite Zeitstempel für den Vergleich.

Examples

DATE_DIFF(year, `2010-01-01T`, `2011-01-01T`) -- 1DATE_DIFF(year, `2010T`, `2010-05T`) -- 4 (2010T is equivalent to 2010-01-01T00:00:00.000Z)DATE_DIFF(month, `2010T`, `2011T`) -- 12DATE_DIFF(month, `2011T`, `2010T`) -- -12DATE_DIFF(day, `2010-01-01T23:00T`, `2010-01-02T01:00T`) -- 0 (need to be at least 24h apart to be 1 day apart)

API-Version 2012-06-01343

Page 351: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatumsfunktionen

EXTRACTGibt bei einem Datumsteil und einem Zeitstempel den Datumsteilwert des Zeitstempels zurück.

Syntax

EXTRACT( date_part FROM timestamp )

Parameters

date_part

Gibt den zu extrahierenden Teil der Zeitstempel an. Dabei kann es sich um einen der folgenden Wertehandeln:• Jahr• Monat• Tag• Stunde• Minute• Sekunde• Zeitzone_Stunde• Zeitzone_Minute

Zeitstempel

Der Zielzeitstempel, der von der Funktion verwendet wird.

Examples

EXTRACT(YEAR FROM `2010-01-01T`) -- 2010EXTRACT(MONTH FROM `2010T`) -- 1 (equivalent to 2010-01-01T00:00:00.000Z)EXTRACT(MONTH FROM `2010-10T`) -- 10EXTRACT(HOUR FROM `2017-01-02T03:04:05+07:08`) -- 3EXTRACT(MINUTE FROM `2017-01-02T03:04:05+07:08`) -- 4EXTRACT(TIMEZONE_HOUR FROM `2017-01-02T03:04:05+07:08`) -- 7EXTRACT(TIMEZONE_MINUTE FROM `2017-01-02T03:04:05+07:08`) -- 8

TO_STRINGGibt bei einem Zeitstempel und einem Formatmuster eine Zeichenfolgendarstellung des Zeitstempels imangegebenen Format zurück.

Syntax

TO_STRING ( timestamp time_format_pattern )

Parameters

Zeitstempel

Der Zielzeitstempel, der von der Funktion verwendet wird.

API-Version 2012-06-01344

Page 352: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatumsfunktionen

time_format_pattern

Eine Zeichenfolge mit folgenden speziellen Zeichenbedeutungen:

Format Beispiel. Description(Beschreibung)

yy 69 Jahreszahl mit2 Ziffern

y 1969 Jahreszahl mit4 Ziffern

yyyy 1969 Jahreszahl mit4 Ziffern, mitNullen aufgefüllt

M 1 Monatsname

MM 01 Monatsname,mit Nullenaufgefüllt

MMM Jan Abkürzung desMonatsnamens

MMMM January VollständigerMonatsnamen

MMMMM J ErsterBuchstabe desMonatsnamens(HINWEIS:kann nicht mitder Funktionto_timestampverwendetwerden)

d 2 Monatstag(1-31)

dd 02 Monatstag, mitNullen aufgefüllt(01-31)

a AM AM oder PM

h 3 Stunde (1-12)

hh 03 Stunde, mitNullen aufgefüllt(01-12)

H 3 Stunde (0-23)

HH 03 Stunde, mitNullen aufgefüllt(00-23)

API-Version 2012-06-01345

Page 353: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatumsfunktionen

Format Beispiel. Description(Beschreibung)

m 4 Minute (0-59)

mm 04 Minute, mitNullen aufgefüllt(00-59)

s 5 Sekunde (0-59)

ss 05 Sekunde, mitNullen aufgefüllt(00-59)

S 0 Sekundenbruchteil(Genauigkeit:0,1, Bereich:0,0-0,9)

SS 6 Sekundenbruchteil(Genauigkeit:0,01, Bereich:0,0-0,99)

SSS 60 Sekundenbruchteil(Genauigkeit:0,001, Bereich:0,0-0,999)

… … …

SSSSSSSSS 60000000 Sekundenbruchteil(max.Genauigkeit:1 Nanosekunde,Bereich:0,0-0,999999999)

n 60000000 Nanosekunde

X +07 or Z Offset inStunden oder"Z" bei Offset =0

XX or XXXX +0700 or Z Offset inStunden undMinuten oder"Z" bei Offset =0

XXX or XXXXX +07:00 or Z Offset inStunden undMinuten oder"Z" bei Offset =0

API-Version 2012-06-01346

Page 354: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchDatumsfunktionen

Format Beispiel. Description(Beschreibung)

x 7 Offset inStunden

xx or xxxx 700 Offset inStunden undMinuten

xxx or xxxxx +07:00 Offset inStunden undMinuten

Examples

TO_STRING(`1969-07-20T20:18Z`, 'MMMM d, y') -- "July 20, 1969"TO_STRING(`1969-07-20T20:18Z`, 'MMM d, yyyy') -- "Jul 20, 1969"TO_STRING(`1969-07-20T20:18Z`, 'M-d-yy') -- "7-20-69"TO_STRING(`1969-07-20T20:18Z`, 'MM-d-y') -- "07-20-1969"TO_STRING(`1969-07-20T20:18Z`, 'MMMM d, y h:m a') -- "July 20, 1969 8:18 PM"TO_STRING(`1969-07-20T20:18Z`, 'y-MM-dd''T''H:m:ssX') -- "1969-07-20T20:18:00Z"TO_STRING(`1969-07-20T20:18+08:00Z`, 'y-MM-dd''T''H:m:ssX') -- "1969-07-20T20:18:00Z"TO_STRING(`1969-07-20T20:18+08:00`, 'y-MM-dd''T''H:m:ssXXXX') -- "1969-07-20T20:18:00+0800"TO_STRING(`1969-07-20T20:18+08:00`, 'y-MM-dd''T''H:m:ssXXXXX') -- "1969-07-20T20:18:00+08:00"

TO_TIMESTAMPWandelt eine Zeichenfolge in einen Zeitstempel um. Das ist der umgekehrte Vorgang von TO_STRING.

Syntax

TO_TIMESTAMP ( string )

Parameters

: Zeichenfolge

Die Zielzeichenfolge, die von der Funktion verwendet wird.

Examples

TO_TIMESTAMP('2007T') -- `2007T`TO_TIMESTAMP('2007-02-23T12:14:33.079-08:00') -- `2007-02-23T12:14:33.079-08:00`

UTCNOWGibt die aktuelle Zeit in UTC als Zeitstempel zurück.

Syntax

UTCNOW()

API-Version 2012-06-01347

Page 355: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFunktionen für Zeichenfolgen

Parameters

--none

Examples

UTCNOW() -- 2017-10-13T16:02:11.123Z

Funktionen für ZeichenfolgenAmazon S3 Select und S3 Glacier Select unterstützen die folgenden Zeichenfolgenfunktionen.

Themen• CHAR_LENGTH, CHARACTER_LENGTH (p. 348)• LOWER (p. 348)• SUBSTRING (p. 349)• TRIM (p. 349)• UPPER (p. 350)

CHAR_LENGTH, CHARACTER_LENGTHZählt die Anzahl der Zeichen in der angegebenen Zeichenfolge.

Note

CHAR_LENGTH und CHARACTER_LENGTH sind Synonyme.

Syntax

CHAR_LENGTH ( string )

Parameters

: Zeichenfolge

Die Zielzeichenfolge, die von der Funktion verwendet wird.

Examples

CHAR_LENGTH('') -- 0CHAR_LENGTH('abcdefg') -- 7

LOWERWandelt alle Großbuchstaben einer Zeichenfolge in Kleinbuchstaben um. Alle Zeichen, die keineGroßbuchstaben sind, bleiben unverändert.

Syntax

LOWER ( string )

API-Version 2012-06-01348

Page 356: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFunktionen für Zeichenfolgen

Parameters

: Zeichenfolge

Die Zielzeichenfolge, die von der Funktion verwendet wird.

Examples

LOWER('AbCdEfG!@#$') -- 'abcdefg!@#$'

SUBSTRINGGibt bei einer Zeichenfolge, einem Startindex und (optional) einer Länge die Teilzeichenfolge vomStartindex bis zum Ende der Zeichenfolge oder bis zur angegebenen Länge zurück.

Note

Das erste Zeichen der Eingabezeichenfolge hat den Index 1. Wenn start den Wert < 1, aufweist,wird er auf 1 gesetzt.

Syntax

SUBSTRING( string FROM start [ FOR length ] )

Parameters

: Zeichenfolge

Die Zielzeichenfolge, die von der Funktion verwendet wird.start

Die Startposition der Zeichenfolge.length

Die Länge der zurückzugebenden Teilzeichenfolge. Falls nicht angegeben, wird bis zum Ende derZeichenfolge fortgefahren.

Examples

SUBSTRING("123456789", 0) -- "123456789"SUBSTRING("123456789", 1) -- "123456789"SUBSTRING("123456789", 2) -- "23456789"SUBSTRING("123456789", -4) -- "123456789"SUBSTRING("123456789", 0, 999) -- "123456789" SUBSTRING("123456789", 1, 5) -- "12345"

TRIMKürzt vorangestellte oder nachgestellte Zeichen aus einer Zeichenfolge. Standardmäßig wird das Zeichen '' entfernt.

Syntax

TRIM ( [[LEADING | TRAILING | BOTH remove_chars] FROM] string )

API-Version 2012-06-01349

Page 357: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFunktionen für Zeichenfolgen

Parameters

: Zeichenfolge

Die Zielzeichenfolge, die von der Funktion verwendet wird.LEADING | TRAILING | BOTH

Gib an, ob vorangestellte oder nachgestellte Zeichen oder vorangestellte und nachgestellte Zeichengekürzt werden sollen.

remove_chars

Die zu entfernenden Zeichen. Beachten Sie, dass remove_chars eine Zeichenfolge mit einerLänge von > 1 sein kann. Diese Funktion gibt die Zeichenfolge mit einem beliebigen Zeichen vonremove_chars zurück, der am Anfang oder am Ende der entfernten Zeichenfolge stand.

Examples

TRIM(' foobar ') -- 'foobar'TRIM(' \tfoobar\t ') -- '\tfoobar\t'TRIM(LEADING FROM ' foobar ') -- 'foobar 'TRIM(TRAILING FROM ' foobar ') -- ' foobar'TRIM(BOTH FROM ' foobar ') -- 'foobar'TRIM(BOTH '12' FROM '1112211foobar22211122') -- 'foobar'

UPPERWandelt alle Kleinbuchstaben einer Zeichenfolge in Großbuchstaben um. Alle Zeichen, die keineKleinbuchstaben sind, bleiben unverändert.

Syntax

UPPER ( string )

Parameters

: Zeichenfolge

Die Zielzeichenfolge, die von der Funktion verwendet wird.

Examples

UPPER('AbCdEfG!@#$') -- 'ABCDEFG!@#$'

API-Version 2012-06-01350

Page 358: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFrühere Aktualisierungen

Dokumentverlauf• Letzte Aktualisierung der Dokumentation: 20. November 2018• Aktuelle Produktversion 2012-06-01

In der folgenden Tabelle sind die wichtigsten Änderungen in jeder Version des Amazon S3 GlacierDeveloper Guide ab dem 5. Juli 2018 beschrieben. Um Benachrichtigungen über Aktualisierungen dieserDokumentation zu erhalten, können Sie einen RSS-Feed abonnieren.

update-history-change update-history-description update-history-date

Amazon Glacier-Namensänderung (p. 351)

Amazon Glacier ist jetzt AmazonS3 Glacier, um die Integrationvon Glacier in Amazon S3 besserwiderzuspiegeln.

November 20, 2018

Updates jetzt über RSSverfügbar (p. 351)

Sie können jetzt einenRSS-Feed abonnieren, umBenachrichtigungen überUpdates im Amazon S3 GlacierDeveloper Guide-Handbuch zuerhalten.

July 5, 2018

Frühere AktualisierungenIn der folgenden Tabelle sind wichtige Änderungen in jeder Version des Amazon S3 Glacier DeveloperGuide vor dem 5. Juli 2018 beschrieben.

Änderungen Beschreibung Veröffentlichungsdatum

Abfragen vonArchiven mit SQL

S3 Glacier unterstützt jetzt das Abfragen vonDatenarchiven mit SQL. Weitere Informationen finden Sieunter Abfragen von Archiven mit S3 Glacier Select (p. 159).

Dier folgenden APIs werden entsprechend aktualisiert:

• Describe Job (GET JobID) (p. 269)• Initiate Job (POST jobs) (p. 284)• Aufträge auflisten (GET jobs) (p. 294)

29. November 2017

Expedited- und Bulk-Datenabrufvorgänge

S3 Glacier unterstützt jetzt zusätzlich zu denStandardabrufen auch Expedited- und Bulk-Datenabrufe.Weitere Informationen finden Sie unter Archiv-Abrufoptionen (p. 92).

21. November 2016

Vault Lock S3 Glacier unterstützt jetzt Tresorverriegelung, mit derSie Compliance-Kontrollen für einzelne S3 Glacier-Tresore mit einer Tresorverriegelungs-Richtlinieproblemlos implementieren und durchsetzen können.Weitere Informationen finden Sie unter Amazon S3

8. Juli 2015

API-Version 2012-06-01351

Page 359: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFrühere Aktualisierungen

Änderungen Beschreibung VeröffentlichungsdatumGlacier-Tresorverriegelung (p. 70) und Amazon S3Glacier-Zugriffskontrolle mit Tresorverriegelungs-Richtlinien (p. 148).

Markieren vonTresoren

Mit S3 Glacier können Sie jetzt Ihre S3 Glacier-Tresore mit Tags versehen, um das Ressourcen-und Kostenmanagement zu vereinfachen. Tags sindEtiketten, die Sie definieren und mit Ihren Datenspeichernverknüpfen können. Mit Tags können Sie Filterfunktionenzu Vorgängen wie beispielsweise AWS-Kostenberichtenhinzufügen. Weitere Informationen finden Sie unterMarkieren von Amazon S3 Glacier-Ressourcen (p. 166)und Markieren der Amazon S3 Glacier-Tresore (p. 69).

22. Juni 2015

Richtlinien für denTresorzugriff

S3 Glacier unterstützt jetzt die Verwaltung des Zugriffsauf Ihre einzelnen S3 Glacier-Tresore mithilfe vonRichtlinien für den Tresorzugriff. Sie können jetzt eineZugriffsrichtlinie direkt auf einem Tresor definieren, umBenutzern und Geschäftsgruppen in Ihrem Unternehmensowie externen Geschäftspartnern einfacher Zugriffauf den Tresor zu gewähren. Weitere Informationenfinden Sie unter Amazon S3 Glacier-Zugriffskontrolle mitTresorzugriffsrichtlinien (p. 146).

27. April 2015

DatenabrufrichtlinienundPrüfprotokollierung

S3 Glacier unterstützt jetzt Datenabrufrichtlinien undPrüfprotokollierung. Mit Datenabrufrichtlinien könnenSie einfacher Datenabruflimits einrichten und dasKostenmanagement für den Datenabruf vereinfachen.Sie können Ihre eigenen Datenabruflimits mit wenigenKlicks in der AWS-Konsole oder mithilfe der S3 Glacier-APIdefinieren. Weitere Informationen finden Sie unter AmazonS3 Glacier-Richtlinien für den Datenabruf (p. 162).

Darüber hinaus unterstützt S3 Glacier jetztPrüfprotokollierung mit AWS CloudTrail. Dabei werdenS3 Glacier-API-Aufrufe für Ihr Konto aufgezeichnet unddie Protokolldateien an einen von Ihnen angegebenenAmazon S3-Bucket geliefert. Weitere Informationen findenSie unter Protokollieren von Amazon S3 Glacier-API-Aufrufen mit AWS CloudTrail (p. 168).

11. Dezember 2014

Updates für Java-Beispiele

Es wurden die Java-Codebeispiele in diesem Handbuchaktualisiert, die das AWS SDK for Java verwenden.

27. Juni 2014

Begrenzendes Abrufs vonTresorinventar

Sie können jetzt die Anzahl der abgerufenen Elementedes Tresorinventars begrenzen, indem Sie nachdem Archiverstellungsdatum filtern oder ein Limitfestlegen. Weitere Informationen zur Begrenzung desInventarabrufs finden Sie unter Inventarabfrage füreinzelne Bereiche (p. 286) im Thema Initiate Job (POSTjobs) (p. 284).

31. Dezember 2013

Veraltete URLsentfernt

Es wurden die URLs entfernt, die auf die alte Seite mitSicherheitsanmeldeinformationen von Codebeispielenzeigten.

26. Juli 2013

API-Version 2012-06-01352

Page 360: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier EntwicklerhandbuchFrühere Aktualisierungen

Änderungen Beschreibung Veröffentlichungsdatum

Unterstützung fürBereichsabrufe

S3 Glacier unterstützt jetzt den Abruf bestimmter BereicheIhrer Archive. Sie können eine Aufgabe initiieren, mit demSie S3 Glacier anweisen, ein vollständiges Archiv odereinen Teil eines Archivs zum Herunterladen vorzubereiten.Wenn ein Archiv sehr groß ist, können unter UmständenKosten sparen, indem Sie zur Vorbereitung des Archivsmehrere Aufträge in Folge vorbereiten.

Weitere Informationen finden Sie unter Herunterladeneines Archivs in Amazon S3 Glacier (p. 90).

Weitere Informationen zu Preisen finden Sie auf der S3Glacier-Detailseite.

13. November 2012

Neues Handbuch Dies ist die erste Version von Amazon S3 GlacierDeveloper Guide.

20. August 2012

API-Version 2012-06-01353

Page 361: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier Entwicklerhandbuch

AWS-GlossarDie aktuelle AWS-Terminologie finden Sie im AWS-Glossar im AWS General Reference.

API-Version 2012-06-01354

Page 362: Amazon S3 Glacier - Entwicklerhandbuch€¦ · S3 Glacier ist ein äußerst kostengünstiger Speicherservice, der eine dauerhafte Speicherung mit Sicherheitsfunktionen für die Datenarchivierung

Amazon S3 Glacier Entwicklerhandbuch

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchszwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge vonVerzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

API-Version 2012-06-01ccclv