全部产品
Search
文档中心

Object Storage Service:Replikasi lintas akun dalam wilayah yang sama

更新时间:Nov 09, 2025

Replikasi di wilayah yang sama (SRR) lintas akun secara otomatis dan asinkron menyalin operasi objek, seperti pembuatan, pembaruan, dan penghapusan, dari bucket sumber di Akun A ke bucket tujuan di wilayah yang sama di bawah Akun B. Topik ini menjelaskan cara mengonfigurasi SRR lintas akun.

Prasyarat

  • Buat Bucket A di wilayah tertentu di bawah Akun A sebagai bucket sumber untuk SRR. Catat UID Akun A, nama Bucket A, dan wilayahnya.

  • Buat Bucket B di wilayah yang sama di bawah Akun B sebagai bucket tujuan untuk SRR. Catat UID Akun B dan nama Bucket B.

Otorisasi peran

Tugas SRR lintas akun melibatkan bucket dari dua akun yang berbeda. Oleh karena itu, Anda harus mengonfigurasi kebijakan kepercayaan dan kebijakan hak istimewa minimal untuk peran Resource Access Management (RAM).

  1. Gunakan Akun A untuk melakukan operasi berikut.

    1. Buat peran layanan.

      Penting

      Anda dapat menggunakan Pengguna RAM untuk membuat peran. Pengguna RAM harus memiliki izin berikut: ram:CreateRole, ram:GetRole, ram:ListPoliciesForRole, dan ram:AttachPolicyToRole. Namun, memberikan izin kepada Pengguna RAM seperti ram:CreateRole dan ram:GetRole menimbulkan ancaman keamanan tinggi. Kami sarankan Anda menggunakan Akun Alibaba Cloud untuk membuat peran RAM dan memberikan izin kepadanya. Setelah otorisasi selesai, Pengguna RAM dapat langsung menggunakan peran RAM yang dibuat oleh Akun Alibaba Cloud.

      Selama proses pembuatan peran, pilih Alibaba Cloud Service sebagai jenis entitas tepercaya dan Object Storage Service sebagai nama entitas tepercaya. Untuk informasi lebih lanjut, lihat Buat Peran Layanan.

      Catatan

      Setelah peran dibuat, catat ARN peran RAM dari bagian Basic Information untuk digunakan nanti.

    2. Berikan izin peran untuk melakukan SRR lintas akun pada bucket sumber.

      Anda dapat memberikan izin kepada peran dengan salah satu cara berikut.

      Berikan kebijakan sistem ke peran RAM

      Peringatan

      Anda dapat memberikan kebijakan sistem AliyunOSSFullAccess kepada peran RAM. Kebijakan AliyunOSSFullAccess memberikan izin penuh pada semua bucket di bawah akun saat ini secara default. Gunakan kebijakan ini dengan hati-hati.

      Berikan kebijakan kustom ke peran RAM

      Gunakan kebijakan RAM untuk memberikan peran RAM hak istimewa minimal yang diperlukan untuk replikasi pada bucket sumber (src-bucket).

      Catatan

      Saat Anda menggunakan kebijakan ini, ganti nama bucket sumber sesuai kebutuhan.

      {
         "Version":"1",
         "Statement":[
            {
               "Effect":"Allow",
               "Action":[
                  "oss:ReplicateList",
                  "oss:ReplicateGet"
               ],
               "Resource":[
                  "acs:oss:*:*:src-bucket",          	
                  "acs:oss:*:*:src-bucket/*"
               ]
            }
         ]
      }

      Jika Anda ingin mereplikasi objek terenkripsi Key Management Service (KMS) ke bucket tujuan, Anda juga harus memberikan kebijakan sistem AliyunKMSFullAccess kepada peran tersebut. Untuk informasi lebih lanjut, lihat Berikan Izin ke Peran RAM.

  2. Gunakan Akun B untuk memberikan izin peran menerima objek yang direplikasi di bucket tujuan.

    (Direkomendasikan) Metode 1: Tambahkan kebijakan menggunakan editor visual

    1. Masuk ke Konsol OSS.

    2. Di panel navigasi di sebelah kiri, klik Buckets, lalu klik nama bucket tujuan dest-bucket.

    3. Di panel navigasi di sebelah kiri, pilih Permission Control > Bucket Policy.

    4. Di halaman Bucket Policy, pada tab Add in GUI, klik Receive Objects to Replicate.

    5. Di panel Receive Objects to Replicate, untuk Obtain UID and RAM Role From, pilih Obtain From Source Replication RAM Role ARN. Untuk Source RAM Role ARN for Replication, masukkan ARN peran yang Anda catat di Langkah 1. Untuk Authorization Purpose, pilih Cross-account SRR.

    6. Klik Generate Policy.

    Metode 2: Tambahkan dengan Kebijakan Sintaksis

    1. Di panel navigasi di sebelah kiri, pilih Permission Control > Bucket Policy.

    2. Di halaman Bucket Policy, pada tab Add by Syntax, klik Edit.

    3. Di editor kebijakan, masukkan kebijakan bucket berikut.

      Penting
      • Saat Anda menambahkan kebijakan bucket menggunakan editor JSON, kebijakan baru akan menimpa kebijakan yang ada. Pastikan kebijakan baru mencakup konten dari kebijakan yang ada. Jika tidak, operasi yang bergantung pada kebijakan yang ada mungkin gagal.

      • Saat Anda menggunakan kebijakan ini, ganti nama peran kustom, nama bucket tujuan (dest-bucket), UID akun yang memiliki bucket sumber (137918634953xxxx), dan UID akun yang memiliki bucket tujuan (111933544165xxxx) sesuai kebutuhan. Jika nama peran kustom mengandung huruf besar, ubah menjadi huruf kecil. Sebagai contoh, jika peran yang dibuat bernama AliyunOssDrsRole, Anda harus mengubahnya menjadi aliyunossdrsrole. UID harus merupakan UID Akun Alibaba Cloud.

      {
         "Version":"1",
         "Statement":[
            {
              "Effect":"Allow",
              "Action":[
                  "oss:ReplicateList",
                  "oss:ReplicateGet",
                  "oss:ReplicatePut",
                  "oss:ReplicateDelete"			
               ],
              "Principal": [
                  "arn:sts::137918634953xxxx:assumed-role/aliyunossdrsrole/*"		 
      		 ],
               "Resource":[
                  "acs:oss:*:111933544165xxxx:dest-bucket",          	
                  "acs:oss:*:111933544165xxxx:dest-bucket/*"
               ]
            }
         ]
      }
    4. Klik Save.

