我有一些反向代理涵盖的 api。我已经使用 ldap AD 凭据配置了基本身份验证,它的工作方式就像一个魅力。但有一些来自外部组织的用户没有 AD 帐户。
是否可以同时配置 ldap 和 .htpasswd 身份验证?这就是为什么我将其称为混合基本身份验证。
我只在 nginx 中使用 Saturation 运算符尝试过此操作,但在 nginx 中进行 ldap 身份验证时,我必须从源代码编译它。这对我的客户来说是不能接受的。
答案1
好吧,现在我知道这是可能的:)
<VirtualHost *:80>
<Location />
Order allow,deny
Allow from all
ProxyPass http://localhost:3000/
ProxyPassReverse http://localhost:3000/
AuthType Basic
AuthName "Please enter Your credentials"
AuthBasicProvider ldap file
AuthLDAPURL ldap://10.10.10.1:389/OU=Users,OU=Company,DC=int,DC=company,DC=pl?sAMAccountName?sub?(objectClass=*)
AuthLDAPBindDN "CN=tech_user,OU=Special_Users,OU=Users,OU=Company,DC=int,DC=company,DC=pl"
AuthLDAPBindPassword "some_password"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
Satisfy All
</Location>
ProxyPreserveHost On
</VirtualHost>