Как использовать переменную upstream http x auth request user
andrei_abc
nginx-forum на forum.nginx.org
Чт Янв 9 07:53:53 UTC 2020
у меня есть конфигурация nignx v1.17.6 c oauth2_proxy v4.1.0-12-g7663565
авторизация проходит через Azure.
server {
listen 443 ssl;
server_name 127.0.0.1;
ssl_certificate ../nginx-selfsigned.crt;
ssl_certificate_key ../nginx-selfsigned.key;
location /oauth2/ {
proxy_pass http://127.0.0.1:4180;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_set_header X-Auth-Request-Redirect $request_uri;
}
location = /oauth2/auth {
proxy_pass http://127.0.0.1:4180;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
# nginx auth_request includes headers but not body
proxy_set_header Content-Length "";
proxy_pass_request_body off;
}
location / {
auth_request /oauth2/auth;
error_page 401 = /oauth2/sign_in;
auth_request_set $user
$upstream_http_x_auth_request_user;
auth_request_set $email
$upstream_http_x_auth_request_email;
proxy_set_header X-User $user;
proxy_set_header X-Email $email;
auth_request_set $auth_cookie $upstream_http_set_cookie;
add_header Set-Cookie $auth_cookie;
auth_request_set $auth_cookie_name_upstream_1
$upstream_cookie_auth_cookie_name_1;
add_header X-Debug "$user";
add_header X-Debug2 "$email";
set $username ocadmin;
proxy_pass http://127.0.0.1:5601;
proxy_set_header Authorization "Basic secret:secret";
if ($user = "test на mail.ru") {
set $username user1;
}
proxy_set_header es-security-runas-user $username;
}
}
переменную user и email в header видно, и если она ровна test на mail.ru, if
все равно не выполняется
Кто подскажет в чем может быть проблема?
Posted at Nginx Forum: https://forum.nginx.org/read.php?21,286671,286671#msg-286671
Подробная информация о списке рассылки nginx-ru