

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

# Memutar sertifikat Anda SSL/TLS
<a name="UsingWithRDS.SSL-certificate-rotation"></a>

Sertifikat Otoritas Sertifikat Amazon RDS rds-ca-2019 berakhir pada Agustus 2024. Jika Anda menggunakan atau berencana untuk menggunakan Secure Sockets Layer (SSL) atau Transport Layer Security (TLS) dengan verifikasi sertifikat untuk terhubung ke instans RDS DB atau kluster DB Anda, pertimbangkan untuk menggunakan salah satu sertifikat CA baru rds-ca-rsa2048-g1, Multi-AZ rds-ca-rsa4096-g1 atau rds-ca-ecc384-g1. Jika saat ini Anda tidak menggunakan SSL/TLS dengan verifikasi sertifikat, Anda mungkin masih memiliki sertifikat CA yang kedaluwarsa dan harus memperbaruinya ke sertifikat CA baru jika Anda berencana untuk menggunakan SSL/TLS dengan verifikasi sertifikat untuk terhubung ke database RDS Anda.

Amazon RDS menyediakan sertifikat CA baru sebagai praktik terbaik AWS keamanan. Untuk informasi tentang sertifikat baru dan AWS Wilayah yang didukung, lihat[](UsingWithRDS.SSL.md).

