Получение Proxy-Authorization не означает, что прокси принял учётную запись. Если учётные данные отсутствуют, неверны или неполны, подходящим ответом может стать ещё один 407 Proxy Authentication Required.

Ответ должен содержать запрос Proxy-Authenticate. Пример для Basic:

HTTP/1.1 407 Proxy Authentication Required
Proxy-Authenticate: Basic realm="Office proxy"
Content-Length: 0

Затем клиент может получить другие учётные данные или продолжить обмен по выбранной схеме. Некоторые механизмы аутентификации требуют нескольких раундов, поэтому второй 407 сам по себе не доказывает, что пароль введён с ошибкой.

RFC 9110 также различает действительные, но недостаточные учётные данные: серверу следует использовать 403 для запроса, который он отказывается выполнять под этой учётной записью. Реализация прокси должна принимать это решение о доступе осознанно, а не выбирать новый статус только потому, что появился заголовок авторизации.

На стороне клиента повторяющиеся одинаковые сбои требуют точки остановки. Сохраняйте статус ответа и запрос в диагностике и прекратите слепо повторно отправлять те же отклонённые учётные данные.

Похожие статьи