Digest Authentication adalah mekanisme autentikasi kontrol akses HTTP yang memberikan keamanan lebih baik dibandingkan Basic Auth. Sementara Basic Auth mengirimkan kredensial dalam bentuk teks biasa (dikodekan Base64), Digest Auth menggunakan hashing kriptografis untuk melindungi kredensial pengguna selama transmisi.Cara Kerja Digest Auth#
Dalam Basic Auth, klien mengirimkan nama pengguna dan kata sandi dalam pengodean Base64 ke server. Kredensial ini dapat ditransmisikan melalui jaringan dan mungkin disadap oleh pihak perantara, yang dapat dengan mudah mendekodenya.Digest Authentication menyelesaikan masalah ini dengan menggunakan algoritma enkripsi untuk melindungi transmisi kredensial pengguna. Alih-alih mengirimkan kata sandi, klien mengirimkan hash kata sandi yang digabungkan dengan nilai lain (nonce, realm, dll.), sehingga jauh lebih sulit bagi penyerang untuk menyadap dan menggunakan kembali kredensial.Basic Auth: Nama pengguna dan kata sandi dikirim dalam Base64 (mudah didekode)
Digest Auth: Hash kriptografis dikirim sebagai pengganti kata sandi (tidak dapat dengan mudah dibalik)
Pengaturan Dasar#
Pada halaman Auth, pilih Digest Auth sebagai metode otorisasi dan konfigurasikan kredensial Anda:| Parameter | Deskripsi | Wajib |
|---|
| Username | Nama pengguna autentikasi Anda | Ya |
| Password | Kata sandi autentikasi Anda | Ya |
Pengaturan Lanjutan#
Klik opsi Advanced untuk mengonfigurasi parameter enkripsi tambahan. Jika dibiarkan kosong, parameter tersebut akan dibuat secara otomatis berdasarkan respons server.| Parameter | Deskripsi | Sumber |
|---|
| Realm | Pengidentifikasi ruang perlindungan | Disediakan oleh server dalam header WWW-Authenticate |
| Nonce | String unik yang ditentukan server | Disediakan oleh server dalam header WWW-Authenticate |
| Algorithm | Algoritma hash kriptografis | MD5, SHA-256, SHA-256-sess, SHA-512-256, SHA-512-256-sess |
| qop (Quality of Protection) | Tingkat kualitas algoritma digest | auth (hanya autentikasi) atau auth-int (autentikasi + integritas) |
| Client Nonce | Angka acak yang dibuat oleh klien | Dibuat oleh klien untuk setiap permintaan |
| Opaque | String acak yang disediakan server | Dikembalikan oleh server, dikirim kembali tanpa perubahan |
Nilai Quality of Protection (qop)#
| Nilai | Deskripsi | Kasus Penggunaan |
|---|
| auth | Jaminan kualitas autentikasi | Autentikasi digest standar |
| auth-int | Autentikasi + perlindungan integritas | Keamanan yang ditingkatkan dengan verifikasi integritas pesan |
Dalam sebagian besar kasus, Anda hanya perlu memberikan nama pengguna dan kata sandi Anda. Apidog akan secara otomatis mengekstrak Realm, Nonce, dan parameter lainnya dari respons awal server serta mengonfigurasikannya untuk Anda.
Pastikan endpoint API Anda mendukung algoritma yang dipilih. Implementasi modern biasanya mendukung varian SHA-256 atau SHA-512 untuk meningkatkan keamanan dibandingkan algoritma MD5 lama.