Untuk memperbarui sertifikat CA untuk database Anda, gunakan metode berikut: 
+  [Memperbarui sertifikat CA Anda dengan memodifikasi instans atau cluster DB Anda](#UsingWithRDS.SSL-certificate-rotation-updating) 
+  [Memperbarui sertifikat CA Anda dengan menerapkan pemeliharaan](#UsingWithRDS.SSL-certificate-rotation-maintenance-update) 

Sebelum memperbarui instans DB atau kluster Multi-AZ DB untuk menggunakan sertifikat CA baru, pastikan Anda memperbarui klien atau aplikasi yang terhubung ke database RDS Anda.

## Pertimbangan untuk memutar sertifikat
<a name="UsingWithRDS.SSL-certificate-rotation-considerations"></a>

Pertimbangkan situasi berikut sebelum memutar sertifikat Anda:
+ Amazon RDS Proxy menggunakan sertifikat dari AWS Certificate Manager (ACM). Jika Anda menggunakan RDS Proxy, saat memutar SSL/TLS sertifikat, Anda tidak perlu memperbarui aplikasi yang menggunakan koneksi Proxy RDS. Untuk informasi selengkapnya, lihat [Menggunakan TLS/SSL dengan RDS Proxy](rds-proxy.howitworks.md#rds-proxy-security.tls).
+ Jika Anda menggunakan aplikasi Go versi 1.15 dengan instans DB atau cluster Multi-AZ DB yang dibuat atau diperbarui ke sertifikat rds-ca-2019 sebelum 28 Juli 2020, Anda harus memperbarui sertifikat lagi. Perbarui sertifikat ke rds-ca-rsa2048-g1, rds-ca-rsa4096-g1, atau rds-ca-ecc384-g1, bergantung pada mesin Anda . 

  Gunakan `modify-db-instance` perintah untuk instans DB, atau `modify-db-cluster` perintah untuk cluster Multi-AZ DB, menggunakan pengenal sertifikat CA baru. Anda dapat menemukan CA yang tersedia untuk mesin DB dan versi mesin DB tertentu menggunakan perintah `describe-db-engine-versions`. 

  Jika Anda membuat database atau memperbarui sertifikatnya setelah 28 Juli 2020, tidak ada tindakan yang diperlukan. Untuk informasi selengkapnya, lihat [Go GitHub issue \#39568](https://github.com/golang/go/issues/39568). 

## Memperbarui sertifikat CA Anda dengan memodifikasi instans atau cluster DB Anda
<a name="UsingWithRDS.SSL-certificate-rotation-updating"></a>

*Contoh berikut memperbarui sertifikat CA Anda dari *rds-ca-2019 ke rds-ca-rsa2048-g1*.* Anda dapat memilih sertifikat yang berbeda. Untuk informasi lebih lanjut, lihat[Otoritas sertifikat](UsingWithRDS.SSL.md#UsingWithRDS.SSL.RegionCertificateAuthorities). 

Perbarui toko kepercayaan aplikasi Anda untuk mengurangi waktu henti yang terkait dengan memperbarui sertifikat CA Anda. Untuk informasi selengkapnya tentang restart yang terkait dengan rotasi sertifikat CA, lihat[Rotasi sertifikat server otomatis](#UsingWithRDS.SSL-certificate-rotation-server-cert-rotation).

**Untuk memperbarui sertifikat CA Anda dengan memodifikasi instans atau cluster DB**

1. Unduh SSL/TLS sertifikat baru seperti yang dijelaskan dalam[](UsingWithRDS.SSL.md).

1. Perbarui aplikasi Anda untuk menggunakan SSL/TLS sertifikat baru.

   Metode untuk memperbarui aplikasi untuk SSL/TLS sertifikat baru bergantung pada aplikasi spesifik Anda. Bekerja dengan pengembang aplikasi Anda untuk memperbarui SSL/TLS sertifikat untuk aplikasi Anda.

   Untuk informasi tentang memeriksa SSL/TLS koneksi dan memperbarui aplikasi untuk setiap mesin DB, lihat topik berikut:
   +  [Memperbarui aplikasi untuk terhubung ke instance MariaDB menggunakan sertifikat baru SSL/TLS](ssl-certificate-rotation-mariadb.md) 
   +  [Memperbarui aplikasi untuk terhubung ke instans Microsoft SQL Server DB menggunakan sertifikat baru SSL/TLS](ssl-certificate-rotation-sqlserver.md) 
   +  [Memperbarui aplikasi untuk terhubung ke instance MySQL DB menggunakan sertifikat baru SSL/TLS](ssl-certificate-rotation-mysql.md) 
   +  [Memperbarui aplikasi untuk terhubung ke instans Oracle DB menggunakan sertifikat baru SSL/TLS](ssl-certificate-rotation-oracle.md) 
   +  [Memperbarui aplikasi untuk terhubung ke instans PostgreSQL DB menggunakan sertifikat baru SSL/TLS](ssl-certificate-rotation-postgresql.md) 

   Untuk contoh skrip yang memperbarui toko kepercayaan untuk sistem operasi Linux, lihat[Contoh skrip untuk mengimpor sertifikat ke trust store Anda](#UsingWithRDS.SSL-certificate-rotation-sample-script).
**catatan**  
Paket sertifikat berisi sertifikat untuk CA lama dan baru, sehingga Anda dapat meningkatkan aplikasi Anda dengan aman dan mempertahankan konektivitas selama periode transisi. Jika Anda menggunakan AWS Database Migration Service untuk memigrasikan database ke instans DB atau cluster , sebaiknya gunakan bundel sertifikat untuk memastikan konektivitas selama migrasi.

1. **Ubah instans DB atau cluster Multi-AZ DB untuk mengubah CA dari **rds-ca-2019 menjadi rds-ca-rsa2048-g1**.** Untuk memeriksa apakah basis data Anda memerlukan pengaktifan ulang agar dapat memperbarui sertifikat CA, gunakan perintah [describe-db-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html) dan periksa tanda `SupportsCertificateRotationWithoutRestart`. 
**penting**  
Jika Anda mengalami masalah konektivitas setelah masa berlaku sertifikat berakhir, gunakan opsi terapkan segera dengan menentukan **Terapkan segera** di konsol atau dengan menentukan opsi `--apply-immediately` menggunakan AWS CLI. Secara default, operasi ini dijadwalkan untuk berjalan selama jendela pemeliharaan berikutnya.  
Untuk instans RDS untuk Oracle DB, kami sarankan Anda memulai ulang Oracle DB Anda untuk mencegah kesalahan koneksi.  
Untuk Multi-AZ instance RDS untuk SQL Server dengan AlwaysOn atau opsi Mirroring diaktifkan, failover diharapkan saat instance di-boot ulang setelah rotasi sertifikat.  
Untuk menyetel penggantian CA instance Anda yang berbeda dari CA RDS default, gunakan perintah CLI [modify-certificate](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-certificates.html).

Anda dapat menggunakan Konsol Manajemen AWS atau AWS CLI untuk mengubah sertifikat CA dari **rds-ca-2019 ke rds-ca-rsa2048-g1 untuk instans** **DB atau cluster DB**. Multi-AZ  

------
#### [ Console ]

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 **Databases**, lalu pilih instans DB atau cluster Multi-AZ DB yang ingin Anda modifikasi. 

1. Pilih **Ubah**.   
![Ubah instans Multi-AZ DB atau cluster DB](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/ssl-rotate-cert-modify.png)

1. Di bagian **Konektivitas**, pilih **rds-ca-rsa2048-g1**.   
![Pilih sertifikat CA](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/ssl-rotate-cert-ca-rsa2048-g1.png)

1. Pilih **Lanjutkan** dan periksa ringkasan modifikasi. 

1. Untuk segera menerapkan perubahan, pilih **Terapkan segera**. 

1. Di halaman konfirmasi, tinjau perubahan Anda. Jika benar, pilih **Modify DB Instance** atau **Modify cluster** untuk menyimpan perubahan Anda. 
**penting**  
Saat Anda menjadwalkan operasi ini, pastikan bahwa Anda telah memperbarui trust store sisi klien sebelumnya.

   Atau pilih **Kembali** untuk mengedit perubahan atau **Batalkan** untuk membatalkan perubahan Anda. 

------
#### [ AWS CLI ]

[https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) Tentukan instans DB atau pengidentifikasi cluster dan `--ca-certificate-identifier` opsi.

Gunakan `--apply-immediately` parameter untuk segera menerapkan pembaruan. Secara default, operasi ini dijadwalkan untuk berjalan selama periode pemeliharaan berikutnya.

**penting**  
Saat Anda menjadwalkan operasi ini, pastikan bahwa Anda telah memperbarui trust store sisi klien sebelumnya.

**Example**  
 **contoh DB**   
Contoh berikut memodifikasi `mydbinstance` dengan menyetel sertifikat CA ke`rds-ca-rsa2048-g1`.   
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-instance \
    --db-instance-identifier {{mydbinstance}} \
    --ca-certificate-identifier rds-ca-rsa2048-g1
```
Untuk Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier {{mydbinstance}} ^
    --ca-certificate-identifier rds-ca-rsa2048-g1
```
Jika instance Anda memerlukan reboot, Anda dapat menggunakan perintah CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) dan menentukan opsi. `--no-certificate-rotation-restart`

**Example**  
 **Multi-AZ Kluster DB**   
Contoh berikut memodifikasi `mydbcluster` dengan menyetel sertifikat CA ke`rds-ca-rsa2048-g1`.   
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-cluster \
    --db-cluster-identifier {{mydbcluster}} \
    --ca-certificate-identifier rds-ca-rsa2048-g1
```
Untuk Windows:  

```
aws rds modify-db-cluster ^
    --db-cluster-identifier {{mydbcluster}} ^
    --ca-certificate-identifier rds-ca-rsa2048-g1
```

------

## Memperbarui sertifikat CA Anda dengan menerapkan pemeliharaan
<a name="UsingWithRDS.SSL-certificate-rotation-maintenance-update"></a>

Lakukan langkah-langkah berikut untuk memperbarui sertifikat CA Anda dengan menerapkan pemeliharaan.

------
#### [ Console ]

**Untuk memperbarui sertifikat CA Anda dengan menerapkan pemeliharaan**

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 **Pembaruan sertifikat**.   
![Opsi panel navigasi rotasi sertifikat](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/ssl-rotate-cert-certupdate.png)

   Halaman **Basis data yang memerlukan pembaruan sertifikat** akan muncul.  
![Perbarui sertifikat CA untuk database](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/ssl-rotate-cert-update-multiple.png)
**catatan**  
Halaman ini hanya menampilkan instans dan cluster DB untuk saat ini. Wilayah AWS Jika Anda memiliki database di lebih dari satu Wilayah AWS, periksa halaman ini di masing-masing Wilayah AWS untuk melihat semua instance DB dengan sertifikat lama SSL/TLS .

1. Pilih instans  Multi-AZ DB atau cluster DB yang ingin Anda perbarui.

   Anda dapat menjadwalkan rotasi sertifikat untuk periode pemeliharaan berikutnya dengan memilih **Jadwal**. Segera terapkan rotasi dengan memilih **Terapkan sekarang**. 
**penting**  
Jika Anda mengalami masalah konektivitas setelah sertifikat kedaluwarsa, gunakan opsi **Terapkan sekarang**.

1. 

   1. Jika Anda memilih **Jadwal**, Anda akan diminta untuk mengonfirmasi rotasi sertifikat CA. Prompt ini juga menyatakan periode terjadwal untuk pembaruan Anda.   
![Konfirmasikan rotasi sertifikat](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/ssl-rotate-cert-confirm-schedule.png)

   1. Jika Anda memilih **Terapkan sekarang**, Anda akan diminta untuk mengonfirmasi rotasi sertifikat CA.  
![Konfirmasikan rotasi sertifikat](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/ssl-rotate-cert-confirm-now.png)
**penting**  
Sebelum menjadwalkan rotasi sertifikat CA pada database Anda, perbarui aplikasi klien apa pun yang digunakan SSL/TLS dan sertifikat server untuk terhubung. Pembaruan ini khusus untuk mesin DB Anda. Setelah Anda memperbarui aplikasi klien ini, Anda dapat mengonfirmasi rotasi sertifikat CA. 

   Untuk melanjutkan, pilih kotak centang, lalu pilih **Konfirmasi**. 

1. Ulangi langkah 3 dan 4 untuk setiap instans dan cluster DB yang ingin Anda perbarui.

------

## Rotasi sertifikat server otomatis
<a name="UsingWithRDS.SSL-certificate-rotation-server-cert-rotation"></a>

Jika CA root Anda mendukung rotasi sertifikat server otomatis, RDS secara otomatis menangani rotasi sertifikat server DB. RDS menggunakan CA root yang sama untuk rotasi otomatis ini, jadi Anda tidak perlu mengunduh paket CA baru. Lihat[Otoritas sertifikat](UsingWithRDS.SSL.md#UsingWithRDS.SSL.RegionCertificateAuthorities).

Rotasi dan validitas sertifikat server DB Anda bergantung pada mesin DB Anda:
+ Jika mesin DB Anda mendukung rotasi tanpa pengaktifan ulang, RDS secara otomatis merotasi sertifikat server DB tanpa memerlukan tindakan apa pun dari Anda. RDS mencoba merotasi sertifikat server DB Anda dalam periode pemeliharaan yang Anda pilih di waktu paruh sertifikat server DB. Sertifikat server DB baru berlaku selama 12 bulan.
+ Jika mesin DB Anda tidak mendukung rotasi tanpa restart, Amazon RDS membuat Tindakan Pemeliharaan `server-certificate-rotation` Tertunda terlihat melalui Describe-pending-maintenance-actions API, pada waktu paruh sertifikat, atau setidaknya 3 bulan sebelum kedaluwarsa. Anda dapat menerapkan rotasi menggunakan Apply-pending-maintenance-action API. Sertifikat server DB baru berlaku selama 36 bulan.

Gunakan perintah [describe-db-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html) dan periksa tanda `SupportsCertificateRotationWithoutRestart` untuk mengidentifikasi apakah versi mesin DB Anda mendukung rotasi sertifikat tanpa pengaktifan ulang. Untuk informasi selengkapnya, lihat [Mengatur CA untuk basis data Anda](UsingWithRDS.SSL.md#UsingWithRDS.SSL.RegionCertificateAuthorities.Selection). 

**penting**  
 Untuk instans Amazon RDS for Oracle DB, Anda akan `SupportsCertificateRotationWithoutRestart` melihat bendera versi mesin DB ditandai sebagai. `FALSE` Namun, instans Amazon RDS for Oracle DB TIDAK memerlukan restart, tetapi pendengar database dimulai ulang selama rotasi sertifikat server. Koneksi basis data yang ada tidak terpengaruh, tetapi koneksi baru akan mengalami kesalahan selama periode waktu yang singkat sementara pendengar dimulai ulang. Jika Anda ingin memutar sertifikat server secara manual, gunakan perintah [AWS CLI apply-pending-maintenance-action](https://docs.aws.amazon.com/cli/latest/reference/rds/apply-pending-maintenance-action.html). 

## Contoh skrip untuk mengimpor sertifikat ke trust store Anda
<a name="UsingWithRDS.SSL-certificate-rotation-sample-script"></a>

Berikut adalah contoh skrip shell yang mengimpor paket sertifikat ke trust store.

Setiap skrip shell menggunakan keytool, yang merupakan bagian dari Java Development Kit (JDK). Untuk informasi tentang cara menginstal JDK, lihat [JDK Installation Guide](https://docs.oracle.com/en/java/javase/17/install/overview-jdk-installation.html). 

------
#### [ Linux ]

Berikut adalah contoh skrip shell yang mengimpor paket sertifikat ke trust store di sistem operasi Linux.

```
mydir=tmp/certs
if [ ! -e "${mydir}" ]
then
mkdir -p "${mydir}"
fi truststore=${mydir}/rds-truststore.jks storepassword={{changeit}}

curl -sS "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem"> ${mydir}/global-bundle.pem
awk 'split_after == 1 {n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1}{print > "rds-ca-" n+1 ".pem"}' < ${mydir}/global-bundle.pem

for CERT in rds-ca-*; do alias=$(openssl x509 -noout -text -in $CERT | perl -ne 'next unless /Subject:/; s/.*(CN=|CN = )//; print')
  echo "Importing $alias"
  keytool -import -file ${CERT} -alias "${alias}" -storepass ${storepassword} -keystore ${truststore} -noprompt
  rm $CERT
done

rm ${mydir}/global-bundle.pem

echo "Trust store content is: "

keytool -list -v -keystore "$truststore" -storepass ${storepassword} | grep Alias | cut -d " " -f3- | while read alias 
do expiry=`keytool -list -v -keystore "$truststore" -storepass ${storepassword} -alias "${alias}" | grep Valid | perl -ne 'if(/until: (.*?)\n/) { print "$1\n"; }'`
   echo " Certificate ${alias} expires in '$expiry'" 
done
```

------
#### [ macOS ]

Berikut adalah contoh skrip shell yang mengimpor paket sertifikat ke trust store di sistem operasi macOS.

```
mydir=tmp/certs
if [ ! -e "${mydir}" ]
then
mkdir -p "${mydir}"
fi truststore=${mydir}/rds-truststore.jks storepassword={{changeit}}

curl -sS "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem"> ${mydir}/global-bundle.pem
split -p "-----BEGIN CERTIFICATE-----" ${mydir}/global-bundle.pem rds-ca-

for CERT in rds-ca-*; do alias=$(openssl x509 -noout -text -in $CERT | perl -ne 'next unless /Subject:/; s/.*(CN=|CN = )//; print')
  echo "Importing $alias"
  keytool -import -file ${CERT} -alias "${alias}" -storepass ${storepassword} -keystore ${truststore} -noprompt
  rm $CERT
done

rm ${mydir}/global-bundle.pem

echo "Trust store content is: "

keytool -list -v -keystore "$truststore" -storepass ${storepassword} | grep Alias | cut -d " " -f3- | while read alias 
do expiry=`keytool -list -v -keystore "$truststore" -storepass ${storepassword} -alias "${alias}" | grep Valid | perl -ne 'if(/until: (.*?)\n/) { print "$1\n"; }'`
   echo " Certificate ${alias} expires in '$expiry'" 
done
```

------