Schlüsselnamen für Lightsail-Objektspeicher-Buckets - Amazon Lightsail

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.

Schlüsselnamen für Lightsail-Objektspeicher-Buckets

Dateien, die Sie in Ihren Bucket hochladen, werden als Objekte im Amazon Lightsail-Objektspeicherservice gespeichert. Der Objektschlüssel (oder Schlüsselname) identifiziert das Objekt in einem Bucket eindeutig. In diesem Handbuch wird das Konzept der Schlüsselnamen und Schlüsselnamenpräfixe erläutert, die die Ordnerstruktur von Buckets bilden, die über die Lightsail-Konsole angezeigt werden. Weitere Informationen zu Buckets finden Sie unter Objektspeicher.

Schlüsselnamen

Das Datenmodell des Lightsail-Objektspeicherdienstes verwendet eine flache Struktur anstelle einer hierarchischen Struktur, wie Sie sie in einem Dateisystem sehen würden. Es gibt keine Hierarchie von Ordnern und Unterordnern. Sie können jedoch mit den Schlüsselnamenpräfixen und Trennzeichen eine logische Hierarchie erschließen, wie dies die -Konsole tut. Die Lightsail-Konsole verwendet die Schlüsselnamenpräfixe, um Ihre Objekte in einer Ordnerstruktur anzuzeigen.

Angenommen, Ihr Bucket () enthält vier Objekte mit den folgenden Objektschlüsseln:

  • Development/Projects.xls

  • Finance/statement1.pdf

  • Private/taxdocument.pdf

  • to-dos.doc

Die Lightsail-Konsole verwendet die Schlüsselnamenpräfixe (Development/Finance/, undPrivate/) und das Trennzeichen (/), um eine Ordnerstruktur darzustellen. Der to-dos.doc-Schlüssel hat kein Präfix, deshalb erscheint sein Objekt direkt auf Root-Ebene des Buckets. Wenn Sie in der Lightsail-Konsole zu dem Development/ Ordner wechseln, sehen Sie das Projects.xls Objekt. Im Ordner Finance/, wird das statement1.pdf-Objekt angezeigt; und im Ordner Private/, wird dastaxdocument.pdf-Objekt angezeigt.

Die Lightsail-Konsole ermöglicht die Ordnererstellung, indem ein Null-Byte-Objekt mit dem Schlüsselnamenpräfix und dem Trennzeichenwert als Schlüsselname erstellt wird. Diese Ordnerobjekte werden nicht in der Konsole angezeigt. Sie verhalten sich jedoch wie alle anderen Objekte. Sie können sie mithilfe der Amazon S3 S3-API, AWS Command Line Interface (AWS CLI) oder AWS SDKs anzeigen und bearbeiten.

Richtlinien für Objektschlüsselnamen

Sie können in einem Objektschlüsselnamen jedes beliebige UTF-8-Zeichen verwenden. Die Verwendung bestimmter Zeichen in Schlüsselnamen kann jedoch bei manchen Anwendungen und Protokollen zu Problemen führen. Die folgenden Richtlinien helfen Ihnen, die Compliance mit DNS, web-sicheren Zeichen, XML-Parsern und anderen APIs zu maximieren.

Sichere Zeichen

