Creazione di nomi di chiavi oggetto - Amazon Simple Storage Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creazione di nomi di chiavi oggetto

La chiave oggetto (o nome di chiave) identifica l'oggetto in modo univoco in un bucket Amazon S3. I metadati dell'oggetto sono invece un set di coppie nome-valore Per ulteriori informazioni sui metadati degli oggetti, consulta Utilizzo dei metadati degli oggetti.

Quando si crea un oggetto, specificare il nome della chiave che lo identifica in modo univoco nel bucket. Ad esempio, quando evidenzi un bucket nella console di Amazon S3, viene visualizzato un elenco degli oggetti nel bucket. Questi nomi sono le chiavi degli oggetti. Il nome della chiave dell'oggetto è una sequenza di caratteri Unicode con codifica UTF -8 e una lunghezza massima di 1.024 byte. I nomi delle chiavi degli oggetti fanno distinzione tra maiuscole e minuscole.

Nota

I nomi delle chiavi degli oggetti con il valore «soap» non sono supportati per le richieste. virtual-hosted-style Per i valori dei nomi delle chiavi degli oggetti in cui viene utilizzato «soap», è URL necessario utilizzare invece uno stile di percorso.

Il modello di dati di Amazon S3 è una struttura flat: crei un bucket e il bucket archivia gli oggetti. Non c'è nessuna gerarchia di bucket secondari o sottocartelle. Tuttavia, è possibile applicare una gerarchia logica utilizzando delimitatori e prefissi di nomi di chiavi come avviene nella console di Amazon S3. La console di Amazon S3 supporta il concetto di cartella. Per ulteriori informazioni su come modificare i metadati dalla console di Amazon S3, consulta Modifica dei metadati degli oggetti nella console di Amazon S3.

Supponiamo che il bucket (admin-created) contenga quattro oggetti con le seguenti chiavi:

Development/Projects.xls

Finance/statement1.pdf

Private/taxdocument.pdf

s3-dg.pdf

La console utilizza i prefissi dei nomi di chiavi (Development/, Finance/ e Private/) e il delimitatore ('/') per visualizzare una struttura di cartelle. Poiché la chiave s3-dg.pdf non ha un prefisso, i relativi oggetti vengono visualizzati direttamente a livello root del bucket. Se si apre la cartella Development/, viene visualizzato l'oggetto Projects.xlsx in essa contenuto.

  • Amazon S3 supporta i bucket e gli oggetti e non sono presenti gerarchie. Tuttavia, utilizzando prefissi e delimitatori in un nome chiave di oggetto, la console Amazon S3 e la console AWS SDKs possono dedurre la gerarchia e introdurre il concetto di cartelle.

  • La console di Amazon S3 implementa la creazione di oggetti cartella creando un oggetto a byte zero con il prefisso di cartella e il valore di delimitatore come chiave. Questi oggetti cartella non vengono visualizzati nella console. Altrimenti si comportano come qualsiasi altro oggetto e possono essere visualizzati e manipolati tramite, e. REST API AWS CLI AWS SDKs

Linee guida per la denominazione delle chiavi degli oggetti

È possibile utilizzare qualsiasi carattere UTF -8 nel nome chiave di un oggetto. Tuttavia, utilizzare alcuni caratteri nei nomi delle chiavi può causare problematiche con alcuni protocolli e applicazioni. Le seguenti linee guida consentono di massimizzare la conformità con caratteriDNS, XML parser e altro ancora sicuri per il Web. APIs

Caratteri sicuri

I seguenti set di caratteri possono essere utilizzati con la massima sicurezza nei nomi delle chiavi:

Caratteri alfanumerici
  • 0-9

  • a-z

  • A-Z

