- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想让 nginx 拒绝具有无效凭据的客户端,同时仍然允许根本没有 Authorization header 的客户端。
当前配置:
server {
listen 443 ssl;
server_name ...;
proxy_http_version 1.1;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
proxy_pass http://localhost:8080;
}
}
如果 auth_request 在 if 中工作,这将解决我的问题:
location / {
proxy_pass http://localhost:8080;
if ($http_authorization) {
auth_request /login;
}
}
最佳答案
这似乎可行:
proxy_http_version 1.1;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location /__auth {
internal;
proxy_pass http://localhost:8080/login;
}
location / {
if ($http_authorization) {
rewrite ^(.*)$ /_auth$1 last;
}
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Logged-In "";
proxy_pass http://localhost:8080;
}
location ~ /_auth(.*) {
internal;
set $gooduri $1;
auth_request /__auth;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Logged-In 1;
proxy_pass http://localhost:8080$gooduri;
}
这个问题仍然需要更好的解决方案。
关于Nginx 可选的 auth_request,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29210428/
我想让 nginx 拒绝具有无效凭据的客户端,同时仍然允许根本没有 Authorization header 的客户端。 当前配置: server { listen 443 ssl;
我的 nginx.conf 中有以下内容: location / { auth_request /auth; add_header Content-Type text/plain;
我使用 auth_request 模块( http://nginx.org/en/docs/http/ngx_http_auth_request_module.html )。我的 nginx 配置:
首先:我不是 nginx 专家。非常新手。 我正在尝试使用 nginx 进行身份验证来保护第 3 方软件(真的 - 只是验证请求是否具有有效的 OAuth2 Bearer token ) HTTP 请
我有一台服务器,我在其中使用 nginx 运行多个子域站点 每个子域都有一个 server { ... }配置中的 block (在 sites-enabled 中) 我想添加一个 全局 动态身份验证
我想让我的 nginx 代理仅在客户端尚未经过身份验证时才执行身份验证子请求。有条件的部分是我卡住的地方。如何制作配置以使每个 session 只对客户端进行一次身份验证? 我能够成功地向 Apach
我想缓存请求 header 字段授权中的 token 。 授权:持有者 abcdefghijklmnopqrstuvwxyz 我的目标是,我不必验证验证服务器上的每个请求。如果授权 token 已缓存
我正在尝试使用 keycloak 代理设置 auth_request,但它不起作用(Nginx 返回 500 状态代码)。 这是我的例子: 配置文件 upstream target_host {
我使用 Nginx(1.9.9 版)作为后端服务器的反向代理。它需要根据POST请求的内容进行认证/授权。而且我无法在我的 auth_request 处理程序中读取 POST 请求正文。这就是我得到的
我正在使用 nginx 的 auth 模块。 (http://nginx.org/en/docs/http/ngx_http_auth_request_module.html)是否可以以某种方式存储来
我想使用多个 auth_request指令以尝试与多个服务器进行身份验证 - 即如果第一个身份验证服务器返回 403 ,尝试第二个身份验证服务器。我尝试了这样一种简单的方法: location /ap
我做 auth_request/auth;如 configuring-subrequest-authentication/ 中所述 如果/auth 返回 401 或 403,我如何重定向到登录页面?
我已经安装了启用了 auth_request 模块的 nginx,但是当我尝试设置身份验证时遇到了问题。我想通过 php 脚本进行身份验证,当用户向此位置发出请求时,nginx 请求到 php 文件,
我想保护实时 HLS 流。我想使用 auth_request 模块。我想通过传递 key 来检查请求是否有效。所以像:http://domain.com/hls/stream.m3u8?key=xxx
我正在尝试使用 auth_request模块检查是否允许用户访问某个文件。用户在 /my/download/uri/ 发布请求.我希望授权请求发布在 auth_service:9999/files/
我想弄清楚是否可以将查询参数从原始 URL 转发到 auth_request处理程序/服务? 用户应该能够像这样添加 API token 作为查询参数:https://example.com/api/
我正在尝试使用 nginx的ngx_http_auth_request_module以这种方式: server { location / { auth_request http
我有一个安装了 auth_request 模块的 NginX box,它通过我们的身份验证服务授权每个请求,如果请求被授权,则将请求转发到我们的后端服务,并且还添加 CORS header . 我遇到
我想用 auth_request和 oauth2_proxy在成功的身份验证请求时设置 header ,然后将其传递给将处理实际请求的下一个内联代理。 我已经设置了 NGINX 和各种代理来做他们的事
我是一名优秀的程序员,十分优秀!