Interceptando o pop-up de autorização básica do navegador com nginx

1

Estou tentando interceptar o pop-up básico com o nginx e preso na senha do usuário.

Eu tenho uma página de destino onde os usuários inserem um nome de usuário / senha e o formulário é postado no link .

O seguinte é o bloco que eu tenho, se eu codificar o nome de usuário codificado base64: senha, as coisas estão funcionando, mas para fazê-lo em um programaticaly não está funcionando.

location /validate/
{
set_form_input $username;
set_form_input $password;
set $auth_raw "$username:$password";
set_encode_base64 $digest $auth_raw; # $digest = some_hash_value

proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Authorization "Basic <<<some_hash_value>>>"; # This works
#proxy_set_header Authorization "Basic $digest"; # This does not work
proxy_pass http://localhost:5601/;

}

Como mostrado acima,

Codificar o valor hash permite ignorar o popup de autenticação básica:

proxy_set_header Authorization "Basic <<<some_hash_value>>>"; 

Mas atribuí-lo usando uma variável não funciona:

proxy_set_header Authorization "Basic $digest";

Apenas pela aparência dele, não consigo atribuir dinamicamente os valores necessários para a autorização proxy_set_header.

Resumindo, quero poder fazer o seguinte,

  1. O usuário insere o nome de usuário & senha em uma página & clique em enviar.
  2. Os dados são publicados no link
  3. O Nginx vê a solicitação em / validate e começa a processar os valores do formulário e compõe a URL (base64 codificada equivalente) http: // nome de usuário: senha @ localhost: 5601
  4. A listagem de servidores na porta 5601 vê o nome de usuário / senha e autentica o usuário e permite que o usuário entre.

O que estou fazendo errado aqui? Ou existe uma maneira melhor de lidar com isso com o nginx?

    
por MTH 09.07.2015 / 15:51

1 resposta

0

O problema estava relacionado ao formulário action=" link ". Para que eu possa fazer este trabalho, eu tenho que fazer um formulário de ação=" link ". Espero que isso ajude alguém!

    
por 16.07.2015 / 18:26

Tags