Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
IAMotentikasi database untuk MariaDB, My, dan Postgre SQL SQL
Anda dapat mengautentikasi ke instans DB Anda menggunakan AWS Identity and Access Management (IAM) otentikasi database. IAM SQL Dengan metode autentikasi ini, Anda tidak perlu menggunakan kata sandi saat menghubungkan dengan instans basis data. Sebagai gantinya, gunakan token autentikasi.
Token otentikasi adalah serangkaian karakter unik yang dihasilkan Amazon RDS Aurora berdasarkan permintaan. Token otentikasi dihasilkan menggunakan AWS Signature Version 4. Setiap token memiliki masa pakai 15 menit. Anda tidak perlu menyimpan kredensyal pengguna dalam database, karena otentikasi dikelola secara eksternal menggunakan. IAM Anda juga masih dapat menggunakan autentikasi basis data standar. Token hanya digunakan untuk autentikasi dan tidak memengaruhi sesi setelah dibuat.
IAMotentikasi database memberikan manfaat sebagai berikut:
-
Lalu lintas jaringan ke dan dari database dienkripsi menggunakan Secure Socket Layer (SSL) atau Transport Layer Security (TLS). Untuk informasi selengkapnya tentang SSL TLS menggunakan/dengan Amazon RDS .
-
Anda dapat menggunakan IAM untuk mengelola akses ke sumber daya database secara terpusat, alih-alih mengelola akses secara individual pada setiap instans DB.
-
Untuk aplikasi yang berjalan di AmazonEC2, Anda dapat menggunakan kredensyal profil khusus untuk EC2 instans Anda untuk mengakses database Anda, bukan kata sandi, untuk keamanan yang lebih baik.
Secara umum, pertimbangkan untuk menggunakan otentikasi IAM database ketika aplikasi Anda membuat kurang dari 200 koneksi per detik, dan Anda tidak ingin mengelola nama pengguna dan kata sandi secara langsung dalam kode aplikasi Anda.
JDBCDriver Amazon Web Services (AWS) mendukung otentikasi IAM database. Untuk informasi selengkapnya, lihat Plugin AWS IAM Otentikasi
Driver Python Amazon Web Services (AWS) mendukung otentikasi IAM database. Untuk informasi selengkapnya, lihat Plugin AWS IAM Otentikasi
Arahkan topik berikut untuk mempelajari proses yang akan disetel IAM untuk otentikasi DB:
Wilayah dan ketersediaan versi
Ketersediaan dan dukungan fitur bervariasi di seluruh versi spesifik dari setiap mesin basis data, dan di seluruh Wilayah AWS. Untuk informasi selengkapnya tentang ketersediaan versi dan Wilayah dengan Amazon RDS dan autentikasi IAM database, lihatDaerah yang Didukung dan mesin DB untuk otentikasi IAM database di Amazon RDS.
CLIdan SDK dukungan
IAMotentikasi database tersedia untuk AWS CLIdan untuk bahasa AWS SDKs spesifik berikut:
Batasan untuk otentikasi IAM database
Saat menggunakan otentikasi IAM basis data, batasan berikut berlaku:
-
IAMotentikasi database membatasi koneksi pada 200 koneksi per detik.
Koneksi yang menggunakan token otentikasi yang sama tidak dibatasi. Kami menyarankan Anda menggunakan kembali token otentikasi jika memungkinkan.
-
Saat ini, otentikasi IAM database tidak mendukung semua kunci konteks kondisi global.
Untuk informasi selengkapnya tentang kunci konteks kondisi AWS global, lihat kunci konteks kondisi global di Panduan IAM Pengguna.
-
Untuk PostgreSQL, jika IAM role (
rds_iam
) ditambahkan ke pengguna (termasuk pengguna RDS master), IAM otentikasi lebih diutamakan daripada otentikasi kata sandi, sehingga pengguna harus masuk sebagai pengguna. IAM -
Untuk Postgre, SQL Amazon RDS tidak mendukung pengaktifan keduanya IAM dan metode otentikasi Kerberos secara bersamaan.
-
Untuk Postgre SQL Aurora , Anda tidak dapat menggunakan IAM otentikasi untuk membuat koneksi replikasi.
-
Anda tidak dapat menggunakan DNS catatan Route 53 kustom alih-alih titik akhir instans DB untuk menghasilkan token otentikasi.
-
CloudWatch dan CloudTrail jangan log IAM otentikasi. Layanan ini tidak melacak
generate-db-auth-token
API panggilan yang mengotorisasi IAM peran untuk mengaktifkan koneksi database. -
IAM Anda harus memiliki setidaknya 300MiB memori ekstra pada database Anda untuk konektivitas yang andal.
-
RDSUntuk My SQL , Anda tidak dapat menggunakan otentikasi berbasis kata sandi untuk pengguna database yang Anda konfigurasikan dengan otentikasi. IAM
Rekomendasi untuk otentikasi IAM basis data
Kami merekomendasikan hal berikut saat menggunakan otentikasi IAM database:
-
Gunakan otentikasi IAM database ketika aplikasi Anda memerlukan kurang dari 200 koneksi otentikasi IAM database baru per detik.
Mesin database yang bekerja dengan Amazon RDS Amazon tidak memaksakan batasan apa pun pada upaya otentikasi per detik. Namun, ketika Anda menggunakan otentikasi IAM database, aplikasi Anda harus menghasilkan token otentikasi. Aplikasi Anda kemudian menggunakan token tersebut untuk terhubung ke instans DB. Jika Anda melebihi batas maksimum koneksi baru per detik, maka overhead tambahan otentikasi IAM database dapat menyebabkan pelambatan koneksi.
Pertimbangkan untuk menggunakan pooling koneksi di aplikasi Anda untuk mengurangi pembuatan koneksi yang konstan. Ini dapat mengurangi overhead dari otentikasi IAM DB dan memungkinkan aplikasi Anda untuk menggunakan kembali koneksi yang ada. Atau, pertimbangkan untuk menggunakan RDS Proxy untuk kasus penggunaan ini. RDS Proxy memiliki biaya tambahan. Lihat harga RDS Proxy
. Ukuran token otentikasi IAM database tergantung pada banyak hal termasuk jumlah IAM tag, kebijakan IAM layanan, ARN panjang, serta properti lain IAM dan database. Ukuran minimum token ini umumnya sekitar 1 KB tetapi bisa lebih besar. Karena token ini digunakan sebagai kata sandi dalam string koneksi ke database menggunakan IAM otentikasi, Anda harus memastikan bahwa driver database Anda (misalnya,ODBC) dan/atau alat apa pun tidak membatasi atau memotong token ini karena ukurannya. Token terpotong akan menyebabkan validasi otentikasi dilakukan oleh database dan gagal. IAM
-
Jika Anda menggunakan kredensyal sementara saat membuat token otentikasi IAM basis data, kredensyal sementara harus tetap valid saat menggunakan token otentikasi IAM basis data untuk membuat permintaan koneksi.
Kunci konteks kondisi AWS global yang tidak didukung
IAMotentikasi database tidak mendukung subset kunci konteks kondisi AWS global berikut.
-
aws:Referer
-
aws:SourceIp
-
aws:SourceVpc
-
aws:SourceVpce
-
aws:UserAgent
-
aws:VpcSourceIp
Untuk informasi selengkapnya, lihat kunci konteks kondisi AWS global di Panduan IAM Pengguna.