Caratteri speciali
  • Punto esclamativo (!)

  • Trattino (-)

  • Carattere di sottolineatura (_)

  • Punto (.)

  • Asterisco (*)

  • Virgoletta singola (')

  • Parentesi aperta (()

  • Parentesi chiusa ())

Di seguito sono riportati esempi di nomi di chiavi validi per gli oggetti:

  • 4my-organization

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

  • videos/2014/birthday/video1.wmv

Nota

Gli oggetti con nomi chiave che terminano con punti "." scaricati utilizzando la console di Amazon S3 avranno i punti "." rimossi dal nome della chiave dell'oggetto scaricato. Per scaricare un oggetto il cui nome chiave termina con il punto (i) «.» conservato nell'oggetto scaricato, è necessario utilizzare AWS Command Line Interface (AWS CLI), o. AWS SDKs REST API

Inoltre, tieni a mente le seguenti limitazioni sui prefissi:

  • Gli oggetti con il prefisso «./» devono essere caricati o scaricati con AWS Command Line Interface (AWS CLI), AWS SDKs oppure. REST API Non puoi utilizzare la console di Amazon S3.

  • Gli oggetti con il prefisso "../" non possono essere caricati utilizzando AWS Command Line Interface (AWS CLI) o la console di Amazon S3.

Caratteri che potrebbero richiedere una gestione speciale

I seguenti caratteri in un nome di chiave potrebbero richiedere una gestione aggiuntiva del codice e probabilmente devono essere URL codificati o referenziati come. HEX Alcuni di essi sono caratteri non stampabili ed è possibile che non vengano gestiti dal browser in uso; per tale motivo, richiedono una gestione speciale.

  • E commerciale ("&")

  • Dollaro ("$")

  • ASCIIintervalli di caratteri 00—1F esadecimale (0—31 decimali) e 7F (127 decimali)

  • Simbolo "at" ("@")

  • Uguale ("=")

  • Punto e virgola (";")

  • Barra obliqua ("/")

  • Due punti (":")

  • Più ("+")

  • Spazio - È possibile che sequenze significative di spazi vadano perse in alcuni utilizzi (in particolare, gli spazi multipli)

  • Virgola (",")

  • Punto interrogativo ("?")

Caratteri da evitare

Si consiglia di non utilizzare i seguenti caratteri in un nome chiave a causa della notevole gestione dei caratteri speciali, che non è coerente in tutte le applicazioni.

  • Barra rovesciata ("\")

  • Parentesi graffa di apertura ("{")

  • Caratteri non stampabili (128—255 ASCII caratteri decimali)

  • Accento circonflesso ("^")

  • Parentesi graffa di chiusura ("}")

  • Carattere di percentuale ("%")

  • Accento grave/apice inverso ("`")

  • Parentesi quadra di chiusura ("]")

  • Virgolette

  • Simbolo 'maggiore di' (">")

  • Parentesi quadra di apertura ("[")

  • Tilde ("~")

  • Simbolo "minore di" ("<")

  • Carattere "cancelletto" ("#")

  • Barra verticale ("|")

Come specificato dallo XMLstandard di end-of-line gestione, tutto il XML testo viene normalizzato in modo tale che le restituzioni a riga singola (ASCIIcodice 13) e le restituzioni a riga singola immediatamente seguite da un'alimentazione di riga (ASCIIcodice 10) vengano sostituite da un carattere di alimentazione a riga singola. Per garantire la corretta analisi delle chiavi degli oggetti nelle XML richieste, carriage return e altri caratteri speciali devono essere sostituiti con il loro codice di XML entità equivalente quando vengono inseriti nei tag. XML Di seguito è riportato un elenco di tali caratteri speciali e dei loro codici di entità equivalenti:

  • ' come &apos;

  • ” come &quot;

  • & come &amp;

  • < come &lt;

  • > come &gt;

  • \r come &#13; o &#x0D;

  • \n come &#10; o &#x0A;

L'esempio seguente illustra l'uso di un codice di XML entità in sostituzione di un corriage return. Questa richiesta DeleteObjects elimina un oggetto con il parametro key: /some/prefix/objectwith\rcarriagereturn (dove \r è il ritorno a capo).

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