Menyalin objek ke bucket direktori - Amazon Simple Storage Service

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

Menyalin objek ke bucket direktori

Operasi penyalinan membuat salinan objek yang sudah disimpan di Amazon S3. Anda dapat menyalin objek antara bucket direktori dan bucket tujuan umum. Anda juga dapat menyalin objek di dalam bucket dan di bucket dengan tipe yang sama, misalnya, dari bucket direktori ke bucket direktori.

Anda dapat membuat salinan objek hingga 5 GB dalam satu operasi atom. Namun, untuk menyalin objek yang lebih besar dari 5 GB, Anda harus menggunakan API operasi pengunggahan multibagian. Untuk informasi selengkapnya, lihat Menggunakan unggahan multibagian dengan bucket direktori.

Izin

Untuk menyalin objek, Anda harus memiliki izin berikut:

  • Untuk menyalin objek dari satu bucket direktori ke bucket direktori lain, Anda harus memiliki izin s3express:CreateSession.

  • Untuk menyalin objek dari bucket direktori ke bucket tujuan umum, Anda harus memiliki izin s3express:CreateSession dan izin s3:PutObjectuntuk menulis salinan objek ke bucket tujuan.

  • Untuk menyalin objek dari bucket tujuan umum ke bucket direktori, Anda harus memiliki s3express:CreateSession izin dan s3:GetObject izin untuk membaca objek sumber yang sedang disalin.

    Untuk informasi selengkapnya, silakan lihat CopyObjectdi APIReferensi Layanan Penyimpanan Sederhana Amazon.

Enkripsi

Amazon S3 secara otomatis mengenkripsi semua objek baru yang diunggah ke bucket S3. Konfigurasi enkripsi default bucket S3 selalu diaktifkan dan minimal disetel ke enkripsi sisi server dengan kunci terkelola Amazon S3 (-S3). SSE

Untuk bucket direktori, enkripsi SSE -S3 dan sisi server dengan AWS Key Management Service (AWS KMS) keys (-) didukung. SSE KMS Jika bucket tujuan adalah bucket direktori, sebaiknya enkripsi default bucket tujuan menggunakan konfigurasi enkripsi yang diinginkan dan Anda tidak mengganti enkripsi default bucket. Kemudian, objek baru secara otomatis dienkripsi dengan pengaturan enkripsi yang diinginkan. Selain itu, Kunci Bucket S3 tidak didukung, saat Anda menyalin SSE - objek KMS terenkripsi dari bucket tujuan umum ke bucket direktori, dari bucket direktori ke bucket tujuan umum, atau di antara bucket direktori, hingga CopyObject. Dalam hal ini, Amazon S3 melakukan panggilan ke AWS KMS setiap kali permintaan salinan dibuat untuk objek yang KMS dienkripsi. Untuk informasi selengkapnya tentang perilaku pengesampingan enkripsi dalam bucket direktori, lihat Menentukan enkripsi sisi server dengan unggahan objek baru. AWS KMS

Untuk bucket tujuan umum, Anda dapat menggunakan SSE -S3 (default), enkripsi sisi server dengan () kunci AWS Key Management Service (-AWS KMS), enkripsi sisi server dua lapis dengan kunci (SSE-KMS), atau enkripsi sisi server dengan AWS KMS kunci yang disediakan pelanggan (DSSE-CKMS). SSE

Jika Anda membuat permintaan salinan yang menetapkan untuk menggunakan DSSE - KMS atau SSE -C untuk bucket direktori (baik bucket sumber atau tujuan), respons akan menampilkan kesalahan.

Tanda

Bucket direktori tidak mendukung tanda. Jika Anda menyalin objek yang memiliki tag dari bucket tujuan umum ke bucket direktori, Anda akan menerima HTTP 501 (Not Implemented) respons. Untuk informasi selengkapnya, silakan lihat CopyObjectdi APIReferensi Layanan Penyimpanan Sederhana Amazon.

ETags

Tag entitas (ETags) untuk S3 Express One Zone adalah string alfanumerik acak dan bukan checksum. MD5 Untuk membantu memastikan integritas objek, gunakan checksum tambahan.

Checksum tambahan

