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!
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,
O que estou fazendo errado aqui? Ou existe uma maneira melhor de lidar com isso com o nginx?
Tags nginx