

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

# Berbagi snapshot cluster Amazon DocumentDB
<a name="backup_restore-share_cluster_snapshots"></a>

Menggunakan Amazon DocumentDB, Anda dapat membagikan snapshot cluster manual dengan cara berikut:
+ Berbagi snapshot cluster manual, baik terenkripsi maupun tidak terenkripsi, memungkinkan AWS akun resmi untuk menyalin snapshot.
+ Berbagi snapshot cluster manual, baik terenkripsi maupun tidak terenkripsi, memungkinkan AWS akun resmi untuk secara langsung memulihkan cluster dari snapshot alih-alih mengambil salinannya dan memulihkan darinya.

**catatan**  
Untuk berbagi snapshot cluster otomatis, buat snapshot cluster manual dengan menyalin snapshot otomatis, lalu bagikan salinan itu. Proses ini juga berlaku untuk sumber daya yang AWS dihasilkan Cadangan.

Anda dapat berbagi snapshot manual dengan hingga 20 lainnya Akun AWS. Anda juga dapat berbagi snapshot manual yang tidak terenkripsi sebagai publik sehingga snapshot tersebut tersedia untuk semua akun . Saat membagikan snapshot sebagai publik, pastikan bahwa tidak ada informasi privat yang dimasukkan ke dalam snapshot publik Anda.

Saat berbagi snapshot manual dengan yang lain Akun AWS, dan Anda memulihkan cluster dari snapshot bersama menggunakan AWS CLI atau Amazon DocumentDB API, Anda harus menentukan Nama Sumber Daya Amazon (ARN) dari snapshot bersama sebagai pengidentifikasi snapshot.

## Berbagi snapshot terenkripsi
<a name="backup_restore-share_encrypted_snapshots"></a>

Pembatasan berikut berlaku untuk berbagi snapshot terenkripsi: 
+ Anda tidak dapat berbagi snapshot terenkripsi sebagai publik.
+ Anda tidak dapat membagikan snapshot yang telah dienkripsi menggunakan kunci AWS KMS enkripsi default dari akun yang berbagi snapshot.

Ikuti langkah-langkah ini untuk berbagi snapshot terenkripsi.

