SSO with Auth_Request
Jason Tuck
designerfh at yahoo.com
Mon Aug 22 17:51:32 UTC 2016
Hi All,
I'm trying to implement SSO similar to this: https://developers.shopware.com/blog/2015/03/02/sso-with-nginx-authrequest-module/ however I am using node/passport/azure-ad for my authentication service.
The issue I am running into is - how do I get the originally requested route /app1 when the subrequest returns a 401? I'd like to pass that along to the passport.js middleware as a parameter so it will redirect me properly after authentication (which involves several redirects).
server {
listen 80;
server_name localhost;
error_page 401 /login;
location /login {
set $app //this is where I get stuck
rewrite ^/login http://localhost:3200/login?appUrl=$app;
}
location /app1 {
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
auth_request /auth;
}
location /auth {
proxy_pass http://localhost:3200/auth;
proxy_pass_request_body off;
proxy_set_header Content-Length "";
}
}
I've tried returning the value from node as a custom header, tried $upstream_http_, $sent_http_, $http_,
Tried storing it as a session variable, but express sees the subrequest as a different session than navigating directly, etc.
I've gone through the past couple years on the mailing list archive and didnt see anything.
Any help would be appreciated!
Thanks
Jason
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20160822/e5c5345c/attachment.html>
More information about the nginx
mailing list