Un cliente no puede actuar sobre el reto de autenticación de un proxy hasta que tiene una respuesta HTTP completa que analizar. Una línea de estado y un campo Proxy-Authenticate todavía necesitan la línea en blanco que termina la sección de cabeceras.

Una respuesta HTTP/1.1 mínima sin cuerpo tiene esta estructura:

HTTP/1.1 407 Proxy Authentication Required<CRLF>
Proxy-Authenticate: Basic realm="local-proxy"<CRLF>
Content-Length: 0<CRLF>
<CRLF>

Cada marcador CRLF representa bytes de retorno de carro y salto de línea, no texto literal del marcador. La última línea de cabecera ya termina en CRLF; el CRLF adicional crea la línea vacía. Content-Length indica que no sigue ningún cuerpo.

Envía o vacía la respuesta completa antes de esperar otra petición. En un socket sin procesar, ten en cuenta también las escrituras que envían menos bytes de los solicitados.

Un 407 requiere al menos un reto Proxy-Authenticate aplicable. Si el cliente admite el esquema ofrecido y obtiene credenciales, puede reintentar con Proxy-Authorization. Los campos 401 y WWW-Authenticate de un sitio web conciernen a un salto distinto.

Este reto Basic es un ejemplo de estructuración, no un diseño de autenticación completo. Las credenciales Basic necesitan una conexión protegida cuando la confidencialidad importa. Enviar el reto tampoco implementa la validación de contraseñas, el análisis de peticiones ni el túnel CONNECT.

Artículos relacionados