これを解決することはできません、これが私の.htaccessです:
AuthPAM_Enabled Off AuthType Basic AuthBasicProvider ldap AuthzLDAPAuthoritative on AuthName "MESSAGE" Requireldap- group cn = CHANGED、cn = CHANGED AuthLDAPURL "ldap:// localhost/dc = CHANGED、dc = CHANGED?uid?sub?(objectClass = posixAccount)" AuthLDAPBindDN変更済み AuthLDAPBindPassword変更済み AuthLDAPGroupAttributememberUid
AuthLDAPURLが正しく、BindDNとBindPasswordも正しい(ldapvi -D ..で確認済み)。
Apacheバージョン:Apache/2.2.9(Debian)
エラーメッセージは私にはわかりにくいようです。AuthzLDAPAuthoritativeがオンになっているので、どこに問題がありますか。
編集:
LDAPモジュールがロードされますが、問題はそれらが欠落していることではありません。
#ls /etc/Apache2/mods-enabled/*ldap* /etc/Apache2/mods-enabled/authnz_ldap.load /etc/Apache2/mods-enabled/ldap.load
EDIT2:
ファンキーを変えることで解決しました
ldap-group cn = CHANGED、cn = CHANGED [.____が必要です。]
とのライン
有効なユーザーが必要です
AuthzLDAPAuthoritativeがオンになっているため、他の認証方法は使用されず、有効なユーザー要件はLDAPを介して認証されます。 (正しい? :/)
'Require'行は次のようになります
Ldap-group cn = CHANGED、cn = CHANGEDが必要です
それは書き込みのようには見えません-私はあなたがそのようなDNに2つのcnを持つことができるとは思わない。
私とApache2.2.14にとって、これはグループごとのアクセス制御のチャンピオンのように機能します
AuthType Basic AuthName "Secret Area for IT Only" AuthBasicProvider ldap AuthzLDAPAuthoritative on AuthLDAPGroupAttributeIsDN off AuthLDAPGroupAttributememberUid AuthLDAPURL "ldap://ldap1.example.intldap2.company.int/cn=int" ldap-groupcn = it、ou = Groups、o = int [.____が必要です。]
「int」は、非公開サーバーの内部ドメインです。
ldapおよびauthnz_ldapモジュールを有効にしましたか?
あなたはそうすることができます:
a2enmod ldap authnz_ldap; /etc/init.d/Apache2 restart