Tentang Proxy Auth AlloyDB

Halaman ini memberikan ringkasan tentang Proxy Auth AlloyDB, konektor yang memungkinkan Anda membuat koneksi terenkripsi yang sah ke database AlloyDB.

Untuk panduan langkah demi langkah tentang cara menggunakan Proxy Auth, lihat Menghubungkan menggunakan Proxy Auth AlloyDB.

Manfaat menggunakan Proxy Auth AlloyDB

Proxy Auth memberikan keuntungan berikut dibandingkan dengan menghubungkan klien secara langsung ke database AlloyDB:

  • Otorisasi koneksi berbasis IAM. Proxy Auth menggunakan kredensial dan izin pokok Identity and Access Management (IAM) untuk memberi otorisasi koneksi ke instance AlloyDB.

  • Autentikasi IAM otomatis. Proxy Auth dapat mengautentikasi pengguna database secara otomatis berdasarkan pokok IAM yang menjalankan proxy.

  • Komunikasi yang aman dan terenkripsi. Proxy Auth secara otomatis membuat, menggunakan, dan mempertahankan koneksi mutual TLS (mTLS) 1.3 menggunakan cipher AES 256-bit antara klien Anda dan instance AlloyDB untuk memverifikasi identitas klien dan server serta mengenkripsi traffic data.

Untuk mengetahui informasi selengkapnya tentang cara menghubungkan ke instance AlloyDB, lihat Ringkasan koneksi.

Cara kerja Proxy Auth AlloyDB

Proxy Auth AlloyDB bekerja dengan menjalankan klien lokal di lingkungan lokal. Aplikasi Anda berkomunikasi dengan Proxy Auth AlloyDB menggunakan protokol database standar yang digunakan oleh database Anda.

Proxy Auth AlloyDB menggunakan tunnel yang aman (mTLS 1.3, cipher AES 256-bit) untuk berkomunikasi dengan proses pendampingnya yang berjalan di server. Setiap koneksi yang dibuat melalui Proxy Auth AlloyDB membuat satu koneksi ke instance AlloyDB.

Saat terhubung ke Proxy Auth AlloyDB, aplikasi akan memeriksa apakah koneksi antara aplikasi tersebut dan instance AlloyDB target telah tersedia. Jika tidak tersedia, maka koneksi akan memanggil AlloyDB Admin API untuk mendapatkan sertifikat SSL sementara dan menggunakannya untuk terhubung ke AlloyDB. Masa berlaku sertifikat SSL sementara akan berakhir dalam 24 jam. Proxy Auth AlloyDB memperbarui sertifikat-sertifikat tersebut sebelum masa berlakunya habis.

Proxy Auth AlloyDB memanggil API melalui nama domain alloydb.googleapis.com menggunakan HTTPS. Akibatnya, semua koneksi TCP keluar di port 443 (HTTPS) dari mesin klien harus diizinkan oleh firewall Anda.

Meskipun dapat memproses port apa pun, Proxy Auth AlloyDB membuat koneksi keluar ke instance AlloyDB Anda hanya pada port 5433. Jika host klien Anda memiliki firewall keluar, firewall tersebut harus mengizinkan koneksi ke port 5433 pada alamat IP instance AlloyDB Anda. Host klien juga harus mengizinkan koneksi ke port 443, yang merupakan port HTTPS standar, ke semua alamat IP.

Cara Proxy Auth AlloyDB mengautentikasi dan memberi otorisasi koneksi

Untuk mengizinkan koneksi klien ke instance AlloyDB, klien Proxy Auth melakukan autentikasi ke Google Cloud menggunakan kredensial pokok IAM di klien, lalu memvalidasi bahwa pokok IAM memiliki peran IAM Cloud AlloyDB Client (roles/alloydb.client) dan Service Usage Consumer (roles/serviceusage.serviceUsageConsumer).

Secara default, klien Auth Proxy menggunakan Kredensial Default Aplikasi (ADC) untuk menemukan kredensial klien. Hal ini memberikan cara yang terpadu dan standar bagi aplikasi untuk melakukan autentikasi secara otomatis tanpa mengedit atau meng-hardcode nilai konfigurasi.

Autentikasi standar

Untuk penyiapan pengembangan dan produksi standar, Anda tidak perlu mengonfigurasi kredensial atau flag kustom. Klien Auth Proxy secara otomatis menyelesaikan kredensial menggunakan jalur lingkungan standar. Bergantung pada lingkungan yang Anda gunakan untuk menjalankan klien Proxy Auth, klien ini akan menemukan kredensial dari sumber berikut:

  • Pengembangan lokal. Saat mengembangkan secara lokal, Anda dapat melakukan autentikasi menggunakan akun pengguna Google pribadi atau perusahaan Anda. Klien Auth Proxy akan otomatis mendeteksi dan menggunakan kredensial ini. Ini adalah pendekatan yang direkomendasikan untuk pengembangan lokal, sehingga Anda tidak perlu mendownload file kunci akun layanan secara lokal.

  • Lingkungan yang dikelola Google. Saat Anda menjalankan aplikasi di Google Cloud layanan—seperti instance Compute Engine, Google Kubernetes Engine, Cloud Run, Cloud Run Functions, atau App Engine—kredensial dari akun layanan terlampir akan disediakan secara otomatis oleh server metadata lingkungan. Klien Auth Proxy secara otomatis menemukan dan menggunakan kredensial ini tanpa konfigurasi tambahan.

    • Jika resource komputasi berada dalam project yang sama dengan instance AlloyDB, akun layanan default biasanya memiliki izin yang diperlukan untuk mengautentikasi.
    • Jika resource komputasi dan instance AlloyDB berada di project yang berbeda, Anda harus menambahkan akun layanan resource komputasi ke project yang berisi instance AlloyDB dan memberikan peran yang diperlukan kepadanya.

Mengganti kredensial

Dalam skenario tertentu—seperti pengujian, menjalankan di luarGoogle Cloud, atau saat Anda ingin melewati kredensial lingkungan standar—Anda dapat mengganti kredensial menggunakan salah satu metode berikut:

  • Kunci akun layanan. Berikan kunci melalui variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS atau flag --credentials-file. Kunci akun layanan akan berisiko keamanan jika tidak dikelola dengan benar, jadi sebaiknya gunakan salah satu sumber standar jika memungkinkan.

  • Token akses OAuth 2.0 yang ada. Berikan token melalui flag --token.

  • Kredensial gcloud CLI. Berikan kredensial ini melalui flag --gcloud-auth. Kami tidak merekomendasikan tanda ini. Jalankan gcloud auth application-default login sebagai gantinya.

Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi kredensial ini di klien, lihat Menghubungkan menggunakan Proxy Auth AlloyDB. Untuk informasi umum tentang pendekatan Google Cloud terhadap autentikasi, lihat Ringkasan autentikasi.

Langkah berikutnya