cn=schema 条目具有多值属性 attributeTypes,该属性包含目录模式中每个属性类型的定义。可以使用 ldapmodify(1) 命令添加这些定义。
新的属性类型定义以及您对用户定义的属性类型所做的更改都保存在 99user.ldif 文件中。
对于每个属性类型定义,至少要提供一个 OID 以定义新的属性类型。请考虑至少为新属性类型使用以下元素:
属性 OID。 与属性的对象标识符相对应。OID 是一个字符串,通常是点分十进制数字,可以唯一地标识模式对象。
为了严格遵循 LDAP v3,您必须提供有效的数字 OID。要了解 OID 的详细信息,或者为您的企业请求前缀,请向互联网号码分配机构 (Internet Assigned Number Authority, IANA) 发送电子邮件(地址为 iana@iana.org),或访问 IANA Web 站点。
属性名称。与属性的唯一名称相对应。也称为其属性类型。属性名称必须以字母开头,并且只能包含 ASCII 字母、数字和连字符。
属性名称可以包含大写字母,但任何 LDAP 客户端都不会根据大小写来区分属性。根据 RFC 4512 的 2.5 节,必须以不区分大小写的方式处理属性名称。
您可以选择为属性类型添加备用属性名称(也称为别名)。
属性描述。用于介绍属性用途的简短描述性文本。
语法。由 OID 引用,用于描述属性将包含的数据。
RFC 4517 中列出了属性语法及其 OID。
允许的值数。默认情况下属性可以具有多个值,但您可能希望将属性限制为单值属性。
可使用 DSCC 执行此任务。有关信息,请参见目录服务控制中心界面和 DSCC 联机帮助。
根据 RFC 4517 中指定的语法准备属性类型定义。
使用 ldapmodify(1) 命令添加属性类型定义。
请注意,目录服务器会将 X-ORIGIN 'user defined' 添加到您提供的定义中。
以下示例将使用 ldapmodify 命令添加具有目录字符串语法的新属性类型:
$ cat blogURL.ldif dn: cn=schema changetype: modify add: attributeTypes attributeTypes: ( 1.2.3.4.5.6.7 NAME ( 'blog' 'blogURL' ) DESC 'URL to a personal weblog' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) $ ldapmodify -D cn=admin,cn=Administrators,cn=config -w - -f blogURL.ldif Enter bind password: modifying entry cn=schema $ |
在生产环境中,应该提供一个唯一的有效 OID,而不是 1.2.3.4.5.6.7。