RFC2616: ¿Realmente necesito establecer www_authenticate al devolver 401?
-
25-09-2019 - |
Pregunta
De acuerdo a RFC2616 Si devuelvo 401 en respuesta a una solicitud a mi servidor (Ruby), "debo incluir un campo de encabezado de autenticación www". ¿Es esto realmente cierto? No establecer el encabezado parece no tener un impacto negativo. Estoy usando MERB como marco web y no me obliga a configurar el encabezado.
¿Me estoy perdiendo algo o esta es una regla más honrada en la violación?
¿Deberían los marcos web obligar al desarrollador a establecer el encabezado al regresar 401?
Solución
El problema es si espera que los usuarios puedan navegar desde la falla 401 hasta una autenticación exitosa en el futuro. Si no proporciona un encabezado WWW-Authenticate, entonces está cambiando el significado del 401 de 'Debe suministrar credenciales' a 'No nos gusta su tipo por aquí'. Esto podría estar bien para sus propósitos, pero la población inherente en el concepto de rechazar las credenciales sin ofrecer una forma de solucionar el problema es la raíz detrás de la "imprescindible".
Otros consejos
Envía 401 si desea que el cliente se autentique, en cuyo caso debe decirle cómo.
Entonces tú que haces desear el cliente para hacer? Si es solo un mensaje "No puedes hacer este", considere 403.