Proxy-Authenticate
Penggunaan
Ketika klien mengirimkan permintaan melalui sebuah server proxy yang memerlukan kredensial, proxy tersebut merespons dengan kode status 407 dan menyertakan header Proxy-Authenticate. Header ini memberi tahu klien skema autentikasi mana yang harus digunakan serta menyediakan parameter apa pun yang dibutuhkan untuk menyusun kredensialnya.
Setelah menerima tantangan tersebut, klien mengirimkan ulang permintaan dengan header Proxy-Authorization yang berisi kredensial yang sesuai. Proxy memvalidasi kredensial itu dan, jika berhasil, meneruskan permintaan ke server tujuan.
Header Proxy-Authenticate beroperasi pada tingkat proxy. Header yang setara untuk autentikasi server origin adalah WWW-Authenticate, yang memicu respons 401 alih-alih 407.
Beberapa header Proxy-Authenticate dalam satu respons menunjukkan bahwa proxy menerima lebih dari satu skema. Klien memilih skema terkuat yang didukung oleh kedua belah pihak.
scheme
Nilai scheme mengidentifikasi metode autentikasi. Nilai yang umum adalah Basic, Digest, Bearer, dan Negotiate. Daftar lengkap skema yang terdaftar dikelola oleh IANA.
realm
Parameter realm adalah string opsional yang menjelaskan ruang perlindungan. Klien biasanya menampilkan nilai realm pada permintaan kredensial. Ketika dihilangkan, klien secara bawaan menampilkan nama host proxy.
Parameter khusus per skema
Setiap skema autentikasi mendefinisikan parameter tambahan. Skema Digest mencakup nonce, qop, algorithm, dan opaque. Skema Bearer mencakup scope dan error. Parameter-parameter ini muncul setelah nama skema pada nilai header.
Contoh
Sebuah proxy yang memerlukan autentikasi Basic mengembalikan tantangan dengan realm yang deskriptif. Nilai realm memberi tahu pengguna kredensial mana yang diharapkan.
Proxy-Authenticate: Basic realm="Corporate Proxy"
Sebuah proxy yang mendukung skema Digest menyertakan nonce yang dibangkitkan server untuk mencegah serangan replay.
Proxy-Authenticate: Digest realm="proxy@example.re", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", qop="auth"
Sebuah proxy yang menawarkan beberapa skema autentikasi mencantumkan masing-masing pada baris terpisah. Klien memilih opsi terkuat yang didukung.
Proxy-Authenticate: Negotiate
Proxy-Authenticate: Basic realm="Internal Network"