我想为我的多台机器使用LDAP创建一个身份验证系统。
我已经创建了一个基本结构,但我不确定它是否是最好的解决方案。
基
我有机器M1,M2,M3,M5(其中有数据库D1,D2和D3)
用户U1,U2,U3,U4,U5,U6,U7,U8,U9,U10列表
用户类型 - 阅读器(特定于机器),写入器(特定于机器),管理器
要求:
每台机器都可以有读写器组
写用户就像他们各自机器的管理员
读取用户的权限非常有限,可以从可用数据库中读取少量数据库
使用的方法:
创建了一个节点,其中包含所有用户的列表及其密码信息,也允许数据库
创建了具有roleoccupents列表的Manager角色
为每台具有各自角色的机器创建了2个角色(读者,作者)
定义的访问控制
现在,当用户说U1尝试读取机器M4的数据库D2时......首先他必须在用户列表中,然后他必须是M4机器的角色冲击或读写器角色... < / p>
我的问题出现在这里
1.要检查是否允许他读取数据库D2,我们必须搜索用户节点以获取数据库信息,并查看它是否包含D2。
其他问题是
2。如果我想删除用户,很容易从用户节点删除,但不会轻易删除roleoccupent条目。
(我必须在每个服务器中搜索读者和作者角色,以检查他是否是一个角色扮演者)
那么有没有更好的方法来设计DIT而不是。管理ldap信息的步骤减少了吗?
...以及检查数据库访问的更好方法??
答案 0 :(得分:1)
为每个数据库创建一个organizationalRole条目,并使其roleOccupants成为允许使用它的用户。参照完整性覆盖将解决有关删除用户条目(或重命名)的问题。