Autenticação básica HTTP usa a codificação base-64 do nome de usuário e senha juntos. Para um nome de usuário testuser
e uma senha de hunter2
, você pegaria a string testuser:hunter2
e a base64-encode. Isso lhe dará a string dGVzdHVzZXI6aHVudGVyMg==
Como, você pergunta, você consegue essa codificação? A maioria dos sistemas POSIX tem openssl
instalado, caso em que você pode usar a saída de echo -n "testuser:hunter2" | openssl base64 -base64
. O -n
é hiper-importante, caso contrário, você também incluirá um newline
na codificação, o que fornecerá uma string codificada incorreta (já que a senha não termina com um caractere de nova linha geralmente).
Você pode transacionar via telnet
assim:
telnet hostname.example.com 80
GET / HTTP/1.1
Authorization: Basic dGVzdHVzZXI6aHVudGVyMg==