

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

# Mengkonfigurasi SSL/TLS sertifikat untuk koneksi Aurora DSQL
<a name="configure-root-certificates"></a><a name="ssl-certificate-overview"></a>

Aurora DSQL membutuhkan semua koneksi untuk menggunakan enkripsi Transport Layer Security (TLS). Untuk membuat koneksi aman, sistem klien Anda harus mempercayai Amazon Root Certificate Authority (Amazon Root CA 1). Sertifikat ini sudah diinstal sebelumnya pada banyak sistem operasi. Bagian ini memberikan instruksi untuk memverifikasi sertifikat Amazon Root CA 1 yang sudah diinstal sebelumnya pada berbagai sistem operasi, dan memandu Anda melalui proses menginstal sertifikat secara manual jika belum ada. 

Kami merekomendasikan menggunakan PostgreSQL versi 17.

**penting**  
Untuk lingkungan produksi, sebaiknya gunakan mode `verify-full` SSL untuk memastikan tingkat keamanan koneksi tertinggi. Mode ini memverifikasi bahwa sertifikat server ditandatangani oleh otoritas sertifikat tepercaya dan bahwa nama host server cocok dengan sertifikat.

## Memverifikasi sertifikat pra-instal
<a name="verify-installed-certificates"></a>

Di sebagian besar sistem operasi, **Amazon Root CA 1** sudah diinstal sebelumnya. Untuk memvalidasi ini, Anda dapat mengikuti langkah-langkah di bawah ini.

### Linux (RedHat/CentOS/Fedora)
<a name="verify-linux"></a>

Jalankan perintah berikut di terminal Anda:

```
trust list | grep "Amazon Root CA 1"
```

Jika sertifikat diinstal, Anda melihat output berikut:

```
label: Amazon Root CA 1
```

### macOS
<a name="verify-macos"></a>

1. Buka Pencarian Sorotan (****Perintah\$1Spasi****)

1. Cari Akses **Gantungan Kunci**

1. Pilih **Akar Sistem** di bawah **Gantungan Kunci Sistem**

1. Cari **Amazon Root CA 1** dalam daftar sertifikat

### Windows
<a name="verify-windows"></a>

