第 6 章 Red Hat Enterprise Linux 中的目录服务器
目录服务器不再记录假的正错误消息
在以前的版本中,在 Directory Server 多 master 复制环境中,当只更新副本更新向量(RUV)时,Failed to update RUV for unknown 错误信息会被多次记录。在这个版本中解决了这个问题,Directory 服务器不再记录错误消息。(BZ#1266920)
在 FIPS 模式中,slapd_pk11_getInternalKeySlot () 函数现在用来检索令牌的密钥插槽
当安全数据库上启用了 FIPS 模式时,Red Hat Directory Server 之前尝试从固定令牌名称中检索密钥插槽。但是,令牌名称可能会更改。如果没有找到密钥插槽,目录服务器将无法解码复制管理器的密码,复制会话会失败。要解决这个问题,slapd_pk11_getInternalKeySlot () 函数现在使用 FIPS 模式来检索当前密钥插槽。因此,在上述情形中,使用
SSL 或 STTARTTLS 的复制会话不再会失败。(BZ#1352109)
目录服务器现在支持配置弱 DH 参数
与红帽目录服务器链接的网络安全服务(NSS)库至少需要 2048 位 Diffie-Hellman (DH)参数。但是,Java 1.6 和 1.7 仅支持 1024 位 DH 参数。因此,使用这些 Java 版本的客户端无法使用加密连接连接到目录服务器。在这个版本中,在 cn=encryption,cn=config 条目中添加了 allowWeakDHParam 参数。因此,如果启用了这个参数,受影响的客户端现在可以使用弱 DH 参数进行连接。(BZ#1327065)
cleanAllRUV 任务不再破坏 changelog 后端
在 cleanAllRUV 任务的末尾,Directory 服务器从包含已清理的副本 ID 的复制更改日志中删除条目。在以前的版本中,任务会错误地运行所有 changelog 后端,而不是只运行任务中设置的日志后端。因此,如果多个后端包含相同的副本 ID,cleanAllRUV 任务会损坏它们。在这个版本中解决了这个问题,cleanAllRUV 任务可以正常工作。(BZ#1369572)
重新索引 retro changelog 不再失败
在以前的版本中,re
trocl-plugin 在 changelog 后端上以读取模式设置锁,而不释放它。这可能会导致死锁情况。例如,当设置了写模式锁定时,retro changelog 后端上的 db2index.pl 脚本执行的索引任务会变得无响应。这个版本应用补丁,因此重新索引 retro changelog 不再失败。(BZ#1370145)
禁用 CLEAR 密码存储方案插件时目录服务器不再失败
在以前的版本中,Directory 服务器需要在设置 userPassword 属性时启用
CLEAR 密码存储插件。因此,如果禁用了 CLEAR,则目录服务器在尝试设置 userPassword 属性时意外终止。这个版本会应用补丁,因此在上述情况下目录服务器不再会失败。(BZ#1371678)
使用服务器端排序时目录服务器不再意外终止
在以前的版本中,当使用匹配的规则和服务器端排序时,Directory 服务器会错误地释放内存多次,并意外终止。在这个版本中解决了这个程序错误,因此在使用服务器端排序时目录服务器不再会失败。(BZ#1371706)
目录服务器现在在 ACI 中验证宏
在以前的版本中,红帽目录服务器没有在访问控制指令(ACI)中验证宏。因此,用户可以在 ACI 中设置不正确的宏。这个版本改进了代码的底层验证,Directory 服务器会拒绝无效的宏并记录错误。(BZ#1382386)
复制控制器现在显示正确的日期
在复制监控器中,当
day 字段的值小于 10 时,标头中不会显示日期的年。现在,代码使用正确的 API,年份会被正确显示。(BZ#1410645)
memberOf fix-up 任务现在验证参数
在以前的版本中,如果在 memberOf 修复任务中提供了无效的过滤器或 basedn 参数,任务会失败,则不会记录任何信息。应用了补丁,现在如果出现问题,会记录错误并更新任务状态。现在,管理员可以识别任务失败。(BZ#1406835)
删除不存在的属性时目录服务器不再意外终止
在以前的版本中,从后端配置中删除不存在的属性会导致目录服务器意外终止。如果没有删除属性,则应用补丁将 NULL 值传递给 ldbm_config_set () 函数。现在,Directory 服务器会在上述场景中拒绝操作。(BZ#1403754)
当导入失败时,目录服务器不再显示多个错误消息
在以前的版本中,如果导入数据失败,则会显示多个 Unable to flush 错误消息,因为与数据库的连接没有关闭。这个版本应用补丁,因此 Directory 服务器不再在上述情况下显示多个错误。(BZ#1402012)
修复了虚拟列表视图相关问题
在以前的版本中,当删除虚拟列表视图(VLV)索引时,dblayer_erase_index_file_nolock () 函数没有被调用。因此,物理索引文件和设置为
dblayer 句柄的后端指针不会被删除。因此,Directory 服务器意外终止。在这个版本中,在删除 VLV 索引时,现在调用代码和 dblayer_erase_index_file_nolock () 函数。
另外,v lv_init () 函数以前可以多次调用,而无需取消注册 VLV 插件回调。因此,Directory 服务器有时会意外终止。在这个版本中,回调会被取消注册。
因此,在上述情况下目录服务器不再意外终止。(BZ#1399600)
目录服务器不再记录敏感信息
在以前的版本中,当 nsslapd-errorlog-level 参数中启用了 Trace 功能调用 选项时,Directory 服务器会将所有属性记录到错误日志文件中,包括包含敏感信息的属性。应用了补丁来过滤敏感属性的值。因此,Directory 服务器不再记录敏感信息。(BZ#1387772)
现在,组 ACI 会被正确评估
在以前的版本中,如果访问控制指令(ACI)中的组中成员数量超过查询结果的大小限制,目录服务器会错误地拒绝访问。要解决这个问题,服务器大小限制不再应用到 ACI 组评估,查询现在可以正常工作。(BZ#1387022)