Autenticação básica HTTP

A autenticação básica HTTP é um mecanismo simples de desafio e resposta com o qual um servidor pode solicitar informações de autenticação (um ID de usuário e senha) de um cliente... O cliente transmite as informações sobre autenticação para o servidor em um cabeçalho de Autorização As informações sobre autenticação estão em uma codificação base-64

Este tópico resume a autenticação básica de HTTP (Protocolo de Transporte de Hipertexto) Para obter detalhes, consulte RFC 2617, Autenticação HTTP: Basic e Digest Access Authentication, em https://www.ietf.org/rfc/rfc2617.txt.

Nota: o esquema de autenticação básica HTTP pode ser considerado seguro somente quando a conexão entre o Web client e o servidor for segura... Se a conexão for insegura, o esquema não fornecerá segurança suficiente para evitar que usuários não autorizados descubram as informações de autenticação para um servidor Se você achar que uma senha pode ser interceptada, use a autenticação básica com a criptografia SSL para proteger o ID do usuário e a senha.

Se um cliente fizer uma solicitação para a qual o servidor espera informações de autenticação, o servidor enviará uma resposta de HTTP com um código de status 401, uma frase de razão indicando um erro de autenticação e um cabeçalho WWW-Authenticate A maioria dos Web clients manipulam essa resposta solicitando um ID do usuário e senha do usuário.

O formato de um cabeçalho WWW-Authenticate para autenticação básica HTTP é:
WWW-Authenticate: Basic realm="Our Site"

O cabeçalho WWW-Authenticate contém um atributo de região, que identifica o conjunto de recursos ao qual o ID do usuário e a senha serão aplicados. Os clientes da web exibem essa sequência para o usuário Cada região pode requerer informações de autenticação diferentes Os Web clients podem armazenar as informações de autenticação para cada região para que os usuários não precisem digitar novamente as informações para cada solicitação..

Quando o Web client obteve um ID do usuário e senha, ele reenvia a solicitação original com um cabeçalho de Autorização. Como alternativa, o cliente pode enviar o cabeçalho de Autorização quando ele fizer sua solicitação original e esse cabeçalho pode ser aceito pelo servidor, evitando o processo de desafio e resposta.

O formato do cabeçalho de Autorização é:
Authorization: Basic userid:password