HTTP 407 tanpa tantangan Proxy-Authenticate yang dapat digunakan
Periksa header autentikasi proxy ketika klien tidak pernah memanggil penangan kredensialnya atau menerima status tak terduga alih-alih tantangan normal.
Klien tidak dapat memilih mekanisme autentikasi hanya dari nomor status. Respons proxy perlu menjelaskan apa yang diterimanya.
HTTP mewajibkan proxy yang menghasilkan 407 mengirim tantangan Proxy-Authenticate. Untuk layanan Basic, contoh sederhananya adalah:
HTTP/1.1 407 Proxy Authentication Required
Proxy-Authenticate: Basic realm="Office proxy"
Status numerik, nama header, dan sintaksis khusus skema semuanya penting. Halaman galat bermerek yang memuat kata authentication di badannya bukan pengganti header. Implementasi khusus juga harus mengirim respons HTTP 407 yang lengkap, termasuk penutup header dan pembingkaian badan.
Periksa respons yang sampai ke klien ini
Catat bidang status dan tantangan setelah nilai rahasia dihapus. Perantara mungkin telah mengubah respons, atau proxy khusus mungkin telah menyusun tantangan yang tidak valid. Bandingkan bukti itu dengan log transaksi proxy itu sendiri.
Jika layanan justru mengirim 405 atau galat lain, jangan melabeli ulang setiap respons semacam itu sebagai 407 di dalam klien khusus. Anda akan menyembunyikan kegagalan kebijakan metode yang nyata dan tetap tidak memiliki negosiasi skema yang andal. Perbaiki perilaku layanan atau gunakan jalur autentikasi yang didukung dan terdokumentasi.
Tantangan berganda juga memerlukan pengurai HTTP sungguhan. Koma dapat memisahkan parameter atau tantangan; membagi seluruh header secara buta pada koma dapat merusak realm di dalam tanda kutip. Gunakan implementasi autentikasi yang didukung klien alih-alih rangkaian penggantian string.
Hanya setelah tantangan dapat digunakan, masuk akal untuk menyelidiki mengapa penyedia kredensial tidak mengembalikan akun.