Autentikasi SCRAM di Azure Database for PostgreSQL - Server Fleksibel
BERLAKU UNTUK: Azure Database for PostgreSQL - Server Fleksibel
Salted Challenge Response Authentication Mechanism (SCRAM) adalah protokol autentikasi timbal balik berbasis kata sandi. Ini adalah skema respons tantangan yang menambahkan beberapa tingkat keamanan dan mencegah sniffing kata sandi pada koneksi yang tidak tepercaya. SCRAM mendukung penyimpanan kata sandi di server dalam bentuk hash kriptografis yang memberikan keamanan tingkat lanjut.
Catatan
Untuk mengakses instans server fleksibel Azure Database for PostgreSQL menggunakan metode autentikasi SCRAM, pustaka klien Anda perlu mendukung SCRAM. Lihat daftar driver yang mendukung SCRAM.
Catatan
Autentikasi SCRAM memberlakukan beban komputasi tambahan di server aplikasi Anda, yang perlu menghitung bukti klien untuk setiap autentikasi. Pengantar SCRAM overhead performa dapat dimitigasi dengan membatasi jumlah koneksi di kumpulan koneksi aplikasi Anda (mengurangi obrolan dalam aplikasi Anda) atau membatasi jumlah transaksi bersamaan yang diizinkan klien Anda (transaksi penggugus). Disarankan untuk menguji beban kerja Anda sebelum bermigrasi ke autentikasi SCRAM.
Mengonfigurasi autentikasi SCRAM
Ubah password_encryption menjadi SCRAM-SHA-256. Saat ini server fleksibel Azure Database for PostgreSQL hanya mendukung SCRAM menggunakan SHA-256.
Izinkan SCRAM-SHA-256 sebagai metode autentikasi.
Penting
Anda dapat memilih untuk memberlakukan autentikasi khusus SCRAM dengan memilih metode SCRAM-SHA-256 saja. Dengan demikian, pengguna dengan autentikasi MD5 dapat lebih lama tersambung ke server. Oleh karena itu, sebelum memberlakukan SCRAM, sebaiknya gunakan MD5 dan SCRAM-SHA-256 sebagai metode autentikasi hingga Anda memperbarui semua kata sandi pengguna ke SCRAM-SHA-256. Anda dapat memverifikasi jenis autentikasi untuk pengguna menggunakan kueri yang disebutkan di langkah #7.
Simpan perubahan. Ini adalah properti dinamis dan tidak memerlukan penghidupan ulang server.
Dari klien server fleksibel Azure Database for PostgreSQL Anda, sambungkan ke instans server fleksibel Azure Database for PostgreSQL. Contohnya,
psql "host=myPGServer.postgres.database.azure.com port=5432 dbname=postgres user=myDemoUser password=MyPassword sslmode=require" psql (12.3 (Ubuntu 12.3-1.pgdg18.04+1), server 12.6) SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off) Type "help" for help.
Verifikasi enkripsi kata sandi.
postgres=> show password_encryption; password_encryption --------------------- scram-sha-256 (1 row)
Anda kemudian dapat memperbarui kata sandi untuk pengguna.
postgres=> \password myDemoUser Enter new password: Enter it again: postgres=>
Anda dapat memverifikasi jenis autentikasi pengguna menggunakan fungsi
azure_roles_authtype()
.postgres=> SELECT * from azure_roles_authtype(); rolename | authtype ---------------------------+----------- azuresu | NOLOGIN pg_monitor | NOLOGIN pg_read_all_settings | NOLOGIN pg_read_all_stats | NOLOGIN pg_stat_scan_tables | NOLOGIN pg_read_server_files | NOLOGIN pg_write_server_files | NOLOGIN pg_execute_server_program | NOLOGIN pg_signal_backend | NOLOGIN replication | NOLOGIN myDemoUser | SCRAM-256 azure_pg_admin | NOLOGIN srtest | SCRAM-256 sr_md5 | MD5 (14 rows)
Anda kemudian dapat tersambung dari klien yang mendukung autentikasi SCRAM ke server Anda.
Catatan
Autentikasi SCRAM juga didukung saat terhubung ke PgBouncer terkelola bawaan. Tutorial di atas berlaku untuk menyiapkan konektivitas menggunakan autentikasi SCRAM melalui fitur PgBouncer bawaan.
Langkah berikutnya
- Membuat dan mengelola jaringan virtual Azure Database for PostgreSQL - Server Fleksibel menggunakan Azure CLI.
- Pelajari selengkapnya tentang Berjejaring di Azure Database for PostgreSQL - Server Fleksibel
- Pahami selengkapnya tentang Azure Database for PostgreSQL - Aturan firewall Server Fleksibel
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk