基本上我的情况是我有一个内部网站,需要一个硬编码的用户名和密码才能访问(并且不能关闭,只能更改)。由于各种原因(隐藏端口、简化 url、简化 NAT 等),我通过反向代理公开了这个网站。
但是,我想做的是能够使用 Apache 来处理身份验证,以便:
- 我不必给每个人
一个密码 我可以使用 Apache 的 BasicAuth 拥有多个用户名和密码对于内部用户,我不必提示输入密码
编辑:关于更丰富的身份验证的第二部分已移至新问题
这或多或少是我现在所拥有的:
<VirtualHost *:80>
ServerName sub.domain.com
ProxyPass / http://192.168.1.253:8080/endpoint
ProxyPassReverse / http://192.168.1.253:8080/endpoint
# The endpoint has a mandatory password that I want to avoid requiring users to type
# I.e. something like this would be nice (but does not work)
# ProxyPass / http://username:password@192.168.1.253:8080/endpoint
# ProxyPassReverse / http://username:password@192.168.1.253:8080/endpoint
# Also need to be able to require a password to access proxy for people outside local subnet
# However these passwords will be controlled by Apache using BasicAuth, not the ProxyPass endpoint
# Ideas?
</VirtualHost>