1. Bagikan kunci enkripsi AWS Key Management Service (AWS KMS) yang digunakan untuk mengenkripsi snapshot dengan akun apa pun yang ingin Anda akses snapshot.

   Anda dapat berbagi kunci AWS KMS enkripsi dengan AWS akun lain dengan menambahkan akun lain ke kebijakan AWS KMS kunci. Untuk detail tentang memperbarui kebijakan utama, lihat [ Menggunakan Kebijakan Utama di AWS KMS ](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) di Panduan * Peng *AWS Key Management Service embang. Untuk contoh pembuatan kebijakan kunci, lihat [Membuat kebijakan IAM untuk memungkinkan penyalinan snapshot yang dienkripsi](#backup_restore-share_encrypted_snapshots-create_key_policy) nanti dalam topik ini.

1. Gunakan AWS CLI, [ seperti yang ditunjukkan di bawah ini](#backup_restore-share_snapshots), untuk berbagi snapshot terenkripsi dengan akun lain.

### Mengizinkan akses ke AWS KMS kunci enkripsi
<a name="backup_restore-share_encrypted_snapshots-share_key_policy"></a>

 Akun AWS Agar orang lain menyalin snapshot terenkripsi yang dibagikan dari akun Anda, akun tempat Anda berbagi snapshot harus memiliki akses ke AWS KMS kunci yang mengenkripsi snapshot. Untuk mengizinkan akses akun lain ke AWS KMS kunci, perbarui kebijakan AWS KMS kunci untuk kunci tersebut dengan ARN akun yang Anda bagikan sebagai prinsipal dalam kebijakan AWS KMS kunci. Kemudian izinkan tindakan `kms:CreateGrant`.

Setelah Anda memberikan akses akun ke kunci AWS KMS enkripsi Anda, untuk menyalin snapshot terenkripsi Anda, akun tersebut harus membuat pengguna AWS Identity and Access Management (IAM) jika belum memilikinya. Selain itu, akun tersebut juga harus melampirkan kebijakan IAM ke pengguna IAM yang memungkinkan pengguna menyalin snapshot terenkripsi menggunakan kunci Anda AWS KMS . Akun harus pengguna IAM dan tidak dapat menjadi Akun AWS identitas root karena pembatasan AWS KMS keamanan.

Dalam contoh kebijakan kunci berikut, pengguna 123451234512 adalah pemilik kunci enkripsi. AWS KMS Pengguna 123456789012 adalah akun yang kuncinya sedang dibagikan dengannya. Kebijakan kunci yang diperbarui ini memberikan akses akun ke AWS KMS kunci tersebut. Ini dilakukan dengan memasukkan ARN untuk Akun AWS identitas root untuk pengguna 123456789012 sebagai prinsip untuk kebijakan, dan dengan mengizinkan tindakan tersebut. `kms:CreateGrant`

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

****  

```
{
    "Id": "key-policy-1",
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Allow use of the key",
            "Effect": "Allow",
            "Principal": {"AWS": [
                "arn:aws:iam::123451234512:user/KeyUser",
                "arn:aws:iam::123456789012:root"
            ]},
            "Action": [
                "kms:CreateGrant",
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:DescribeKey"
            ],
            "Resource": "*"},
            {
            "Sid": "Allow attachment of persistent resources",
            "Effect": "Allow",
            "Principal": {"AWS": [
                "arn:aws:iam::123451234512:user/KeyUser",
                "arn:aws:iam::123456789012:root"
            ]},
            "Action": [
                "kms:CreateGrant",
                "kms:ListGrants",
                "kms:RevokeGrant"
            ],
            "Resource": "*",
            "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}}
        }
    ]
}
```

------

### Membuat kebijakan IAM untuk memungkinkan penyalinan snapshot yang dienkripsi
<a name="backup_restore-share_encrypted_snapshots-create_key_policy"></a>

Ketika eksternal Akun AWS memiliki akses ke AWS KMS kunci Anda, pemilik akun tersebut dapat membuat kebijakan untuk mengizinkan pengguna IAM yang dibuat untuk akun menyalin snapshot terenkripsi yang dienkripsi dengan AWS KMS kunci tersebut.

Contoh berikut menunjukkan kebijakan yang dapat dilampirkan ke pengguna IAM untuk Akun AWS 123456789012. Kebijakan ini memungkinkan pengguna IAM untuk menyalin snapshot bersama dari akun 123451234512 yang telah dienkripsi dengan AWS KMS kunci `c989c1dd-a3f2-4a5d-8d96-e793d082ab26` di Wilayah us-west-2.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowUseOfTheKey",
            "Effect": "Allow",
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:DescribeKey",
                "kms:CreateGrant",
                "kms:RetireGrant"
            ],
            "Resource": ["arn:aws:kms:us-west-2:123451234512:key/c989c1dd-a3f2-4a5d-8d96-e793d082ab26"]
        },
        {
            "Sid": "AllowAttachmentOfPersistentResources",
            "Effect": "Allow",
            "Action": [
                "kms:CreateGrant",
                "kms:ListGrants",
                "kms:RevokeGrant"
            ],
            "Resource": ["arn:aws:kms:us-west-2:123451234512:key/c989c1dd-a3f2-4a5d-8d96-e793d082ab26"],
            "Condition": {
                "Bool": {
                    "kms:GrantIsForAWSResource": true
                }
            }
        }
    ]
}
```

------

Untuk detail tentang memperbarui kebijakan kunci, lihat [ Menggunakan Kebijakan Kunci di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) dalam *Panduan Developer AWS Key Management Service *. 

## Berbagi snapshot
<a name="backup_restore-share_snapshots"></a>

Anda dapat membagikan snapshot cluster manual Amazon DocumentDB (atau salinan snapshot otomatis) menggunakan Konsol Manajemen AWS atau: AWS CLI

------
#### [ Using the Konsol Manajemen AWS ]

Untuk berbagi snapshot menggunakan Konsol Manajemen AWS, selesaikan langkah-langkah berikut:

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

1. Di panel navigasi, pilih **Snapshot**.

1. Pilih snapshot manual yang ingin Anda bagikan.

1. Di menu tar ** ik- ** turun Tindakan, pilih Bagikan.

1. Pilih salah satu opsi berikut untuk visibilitas snapshot ** DB**:
   + Jika sumbernya tidak dienkripsi, pilih ** Publik ** untuk mengi AWS zinkan semua akun memulihkan cluster dari snapshot manual Anda. Atau pilih ** Pribadi ** untuk mengiz AWS inkan hanya akun yang Anda tentukan untuk memulihkan cluster dari snapshot manual Anda.
**Awas**  
Jika Anda mengatur visibilitas snapshot ** DB ** ke ** Pu ** blik, semua AWS akun dapat memulihkan cluster dari snapshot manual Anda dan memiliki akses ke data Anda. Jangan bagikan snapshot cluster manual apa pun yang berisi informasi pribadi sebagai Pu ** blik**.
   + Jika sumbernya dienkripsi, **Visibilitas snapshot DB** ditetapkan sebagai **Privat** karena snapshot terenkripsi tidak dapat dibagikan sebagai publik.
**catatan**  
Snapshot yang telah dienkripsi dengan default tidak AWS KMS key dapat dibagikan.

1. Untuk ID **AWS Akun**, masukkan pen AWS gidentifikasi akun untuk akun yang ingin Anda izinkan untuk memulihkan cluster dari snapshot manual Anda, lalu pilih Tam ** bah**. Ulangi untuk menyertakan AWS pengidentifikasi akun tambahan, hingga 20 AWS akun.

   Jika Anda membuat kesalahan saat menambahkan pengi AWS dentifikasi akun ke daftar akun yang diizinkan, Anda dapat menghapusnya dari daftar dengan memilih H ** apus ** di sebelah kanan pengidentifikasi AWS akun yang salah.  
![Diagram: berbagi preferensi snapshot](https://docs.aws.amazon.com/id_id/documentdb/latest/devguide/images/share-snapshot.png)

1. Setelah menambahkan pengidentifikasi untuk semua AWS akun yang ingin Anda izinkan untuk memulihkan snapshot manual, pilih S ** impan ** untuk menyimpan perubahan Anda.

------
#### [ Using the AWS CLI ]

Untuk berbagi snapshot menggunakan AWS CLI, gunakan `modify-db-snapshot-attribute` operasi Amazon DocumentDB. Gunakan `--values-to-add` parameter untuk menambahkan daftar ID untuk Akun AWS yang diotorisasi untuk memulihkan snapshot manual. 

Contoh berikut mengizinkan dua pengenal, Akun AWS 123451234512 dan 123456789012, untuk memulihkan snapshot bernama. `manual-snapshot1` Itu juga menghapus nilai atribut `all` untuk menandai snapshot sebagai privat.

Untuk Linux, macOS, atau Unix:

```
aws docdb modify-db-cluster-snapshot-attribute \
    --db-cluster-snapshot-identifier sample-cluster-snapshot \
    --attribute-name restore \
    --values-to-add '["123451234512","123456789012"]'
