HTTP 407 bez upotrebljivog Proxy-Authenticate izazova
Pregledajte zaglavlje autentikacije proxyja kada klijent nikad ne pozove svoj rukovatelj vjerodajnicama ili primi neočekivani status umjesto uobičajenog izazova.
Klijent ne može odabrati mehanizam autentikacije samo na temelju broja statusa. Odgovor proxyja mora opisati što prihvaća.
HTTP zahtijeva da proxy koji generira 407 pošalje izazov Proxy-Authenticate. Za Basic uslugu jednostavan je primjer:
HTTP/1.1 407 Proxy Authentication Required
Proxy-Authenticate: Basic realm="Office proxy"
Numerički status, naziv zaglavlja i sintaksa specifična za shemu jednako su važni. Brendirana stranica pogreške s riječju authentication u tijelu nije zamjena za zaglavlje. Prilagođene implementacije također moraju poslati potpuni HTTP 407 odgovor, uključujući završetak zaglavlja i uokvirenje tijela.
Pregledajte odgovor koji je stigao do ovog klijenta
Zabilježite polja statusa i izazova nakon uklanjanja tajnih vrijednosti. Posrednik je možda preoblikovao odgovor, ili je prilagođeni proxy možda sastavio nevaljani izazov. Usporedite te dokaze s vlastitim dnevnikom transakcija proxyja.
Ako usluga umjesto toga šalje 405 ili drugu pogrešku, nemojte svaki takav odgovor preimenovati u 407 unutar prilagođenog klijenta. Time biste sakrili stvarne neuspjehe politike metoda, a i dalje ne biste imali pouzdano pregovaranje o shemi. Popravite ponašanje usluge ili upotrijebite njezin dokumentirani podržani put autentikacije.
Višestruki izazovi također zahtijevaju pravi HTTP parser. Zarez može odvajati parametre ili izazove; slijepo dijeljenje cijelog zaglavlja po zarezima može pokvariti realm pod navodnicima. Upotrijebite podržanu implementaciju autentikacije klijenta umjesto niza zamjena znakovnih nizova.
Tek nakon što izazov postane upotrebljiv, ima smisla istražiti zašto davatelj vjerodajnica nije vratio račun.