Replikasi objek terenkripsi KMS

Untuk mereplikasi objek terenkripsi KMS dari bucket sumber di bawah Akun A ke bucket tujuan di bawah Akun B, gunakan Akun B untuk melaksanakan langkah-langkah berikut.

  1. Masuk ke halaman Manajemen Instans di konsol KMS. Beli dan aktifkan instans KMS di wilayah yang sama dengan bucket tujuan. Saat membeli instans KMS, pastikan bahwa Access Management Quantity adalah 2 atau lebih. Pertahankan konfigurasi default untuk parameter lainnya. Untuk informasi lebih lanjut, lihat Beli dan Aktifkan Instans KMS.

    Catatan

    Replikasi objek terenkripsi KMS lintas akun bergantung pada KMS. Wilayah yang mendukung fitur ini dibatasi oleh KMS. Untuk informasi lebih lanjut tentang wilayah yang didukung oleh KMS, lihat Wilayah dan Titik Akhir yang Mendukung Kunci yang Dilindungi Perangkat Lunak.

  2. Buat kunci di instans KMS. Jenis kunci harus berupa kunci non-default. Kami sarankan menggunakan kunci yang dilindungi perangkat lunak. Untuk informasi lebih lanjut, lihat Buat Kunci yang Dilindungi Perangkat Lunak.

    Catatan

    Setelah kunci dibuat, catat ARN kunci dari bagian Basic Information untuk digunakan saat Anda membuat aturan replikasi.

  3. Atur kebijakan kunci untuk kunci yang telah dibuat. Saat mengatur kebijakan kunci, pilih Pengguna Akun Lain dan tentukan ARN peran yang Anda buat di langkah-langkah sebelumnya sebagai Other Account User. Untuk informasi lebih lanjut, lihat Atur Kebijakan Kunci.

    Penting

    Untuk mereplikasi data terenkripsi KMS lintas akun, kebijakan kunci harus mencakup setidaknya izin dekripsi (kms:Decrypt) dan hasilkan kunci data (kms:GenerateDataKey). Saat mengatur kebijakan kunci di konsol, izin ini disertakan secara default. Jika Anda mengatur kebijakan kunci kustom menggunakan OpenAPI, pastikan kebijakan tersebut mencakup setidaknya izin kms:Decrypt dan kms:GenerateDataKey.

