Membuat nama kunci objek - Amazon Simple Storage Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membuat nama kunci objek

Sebuah kunci objek (atau nama kunci) secara unik mengidentifikasi objek dalam sebuah bucket Amazon S3. Metadata objek adalah sekumpulan pasangan nama-nilai. Untuk informasi selengkapnya tentang pemberian metadata objek, lihat Bekerja dengan metadata objek.

Saat Anda membuat objek, Anda menentukan nama kunci, yang secara unik mengidentifikasi objek dalam bucket. Misalnya, di Konsol Amazon S3, jika Anda menyoroti sebuah bucket, daftar objek dalam bucket Anda akan muncul. Nama-nama ini merupakan kunci objek. Nama kunci objek adalah urutan karakter Unicode dengan pengodean UTF-8 hingga 1.024 byte. Nama kunci objek peka terhadap huruf besar atau kecil.

catatan

Nama kunci objek dengan nilai “soap” tidak didukung untuk virtual-hosted-style permintaan. Untuk nilai nama kunci objek di mana “soap” digunakan, URL bergaya jalur harus digunakan sebagai gantinya.

Model data Amazon S3 bersifat struktur yang datar: Anda membuat bucket, dan bucket menyimpan objek tersebut. Tidak ada hierarki sub-bucket atau sub-folder. Namun, Anda dapat menyimpulkan hierarki logis dengan menggunakan prefiks dan pembatas nama kunci, seperti yang dilakukan oleh konsol Amazon S3. Konsol Amazon S3 menggunakan konsep folder. Untuk informasi lebih lanjut tentang cara mengedit metadata dari konsol Amazon S3, lihat Mengedit metadata objek di konsol Amazon S3.

Misalnya, bucket Anda (admin-created) memiliki empat objek dengan kunci objek berikut:

Development/Projects.xls

Finance/statement1.pdf

Private/taxdocument.pdf

s3-dg.pdf

Konsol tersebut menggunakan prefiks nama kunci (Development/, Finance/, dan Private/) serta pembatas ('/') untuk menyajikan struktur folder. Kunci s3-dg.pdf tidak memiliki prefiks, sehingga objeknya muncul langsung pada tingkat root bucket. Jika Anda membuka folder Development/, Anda melihat objek Projects.xlsx di dalamnya.

  • Amazon S3 mendukung bucket dan objek, dan tidak memiliki hierarki. Namun, dengan menggunakan awalan dan pembatas dalam nama kunci objek, konsol Amazon S3 dan AWS SDK dapat menyimpulkan hierarki dan memperkenalkan konsep folder.

  • Konsol Amazon S3 menerapkan pembuatan folder dengan menciptakan objek nol-byte dengan nilai prefiks dan pembatas folder sebagai kuncinya. Objek folder ini tidak akan muncul dalam konsol. Jika tidak, mereka berperilaku seperti objek lain dan dapat dilihat dan dimanipulasi melalui REST API, AWS CLI, AWS dan SDK.

Panduan penamaan kunci objek

Anda dapat menggunakan karakter UTF-8 apa pun dalam nama kunci objek. Namun, penggunaan karakter tertentu dalam nama kunci dapat menimbulkan masalah pada beberapa aplikasi dan protokol. Panduan berikut ini akan membantu Anda untuk memaksimalkan kepatuhan terhadap DNS, karakter aman web, parser XML, dan API lainnya.

Karakter aman

Set karakter berikut umumnya aman untuk digunakan dalam nama kunci.

Karakter alfanumerik
  • 0-9

  • a-z

  • A-Z

