Apache-2.2
結合 Apache 身份驗證提供程序(文件和 LDAP)
我正在嘗試在 Apache .htaccess 文件中結合基本文件和LDAP使用者身份驗證,但我無法讓這兩種方法同時工作。它是一個或另一個。
這是我的設置:
.htaccess
AuthType Basic AuthBasicProvider file ldap AuthUserFile <path>/passwd AuthGroupFile <path>/group AuthLDAPURL "ldap://ldap.<my-domain>.com/ou=People,dc=<my-domain>,dc=com?uid" AuthLDAPGroupAttribute memberUid AuthLDAPGroupAttributeIsDN off <Limit GET POST PUT> require group admin ldap-group cn=web,ou=Group,dc=<my-domain>,dc=com </Limit>
密碼
test:jhhLuf0DfajXk
團體
admin:test
當我更改限制值並刪除或重新排序組設置時,我會讓一個或另一個身份驗證提供程序工作。所以我似乎是一個語法問題,但我無法弄清楚。
老實說,組文件可以一起刪除,但我試過了,但沒有任何影響。所以我把它包括在內,以防它有一些影響。
有人可以指出我正確的方向嗎?這個問題與 apache auth 非常相似:LDAP 和 htpasswd 的組合,但並不完全相同。
在此先感謝您的幫助。
我能夠解決我自己的問題。它幾乎與所需指令的有效使用者選項有關。
Require valid-user
文件可以在這裡找到: http ://httpd.apache.org/docs/2.0/mod/core.html#require
正如我原來的問題中提到的,文件組不再是一個要求。一旦我刪除了該指令和伴隨它的後續必需指令,valid-user選項似乎已經解決了這個問題。我的工作*.htaccess*文件如下所示。
.htaccess
AuthName "Auth Test" AuthType Basic AuthBasicProvider file ldap AuthUserFile <path>/passwd AuthLDAPURL "ldap://ldap.<my-domain>.com/ou=People,dc=<my-domain>,dc=com?uid" AuthLDAPGroupAttribute memberUid AuthLDAPGroupAttributeIsDN off Require valid-user
文件和LDAP基本身份驗證都可以正常工作並與此設置很好地共存。
筆記
需要啟用以下 Apache 模組:
- authnz_ldap
- LDAP
我的
/etc/apache2/mods-enabled
包括這些:authnz_ldap.load -> ../mods-available/authnz_ldap.load ldap.conf -> ../mods-available/ldap.conf ldap.load -> ../mods-available/ldap.load