Prosedur

Gunakan Konsol OSS

Gunakan Akun A untuk membuat aturan SRR untuk bucket sumber.

  1. Masuk ke Konsol OSS.

  2. Klik Buckets, lalu pilih src-bucket.

  3. Di panel navigasi kiri, pilih Data Management > SRR.

  4. Di tab SRR, klik SRR.

  5. Di kotak dialog SRR, konfigurasikan parameter sesuai dengan tabel berikut.

    Bagian

    Parameter

    Deskripsi

    Configure Destination Bucket

    Source Bucket

    Wilayah dan nama bucket sumber ditampilkan.

    Destination Bucket

    Pilih Specify A Bucket In Another Account, lalu masukkan nama bucket tujuan secara manual.

    Configure Replication Policy

    Objects to Replicate

    Pilih data sumber untuk direplikasi.

    • Synchronize all files: Mereplikasi semua objek di bucket ke bucket tujuan.

    • Replicate Objects With A Specified Prefix: Mereplikasi objek dengan awalan tertentu ke bucket tujuan. Anda dapat menambahkan hingga 10 awalan secara default. Untuk meningkatkan jumlah awalan, hubungi Dukungan Teknis untuk menaikkan batas menjadi 30.

    Replication Policy

    Pilih metode replikasi data.

    Catatan

    Setelah aturan replikasi data dibuat, perubahan pada kelas penyimpanan objek di bucket sumber yang disebabkan oleh aturan siklus hidup atau operasi CopyObject tidak akan disinkronkan ke bucket tujuan. Properti waktu akses terakhir (x-oss-last-access-time) dari objek di bucket sumber juga tidak disinkronkan.

    • Add/Change (berlaku untuk pemulihan bencana): OSS hanya mereplikasi operasi pembuatan dan pembaruan objek dari bucket sumber ke bucket tujuan.

      Penting

      Jika kebijakan replikasi ini diterapkan, hanya objek yang diunggah atau diperbarui setelah kebijakan berlaku yang akan direplikasi ke bucket tujuan, dan objek yang dihapus dari bucket sumber tidak akan dihapus dari bucket tujuan. Kebijakan ini secara efektif mencegah kehilangan data di bucket tujuan akibat penghapusan manual atau otomatis yang dipicu oleh kebijakan siklus hidup di bucket sumber.

    • Add/Delete/Change (berlaku untuk skenario di mana beberapa pengguna atau aplikasi perlu berbagi dan mengakses set data yang sama): OSS mereplikasi operasi pembuatan, pembaruan, dan penghapusan objek dari bucket sumber ke bucket tujuan.

      Penting

      Selain replikasi objek yang baru diunggah dan diperbarui, kebijakan replikasi ini mencakup replikasi penghapusan, yang memastikan konsistensi data. Kebijakan ini berlaku untuk skenario di mana beberapa pengguna atau aplikasi perlu berbagi dan mengakses set data yang sama. Objek yang dihapus dari bucket sumber, baik secara manual maupun melalui kebijakan siklus hidup, juga akan dihapus dari bucket tujuan. Objek tidak dapat dipulihkan setelah dihapus.

    Jika objek diunggah ke bucket sumber menggunakan unggah multi-bagian, operasi unggah untuk setiap bagian direplikasi ke bucket tujuan. Objek akhir yang dihasilkan setelah operasi CompleteMultipartUpload dilakukan pada semua bagian juga direplikasi ke bucket tujuan.

    Untuk informasi lebih lanjut tentang perilaku replikasi saat SRR digunakan dengan pengendalian versi, lihat SRR dengan pengendalian versi.

    Replicate Historical Data

    Pilih apakah akan mereplikasi data historis yang sudah ada di bucket sumber sebelum aturan SRR berlaku.

    • Replicate: Mereplikasi data historis ke bucket tujuan.

      Penting

      Saat data historis direplikasi, objek dari bucket sumber dapat menimpa objek dengan nama yang sama di bucket tujuan. Untuk mencegah kehilangan data, kami sarankan Anda mengaktifkan pengendalian versi untuk bucket sumber dan tujuan.

    • Do Not Replicate: Hanya mereplikasi objek yang diunggah atau diperbarui setelah aturan SRR berlaku.

    Replicate KMS-encrypted Objects

    Pilih apakah akan mereplikasi objek terenkripsi KMS dari bucket sumber ke bucket tujuan.

    • Replicate: Pilih opsi ini untuk mereplikasi objek ke bucket tujuan jika objek sumber atau bucket tujuan dienkripsi menggunakan kunci yang dikelola KMS (SSE-KMS, dengan ID CMK yang ditentukan). Setelah Anda memilih opsi ini, Anda juga harus menentukan kunci KMS.

      Catatan

      Anda dapat menanyakan status enkripsi objek sumber dan bucket tujuan dengan memanggil operasi HeadObject dan GetBucketEncryption, masing-masing.

    • Do Not Replicate: Tidak mereplikasi objek terenkripsi KMS ke bucket tujuan.

    KMS Key To Use

    Masukkan ARN kunci KMS. Untuk informasi lebih lanjut tentang cara mendapatkan ARN kunci KMS, lihat Buat kunci di instance KMS.

    RAM Role

    Dari daftar drop-down, pilih peran yang dibuat di Langkah 1.

  6. Klik OK, dan di kotak dialog yang muncul, klik Enable.

    • Setelah aturan SRR dibuat, Anda tidak dapat mengedit atau menghapusnya.

    • Tugas replikasi dimulai 3 hingga 5 menit setelah aturan SRR dikonfigurasi. Anda dapat melihat kemajuan replikasi di tab Same-Region Replication dari bucket sumber.

    • SRR antar bucket adalah proses asinkron. Waktu yang diperlukan untuk mereplikasi data ke bucket tujuan bergantung pada ukuran data dan biasanya berkisar dari beberapa menit hingga beberapa jam.