Die folgenden Zeichensätze sind allgemein sicher für die Verwendung in Schlüsselnamen.

  • Alphanumerische Zeichen

    • 0-9

    • a-z

    • A-Z

  • Sonderzeichen

    • Schrägstrich (/)

    • Ausrufezeichen (!)

    • Bindestrich (-)

    • Unterstrich (_)

    • Punkt (.)

    • Sternchen (*)

    • Einzelnes Anführungszeichen (')

    • Öffnende Klammer (()

    • Schließende Klammer ())

Nachfolgend finden Sie Beispiele für gültige Objektschlüsselnamen:

  • 4my-organization

  • my.great_photos-2014/jan/myvacation.jpg

  • videos/2014/birthday/video1.wmv

Wichtig

Wenn ein Objektschlüsselname mit einem einzigen Punkt (.) oder zwei Punkten (..) endet, können Sie das Objekt nicht mit der Lightsail-Konsole herunterladen. Um ein Objekt herunterzuladen, dessen Schlüsselname mit einem oder zwei Punkten endet, müssen Sie die Amazon S3 S3-API und die AWS SDKs verwenden. AWS CLI Weitere Informationen finden Sie unter Herunterladen von Objekten aus einem Bucket.

Zeichen, die möglicherweise eine Sonderverarbeitung benötigen

Die folgenden Zeichen in einem Schlüsselnamen erfordern möglicherweise eine zusätzliche Verarbeitung im Code oder müssen URL-codiert oder als HEX angegeben werden. Einige davon sind nicht darstellbare Zeichen, und Ihr Browser kann sie ggf. nicht verarbeiten, was zudem einer speziellen Vorgehensweise bedarf:

  • Ampersand ("&")

  • Dollar ("$")

  • ASCII-Zeichenbereiche 00–1F hex (0–31 dezimal) und 7F (127 dezimal)

  • 'At'-Symbol ("@")

  • Gleichheitszeichen ("=")

  • Semikolon (";")

  • Doppelpunkt (":")

  • Plus ("+")

  • Leerzeichen – Wichtige Leerzeichenfolgen gehen möglicherweise bei bestimmten Verwendungszwecken verloren (insbesondere Mehrfachleerzeichen).

  • Komma (",")

  • Fragezeichen ("?")

Zeichen, die Sie vermeiden sollten

Sie sollten in Schlüsselnamen die folgenden Zeichen vermeiden, weil sie einen maßgeblichen Arbeitsaufwand erfordern, um konsistent über alle Anwendungen zu sein.

  • Umgekehrter Schrägstrich ("\")

  • Linke geschweifte Klammer ("{")

  • Nicht darstellbare ASCII-Zeichen (128-255 Dezimalzeichen)

  • Caret ("^")

  • Rechte geschweifte Klammer ("}")

  • Prozentzeichen ("%")

  • Accent Grave ("`")

  • Rechte eckige Klammer ("]")

  • Anführungszeichen

  • Größersymbol (">")

  • Linke eckige Klammer ("[")

  • Tilde ("~")

  • Kleiner als-Zeichen ("<")

  • Pfundzeichen ("#")

  • Vertikaler Strich ("|")

Schlüsselbeschränkungen für XML-bezogene Objekte

Gemäß dem XML-Standard für die end-of-line Verarbeitung ist der gesamte XML-Text normalisiert, sodass Zeilenumbrüche (ASCII-Code 13) und Zeilenumbrüche, denen unmittelbar ein Zeilenvorschub folgt (ASCII-Code 10), durch ein einzelnes Zeilenvorschubzeichen ersetzt werden. Um das korrekte Parsen von Objektschlüsseln in XML-Anforderungen zu gewährleisten, müssen Zeilenumbrüche und andere Sonderzeichen durch den entsprechenden XML-Entitätscode ersetzt werden, wenn sie in XML-Markierungen eingefügt werden. Im Folgenden finden Sie eine Liste solcher Sonderzeichen und ihrer entsprechenden Entitätscodes:

  • ' wie &apos;

  • wie &quot;

  • & wie &amp;

  • < wie &lt;

  • < wie &gt;

  • \r als &#13; oder&#x0D;

  • \n als &#10; oder&#x0A;

Das folgende Beispiel veranschaulicht die Verwendung eines XML-Entitätscodes als Ersatz für eine Zeilenumschaltung. Diese DeleteObjects-Anforderung löscht ein Objekt mit dem -Parameter/some/prefix/objectwith\rcarriagereturn (wobei\ r die Zeilenumschaltung ist).

<Delete xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Object> <Key>/some/prefix/objectwith&#13;carriagereturn</Key> </Object> </Delete>