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.
Markieren von Amazon-S3-Objekten
Der Objektschlüssel (oder Schlüsselname) identifiziert das Objekt in einem Amazon-S3-Bucket eindeutig. Wenn Sie ein Objekt erstellen, geben Sie den Schlüsselnamen an. Wenn Sie in der Amazon-S3-Konsole
Der Objektschlüsselname ist eine Folge von Unicode-Zeichen mit UTF-8-Kodierung mit einer Länge von bis zu 1.024 Byte oder 1.204 lateinischen Zeichen. In einigen Gebietsschemas kann ein einzelnes Zeichen 2 Byte entsprechen. Beachten Sie bei der Benennung Ihrer Objekte Folgendes:
-
Bei den Objektschlüsselnamen muss die Groß- und Kleinschreibung beachtet werden.
-
Objektschlüsselnamen enthalten alle Präfixe (in der Konsole als Ordner bezeichnet).
Development/Projects.xls
Ist beispielsweise der vollständige Objektschlüsselname des Objekts, dasProjects.xls
sich innerhalb desDevelopment
Präfixes (oder Ordners) befindet. Das Präfix, das Trennzeichen (/
) und der Name des Objekts sind in der 1.024-Byte-Beschränkung für den Objektschlüsselnamen enthalten. Weitere Hinweise zu Präfixen und Ordnern finden Sie unter. Auswählen von Objektschlüsselnamen -
Bestimmte Zeichen erfordern möglicherweise eine besondere Behandlung, wenn sie in Objektschlüsselnamen verwendet werden. Weitere Informationen finden Sie unter Richtlinien für Objektschlüsselnamen.
Anmerkung
Objektschlüsselnamen mit dem Wert "soap"
werden für virtual-hosted-style Anfragen nicht unterstützt. Für Objektschlüsselnamenwerte, bei denen verwendet "soap"
wird, muss stattdessen eine URL im Pfadstil verwendet werden.
Auswählen von Objektschlüsselnamen
Das Amazon-S3-Datenmodell ist eine flache Struktur: Sie erstellen einen Bucket und der Bucket speichert Objekte. Es gibt keine Hierarchie von Unter-Buckets oder Unterordnern. Sie können jedoch mit den Schlüsselnamenpräfixen und Trennzeichen eine logische Hierarchie erschließen, wie in der Amazon-S3-Konsole. Die Amazon-S3-Konsole unterstützt ein Ordnerkonzept. Weitere Informationen zum Bearbeiten von Metadaten über die Amazon-S3-Konsole finden Sie unter Bearbeiten von Objektmetadaten in der Amazon-S3-Konsole.
Angenommen, Ihr Bucket (admin-created
) enthält vier Objekte mit den folgenden Objektschlüsseln:
Development/Projects.xls
Finance/statement1.pdf
Private/taxdocument.pdf
s3-dg.pdf
Die Konsole verwendet die Schlüsselnamenpräfixe (Development/
Finance/
, undPrivate/
) und das Trennzeichen (/
), um eine Ordnerstruktur darzustellen. Der s3-dg.pdf
Schlüssel enthält kein durch Schrägstrich getrenntes Präfix, sodass sein Objekt direkt auf der Stammebene des Buckets angezeigt wird. Wenn Sie den Ordner Development/
öffnen, werden Sie darin das Objekt Projects.xlsx
sehen.
Amazon S3 unterstützt Buckets und Objekt. Es gibt keine Hierarchie in Amazon S3. Durch die Verwendung von Präfixen und Trennzeichen in einem Objektschlüsselnamen AWS SDKs können die Amazon S3-Konsole und die Amazon S3-Konsole jedoch eine Hierarchie ableiten und das Konzept von Ordnern einführen.
Die Amazon-S3-Konsole implementiert die Ordnerobjekterstellung, indem sie ein Null-Byte-Objekt mit dem Wert des Ordners für Präfix und Trennzeichen als Schlüssel erstellt. Diese Ordnerobjekte werden nicht in der Konsole angezeigt. Ansonsten verhalten sie sich wie alle anderen Objekte und können über die REST-API, AWS CLI und angezeigt und AWS SDKs bearbeitet werden.
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 dabei, die Einhaltung von DNS, websicheren Zeichen, XML-Parsern und anderen Richtlinien zu maximieren. APIs
Sichere Zeichen
Die folgenden Zeichensätze sind allgemein sicher für die Verwendung in Schlüsselnamen:
Alphanumerische Zeichen |
|
Sonderzeichen |
|
Nachfolgend finden Sie Beispiele für gültige Objektschlüsselnamen:
-
4my-organization
-
my.great_photos-2014/jan/myvacation.jpg
-
videos/2014/birthday/video1.wmv
Anmerkung
Wenn Sie die Amazon S3 S3-Konsole verwenden, um Objekte herunterzuladen, deren Schlüsselnamen mit Punkten (.
) enden, werden die Punkte von den Enden der Schlüsselnamen der heruntergeladenen Objekte entfernt. Um Punkte am Ende von Schlüsselnamen in heruntergeladenen Objekten beizubehalten, müssen Sie die AWS Command Line Interface (AWS CLI) AWS SDKs, oder Amazon S3 S3-REST-API verwenden.
Darüber hinaus sollten Sie folgende Präfixbeschränkungen beachten:
-
Objekte mit dem Präfix von
./
müssen mit der AWS CLI, oder REST-API hoch AWS SDKs - oder heruntergeladen werden. Sie können die Amazon S3 S3-Konsole nicht verwenden, um diese Objekte hochzuladen. -
Objektschlüssel, die relative Pfadelemente enthalten (z. B.
../
), sind gültig, wenn bei der Analyse die left-to-right Gesamtzahl der relativen Pfadsegmente niemals die Anzahl der gefundenen nicht-relativen Pfadelemente übersteigt. Diese Regel gilt für alle Anfragen, die über die Amazon S3 S3-Konsole, die Amazon S3 S3-REST-API und gestellt AWS SDKs werden. AWS CLIZum Beispiel:
videos/2014/../../video1.wmv
ist gültig.videos/../../video1.wmv
ist nicht gültig.videos/../../2014/video1.wmv
ist nicht gültig.
Zeichen, die möglicherweise eine Sonderverarbeitung benötigen
Die folgenden Zeichen in einem Schlüsselnamen erfordern möglicherweise zusätzliche Codebehandlung und müssen höchstwahrscheinlich URL-kodiert sein oder als HEX referenziert werden. Bei einigen dieser Zeichen handelt es sich um nicht druckbare Zeichen, die Ihr Browser möglicherweise nicht verarbeiten kann und die ebenfalls eine besondere Behandlung erfordern:
-
Und-Zeichen ()
&
-
Dollarzeichen ()
$
-
ASCII-Zeichenbereiche 00–1F hex (0–31 dezimal) und 7F (127 dezimal)
-
Kunstsymbol (
@
) -
Gleichheitszeichen (
=
) -
Semikolon ()
;
-
Schrägstrich (
/
) -
Doppelpunkt ()
:
-
Pluszeichen (
+
) -
Leerzeichen — In einigen Fällen können signifikante Abfolgen von Leerzeichen verloren gehen (insbesondere mehrere Leerzeichen)
-
Komma ()
,
-
Fragezeichen ()
?
Zeichen, die Sie vermeiden sollten
Wir empfehlen, die folgenden Zeichen nicht in einem Schlüsselnamen zu verwenden, da die Behandlung von Sonderzeichen häufig vorkommt und diese nicht in allen Anwendungen einheitlich ist:
-
Backslash ()
\
-
Linke Klammer ()
{
-
Nicht darstellbare ASCII-Zeichen (128-255 Dezimalzeichen)
-
Caret oder Circumflex ()
^
-
Rechte Zahnspange ()
}
-
Prozentuales Zeichen ()
%
-
Schwerer Akzent oder Backtick ()
`
-
Rechte Klammer ()
]
-
Anführungszeichen (
"
) -
Größer als das Zeichen (
>
) -
Linke Klammer (
[
) -
Tilde ()
~
-
Weniger als ein Zeichen ()
<
-
Pfund-Zeichen (
#
) -
Vertikaler Balken oder Rohr (
|
)
Schlüsseleinschränkungen für Objekte im Zusammenhang mit XML
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, auf
Im Folgenden finden Sie eine Liste solcher Sonderzeichen und ihrer entsprechenden XML-Entitätscodes:
Apostroph (
'
) muss ersetzt werden durch'
Das Anführungszeichen (
"
) muss ersetzt werden durch"
Das Und-Zeichen (
&
) muss durch ersetzt werden&
Kleineres Vorzeichen (
<
) muss durch ersetzt werden<
Das Zeichen „Größer als“ (>
>
) muss durch ersetzt werden>
Carriage Return (
\r
) muss durch
oder ersetzt werden
Newline (
\n
) muss durch oder ersetzt
werden

Das folgende Beispiel veranschaulicht die Verwendung eines XML-Entitätscodes als Ersatz für eine Zeilenumschaltung. Diese DeleteObjects
Anfrage löscht ein Objekt mit dem key
Parameter /some/prefix/objectwith\rcarriagereturn
(wobei der Carriage Return \r
ist).
<Delete xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Object> <Key>/some/prefix/objectwith carriagereturn</Key> </Object> </Delete>