El nombre de usuario y la contraseña se pasan en encabezados personalizados

1

¿Es seguro pasar el nombre de usuario y la contraseña en dos etiquetas de encabezado personalizadas separadas en servicios web / aplicación web? Enviar solicitud a través de https.

¿En qué se diferencia del uso del encabezado de Autorización?

¿Cuál es más seguro y cuál es la diferencia entre pasar credenciales en el encabezado o en la solicitud del cuerpo POST?

Se puede considerar seguro que se pueda pasar información confidencial en el encabezado personalizado.

    
pregunta Dee 30.08.2017 - 14:08
fuente

2 respuestas

2

El encabezado Authorization a menudo se trata especialmente mediante proxies inversos, IDS / IPS, firewalls, cachés web, servidores web, etc. en relación con la divulgación de información. La principal preocupación aquí es que los sistemas intermedios pueden registrar o almacenar en caché los encabezados si su arquitectura es más compleja que un solo servidor web que se ejecuta a través de HTTPS.

Si solo está ejecutando algo simple como un servidor Apache o nginx sin un registro especial, entonces no consideraría que usar un encabezado alternativo sea un problema de seguridad. En una configuración de este tipo, no es diferente a utilizar Authorization o Cookie headers en términos de seguridad.

En general, si tiene la opción de pasar datos confidenciales en una solicitud POST en lugar de en un encabezado, hágalo. Los cuerpos POST casi nunca se registran, excepto en los escenarios de depuración. También tiene la ventaja de las indicaciones automáticas del navegador para evitar la reenvío accidental de un formulario utilizando los botones del historial de navegación (atrás, adelante), mientras que un GET con un encabezado de autenticación no activará este mecanismo.

    
respondido por el Polynomial 30.08.2017 - 15:15
fuente
0

Si correctamente utiliza HTTPS, no hay diferencia entre un encabezado personalizado y un campo POST. El cifrado proporcionado por HTTPS asegurará todo el tráfico de la misma manera para ambos.

Pero es mejor atenerse a los más utilizados. Cada desarrollador que trabaje con su código entenderá un encabezado de autorización, y un encabezado personalizado tardará un tiempo. Si no documenta lo suficiente, el desarrollador pobre tendrá que leer una gran cantidad de código para entender cómo autenticar a los usuarios. Tener los campos username y password POST 'ed también es fácil de entender.

Entonces, incluso si ambos enfoques tienen básicamente la misma seguridad, use un encabezado de autorización o POST la autenticación.

    
respondido por el ThoriumBR 30.08.2017 - 14:58
fuente

Lea otras preguntas en las etiquetas