View a markdown version of this page

Konektor Aurora DSQL untuk Postgres.js - Amazon Aurora DSQL

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

Konektor Aurora DSQL untuk Postgres.js

Konektor Aurora DSQL untuk Postgres.js adalah konektor yang dibangun di atas Postgres.jsyang Node.js mengintegrasikan Otentikasi IAM untuk menghubungkan aplikasi ke JavaScript cluster Amazon Aurora DSQL.

Konektor Aurora DSQL untuk Postgres.js dirancang sebagai plugin otentikasi yang memperluas fungsionalitas Postgres.js klien untuk memungkinkan aplikasi mengautentikasi dengan Amazon Aurora DSQL menggunakan kredensil IAM. Konektor tidak terhubung langsung ke database, tetapi menyediakan otentikasi IAM yang mulus di atas driver yang mendasarinya. Postgres.js

Tentang Konektor

Amazon Aurora DSQL adalah layanan database SQL terdistribusi yang menyediakan ketersediaan dan skalabilitas tinggi untuk aplikasi. PostgreSQL-compatible Aurora DSQL memerlukan IAM-based otentikasi dengan token terbatas waktu yang tidak didukung oleh driver yang ada Node.js secara native.

Ide di balik Konektor Aurora DSQL untuk Postgres.js adalah menambahkan lapisan otentikasi di atas Postgres.js klien yang menangani pembuatan token IAM, memungkinkan pengguna untuk terhubung ke Aurora DSQL tanpa mengubah alur kerja yang ada. Postgres.js

Konektor Aurora DSQL untuk Postgres.js bekerja dengan sebagian besar versi. Postgres.js Pengguna menyediakan versi mereka sendiri dengan menginstal Postgres.js secara langsung.

Apa itu Autentikasi Aurora DSQL?

Dalam Aurora DSQL, otentikasi melibatkan:

  • Otentikasi IAM: Semua koneksi menggunakan IAM-based otentikasi dengan token terbatas waktu

  • Pembuatan Token: Token otentikasi dibuat menggunakan kredensi AWS dan memiliki masa pakai yang dapat dikonfigurasi

Konektor Aurora DSQL untuk dirancang untuk Postgres.js memahami persyaratan ini dan secara otomatis menghasilkan token otentikasi IAM saat membuat koneksi.

Fitur

  • Otentikasi IAM Otomatis - Menangani pembuatan dan penyegaran token DSQL

  • Dibangun di atas Postgres.js - Memanfaatkan klien PostgreSQL cepat untuk Node.js

  • Integrasi Seamless - Bekerja dengan pola Postgres.js koneksi yang ada

  • Region Auto-Discovery - Mengekstrak wilayah AWS dari nama host cluster DSQL

  • Full TypeScript Support - Menyediakan keamanan tipe penuh

  • AWS Credentials Support - Mendukung berbagai penyedia kredensi AWS (default, berbasis profil, kustom)

  • Kompatibilitas Pengumpulan Koneksi - Bekerja dengan mulus dengan Postgres.js 'penyatuan koneksi bawaan

Panduan memulai cepat

Persyaratan

  • Node.js 20+

  • Akses ke cluster Aurora DSQL

  • Siapkan izin IAM yang sesuai untuk memungkinkan aplikasi Anda terhubung ke Aurora DSQL.

  • Kredensi AWS dikonfigurasi (melalui AWS CLI, variabel lingkungan, atau peran IAM)

Penginstalan

npm install @aws/aurora-dsql-postgresjs-connector # Postgres.js is a peer-dependency, so users must install it themselves npm install postgres

Penggunaan Dasar

import { auroraDSQLPostgres } from '@aws/aurora-dsql-postgresjs-connector'; const sql = auroraDSQLPostgres({ host: 'your-cluster.dsql.us-east-1.on.aws', username: 'admin', }); // Execute queries const result = await sql`SELECT current_timestamp`; console.log(result); // Clean up await sql.end();

Menggunakan ID cluster alih-alih host

const sql = auroraDSQLPostgres({ host: 'your-cluster-id', region: 'us-east-1', username: 'admin', });

String Koneksi

const sql = AuroraDSQLPostgres( 'postgres://admin@your-cluster.dsql.us-east-1.on.aws' ); const result = await sql`SELECT current_timestamp`;

Konfigurasi Lanjutan

import { fromNodeProviderChain } from '@aws-sdk/credential-providers'; const sql = AuroraDSQLPostgres({ host: 'your-cluster.dsql.us-east-1.on.aws', database: 'postgres', username: 'admin', customCredentialsProvider: fromNodeProviderChain(), // Optionally provide custom credentials provider tokenDurationSecs: 3600, // Token expiration (seconds) // Standard Postgres.js options max: 20, // Connection pool size ssl: { rejectUnauthorized: false } // SSL configuration });

Opsi konfigurasi

Opsi Tipe Diperlukan Deskripsi
host string Ya Nama host cluster DSQL atau ID cluster
database string? Tidak Nama basis data
username string? Tidak Nama pengguna database (menggunakan admin jika tidak disediakan)
region string? Tidak Wilayah AWS (terdeteksi secara otomatis dari nama host jika tidak disediakan)
customCredentialsProvider AwsCredentialIdentityProvider? Tidak Penyedia kredensi AWS khusus
tokenDurationSecs number? Tidak Waktu kedaluwarsa token dalam hitungan detik

Semua Postgres.jsopsi standar juga didukung.

Autentikasi

Konektor secara otomatis menangani otentikasi DSQL dengan menghasilkan token menggunakan generator token klien DSQL. Jika wilayah AWS tidak disediakan, wilayah AWS akan diurai secara otomatis dari nama host yang disediakan.

Untuk informasi selengkapnya tentang otentikasi di Aurora DSQL, lihat panduan pengguna.

Admin vs Pengguna Reguler

  • Pengguna bernama “admin” secara otomatis menggunakan token otentikasi admin

  • Semua pengguna lain menggunakan token otentikasi reguler

  • Token dihasilkan secara dinamis untuk setiap koneksi

Penggunaan sampel

JavaScript contoh menggunakan Konektor Aurora DSQL untuk Postgres.js tersedia di. GitHub Untuk petunjuk tentang cara menjalankan contoh, lihat direktori examples.

Deskripsi Contoh
Penggabungan koneksi dengan kueri bersamaan, termasuk pembuatan tabel, penyisipan, dan pembacaan di beberapa pekerja Contoh kolam koneksi (lebih disukai)
Operasi CRUD (buat tabel, sisipkan, pilih, hapus) tanpa penyatuan koneksi Contoh tanpa kolam koneksi