Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penting
Azure Cosmos DB for PostgreSQL tidak lagi didukung untuk proyek baru. Jangan gunakan layanan ini untuk proyek baru. Sebagai gantinya, gunakan salah satu dari dua layanan ini:
Gunakan Azure Cosmos DB for NoSQL untuk solusi database terdistribusi yang dirancang untuk skenario skala tinggi dengan perjanjian tingkat layanan ketersediaan (SLA) 99,999%, skala otomatis instan, dan failover otomatis di beberapa wilayah.
Gunakan fitur Elastic Clusters dari Azure Database For PostgreSQL untuk PostgreSQL yang dipecah menggunakan ekstensi Citus sumber terbuka.
Azure Cosmos DB for PostgreSQL mendukung tiga opsi jaringan:
- Tidak ada akses
- Ini adalah default untuk kluster yang baru dibuat jika akses publik atau privat tidak diaktifkan. Tidak ada komputer, baik di dalam atau di luar Azure, yang dapat terhubung ke node database.
- Akses publik
- Alamat IP publik ditetapkan ke node koordinator.
- Akses ke node koordinator dilindungi oleh firewall.
- Secara opsional, akses ke semua node pekerja dapat diaktifkan. Dalam hal ini, alamat IP publik ditetapkan ke node pekerja dan diamankan oleh firewall yang sama.
- Akses privat
- Hanya alamat IP privat yang ditetapkan ke node kluster.
- Setiap simpul memerlukan titik akhir privat untuk memungkinkan host di jaringan virtual yang dipilih untuk mengakses simpul.
- Fitur keamanan jaringan virtual Azure seperti kelompok keamanan jaringan dapat digunakan untuk kontrol akses.
Saat membuat kluster, Anda dapat mengaktifkan akses publik atau privat, atau memilih default tanpa akses. Setelah kluster dibuat, Anda dapat memilih untuk beralih antara akses publik atau privat, atau mengaktifkannya sekaligus.
Halaman ini menjelaskan opsi akses publik. Untuk akses privat, lihat Akses privat di Azure Cosmos DB for PostgreSQL.
Ringkasan Firewall
Firewall server Azure Cosmos DB for PostgreSQL mencegah semua akses ke simpul koordinator Anda hingga Anda menentukan komputer mana yang memiliki izin. Firewall memberikan akses ke server berdasarkan alamat IP asal setiap permintaan. Untuk mengonfigurasi firewall, Anda membuat aturan firewall yang menentukan rentang alamat IP yang dapat diterima. Anda bisa membuat aturan firewall pada tingkat server.
Aturan firewall: Aturan ini memungkinkan klien mengakses simpul koordinator Anda, yaitu, semua database dalam server logis yang sama. Aturan firewall tingkat server dapat dikonfigurasi dengan menggunakan portal Microsoft Azure. Untuk membuat aturan firewall tingkat server, Anda harus menjadi pemilik atau kontributor langganan.
Semua akses database ke node koordinator Anda diblokir oleh firewall secara default. Untuk mulai menggunakan server dari komputer lain, Anda perlu menentukan satu atau beberapa aturan firewall tingkat server untuk membuka akses ke server Anda. Gunakan aturan firewall untuk menentukan rentang alamat IP dari Internet yang diizinkan. Akses ke situs web portal Azure itu sendiri tidak terpengaruh oleh aturan firewall. Upaya koneksi dari internet dan Azure harus terlebih dahulu melewati firewall sebelum mereka dapat mencapai database PostgreSQL Anda, seperti yang ditunjukkan dalam diagram berikut:
Menghubungkan dari internet dan dari Azure
Firewall kluster mengontrol siapa yang dapat terhubung ke simpul koordinator grup. Firewall menentukan akses dengan berkonsultasi lewat daftar aturan yang dapat dikonfigurasi. Setiap aturan merupakan alamat IP atau rentang alamat yang diizinkan untuk masuk.
Ketika firewall memblokir koneksi, hal ini dapat menyebabkan kesalahan aplikasi. Menggunakan driver PostgreSQL JDBC, misalnya, menimbulkan kesalahan seperti:
java.util.concurrent.ExecutionException: java.lang.RuntimeException: org.postgresql.util.PSQLException: FATAL: no pg\_hba.conf entry for host "123.45.67.890", user "citus", database "citus", SSL
Lihat Membuat dan mengelola aturan firewall untuk mempelajari bagaimana aturan ditentukan.
Memecahkan masalah firewall server database
Saat akses ke layanan Microsoft Azure Cosmos DB for PostgreSQL tidak bertingkah seperti yang Anda harapkan, pertimbangkan poin-poin ini:
Perubahan pada daftar izinkan belum berlaku: Mungkin ada penundaan hingga lima menit sebelum perubahan pada konfigurasi firewall Azure Cosmos DB untuk PostgreSQL berlaku.
Pengguna tidak berwenang atau kata sandi yang salah digunakan: Jika pengguna tidak memiliki izin di server atau kata sandi yang digunakan salah, koneksi ke server ditolak. Membuat pengaturan firewall hanya memberi klien kesempatan untuk mencoba menyambungkan ke server Anda. Setiap klien masih harus menyediakan kredensial keamanan yang diperlukan.
Contohnya, jika menggunakan klien JDBC, kesalahan berikut dapat muncul.
java.util.concurrent.ExecutionException: java.lang.RuntimeException: org.postgresql.util.PSQLException: FATAL: password authentication failed for user "yourusername"Alamat IP dinamis: Jika Anda memiliki koneksi Internet dengan alamat IP dinamis dan Anda mengalami masalah saat melewati firewall, Anda dapat mencoba salah satu solusi berikut:
Tanyakan kepada Penyedia Layanan Internet (ISP) Anda untuk rentang alamat IP yang ditetapkan ke komputer klien Anda yang mengakses simpul koordinator, lalu tambahkan rentang alamat IP sebagai aturan firewall.
Sebagai gantinya, dapatkan alamat IP statis untuk komputer klien Anda, kemudian tambahkan alamat IP statis sebagai aturan firewall.
Langkah berikutnya
Untuk artikel tentang membuat aturan firewall tingkat server dan tingkat database, lihat: