

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

# Contoh untuk mengonfigurasi replikasi langsung
<a name="replication-example-walkthroughs"></a>

Contoh berikut memberikan step-by-step panduan yang menunjukkan cara mengonfigurasi replikasi langsung untuk kasus penggunaan umum. 

**catatan**  
Replikasi langsung mengacu pada Replikasi Wilayah yang Sama (SRR) dan Replikasi Lintas-Wilayah (CRR). Replikasi langsung tidak mereplikasi objek apa pun yang ada di bucket sebelum Anda mengatur replikasi. Untuk mereplikasi objek yang ada sebelum Anda mengatur replikasi, gunakan replikasi sesuai permintaan. Untuk menyinkronkan bucket dan mereplikasi objek yang ada sesuai permintaan, lihat. [Mereplikasi objek yang ada](s3-batch-replication-batch.md)

Contoh-contoh ini menunjukkan cara membuat konfigurasi replikasi dengan menggunakan konsol Amazon S3 AWS Command Line Interface ,AWS CLI(), AWS SDKs dan AWS SDK untuk Java ( AWS SDK untuk .NET dan contoh ditampilkan). 

Untuk informasi tentang menginstal dan mengonfigurasi AWS CLI, lihat topik berikut di *Panduan AWS Command Line Interface Pengguna*:
+  [Memulai dengan AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) 
+  [Konfigurasikan AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) — Anda harus mengatur setidaknya satu profil. Jika Anda menjelajahi skenario lintas akun, siapkan dua profil.

