搜索

3.6. 为属性和对象类手动创建自定义架构文件

download PDF

如果要手动创建自定义模式,将其存储在 /etc/dirsrv/slapd-instance_name/schema/99user.ldif 文件中。可能使用不同的文件名,但会导致出现缺陷,如存储在其他文件中的 schema 定义,但随后存储在副本上的 /etc/dirsrv/slapd-instance_name/schema/99user.ldif 中。请参阅 目录服务器如何在复制环境中管理模式更新

这个过程添加:

  • 名为 dateOfBirth 的单值属性,带有 OID 2.16.840.1.1133730.2.1.123 和语法目录 字符串 (OID 1.3.6.1.4.1.1466.115.121.1.15)
  • 名为 exampleperson 的对象类没有父对象类(SUP top),它必须包含 dateOfBirth 属性。

流程

  1. /etc/dirsrv/slapd-instance_name/schema/99user.ldif 文件中的 dn: cn=schema 条目中添加以下内容:

    attributeTypes: ( 2.16.840.1.1133730.2.1.123 NAME 'dateOfBirth' DESC 'For employee
      birthday' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'user defined' )
    objectClasses: ( 2.16.840.1.1133730.2.1.99 NAME 'exampleperson' DESC 'An example
      person object class' SUP top STRUCTURAL MUST dateOfBirth X-ORIGIN 'user defined' )
  2. 运行 schema reload 任务:

    # dsconf -D "cn=Directory Manager" ldap://server.example.com schema reload

验证步骤:

  • 监控 /var/log/dirsrv/slapd-instance_name/errors 文件:

    • 如果构建成功,Directory 服务器日志:

      [23/Sep/2021:13:47:33.334241406 +0200] - INFO - schemareload - schemareload_thread - Schema reload task starts (schema dir: default) ...
      [23/Sep/2021:13:47:33.415692558 +0200] - INFO - schemareload - schemareload_thread - Schema validation passed.
      [23/Sep/2021:13:47:33.454768148 +0200] - INFO - schemareload - schemareload_thread - Schema reload task finished.
    • 如果构建失败,Directory 服务器会记录步骤失败以及原因。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.