免费注册 查看新帖 |

Chinaunix

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

[ldap] 请教关于使用LDAP做开发的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-01-19 16:20 |只看该作者 |倒序浏览
最近准备使用LDAP做一个企业综合信息平台的单点登录平台,除用户认证外,更重要的是用户权限管理。
最头痛的是如何使用标准schema来存储用户权限呢?存储后,又如何通过程序来操作呢?
我查了一些Active Directory的“类别”和“属性”,它几乎全部都是用的标准schema来完成的,但没看明白其权限管理是如何通过LDAP实现的。

我凭着个人主观的猜测,想到以下几点,不知道是否正确。
1、LDAP主要完成的数据存储,具体这个数据在应用系统中有什么作用,那是要靠应用程序来识别的。如:OID=1.2.840.113556.1.5.9的users这个objectclass,有一个OID=2.5.4.35的userPassword属性,如此说来,对用户密码的较验应该是应用程序来完成的了,而不是由LDAP本身来完成。但这又好象跟许多的LDAP系统(如:OpenLDAP、Active Directory)的功能相矛盾,这些系统本身就有密码较验功能,只要你传一个用户和密码,它自动会知道该用哪个属性的值进行对比。

2、objectclass本身是否具有继承关系?如:Groups这个objectclass是否是从users这个objectclass中继承下来的呢?

3、以windows的权限定义为例,某个用户组(如:cn=groupA)有读取某个文件权限,这个用户组下面所有的用户均拥有读这个文件权限。这在LDAP中该如何存储呢?总之权限的定义和继承在LDAP中该如何完成呢?

最近天天在查这方面的资料,收获为零,没搞得懂,请高手赐教。

论坛徽章:
0
2 [报告]
发表于 2007-01-20 20:38 |只看该作者
学习 学习 关注关注!

论坛徽章:
0
3 [报告]
发表于 2007-01-20 22:35 |只看该作者
哎,看来包括PY版主在内的行家们是不愿意回答这样的初级层次的问题了。
我今天把PY版主所推崇的Understanding And Deploying Ldap Directory Services 2Nd Ed 2003书浏览了一遍,感觉这本书主要描述的还是LDAP本身的技术概念和规则方式。
但我最关心的是如何实现的问题,具体而言就是用户、角色、权限是如何用LDAP来实现的。
期盼有实作经验的朋友介绍一下。

论坛徽章:
0
4 [报告]
发表于 2007-01-30 09:37 |只看该作者
lz要用ldap做sso是没有问题的,但如果想在这ldap上做用户、角色、权限方面的规划,在我看来复杂应用下面这是一个不怎么好的规划。
因为在sso应用复杂的情况下,各个业务系统的角色,权限是全然不同的,你可以用ldap做这方面的存储,但是这样增加了ldap的复杂性和
后期维护的难度,而且作为子系统独立而治的权限系统,并不会给子系统增加负担,反而降低了整个系统的复杂性,同时分散了作为用户认证中心的ldap服务的压力。

论坛徽章:
0
5 [报告]
发表于 2007-01-30 11:11 |只看该作者
我来说说我得看法:
1. 关于用户验证,校验应该是应用程序完成。例如我用samba做DC,密码存放在smbpasswd和存放在LDAP里面的效果是一样的。而且查看log也可以知道,每次用户登陆的时候,其实也是smbd向LDAP发起搜索来查询用户的

2. 有继承关系。例如Organizational Person的Superior是Person,那么Organizational Person就可以直接使用Person所拥有的属性

3. 其实我需要看权限的管理(包括在application,servers和DIT)。对Group来设置权限,而通过gid来对应到每个人,还没弄清楚的就是具体的权限的设置怎么存放在LDAP中,或者有个定义的profile,放在FileSystem上面,LDAP里面记录的是一个link。 如果有好的想法,也可以提出来。

论坛徽章:
0
6 [报告]
发表于 2007-01-30 19:47 |只看该作者
原帖由 layerr 于 2007-1-19 16:20 发表
最近准备使用LDAP做一个企业综合信息平台的单点登录平台,除用户认证外,更重要的是用户权限管理。
最头痛的是如何使用标准schema来存储用户权限呢?存储后,又如何通过程序来操作呢?
我查了一些Active Direct ...

From the questions you asked above, I found that you are confused about basic concepts.
For your first question, what is the 'LDAP' you metioned mean? You said that LDAP主要完成的数据存储. LDAP is only a protocol. So it seems like that you want to say OpenLDAP. Obviously, the authentication should be done by server side, not the code as you said.

If you had read the book <<Understanding And Deploying Ldap Directory Services 2Nd Ed>> or relative references, you wouldn't have asked your second question which has an obvious answer of yes.

Without a clear concept of LDAP you will never get a satisfactory answer of your third question.

论坛徽章:
0
7 [报告]
发表于 2007-02-25 11:58 |只看该作者
原帖由 neophiliac 于 2007-1-30 19:47 发表

From the questions you asked above, I found that you are confused about basic concepts.
For your first question, what is the 'LDAP' you metioned mean? You said that LDAP主要完成的数据存储. LDAP  ...

根据楼上的意识,使用ldap就可以自动验证用户合法性,不需要代码判断吗?

论坛徽章:
0
8 [报告]
发表于 2007-02-25 14:37 |只看该作者
建议楼主参考Novell/CA/IBM  这些厂商的产品线,不难发现,这些厂商的身份管理和访问控制是由不同的产品来实现的,可见,要实现楼主的想法---'通过LDAP来是SSO和用户权限控制'是不太理想的。
LDAP可以做为身份管理的数据存储,甚至是身份验证系统,但是,如果要实现和不同业务应用系统之间的角色、权限对应关系,相信是个浩大的工程,同时,在灵活性上也要大打折扣,在开发复杂度上也会大大增加,需要不断扩展使用的Schema,因此,不建议通过LDAP来实现集中权限控制。

论坛徽章:
0
9 [报告]
发表于 2007-02-25 23:13 |只看该作者
原帖由 linuxsrc 于 2007-2-25 14:37 发表
建议楼主参考Novell/CA/IBM  这些厂商的产品线,不难发现,这些厂商的身份管理和访问控制是由不同的产品来实现的,可见,要实现楼主的想法---'通过LDAP来是SSO和用户权限控制'是不太理想的。
LDAP可以做为身份管 ...


LDAP 可以做身份验证系统吗?看来我还需要学习啊!

有什么文章上介绍这个内容的,请赐教.

论坛徽章:
0
10 [报告]
发表于 2007-03-06 15:19 |只看该作者
原帖由 linuxsrc 于 2007-2-25 14:37 发表
'通过LDAP来做用户权限控制'是不太理想的。
LDAP可以做为身份管 ...




呵呵,英雄所见略同!

[ 本帖最后由 wangbaohua 于 2007-3-8 09:09 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP