人们在LDAP目录中使用inetOrgPerson对CN进行了什么操作

use*_*421 5 ldap schema-design openldap

我一直givenName+" "+surname在CN领域使用,昨晚我醒来时尖叫着'John Smith'怎么样?我可以想象任何一个雇用多个同名人士的大型组织.所以当然这不会起作用.人们用什么代替?

编辑注意:在inetOrgPersonCN中是DN的一部分.

编辑注意:在这种情况下,我期望成长为数十万用户条目.

JPB*_*anc 12

在LDAP目录中,无论是OpenLDAP还是Active-Directory,规则都是DistinguishName(DN)必须是唯一的,与用于构成相对区分名称(RDN)的属性(或属性)无关.

人们如何确保它是独一无二的

  1. 我会说,在小型企业中,在目录中创建条目的人保证它是唯一的,首先是知识,其次是初步搜索.如果重复出现,他会找到像John E Smith这样的解决方案.如果名称发生变化(婚姻,离婚等),则使用此解决方案,LDAP记录必须从一个DN"移动"到另一个DN.最好尽量避免更改条目的DN,但在小目录中它并不重要.

  2. 开始中等业务的唯一性是大部分时间来自人力资源的员工ID.例如FR12345678.我看到,在大公司中,人们使用他们的员工ID登录.对于我在这里描述的事情,使用uid属性来命名对象更为标准cn(但是有些目录不允许你选择命名属性,我认为这是X500的特性).

  3. 在大多数目录中(不在AD中),您可以使用多个属性来组成RDN.例如sn=Assin+TelephoneNumber=1234,openLDAP中的有效RDN,它在PBX中是有意义的.还有一件事

在某些目录(为系统管理而设计)中,服务器端的某些属性在整个树中都是唯一的.这是的情况下,sAMAccountNameuserPrincipalName在Active-Directory和它们用于登录电子的目的.使用具有"给定名称名称"的CN属性迫使管理员保证唯一性.您可以在OpenLDAP中使用unique属性,在数据库定义中slapd.conf添加:

# index since the unique overlay will search for matching mail attributes
index mail eq

overlay unique
unique_attributes mail
Run Code Online (Sandbox Code Playgroud)

如果未编译唯一叠加层,则需要重新编译:

./configure ... --enable-unique
Run Code Online (Sandbox Code Playgroud)

  • 在波多黎各和大多数西班牙裔国家,我们追加母亲的娘家姓,例如:FRANK RIVERA RODRIGUEZ,其中RODRIGUEZ是母亲的娘家姓.这是西班牙裔国家的标准用法,增加了更多的独特性,尽管不是全部.如果我们无法实现唯一性,我们会在母亲的婚前姓名后附加pk_id(自动编号)以保证唯一性. (2认同)

Sam*_*der 5

用我的一些经验加入JPBlanc的答案.我工作的地方有几个ldap服务器/树.我们的AD服务器使用DisplayName作为CN的值.在4K +用户中,我们只有几个重复发生的实例.我相信如果存在欺骗,那么默认操作是在值上加1.即使在该用户群的最大部分具有高转换率,这也是非常罕见的.我们有两个不同的电子目录树,它们相互链接,并使用用户名.用户名是第一个首字母+姓氏.任何重复的都附加了一个递增的数字.你可以想象布朗斯和史密斯以及其他常见名字会发生很多事情.另一个作为ADLDS(以前称为ADAM)目录的树使用唯一生成的数字作为CN的每个新条目.它基本上是一个由外部加载过程控制的自动递增数字.最后,我们有一个外部合作伙伴的目录(想想独立代理商),它使用电子邮件地址+身份证号码作为CN的组合.

我在用户群上做了很多维护工作,我最不喜欢的方案是外部生成的数字.如果我在所有其他系统中得到关于Joe Brown的支持电话,我至少可以知道我需要浏览哪些内容才能找到他.当然一个简单的搜索过滤器会给我所有的Browns,但我仍然必须编写并执行它.所以我的建议是使用CN的某些部分名称,并以某种方式确保唯一性.从管理的角度来看,它会更容易一些.实际上CN很重要,但你将更多地处理其余的用户属性,所以不要太苛刻.