3.5.2. 语法验证概述
语法验证意味着目录服务器验证属性值是否与该属性的必要语法匹配。例如,语法验证可以确认新的 telephoneNumber 属性具有值的有效电话号码。它会被默认启用。
您可以选择为语法验证配置额外的设置,以记录有关语法违反情况的警告信息,然后拒绝修改或允许修改过程成功。
如果添加了新属性值,语法验证会检查 LDAP 操作。它不会处理通过复制等数据库操作添加的现有属性或属性。可以使用 dsconf schema validate-syntax 命令验证现有属性。
此功能验证除二进制语法和非标准语法之外的所有属性语法,它们没有定义的必要格式。语法会根据 RFC 4514 验证,但 DN 除外,它们会根据不太严格的 RFC 1779 或 RFC 2253 验证。
您可以配置严格的 DN 验证。
3.5.2.1. 目录服务器操作的语法验证 复制链接链接已复制到粘贴板!
语法验证适用于标准 LDAP 操作,如创建条目(添加)或编辑属性(modify)。当您验证属性语法时,它可能会影响其他目录服务器操作。
数据库加密
您可以在值写入 LDAP 操作数据库中前加密属性。这意味着,加密是在验证属性语法后执行的。您可以导入和导出加密的数据库。
您必须使用标志- encrypted (dsctl) 执行导出和导入操作,这允许导入操作进行语法验证。
如果您在不使用加密 标志(不支持)的情况下导出加密 数据库(不支持),则会创建一个带有加密值的 LDIF。您无法验证加密的属性,会记录警告,在导入 LDIF 时跳过属性验证。
同步
对于 Windows Active Directory 条目和 Directory Server 条目中的属性,允许或强制实施语法。您无法同步 Active Directory 值,因为语法验证强制执行 Directory 服务器条目中的 RFC 标准。
复制
如果目录服务器 11.0 实例是将更改复制到消费者的供应商,您可以使用语法验证。但是,假设复制中的供应商是旧版本的目录服务器,或者禁用了语法验证。在这种情况下,无法对 11.0 使用者使用语法验证,因为 Directory 服务器 11.0 使用者可能会拒绝供应商允许的属性值。