Amazon Simple Storage Service (S3) - AWS SDK für Mobilgeräte

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Amazon Simple Storage Service (S3)

Was ist S3?

Amazon Simple Storage Service (Amazon S3) stellt Entwicklern sicheren, dauerhaften und hochskalierbaren Objektspeicher bereit. Amazon S3 ist bedienungsfreundlich und mit einer einfachen Web-Service-Schnittstelle zum Speichern und Abrufen beliebiger Datenmengen von jedem Ort über das Internet ausgestattet. Mit Amazon S3 zahlen Sie nur für den Speicherplatz, den Sie tatsächlich nutzen. Es fallen weder Mindestgebühren noch Einrichtungskosten an.

Amazon S3 stellt kostengünstigen Objektspeicher für eine Vielzahl an Anwendungsfällen bereit, z. B. Cloud-Anwendungen, Inhaltsverteilung, Sicherung und Archivierung, Wiederherstellung im Katastrophenfall und Big Data-Analyse.

Weitere Informationen zur regionalen Verfügbarkeit von AWS S3 finden Sie in der AWS-Tabelle der Regionen.

Die wichtigsten Konzepte

Bucket

Alle in Amazon S3 gespeicherten Objekte werden in einem Bucket aufbewahrt. Sie können Buckets verwenden, um verwandte Objekte auf ähnliche Weise zu gruppieren, wie Sie ein Verzeichnis verwenden, um Dateien in einem Dateisystem zu gruppieren. Buckets besitzen Eigenschaften wie Zugriffsberechtigungen und Versioning-Status. Außerdem können Sie die Region angeben, in der sich die Buckets befinden sollen.

Weitere Informationen zu S3 finden Sie unter Arbeiten mit Buckets im S3.

Objects

Objekte sind die Daten, die Sie in Amazon S3 speichern. Jedes Objekt befindet sich in einem Bucket, den Sie in einer bestimmten AWS-Region erstellen.

In einer Region gespeicherte Objekte verbleiben so lange in der Region, bis sie explizit in eine andere Region verschoben werden. In der Region EU (Irland) gespeicherte Objekte verlassen diese Region nicht. Die in einer Amazon S3-Region gespeicherten Objekte verbleiben physisch in dieser Region. Amazon S3 speichert keine Kopien und verschiebt sie nicht in eine andere Region. Sie können jedoch von beliebigen Orten aus auf die Objekte zugreifen, sofern Sie über die erforderlichen Berechtigungen verfügen.

Die Objekte können von jedem Dateityp sein: Bilder, Sicherungsdaten, Filme, usw. Ein Objekt kann bis zu 5 TB groß sein. Ein Bucket kann eine unbegrenzte Anzahl von Objekten aufnehmen.

Bevor Sie ein Objekt nach Amazon S3 hochladen können, benötigen Sie Schreibberechtigungen für einen Bucket. Weitere Informationen zum Festlegen von Bucket-Berechtigungen finden Sie unter Bearbeiten von Bucket-Berechtigungen im S3.

Weitere Informationen zu S3 finden Sie unter Arbeiten mit Objekten im S3.

Objekt-Metadaten

Jedes Objekt in Amazon S3 weist eine Gruppe von Schlüssel-Wert-Paaren auf, die seine Metadaten repräsentieren. Es gibt zwei Typen von Metadaten:

  • System-Metadaten: Gelegentlich von Amazon S3 verarbeitet, z. B. Content-Type und Content-Length.

  • Benutzer-Metadaten: Niemals von Amazon S3 verarbeitet. Benutzer-Metadaten werden mit dem Objekt gespeichert und mit ihm zurückgegeben. Die maximale Größe für Benutzer-Metadaten beträgt 2 KB. Sowohl die Schlüssel als auch deren Werte müssen US-ASCII-Standards entsprechen.

Weitere Informationen über S3-Objekt-Metadaten erhalten Sie unter Bearbeiten von Objekt-Metadaten.

Projekteinrichtung

Prerequisites

Um Amazon S3 in der Anwendung verwenden zu können, müssen Sie das SDK in das Projekt aufnehmen. Befolgen Sie zu diesem Zweck die Anweisungen unter Einrichten von AWS Mobile SDK for .NET and Xamarin.

Erstellen eines S3-Bucket

Amazon S3 speichert die Ressourcen der Anwendung in Amazon S3-Buckets, also in Cloud-Speicher-Containern, die sich in einer bestimmten Region. befinden. Jeder Amazon S3-Bucket muss einen global eindeutigen Namen tragen. Sie können die Amazon S3 verwenden, um einen Bucket zu erstellen.

  1. Melden Sie sich bei der Amazon S3-Konsole an und klicken Sie auf Create Bucket.

  2. Geben Sie einen Bucket-Namen ein, wählen Sie eine Region und klicken Sie auf Create.

Festlegen von Berechtigungen für S3

Die IAM-Standardrollenrichtlinie gewährt der Anwendung Zugriff auf Amazon Mobile Analytics und Amazon Cognito Sync. Damit der Cognito-Identitäten-Pool auf Amazon S3 zugreift, müssen Sie die Rollen des Identitäten-Pools modifizieren.

  1. Navigieren Sie zur Identity and Access Management Console und klicken Sie im linken Bereich auf Roles.

  2. Geben Sie den Identitäten-Pool-Namen in das Suchfeld ein. Es werden zwei Rollen aufgelistet: eine für nicht authentifizierte Benutzer und eine für authentifizierte Benutzer.

  3. Klicken Sie auf die Rolle für nicht authentifizierte Benutzer (an den Identitäten-Pool-Namen ist "unauth" angehängt).

  4. Klicken Sie aufCreate Role Policy, wählen Sie Policy Generator und klicken Sie dann auf Select.

  5. Geben Sie auf der Seite Edit Permissions (Berechtigungen bearbeiten) die in der folgenden Abbildung gezeigten Einstellungen ein und ersetzen Sie den Amazon-Ressourcennamen (ARN) durch Ihren eigenen. Der ARN eines S3-Bucket entspricht arn:aws:s3:::examplebucket/* und besteht aus der Region, in der sich der Bucket befindet, sowie dem Namen des Bucket. Die unten gezeigten Einstellungen gewähren dem Identitäten-Pool vollen Zugriff auf alle Aktionen für den angegebenen Bucket.

  1. Klicken Sie auf die Schaltfläche Add Statement und anschließend auf Next Step.

  2. Der Assistent zeigt die von Ihnen generierte Konfiguration. Klicken Sie auf Apply Policy.

Weitere Informationen zum Gewähren des Zugriffs auf S3 erhalten Sie unter Granting Access to an Amazon S3 Bucket.

(Optional) Konfigurieren der Signature Version for S3-Anforderungen

Jede Interaktion mit Amazon S3 erfolgt entweder authentifiziert oder anonym. AWS verwendet die Signature Version 4- oder Signature Version 2-Algorithmen zum Authentifizieren von Aufrufen des Services.

Alle neuen, nach Januar 2014 erstellten AWS-Regionen unterstützen nur Signature Version 4. Viele ältere Regionen unterstützen jedoch weiterhin Signature Version 4- und Signature Version 2-Anforderungen.

Wenn sich Ihr Bucket in einer der Regionen befindet, die Signature Version 2-Anforderungen nicht unterstützt, wie auf dieser Seite aufgeführt, müssen Sie die AWSConfigsS3.UseSignatureVersion4 Eigenschaft wie folgt auf „true“ setzen:

AWSConfigsS3.UseSignatureVersion4 = true;

Weitere Informationen zu AWS Signature-Versionen erhalten Sie unter Authenticating Requests (AWS Signature Version 4).

Integrieren von S3 in die Anwendung

Es gibt zwei Möglichkeiten für die Interaktion mit S3 in einer Xamarin-Anwendung. Diese beiden Methoden werden in den folgenden Themen ausführlich behandelt:

Themen