Nginx基于http响应状态码做权限控制的auth_request模块

基于子请求收到的HTTP响应码做访问控制

默认并未编译进Nginx,通过--with-http-auth-request-module启用

location / {
            root   html;
            index  index.html index.htm;
            auth_request /auth;
        }

        location /auth {
                #return 403 "error";
                return 200 "success"
        }

实际应用中,/auth中一般通过反向代理到鉴权服务器来返回状态码判断是否通过验证
location /private/ {
      auth_request /auth;
}

location /auth {
      proxy_pass http://127.0.0.1:8080/verify;
      proxy_pass_request_body off;
      proxy_set_header Content-Length "";
      proxy_set_header X-Original-URL $request_uri;
}
posted @ 2020-09-10 20:32  琴似蓝调  阅读(1961)  评论(1编辑  收藏  举报