Untuk informasi tentang AWS SDKs, lihat [AWS SDK untuk Java](https://aws.amazon.com/sdk-for-java/)dan [AWS SDK untuk .NET](https://aws.amazon.com/sdk-for-net/).

**Tip**  
Untuk step-by-step tutorial yang menunjukkan cara menggunakan replikasi langsung untuk mereplikasi data, lihat [Tutorial: Mereplikasi data di dalam dan di antara Wilayah AWS menggunakan Replikasi](https://aws.amazon.com/getting-started/hands-on/replicate-data-using-amazon-s3-replication/?ref=docs_gateway/amazons3/replication-example-walkthroughs.html) S3.

**Topics**
+ [Mengonfigurasi bucket di akun yang sama](replication-walkthrough1.md)
+ [Mengonfigurasi bucket di akun yang berbeda](replication-walkthrough-2.md)
+ [Menggunakan Kontrol Waktu Replikasi S3](replication-time-control.md)
+ [Mereplikasi objek terenkripsi](replication-config-for-kms-objects.md)
+ [Mereplikasi perubahan metadata](replication-for-metadata-changes.md)
+ [Mereplikasi penanda hapus](delete-marker-replication.md)

# Mengkonfigurasi replikasi untuk bucket di akun yang sama
<a name="replication-walkthrough1"></a>

Replikasi langsung adalah penyalinan objek otomatis dan asinkron di seluruh ember tujuan umum dalam hal yang sama atau berbeda. Wilayah AWS Replikasi langsung menyalin objek dan pembaruan objek yang baru dibuat dari bucket sumber ke bucket atau bucket tujuan. Untuk informasi selengkapnya, lihat [Mereplikasi objek di dalam dan di seluruh Wilayah](replication.md).

Saat mengonfigurasi replikasi, Anda menambahkan aturan replikasi ke bucket sumber. Aturan replikasi menentukan objek bucket sumber mana yang akan direplikasi dan bucket tujuan atau bucket tempat objek yang direplikasi disimpan. Anda dapat membuat aturan untuk mereplikasi semua objek dalam bucket atau subset objek dengan awalan nama kunci tertentu, satu atau beberapa tag objek, atau keduanya. Bucket tujuan bisa Akun AWS sama dengan bucket sumber, atau bisa juga di akun yang berbeda.

Jika Anda menentukan ID versi objek yang akan dihapus, Amazon S3 menghapus versi objek tersebut dalam bucket sumber. Tetapi ini tidak mereplikasi penghapusan di bucket tujuan. Dengan kata lain, itu tidak menghapus versi objek yang sama dari bucket tujuan. Ini melindungi data dari penghapusan berbahaya.

Ketika Anda menambahkan aturan replikasi ke bucket, aturan diaktifkan secara default, sehingga aturan mulai bekerja segera setelah Anda menyimpannya. 

Dalam contoh ini, Anda mengatur replikasi langsung untuk bucket sumber dan tujuan yang dimiliki oleh yang sama. Akun AWS Contoh disediakan untuk menggunakan konsol Amazon S3, AWS Command Line Interface (AWS CLI), dan dan. AWS SDK untuk Java AWS SDK untuk .NET

## Prasyarat
<a name="replication-prerequisites"></a>

Sebelum Anda menggunakan prosedur berikut, pastikan Anda telah menyiapkan izin yang diperlukan untuk replikasi, tergantung pada apakah bucket sumber dan tujuan dimiliki oleh akun yang sama atau berbeda. Untuk informasi selengkapnya, lihat [Menyiapkan izin untuk replikasi langsung](setting-repl-config-perm-overview.md).

**catatan**  
Jika Anda ingin mereplikasi objek terenkripsi, Anda juga harus memberikan izin kunci AWS Key Management Service (AWS KMS) yang diperlukan. Untuk informasi selengkapnya, lihat [Mereplikasi objek terenkripsi (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C)](replication-config-for-kms-objects.md).
Untuk menggunakan Object Lock dengan replikasi, Anda harus memberikan dua izin tambahan pada bucket S3 sumber dalam peran AWS Identity and Access Management (IAM) yang Anda gunakan untuk mengatur replikasi. Dua izin tambahan tersebut adalah `s3:GetObjectRetention` dan`s3:GetObjectLegalHold`. Jika peran tersebut memiliki pernyataan izin `s3:Get*`, pernyataan itu memenuhi persyaratan. Untuk informasi selengkapnya, lihat [Menggunakan Kunci Objek dengan Replikasi S3](object-lock-managing.md#object-lock-managing-replication). 

## Menggunakan konsol S3
<a name="enable-replication"></a>

Untuk mengonfigurasi aturan replikasi saat bucket tujuan Akun AWS sama dengan bucket sumber, ikuti langkah-langkah berikut.

Jika bucket tujuan berada di akun yang berbeda dengan bucket sumber, Anda harus menambahkan kebijakan bucket ke bucket tujuan untuk memberi pemilik akun bucket sumber izin untuk mereplikasi objek dalam bucket tujuan. Untuk informasi selengkapnya, lihat [(Opsional) Langkah 3: Memberikan izin saat bucket sumber dan tujuan dimiliki oleh yang berbeda Akun AWS](setting-repl-config-perm-overview.md#setting-repl-config-crossacct).

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon S3 di. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Di panel navigasi kiri, pilih **Bucket tujuan umum**.

1. Dalam daftar bucket, pilih nama bucket yang Anda inginkan.

1. Pilih tab **Manajemen**, gulir ke bawah ke **Aturan replikasi**, lalu pilih **Buat aturan replikasi.**

    

1. Di bagian **Konfigurasi aturan replikasi**, di bawah **Nama aturan replikasi**, masukkan nama untuk aturan Anda guna membantu mengidentifikasi aturan tersebut nanti. Nama wajib diisi dan harus unik dalam bucket.

1. Di bawah **Status**, **Diaktifkan** dipilih secara default. Aturan yang diaktifkan mulai berfungsi segera setelah Anda menyimpannya. Jika Anda ingin mengaktifkan aturan nanti, pilih **Dinonaktifkan**.

1. Jika bucket memiliki aturan replikasi yang ada, Anda diinstruksikan untuk menetapkan prioritas aturan. Anda harus menetapkan prioritas pada aturan untuk menghindari konflik yang disebabkan oleh objek yang dimasukkan dalam cakupan lebih dari satu aturan. Dalam kasus aturan yang tumpang tindih, Amazon S3 menggunakan prioritas aturan untuk menentukan aturan mana yang berlaku. Semakin tinggi angkanya, semakin tinggi prioritasnya. Untuk informasi selengkapnya tentang prioritas aturan, lihat [Elemen file konfigurasi replikasi](replication-add-config.md).

1. Di bawah **Bucket sumber**, Anda memiliki opsi berikut untuk mengatur sumber replikasi:
   + Untuk mereplikasi seluruh bucket, pilih **Terapkan ke semua objek di bucket**. 
   + Untuk mereplikasi semua objek yang memiliki awalan yang sama, pilih **Batasi cakupan aturan ini menggunakan satu atau beberapa filter**. Ini membatasi replikasi ke semua objek yang memiliki nama yang dimulai dengan awalan yang Anda tentukan (misalnya `pictures`). Masukkan awalan di kotak **Awalan**. 
**catatan**  
Jika Anda memasukkan awalan yang merupakan nama folder, Anda harus menggunakan **/** (garis miring ke depan) sebagai karakter terakhir (misalnya, `pictures/`).
   + Untuk mereplikasi semua objek dengan satu atau beberapa tag objek, pilih **Tambahkan tag** dan masukkan pasangan nilai kunci ke dalam kotak. Ulangi prosedur untuk menambahkan tag lainnya. Anda dapat menggabungkan awalan dan tag. Untuk informasi selengkapnya tentang tag objek, lihat [Mengkategorikan objek Anda menggunakan tag](object-tagging.md).

   Skema XML konfigurasi replikasi baru mendukung pemfilteran awalan dan tag serta prioritas aturan. Untuk informasi selengkapnya tentang skema baru, lihat [Pertimbangan kompatibilitas mundur](replication-add-config.md#replication-backward-compat-considerations). Untuk informasi selengkapnya tentang XML yang digunakan dengan API Amazon S3 yang berfungsi di balik antarmuka pengguna, lihat [Elemen file konfigurasi replikasi](replication-add-config.md). Skema baru dijelaskan sebagai *konfigurasi replikasi XML V2*.

1. Di bawah **Tujuan**, pilih bucket tempat Anda ingin Amazon S3 mereplikasi objek.
**catatan**  
Jumlah ember tujuan terbatas pada jumlah Wilayah AWS di partisi tertentu. Partisi adalah pengelompokan Wilayah. AWS Saat ini memiliki tiga partisi: `aws` (Wilayah Standar), `aws-cn` (Wilayah Tiongkok), dan `aws-us-gov` (AWS GovCloud (US) Wilayah). Untuk meminta peningkatan kuota bucket tujuan Anda, Anda dapat menggunakan [kuota layanan](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html).
   + Untuk mereplikasi ke bucket atau beberapa bucket di akun Anda, pilih **Pilih bucket di akun ini**, dan masukkan atau telusuri nama bucket tujuan. 
   + Untuk mereplikasi ke bucket atau bucket yang berbeda Akun AWS, pilih **Tentukan bucket di akun lain**, lalu masukkan ID akun bucket tujuan dan nama bucket. 

     Jika tujuan berada di akun yang berbeda dengan bucket sumber, Anda harus menambahkan kebijakan bucket ke bucket tujuan untuk memberi pemilik akun bucket sumber izin untuk mereplikasi objek. Untuk informasi selengkapnya, lihat [(Opsional) Langkah 3: Memberikan izin saat bucket sumber dan tujuan dimiliki oleh yang berbeda Akun AWS](setting-repl-config-perm-overview.md#setting-repl-config-crossacct).

     Secara opsional, jika Anda ingin membantu menstandarkan kepemilikan objek baru di bucket tujuan, pilih **Ubah kepemilikan objek ke pemilik bucket tujuan**. Untuk informasi selengkapnya tentang metrik ini, lihat [Mengontrol kepemilikan objek dan menonaktifkan bucket ACLs Anda](about-object-ownership.md).
**catatan**  
Jika Penentuan Versi tidak diaktifkan pada bucket tujuan, Anda mendapatkan peringatan yang berisi tombol **Aktifkan Penentuan Versi**. Pilih tombol ini untuk mengaktifkan Penentuan Versi pada bucket.

1. Siapkan peran AWS Identity and Access Management (IAM) yang dapat diasumsikan Amazon S3 untuk mereplikasi objek atas nama Anda.

   Untuk menyiapkan peran IAM, di bagian **peran IAM**, pilih salah satu dari daftar dropdown **peran IAM** berikut ini:
   + Kami sangat merekomendasikan Anda untuk memilih **Buat peran baru** agar Amazon S3 membuat peran IAM baru untuk Anda. Saat Anda menyimpan aturan, kebijakan baru akan dibuat untuk peran IAM yang sesuai dengan bucket sumber dan tujuan yang Anda pilih.
   + Anda dapat memilih untuk menggunakan peran IAM yang sudah ada. Jika melakukannya, Anda harus memilih peran yang memberi Amazon S3 izin yang diperlukan untuk replikasi. Replikasi akan gagal jika peran ini tidak memberi Amazon S3 izin yang memadai untuk mengikuti aturan replikasi Anda.
**penting**  
Saat menambahkan aturan replikasi ke bucket, Anda harus memiliki izin `iam:PassRole` untuk dapat meneruskan peran IAM yang memberi izin Replikasi Amazon S3. Untuk informasi selengkapnya, lihat [Memberikan izin pengguna untuk meneruskan peran ke Layanan AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html) di *Panduan Pengguna IAM*.

1. ****Untuk mereplikasi objek di bucket sumber yang dienkripsi dengan enkripsi sisi server dengan kunci AWS Key Management Service (AWS KMS) (SSE-KMS), di bawah Enkripsi, pilih Replikasi objek yang dienkripsi dengan. AWS KMS**** Di bawah **AWS KMS kunci untuk mengenkripsi objek tujuan** adalah kunci sumber yang dapat digunakan replikasi. Semua kunci sumber KMS disertakan secara default. Untuk mempersempit pilihan kunci KMS, Anda dapat memilih alias atau ID kunci. 

   Objek yang dienkripsi oleh AWS KMS keys yang tidak Anda pilih tidak direplikasi. Kunci KMS atau kumpulan kunci KMS akan dipilih untuk Anda, tetapi Anda dapat memilih kunci KMS jika mau. Untuk informasi tentang menggunakan AWS KMS dengan replikasi, lihat[Mereplikasi objek terenkripsi (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C)](replication-config-for-kms-objects.md).
**penting**  
Saat Anda mereplikasi objek yang dienkripsi AWS KMS, tingkat AWS KMS permintaan berlipat ganda di Wilayah sumber dan meningkat di Wilayah tujuan dengan jumlah yang sama. Tingkat panggilan yang meningkat ini disebabkan oleh cara data dienkripsi ulang dengan menggunakan kunci KMS yang Anda tentukan untuk Wilayah tujuan replikasi. AWS KMS AWS KMS memiliki kuota tarif permintaan per rekening panggilan per Region. Untuk informasi tentang default kuota, lihat [Kuota AWS KMS -Permintaan per Detik: Bervariasi](https://docs.aws.amazon.com/kms/latest/developerguide/limits.html#requests-per-second) di *Panduan Developer AWS Key Management Service *.   
Jika tingkat permintaan `PUT` objek Amazon S3 saat ini selama replikasi lebih dari setengah batas AWS KMS tarif default untuk akun Anda, kami sarankan Anda meminta kenaikan kuota tingkat AWS KMS permintaan Anda. Untuk meminta peningkatan, buat kasus di Pusat Dukungan di [Hubungi Kami](https://aws.amazon.com/contact-us/). Misalnya, misalkan tingkat permintaan `PUT` objek Anda saat ini adalah 1.000 permintaan per detik dan Anda gunakan AWS KMS untuk mengenkripsi objek Anda. Dalam hal ini, kami menyarankan agar Anda meminta Dukungan untuk meningkatkan batas AWS KMS tarif Anda menjadi 2.500 permintaan per detik, baik di Wilayah sumber maupun tujuan Anda (jika berbeda), untuk memastikan bahwa tidak ada pembatasan oleh. AWS KMS  
Untuk melihat rasio permintaan `PUT` objek Anda di bucket sumber, lihat `PutRequests` di metrik CloudWatch permintaan Amazon untuk Amazon S3. Untuk informasi tentang melihat CloudWatch metrik, lihat[Menggunakan konsol S3](configure-request-metrics-bucket.md#configure-metrics).

   Jika Anda memilih untuk mereplikasi objek yang dienkripsi AWS KMS, lakukan hal berikut: 

   1. Di bawah **AWS KMS key untuk mengenkripsi objek tujuan**, tentukan kunci KMS Anda dengan salah satu cara berikut:
     + Untuk memilih dari daftar kunci KMS yang tersedia, pilih **Pilih dari AWS KMS keys**, dan pilih **Kunci KMS** Anda dari daftar kunci yang tersedia.

       Kunci Kunci yang dikelola AWS (`aws/s3`) dan kunci terkelola pelanggan Anda muncul dalam daftar ini. Untuk informasi selengkapnya tentang CMK, lihat [Kunci pelanggan dan AWS kunci](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#key-mgmt) di *AWS Key Management Service Panduan Pengembang*.
     + Untuk memasukkan kunci KMS Amazon Resource Name (ARN), pilih **Masukkan ARN AWS KMS key **, dan masukkan ARN kunci KMS Anda di bidang yang muncul. Ini akan mengenkripsi replika di bucket tujuan. **Anda dapat menemukan ARN untuk kunci KMS Anda di [Konsol IAM, di bawah](https://console.aws.amazon.com/iam/) kunci Enkripsi.** 
     + Untuk membuat kunci terkelola pelanggan baru di AWS KMS konsol, pilih **Buat kunci KMS**.

       Untuk informasi selengkapnya tentang membuat AWS KMS key, lihat [Membuat kunci](https://docs.aws.amazon.com//kms/latest/developerguide/create-keys.html) di *Panduan AWS Key Management Service Pengembang*.
**penting**  
Anda hanya dapat menggunakan tombol KMS yang diaktifkan Wilayah AWS sama dengan bucket. Saat memilih **Pilih dari kunci KMS Anda**, konsol S3 hanya mencantumkan 100 kunci KMS per Wilayah. Jika Anda memiliki lebih dari 100 tombol KMS di Wilayah yang sama, Anda hanya dapat melihat 100 kunci KMS pertama di konsol S3. Untuk menggunakan kunci KMS yang tidak tercantum di konsol, pilih **Masukkan ARN AWS KMS key **, lalu masukkan ARN kunci KMS Anda.  
Saat Anda menggunakan enkripsi sisi server AWS KMS key untuk Amazon S3, Anda harus memilih kunci KMS enkripsi simetris. Amazon S3 hanya mendukung kunci KMS enkripsi simetris dan tidak mendukung kunci KMS asimetris. Untuk informasi selengkapnya, lihat [Mengidentifikasi tombol KMS simetris dan asimetris](https://docs.aws.amazon.com//kms/latest/developerguide/find-symm-asymm.html) dalam *Panduan Pengembang AWS Key Management Service *.

     Untuk informasi selengkapnya tentang membuat AWS KMS key, lihat [Membuat kunci](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) di *Panduan AWS Key Management Service Pengembang*. Untuk informasi selengkapnya tentang penggunaan AWS KMS dengan Amazon S3, lihat. [Menggunakan enkripsi sisi server dengan AWS KMS kunci (SSE-KMS)](UsingKMSEncryption.md)

1. Di Bawah **Kelas penyimpanan tujuan**, jika Anda ingin mereplikasi data Anda ke dalam kelas penyimpanan tertentu di tujuan, pilih **Ubah kelas penyimpanan untuk objek yang direplikasi**. Kemudian pilih kelas penyimpanan yang ingin Anda gunakan untuk objek yang direplikasi di tujuan. Jika Anda tidak memilih opsi ini, kelas penyimpanan untuk objek yang direplikasi adalah kelas yang sama dengan objek aslinya.

1. Anda memiliki opsi tambahan berikut saat mengatur **Opsi replikasi tambahan**:
   + Jika Anda ingin mengaktifkan Kontrol Waktu Replikasi S3 (S3 RTC) dalam konfigurasi replikasi Anda, pilih Kontrol Waktu Replikasi (**RTC)**. Untuk informasi selengkapnya tentang metrik ini, lihat [Memenuhi persyaratan kepatuhan dengan Kontrol Waktu Replikasi S3](replication-time-control.md).
   + Jika Anda ingin mengaktifkan metrik replikasi S3 dalam konfigurasi replikasi Anda, pilih **Metrik dan peristiwa replikasi**. Untuk informasi selengkapnya, lihat [Memantau replikasi dengan metrik, pemberitahuan acara, dan status](replication-metrics.md).
   + Jika Anda ingin mengaktifkan replikasi penanda hapus dalam konfigurasi replikasi Anda, pilih **Replikasi penanda hapus**. Untuk informasi selengkapnya, lihat [Mereplikasi penanda hapus di antara bucket](delete-marker-replication.md).
   + Jika Anda ingin mengaktifkan sinkronisasi modifikasi replika Amazon S3 dalam konfigurasi replikasi Anda, pilih **Sinkronisasi modifikasi replika**. Untuk informasi selengkapnya, lihat [Mereplikasi perubahan metadata dengan sinkronisasi modifikasi replika](replication-for-metadata-changes.md).
**catatan**  
Ketika Anda menggunakan metrik Replikasi S3 atau S3 RTC, biaya tambahan berlaku.

1. Untuk menyelesaikan, pilih **Simpan**.

1. Setelah menyimpan aturan, Anda dapat mengedit, mengaktifkan, menonaktifkan, atau menghapus aturan Anda dengan memilih aturan dan memilih **Edit aturan**. 

## Menggunakan AWS CLI
<a name="replication-ex1-cli"></a>

Untuk menggunakan AWS CLI untuk mengatur replikasi ketika bucket sumber dan tujuan dimiliki oleh yang sama Akun AWS, Anda melakukan hal berikut:
+ Buat ember sumber dan tujuan.
+ Aktifkan pembuatan versi pada ember.
+ Buat peran AWS Identity and Access Management (IAM) yang memberikan izin Amazon S3 untuk mereplikasi objek.
+ Tambahkan konfigurasi replikasi ke bucket sumber.

Untuk memverifikasi konfigurasi, Anda mengujinya.

**Untuk mengatur replikasi ketika bucket sumber dan tujuan dimiliki oleh yang sama Akun AWS**

1. Atur profil kredensial untuk AWS CLI. Contoh ini menggunakan nama profil `acctA`. Untuk informasi tentang menyetel profil kredensi dan menggunakan profil bernama, lihat [Pengaturan konfigurasi dan file kredensi](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) di *AWS Command Line Interface Panduan Pengguna*. 
**penting**  
Profil yang Anda gunakan untuk contoh ini harus memiliki izin yang diperlukan. Misalnya, dalam konfigurasi replikasi, Anda menentukan peran IAM yang dapat diasumsikan oleh Amazon S3. Anda dapat melakukan ini hanya jika profil yang Anda gunakan memiliki `iam:PassRole` izin. Untuk informasi selengkapnya, lihat [Memberikan izin pengguna untuk meneruskan peran ke Layanan AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html) dalam *Panduan Pengguna IAM*. Jika Anda menggunakan kredensial administrator untuk membuat profil bernama, Anda dapat melakukan semua tugas. 

1. Buat bucket sumber dan aktifkan pembuatan versi di atasnya dengan menggunakan perintah berikut AWS CLI . Untuk menggunakan perintah ini, ganti *`user input placeholders`* dengan informasi Anda sendiri. 

   `create-bucket`Perintah berikut membuat bucket sumber bernama `amzn-s3-demo-source-bucket` di Wilayah AS Timur (Virginia N.) (`us-east-1`):

   

   ```
   aws s3api create-bucket \
   --bucket amzn-s3-demo-source-bucket \
   --region us-east-1 \
   --profile acctA
   ```

   `put-bucket-versioning`Perintah berikut memungkinkan S3 Versioning pada bucket: `amzn-s3-demo-source-bucket` 

   ```
   aws s3api put-bucket-versioning \
   --bucket amzn-s3-demo-source-bucket \
   --versioning-configuration Status=Enabled \
   --profile acctA
   ```

1. Buat bucket tujuan dan aktifkan pembuatan versi dengan menggunakan perintah berikut AWS CLI . Untuk menggunakan perintah ini, ganti *`user input placeholders`* dengan informasi Anda sendiri. 
**catatan**  
Untuk menyiapkan konfigurasi replikasi saat bucket sumber dan tujuan berada dalam kondisi yang sama Akun AWS, Anda menggunakan profil yang sama untuk bucket sumber dan tujuan. Contoh ini menggunakan `acctA`.   
Untuk menguji konfigurasi replikasi ketika bucket dimiliki oleh yang berbeda Akun AWS, tentukan profil yang berbeda untuk setiap akun. Misalnya, gunakan `acctB` profil untuk bucket tujuan.

   

   `create-bucket`Perintah berikut membuat bucket tujuan bernama `amzn-s3-demo-destination-bucket` di Wilayah AS Barat (Oregon) (`us-west-2`):

   ```
   aws s3api create-bucket \
   --bucket amzn-s3-demo-destination-bucket \
   --region us-west-2 \
   --create-bucket-configuration LocationConstraint=us-west-2 \
   --profile acctA
   ```

   `put-bucket-versioning`Perintah berikut memungkinkan S3 Versioning pada bucket: `amzn-s3-demo-destination-bucket` 

   ```
   aws s3api put-bucket-versioning \
   --bucket amzn-s3-demo-destination-bucket \
   --versioning-configuration Status=Enabled \
   --profile acctA
   ```

1. Buat peran IAM. Anda menentukan peran ini dalam konfigurasi replikasi yang Anda tambahkan ke bucket sumber nanti. Amazon S3 mengasumsikan peran ini untuk mereplikasi objek atas nama Anda. Anda membuat peran IAM dalam dua langkah:
   + Buat peran.
   + Lampirkan kebijakan izin pada peran tersebut.

   1. Buat peran IAM.

      1. Salin kebijakan kepercayaan berikut dan simpan di berkas dengan nama `s3-role-trust-policy.json` di direktori saat ini di komputer lokal Anda. Kebijakan ini memberikan izin utama layanan Amazon S3 untuk mengambil peran.

------
#### [ JSON ]

****  

         ```
         {
            "Version":"2012-10-17",		 	 	 
            "Statement":[
               {
                  "Effect":"Allow",
                  "Principal":{
                     "Service":"s3.amazonaws.com"
                  },
                  "Action":"sts:AssumeRole"
               }
            ]
         }
         ```

------

      1. Jalankan perintah berikut untuk membuat peran.

         ```
         $ aws iam create-role \
         --role-name replicationRole \
         --assume-role-policy-document file://s3-role-trust-policy.json  \
         --profile acctA
         ```

   1. Lampirkan kebijakan izin pada peran tersebut.

      1. Salin kebijakan kepercayaan berikut dan simpan di berkas dengan nama `s3-role-permissions-policy.json` di direktori saat ini di komputer lokal Anda. Kebijakan ini memberikan izin untuk berbagai bucket dan tindakan objek Amazon S3. 

------
#### [ JSON ]

****  

         ```
         {
            "Version":"2012-10-17",		 	 	 
            "Statement":[
               {
                  "Effect":"Allow",
                  "Action":[
                     "s3:GetObjectVersionForReplication",
                     "s3:GetObjectVersionAcl",
                     "s3:GetObjectVersionTagging"
                  ],
                  "Resource":[
                     "arn:aws:s3:::amzn-s3-demo-source-bucket/*"
                  ]
               },
               {
                  "Effect":"Allow",
                  "Action":[
                     "s3:ListBucket",
                     "s3:GetReplicationConfiguration"
                  ],
                  "Resource":[
                     "arn:aws:s3:::amzn-s3-demo-source-bucket"
                  ]
               },
               {
                  "Effect":"Allow",
                  "Action":[
                     "s3:ReplicateObject",
                     "s3:ReplicateDelete",
                     "s3:ReplicateTags"
                  ],
                  "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
               }
            ]
         }
         ```

------
**catatan**  
Jika Anda ingin mereplikasi objek terenkripsi, Anda juga harus memberikan izin kunci AWS Key Management Service (AWS KMS) yang diperlukan. Untuk informasi selengkapnya, lihat [Mereplikasi objek terenkripsi (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C)](replication-config-for-kms-objects.md).
Untuk menggunakan Object Lock dengan replikasi, Anda harus memberikan dua izin tambahan pada bucket S3 sumber dalam peran AWS Identity and Access Management (IAM) yang Anda gunakan untuk mengatur replikasi. Dua izin tambahan tersebut adalah `s3:GetObjectRetention` dan`s3:GetObjectLegalHold`. Jika peran tersebut memiliki pernyataan izin `s3:Get*`, pernyataan itu memenuhi persyaratan. Untuk informasi selengkapnya, lihat [Menggunakan Kunci Objek dengan Replikasi S3](object-lock-managing.md#object-lock-managing-replication). 

      1. Jalankan perintah berikut untuk membuat kebijakan dan melampirkannya ke peran. Ganti *`user input placeholders`* dengan informasi Anda sendiri.

         ```
         $ aws iam put-role-policy \
         --role-name replicationRole \
         --policy-document file://s3-role-permissions-policy.json \
         --policy-name replicationRolePolicy \
         --profile acctA
         ```

1. Tambahkan konfigurasi replikasi ke bucket sumber. 

   1. Meskipun Amazon S3 API mengharuskan Anda menentukan konfigurasi replikasi sebagai XHTML, Anda harus menentukan konfigurasi replikasi sebagai JSON. AWS CLI Simpan JSON berikut dalam file yang disebut `replication.json` ke direktori lokal di komputer Anda.

      ```
      {
        "Role": "IAM-role-ARN",
        "Rules": [
          {
            "Status": "Enabled",
            "Priority": 1,
            "DeleteMarkerReplication": { "Status": "Disabled" },
            "Filter" : { "Prefix": "Tax"},
            "Destination": {
              "Bucket": "arn:aws:s3:::amzn-s3-demo-destination-bucket"
            }
          }
        ]
      }
      ```

   1. Perbarui JSON dengan mengganti nilai untuk `amzn-s3-demo-destination-bucket` dan `IAM-role-ARN` dengan informasi Anda sendiri. Simpan perubahan.

   1. Jalankan `put-bucket-replication` perintah berikut untuk menambahkan konfigurasi replikasi ke bucket sumber Anda. Pastikan untuk memberikan nama bucket sumber:

      ```
      $ aws s3api put-bucket-replication \
      --replication-configuration file://replication.json \
      --bucket amzn-s3-demo-source-bucket \
      --profile acctA
      ```

   Untuk mengambil konfigurasi replikasi, gunakan perintah: `get-bucket-replication`

   ```
   $ aws s3api get-bucket-replication \
   --bucket amzn-s3-demo-source-bucket \
   --profile acctA
   ```

1. Uji pengaturan di konsol Amazon S3, dengan melakukan langkah-langkah berikut:

   1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon S3 di. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

   1. Di panel navigasi kiri, pilih **Bucket**. Dalam daftar **Bucket tujuan umum**, pilih bucket sumber.

   1. Di bucket sumber, buat folder bernama`Tax`. 

   1. Tambahkan objek sampel ke `Tax` folder di ember sumber. 
**catatan**  
Jumlah waktu yang dibutuhkan Amazon S3 untuk mereplikasi objek tergantung pada ukuran objek. Untuk informasi tentang cara melihat status replikasi, lihat [Mendapatkan informasi status replikasi](replication-status.md).

      Di bucket tujuan, pastikan hal berikut:
      + Bahwa Amazon S3 mereplikasi objek.
      + Bahwa benda-benda itu adalah replika. Pada tab **Properties** untuk objek Anda, gulir ke bawah ke bagian **Ikhtisar manajemen Object**. Di bawah **Konfigurasi manajemen**, lihat nilai di bawah Status **replikasi.** Pastikan bahwa nilai ini diatur ke`REPLICA`.
      + Bahwa replika dimiliki oleh akun bucket sumber. Anda dapat memverifikasi kepemilikan objek pada tab **Izin** untuk objek Anda. 

        Jika bucket sumber dan tujuan dimiliki oleh akun yang berbeda, Anda dapat menambahkan konfigurasi opsional untuk memberi tahu Amazon S3 agar mengubah kepemilikan replika ke akun tujuan. Sebagai contoh, lihat [Cara mengganti pemilik replika](replication-change-owner.md#replication-walkthrough-3). 

## Menggunakan AWS SDKs
<a name="replication-ex1-sdk"></a>

Gunakan contoh kode berikut untuk menambahkan konfigurasi replikasi ke bucket dengan AWS SDK untuk Java dan AWS SDK untuk .NET, masing-masing.

**catatan**  
Jika Anda ingin mereplikasi objek terenkripsi, Anda juga harus memberikan izin kunci AWS Key Management Service (AWS KMS) yang diperlukan. Untuk informasi selengkapnya, lihat [Mereplikasi objek terenkripsi (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C)](replication-config-for-kms-objects.md).
Untuk menggunakan Object Lock dengan replikasi, Anda harus memberikan dua izin tambahan pada bucket S3 sumber dalam peran AWS Identity and Access Management (IAM) yang Anda gunakan untuk mengatur replikasi. Dua izin tambahan tersebut adalah `s3:GetObjectRetention` dan`s3:GetObjectLegalHold`. Jika peran tersebut memiliki pernyataan izin `s3:Get*`, pernyataan itu memenuhi persyaratan. Untuk informasi selengkapnya, lihat [Menggunakan Kunci Objek dengan Replikasi S3](object-lock-managing.md#object-lock-managing-replication). 

------
#### [ Java ]

Untuk menambahkan konfigurasi replikasi ke bucket lalu mengambil dan memverifikasi konfigurasi menggunakan AWS SDK for Java, Anda dapat menggunakan S3Client untuk mengelola pengaturan replikasi secara terprogram.

Untuk contoh cara mengonfigurasi replikasi dengan AWS SDK for Java, [lihat Menyetel konfigurasi replikasi pada bucket di Referensi](https://docs.aws.amazon.com/AmazonS3/latest/API/s3_example_s3_PutBucketReplication_section.html) API Amazon *S3*.

------
#### [ C\$1 ]

Contoh AWS SDK untuk .NET kode berikut menambahkan konfigurasi replikasi ke bucket dan kemudian mengambilnya. Untuk menggunakan kode ini, berikan nama untuk bucket Anda dan Amazon Resource Name (ARN) untuk peran IAM Anda. Untuk informasi tentang menyiapkan dan menjalankan contoh kode, lihat [Memulai AWS SDK untuk .NET di](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-config.html) *Panduan AWS SDK untuk .NET Pengembang*. 

```
using Amazon;
using Amazon.S3;
using Amazon.S3.Model;
using System;
using System.Threading.Tasks;

namespace Amazon.DocSamples.S3
{
    class CrossRegionReplicationTest
    {
        private const string sourceBucket = "*** source bucket ***";
        // Bucket ARN example - arn:aws:s3:::destinationbucket
        private const string destinationBucketArn = "*** destination bucket ARN ***";
        private const string roleArn = "*** IAM Role ARN ***";
        // Specify your bucket region (an example region is shown).
        private static readonly RegionEndpoint sourceBucketRegion = RegionEndpoint.USWest2;
        private static IAmazonS3 s3Client;
        public static void Main()
        {
            s3Client = new AmazonS3Client(sourceBucketRegion);
            EnableReplicationAsync().Wait();
        }
        static async Task EnableReplicationAsync()
        {
            try
            {
                ReplicationConfiguration replConfig = new ReplicationConfiguration
                {
                    Role = roleArn,
                    Rules =
                        {
                            new ReplicationRule
                            {
                                Prefix = "Tax",
                                Status = ReplicationRuleStatus.Enabled,
                                Destination = new ReplicationDestination
                                {
                                    BucketArn = destinationBucketArn
                                }
                            }
                        }
                };

                PutBucketReplicationRequest putRequest = new PutBucketReplicationRequest
                {
                    BucketName = sourceBucket,
                    Configuration = replConfig
                };

                PutBucketReplicationResponse putResponse = await s3Client.PutBucketReplicationAsync(putRequest);

                // Verify configuration by retrieving it.
                await RetrieveReplicationConfigurationAsync(s3Client);
            }
            catch (AmazonS3Exception e)
            {
                Console.WriteLine("Error encountered on server. Message:'{0}' when writing an object", e.Message);
            }
            catch (Exception e)
            {
                Console.WriteLine("Unknown encountered on server. Message:'{0}' when writing an object", e.Message);
            }
        }
        private static async Task RetrieveReplicationConfigurationAsync(IAmazonS3 client)
        {
            // Retrieve the configuration.
            GetBucketReplicationRequest getRequest = new GetBucketReplicationRequest
            {
                BucketName = sourceBucket
            };
            GetBucketReplicationResponse getResponse = await client.GetBucketReplicationAsync(getRequest);
            // Print.
            Console.WriteLine("Printing replication configuration information...");
            Console.WriteLine("Role ARN: {0}", getResponse.Configuration.Role);
            foreach (var rule in getResponse.Configuration.Rules)
            {
                Console.WriteLine("ID: {0}", rule.Id);
                Console.WriteLine("Prefix: {0}", rule.Prefix);
                Console.WriteLine("Status: {0}", rule.Status);
            }
        }
    }
}
```

------

# Mengkonfigurasi replikasi untuk bucket di akun yang berbeda
<a name="replication-walkthrough-2"></a>

Replikasi langsung adalah penyalinan objek otomatis dan asinkron di seluruh ember dalam hal yang sama atau berbeda. Wilayah AWS Replikasi langsung menyalin objek dan pembaruan objek yang baru dibuat dari bucket sumber ke bucket atau bucket tujuan. Untuk informasi selengkapnya, lihat [Mereplikasi objek di dalam dan di seluruh Wilayah](replication.md).

Saat mengonfigurasi replikasi, Anda menambahkan aturan replikasi ke bucket sumber. Aturan replikasi menentukan objek bucket sumber mana yang akan direplikasi dan bucket tujuan atau bucket tempat objek yang direplikasi disimpan. Anda dapat membuat aturan untuk mereplikasi semua objek dalam bucket atau subset objek dengan awalan nama kunci tertentu, satu atau beberapa tag objek, atau keduanya. Bucket tujuan bisa Akun AWS sama dengan bucket sumber, atau bisa juga di akun yang berbeda.

Jika Anda menentukan ID versi objek yang akan dihapus, Amazon S3 menghapus versi objek tersebut dalam bucket sumber. Tetapi ini tidak mereplikasi penghapusan di bucket tujuan. Dengan kata lain, itu tidak menghapus versi objek yang sama dari bucket tujuan. Ini melindungi data dari penghapusan berbahaya.

Ketika Anda menambahkan aturan replikasi ke bucket, aturan diaktifkan secara default, sehingga aturan mulai bekerja segera setelah Anda menyimpannya. 

Menyiapkan replikasi langsung ketika bucket sumber dan tujuan dimiliki oleh berbeda Akun AWS mirip dengan menyiapkan replikasi ketika kedua bucket dimiliki oleh akun yang sama. Namun, ada beberapa perbedaan saat Anda mengonfigurasi replikasi dalam skenario lintas akun: 
+ Pemilik bucket tujuan harus memberikan izin kepada pemilik bucket sumber untuk mereplikasi objek dalam kebijakan bucket tujuan. 
+ Jika Anda mereplikasi objek yang dienkripsi dengan enkripsi sisi server dengan kunci AWS Key Management Service (AWS KMS) (SSE-KMS) dalam skenario lintas akun, pemilik kunci KMS harus memberikan izin pemilik bucket sumber untuk menggunakan kunci KMS. Untuk informasi selengkapnya, lihat [Memberikan izin tambahan untuk skenario lintas akun](replication-config-for-kms-objects.md#replication-kms-cross-acct-scenario). 
+ Secara default, objek yang direplikasi dimiliki oleh pemilik bucket sumber. Dalam skenario lintas akun, Anda mungkin ingin mengonfigurasi replikasi untuk mengubah kepemilikan objek yang direplikasi menjadi pemilik bucket tujuan. Untuk informasi selengkapnya, lihat [Mengubah pemilik replika](replication-change-owner.md).

**Untuk mengonfigurasi replikasi saat bucket sumber dan tujuan dimiliki oleh yang berbeda Akun AWS**

1. Dalam contoh ini, Anda membuat bucket sumber dan tujuan dalam dua yang berbeda Akun AWS. Anda harus memiliki dua profil kredensi yang ditetapkan untuk. AWS CLI Contoh ini menggunakan `acctA` dan `acctB` untuk nama-nama profil tersebut. Untuk informasi tentang menyetel profil kredensi dan menggunakan profil bernama, lihat [Pengaturan konfigurasi dan file kredensi](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) di *AWS Command Line Interface Panduan Pengguna*. 

1. Ikuti step-by-step instruksi [Mengkonfigurasi replikasi untuk bucket di akun yang sama](replication-walkthrough1.md) dengan perubahan berikut:
   + Untuk semua AWS CLI perintah yang terkait dengan aktivitas bucket sumber (seperti membuat bucket sumber, mengaktifkan pembuatan versi, dan membuat peran IAM), gunakan profil. `acctA` Gunakan `acctB` profil untuk membuat bucket tujuan. 
   + Pastikan kebijakan izin untuk peran IAM menentukan bucket sumber dan tujuan yang Anda buat untuk contoh ini.

1. Di konsol, tambahkan kebijakan bucket berikut pada bucket tujuan agar pemilik bucket sumber dapat mereplikasi objek. Untuk petunjuk, lihat [Menambahkan kebijakan bucket dengan menggunakan konsol Amazon S3](add-bucket-policy.md). Pastikan untuk mengedit kebijakan dengan memberikan Akun AWS ID pemilik bucket sumber, nama peran IAM, dan nama bucket tujuan. 
**catatan**  
Untuk menggunakan contoh berikut, ganti `user input placeholders` dengan informasi Anda sendiri. Ganti `amzn-s3-demo-destination-bucket` dengan nama bucket tujuan Anda. Ganti `source-bucket-account-ID:role/service-role/source-account-IAM-role` di IAM Amazon Resource Name (ARN) dengan peran IAM yang Anda gunakan untuk konfigurasi replikasi ini.  
Jika Anda membuat peran layanan IAM secara manual, setel jalur peran di ARN IAM sebagai`role/service-role/`, seperti yang ditunjukkan dalam contoh kebijakan berikut. Untuk informasi selengkapnya, lihat [IAM ARNs](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns) di *Panduan Pengguna IAM*. 

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "",
       "Statement": [
           {
               "Sid": "Set-permissions-for-objects",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:role/service-role/source-account-IAM-role"
               },
               "Action": [
                   "s3:ReplicateObject",
                   "s3:ReplicateDelete"
               ],
               "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
           },
           {
               "Sid": "Set-permissions-on-bucket",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:role/service-role/source-account-IAM-role"
               },
               "Action": [
                   "s3:GetBucketVersioning",
                   "s3:PutBucketVersioning"
               ],
               "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket"
           }
       ]
   }
   ```

------

1. (Opsional) Jika Anda mereplikasi objek yang dienkripsi dengan SSE-KMS, pemilik kunci KMS harus memberikan izin pemilik bucket sumber untuk menggunakan kunci KMS. Untuk informasi selengkapnya, lihat [Memberikan izin tambahan untuk skenario lintas akun](replication-config-for-kms-objects.md#replication-kms-cross-acct-scenario).

1. (Opsional) Dalam replikasi, pemilik objek sumber memiliki replika secara default. Jika bucket sumber dan tujuan dimiliki oleh yang berbeda Akun AWS, Anda dapat menambahkan pengaturan konfigurasi opsional untuk mengubah kepemilikan replika ke bucket Akun AWS yang memiliki tujuan. Ini termasuk pemberian izin `ObjectOwnerOverrideToBucketOwner`. Untuk informasi selengkapnya, lihat [Mengubah pemilik replika](replication-change-owner.md).

# Mengubah pemilik replika
<a name="replication-change-owner"></a>

Dalam replikasi, pemilik objek sumber juga memiliki replika secara default. Namun, ketika bucket sumber dan tujuan dimiliki oleh yang berbeda Akun AWS, Anda mungkin ingin mengubah kepemilikan replika. Misalnya, Anda mungkin ingin mengubah kepemilikan untuk membatasi akses ke replika objek. Dalam konfigurasi replikasi Anda, Anda dapat menambahkan pengaturan konfigurasi opsional untuk mengubah kepemilikan replika ke bucket Akun AWS yang memiliki tujuan. 

Untuk mengubah pemilik replika, Anda melakukan hal berikut:
+ Tambahkan opsi *penggantian pemilik* ke konfigurasi replikasi untuk memberi tahu Amazon S3 agar mengubah kepemilikan replika. 
+ Berikan Amazon S3 `s3:ObjectOwnerOverrideToBucketOwner` izin untuk mengubah kepemilikan replika. 
+ Tambahkan `s3:ObjectOwnerOverrideToBucketOwner` izin dalam kebijakan bucket tujuan untuk mengizinkan perubahan kepemilikan replika. `s3:ObjectOwnerOverrideToBucketOwner`Izin tersebut memungkinkan pemilik bucket tujuan untuk menerima kepemilikan replika objek.

Untuk informasi selengkapnya, lihat [Pertimbangan untuk opsi penggantian kepemilikan](#repl-ownership-considerations) dan [Menambahkan opsi penggantian pemilik ke konfigurasi replikasi](#repl-ownership-owneroverride-option). Untuk contoh kerja dengan step-by-step instruksi, lihat[Cara mengganti pemilik replika](#replication-walkthrough-3).

**penting**  
Alih-alih menggunakan opsi penggantian pemilik, Anda dapat menggunakan setelan yang diberlakukan pemilik bucket untuk Kepemilikan Objek. Saat Anda menggunakan replikasi dan bucket sumber dan tujuan dimiliki oleh berbeda Akun AWS, pemilik bucket bucket tujuan dapat menggunakan pengaturan yang diberlakukan pemilik bucket untuk Kepemilikan Objek untuk mengubah kepemilikan replika ke bucket Akun AWS yang memiliki tujuan. Pengaturan ini menonaktifkan daftar kontrol akses objek (ACLs).   
Pengaturan yang diberlakukan pemilik bucket meniru perilaku override pemilik yang ada tanpa memerlukan izin. `s3:ObjectOwnerOverrideToBucketOwner` Semua objek yang direplikasi ke bucket tujuan dengan pengaturan yang diberlakukan pemilik bucket dimiliki oleh pemilik bucket tujuan. Untuk informasi selengkapnya tentang Kepemilikan Objek, lihat [Mengontrol kepemilikan objek dan menonaktifkan bucket ACLs Anda](about-object-ownership.md).

## Pertimbangan untuk opsi penggantian kepemilikan
<a name="repl-ownership-considerations"></a>

Ketika Anda mengonfigurasi opsi penggantian kepemilikan, pertimbangan berikut berlaku:
+ Secara default, pemilik objek sumber juga memiliki replika. Amazon S3 mereplikasi versi objek dan ACL yang terkait dengannya.

  Jika Anda menambahkan opsi penggantian pemilik ke konfigurasi replikasi Anda, Amazon S3 hanya mereplikasi versi objek, bukan ACL. Selain itu, Amazon S3 tidak mereplikasi perubahan berikutnya ke objek sumber ACL. Amazon S3 menetapkan ACL pada replika yang memberikan kontrol penuh kepada pemilik bucket tujuan. 
+  Saat Anda memperbarui konfigurasi replikasi untuk mengaktifkan atau menonaktifkan penggantian pemilik, perilaku berikut akan terjadi:
  + Jika Anda menambahkan opsi penggantian pemilik ke konfigurasi replikasi:

    Saat Amazon S3 mereplikasi versi objek, ia membuang ACL yang terkait dengan objek sumber. Sebagai gantinya, Amazon S3 menetapkan ACL pada replika, memberikan kontrol penuh kepada pemilik bucket tujuan. Amazon S3 tidak mereplikasi perubahan selanjutnya ke objek sumber ACL. Namun, perubahan ACL ini tidak berlaku untuk versi objek yang direplikasi sebelum Anda menetapkan opsi penggantian pemilik. Pembaruan ACL pada objek sumber yang direplikasi sebelum penggantian pemilik telah ditetapkan untuk terus direplikasi (karena objek dan replikanya terus memiliki pemilik yang sama).
  + Jika Anda menghapus opsi penggantian pemilik dari konfigurasi replikasi:

    Amazon S3 mereplikasi objek baru yang muncul di bucket sumber dan yang ACLs terkait dengan bucket tujuan. Untuk objek yang direplikasi sebelum Anda menghapus penggantian pemilik, Amazon S3 tidak mereplikasi ACLs karena perubahan kepemilikan objek yang dibuat Amazon S3 tetap berlaku. Artinya, ACLs letakkan pada versi objek yang direplikasi ketika override pemilik disetel terus tidak direplikasi.

## Menambahkan opsi penggantian pemilik ke konfigurasi replikasi
<a name="repl-ownership-owneroverride-option"></a>

**Awas**  
Tambahkan opsi penggantian pemilik hanya jika bucket sumber dan tujuan dimiliki oleh yang berbeda. Akun AWS Amazon S3 tidak memeriksa apakah bucket dimiliki oleh akun yang sama atau berbeda. Jika Anda menambahkan override pemilik saat kedua bucket dimiliki oleh yang sama Akun AWS, Amazon S3 menerapkan penggantian pemilik. Opsi ini memberikan izin penuh kepada pemilik bucket tujuan dan tidak mereplikasi pembaruan berikutnya ke daftar kontrol akses objek sumber (). ACLs Pemilik replika dapat langsung mengubah ACL yang terkait dengan replika dengan permintaan `PutObjectAcl`, tetapi tidak melalui replikasi.

Untuk menentukan opsi penggantian pemilik, tambahkan berikut ini ke setiap elemen `Destination`: 
+ Elemen `AccessControlTranslation`, yang memberi tahu Amazon S3 untuk mengubah kepemilikan replika
+ `Account`Elemen, yang menentukan Akun AWS pemilik bucket tujuan 

```
<ReplicationConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    ...
    <Destination>
      ...
      <AccessControlTranslation>
           <Owner>Destination</Owner>
       </AccessControlTranslation>
      <Account>destination-bucket-owner-account-id</Account>
    </Destination>
  </Rule>
</ReplicationConfiguration>
```

Contoh konfigurasi replikasi berikut memberitahu Amazon S3 untuk mereplikasi objek yang memiliki key *`Tax`* prefix ke bucket tujuan dan mengubah `amzn-s3-demo-destination-bucket` kepemilikan replika. Untuk menggunakan contoh ini, ganti `user input placeholders`dengan informasi Anda sendiri.

```
<?xml version="1.0" encoding="UTF-8"?>
<ReplicationConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
   <Role>arn:aws:iam::account-id:role/role-name</Role>
   <Rule>
      <ID>Rule-1</ID>
      <Priority>1</Priority>
      <Status>Enabled</Status>
      <DeleteMarkerReplication>
         <Status>Disabled</Status>
      </DeleteMarkerReplication>
      <Filter>
         <Prefix>Tax</Prefix>
      </Filter>
      <Destination>
         <Bucket>arn:aws:s3:::amzn-s3-demo-destination-bucket</Bucket>
         <Account>destination-bucket-owner-account-id</Account>
         <AccessControlTranslation>
            <Owner>Destination</Owner>
         </AccessControlTranslation>
      </Destination>
   </Rule>
</ReplicationConfiguration>
```

## Memberi Amazon S3 izin untuk mengubah kepemilikan replika
<a name="repl-ownership-add-role-permission"></a>

Berikan izin Amazon S3 untuk mengubah kepemilikan replika dengan menambahkan izin untuk `s3:ObjectOwnerOverrideToBucketOwner` tindakan dalam kebijakan izin yang terkait dengan peran (IAM). AWS Identity and Access Management Peran ini adalah peran IAM yang Anda tentukan dalam konfigurasi replikasi yang memungkinkan Amazon S3 untuk mengasumsikan dan mereplikasi objek atas nama Anda. Untuk menggunakan contoh berikut, ganti `amzn-s3-demo-destination-bucket` dengan nama bucket tujuan.

```
...
{
    "Effect":"Allow",
         "Action":[
       "s3:ObjectOwnerOverrideToBucketOwner"
    ],
    "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
}
...
```

## Menambahkan izin dalam kebijakan bucket tujuan untuk memungkinkan perubahan kepemilikan replika
<a name="repl-ownership-accept-ownership-b-policy"></a>

Pemilik bucket tujuan harus memberikan izin bucket sumber untuk mengubah kepemilikan replika. Pemilik bucket tujuan memberi pemilik bucket sumber izin untuk tindakan `s3:ObjectOwnerOverrideToBucketOwner`. Izin ini memungkinkan pemilik bucket tujuan untuk menerima kepemilikan replika objek. Contoh pernyataan kebijakan bucket berikut menunjukkan cara melakukannya. Untuk menggunakan contoh ini, ganti `user input placeholders`dengan informasi Anda sendiri.

```
...
{
    "Sid":"1",
    "Effect":"Allow",
    "Principal":{"AWS":"source-bucket-account-id"},
    "Action":["s3:ObjectOwnerOverrideToBucketOwner"],
    "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
}
...
```

## Cara mengganti pemilik replika
<a name="replication-walkthrough-3"></a>

Jika bucket sumber dan tujuan dalam konfigurasi replikasi dimiliki oleh berbeda Akun AWS, Anda dapat memberi tahu Amazon S3 untuk mengubah kepemilikan replika ke bucket yang memiliki tujuan. Akun AWS Contoh berikut menunjukkan cara menggunakan konsol Amazon S3, AWS Command Line Interface (AWS CLI), dan AWS SDKs untuk mengubah kepemilikan replika. 

### Menggunakan konsol S3
<a name="replication-ex3-console"></a>

Untuk step-by-step instruksi, lihat[Mengkonfigurasi replikasi untuk bucket di akun yang sama](replication-walkthrough1.md). Topik ini memberikan instruksi untuk menyiapkan konfigurasi replikasi ketika bucket sumber dan tujuan dimiliki oleh yang sama dan berbeda. Akun AWS

### Menggunakan AWS CLI
<a name="replication-ex3-cli"></a>

Prosedur berikut menunjukkan cara mengubah kepemilikan replika dengan menggunakan. AWS CLI Dalam prosedur ini, Anda melakukan hal berikut: 
+ Buat ember sumber dan tujuan.
+ Aktifkan pembuatan versi pada ember.
+ Buat peran AWS Identity and Access Management (IAM) yang memberikan izin Amazon S3 untuk mereplikasi objek.
+ Tambahkan konfigurasi replikasi ke bucket sumber.
+ Dalam konfigurasi replikasi, Anda mengarahkan Amazon S3 untuk mengubah kepemilikan replika.
+ Anda menguji konfigurasi replikasi Anda.

**Untuk mengubah kepemilikan replika saat bucket sumber dan tujuan dimiliki oleh different Akun AWS ()AWS CLI**

Untuk menggunakan contoh AWS CLI perintah dalam prosedur ini, ganti `user input placeholders` dengan informasi Anda sendiri. 

1. Dalam contoh ini, Anda membuat bucket sumber dan tujuan dalam dua yang berbeda Akun AWS. Untuk bekerja dengan dua akun ini, konfigurasikan AWS CLI dengan dua profil bernama. Contoh ini menggunakan profil yang, masing-masing, diberi nama *`acctA`* dan *`acctB`*. Untuk informasi tentang menyetel profil kredensi dan menggunakan profil bernama, lihat [Pengaturan konfigurasi dan file kredensi](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) di *AWS Command Line Interface Panduan Pengguna*. 
**penting**  
Profil yang Anda gunakan untuk prosedur ini harus memiliki izin yang diperlukan. Misalnya, dalam konfigurasi replikasi, Anda menentukan peran IAM yang dapat diasumsikan oleh Amazon S3. Anda dapat melakukan ini hanya jika profil yang Anda gunakan memiliki `iam:PassRole` izin. Jika Anda menggunakan kredensi pengguna administrator untuk membuat profil bernama, maka Anda dapat melakukan semua tugas dalam prosedur ini. Untuk informasi selengkapnya, lihat [Memberikan izin pengguna untuk meneruskan peran ke Layanan AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html) di *Panduan Pengguna IAM*. 

1. Buat bucket sumber dan aktifkan Penentuan Versi. Contoh ini membuat bucket sumber bernama `amzn-s3-demo-source-bucket` di Wilayah AS Timur (Virginia N.) (`us-east-1`). 

   ```
   aws s3api create-bucket \
   --bucket amzn-s3-demo-source-bucket \
   --region us-east-1 \
   --profile acctA
   ```

   ```
   aws s3api put-bucket-versioning \
   --bucket amzn-s3-demo-source-bucket \
   --versioning-configuration Status=Enabled \
   --profile acctA
   ```

1. Buat bucket tujuan dan aktifkan Penentuan Versi. Contoh ini membuat bucket tujuan bernama `amzn-s3-demo-destination-bucket` di Wilayah AS Barat (Oregon) (`us-west-2`). Gunakan Akun AWS profil yang berbeda dari yang Anda gunakan untuk bucket sumber.

   ```
   aws s3api create-bucket \
   --bucket amzn-s3-demo-destination-bucket \
   --region us-west-2 \
   --create-bucket-configuration LocationConstraint=us-west-2 \
   --profile acctB
   ```

   ```
   aws s3api put-bucket-versioning \
   --bucket amzn-s3-demo-destination-bucket \
   --versioning-configuration Status=Enabled \
   --profile acctB
   ```

1. Anda harus menambahkan izin dalam kebijakan bucket tujuan untuk memungkinkan perubahan kepemilikan replika.

   1.  Simpan kebijakan berikut ke file bernama`destination-bucket-policy.json`. Pastikan untuk mengganti *`user input placeholders`* dengan informasi Anda sendiri.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Sid": "destination_bucket_policy_sid",
                  "Principal": {
                      "AWS": "source-bucket-owner-123456789012"
                  },
                  "Action": [
                      "s3:ReplicateObject",
                      "s3:ReplicateDelete",
                      "s3:ObjectOwnerOverrideToBucketOwner",
                      "s3:ReplicateTags",
                      "s3:GetObjectVersionTagging"
                  ],
                  "Effect": "Allow",
                  "Resource": [
                      "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
                  ]
              }
          ]
      }
      ```

------

   1. Tambahkan kebijakan sebelumnya ke bucket tujuan dengan menggunakan perintah berikut: `put-bucket-policy`

      ```
      aws s3api put-bucket-policy --region $ {destination-region} --bucket $ {amzn-s3-demo-destination-bucket} --policy file://destination_bucket_policy.json
      ```

1. Buat peran IAM. Anda menentukan peran ini dalam konfigurasi replikasi yang Anda tambahkan ke bucket sumber nanti. Amazon S3 mengasumsikan peran ini untuk mereplikasi objek atas nama Anda. Anda membuat peran IAM dalam dua langkah:
   + Buat peran.
   + Lampirkan kebijakan izin pada peran tersebut.

   1. Buat peran IAM.

      1. Salin kebijakan kepercayaan berikut dan simpan di berkas dengan nama `s3-role-trust-policy.json` di direktori saat ini di komputer lokal Anda. Kebijakan ini memberi Amazon S3 izin untuk mengasumsikan peran tersebut.

------
#### [ JSON ]

****  

         ```
         {
            "Version":"2012-10-17",		 	 	 
            "Statement":[
               {
                  "Effect":"Allow",
                  "Principal":{
                     "Service":"s3.amazonaws.com"
                  },
                  "Action":"sts:AssumeRole"
               }
            ]
         }
         ```

------

      1. Jalankan AWS CLI `create-role` perintah berikut untuk membuat peran IAM:

         ```
         $ aws iam create-role \
         --role-name replicationRole \
         --assume-role-policy-document file://s3-role-trust-policy.json  \
         --profile acctA
         ```

         Catat Nama Sumber Daya Amazon (ARN) dari peran IAM yang Anda buat. Anda akan membutuhkan ARN ini di langkah selanjutnya.

   1. Lampirkan kebijakan izin pada peran tersebut.

      1. Salin kebijakan kepercayaan berikut dan simpan di berkas dengan nama `s3-role-perm-pol-changeowner.json` di direktori saat ini di komputer lokal Anda. Kebijakan ini memberikan izin untuk berbagai bucket dan tindakan objek Amazon S3. Pada langkah-langkah berikut, Anda melampirkan kebijakan ini ke peran IAM yang Anda buat sebelumnya. 

------
#### [ JSON ]

****  

         ```
         {
            "Version":"2012-10-17",		 	 	 
            "Statement":[
               {
                  "Effect":"Allow",
                  "Action":[
                     "s3:GetObjectVersionForReplication",
                     "s3:GetObjectVersionAcl"
                  ],
                  "Resource":[
                     "arn:aws:s3:::amzn-s3-demo-source-bucket/*"
                  ]
               },
               {
                  "Effect":"Allow",
                  "Action":[
                     "s3:ListBucket",
                     "s3:GetReplicationConfiguration"
                  ],
                  "Resource":[
                     "arn:aws:s3:::amzn-s3-demo-source-bucket"
                  ]
               },
               {
                  "Effect":"Allow",
                  "Action":[
                     "s3:ReplicateObject",
                     "s3:ReplicateDelete",
                     "s3:ObjectOwnerOverrideToBucketOwner",
                     "s3:ReplicateTags",
                     "s3:GetObjectVersionTagging"
                  ],
                  "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
               }
            ]
         }
         ```

------

      1. Untuk melampirkan kebijakan izin sebelumnya ke peran, jalankan perintah berikut: `put-role-policy`

         ```
         $ aws iam put-role-policy \
         --role-name replicationRole \
         --policy-document file://s3-role-perm-pol-changeowner.json \
         --policy-name replicationRolechangeownerPolicy \
         --profile acctA
         ```

1. Menambahkan konfigurasi replikasi ke bucket sumber.

   1.  AWS CLI Memerlukan menentukan konfigurasi replikasi sebagai JSON. Simpan JSON berikut dalam file yang disebut `replication.json` ke direktori lokal di komputer Anda. Dalam konfigurasi, `AccessControlTranslation` menentukan perubahan kepemilikan replika dari pemilik bucket sumber ke pemilik bucket tujuan. 

      ```
      {
         "Role":"IAM-role-ARN",
         "Rules":[
            {
               "Status":"Enabled",
               "Priority":1,
               "DeleteMarkerReplication":{
                  "Status":"Disabled"
               },
               "Filter":{
               },
               "Status":"Enabled",
               "Destination":{
                  "Bucket":"arn:aws:s3:::amzn-s3-demo-destination-bucket",
                  "Account":"destination-bucket-owner-account-id",
                  "AccessControlTranslation":{
                     "Owner":"Destination"
                  }
               }
            }
         ]
      }
      ```

   1. Edit JSON dengan memberikan nilai untuk nama bucket tujuan, ID akun pemilik bucket tujuan, dan file. `IAM-role-ARN` Ganti *`IAM-role-ARN`* dengan ARN peran IAM yang Anda buat sebelumnya. Simpan perubahan.

   1. Untuk menambahkan konfigurasi replikasi ke bucket sumber, jalankan perintah berikut:

      ```
      $ aws s3api put-bucket-replication \
      --replication-configuration file://replication.json \
      --bucket amzn-s3-demo-source-bucket \
      --profile acctA
      ```

1. Uji konfigurasi replikasi Anda dengan memeriksa kepemilikan replika di konsol Amazon S3.

   1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon S3 di. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

   1. Tambahkan objek ke bucket sumber. Verifikasi bahwa bucket tujuan berisi replika objek dan kepemilikan replika telah berubah menjadi bucket Akun AWS yang memiliki tujuan.

### Menggunakan AWS SDKs
<a name="replication-ex3-sdk"></a>

 Untuk contoh kode untuk menambahkan konfigurasi replikasi, lihat[Menggunakan AWS SDKs](replication-walkthrough1.md#replication-ex1-sdk). Anda harus memodifikasi konfigurasi replikasi dengan tepat. Untuk informasi konseptual, lihat [Mengubah pemilik replika](#replication-change-owner). 

# Memenuhi persyaratan kepatuhan dengan Kontrol Waktu Replikasi S3
<a name="replication-time-control"></a>

Kontrol Waktu Replikasi S3 (S3 RTC) membantu Anda memenuhi persyaratan kepatuhan atau bisnis untuk replikasi data dan memberikan visibilitas ke dalam waktu replikasi Amazon S3. S3 RTC mereplikasi sebagian besar objek yang Anda unggah ke Amazon S3 dalam hitungan detik, dan 99,9 persen objek tersebut dalam waktu 15 menit. 

Secara default, S3 RTC mencakup dua cara untuk melacak kemajuan replikasi: 
+ **Metrik Replikasi S3** — Anda dapat menggunakan metrik Replikasi S3 untuk memantau jumlah total operasi S3 API yang menunggu replikasi, ukuran total objek yang menunggu replikasi, waktu replikasi maksimum ke Wilayah tujuan, dan jumlah total operasi yang gagal replikasi. Kemudian, Anda dapat memantau setiap set data yang akan direplikasi secara terpisah. Anda juga dapat mengaktifkan metrik Replikasi S3 secara independen dari S3 RTC. Untuk informasi selengkapnya, lihat [Menggunakan metrik Replikasi S3](repl-metrics.md).

  Aturan replikasi dengan Kontrol Waktu Replikasi S3 (S3 RTC) memungkinkan publikasi metrik Replikasi S3. Metrik replikasi tersedia dalam 15 menit setelah S3 RTC diaktifkan. Metrik replikasi tersedia melalui konsol Amazon S3, Amazon S3 API, AWS SDKs the, the AWS Command Line Interface ()AWS CLI, dan Amazon. CloudWatch Untuk informasi selengkapnya tentang CloudWatch metrik, lihat[Memantau metrik dengan Amazon CloudWatch](cloudwatch-monitoring.md). Untuk informasi selengkapnya tentang melihat metrik replikasi melalui konsol Amazon S3, lihat. [Melihat metrik replikasi](repl-metrics.md#viewing-replication-metrics)

  Metrik Replikasi S3 ditagih dengan tarif yang sama dengan metrik kustom Amazon. CloudWatch Untuk informasi, lihat [harga Amazon CloudWatch](https://aws.amazon.com/cloudwatch/pricing/). 
+ **Pemberitahuan Acara Amazon S3** — S3 RTC menyediakan `OperationMissedThreshold` dan `OperationReplicatedAfterThreshold` peristiwa yang memberi tahu pemilik bucket jika replikasi objek melebihi atau terjadi setelah ambang batas 15 menit. Dengan S3 RTC, Pemberitahuan Acara Amazon S3 dapat memberi tahu Anda dalam contoh langka ketika objek tidak bereplikasi dalam waktu 15 menit dan ketika objek tersebut bereplikasi setelah ambang batas 15 menit. 

  Metrik replikasi tersedia dalam 15 menit setelah S3 RTC diaktifkan. Pemberitahuan Acara Amazon S3 tersedia melalui Amazon SQS, Amazon SNS, atau. AWS Lambda Untuk informasi selengkapnya, lihat [Menerima peristiwa kegagalan replikasi dengan Notifikasi Peristiwa Amazon S3](replication-metrics-events.md).

 

## Praktik terbaik dan pedoman untuk S3 RTC
<a name="rtc-best-practices"></a>

Saat mereplikasi data di Amazon S3 dengan S3 Replication Time Control (S3 RTC) diaktifkan, ikuti panduan praktik terbaik ini untuk mengoptimalkan kinerja replikasi untuk beban kerja Anda. 

**Topics**
+ [Replikasi Amazon S3 dan pedoman kinerja tingkat permintaan](#rtc-request-rate-performance)
+ [Memperkirakan tingkat permintaan replikasi Anda](#estimating-replication-request-rates)
+ [Melebihi kuota kecepatan transfer data S3 RTC](#exceed-rtc-data-transfer-limits)
+ [AWS KMS tingkat permintaan replikasi objek terenkripsi](#kms-object-replication-request-rates)

### Replikasi Amazon S3 dan pedoman kinerja tingkat permintaan
<a name="rtc-request-rate-performance"></a>

Ketika mengunggah dan mengambil penyimpanan dari Amazon S3, aplikasi Anda dapat mencapai ribuan transaksi per detik dalam kinerja permintaan. Misalnya, aplikasi dapat mencapai setidaknya 3.500`PUT`/`COPY``POST`/`DELETE`atau `GET` `HEAD` 5.500/permintaan per detik per awalan dalam bucket S3, termasuk permintaan yang dibuat oleh S3 Replication atas nama Anda. Tidak ada batas jumlah awalan dalam bucket. Anda dapat meningkatkan kinerja baca atau tulis dengan cara menyelaraskan pembacaan. Misalnya, jika Anda membuat 10 awalan dalam bucket S3 untuk memparalelkan pembacaan, Anda dapat menskalakan kinerja baca menjadi 55.000 permintaan baca per detik. 

Amazon S3 secara otomatis menskalakan sebagai respons terhadap tarif permintaan berkelanjutan di atas pedoman ini, atau tarif permintaan berkelanjutan bersamaan dengan permintaan. `LIST` Meski Amazon S3 secara internal mengoptimalkan tingkat permintaan baru, Anda mungkin menerima respons permintaan HTTP 503 untuk sementara hingga optimasi selesai. Perilaku ini mungkin terjadi dengan peningkatan tingkat permintaan per detik, atau saat Anda pertama kali mengaktifkan S3 RTC. Selama periode ini, latensi replikasi Anda dapat meningkat. Perjanjian tingkat layanan (SLA) S3 RTC tidak berlaku untuk periode waktu ketika pedoman kinerja Amazon S3 pada permintaan per detik terlampaui. 

SLA S3 RTC juga tidak berlaku selama periode waktu dimana kecepatan transfer data replikasi Anda melebihi kuota default 1 gigabit per detik (Gbps). Jika Anda mengharapkan tingkat transfer replikasi Anda melebihi 1 Gbps, Anda dapat menghubungi [AWS Dukungan Center](https://console.aws.amazon.com/support/home#/) atau menggunakan [Service Quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) untuk meminta peningkatan kuota transfer rate replikasi Anda. 

### Memperkirakan tingkat permintaan replikasi Anda
<a name="estimating-replication-request-rates"></a>

Total tingkat permintaan Anda termasuk permintaan yang dibuat oleh replikasi Amazon S3 atas nama Anda harus berada dalam pedoman tarif permintaan Amazon S3 untuk bucket sumber replikasi dan tujuan. Untuk setiap objek yang direplikasi, replikasi Amazon S3 menghasilkan hingga `GET` lima permintaan`HEAD`/dan `PUT` satu permintaan ke bucket sumber, dan `PUT` satu permintaan ke setiap bucket tujuan.

Misalnya, jika Anda berharap untuk mereplikasi 100 objek per detik, replikasi Amazon S3 dapat melakukan `PUT` 100 permintaan tambahan atas nama Anda dengan total `PUT` 200 permintaan per detik ke bucket S3 sumber. Replikasi Amazon S3 juga dapat melakukan hingga `GET` 500/ `HEAD` permintaan (`GET``HEAD`5/permintaan untuk setiap objek yang direplikasi.) 

**catatan**  
Anda dikenakan biaya hanya untuk satu `PUT` permintaan per objek yang direplikasi. Untuk informasi selengkapnya, lihat informasi harga di [Amazon S3 FAQs tentang](https://aws.amazon.com/s3/faqs/#Replication) replikasi. 

### Melebihi kuota kecepatan transfer data S3 RTC
<a name="exceed-rtc-data-transfer-limits"></a>

Jika Anda mengharapkan kecepatan transfer data S3 RTC melebihi kuota default 1 Gbps, hubungi [AWS Dukungan Center](https://console.aws.amazon.com/support/home#/) atau gunakan Service [Quotas untuk meminta peningkatan kuota](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) transfer rate replikasi Anda. 

### AWS KMS tingkat permintaan replikasi objek terenkripsi
<a name="kms-object-replication-request-rates"></a>

Saat Anda mereplikasi objek yang dienkripsi dengan enkripsi sisi server dengan kunci AWS Key Management Service (AWS KMS) (SSE-KMS), kuota permintaan per detik berlaku. AWS KMS AWS KMS mungkin menolak permintaan yang valid karena tingkat permintaan Anda melebihi kuota untuk jumlah permintaan per detik. Ketika permintaan dibatasi, AWS KMS mengembalikan kesalahan. `ThrottlingException` Kuota tarif AWS KMS permintaan berlaku untuk permintaan yang Anda buat secara langsung dan permintaan yang dibuat oleh replikasi Amazon S3 atas nama Anda. 

Misalnya, jika Anda berharap untuk mereplikasi 1.000 objek per detik, Anda dapat mengurangi 2.000 permintaan dari kuota tingkat AWS KMS permintaan Anda. Tingkat permintaan per detik yang dihasilkan tersedia untuk AWS KMS beban kerja Anda tidak termasuk replikasi. Anda dapat menggunakan [metrik AWS KMS permintaan di Amazon CloudWatch](https://docs.aws.amazon.com/kms/latest/developerguide/monitoring-cloudwatch.html) untuk memantau total tingkat AWS KMS permintaan pada Anda Akun AWS.

Untuk meminta peningkatan kuota AWS KMS permintaan per detik, hubungi [AWS Dukungan Pusat](https://console.aws.amazon.com/support/home#/) atau gunakan [Service](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) Quotas. 

## Mengaktifkan Kontrol Waktu Replikasi S3
<a name="replication-walkthrough-5"></a>

Anda dapat mulai menggunakan Kontrol Waktu Replikasi S3 (S3 RTC) dengan aturan replikasi baru atau yang sudah ada. Anda dapat memilih untuk menerapkan aturan replikasi ke seluruh bucket, atau ke objek dengan awalan atau tag tertentu. Saat Anda mengaktifkan S3 RTC, metrik Replikasi S3 juga diaktifkan pada aturan replikasi Anda. 

Anda dapat mengonfigurasi S3 RTC dengan menggunakan konsol Amazon S3, API Amazon S3, AWS SDKs the, dan (). AWS Command Line Interface AWS CLI

**Topics**

### Menggunakan konsol S3
<a name="replication-ex5-console"></a>

Untuk step-by-step instruksi, lihat[Mengkonfigurasi replikasi untuk bucket di akun yang sama](replication-walkthrough1.md). Topik ini memberikan instruksi untuk mengaktifkan S3 RTC dalam konfigurasi replikasi Anda ketika bucket sumber dan tujuan dimiliki oleh yang sama dan berbeda. Akun AWS

### Menggunakan AWS CLI
<a name="replication-ex5-cli"></a>

Untuk menggunakan AWS CLI untuk mereplikasi objek dengan S3 RTC diaktifkan, Anda membuat bucket, mengaktifkan pembuatan versi pada bucket, membuat peran IAM yang memberikan izin Amazon S3 untuk mereplikasi objek, dan menambahkan konfigurasi replikasi ke bucket sumber. Konfigurasi replikasi harus mengaktifkan S3 RTC, seperti yang ditunjukkan pada contoh berikut. 

Untuk step-by-step petunjuk untuk mengatur konfigurasi replikasi Anda dengan menggunakan AWS CLI, lihat[Mengkonfigurasi replikasi untuk bucket di akun yang sama](replication-walkthrough1.md).

Contoh konfigurasi replikasi berikut memungkinkan dan menetapkan `ReplicationTime` dan `EventThreshold` nilai-nilai untuk aturan replikasi. Mengaktifkan dan mengatur nilai-nilai ini memungkinkan S3 RTC pada aturan.

```
{
    "Rules": [
        {
            "Status": "Enabled",
            "Filter": {
                "Prefix": "Tax"
            },
            "DeleteMarkerReplication": {
                "Status": "Disabled"
            },
            "Destination": {
                "Bucket": "arn:aws:s3:::amzn-s3-demo-destination-bucket",
                "Metrics": {
                    "Status": "Enabled",
                    "EventThreshold": {
                        "Minutes": 15
                    }
                },
                "ReplicationTime": {
                    "Status": "Enabled",
                    "Time": {
                        "Minutes": 15
                    }
                }
            },
            "Priority": 1
        }
    ],
    "Role": "IAM-Role-ARN"
}
```

**penting**  
 `Metrics:EventThreshold:Minutes`dan hanya `ReplicationTime:Time:Minutes` dapat memiliki `15` nilai yang valid. 

### Menggunakan AWS SDK for Java
<a name="replication-ex5-sdk"></a>

 Contoh Java berikut menambahkan konfigurasi replikasi dengan S3 Replication Time Control (S3 RTC) diaktifkan.

```
import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3.model.DeleteMarkerReplication;
import software.amazon.awssdk.services.s3.model.Destination;
import software.amazon.awssdk.services.s3.model.Metrics;
import software.amazon.awssdk.services.s3.model.MetricsStatus;
import software.amazon.awssdk.services.s3.model.PutBucketReplicationRequest;
import software.amazon.awssdk.services.s3.model.ReplicationConfiguration;
import software.amazon.awssdk.services.s3.model.ReplicationRule;
import software.amazon.awssdk.services.s3.model.ReplicationRuleFilter;
import software.amazon.awssdk.services.s3.model.ReplicationTime;
import software.amazon.awssdk.services.s3.model.ReplicationTimeStatus;
import software.amazon.awssdk.services.s3.model.ReplicationTimeValue;

public class Main {

  public static void main(String[] args) {
    S3Client s3 = S3Client.builder()
      .region(Region.US_EAST_1)
      .credentialsProvider(() -> AwsBasicCredentials.create(
          "AWS_ACCESS_KEY_ID",
          "AWS_SECRET_ACCESS_KEY")
      )
      .build();

    ReplicationConfiguration replicationConfig = ReplicationConfiguration
      .builder()
      .rules(
          ReplicationRule
            .builder()
            .status("Enabled")
            .priority(1)
            .deleteMarkerReplication(
                DeleteMarkerReplication
                    .builder()
                    .status("Disabled")
                    .build()
            )
            .destination(
                Destination
                    .builder()
                    .bucket("destination_bucket_arn")
                    .replicationTime(
                        ReplicationTime.builder().time(
                            ReplicationTimeValue.builder().minutes(15).build()
                        ).status(
                            ReplicationTimeStatus.ENABLED
                        ).build()
                    )
                    .metrics(
                        Metrics.builder().eventThreshold(
                            ReplicationTimeValue.builder().minutes(15).build()
                        ).status(
                            MetricsStatus.ENABLED
                        ).build()
                    )
                    .build()
            )
            .filter(
                ReplicationRuleFilter
                    .builder()
                    .prefix("testtest")
                    .build()
            )
        .build())
        .role("role_arn")
        .build();

    // Put replication configuration
    PutBucketReplicationRequest putBucketReplicationRequest = PutBucketReplicationRequest
      .builder()
      .bucket("source_bucket")
      .replicationConfiguration(replicationConfig)
      .build();

    s3.putBucketReplication(putBucketReplicationRequest);
  }
}
```

# Mereplikasi objek terenkripsi (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C)
<a name="replication-config-for-kms-objects"></a>

**penting**  
Amazon S3 sudah menerapkan enkripsi di sisi server dengan kunci terkelola Amazon S3 (SSE-S3) sebagai tingkat dasar enkripsi bagi setiap bucket di Amazon S3. Mulai 5 Januari 2023, semua unggahan objek baru ke Amazon S3 secara otomatis akan dienkripsi tanpa biaya tambahan dan tidak akan berdampak pada kinerja. Status enkripsi otomatis untuk konfigurasi enkripsi default bucket S3 dan untuk unggahan objek baru tersedia di CloudTrail log, S3 Inventory, S3 Storage Lens, konsol Amazon S3, dan sebagai header respons API Amazon S3 tambahan di dan. AWS CLI AWS SDKs Untuk informasi selengkapnya, lihat [FAQ enkripsi default](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-encryption-faq.html).

Ada beberapa pertimbangan khusus ketika Anda mereplikasi objek yang telah dienkripsi dengan menggunakan enkripsi di sisi server. Amazon S3 mendukung tipe enkripsi di sisi server berikut:
+ Enkripsi di sisi server dengan kunci terkelola Amazon S3 (SSE-S3)
+ Enkripsi sisi server dengan kunci AWS Key Management Service (AWS KMS) (SSE-KMS)
+ Enkripsi sisi server dua lapis dengan kunci (DSSE-KMS) AWS KMS 
+ Enkripsi di sisi server dengan kunci yang disediakan pelanggan (SSE-C)

Untuk informasi lebih lanjut tentang enkripsi di sisi server, lihat [Melindungi data dengan enkripsi di sisi klien](serv-side-encryption.md).

Topik ini menjelaskan izin yang Anda perlukan untuk mengarahkan Amazon S3 guna mereplikasi objek yang telah dienkripsi menggunakan enkripsi di sisi server. Topik ini juga menyediakan elemen konfigurasi tambahan yang dapat Anda tambahkan dan contoh kebijakan AWS Identity and Access Management (IAM) yang memberikan izin yang diperlukan untuk mereplikasi objek terenkripsi. 

Untuk contoh dengan step-by-step instruksi, lihat[Mengaktifkan replikasi untuk objek terenkripsi](#replication-walkthrough-4). Untuk informasi tentang pembuatan konfigurasi replikasi, lihat [Mereplikasi objek di dalam dan di seluruh Wilayah](replication.md). 

**catatan**  
Anda dapat menggunakan Multi-wilayah AWS KMS keys di Amazon S3. Namun, Amazon S3 saat ini memperlakukan kunci multi-Wilayah selayaknya kunci satu Wilayah, dan tidak menggunakan fitur multi-Wilayah dari kunci tersebut. Untuk informasi selengkapnya, lihat [Menggunakan kunci Multi-wilayah](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) di *Panduan AWS Key Management Service Pengembang*.

**Topics**
+ [Bagaimana enkripsi bucket default memengaruhi replikasi](#replication-default-encryption)
+ [Mereplikasi objek yang dienkripsi dengan SSE-C](#replicationSSEC)
+ [Mereplikasi objek yang dienkripsi dengan SSE-S3, SSE-KMS, atau DSSE-KMS](#replications)
+ [Mengaktifkan replikasi untuk objek terenkripsi](#replication-walkthrough-4)

## Bagaimana enkripsi bucket default memengaruhi replikasi
<a name="replication-default-encryption"></a>

Saat Anda mengaktifkan enkripsi default untuk bucket tujuan replikasi, perilaku enkripsi berikut berlaku:
+ Jika objek dalam bucket sumber tidak dienkripsi, objek replika dalam bucket tujuan akan dienkripsi menggunakan pengaturan enkripsi default dari bucket tujuan. Akibatnya, tag entitas (ETags) dari objek sumber berbeda ETags dari objek replika. Jika Anda memiliki aplikasi yang menggunakan ETags, Anda harus memperbarui aplikasi tersebut untuk memperhitungkan perbedaan ini.
+ Jika objek dalam bucket sumber dienkripsi menggunakan enkripsi sisi server dengan kunci terkelola Amazon S3 (SSE-S3), enkripsi sisi server dengan kunci () (SSE-KMS), atau enkripsi sisi server dua lapis dengan AWS Key Management Service kunci (DSSE-KMS), objek replika di bucket tujuan menggunakan jenis enkripsi yang sama dengan AWS KMS objek sumber.AWS KMS Pengaturan enkripsi default bucket tujuan tidak digunakan.

## Mereplikasi objek yang dienkripsi dengan SSE-C
<a name="replicationSSEC"></a>

Dengan menggunakan enkripsi sisi server dengan kunci yang disediakan pelanggan (SSE-C), Anda dapat mengelola kunci enkripsi milik Anda sendiri. Dengan SSE-C, Anda mengelola kunci sedangkan Amazon S3 mengelola proses enkripsi dan dekripsi. Anda harus memberikan kunci enkripsi sebagai bagian dari permintaan Anda, tetapi Anda tidak perlu menulis kode apa pun untuk melakukan enkripsi atau dekripsi objek. Saat mengunggah sebuah objek, Amazon S3 mengenkripsi objek menggunakan kunci yang Anda berikan. Amazon S3 kemudian membersihkan kunci itu dari memori. Saat mengambil sebuah objek, Anda harus memberikan kunci enkripsi yang sama sebagai bagian dari permintaan Anda. Untuk informasi selengkapnya, lihat [Menggunakan enkripsi di sisi server dengan kunci yang disediakan pelanggan (SSE-C)](ServerSideEncryptionCustomerKeys.md).

S3 Replikasi mendukung objek yang dienkripsi dengan SSE-C. Anda dapat mengonfigurasi replikasi objek SSE-C di konsol Amazon S3 atau dengan cara yang sama seperti Anda mengonfigurasi replikasi untuk objek yang tidak terenkripsi. AWS SDKs Tidak ada izin SSE-C tambahan di luar apa yang saat ini diperlukan untuk replikasi. 

Replikasi S3 secara otomatis mereplikasi objek terenkripsi SSE-C yang baru diunggah jika memenuhi syarat, seperti yang ditentukan dalam konfigurasi Replikasi S3 Anda. Untuk mereplikasi objek yang ada di bucket Anda, gunakan Replikasi Batch S3. Untuk informasi selengkapnya tentang mereplikasi objek, lihat [Menyiapkan ikhtisar replikasi langsung](replication-how-setup.md) dan [Mereplikasi objek yang ada dengan Batch Replication](s3-batch-replication-batch.md).

Tidak ada biaya tambahan untuk mereplikasi objek SSE-C. Untuk detail tentang harga replikasi, lihat harga [Amazon S3](https://aws.amazon.com/s3/pricing/). 

## Mereplikasi objek yang dienkripsi dengan SSE-S3, SSE-KMS, atau DSSE-KMS
<a name="replications"></a>

Secara default, Amazon S3 tidak mereplikasi objek yang dienkripsi dengan SSE-KMS atau DSSE-KMS. Bagian ini menjelaskan elemen konfigurasi tambahan yang dapat Anda tambahkan ke Amazon S3 langsung untuk mereplikasi objek tersebut. 

Untuk contoh dengan step-by-step instruksi, lihat[Mengaktifkan replikasi untuk objek terenkripsi](#replication-walkthrough-4). Untuk informasi tentang pembuatan konfigurasi replikasi, lihat [Mereplikasi objek di dalam dan di seluruh Wilayah](replication.md). 

### Menentukan informasi tambahan dalam konfigurasi replikasi
<a name="replication-kms-extra-config"></a>

Dalam konfigurasi replikasi, Anda melakukan hal berikut:
+ Dalam `Destination` elemen dalam konfigurasi replikasi Anda, tambahkan ID kunci terkelola AWS KMS pelanggan simetris yang Anda ingin Amazon S3 gunakan untuk mengenkripsi replika objek, seperti yang ditunjukkan dalam contoh konfigurasi replikasi berikut. 
+ Pilih ikut secara eksplisit dengan mengaktifkan replikasi objek yang dienkripsi menggunakan kunci KMS (SSE-KMS atau DSSE-KMS). Untuk memilih ikut, tambahkan elemen `SourceSelectionCriteria`, seperti yang ditunjukkan dalam konfigurasi replikasi contoh berikut.

 

```
<ReplicationConfiguration>
   <Rule>
      ...
      <SourceSelectionCriteria>
         <SseKmsEncryptedObjects>
           <Status>Enabled</Status>
         </SseKmsEncryptedObjects>
      </SourceSelectionCriteria>

      <Destination>
          ...
          <EncryptionConfiguration>
             <ReplicaKmsKeyID>AWS KMS key ARN or Key Alias ARN that's in the same Wilayah AWS as the destination bucket.</ReplicaKmsKeyID>
          </EncryptionConfiguration>
       </Destination>
      ...
   </Rule>
</ReplicationConfiguration>
```

**penting**  
Kunci KMS harus dibuat Wilayah AWS sama dengan bucket tujuan. 
Kunci KMS *harus* valid. Operasi API `PutBucketReplication` tidak memeriksa validitas kunci KMS. Jika menggunakan kunci KMS yang tidak valid, Anda akan menerima kode status `200 OK` HTTP sebagai respons, tetapi replikasi gagal.

Contoh berikut menunjukkan konfigurasi replikasi yang meliputi elemen konfigurasi opsional. Konfigurasi replikasi ini memiliki satu aturan. Aturan ini berlaku untuk objek dengan awalan kunci `Tax`. Amazon S3 menggunakan AWS KMS key ID yang ditentukan untuk mengenkripsi replika objek ini.

```
<?xml version="1.0" encoding="UTF-8"?>
<ReplicationConfiguration>
   <Role>arn:aws:iam::account-id:role/role-name</Role>
   <Rule>
      <ID>Rule-1</ID>
      <Priority>1</Priority>
      <Status>Enabled</Status>
      <DeleteMarkerReplication>
         <Status>Disabled</Status>
      </DeleteMarkerReplication>
      <Filter>
         <Prefix>Tax</Prefix>
      </Filter>
      <Destination>
         <Bucket>arn:aws:s3:::amzn-s3-demo-destination-bucket</Bucket>
         <EncryptionConfiguration>
            <ReplicaKmsKeyID>AWS KMS key ARN or Key Alias ARN that's in the same Wilayah AWS as the destination bucket.</ReplicaKmsKeyID>
         </EncryptionConfiguration>
      </Destination>
      <SourceSelectionCriteria>
         <SseKmsEncryptedObjects>
            <Status>Enabled</Status>
         </SseKmsEncryptedObjects>
      </SourceSelectionCriteria>
   </Rule>
</ReplicationConfiguration>
```

### Memberikan izin tambahan untuk peran IAM
<a name="replication-kms-permissions"></a>

Untuk mereplikasi objek yang dienkripsi saat istirahat menggunakan SSE-S3, SSE-KMS, atau DSSE-KMS, berikan izin tambahan berikut ke peran (IAM) yang Anda tentukan dalam konfigurasi replikasi. AWS Identity and Access Management Anda memberikan izin ini dengan memperbarui kebijakan izin yang terkait dengan peran IAM. 
+ **Tindakan `s3:GetObjectVersionForReplication` untuk objek sumber**–Tindakan ini memungkinkan Amazon S3 mereplikasi objek tidak terenkripsi dan objek yang dibuat dengan enkripsi di sisi server menggunakan SSE-S3, SSE-KMS, atau DSSE-KMS.
**catatan**  
Kami menyarankan Anda menggunakan tindakan `s3:GetObjectVersionForReplication` alih-alih tindakan `s3:GetObjectVersion` karena `s3:GetObjectVersionForReplication` hanya memberi Amazon S3 izin minimum yang diperlukan untuk replikasi. Selain itu, tindakan `s3:GetObjectVersion` memungkinkan replikasi objek tidak terenkripsi dan terenkripsi SSE-S3, tetapi bukan objek yang dienkripsi menggunakan kunci KMS (SSE-KMS atau DSSE-KMS). 
+ **`kms:Decrypt`dan `kms:Encrypt` AWS KMS tindakan untuk kunci KMS**
  + Anda harus memberikan izin `kms:Decrypt` untuk AWS KMS key yang digunakan untuk mendekripsi objek sumber.
  + Anda harus memberikan izin `kms:Encrypt` untuk AWS KMS key yang digunakan untuk mengenkripsi replika objek.
+ **Tindakan `kms:GenerateDataKey` untuk mereplikasi objek plaintext**–Jika Anda mereplikasi objek plaintext ke bucket dengan enkripsi SSE-KMS atau DSSE-KMS yang diaktifkan secara default, Anda harus menyertakan izin `kms:GenerateDataKey` untuk konteks enkripsi tujuan dan kunci KMS dalam kebijakan IAM.

**penting**  
Jika Anda menggunakan Replikasi Batch S3 untuk mereplikasi kumpulan data lintas wilayah dan objek Anda sebelumnya memiliki jenis enkripsi sisi server yang diperbarui dari SSE-S3 ke SSE-KMS, Anda mungkin memerlukan izin tambahan. Di bucket wilayah sumber, Anda harus memiliki `kms:decrypt` izin. Kemudian, Anda akan memerlukan `kms:encrypt` izin `kms:decrypt` dan untuk bucket di wilayah tujuan. 

Kami menyarankan Anda membatasi izin ini hanya untuk bucket tujuan dan objek dengan menggunakan AWS KMS tombol kondisi. Akun AWS Yang memiliki peran IAM harus memiliki izin untuk `kms:Encrypt` dan `kms:Decrypt` tindakan untuk kunci KMS yang tercantum dalam kebijakan. Jika kunci KMS dimiliki oleh orang lain Akun AWS, pemilik kunci KMS harus memberikan izin ini kepada Akun AWS yang memiliki peran IAM. Untuk informasi selengkapnya tentang mengelola akses ke kunci KMS ini, lihat [Menggunakan kebijakan IAM dengan Panduan AWS KMSAWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html) *Pengembang*.

### Replikasi dan Kunci Bucket S3
<a name="bk-replication"></a>

Untuk menggunakan replikasi dengan S3 Bucket Key, AWS KMS key kebijakan untuk kunci KMS yang digunakan untuk mengenkripsi replika objek harus menyertakan `kms:Decrypt` izin untuk prinsipal panggilan. Panggilan ke `kms:Decrypt` memverifikasi integritas Kunci Bucket S3 sebelum menggunakannya. Untuk informasi selengkapnya, lihat [Menggunakan kunci Bucket S3 dengan replikasi](bucket-key.md#bucket-key-replication).

Saat Kunci Bucket S3 diaktifkan untuk bucket sumber atau tujuan, konteks enkripsi akan menjadi Amazon Resource Name (ARN) bucket, bukan ARN objek (misalnya, `arn:aws:s3:::bucket_ARN`). Anda harus memperbarui kebijakan IAM Anda untuk menggunakan ARN bucket untuk konteks enkripsi:

```
"kms:EncryptionContext:aws:s3:arn": [
"arn:aws:s3:::bucket_ARN"
]
```

Untuk informasi selengkapnya, lihat [Konteks enkripsi (`x-amz-server-side-encryption-context`)](specifying-kms-encryption.md#s3-kms-encryption-context) (di bagian “Menggunakan API REST”) dan [Perubahan yang perlu diperhatikan sebelum mengaktifkan Kunci Bucket S3](bucket-key.md#bucket-key-changes).

### Contoh kebijakan: Menggunakan SSE-S3 dan SSE-KMS dengan replikasi
<a name="kms-replication-examples"></a>

Contoh kebijakan IAM berikut menunjukkan pernyataan untuk menggunakan SSE-S3 dan SSE-KMS dengan replikasi.

**Example – Menggunakan SSE-KMS dengan bucket tujuan terpisah**  
Contoh kebijakan berikut menunjukkan pernyataan untuk menggunakan SSE-KMS dengan bucket tujuan terpisah. 

**Example – Mereplikasi objek yang dibuat dengan SSE-S3 dan SSE-KMS**  
Berikut ini adalah kebijakan IAM lengkap yang memberikan izin yang diperlukan untuk mereplikasi objek tidak terenkripsi, objek yang dibuat dengan SSE-S3, dan objek yang dibuat dengan SSE-KMS.    
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "s3:GetReplicationConfiguration",
            "s3:ListBucket"
         ],
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-source-bucket"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:GetObjectVersionForReplication",
            "s3:GetObjectVersionAcl"
         ],
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-source-bucket/key-prefix1*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:ReplicateObject",
            "s3:ReplicateDelete"
         ],
         "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/key-prefix1*"
      },
      {
         "Action":[
            "kms:Decrypt"
         ],
         "Effect":"Allow",
         "Condition":{
            "StringLike":{
               "kms:ViaService":"s3.us-east-1.amazonaws.com",
               "kms:EncryptionContext:aws:s3:arn":[
                  "arn:aws:s3:::amzn-s3-demo-source-bucket/key-prefix1*"
               ]
            }
         },
         "Resource":[
           "arn:aws:kms:us-east-1:111122223333:key/key-id"
         ]
      },
      {
         "Action":[
            "kms:Encrypt"
         ],
         "Effect":"Allow",
         "Condition":{
            "StringLike":{
               "kms:ViaService":"s3.us-east-1.amazonaws.com",
               "kms:EncryptionContext:aws:s3:arn":[
                  "arn:aws:s3:::amzn-s3-demo-destination-bucket/prefix1*"
               ]
            }
         },
         "Resource":[
            "arn:aws:kms:us-east-1:111122223333:key/key-id"
         ]
      }
   ]
}
```

**Example – Mereplikasi objek dengan Kunci Bucket S3**  
Berikut ini adalah kebijakan IAM lengkap yang memberikan izin yang diperlukan untuk mereplikasi objek dengan Kunci Bucket S3.    
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "s3:GetReplicationConfiguration",
            "s3:ListBucket"
         ],
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-source-bucket"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:GetObjectVersionForReplication",
            "s3:GetObjectVersionAcl"
         ],
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-source-bucket/key-prefix1*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:ReplicateObject",
            "s3:ReplicateDelete"
         ],
         "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/key-prefix1*"
      },
      {
         "Action":[
            "kms:Decrypt"
         ],
         "Effect":"Allow",
         "Condition":{
            "StringLike":{
               "kms:ViaService":"s3.us-east-1.amazonaws.com",
               "kms:EncryptionContext:aws:s3:arn":[
                  "arn:aws:s3:::amzn-s3-demo-source-bucket"
               ]
            }
         },
         "Resource":[
           "arn:aws:kms:us-east-1:111122223333:key/key-id"
         ]
      },
      {
         "Action":[
            "kms:Encrypt"
         ],
         "Effect":"Allow",
         "Condition":{
            "StringLike":{
               "kms:ViaService":"s3.us-east-1.amazonaws.com",
               "kms:EncryptionContext:aws:s3:arn":[
                  "arn:aws:s3:::amzn-s3-demo-destination-bucket"
               ]
            }
         },
         "Resource":[
            "arn:aws:kms:us-east-1:111122223333:key/key-id"
         ]
      }
   ]
}
```

### Memberikan izin tambahan untuk skenario lintas akun
<a name="replication-kms-cross-acct-scenario"></a>

Dalam skenario lintas akun, di mana bucket sumber dan tujuan dimiliki oleh yang berbeda Akun AWS, Anda dapat menggunakan kunci KMS untuk mengenkripsi replika objek. Namun, pemilik kunci KMS harus memberikan izin pemilik bucket sumber untuk menggunakan kunci KMS. 

**catatan**  
Jika Anda perlu mereplikasi data lintas akun SSE-KMS, maka aturan replikasi Anda harus menentukan [kunci yang dikelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) untuk akun tujuan. AWS KMS [Kunci yang dikelola AWS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk)jangan izinkan penggunaan lintas akun, dan karenanya tidak dapat digunakan untuk melakukan replikasi lintas akun.<a name="cross-acct-kms-key-permission"></a>

**Untuk memberikan izin kepada pemilik bucket sumber untuk menggunakan kunci KMS (AWS KMS konsol)**

1. Masuk ke Konsol Manajemen AWS dan buka AWS KMS konsol di [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms).

1. Untuk mengubah Wilayah AWS, gunakan pemilih Wilayah di sudut kanan atas halaman.

1. Untuk melihat tombol di akun yang Anda buat dan kelola, di panel navigasi pilih **CMK**.

1. Pilih tombol KMS.

1. Di bawah bagian **Konfigurasi umum**, pilih tab **Kebijakan kunci**.

1. Gulir ke bawah ke **Lainnya Akun AWS**.

1. Pilih **Tambahkan lainnya Akun AWS**. 

   Kotak Akun AWS dialog **Lainnya** muncul. 

1. Di kotak dialog, pilih **Tambahkan yang lain Akun AWS**. Untuk **arn:aws:iam::**, masukkan ID akun bucket sumber.

1. Pilih **Simpan perubahan**.

**Untuk memberikan izin kepada pemilik bucket sumber untuk menggunakan kunci KMS (AWS CLI)**
+ Untuk informasi tentang perintah `put-key-policy` AWS Command Line Interface (AWS CLI), lihat [https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html](https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html)di * AWS CLI Command Reference*. Untuk informasi tentang operasi API `PutKeyPolicy` yang mendasarinya, lihat [https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html) di [Referensi API AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/APIReference/).

### AWS KMS pertimbangan kuota transaksi
<a name="crr-kms-considerations"></a>

Saat Anda menambahkan banyak objek baru dengan AWS KMS enkripsi setelah mengaktifkan Replikasi Lintas Wilayah (CRR), Anda mungkin mengalami pelambatan (kesalahan HTTP). `503 Service Unavailable` Throttling terjadi ketika jumlah AWS KMS transaksi per detik melebihi kuota saat ini. Untuk informasi selengkapnya, lihat [Kuota](https://docs.aws.amazon.com/kms/latest/developerguide/limits.html) di *Panduan Developer AWS Key Management Service *.

Untuk meminta peningkatan kuota, gunakan Kuota Layanan. Untuk informasi selengkapnya, lihat [Meminta peningkatan kuota](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html). Jika Service Quotas tidak didukung di Wilayah Anda, [buka case](https://console.aws.amazon.com/support/home#/). AWS Dukungan 

## Mengaktifkan replikasi untuk objek terenkripsi
<a name="replication-walkthrough-4"></a>

Secara default, Amazon S3 tidak mereplikasi objek yang dienkripsi dengan menggunakan enkripsi sisi server dengan () kunci (SSE-KMS) atau enkripsi sisi server AWS Key Management Service dua lapis dengan kunci (DSSE-KMS AWS KMS). AWS KMS Untuk mereplikasi objek yang dienkripsi dengan SSE-KMS atau DSS-KMS, Anda harus memodifikasi konfigurasi replikasi bucket agar Amazon S3 dapat mereplikasi objek tersebut. Contoh ini menjelaskan cara menggunakan konsol Amazon S3 dan AWS Command Line Interface (AWS CLI) untuk mengubah konfigurasi replikasi bucket guna mengaktifkan replikasi objek terenkripsi.

**catatan**  
Saat Kunci Bucket S3 diaktifkan untuk bucket sumber atau tujuan, konteks enkripsi akan menjadi Amazon Resource Name (ARN) bucket, bukan ARN objek. Anda harus memperbarui kebijakan IAM Anda untuk menggunakan ARN bucket untuk konteks enkripsi. Untuk informasi selengkapnya, lihat [Replikasi dan Kunci Bucket S3](#bk-replication).

**catatan**  
Anda dapat menggunakan Multi-wilayah AWS KMS keys di Amazon S3. Namun, Amazon S3 saat ini memperlakukan kunci multi-Wilayah selayaknya kunci satu Wilayah, dan tidak menggunakan fitur multi-Wilayah dari kunci tersebut. Untuk informasi selengkapnya, lihat [Menggunakan kunci Multi-wilayah](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) di *Panduan AWS Key Management Service Pengembang*.

### Menggunakan konsol S3
<a name="replication-ex4-console"></a>

Untuk step-by-step instruksi, lihat[Mengkonfigurasi replikasi untuk bucket di akun yang sama](replication-walkthrough1.md). Topik ini memberikan instruksi untuk menyetel konfigurasi replikasi ketika bucket sumber dan tujuan dimiliki oleh yang sama dan berbeda. Akun AWS

### Menggunakan AWS CLI
<a name="replication-ex4-cli"></a>

Untuk mereplikasi objek terenkripsi dengan AWS CLI, Anda melakukan hal berikut: 
+ Buat bucket sumber dan tujuan, lalu aktifkan Penentuan Versi pada bucket ini. 
+ Buat peran layanan AWS Identity and Access Management (IAM) yang memberikan izin Amazon S3 untuk mereplikasi objek. Izin peran IAM mencakup izin yang diperlukan untuk mereplikasi objek yang dienkripsi.
+ Tambahkan konfigurasi replikasi ke bucket sumber. Konfigurasi replikasi menyediakan informasi yang terkait dengan replikasi objek yang dienkripsi dengan menggunakan kunci KMS.
+ Tambahkan objek terenkripsi ke bucket sumber. 
+ Uji penyiapan untuk mengonfirmasi bahwa objek terenkripsi Anda sedang direplikasi ke bucket tujuan.

Prosedur berikut memandu Anda menjalankan proses ini. 

**Untuk mereplikasi objek yang dienkripsi di sisi server (AWS CLI)**

Untuk menggunakan contoh dalam prosedur ini, ganti `user input placeholders` dengan informasi Anda sendiri.

1. Dalam contoh ini, Anda membuat bucket source (*`amzn-s3-demo-source-bucket`*) dan destination (*`amzn-s3-demo-destination-bucket`*) secara bersamaan Akun AWS. Anda juga menetapkan profil kredensial untuk AWS CLI. Contoh ini menggunakan nama profil `acctA`. 

   Untuk informasi tentang menyetel profil kredensi dan menggunakan profil bernama, lihat [Pengaturan konfigurasi dan file kredensi](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) di *AWS Command Line Interface Panduan Pengguna*. 

1. Gunakan perintah berikut untuk membuat bucket `amzn-s3-demo-source-bucket` dan mengaktifkan Penentuan Versi di dalamnya. Contoh perintah berikut membuat bucket `amzn-s3-demo-source-bucket` di Wilayah AS Timur (Virginia Utara) (`us-east-1`).

   ```
   aws s3api create-bucket \
   --bucket amzn-s3-demo-source-bucket \
   --region us-east-1 \
   --profile acctA
   ```

   ```
   aws s3api put-bucket-versioning \
   --bucket amzn-s3-demo-source-bucket \
   --versioning-configuration Status=Enabled \
   --profile acctA
   ```

1. Gunakan perintah berikut untuk membuat bucket `amzn-s3-demo-destination-bucket` dan mengaktifkan Penentuan Versi di dalamnya. Contoh perintah berikut membuat bucket `amzn-s3-demo-destination-bucket` di Wilayah AS Barat (Oregon) (`us-west-2`). 
**catatan**  
Untuk menyiapkan konfigurasi replikasi saat bucket `amzn-s3-demo-source-bucket` dan `amzn-s3-demo-destination-bucket` berada di Akun AWS yang sama, Anda menggunakan profil yang sama. Contoh ini menggunakan `acctA`. Untuk mengonfigurasi replikasi ketika bucket dimiliki oleh yang berbeda Akun AWS, Anda menentukan profil yang berbeda untuk masing-masing. 

   

   ```
   aws s3api create-bucket \
   --bucket amzn-s3-demo-destination-bucket \
   --region us-west-2 \
   --create-bucket-configuration LocationConstraint=us-west-2 \
   --profile acctA
   ```

   ```
   aws s3api put-bucket-versioning \
   --bucket amzn-s3-demo-destination-bucket \
   --versioning-configuration Status=Enabled \
   --profile acctA
   ```

1. Di samping itu, Anda membuat peran layanan IAM. Anda akan menentukan peran ini dalam konfigurasi replikasi yang Anda tambahkan ke `amzn-s3-demo-source-bucket` bucket nanti. Amazon S3 mengasumsikan peran ini untuk mereplikasi objek atas nama Anda. Anda membuat peran IAM dalam dua langkah:
   + Membuat peran layanan.
   + Lampirkan kebijakan izin pada peran tersebut.

   1. Untuk membuat peran layanan IAM, lakukan hal berikut:

      1. Salin kebijakan kepercayaan berikut dan simpan ke file bernama `s3-role-trust-policy-kmsobj.json` di direktori saat ini di komputer lokal Anda. Kebijakan ini memberikan izin utama layanan Amazon S3 untuk mengambil peran sehingga Amazon S3 dapat melakukan tugas atas nama Anda.

------
#### [ JSON ]

****  

         ```
         {
            "Version":"2012-10-17",		 	 	 
            "Statement":[
               {
                  "Effect":"Allow",
                  "Principal":{
                     "Service":"s3.amazonaws.com"
                  },
                  "Action":"sts:AssumeRole"
               }
            ]
         }
         ```

------

      1. Gunakan perintah berikut ini untuk membuat peran tersebut:

         ```
         $ aws iam create-role \
         --role-name replicationRolekmsobj \
         --assume-role-policy-document file://s3-role-trust-policy-kmsobj.json  \
         --profile acctA
         ```

   1. Selanjutnya, Anda melampirkan kebijakan izin pada peran tersebut. Kebijakan ini memberikan izin untuk berbagai bucket dan tindakan objek Amazon S3. 

      1. Salin kebijakan kepercayaan berikut dan simpan di berkas dengan nama `s3-role-permissions-policykmsobj.json` di direktori saat ini di komputer lokal Anda. Anda akan membuat peran IAM dan melampirkan kebijakannya nanti. 
**penting**  
Dalam kebijakan izin, Anda menentukan AWS KMS kunci IDs yang akan digunakan untuk enkripsi `amzn-s3-demo-source-bucket` dan `amzn-s3-demo-destination-bucket` bucket. Anda harus membuat dua kunci KMS terpisah untuk `amzn-s3-demo-source-bucket` dan `amzn-s3-demo-destination-bucket` ember. AWS KMS keys tidak dibagi Wilayah AWS di luar tempat mereka diciptakan. 

------
#### [ JSON ]

****  

         ```
         {
            "Version":"2012-10-17",		 	 	 
            "Statement":[
               {
                  "Action":[
                     "s3:ListBucket",
                     "s3:GetReplicationConfiguration",
                     "s3:GetObjectVersionForReplication",
                     "s3:GetObjectVersionAcl",
                     "s3:GetObjectVersionTagging"
                  ],
                  "Effect":"Allow",
                  "Resource":[
                     "arn:aws:s3:::amzn-s3-demo-source-bucket",
                     "arn:aws:s3:::amzn-s3-demo-source-bucket/*"
                  ]
               },
               {
                  "Action":[
                     "s3:ReplicateObject",
                     "s3:ReplicateDelete",
                     "s3:ReplicateTags"
                  ],
                  "Effect":"Allow",
                  "Condition":{
                     "StringLikeIfExists":{
                        "s3:x-amz-server-side-encryption":[
                           "aws:kms",
                           "AES256",
                           "aws:kms:dsse"
                        ],
                        "s3:x-amz-server-side-encryption-aws-kms-key-id":[
                           "AWS KMS key IDs(in ARN format) to use for encrypting object replicas"  
                        ]
                     }
                  },
                  "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
               },
               {
                  "Action":[
                     "kms:Decrypt"
                  ],
                  "Effect":"Allow",
                  "Condition":{
                     "StringLike":{
                        "kms:ViaService":"s3.us-east-1.amazonaws.com",
                        "kms:EncryptionContext:aws:s3:arn":[
                           "arn:aws:s3:::amzn-s3-demo-source-bucket/*"
                        ]
                     }
                  },
                  "Resource":[
                     "arn:aws:kms:us-east-1:111122223333:key/key-id" 
                  ]
               },
               {
                  "Action":[
                     "kms:Encrypt"
                  ],
                  "Effect":"Allow",
                  "Condition":{
                     "StringLike":{
                        "kms:ViaService":"s3.us-west-2.amazonaws.com",
                        "kms:EncryptionContext:aws:s3:arn":[
                           "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
                        ]
                     }
                  },
                  "Resource":[
                     "arn:aws:kms:us-west-2:111122223333:key/key-id" 
                  ]
               }
            ]
         }
         ```

------

      1. Buat kebijakan dan lampirkan ke peran tersebut.

         ```
         $ aws iam put-role-policy \
         --role-name replicationRolekmsobj \
         --policy-document file://s3-role-permissions-policykmsobj.json \
         --policy-name replicationRolechangeownerPolicy \
         --profile acctA
         ```

1. Selanjutnya, tambahkan konfigurasi replikasi berikut ke bucket `amzn-s3-demo-source-bucket`. Ini memberi tahu Amazon S3 untuk mereplikasi objek dengan awalan `Tax/` ke bucket `amzn-s3-demo-destination-bucket`. 
**penting**  
Dalam konfigurasi replikasi, Anda menentukan peran IAM yang dapat diasumsikan oleh Amazon S3. Anda dapat melakukannya hanya jika Anda memiliki izin `iam:PassRole`. Profil yang Anda tentukan dalam perintah CLI harus memiliki izin ini. Untuk informasi selengkapnya, lihat [Memberikan izin pengguna untuk meneruskan peran ke Layanan AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html) di *Panduan Pengguna IAM*.

   ```
    <ReplicationConfiguration>
     <Role>IAM-Role-ARN</Role>
     <Rule>
       <Priority>1</Priority>
       <DeleteMarkerReplication>
          <Status>Disabled</Status>
       </DeleteMarkerReplication>
       <Filter>
          <Prefix>Tax</Prefix>
       </Filter>
       <Status>Enabled</Status>
       <SourceSelectionCriteria>
         <SseKmsEncryptedObjects>
           <Status>Enabled</Status>
         </SseKmsEncryptedObjects>
       </SourceSelectionCriteria>
       <Destination>
         <Bucket>arn:aws:s3:::amzn-s3-demo-destination-bucket</Bucket>
         <EncryptionConfiguration>
           <ReplicaKmsKeyID>AWS KMS key IDs to use for encrypting object replicas</ReplicaKmsKeyID>
         </EncryptionConfiguration>
       </Destination>
     </Rule>
   </ReplicationConfiguration>
   ```

   Untuk menambahkan konfigurasi replikasi ke bucket `amzn-s3-demo-source-bucket`, lakukan hal berikut:

   1. Ini AWS CLI mengharuskan Anda untuk menentukan konfigurasi replikasi sebagai JSON. Simpan JSON berikut dalam file (`replication.json`) dalam direktori saat ini di komputer lokal Anda. 

      ```
      {
         "Role":"IAM-Role-ARN",
         "Rules":[
            {
               "Status":"Enabled",
               "Priority":1,
               "DeleteMarkerReplication":{
                  "Status":"Disabled"
               },
               "Filter":{
                  "Prefix":"Tax"
               },
               "Destination":{
                  "Bucket":"arn:aws:s3:::amzn-s3-demo-destination-bucket",
                  "EncryptionConfiguration":{
                     "ReplicaKmsKeyID":"AWS KMS key IDs (in ARN format) to use for encrypting object replicas"
                  }
               },
               "SourceSelectionCriteria":{
                  "SseKmsEncryptedObjects":{
                     "Status":"Enabled"
                  }
               }
            }
         ]
      }
      ```

   1. Edit JSON guna memberikan nilai untuk bucket `amzn-s3-demo-destination-bucket`, `AWS KMS key IDs (in ARN format)`, dan `IAM-role-ARN`. Simpan perubahan.

   1. Gunakan perintah berikut untuk menambahkan konfigurasi replikasi ke bucket `amzn-s3-demo-source-bucket` Anda. Pastikan untuk memberikan nama bucket `amzn-s3-demo-source-bucket`.

      ```
      $ aws s3api put-bucket-replication \
      --replication-configuration file://replication.json \
      --bucket amzn-s3-demo-source-bucket \
      --profile acctA
      ```

1. Uji konfigurasi untuk memverifikasi bahwa objek terenkripsi direplikasi. Di konsol Amazon S3, lakukan berikut ini:

   1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon S3 di. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

   1. Di bucket `amzn-s3-demo-source-bucket`, buat folder bernama `Tax`. 

   1. Tambahkan objek sampel ke folder. Pastikan untuk memilih opsi enkripsi dan tentukan kunci KMS Anda untuk mengenkripsi objek. 

   1. Pastikan bahwa bucket `amzn-s3-demo-destination-bucket` berisi replika objek dan dienkripsi menggunakan kunci KMS yang Anda tentukan dalam konfigurasi. Untuk informasi selengkapnya, lihat [Mendapatkan informasi status replikasi](replication-status.md).

### Menggunakan AWS SDKs
<a name="replication-ex4-sdk"></a>

Untuk contoh kode yang menunjukkan cara menambahkan konfigurasi replikasi, lihat [Menggunakan AWS SDKs](replication-walkthrough1.md#replication-ex1-sdk). Anda harus memodifikasi konfigurasi replikasi dengan tepat. 

 

# Mereplikasi perubahan metadata dengan sinkronisasi modifikasi replika
<a name="replication-for-metadata-changes"></a>

Sinkronisasi modifikasi replika Amazon S3 dapat membantu Anda menyimpan metadata objek seperti tag, daftar kontrol akses (ACLs), dan pengaturan Kunci Objek direplikasi antara replika dan objek sumber. Secara default, Amazon S3 mereplikasi metadata dari objek sumber ke replika saja. Saat sinkronisasi modifikasi replika diaktifkan, Amazon S3 mereplikasi perubahan metadata yang dibuat pada salinan replika kembali ke objek sumber, membuat replikasi dua arah (replikasi dua arah).

## Mengaktifkan sinkronisasi modifikasi replika
<a name="enabling-replication-for-metadata-changes"></a>

Anda dapat menggunakan sinkronisasi modifikasi replika Amazon S3 dengan aturan replikasi baru atau yang sudah ada. Anda dapat menerapkannya ke seluruh ember atau objek yang memiliki awalan tertentu.

Untuk mengaktifkan sinkronisasi modifikasi replika dengan menggunakan konsol Amazon S3, lihat. [Contoh untuk mengonfigurasi replikasi langsung](replication-example-walkthroughs.md) Topik ini memberikan petunjuk untuk mengaktifkan sinkronisasi modifikasi replika dalam konfigurasi replikasi Anda saat bucket sumber dan tujuan dimiliki oleh yang sama atau berbeda. Akun AWS

Untuk mengaktifkan sinkronisasi modifikasi replika dengan menggunakan AWS Command Line Interface (AWS CLI), Anda harus menambahkan konfigurasi replikasi ke bucket yang berisi replika yang diaktifkan. `ReplicaModifications` Untuk menyiapkan replikasi dua arah, buat aturan replikasi dari bucket sumber (`amzn-s3-demo-source-bucket`) ke bucket yang berisi replika (). `amzn-s3-demo-destination-bucket` Kemudian, buat aturan replikasi kedua dari bucket yang berisi replika (`amzn-s3-demo-destination-bucket`) ke bucket sumber (`amzn-s3-demo-source-bucket`). Ember sumber dan tujuan bisa sama atau berbeda Wilayah AWS.

**catatan**  
Anda harus mengaktifkan sinkronisasi modifikasi replika pada bucket sumber dan tujuan untuk mereplikasi perubahan metadata replika seperti daftar kontrol akses objek (ACLs), tag objek, atau pengaturan Kunci Objek pada objek yang direplikasi. Seperti semua aturan replikasi, Anda dapat menerapkan aturan ini ke seluruh bucket atau subset objek yang difilter oleh awalan atau tag objek.

Dalam contoh konfigurasi berikut, Amazon S3 mereplikasi perubahan metadata di bawah awalan `Tax` ke bucket`amzn-s3-demo-source-bucket`, yang berisi objek sumber.

```
{
    "Rules": [
        {
            "Status": "Enabled",
            "Filter": {
                "Prefix": "Tax"
            },
            "SourceSelectionCriteria": {
                "ReplicaModifications":{
                    "Status": "Enabled"
                }
            },
            "Destination": {
                "Bucket": "arn:aws:s3:::amzn-s3-demo-source-bucket"
            },
            "Priority": 1
        }
    ],
    "Role": "IAM-Role-ARN"
}
```

Untuk petunjuk lengkap tentang membuat aturan replikasi dengan menggunakan AWS CLI, lihat[Mengkonfigurasi replikasi untuk bucket di akun yang sama](replication-walkthrough1.md).

# Mereplikasi penanda hapus di antara bucket
<a name="delete-marker-replication"></a>

Secara default, saat Replikasi S3 diaktifkan dan objek dihapus di bucket sumber, Amazon S3 menambahkan penanda hapus hanya dalam bucket sumber. Tindakan ini membantu melindungi data di bucket tujuan dari penghapusan yang tidak disengaja atau berbahaya. Jika *replikasi penanda hapus* diaktifkan, penanda ini akan disalin ke bucket tujuan, dan Amazon S3 berperilaku seolah-olah objek telah dihapus di bucket sumber dan tujuan. Untuk informasi selengkapnya tentang cara kerja penanda hapus, lihat [Bekerja dengan penanda hapus](DeleteMarker.md).

**catatan**  
Hapus replikasi penanda tidak didukung untuk aturan replikasi berbasis tag. Hapus replikasi penanda juga tidak mematuhi perjanjian tingkat layanan (SLA) 15 menit yang diberikan saat Anda menggunakan Kontrol Waktu Replikasi S3 (S3 RTC).
Jika Anda tidak menggunakan konfigurasi replikasi terbaru versi XHTML, operasi delete mempengaruhi replikasi secara berbeda. Untuk informasi selengkapnya, lihat [Bagaimana cara menghapus operasi yang memengaruhi replikasi](replication-what-is-isnot-replicated.md#replication-delete-op).
Jika Anda mengaktifkan replikasi penanda hapus dan bucket sumber Anda memiliki aturan kedaluwarsa Siklus Hidup S3, penanda hapus yang ditambahkan oleh aturan kedaluwarsa Siklus Hidup S3 tidak akan direplikasi ke bucket tujuan.

## Mengaktifkan replikasi penanda hapus
<a name="enabling-delete-marker-replication"></a>

Anda dapat mulai menggunakan replikasi penanda hapus dengan aturan replikasi baru atau yang sudah ada. Anda dapat menerapkan replikasi penanda hapus ke seluruh bucket atau objek yang memiliki awalan tertentu.

Untuk mengaktifkan replikasi penanda hapus dengan menggunakan konsol Amazon S3, lihat. [Menggunakan konsol S3](replication-walkthrough1.md#enable-replication) Topik ini memberikan petunjuk untuk mengaktifkan replikasi penanda hapus dalam konfigurasi replikasi Anda saat bucket sumber dan tujuan dimiliki oleh yang sama atau berbeda. Akun AWS

Untuk mengaktifkan replikasi penanda hapus dengan menggunakan AWS Command Line Interface (AWS CLI), Anda harus menambahkan konfigurasi replikasi ke bucket sumber dengan `DeleteMarkerReplication` diaktifkan, seperti yang ditunjukkan pada contoh konfigurasi berikut. 

Dalam contoh konfigurasi replikasi berikut, penanda hapus direplikasi ke bucket tujuan `amzn-s3-demo-destination-bucket` untuk objek di bawah awalan. `Tax`

```
{
    "Rules": [
        {
            "Status": "Enabled",
            "Filter": {
                "Prefix": "Tax"
            },
            "DeleteMarkerReplication": {
                "Status": "Enabled"
            },
            "Destination": {
                "Bucket": "arn:aws:s3:::amzn-s3-demo-destination-bucket"
            },
            "Priority": 1
        }
    ],
    "Role": "IAM-Role-ARN"
}
```

Untuk petunjuk lengkap tentang membuat aturan replikasi melalui AWS CLI, lihat[Mengkonfigurasi replikasi untuk bucket di akun yang sama](replication-walkthrough1.md).