可以使用请求URI的一部分作为mod_authnz_ldap的Require ldap-group指令的input吗?
我试图dynamic检查访问一堆不同的项目目录,所有这些都在http://testserver.com/projects/下,这样访问/projects/abc的用户将检查cn=abc,ou=groups,dc=test 。 理想情况下,我想这样做,而不是为每个项目创build一个单独的位置指令,因为可能有数百个。
我已经想出了这个,它说明了一般的概念,但是它不起作用(project_name没有检索实际的variables内容):
<Location /projects> SetEnvIf Request_URI "/projects/([-a-z0-9A-Z_]+)/" project_name=$1 AuthType Basic AuthBasicProvider ldap AuthName "Restricted Resource - SVN (LDAP)" AuthLDAPURL "ldap://127.0.0.1:389/dc=test?uid" AuthLDAPGroupAttributeIsDN off AuthLDAPGroupAttribute memberUid Require ldap-group cn=%{project_name},ou=groups,dc=test </Location>
帮帮我?
我相信Apache 2.4在这个领域提供的function可能比2.2更值得一看。
或者,可能需要考虑构build自己的自定义模块; 它不像看起来那么可怕 – 假设你在C
同样的,mod_perl在通过hooks扩展Apache方面提供了不less的function。