Gunakan SDK Alibaba Cloud

SRR lintas akun hanya didukung oleh kit pengembangan perangkat lunak (SDK) untuk Java, Python, dan Go.

Java

import com.aliyun.oss.*;
import com.aliyun.oss.common.auth.*;
import com.aliyun.oss.common.comm.SignVersion;
import com.aliyun.oss.model.AddBucketReplicationRequest;

public class Demo {

    public static void main(String[] args) throws Exception {
        // Contoh berikut menggunakan titik akhir wilayah China (Hangzhou). Ganti titik akhir dengan titik akhir sebenarnya.
        String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
        // Tentukan ID wilayah yang sesuai dengan titik akhir. Contoh: cn-hangzhou.
        String region = "cn-hangzhou";
        // Kami sangat menyarankan agar Anda tidak menyematkan kredensial akses Anda secara langsung dalam kode proyek Anda. Ini dapat menyebabkan kebocoran kredensial dan mengancam keamanan semua sumber daya di akun Anda. Contoh berikut menunjukkan cara mendapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh, konfigurasikan variabel lingkungan.
        EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
        // Tentukan nama bucket sumber. Contoh: src-bucket.
        String bucketName = "src-bucket";
        // Tentukan bucket tujuan tempat Anda ingin mereplikasi data. Bucket tujuan harus milik akun yang berbeda dari bucket sumber.
        String targetBucketName = "dest-bucket";
        // Tentukan wilayah tempat bucket tujuan berada. Bucket tujuan harus berada di wilayah yang sama dengan bucket sumber.
        String targetBucketLocation = "oss-cn-hangzhou";

        // Buat instance OSSClient.
        // Saat instance OSSClient tidak lagi diperlukan, panggil metode shutdown untuk melepaskan sumber daya.
        ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
        // Secara eksplisit nyatakan penggunaan algoritma tanda tangan V4.
        clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);
        OSS ossClient = OSSClientBuilder.create()
                .endpoint(endpoint)
                .credentialsProvider(credentialsProvider)
                .clientConfiguration(clientBuilderConfiguration)
                .region(region)
                .build();

        try {
            AddBucketReplicationRequest request = new AddBucketReplicationRequest(bucketName);

            request.setTargetBucketName(targetBucketName);
            request.setTargetBucketLocation(targetBucketLocation);
            // Secara default, data historis direplikasi. Contoh ini menetapkan nilainya menjadi false untuk menonaktifkan replikasi data historis.
            request.setEnableHistoricalObjectReplication(false);
            // Tentukan nama peran yang memberi otorisasi OSS untuk mereplikasi data. Peran ini harus telah diberikan izin untuk melakukan SRR pada bucket sumber dan menerima objek yang direplikasi di bucket tujuan.
            request.setSyncRole("yourRole");           
            //List prefixes = new ArrayList();
            //prefixes.add("image/");
            //prefixes.add("video");
            //prefixes.add("a");
            //prefixes.add("A");
            // Tentukan awalan objek yang akan direplikasi. Setelah Anda menentukan awalan, hanya objek yang cocok dengan awalan tersebut yang akan direplikasi ke bucket tujuan.
            //request.setObjectPrefixList(prefixes);
            //List actions = new ArrayList();
            //actions.add(AddBucketReplicationRequest.ReplicationAction.PUT);
            // Replikasi operasi pembuatan dan pembaruan objek dari bucket sumber ke bucket tujuan.
            //request.setReplicationActionList(actions);
            ossClient.addBucketReplication(request);
        } catch (OSSException oe) {
            System.out.println("Tangkap OSSException, yang berarti permintaan Anda sampai ke OSS, "
                    + "tetapi ditolak dengan respons kesalahan karena suatu alasan.");
            System.out.println("Pesan Kesalahan:" + oe.getErrorMessage());
            System.out.println("Kode Kesalahan:" + oe.getErrorCode());
            System.out.println("ID Permintaan:" + oe.getRequestId());
            System.out.println("ID Host:" + oe.getHostId());
        } catch (ClientException ce) {
            System.out.println("Tangkap ClientException, yang berarti klien mengalami "
                    + "masalah internal serius saat mencoba berkomunikasi dengan OSS, "
                    + "seperti tidak dapat mengakses jaringan.");
            System.out.println("Pesan Kesalahan:" + ce.getMessage());
        } finally {
            if (ossClient != null) {
                ossClient.shutdown();
            }
        }
    }
}        

Python

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
from oss2.models import ReplicationRule
# Dapatkan kredensial akses dari variabel lingkungan. Sebelum Anda menjalankan kode contoh, pastikan bahwa variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah dikonfigurasi.
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# Tentukan titik akhir wilayah tempat bucket sumber berada. Misalnya, jika bucket sumber berada di wilayah China (Hangzhou), atur titik akhir ke https://oss-cn-hangzhou.aliyuncs.com.
# Tentukan nama bucket sumber. Contoh: src-bucket.
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'src-bucket')
replica_config = ReplicationRule(
    # Tentukan bucket tujuan tempat Anda ingin mereplikasi data. Bucket tujuan harus milik akun yang berbeda dari bucket sumber.
    target_bucket_name='dest-bucket',
    # Tentukan wilayah tempat bucket tujuan berada. Bucket tujuan harus berada di wilayah yang sama dengan bucket sumber.
    target_bucket_location='oss-cn-hangzhou',
    # Tentukan nama peran yang memberi otorisasi OSS untuk mereplikasi data. Peran ini harus telah diberikan izin untuk melakukan SRR pada bucket sumber dan menerima objek yang direplikasi di bucket tujuan.
    sync_role_name='yourRole',
)

# Tentukan awalan objek yang akan direplikasi. Setelah Anda menentukan awalan, hanya objek yang cocok dengan awalan tersebut yang akan direplikasi ke bucket tujuan.
# prefix_list = ['prefix1', 'prefix2']
# Atur aturan replikasi data.
# replica_config = ReplicationRule(
     # prefix_list=prefix_list,
     # Replikasi operasi pembuatan dan pembaruan objek dari bucket sumber ke bucket tujuan.
     # action_list=[ReplicationRule.PUT],
     # Tentukan bucket tujuan tempat Anda ingin mereplikasi data. Bucket tujuan harus milik akun yang berbeda dari bucket sumber.
     # target_bucket_name='dest-bucket',
     # Tentukan wilayah tempat bucket tujuan berada. Bucket tujuan harus berada di wilayah yang sama dengan bucket sumber.
     # target_bucket_location='oss-cn-hangzhou',
     # Secara default, data historis direplikasi. Contoh ini menetapkan nilainya menjadi False untuk menonaktifkan replikasi data historis.
     # is_enable_historical_object_replication=False,      
  #)

# Aktifkan replikasi data.
bucket.put_bucket_replication(replica_config)

Go

package main

import (
    "encoding/xml"
    "fmt"
    "github.com/aliyun/aliyun-oss-go-sdk/oss"
    "os"
)

func HandleError(err error) {
    fmt.Println("Error:", err)
    os.Exit(-1)
}

// Aktifkan replikasi data.
func main() {
    // Dapatkan kredensial akses dari variabel lingkungan. Sebelum Anda menjalankan kode contoh, pastikan bahwa variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah dikonfigurasi.
    provider, err := oss.NewEnvironmentVariableCredentialsProvider()
    if err != nil {
    fmt.Println("Error:", err)
    os.Exit(-1)
    }
    // Buat instance OSSClient.
    // Ganti yourEndpoint dengan titik akhir bucket. Misalnya, jika bucket berada di wilayah China (Hangzhou), atur titik akhir ke https://oss-cn-hangzhou.aliyuncs.com. Ganti titik akhir dengan titik akhir sebenarnya.
    client, err := oss.New("yourEndpoint", "", "", oss.SetCredentialsProvider(&provider))
    if err != nil {
    fmt.Println("Error:", err)
    os.Exit(-1)
    }
    // Tentukan nama bucket sumber.
    srcbucketName := "yourSrcBucket"
    // Tentukan bucket tujuan tempat Anda ingin mereplikasi data. Bucket tujuan harus milik akun yang berbeda dari bucket sumber.
    destBucketName := "yourDestBucket"
    // Tentukan awalan objek yang akan direplikasi, seperti prefix_1 dan prefix_2. Setelah Anda menentukan awalan, hanya objek yang cocok dengan awalan tersebut yang akan direplikasi ke bucket tujuan.
    // Untuk mereplikasi semua objek dari bucket sumber ke bucket tujuan, Anda tidak perlu menetapkan awalan.
    prefix1 := "prefix_1"
    prefix2 := "prefix_2"    
    prefixSet := oss.ReplicationRulePrefix{Prefix: []*string{&prefix1, &prefix2}}
    
    reqReplication := oss.PutBucketReplication{
    Rule: []oss.ReplicationRule{
    {
    PrefixSet: &prefixSet,
    //Replikasi operasi pembuatan dan pembaruan objek dari bucket sumber ke bucket tujuan.
    Action: "PUT",    
    Destination: &oss.ReplicationRuleDestination{
    Bucket: destBucketName,
    // Tentukan wilayah tempat bucket tujuan berada. Bucket sumber dan tujuan harus berada di wilayah yang sama.    
    Location: "oss-cn-hangzhou",    
    },
    // Secara default, data historis direplikasi. Contoh ini menetapkan nilainya menjadi disabled untuk menonaktifkan replikasi data historis.
    HistoricalObjectReplication: "disabled",
    // Tentukan nama peran yang memberi otorisasi OSS untuk mereplikasi data. Peran ini harus telah diberikan izin untuk melakukan SRR lintas akun pada bucket sumber dan menerima objek yang direplikasi di bucket tujuan.
    SyncRole:                    "yourRole",    
    },
    },
    }

    xmlBody, err := xml.Marshal(reqReplication)
    if err != nil {
    HandleError(err)
    }
    err = client.PutBucketReplication(srcbucketName, string(xmlBody))

    if err != nil {
    HandleError(err)
    }

    fmt.Println("Put Bucket Replication Success!")
}

Gunakan antarmuka baris perintah ossutil

Untuk informasi lebih lanjut tentang cara mengaktifkan SRR menggunakan ossutil, lihat put-bucket-replication.

Gunakan API REST

Jika program Anda memiliki persyaratan penyesuaian tinggi, Anda dapat langsung mengirim permintaan API REST. Untuk melakukannya, Anda harus menulis kode secara manual untuk menghitung tanda tangan. Untuk informasi lebih lanjut, lihat PutBucketReplication.

Referensi