```

Untuk Windows:

```
aws docdb modify-db-cluster-snapshot-attribute ^
    --db-cluster-snapshot-identifier sample-cluster-snapshot ^
    --attribute-name restore ^
    --values-to-add '["123451234512","123456789012"]'
```

Output dari operasi ini terlihat seperti berikut. 

```
{
    "DBClusterSnapshotAttributesResult": {
        "DBClusterSnapshotIdentifier": "sample-cluster-snapshot",
        "DBClusterSnapshotAttributes": [
            {
                "AttributeName": "restore",
                "AttributeValues": [
                    "123451234512",
                    "123456789012"
                ]
            }
        ]
    }
}
```

Untuk menghapus pen Akun AWS gidentifikasi dari daftar, gunakan `--values-to-remove` parameter. Contoh berikut mencegah Akun AWS ID 123456789012 memulihkan snapshot. 

Untuk Linux, macOS, atau Unix:

```
aws docdb modify-db-cluster-snapshot-attribute \
    --db-cluster-snapshot-identifier sample-cluster-snapshot \
    --attribute-name restore \
    --values-to-remove '["123456789012"]'
```

Untuk Windows:

```
aws docdb modify-db-cluster-snapshot-attribute ^
    --db-cluster-snapshot-identifier sample-cluster-snapshot ^
    --attribute-name restore ^
    --values-to-remove '["123456789012"]'
```

Output dari operasi ini terlihat seperti berikut. 

```
{
    "DBClusterSnapshotAttributesResult": {
        "DBClusterSnapshotIdentifier": "sample-cluster-snapshot",
        "DBClusterSnapshotAttributes": [
            {
                "AttributeName": "restore",
                "AttributeValues": [
                    "123451234512"
                ]
            }
        ]
    }
}
```

------