

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

# Mengintegrasikan Amazon RDS untuk instans Db2 DB dengan Amazon S3
<a name="db2-s3-integration"></a>

Anda dapat mentransfer file antara Amazon RDS untuk instans Db2 DB dan bucket Amazon Simple Storage Service (Amazon S3) dengan prosedur tersimpan Amazon RDS. Untuk informasi selengkapnya, lihat [Amazon RDS untuk referensi prosedur tersimpan Db2](db2-stored-procedures.md).

**catatan**  
Instans DB dan bucket Amazon S3 Anda harus berada di Wilayah AWS yang sama.

Agar RDS for Db2 yang berintegrasi dengan Amazon S3, instans basis data Anda harus memiliki akses ke bucket Amazon S3 tempat RDS for Db2 berada. Jika saat ini Anda tidak memiliki bucket S3, [buat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket-overview.html).

**Topics**
+ [Langkah 1: Buat kebijakan IAM](#db2-creating-iam-policy)
+ [Langkah 2: Buat peran IAM dan lampirkan kebijakan IAM Anda](#db2-creating-iam-role)
+ [Langkah 3: Tambahkan peran IAM ke instans basis data RDS for Db2](#db2-adding-iam-role)

## Langkah 1: Buat kebijakan IAM
<a name="db2-creating-iam-policy"></a>

Pada langkah ini, Anda membuat kebijakan AWS Identity and Access Management (IAM) dengan izin yang diperlukan untuk mentransfer file dari bucket Amazon S3 ke instans RDS DB Anda. Langkah ini beranggapan bahwa Anda telah membuat bucket S3. Lihat informasi yang lebih lengkap di [Membuat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) dalam *Panduan Pengguna Amazon S3*.

Sebelum Anda membuat kebijakan, catat potongan-potongan informasi berikut:
+ Amazon Resource Name (ARN) untuk bucket Anda
+ ARN untuk kunci AWS Key Management Service (AWS KMS) Anda, jika bucket Anda menggunakan SSE-KMS atau SSE-S3 enkripsi.

Kebijakan IAM yang Anda buat harus berisi informasi berikut. Ganti *\$1amzn-s3-demo-bucket\$1* dengan nama bucket S3 Anda.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowS3BucketAccess",
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt",
                "s3:PutObject",
                "s3:GetObject",
                "s3:AbortMultipartUpload",
                "s3:ListBucket",
                "s3:GetObjectVersion",
                "s3:ListMultipartUploadParts",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::${amzn-s3-demo-bucket}/*",
                "arn:aws:s3:::${amzn-s3-demo-bucket}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListAllMyBuckets"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

Anda dapat membuat kebijakan IAM dengan menggunakan Konsol Manajemen AWS atau AWS Command Line Interface (AWS CLI). 

### Konsol
<a name="creating-iam-policy-console"></a>

**Untuk membuat kebijakan IAM untuk mengizinkan Amazon RDS mengakses bucket Amazon S3**

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

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

1. Pilih **Buat kebijakan**, lalu pilih **JSON**.

1. Tambahkan tindakan berdasarkan layanan. Untuk mentransfer file dari bucket Amazon S3 ke Amazon RDS, Anda harus memilih izin bucket dan izin objek.

1. Perluas **Sumber Daya**. Anda harus menentukan sumber daya bucket dan objek.

1. Pilih **Berikutnya**.

1. Untuk **Nama kebijakan**, masukkan nama untuk kebijakan ini. 

1. (Opsional) Untuk **Deskripsi**, masukkan deskripsi untuk kebijakan ini.

1. Pilih **Buat kebijakan**.

### AWS CLI
<a name="creating-iam-policy-cli"></a>

**Untuk membuat kebijakan IAM guna mengizinkan Amazon RDS mengakses bucket Amazon S3 Anda**

1.  Buat file JSON yang berisi dokumen kebijakan JSON berikut. Ganti *\$1amzn-s3-demo-bucket\$1* dengan nama bucket S3 Anda.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowS3BucketAccess",
               "Effect": "Allow",
               "Action": [
                   "kms:GenerateDataKey",
                   "kms:Decrypt",
                   "s3:PutObject",
                   "s3:GetObject",
                   "s3:AbortMultipartUpload",
                   "s3:ListBucket",
                   "s3:GetObjectVersion",
                   "s3:ListMultipartUploadParts",
                   "s3:GetBucketAcl",
                   "s3:GetBucketLocation"
               ],
               "Resource": [
                   "arn:aws:s3:::${amzn-s3-demo-bucket}/*",
                   "arn:aws:s3:::${amzn-s3-demo-bucket}"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:ListAllMyBuckets"
               ],
               "Resource": [
                   "*"
               ]
           }
       ]
   }
   ```

------

1. Jalankan perintah [https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy.html). Dalam contoh berikut, ganti *iam\$1policy\$1name* dan *iam\$1policy\$1file\$1name* dengan nama untuk kebijakan IAM Anda dan nama file JSON yang Anda buat di Langkah 1. 

   Untuk Linux, macOS, atau Unix:

   ```
   aws iam create-policy \
       --policy-name iam_policy_name \
       --policy-document '{
         "Version": "2012-10-17"		 	 	 		 	 	 		 	 	 ,
         "Statement": [
           {
             "Effect": "Allow",
             "Action": [
               "kms:GenerateDataKey",
               "kms:Decrypt",
               "s3:PutObject",
               "s3:GetObject",
               "s3:AbortMultipartUpload",
               "s3:ListBucket",
               "s3:DeleteObject",
               "s3:GetObjectVersion",
               "s3:ListMultipartUploadParts"
             ],
             "Resource": [
               "arn:aws:s3:::s3_bucket_name/*",
               "arn:aws:s3:::s3_bucket_name"
             ]
           }
         ]
       }'
   ```

   Untuk Windows:

   ```
   aws iam create-policy ^
       --policy-name iam_policy_name ^
       --policy-document '{
         "Version": "2012-10-17"		 	 	 		 	 	 		 	 	 ,
         "Statement": [
           {
             "Effect": "Allow",
               "Action": [
                 "s3:PutObject",
                 "s3:GetObject",
                 "s3:AbortMultipartUpload",
                 "s3:ListBucket",
                 "s3:DeleteObject",
                 "s3:GetObjectVersion",
                 "s3:ListMultipartUploadParts"
               ],
               "Resource": [
                 "arn:aws:s3:::s3_bucket_name/*",
                 "arn:aws:s3:::s3_bucket_name"
               ]
           }
         ]
       }'
   ```

1. Setelah kebijakan dibuat, catat ARN kebijakan. Anda memerlukan ARN untuk [Langkah 2: Buat peran IAM dan lampirkan kebijakan IAM Anda](#db2-creating-iam-role).

Lihat informasi tentang pembuatan kebijakan IAM di [Membuat kebijakan IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) dalam Panduan Pengguna IAM.

## Langkah 2: Buat peran IAM dan lampirkan kebijakan IAM Anda
<a name="db2-creating-iam-role"></a>

Langkah ini beranggapan bahwa Anda telah membuat kebijakan IAM di [Langkah 1: Buat kebijakan IAM](#db2-creating-iam-policy). Pada langkah ini, Anda membuat peran IAM untuk instans basis data RDS for Db2 dan kemudian melampirkan kebijakan IAM ke peran itu. 

Anda dapat membuat peran IAM untuk instans DB Anda dengan menggunakan Konsol Manajemen AWS atau. AWS CLI

### Konsol
<a name="creating-iam-role-console"></a>

**Untuk membuat peran IAM dan melampirkan kebijakan IAM padanya**

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

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

1. Pilih **Buat peran**.

1. Untuk **jenis entitas tepercaya**, pilih **Layanan AWS**.

1. Untuk **Layanan atau kasus penggunaan**, pilih **RDS**, lalu pilih **RDS ****–****Tambah Peran ke Basis Data**.

1. Pilih **Berikutnya**.

1. Untuk **Kebijakan izin**, cari dan pilih nama kebijakan IAM yang Anda buat.

1. Pilih **Berikutnya**.

1. Untuk **Nama peran**, masukkan nama peran.

1. (Opsional) Untuk **Deskripsi**, masukkan deskripsi untuk peran baru ini.

1. Pilih **Buat peran**.

### AWS CLI
<a name="creating-iam-role-cli"></a>

**Untuk membuat peran IAM dan melampirkan kebijakan IAM padanya**

1. Buat file JSON yang berisi dokumen kebijakan JSON berikut:

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

****  

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

------

1. Jalankan perintah [https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html](https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html). Dalam contoh berikut, ganti *iam\$1role\$1name* dan *iam\$1assume\$1role\$1policy\$1file\$1name* dengan nama untuk peran IAM Anda dan nama file JSON yang Anda buat di Langkah 1.

   Untuk Linux, macOS, atau Unix:

   ```
   aws iam create-role \
       --role-name iam_role_name \
       --assume-role-policy-document '{
         "Version": "2012-10-17"		 	 	 		 	 	 		 	 	 ,
         "Statement": [
           {
             "Effect": "Allow",
             "Principal": {
               "Service": "rds.amazonaws.com"
             },
             "Action": "sts:AssumeRole"
           }
         ]
       }'
   ```

   Untuk Windows:

   ```
   aws iam create-role ^
       --role-name iam_role_name ^
       --assume-role-policy-document '{
         "Version": "2012-10-17"		 	 	 		 	 	 		 	 	 ,
         "Statement": [
           {
             "Effect": "Allow",
             "Principal": {
               "Service": "rds.amazonaws.com"
             },
             "Action": "sts:AssumeRole"
           }
         ]
       }'
   ```

1. Setelah peran dibuat, catat ARN peran tersebut. Anda memerlukan ARN untuk [Langkah 3: Tambahkan peran IAM ke instans basis data RDS for Db2](#db2-adding-iam-role).

1. Jalankan perintah [https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html). Dalam contoh berikut, ganti *iam\$1policy\$1arn* dengan ARN dari kebijakan IAM yang Anda buat. [Langkah 1: Buat kebijakan IAM](#db2-creating-iam-policy) Ganti *iam\$1role\$1name* dengan nama peran IAM yang baru saja Anda buat.

   Untuk Linux, macOS, atau Unix:

   ```
   aws iam attach-role-policy \
      --policy-arn iam_policy_arn \
      --role-name iam_role_name
   ```

   Untuk Windows:

   ```
   aws iam attach-role-policy ^
      --policy-arn iam_policy_arn ^
      --role-name iam_role_name
   ```

Lihat informasi yang lebih lengkap di [Membuat peran untuk melimpahkan izin ke pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) dalam *Panduan Pengguna IAM*.

## Langkah 3: Tambahkan peran IAM ke instans basis data RDS for Db2
<a name="db2-adding-iam-role"></a>

Pada langkah ini, Anda menambahkan peran IAM ke instans basis data RDS for Db2. Perhatikan persyaratan berikut:
+ Anda harus memiliki akses ke peran IAM dengan kebijakan izin Amazon S3 yang disyaratkan terlampir padanya. 
+ Anda hanya dapat mengaitkan satu peran IAM dengan instans basis data RDS for Db2 Anda pada setiap saat.
+ Instans basis data RDS for Db2 Anda harus dalam keadaan **Tersedia**.

Anda dapat menambahkan peran IAM ke instans DB Anda dengan menggunakan Konsol Manajemen AWS atau. AWS CLI

### Konsol
<a name="db2-adding-iam-role-console"></a>

**Untuk menambahkan peran IAM ke instans basis data RDS for Db2**

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

1. Di panel navigasi, pilih **Basis data**.

1. Pilih nama instans basis data RDS for Db2 Anda.

1. Pada tab **Konektivitas dan keamanan**, gulir turun ke bagian **Kelola peran IAM** di bagian bawah halaman.

1. Untuk **Tambahkan peran IAM ke instans ini**, pilih peran yang Anda buat di [Langkah 2: Buat peran IAM dan lampirkan kebijakan IAM Anda](#db2-creating-iam-role).

1. Untuk **Fitur**, pilih **S3\$1INTEGRATION**.

1. Pilih **Tambahkan peran**.  
![\[Fitur S3_INTEGRATION ditambahkan ke peran IAM untuk instans basis data.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/db2-s3-integration-role.png)

### AWS CLI
<a name="db2-adding-iam-role-cli"></a>

Untuk menambahkan peran IAM ke instans basis data RDS for Db2 Anda, jalankan perintah [https://docs.aws.amazon.com/cli/latest/reference/rds/add-role-to-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/add-role-to-db-instance.html). Dalam contoh berikut, ganti*region*,*db\$1instance\$1name*, dan *iam\$1role\$1arn* dengan nama Wilayah AWS tempat instans DB Anda ada, nama instans DB Anda, dan ARN dari peran IAM yang Anda buat. [Langkah 2: Buat peran IAM dan lampirkan kebijakan IAM Anda](#db2-creating-iam-role) 

Untuk Linux, macOS, atau Unix:

```
aws rds add-role-to-db-instance \
    --region $region \
    --db-instance-identifier $db_instance_name \
    --feature-name S3_INTEGRATION \
    --role-arn $iam_role_arn \
```

Untuk Windows:

```
aws rds add-role-to-db-instance ^
    --region $region \
    --db-instance-identifier db_instance_name ^
    --feature-name S3_INTEGRATION ^
    --role-arn iam_role_arn ^
```

Untuk memastikan bahwa peran berhasil ditambahkan ke instans basis data RDS for Db2 Anda, jalankan perintah [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html). Dalam contoh berikut, ganti *db\$1instance\$1name* dengan nama instans DB Anda. 

Untuk Linux, macOS, atau Unix:

```
aws rds describe-db-instances \
    --filters "Name=db-instance-id,Values=db_instance_name" \
    --query 'DBInstances[].AssociatedRoles'
```

Untuk Windows:

```
aws rds describe-db-instances ^
    --filters "Name=db-instance-id,Values=db_instance_name" ^
    --query 'DBInstances[].AssociatedRoles'
```

Perintah ini menghasilkan output yang serupa dengan contoh berikut:

```
[
    [
        {
            "RoleArn": "arn:aws:iam::0123456789012:role/rds-db2-s3-role",
            "FeatureName": "S3_INTEGRATION",
            "Status": "ACTIVE"
        }
    ]
]
```