**catatan**  
Karena masalah yang diketahui dengan klien Windows psql, menggunakan sertifikat root sistem (`sslrootcert=system`) dapat mengembalikan kesalahan berikut:. `SSL error: unregistered scheme` Anda dapat mengikuti [Menghubungkan dari Windows](#connect-windows) sebagai cara alternatif untuk terhubung ke cluster Anda menggunakan SSL. 

Jika **Amazon Root CA 1** tidak diinstal di sistem operasi Anda, ikuti langkah-langkah di bawah ini. 

## Menginstal sertifikat
<a name="install-certificates"></a>

 Jika `Amazon Root CA 1` sertifikat tidak diinstal sebelumnya pada sistem operasi Anda, Anda harus menginstalnya secara manual untuk membuat koneksi aman ke cluster Aurora DSQL Anda. 

### Instalasi sertifikat Linux
<a name="install-linux"></a>

Ikuti langkah-langkah ini untuk menginstal sertifikat Amazon Root CA pada sistem Linux.

1. Unduh Sertifikat Root:

   ```
   wget https://www.amazontrust.com/repository/AmazonRootCA1.pem
   ```

1. Salin sertifikat ke toko kepercayaan:

   ```
   sudo cp ./AmazonRootCA1.pem /etc/pki/ca-trust/source/anchors/
   ```

1. Perbarui toko kepercayaan CA:

   ```
   sudo update-ca-trust
   ```

1. Verifikasi instalasi:

   ```
   trust list | grep "Amazon Root CA 1"
   ```

### Instalasi sertifikat macOS
<a name="install-macos"></a>

Langkah-langkah pemasangan sertifikat ini bersifat opsional. Ini [Instalasi sertifikat Linux](#install-linux) juga berfungsi untuk macOS.

1. Unduh Sertifikat Root:

   ```
   wget https://www.amazontrust.com/repository/AmazonRootCA1.pem
   ```

1. Tambahkan sertifikat ke gantungan kunci Sistem:

   ```
   sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain AmazonRootCA1.pem
   ```

1. Verifikasi instalasi:

   ```
   security find-certificate -a -c "Amazon Root CA 1" -p /Library/Keychains/System.keychain
   ```

## Menghubungkan dengan SSL/TLS verifikasi
<a name="connect-using-certificates"></a>

 Sebelum mengonfigurasi SSL/TLS sertifikat untuk koneksi aman ke cluster Aurora DSQL Anda, pastikan Anda memiliki prasyarat berikut. 
+ PostgreSQL versi 17 diinstal
+ AWS CLI dikonfigurasi dengan kredensil yang sesuai
+ Informasi titik akhir klaster Aurora DSQL

### Menghubungkan dari Linux
<a name="connect-linux"></a>

1. Hasilkan dan atur token otentikasi:

   ```
   export PGPASSWORD=$(aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --hostname your-cluster-endpoint)
   ```

1. Connect menggunakan sertifikat sistem (jika sudah diinstal sebelumnya):

   ```
   PGSSLROOTCERT=system \
   PGSSLMODE=verify-full \
   psql --dbname postgres \
   --username admin \
   --host your-cluster-endpoint
   ```

1. Atau, sambungkan menggunakan sertifikat yang diunduh:

   ```
   PGSSLROOTCERT=/full/path/to/root.pem \
   PGSSLMODE=verify-full \
   psql --dbname postgres \
   --username admin \
   --host your-cluster-endpoint
   ```

**catatan**  
 [Untuk selengkapnya tentang pengaturan PGSSLMODE, lihat [sslmode](https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-CONNECT-SSLMODE) di dokumentasi PostgreSQL 17 Database Connection Control Functions.](https://www.postgresql.org/docs/current/libpq-connect.html) 

### Menghubungkan dari macOS
<a name="connect-macos"></a>

1. Hasilkan dan atur token otentikasi:

   ```
   export PGPASSWORD=$(aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --hostname your-cluster-endpoint)
   ```

1. Connect menggunakan sertifikat sistem (jika sudah diinstal sebelumnya):

   ```
   PGSSLROOTCERT=system \
   PGSSLMODE=verify-full \
   psql --dbname postgres \
   --username admin \
   --host your-cluster-endpoint
   ```

1. Atau, unduh sertifikat root dan simpan sebagai `root.pem` (jika sertifikat tidak diinstal sebelumnya)

   ```
   PGSSLROOTCERT=/full/path/to/root.pem \
   PGSSLMODE=verify-full \
   psql —dbname postgres \
   --username admin \
   --host your_cluster_endpoint
   ```

1. Connect menggunakan psql:

   ```
   PGSSLROOTCERT=/full/path/to/root.pem \
   PGSSLMODE=verify-full \
   psql —dbname postgres \
   --username admin \
   --host your_cluster_endpoint
   ```

### Menghubungkan dari Windows
<a name="connect-windows"></a>

#### Menggunakan Command Prompt
<a name="windows-command-prompt"></a>

1. Hasilkan token otentikasi:

   ```
   aws dsql generate-db-connect-admin-auth-token ^
   --region=your-cluster-region ^
   --expires-in=3600 ^
   --hostname=your-cluster-endpoint
   ```

1. Mengatur variabel lingkungan kata sandi:

   ```
   set "PGPASSWORD=token-from-above"
   ```

1. Atur konfigurasi SSL:

   ```
   set PGSSLROOTCERT=C:\full\path\to\root.pem
   set PGSSLMODE=verify-full
   ```

1. Connect ke database:

   ```
   "C:\Program Files\PostgreSQL\17\bin\psql.exe" --dbname postgres ^
   --username admin ^
   --host your-cluster-endpoint
   ```

#### Menggunakan PowerShell
<a name="windows-powershell"></a>

1. Hasilkan dan atur token otentikasi:

   ```
   $env:PGPASSWORD = (aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --expires-in=3600 --hostname=your-cluster-endpoint)
   ```

1. Atur konfigurasi SSL:

   ```
   $env:PGSSLROOTCERT='C:\full\path\to\root.pem'
   $env:PGSSLMODE='verify-full'
   ```

1. Connect ke database:

   ```
    "C:\Program Files\PostgreSQL\17\bin\psql.exe" --dbname postgres `
   --username admin `
   --host your-cluster-endpoint
   ```

## Sumber daya tambahan
<a name="additional-resources"></a>
+  [Dokumentasi PostgreSQL SSL](https://www.postgresql.org/docs/current/libpq-ssl.html) 
+  [Layanan Amazon Trust](https://www.amazontrust.com/repository/) 