دریافت 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 استفاده کند. پیاده‌سازی پروکسی باید این تصمیم دسترسی را آگاهانه بگیرد، نه اینکه فقط به‌خاطر ظاهر شدن سرآیند مجوز وضعیت تازه‌ای انتخاب کند.

در سمت کلاینت، خطاهای یکسان تکراری به نقطه توقف نیاز دارند. وضعیت پاسخ و چالش را در عیب‌یابی نگه دارید و ارسال دوباره کورکورانه همان اعتبارنامه ردشده را متوقف کنید.

مقالات مرتبط