ldap添加自定义字段

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ldap添加自定义字段相关的知识,希望对你有一定的参考价值。

因项目原因,需要在LDAP中配置inetOrgPerson对象类的两个自定义属性。

  • isAbsent 128字符内的字符串,单值

  • substitutes 128字符内的字符串,多值


参阅了OpenLdap的管理文档以及网上的实例之后,解决方案如下:

编辑OpenLDAP的模式定义文件inetorgperson.schema,增加属性定义

attributetype ( 2.16.840.1.113730.3.1.900
  NAME ‘isAbsent‘
  DESC ‘whether the person is absent from work‘
  EQUALITY caseIgnoreMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128}
  SINGLE-VALUE )

attributetype ( 2.16.840.1.113730.3.1.901
  NAME ‘substitutes‘
  DESC ‘people substitutes when absent‘
  EQUALITY caseIgnoreMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )


其中2.16.840.1.113730.3.1.900和901是选择未被使用的OID(不知道有没有被使用过?google下吧),而1.3.6.1.4.1.1466.115.121.1.15则是字符串类型的语法。

在inetOrgPerson类中启用这2个属性

objectclass  ( 2.16.840.1.113730.3.2.2
        NAME ‘inetOrgPerson‘
  DESC ‘RFC2798: Internet Organizational Person‘
        SUP organizationalPerson
        STRUCTURAL
  MAY (
...
    isAbsent $ substitutes )
  )

在slapd.conf中启用inetorgperson.schema

#
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
ucdata-path  ./ucdata
include    ./schema/core.schema
include    ./schema/cosine.schema
include    ./schema/inetorgperson.schema
include    ./schema/nis.schema

重新启动LDAP服务之后一切搞定。


以上是关于ldap添加自定义字段的主要内容,如果未能解决你的问题,请参考以下文章

SAP B1 BOM中添加自定义字段 真就无解了么

自定义字段

php [使用操作和过滤器自定义结帐字段]向WooCommerce添加自定义cehckout字段。

MySQL可以查询自定义字段

织梦添加超过两百个自定义字段后在使用addfields调用自定义字段出错的解决方法

PCL:自定义点类型(合并PCL已有字段 | 添加新的字段)