Karakter-karakter khusus
  • Tanda seru (!)

  • Tanda hubung (-)

  • Garis bawah (_)

  • Titik (.)

  • Tanda bintang (*)

  • Tanda petik tunggal (')

  • Tanda kurung buka (()

  • Tanda kurung tutup ())

Berikut ini adalah contoh nama kunci objek yang valid:

  • 4my-organization

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

  • videos/2014/birthday/video1.wmv

catatan

Objek dengan nama kunci yang diakhiri dengan periode "." yang diunduh menggunakan konsol Amazon S3 periode titiknya "." akan dihapus dari nama kunci objek yang diunduh. Untuk mengunduh objek dengan nama kunci yang diakhiri dengan periode “.” yang disimpan di objek yang diunduh, Anda harus menggunakan AWS Command Line Interface (AWS CLI), AWS SDK, atau REST API.

Selain itu, waspadai batasan prefiks berikut ini:

  • Objek dengan awalan “./” harus diunggah atau diunduh dengan AWS Command Line Interface (AWS CLI), AWS SDK, atau REST API. Anda tidak bisa menggunakan konsol Amazon S3.

  • Objek dengan prefiks "../" tidak dapat diunggah menggunakan AWS Command Line Interface (AWS CLI) atau konsol Amazon S3.

Karakter yang memerlukan penanganan khusus

Karakter-karakter dalam nama kunci berikut ini mungkin memerlukan penanganan kode tambahan, dan mungkin perlu dikodekan atau direferensikan sebagai HEX. Beberapa dari karakter ini tidak dapat dicetak, dan mungkin tidak dapat ditangani oleh browser Anda, sehingga memerlukan penanganan khusus:

  • Ampersand ("&")

  • Dolar ("$")

  • Karakter ASCII bervariasi dengan rentang hex 00–1F (desimal 0–31) dan 7F (desimal 127)

  • Simbol 'At' ("@")

  • Tanda sama dengan ("=")

  • Titik koma (";")

  • Garis miring ("/")

  • Titik dua (":")

  • Plus ("+")

  • Spasi–Urutan spasi yang signifikan dapat dihilangkan dalam beberapa penggunaan (khususnya spasi ganda)

  • Tanda koma (",")

  • Tanda tanya ("?")

Karakter-karakter yang harus dihindari

Kami menyarankan Anda untuk tidak menggunakan karakter berikut dalam nama kunci karena penanganan karakter khusus yang signifikan, yang tidak konsisten di semua aplikasi.

  • Garis miring terbalik ("\")

  • Kurung kurawal buka ("{")

  • Karakter ASCII yang tidak dapat dicetak (karakter desimal 128–255)

  • Tanda pangkat ("^")

  • Kurung kurawal tutup ("}")

  • Karakter persen ("%")

  • Aksen nontirus / back tick ("`")

  • Kurung siku tutup ("]")

  • Tanda petik

  • Simbol 'Lebih Besar Dari' (">")

  • Kurung siku buka ("[")

  • Tanda ekuivalen ("~")

  • Simbol 'Kurang Dari' ("<")

  • Karakter 'Pound' ("#")

  • Bar vertikal / pipa ("|")

Seperti yang ditentukan oleh standar XHTML pada end-of-line penanganan, semua teks XML-dinormalisasi sedemikian rupa sehingga single carriage return (ASCII code 13) dan carriage return segera diikuti oleh line feed (kode ASCII 10) digantikan oleh karakter feed baris tunggal. Untuk memastikan parsing kunci objek yang benar dalam permintaan XML, pengangkutan kembali dan karakter khusus lainnya harus diganti dengan kode entitas XML yang setara saat dimasukkan ke dalam tag XML. Berikut ini adalah daftar karakter khusus tersebut, serta kode entitas yang setara:

  • ' sebagai &apos;

  • ” sebagai &quot;

  • & sebagai &amp;

  • < sebagai &lt;

  • > sebagai &gt;

  • \r sebagai &#13; atau &#x0D;

  • \n sebagai &#10; atau &#x0A;

Contoh berikut ini mengilustrasikan penggunaan kode entitas XML sebagai pengganti untuk pengangkutan kembali. Permintaan DeleteObjects ini menghapus sebuah objek dengan parameter key: /some/prefix/objectwith\rcarriagereturn (di mana \r adalah kembali ke awal).

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