具有 "ldap file" 提供商的 BasicAuth 不适用于文件中的用户
BasicAuth with "ldap file" providers doesn't work for users in file
我有一个主机,其中经过身份验证的用户需要在某个 ldap 组中。这非常有效。之后我需要一个外部用户,我把它放在本地的一个文件中,但这个不起作用。
当我注释掉用户使用的所有 ldap 行时,文件正确创建并可由 Apache 2.2 访问,但是当我添加 ldap 时,所有内容都对 ldap 用户有效,但对文件用户无效。
当我尝试使用密码错误的本地文件用户登录时,我像往常一样再次弹出登录窗口,但是当我插入正确的凭据时,我得到“授权必需
此服务器无法验证您是否有权访问所请求的文档。您提供了错误的凭据(例如密码错误),或者您的浏览器不了解如何提供所需的凭据。”
下面是我在 Apache 2.2 上的设置
<Location "/">
Deny from all
AuthType Basic
AuthName "My Auth"
AuthBasicProvider ldap file
AuthLDAPURL LDAP_URL
AuthUserFile "path/to/pass/file"
Require user file_user
Require ldap-group cn=LDAP Group,cn=Groups,dc=DC,dc=org
Require ldap-user ldap_user_outside_group
Satisfy any
</Location>
您可能需要 AuthzLDAPAuthoritative
以允许匹配基于 ldap 的 Require 指令的失败不是致命的。通过 2.4 中的内部改进,这种指令在以后的版本中已过时。
我有一个主机,其中经过身份验证的用户需要在某个 ldap 组中。这非常有效。之后我需要一个外部用户,我把它放在本地的一个文件中,但这个不起作用。
当我注释掉用户使用的所有 ldap 行时,文件正确创建并可由 Apache 2.2 访问,但是当我添加 ldap 时,所有内容都对 ldap 用户有效,但对文件用户无效。
当我尝试使用密码错误的本地文件用户登录时,我像往常一样再次弹出登录窗口,但是当我插入正确的凭据时,我得到“授权必需 此服务器无法验证您是否有权访问所请求的文档。您提供了错误的凭据(例如密码错误),或者您的浏览器不了解如何提供所需的凭据。”
下面是我在 Apache 2.2 上的设置
<Location "/">
Deny from all
AuthType Basic
AuthName "My Auth"
AuthBasicProvider ldap file
AuthLDAPURL LDAP_URL
AuthUserFile "path/to/pass/file"
Require user file_user
Require ldap-group cn=LDAP Group,cn=Groups,dc=DC,dc=org
Require ldap-user ldap_user_outside_group
Satisfy any
</Location>
您可能需要 AuthzLDAPAuthoritative
以允许匹配基于 ldap 的 Require 指令的失败不是致命的。通过 2.4 中的内部改进,这种指令在以后的版本中已过时。