Acredito que isso não seja possível, mas alguém que conheço insistiu que funciona. Eu nem sei quais parâmetros tentar e não encontrei isso documentado em nenhum lugar.
Eu tentei http://myserver.com/~user=username&password=mypassword mas não funciona.
Você pode confirmar que de fato não é possível passar o usuário/passar via parâmetros HTTP (GET ou POST)?
Na verdade, não é possível passar o nome de usuário e a senha por meio de parâmetros de consulta na autenticação HTTP padrão. Em vez disso, você usa um formato de URL especial, como este:
http://username:[email protected]/
-- isso envia as credenciais no cabeçalho HTTP "Authorization" padrão.É possível que a pessoa com quem você estava falando estivesse pensando em um módulo ou código personalizado que analisasse os parâmetros de consulta e verificasse as credenciais. Esta não é uma autenticação HTTP padrão, porém, é uma coisa específica do aplicativo.
http://username:[email protected] funcionará para FireFox, Chrome, Safari, MAS não para IE.
Base de conhecimento da Microsoft
Passar parâmetros de autenticação básicos no URL não é recomendado
Existe um campo de cabeçalho de autorização para este fim, verifique-o aqui: http header list
Como usá-lo está escrito aqui: Autenticação de acesso básico
Lá você também pode ler que, embora ainda seja suportado por alguns navegadores, a solução sugerida de adicionar as credenciais de autorização Básica no URL não é recomendada.
Leia também o capítulo 4.1 em RFC 2617 - Autenticação HTTP para obter mais detalhes sobre por que NÃO usar Autenticação Básica.
Passando parâmetros de autenticação na string de consulta
Ao usar o OAuth ou outros serviços de autenticação, você também pode enviar seu token de acesso em uma string de consulta em vez de em um cabeçalho de autorização, algo como:
No seu exemplo, a URL http://myserver.com/ seria:
http://username:[email protected]/myserver.com/
A partir de 19/12/2019, testei isso e funciona para o Chrome Firefox Safari
Mas não para o IE, que não suporta mais autenticação básica. Eu implementei isso usando o SSRS 2017, que oculta o nome de usuário e a senha. Eu recomendo que você teste isso com um navegador anônimo. Teste com e sem a senha em diferentes navegadores anônimos. Aquele sem a senha deve pedir a senha.
É (obviamente) possível enviar qualquer string nos parâmetros GET, embora não seja recomendado enviar login e senha, pois pode torná-lo altamente visível, especialmente se não estiver em uma solicitação AJAX.
No entanto, você precisará codificar a página do servidor para extrair o login e a senha e depois validá-los e usá-los da maneira que for necessária.