Cuando un servidor permite el acceso a través de la autenticación básica HTTP, ¿cuál es la experiencia esperada en un navegador web ?
Ignorando el navegador web por un momento, aquí se explica cómo crear una solicitud de autenticación básica con curl
:
curl -u myusername:mypassword http://somesite.com
Pero, ¿qué pasa con un navegador web? Lo que he visto en algunos sitios web es que visito la URL y luego el servidor devuelve el código de respuesta 401. El navegador muestra un mensaje de nombre de usuario / contraseña.
Sin embargo, en somesite.com, no recibo ninguna solicitud de autorización, solo una página que dice que no estoy autorizado. ¿Somesite no implementó el flujo de trabajo de autenticación básica correctamente o hay algo más que deba hacer?
basic-authentication
bpapa
fuente
fuente
Respuestas:
Para ayudar a todos a evitar confusiones, reformularé la pregunta en dos partes.
Primero: "¿cómo puede hacer una solicitud HTTP autenticada con un navegador, usando la autenticación BASIC?" .
En el navegador, primero puede hacer una autenticación básica http esperando que aparezca el mensaje o editando la URL si sigue este formato:
http://myusername:[email protected]
NB: el comando curl mencionado en la pregunta está perfectamente bien, si tiene una línea de comando y curl instalados. ;)
Referencias
También de acuerdo con la página del manual CURL https://curl.haxx.se/docs/manual.html
La segunda y verdadera pregunta es "Sin embargo, en somesite.com, no recibo ninguna solicitud de autorización, solo una página que dice que no estoy autorizado. ¿Somesite no implementó correctamente el flujo de trabajo de autenticación básica o hay algo? ¿Qué más tengo que hacer? "
La documentación de curl dice que la
-u
opción admite muchos métodos de autenticación, Básico es el predeterminado.fuente
Has probado ?
fuente
Es posible que tenga un nombre de usuario / contraseña inválido en su navegador. Intente borrarlos y verifique nuevamente.
Si está utilizando IE y somesite.com está en su zona de seguridad de Intranet, IE puede estar enviando sus credenciales de Windows automáticamente.
fuente
WWW-Autenticar encabezado
También puede obtener esto si el servidor está enviando un código de respuesta 401 pero no está configurando el encabezado WWW-Authenticate correctamente.
fuente
Si no hay credenciales proporcionadas en los encabezados de solicitud, la siguiente es la respuesta mínima requerida para que IE solicite credenciales al usuario y vuelva a enviar la solicitud.
fuente
Puedes usar Postman, un complemento para Chrome. Le da la posibilidad de elegir el tipo de autenticación que necesita para cada una de las solicitudes. En ese menú puede configurar usuario y contraseña. Postman traducirá automáticamente la configuración a un encabezado de autenticación que se enviará con su solicitud.
fuente