HTTP 407 χωρίς χρησιμοποιήσιμη πρόκληση Proxy-Authenticate
Εξετάστε την κεφαλίδα ελέγχου ταυτότητας του διαμεσολαβητή όταν ο πελάτης δεν καλεί ποτέ τον χειριστή διαπιστευτηρίων του ή λαμβάνει μη αναμενόμενη κατάσταση αντί για κανονική πρόκληση.
Ένας πελάτης δεν μπορεί να επιλέξει μηχανισμό ελέγχου ταυτότητας μόνο από έναν αριθμό κατάστασης. Η απάντηση του διαμεσολαβητή πρέπει να περιγράφει τι δέχεται.
Το HTTP απαιτεί από τον διαμεσολαβητή που παράγει 407 να στέλνει πρόκληση Proxy-Authenticate. Για υπηρεσία Basic, ένα απλό παράδειγμα είναι:
HTTP/1.1 407 Proxy Authentication Required
Proxy-Authenticate: Basic realm="Office proxy"
Η αριθμητική κατάσταση, το όνομα της κεφαλίδας και η σύνταξη που αφορά το σχήμα έχουν όλα σημασία. Μια σελίδα σφάλματος με εμπορικό σήμα που περιέχει τη λέξη authentication στο σώμα της δεν αντικαθιστά την κεφαλίδα. Οι προσαρμοσμένες υλοποιήσεις πρέπει επίσης να στέλνουν πλήρη απάντηση HTTP 407, συμπεριλαμβανομένου του τερματικού της κεφαλίδας και της πλαισίωσης του σώματος.
Εξετάστε την απάντηση που έφτασε σε αυτόν τον πελάτη
Καταγράψτε τα πεδία κατάστασης και πρόκλησης αφού αφαιρέσετε τις μυστικές τιμές. Ένας ενδιάμεσος μπορεί να έχει μετασχηματίσει την απάντηση, ή ένας προσαρμοσμένος διαμεσολαβητής μπορεί να έχει κατασκευάσει μη έγκυρη πρόκληση. Συγκρίνετε αυτά τα στοιχεία με το αρχείο συναλλαγών του ίδιου του διαμεσολαβητή.
Αν η υπηρεσία στέλνει 405 ή άλλο σφάλμα αντί αυτού, μην επαναχαρακτηρίσετε κάθε τέτοια απάντηση ως 407 μέσα σε προσαρμοσμένο πελάτη. Θα κρύβατε πραγματικές αποτυχίες της πολιτικής μεθόδων και πάλι δεν θα είχατε αξιόπιστη διαπραγμάτευση σχήματος. Διορθώστε τη συμπεριφορά της υπηρεσίας ή χρησιμοποιήστε την τεκμηριωμένη υποστηριζόμενη διαδρομή ελέγχου ταυτότητας.
Οι πολλαπλές προκλήσεις απαιτούν επίσης πραγματικό αναλυτή HTTP. Ένα κόμμα μπορεί να χωρίζει παραμέτρους ή προκλήσεις· ο τυφλός διαχωρισμός ολόκληρης της κεφαλίδας στα κόμματα μπορεί να καταστρέψει ένα realm μέσα σε εισαγωγικά. Χρησιμοποιήστε την υποστηριζόμενη υλοποίηση ελέγχου ταυτότητας του πελάτη αντί για μια σειρά αντικαταστάσεων συμβολοσειρών.
Μόνο αφού η πρόκληση γίνει χρησιμοποιήσιμη έχει νόημα να διερευνήσετε γιατί ο πάροχος διαπιστευτηρίων δεν επέστρεψε λογαριασμό.