Apache:需要 ldap 组或 htgroup 成员资格

Apache: require ldap group or htgroup membership

我正在努力将我们的用户从 htpasswd/htgroup auth 转移到 ldap。

在此过程中,我希望允许 Apache 从 ldap 和 htpasswd 授权用户。

我的配置中有以下...

AuthBasicProvider ldap file

AuthUserFile my_passwords
AuthGroupFile my_groups

AuthLDAPBindDN "CN=Bind User,OU=Users,DC=ad,DC=mydomain,DC=com"
AuthLDAPURL "ldap://dir.mydomain.com/OU=Users,DC=ad,DC=mydomain,DC=com?sAMAccountName?sub?(objectClass=User)"

我不确定如何组合这两种需求类型...

所以基本上我需要其中之一...

Require ldap-group CN=MyGroup,OU=Users,DC=ad,DC=mydomain,DC=com

Require group MyGroup

如果我用"Satisfy any",那么Requires基本就被忽略了。如果我使用 "Satisfy all",则只有 ldap 组成员资格有效。

有什么方法可以解决这个问题,让 htgroups 或 ldap 组的成员资格有效吗?

我想出来了,以防它对其他人有用。我必须添加以下指令...

AuthzGroupFileAuthoritative off
AuthzLDAPAuthoritative off

如果在 ldap 中找不到该组,这允许它使用组文件验证该组,反之亦然。