如何使用 varnish-cache 映射 apache authgroupfile
How to map apache authgroupfile with varnish-cache
朋友们好,
请帮忙,我们正在尝试通过将 Apache AuthgroupFile 中的用户映射到 varnish-cache reverse-proxy,将用户和角色添加到我们的遗留应用程序中,任何通过 Apache Basic Auth 认证的用户都应该能够通过;用户映射到 AuthgroupFile 中的角色,在 back-end 中,我们检查组名并在应用程序中分配角色
我们可以将 AuthgroupFile 读取到变量中并在 varnish-cache 中检查 REMOTE_USER header 吗?
#AuthgroupFile
管理员:foo boo roo
只读:goo too zoo
#varnish-cache 规则
if (req.http.REMOTE_USER){
set req.http.X-AUTH-USER = req.http.REMOTE_USER;
}
如果您想检查 已验证用户,我建议您查看 vmod_basicauth。
它是一个读取 .htpasswd
文件并为您提供 VCL API 与这些登录交互的 Varnish 模块。
以下是在 VCL 中使用此模块的方法:
if (!basicauth.match("/var/www/.htpasswd", req.http.Authorization)) {
return(synth(401, "Restricted"));
}
这会将 Authorization
请求 header 与 .htpasswd
中允许的任何内容相匹配。
这是您要找的吗?
朋友们好,
请帮忙,我们正在尝试通过将 Apache AuthgroupFile 中的用户映射到 varnish-cache reverse-proxy,将用户和角色添加到我们的遗留应用程序中,任何通过 Apache Basic Auth 认证的用户都应该能够通过;用户映射到 AuthgroupFile 中的角色,在 back-end 中,我们检查组名并在应用程序中分配角色
我们可以将 AuthgroupFile 读取到变量中并在 varnish-cache 中检查 REMOTE_USER header 吗?
#AuthgroupFile 管理员:foo boo roo 只读:goo too zoo
#varnish-cache 规则
if (req.http.REMOTE_USER){
set req.http.X-AUTH-USER = req.http.REMOTE_USER;
}
如果您想检查 已验证用户,我建议您查看 vmod_basicauth。
它是一个读取 .htpasswd
文件并为您提供 VCL API 与这些登录交互的 Varnish 模块。
以下是在 VCL 中使用此模块的方法:
if (!basicauth.match("/var/www/.htpasswd", req.http.Authorization)) {
return(synth(401, "Restricted"));
}
这会将 Authorization
请求 header 与 .htpasswd
中允许的任何内容相匹配。
这是您要找的吗?