Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menghubungkan ke instans DB Anda menggunakan autentikasi IAM dari baris perintah: AWS CLI dan klien psql
Anda dapat terhubung dari baris perintah ke klaster DB Aurora PostgreSQL dengan AWS CLI dan alat baris perintah psql seperti yang dijelaskan berikut.
Prasyarat
Berikut adalah prasyarat untuk menghubungkan ke instans DB menggunakan autentikasi IAM:
catatan
Untuk informasi tentang cara menghubungkan ke basis data menggunakan pgAdmin dengan autentikasi IAM, lihat postingan blog Menggunakan autentikasi IAM untuk terhubung dengan pgAdmin Amazon Aurora PostgreSQL atau Amazon RDS for PostgreSQL
Membuat token autentikasi IAM
Token autentikasi terdiri dari ratusan karakter sehingga kemungkinan menjadi sulit ditangani di baris perintah. Salah satu cara untuk mengatasi ini adalah dengan menyimpan token ke variabel lingkungan, lalu menggunakan variabel tersebut saat Anda terhubung. Contoh berikut menunjukkan cara menggunakan AWS CLI untuk mendapatkan token autentikasi yang ditandatangani menggunakan perintah generate-db-auth-token dan menyimpannya di variabel lingkungan PGPASSWORD.
export RDSHOST="mypostgres-cluster.cluster-123456789012.us-west-2.rds.amazonaws.com" export PGPASSWORD="$(aws rds generate-db-auth-token --hostname $RDSHOST --port5432--regionus-west-2--usernamejane_doe)"
Dalam contoh, parameter untuk perintah generate-db-auth-token adalah sebagai berikut:
-
--hostname– Nama host instans DB yang ingin Anda akses -
--port– Nomor port yang digunakan untuk menghubungkan ke instans DB Anda -
--region– Wilayah AWS tempat instans DB beroperasi -
--username– Akun basis data yang ingin Anda akses
Beberapa karakter pertama dari token yang dihasilkan terlihat sebagai berikut.
mypostgres-cluster.cluster-123456789012.us-west-2.rds.amazonaws.com:5432/?Action=connect&DBUser=jane_doe&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900...
catatan
Anda tidak dapat menggunakan data DNS Route 53 kustom atau titik akhir kustom Aurora sebagai pengganti titik akhir instans DB untuk menghasilkan token autentikasi.
Menghubungkan ke klaster Aurora PostgreSQL
Format umum untuk menggunakan psql untuk terhubung ditampilkan sebagai berikut.
psql "host=hostNameport=portNumbersslmode=verify-full sslrootcert=full_path_to_ssl_certificatedbname=DBNameuser=userNamepassword=authToken"
Parameternya adalah sebagai berikut:
-
host– Nama host instans DB yang ingin Anda akses -
port– Nomor port yang digunakan untuk menghubungkan ke instans DB Anda -
sslmode– Mode SSL yang akan digunakanSaat Anda menggunakan
sslmode=verify-full, koneksi SSL memverifikasi titik akhir instans DB di sertifikat SSL. -
sslrootcert– Jalur lengkap ke file sertifikat SSL yang berisi kunci publikUntuk informasi selengkapnya, lihat Mengamankan data Aurora PostgreSQL dengan SSL/TLS.
Untuk mengunduh sertifikat SSL, lihat Menggunakan SSL/TLS untuk mengenkripsi koneksi ke .
-
dbname– Basis data yang ingin Anda akses -
user– Akun basis data yang ingin Anda akses -
password– Token autentikasi IAM yang ditandatangani
catatan
Anda tidak dapat menggunakan data DNS Route 53 kustom atau titik akhir kustom Aurora sebagai pengganti titik akhir instans DB untuk menghasilkan token autentikasi.
Contoh berikut menunjukkan cara menggunakan psql untuk terhubung. Dalam contoh, psql menggunakan variabel lingkungan RDSHOST untuk host dan variabel lingkungan PGPASSWORD untuk token yang dihasilkan. Selain itu, /sample_dir/ adalah jalur penuh ke file sertifikat SSL yang berisi kunci publik.
export RDSHOST="mypostgres-cluster.cluster-123456789012.us-west-2.rds.amazonaws.com" export PGPASSWORD="$(aws rds generate-db-auth-token --hostname $RDSHOST --port5432--regionus-west-2--usernamejane_doe)" psql "host=$RDSHOST port=5432sslmode=verify-full sslrootcert=/sample_dir/global-bundle.pem dbname=DBNameuser=jane_doepassword=$PGPASSWORD"
Jika Anda ingin terhubung ke klaster DB melalui proksi, lihat Menghubungkan ke database menggunakan otentikasi IAM.