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 у лапках. Використовуйте підтримувану реалізацію автентифікації клієнта замість низки замін рядків.
Лише коли виклик став придатним, має сенс досліджувати, чому постачальник облікових даних не повернув обліковий запис.