Nginx 添加request_auth认证模块
- 在需要鉴权控制的Nginx配置中,配置auth_request来指定用于鉴权的请求路径。用户访问/api会先访问鉴权路径
- 根据鉴权的请求返回的状态码,决定是否通过
location /api/{ auth_request /auth; # 鉴权通过后请求转发到该地址 proxy_pass http://192.168.60.128:8080/success } location /auth { # 声明该location块仅限内部调用,不用于反向代理 internal; # 表示确定是否向上游服务器发送HTTP包体部分。 proxy_pass_request_body off; # 设置请求头 proxy_set_header Content-type ""; # 进行验证,返回状态码 proxy_pass http://192.168.60.128:8080/verify }
引用:https://cloud.tencent.com/developer/article/1079065
nginx-auth-request-module模块基本使用原理就是:
- auth_request对应的路由返回401 or 403时,会拦截请求直接nginx返回前台401 or 403信息;
- auth_request对应的路由返回2xx状态码时,不会拦截请求,而是构建一个subrequest请求再去请求真实受保护资源的接口;
本文作者:凉白茶
本文链接:https://www.cnblogs.com/zh-Note/p/17834154.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库