代理在收到凭据后仍可再次发送 407
当代理凭据缺失、不完整或被拒绝时,可再发一个 407 质询;而拒绝访问应留给另一种策略结果。
收到 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。代理实现应当有意识地做出这一访问决定,而不是仅因为出现了授权头就选择一个新状态。
在客户端一侧,重复的相同失败需要一个停止点。在诊断信息中保留响应状态与质询,并停止盲目重发同一份被拒绝的凭据。