7.6. 验证现有属性值的语法


通过语法验证,目录服务器检查属性值是否遵循该属性定义中提供的语法规则。目录服务器在 /var/log/dirsrv/slapd-instance_name/errors 文件中记录了语法验证任务的结果。

如果需要手动语法验证,则需要手动验证:

  • 您已在 nsslapd-syntaxcheck 参数中禁用了语法验证。

    注意

    在大多数情况下,必须启用语法验证。

  • 您可以从禁用或不验证语法的服务器迁移数据。

使用 dsconf schema validate-syntax 命令,您可以创建一个语法验证任务来检查每个修改的属性,并确保新值具有所需的语法。

流程

  • 要创建语法验证任务,请输入:

    # dsconf <instance_name> schema validate-syntax -f '(objectclass=inetorgperson)' ou=People,dc=example,dc=com
    Copy to Clipboard Toggle word wrap

    在示例输出中,命令会创建一个任务来验证 ou=People,dc=example,dc=com 子树中所有值的语法,它与 (objectclass=inetorgperson) 过滤器匹配。

7.6.2. 使用 cn 任务条目创建语法验证任务

Directory Server 配置中的 cn=tasks,cn=config 条目是服务器用来管理任务的临时条目的容器条目。您可以通过在 cn=syntax validate,cn=tasks,cn=config 条目中创建一个任务来启动语法验证操作。

流程

  • 要启动语法验证操作,请在 cn=syntax validate,cn=tasks,cn=config 条目中创建一个任务,如下所示:

    # ldapadd -D "cn=Directory Manager" -W -H ldap://server.example.com -x
    
    dn: cn=example_syntax_validate,cn=syntax validate,cn=tasks,cn=config
    objectclass: extensibleObject
    cn: cn=example_syntax_validate
    basedn: ou=People,dc=example,dc=com
    filter: (objectclass=inetorgperson)
    Copy to Clipboard Toggle word wrap

    在示例输出中,命令会创建一个任务来验证 ou=People,dc=example,dc=com 子树中所有值的语法,它与 (objectclass=inetorgperson) 过滤器类似。任务完成后,Directory 服务器会从目录配置中删除该条目。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat