尝试执行比较操作时出现 Active Directory 问题

尝试执行比较操作时出现 Active Directory 问题

我有安装了 Apache 2.2 和 SVN 的 CentOs 5.5。此外,我还有带 Active Directory 的 Windows 2003 R2。
我尝试通过 AD 授权用户,以便每个用户(如果他是 AD 中通讯组的成员)都可以访问 repo。
这是我的 apache 配置:

加载模块 dav_svn_module 模块/mod_dav_svn.so
加载模块 authz_svn_module 模块/mod_authz_svn.so
LDAPVerifyServerCert 关闭
服务器名称 svn.mydomain.com
文档根目录 /var/www/svn.mydomain.com/htdocs
重写引擎开启
[地点 /]
 AuthType 基本
 AuthBasicProvider ldap
 AuthzLDAP授权
 AuthLDAPURL ldaps://comp1.mydomain.com:636/DC=mydomain,DC=com?sAMAccountName?sub?(objectClass=*)
 验证LDAP绑定DN[电子邮件保护]
 AuthLDAPBindPassword 绑定用户密码
[/地点]
[位置 /repos/test]
 目录
 SVN路径 /var/svn/repos/test
 AuthName“用于测试的 SVN 存储库”
 需要 ldap-group CN=test,CN=ProjectGroups,DC=mydomain,DC=com
[/地点]

当我使用“Require valid-user”时,一切正常,“Require ldap-user”也能正常工作。
但是,当我使用“Require ldap-group”时,授权失败。apache
日志中没有错误,但 Active Directory 显示以下错误:

事件类型: 信息
事件来源:NTDS LDAP
事件类别:LDAP 接口
事件 ID:1138
日期:2010 年 10 月 9 日
时间:下午 1:28:52
用户:MYDOMAIN\binduser
计算机:COMP1
描述:
内部事件:函数 ldap_compare 已进入。

事件类型: 错误
事件来源:NTDS 常规
事件类别:内部处理
事件 ID:1481
日期:2010 年 10 月 9 日
时间:下午 1:28:52
用户:MYDOMAIN\binduser
计算机:COMP1
描述:
内部错误:对象上的操作失败。

附加数据
错误值:
2 0000208D:NameErr:DSID-031001CD,问题 2001
(NO_OBJECT),数据 0,最佳匹配:
'DC=我的域名,DC=com'

我对这个问题感到困惑。我做错了什么?

答案1

不确定这是否是您的问题,但 LDAPBindDN 对我来说看起来不像 DN。不知道您如何设置 AD 树,我猜它应该是 cn=binduser,dc=mydomain,dc=com 或 cn=binduser,ou=Users,dc=mydomain,dc=com 之类的。

答案2

我想到两个步骤:

  • 如果您从命令行对提供的 sAMAccountName 执行 ldapsearch,会返回什么?它是您期望的对象吗?
  • 如果使用全局目录端口(3268 未加密,3269 SSL)会发生什么情况?

答案3

当使用带有 mod_authnz_ldap 的 Active Directory 时,这些是必需的;它们在这里也可能有帮助:

   AuthLDAPGroupAttribute member
   AuthLDAPGroupAttributeISDN on

相关内容