免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7182 | 回复: 6
打印 上一主题 下一主题

[ldap] APACHE+SVN LDAP认证问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-10-26 16:19 |只看该作者 |倒序浏览
本帖最后由 orcas 于 2011-10-26 16:28 编辑

1 用ldapsearch测试可以取得windwosAD的 用户
2 SVN+LDAP+APACHE需要的4个模块(LDAP/Dav_svn/authz/ahthnz_ldap)都具备
3 location配置如下:
  1. <Location /reps01>
  2.   DAV svn
  3.   SVNPath /var/svn/reps01
  4.   SVNListParentPath On
  5.   SVNAutoversioning On
  6.   SVNReposName "SVN - Reps01"
  7.   AuthType Basic
  8.   AuthName "Reps01"
  9.   AuthBasicProvider ldap
  10.   AuthzLDAPAuthoritative on
  11. #  AuthLDAPBindDN "CN=adlogin,CN=Users,DC=abc,DC=com,dc=cn"
  12.   AuthLDAPBindDN "adlogin@abc.com.cn"
  13.   AuthLDAPBindPassword "111111"
  14.   AuthLDAPURL "ldap://192.168.99.4:389/ou=dev,dc=abc,dc=com,dc=cn?sAMAccountName?sub?(objectClass=*)"
  15. #  Require valid-user
  16.   Require ldap-group cn=team01,ou=dev,dc=abc,dc=com,dc=cn
  17. </Location>
复制代码
AuthLDAPBindDN 分别用cn描述和账户描述,Require分别用valid-user和ad-group方式,http访问svn的时候弹出密码窗口,怎么输入用户名密码都无效.

论坛徽章:
0
2 [报告]
发表于 2011-10-26 16:48 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
3 [报告]
发表于 2011-10-26 22:47 |只看该作者
回复  orcas
            AuthLDAPURL "ldap://192.168.100.23:389/ou=d-tech,dc=test,dc=com?uid?sub?(objectClass=*)"
            # authorization
            Require ldap-group cn=Manager,ou=People,dc=test,dc=com
            AuthLDAPGroupAttribute memberUid
            AuthLDAPGroupAttributeIsDN off
            AuthzSVNAccessFile /data/svn-repos/Config/config.txt
        </Location>
        ErrorLog /tmp/error.log
        #LogLevel warn
        #CustomLog /tmp/access.log combined
        ServerSignature On
mitmax 发表于 2011-10-26 16:48


1 AuthLDAPURL中查资料说windows AD用sAMAccountName,这里用uid是什么意思?
2 你的配置中没有AuthLDAPBindPassword,是ldap不需要吗?还是你配置的ldap是用的匿名校验?
3 AuthLDAPGroupAttribute memberUid
            AuthLDAPGroupAttributeIsDN off
    这2个配置是做什么的?
4 ServerSignature On是什么意思?
5 你的AuthzSVNAccessFile /data/svn-repos/Config/config.txt是如何配置ad帐户权限的?我检查httpd的error文件时有提示
user user1@abc.com.cn not found: /repos01。我的acessfile配置:
[groups]
member=user1@abc.com.cn
[/]
@member=rw

论坛徽章:
0
4 [报告]
发表于 2011-10-27 09:27 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
5 [报告]
发表于 2011-10-27 16:30 |只看该作者
额,我是用ldap协议从windowsad中取得用户认证....
这个与普通的ldap认证不同吗?

论坛徽章:
0
6
发表于 2011-10-29 11:35
楼主你好,这是我配置成功的ldap认证,希望能帮上你

<Location /repos>
        DAV     svn
        SVNParentPath /svn
        SVNListParentPath On
        Order allow,deny
        Allow from all
        AuthType        Basic
        AuthBasicProvider       ldap
        AuthzLDAPAuthoritative off
        AuthName        "example work"
        AuthLDAPURL "ldap://192.168.2.210:389/DC=office,DC=net?sAMAccountName?sub?(objectClass=*)"
        AuthLDAPBindDN "demo@office.net"
        AuthLDAPBindPassword "123456"
        Require ldap-group CN=ITdev,OU=group,DC=office,DC=net
</Location>

论坛徽章:
0
7 [报告]
发表于 2011-10-31 22:42 |只看该作者
本帖最后由 orcas 于 2011-11-01 09:19 编辑

找到原因了,问题出在AuthzSVNAccessFile文件上。
检查apache的log文件一直提示user xxxx not found:
怀疑是账户名称写的不对。
用ldapsearch检查ad的属性时发现sAMAccountName是xxx,不带@abc.com的后缀。
而我在AuthzSVNAccessFile指定的配置文件中一直写的是xxx@abc.com,去掉@abc.com以后就可以访问了。

新问题:
1 如果我想使用xxx@abc.com的方式访问,该如何设置?
查ad的信息,userPrincipalName是xxx@abc.com的格式,是否可以用userPrincipalName替换sAMAccountName?
2 如果需要设定某个ou活着某个AD的组可以访问某个目录,在AuthzSVNAccessFile指定的文件中应该如何描述?
3 访问svn库没有显示库,显示的是 :
Collection of Repositories
conf/
dav/
db/
hooks/
locks/
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP