Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menghubungkan ke cluster Aurora DSQL dengan konektor JDBC
Konektor Aurora DSQL untuk JDBC dirancang sebagai plugin otentikasi yang memperluas fungsionalitas driver PostgreSQL
Konektor Aurora DSQL untuk JDBC dibangun untuk bekerja dengan Driver PostgreSQL JDBC dan menyediakan integrasi tanpa batas dengan persyaratan otentikasi IAM Aurora DSQL
Dalam hubungannya dengan PostgreSQL JDBC Driver, Aurora DSQL Connector untuk JDBC memungkinkan otentikasi berbasis IAM untuk Aurora DSQL. Ini memperkenalkan integrasi mendalam dengan layanan AWS otentikasi seperti AWS Identity and Access Management
Tentang konektor
Aurora DSQL adalah layanan database SQL terdistribusi yang menyediakan ketersediaan dan skalabilitas tinggi untuk aplikasi yang kompatibel dengan PostgreSQL. Aurora DSQL memerlukan otentikasi berbasis IAM dengan token terbatas waktu yang tidak didukung oleh driver JDBC yang ada secara native.
Ide utama di balik Konektor Aurora DSQL untuk JDBC adalah menambahkan lapisan otentikasi di atas driver PostgreSQL JDBC yang menangani pembuatan token IAM, memungkinkan pengguna untuk terhubung ke Aurora DSQL tanpa mengubah alur kerja JDBC yang ada.
Apa itu Autentikasi Aurora DSQL?
Dalam Aurora DSQL, otentikasi melibatkan:
-
Otentikasi IAM: Semua koneksi menggunakan otentikasi berbasis IAM dengan token terbatas waktu
-
Pembuatan Token: Token otentikasi dihasilkan menggunakan AWS kredensil dan memiliki masa pakai yang dapat dikonfigurasi
Konektor Aurora DSQL untuk JDBC dirancang untuk memahami persyaratan ini dan secara otomatis menghasilkan token otentikasi IAM saat membuat koneksi.
Manfaat Konektor Aurora DSQL untuk JDBC
Meskipun Aurora DSQL menyediakan antarmuka yang kompatibel dengan PostgreSQL, driver PostgreSQL yang ada saat ini tidak mendukung persyaratan otentikasi IAM Aurora DSQL. Konektor Aurora DSQL untuk JDBC memungkinkan pelanggan untuk terus menggunakan alur kerja PostgreSQL yang ada sambil mengaktifkan otentikasi IAM melalui:
-
Pembuatan Token Otomatis: Token IAM dihasilkan secara otomatis menggunakan kredensil AWS
-
Integrasi Seamless: Bekerja dengan pola koneksi JDBC yang ada
-
AWS Credentials Support: Mendukung berbagai penyedia AWS kredensi (default, berbasis profil, dll.)
Menggunakan Konektor Aurora DSQL untuk JDBC dengan penyatuan koneksi
Konektor Aurora DSQL untuk JDBC bekerja dengan pustaka penyatuan koneksi seperti HiKaricp. Konektor menangani pembuatan token IAM selama pembentukan koneksi, memungkinkan kumpulan koneksi beroperasi secara normal.
Fitur utama
- Pembuatan Token Otomatis
-
Token IAM dihasilkan secara otomatis menggunakan AWS kredensil.
- Integrasi yang mulus
-
Bekerja dengan pola koneksi JDBC yang ada tanpa memerlukan perubahan alur kerja.
- AWS Credentials Support
-
Mendukung berbagai penyedia AWS kredensi (default, berbasis profil, dll.).
- Kompatibilitas Pengumpulan Koneksi
-
Bekerja mulus dengan pustaka penyatuan koneksi seperti HikariCP.
Prasyarat
Sebelum Anda mulai, pastikan Anda telah menyelesaikan prasyarat berikut:
-
Menginstal Java Development Kit (JDK). Pastikan Anda memiliki versi 17 atau lebih tinggi.
-
Siapkan izin IAM yang sesuai untuk memungkinkan aplikasi Anda terhubung ke Aurora DSQL.
-
AWS kredensil dikonfigurasi (via AWS CLI, variabel lingkungan, atau peran IAM).
Menggunakan Konektor Aurora DSQL untuk JDBC
Untuk menggunakan Konektor Aurora DSQL untuk JDBC di aplikasi Java Anda, ikuti langkah-langkah berikut:
-
Tambahkan dependensi berikut ke proyek Maven Anda:
<dependencies> <!-- Aurora DSQL Connector for JDBC --> <dependency> <groupId>software.amazon.dsql</groupId> <artifactId>aurora-dsql-jdbc-connector</artifactId> <version>1.0.0</version> </dependency> </dependencies>Untuk proyek Gradle, tambahkan dependensi ini:
implementation("software.amazon.dsql:aurora-dsql-jdbc-connector:1.0.0") -
Buat koneksi dasar ke cluster Aurora DSQL Anda menggunakan format konektor DSQL AWS PostgreSQL:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class DsqlJdbcConnectorExample { public static void main(String[] args) { // Using AWS DSQL PostgreSQL Connector prefix String jdbcUrl = "jdbc:aws-dsql:postgresql://your-cluster.dsql.us-east-1.on.aws/postgres?user=admin"; try (Connection connection = DriverManager.getConnection(jdbcUrl)) { // Use the connection try (Statement statement = connection.createStatement()) { // Create a table statement.execute("CREATE TABLE IF NOT EXISTS test_table (id UUID PRIMARY KEY DEFAULT gen_random_uuid(), name VARCHAR(100))"); // Insert data statement.execute("INSERT INTO test_table (name) VALUES ('Test Name')"); // Query data try (ResultSet resultSet = statement.executeQuery("SELECT * FROM test_table")) { while (resultSet.next()) { System.out.println("ID: " + resultSet.getInt("id") + ", Name: " + resultSet.getString("name")); } } } } catch (SQLException e) { e.printStackTrace(); } } }
Properti konfigurasi
Konektor Aurora DSQL untuk JDBC mendukung properti koneksi berikut:
- user
-
Menentukan pengguna untuk koneksi dan metode pembuatan token yang digunakan. Contoh:
admin - token-duration-secs
-
Durasi dalam hitungan detik untuk validitas token. Untuk informasi selengkapnya tentang batas token, lihat Membuat token otentikasi di Amazon Aurora DSQL.
- profile
-
Digunakan untuk membuat instance ProfileCredentialsProvider untuk pembuatan token dengan nama profil yang disediakan.
- region
-
AWS wilayah untuk koneksi Aurora DSQL. Ini opsional. Ketika disediakan, itu akan mengganti wilayah yang diekstrak dari URL.
- basis data
-
Nama database untuk terhubung ke. Default-nya adalah
postgres.
Pencatatan log
Aktifkan pencatatan untuk memecahkan masalah apa pun yang mungkin Anda alami saat menggunakan konektor Aurora DSQL JDBC.
Konektor menggunakan sistem logging bawaan (java.util.logging) dari Java. Anda dapat mengonfigurasi level logging dengan membuat logging.properties file:
# Set root logger level to INFO for clean output .level = INFO # Show Aurora DSQL Connector for JDBC FINE logs for detailed debugging software.amazon.dsql.level = FINE # Console handler configuration handlers = java.util.logging.ConsoleHandler java.util.logging.ConsoleHandler.level = FINE java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter # Detailed formatter pattern with timestamp and logger name java.util.logging.SimpleFormatter.format = %1$tH:%1$tM:%1$tS.%1$tL [%4$s] %3$s - %5$s%n
Contoh
Untuk contoh dan kasus penggunaan yang lebih komprehensif, lihat Konektor Aurora DSQL untuk repositori JDBC