在 proxy_pass 之前将 cookie 传回给用户

在 proxy_pass 之前将 cookie 传回给用户

我一直在设置 nginx 反向代理来处理基于 LDAP 数据库登录的请求。基本指南在这里https://github.com/nginxinc/nginx-ldap-auth。我遇到的问题是我想为 cookie 设置一个过期时间(很容易做到),并且每次访问任何资源时,过期时间都会增加十分钟。我无法访问代理之外的代码,因此我无法使用它来更新 cookie,但我有一些接收 auth_request 的 python 代码。我理想情况下希望将 cookie 返回给用户,然后重定向到 proxy_pass。

这是我的 nginx.conf 的一个片段

server {
    listen 80;
    location / {
         auth_request /auth_proxy; #the python authentication routine checks the cookie at this address.
         error_page 401 403 =200 /login #Python login page
         proxy_pass http://ADifferentServerWhenLoggedIn.org.
    }
} 

谢谢

答案1

您可以按照文档中提供的示例进行操作auth_request并提供与认证路径对应的位置。

然后你可以使用add_header插入 HTTP 标头,例如Set-Cookie

相关内容