最初我在Windows Server 2012 R2中安装了apache server 2.4,我已经安装了apache subversion 1.8.7,并且已经将模块文件(.so文件)从subversion复制到apache服务器。我创建了一个存储库。我已经设置了“AuthUserFile”和“AuthzSVNAccessFile”我在httpd.conf中给出了以下代码
<Location /project1>
DAV svn
SVNPath E:\svn_testing\project1
AuthType Basic
AuthName "Subversion Project1 repository"
AuthUserFile c:/etc/svn-auth-file
Require valid-user
AuthzSVNAccessFile c:/etc/svn-acl
</Location>
中添加以下代码的活动目录设置身份验证
<Location /project1>
DAV svn
SVNPath E:\svn_testing\project1
SVNParentPath E:\svn_testing
SVNListparentPath on
Order allow,deny
Allow from all
AuthType Basic
AuthBasicProvider ldap
#AuthzLDAPAuthoritative off
AuthName "Active_directory_integration"
AuthzSVNAccessFile C:\etc\svn-acl
AuthLDAPURL "ldap://***********(ip address):389/DC=*******,DC=com?sAMAccountName?sub?(objectClass=*)"
#this assumes you have created a dedicated bind user "apache_bind" on your active directory
AuthLDAPBindDN "CN=Administrator,CN=users,DC=*******,DC=com"
#warning: this password for AD apache_bind user is in plain text!
AuthLDAPBindPassword *************
#AuthLDAPFollowReferrals off
AuthLDAPGroupAttributeIsDN on
AuthLDAPGroupAttribute member
#SSLRequireSSL
require ldap-group OU=********,DC=********,DC=com
#require valid-user
</Location>
但是当我尝试重新启动服务器apache服务器时,它显示“请求的操作失败了”我检查了日志文件但是没有任何内容
答案 0 :(得分:0)
您似乎正在尝试搜索整个AD目录,因为您没有指定任何OU。 Windows AD不支持此功能。但是,使用端口3268
可以获得整个目录
请试试这个:
AuthLDAPURL "ldap://***********(ip address):3268/DC=*******,DC=com?sAMAccountName?sub?(objectClass=*)"
答案 1 :(得分:0)
AuthLDAPGroupAttribute member
require ldap-group OU=********,DC=********,DC=com
根据https://msdn.microsoft.com/en-us/library/ms683886(v=vs.85).aspx,组织单位(ou)没有属性member
。
您应该尝试访问您的仓库的组的DN。
在我的服务器上,这将是这样的:
require ldap-group cn=thegroup,ou=groups,dc=example,dc=com
注意cn,这是groupOfNames
,在我的情况下具有member
属性。