S3 Express One Zone menawarkan kepada Anda opsi untuk memilih algoritma checksum yang digunakan untuk memvalidasi data Anda selama mengunggah atau mengunduh. Anda dapat memilih salah satu algoritma pemeriksaan integritas data Secure Hash Algorithms (SHA) atau Cyclic Redundancy Check (CRC) berikut:,, -1, dan -256. CRC32 CRC32C SHA SHA MD5checksum berbasis tidak didukung dengan kelas penyimpanan S3 Express One Zone.

Untuk informasi selengkapnya, lihat Praktik terbaik checksum tambahan S3.

Fitur yang didukung

Untuk informasi selengkapnya tentang fitur Amazon S3 mana yang didukung untuk S3 Express One Zone, lihat. Memahami bagaimana S3 Express One Zone berbeda

catatan

Batasan dan batasan saat Anda menyalin objek ke bucket direktori dengan konsol adalah sebagai berikut:

  • CopyTindakan ini berlaku untuk semua objek dalam folder yang ditentukan (awalan). Objek yang ditambahkan ke folder ini saat tindakan sedang berlangsung mungkin terpengaruh.

  • Objek yang dienkripsi dengan kunci enkripsi yang disediakan pelanggan (SSE-C) tidak dapat disalin dengan menggunakan konsol S3. Untuk menyalin objek yang dienkripsi dengan SSE -C, gunakan, AWS CLI AWS SDK, atau Amazon S3. REST API

  • Objek yang disalin tidak akan mempertahankan pengaturan Object Lock dari objek asli.

  • Jika bucket tempat Anda menyalin objek menggunakan pengaturan yang diberlakukan pemilik bucket untuk Kepemilikan Objek S3, objek tidak ACLs akan disalin ke tujuan yang ditentukan.

  • Jika Anda ingin menyalin objek ke bucket yang menggunakan setelan diberlakukan pemilik bucket untuk Kepemilikan Objek S3, pastikan bucket sumber juga menggunakan setelan yang diberlakukan pemilik bucket, atau hapus semua ACL hibah objek ke akun dan grup lain AWS .

  • Objek yang disalin dari bucket tujuan umum ke bucket direktori tidak akan menyimpan tag objekACLs, atau nilai Etag. Nilai checksum dapat disalin, tetapi tidak setara dengan Etag. Nilai checksum dapat berubah dibandingkan dengan saat ditambahkan.

  • Semua objek yang disalin ke bucket direktori akan dengan pengaturan yang diberlakukan pemilik bucket untuk Kepemilikan Objek S3.

Untuk menyalin objek dari bucket tujuan umum atau bucket direktori ke bucket direktori
  1. Masuk ke AWS Management Console dan buka konsol Amazon S3 di. https://console.aws.amazon.com/s3/

  2. Di panel navigasi kiri, pilih Bucket.

  3. Pilih bucket tempat Anda ingin menyalin objek dari:

    • Untuk menyalin dari ember tujuan umum, pilih tab Bucket tujuan umum.

    • Untuk menyalin dari bucket direktori, pilih tab Directory buckets.

  4. Pilih bucket tujuan umum atau bucket direktori yang berisi objek yang ingin Anda salin.

  5. Pilih tab Objek. Pada halaman Objek, pilih kotak centang di sebelah kiri nama objek yang ingin Anda salin.

  6. Pada menu Tindakan, pilih Salin.

    Halaman Salin muncul.

  7. Di bawah Tujuan, pilih ember Direktori untuk jenis tujuan Anda. Untuk menentukan jalur tujuan, pilih Browse S3, navigasikan ke tujuan, lalu pilih tombol opsi di sebelah kiri tujuan. Pilih Pilih tujuan di sudut kanan bawah.

    Atau, masukkan jalur tujuan.

  8. Di bawah Pengaturan salinan tambahan, pilih apakah Anda ingin Menyalin setelan sumber, Jangan tentukan pengaturan, atau Tentukan pengaturan. Pengaturan sumber salin adalah opsi default. Jika Anda hanya ingin menyalin objek tanpa atribut pengaturan sumber, pilih Jangan tentukan pengaturan. Pilih Tentukan pengaturan untuk menentukan pengaturan enkripsi sisi server, checksum, dan metadata.

  9. Pilih Salin di sudut kanan bawah. Amazon S3 menyalin objek Anda ke tujuan.

catatan

Batasan dan batasan saat Anda menyalin objek ke bucket tujuan umum dengan konsol adalah sebagai berikut:

  • CopyTindakan ini berlaku untuk semua objek dalam folder yang ditentukan (awalan). Objek yang ditambahkan ke folder ini saat tindakan sedang berlangsung mungkin terpengaruh.

  • Objek yang dienkripsi dengan kunci enkripsi yang disediakan pelanggan (SSE-C) tidak dapat disalin dengan menggunakan konsol S3. Untuk menyalin objek yang dienkripsi dengan SSE -C, gunakan, AWS CLI AWS SDK, atau Amazon S3. REST API

  • Objek yang disalin tidak akan mempertahankan pengaturan Object Lock dari objek asli.

  • Jika bucket tempat Anda menyalin objek menggunakan pengaturan yang diberlakukan pemilik bucket untuk Kepemilikan Objek S3, objek tidak ACLs akan disalin ke tujuan yang ditentukan.

  • Jika Anda ingin menyalin objek ke bucket yang menggunakan setelan diberlakukan pemilik bucket untuk Kepemilikan Objek S3, pastikan bucket sumber juga menggunakan setelan yang diberlakukan pemilik bucket, atau hapus semua ACL hibah objek ke akun dan grup lain AWS .

Untuk menyalin objek dari bucket direktori ke bucket tujuan umum
  1. Masuk ke AWS Management Console dan buka konsol Amazon S3 di. https://console.aws.amazon.com/s3/

  2. Di panel navigasi kiri, pilih Bucket.

  3. Pilih tab Ember direktori.

  4. Pilih bucket direktori yang berisi objek yang ingin Anda salin.

  5. Pilih tab Objek. Pada halaman Objek, pilih kotak centang di sebelah kiri nama objek yang ingin Anda salin.

  6. Pada menu Tindakan, pilih Salin.

  7. Di bawah Tujuan, pilih Bucket tujuan umum untuk jenis tujuan Anda. Untuk menentukan jalur tujuan, pilih Browse S3, navigasikan ke tujuan, dan pilih tombol opsi di sebelah kiri tujuan. Pilih Pilih tujuan di sudut kanan bawah.

    Atau, masukkan jalur tujuan.

  8. Di bawah Pengaturan salinan tambahan, pilih apakah Anda ingin Menyalin setelan sumber, Jangan tentukan pengaturan, atau Tentukan pengaturan. Pengaturan sumber salin adalah opsi default. Jika Anda hanya ingin menyalin objek tanpa atribut pengaturan sumber, pilih Jangan tentukan pengaturan. Pilih Tentukan pengaturan untuk menentukan pengaturan untuk kelas penyimpanan, tag objekACLs, metadata, enkripsi sisi server, dan checksum tambahan.

  9. Pilih Salin di sudut kanan bawah. Amazon S3 menyalin objek Anda ke tujuan.

SDK for Java 2.x
public static void copyBucketObject (S3Client s3, String sourceBucket, String objectKey, String targetBucket) { CopyObjectRequest copyReq = CopyObjectRequest.builder() .sourceBucket(sourceBucket) .sourceKey(objectKey) .destinationBucket(targetBucket) .destinationKey(objectKey) .build(); String temp = ""; try { CopyObjectResponse copyRes = s3.copyObject(copyReq); System.out.println("Successfully copied " + objectKey +" from bucket " + sourceBucket +" into bucket "+targetBucket); } catch (S3Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

copy-objectContoh perintah berikut menunjukkan bagaimana Anda dapat menggunakan AWS CLI untuk menyalin objek dari satu bucket ke bucket lain. Anda dapat menyalin objek di antara jenis bucket. Untuk menjalankan perintah ini, ganti placeholder input pengguna dengan informasi Anda sendiri.

aws s3api copy-object --copy-source SOURCE_BUCKET/SOURCE_KEY_NAME --key TARGET_KEY_NAME --bucket TARGET_BUCKET_NAME

Untuk informasi selengkapnya, silakan lihat copy-objectdalam AWS CLI Command Reference.