ngx_http_auth_request_module 模块

ngx_http_auth_request_module 模块(1.5.4+)根据子请求的结果实现客户端授权。如果子请求返回 2xx 响应码,则允许访问。 如果返回 401 或 403,则访问被拒绝并返回相应的错误代码。子请求返回的任何其他响应代码都被视为错误。

对于 401 错误,客户端还会从子请求响应中收到 “WWW-Authenticate” 请求头。

默认情况下不构建此模块,应使用 --with-http_auth_request_module 配置参数启用它。

该模块可以通过 satisfy 指令与其他访问模块组合,例如 ngx_http_access_module、ngx_http_auth_basic_module 和 ngx_http_auth_jwt_module。

在 1.7.3 版本之前,无法缓存对授权子请求的响应(使用 proxy_cache、proxy_store 等)。

示例配置

location /private/ {
    auth_request /auth;
    ...
}

location = /auth {
    proxy_pass ...
    proxy_pass_request_body off;
    proxy_set_header Content-Length "";
    proxy_set_header X-Original-URI $request_uri;
}

指令

auth_request 指令

语 法:auth_request uri | off;
默认值:auth_request off;
上下文:http, server, location

启用基于子请求的结果授权,并设置将发送子请求的URI。

auth_request_set 指令

语 法:auth_request_set $variable value;
默认值:—
上下文:http, server, location

授权请求完成后,将请求变量设置为给定值。该值可能包含来自授权请求的变量,例如$upstream_http_*。

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号