Sun Java System Directory Server Enterprise Edition 6.3.1 发行说明

目录代理服务器 6.3.1 Update 1

以下各节讨论 目录代理服务器 6.3.1 Update 1:

关于 目录代理服务器 6.3.1 Update 1

此修补程序仅更正 Directory Server Enterprise Edition 产品的 目录代理服务器 组件中的问题。专为在 Directory Server Enterprise Edition 6.3.1 的基础上应用而设计。 Directory Server Enterprise Edition 6.3.1 的 目录服务器 组件保持不变。


注 –

此更新不能应用于 Directory Server Enterprise Edition 6.3.1 以前的版本。有关升级到版本 6.3.1 的说明,请参见 表 2–1,“到 Directory Server Enterprise Edition 6.3.1 的升级路径”。


本节讨论以下主题:

此发行版的新增功能

此更新为次要发行版,主要修复 目录代理服务器 6.3.1 Update 1 中修复的错误 1 中描述的错误。

此外,目录代理服务器 6.3.1 Update 1 还在持续搜索操作中引入了新行为。如果客户端应用程序在读取来自目录代理服务器的持续搜索响应时速度非常慢,则代理服务器响应队列负载过度。此种情况下,服务器可以关闭连接并显示以下客户端通知:


LDAP_NOTICE_OF_DISCONNECTION [ 1.3.6.1.4.1.1466.20036 ]

此还还会记录类似于以下消息的通知消息:


[11/Aug/2009:18:13:51 +0200] - DISCONNECT - INFO  - conn=19 \
reason="admin limit exceeded" \
msg="client didn't read any data during 160 milliseconds."

目录代理服务器 6.3.1 Update 1 中的增强功能

目录代理服务器 6.3.1 Update 1 提供以下增强功能:

使用 dpadm set-flags/get-flags (6765629) 设置和获得 JAVA HOME 的功能

可以为 JAVA_HOME 设置路径名称,并占优于在环境中定义的 JAVA_HOME 值,如以下示例所示:


$ dpadm set-flags instance-path jvm-path=/usr/jdk/latest/
能够设置和获取 DPS 配置的 umask 值和日志文件 (6739456)

dpadm 命令更改了 umask 值,在 DPS 实例下次重新启动时,根据新的 umask 值修改配置文件的许可。 此外,日志文件许可在下次文件轮换时也被类似设置。以下示例显示了一次典型使用:


$ dpadm set-flags instance-path umask=22
无法添加具有同样的“MODEL, ACTION, ATTR_NAME”的新虚拟变换 (6722238)

现在允许管理员在同样的 MODEL, ACTION, ATTR_NAME 上定义不同的虚拟变换。

此外,目录代理服务器 6.3.1 Update 1 还添加新属性并升级现有属性,如以下列表所述。新属性被标注为“新”。从 DSEE 6.3.1 中的规范更改而来的属性被标注为“升级”。

close-client-connection(新)

动态(无需重新启动)

级别:connection-handler

类型:boolean

默认值:false

描述:表明当没有数据源可用时连接处理程序是否应关闭客户端连接。

data-view-use-internal-client-identity (新)

动态(无需重新启动)

级别:连接处理程序

类型:boolean

默认值:false

描述:表明在绑定到远程 LDAP 服务器时要求不要始终使用传入的客户端标识。

文档:此属性为标志,表明在绑定到远程 LDAP 服务器时要求不要始终使用传入的客户端标识。

db-vendor(新)

动态(无需重新启动)

级别:jdbc-data-source

类型:枚举

mysql

RDBMS 后端为 MySQL。

derby

RDBMS back-end is Apache Derby/Java DB.

db2

RDBMS 后端为 DB2。

oracle

RDBMS 后端为 Oracle。

ms-sql-server

RDBMS 后端为 Microsoft SQL Server。

generic

RDBMS 后端未定义。如果可能,目录代理服务器 从 jdbc-data-source 中定义的 db-url 确定供应商名称。

默认值:generic

描述:JDBC 数据源的供应商名称

文档:此属性指定 JDBC 数据源的供应商名称。 如果连接到 RDBMS 后端使用的是第三方而非数据库供应商提供的 IDBC 驱动程序,则应当设置此属性。此数据用于构建供应商特定的 SQL 声明,如果该声明可提高性能的话。

numeric-lower-bound(更新)

动态(无需重新启动)

级别:jdbc-data-viewjoin-data-view ldap-data-viewldif-data-view

新类型:长整型

旧类型(适用于 DPS 6.0 至 6.3.1):整数

其他属性保持不变。

numeric-upper-bound(升级)

动态(无需重新启动)

级别:jdbc-data-viewjoin-data-view ldap-data-viewldif-data-view

新类型:长整型

旧类型(适用于 DPS 6.0 至 6.3.1):整数

其他属性保持不变。

down-monitoring-interval(新)

静态(需要重新启动)

级别:ldap-data-source

类型:以秒计的持续时间(下限:1

默认值:继承(monitoring-interval 的值)

描述:可用性监视器对失败的连接进行轮询(以检测其恢复状态)的时间间隔

文档:此属性指定轮询间隔。当发现连接处于关闭状态时,可用性监视器按此间隔轮询连接以检测其恢复状态。如未指定,则使用 monitoring-interval 属性值。

monitoring-retry-count(新)

静态(需要重新启动)

级别:ldap-data-source

类型:整数(下限:1

默认值:3

描述:在将连接标记为关闭之前要执行的重试次数

文档:此属性指定可用性监视器在首先检测到连接为关闭状态时,对连接进行轮询的次数。这就允许连接被标记为有待提高速度。 如果在重试了指定次数以后连接仍然有故障,则使用 down-monitor-interval 属性的值作为轮询间隔。

use-tcp-keep-alive(新)

动态(无需重新启动)

级别:ldap-data-source

类型:boolean

默认值:true

描述:指定是否为服务器和数据源之间的连接启用 SO_KEEPALIVE

文档:此属性为标记,表明是否应当为服务器和数据源之间的连接启用 SO_KEEPALIVE

use-tcp-keep-alive(新)

动态(无需重新启动)

级别:ldap-listenerldaps-listener

类型:boolean

默认值:true

描述:指定是否为客户端和侦听器之间的连接启用 SO_KEEPALIVE

文档:此属性为标记,表明是否应为客户端和侦听器之间的连接启用 SO_KEEPALIVE

allow-unauthenticated-operations(更新)

动态(无需重新启动)

级别:服务器

类型:boolean

默认值:true

新描述:表明服务器是否接受未经验证的操作

旧描述:(适用于 DPS 6.0 至 DPS 6.3.1):表明服务器是否接受来自匿名客户端的操作

新文档:此属性为标记,表明 目录代理服务器 是否接受未经验证的操作。用于处理绑定操作的模式由 allow-unauthenticated-operations-mode 指定。

旧文档(适用于 DPS 6.0 至 DPS 6.3.1):此属性为标记,表明 目录代理服务器 是否允许匿名客户端执行操作。

allow-unauthenticated-operations-mode (新)

动态(无需重新启动)

级别:服务器

类型:枚举

anonymous-only

未指定密码时,仅允许匿名绑定

dn-identified-only

未指定密码时,仅允许与指定的 DN 绑定

anonymous-and-dn-identified

未指定密码时,仅允许匿名绑定以及与指定的 DN 绑定

默认值:anonymous-and-dn-identified

描述:不使用密码处理绑定操作的模式

文档:此属性表明当 allow-unauthenticated-operations 被设置为“true”时,目录代理服务器 如何不使用绑定密码处理操作。

time-resolution(更新)

静态(需要重新启动)

级别:服务器

类型:以毫秒计的持续时间

新默认值:250

旧默认值(适用于 DPS 6.0 至 6.3.1):500

新文档:此属性指定连续系统调用之间的时间间隔,该调用从 OS 检索时间。对于耗时少于 250 毫秒的操作相关的细节,请缩短 time-resolution 周期或更改 time-resolution-mode 属性的值。如果被设置为 0 毫秒,则代理服务器的行为类似于 time-resolution-mode 属性被设置为 system-milli 的情形。当 time-resolution-mode 属性的值被设置为 system-millisystem-micro 时,此属性被忽略。

旧文档(适用于 DSP 6.0 至 6.3.1):此属性指定连续系统调用之间的时间间隔,该调用从 OS 检索时间。对于耗时少于 500 毫秒的操作的有关详细信息,请缩短 time-resolution 周期。如果被设置为 0 毫秒,则代理服务器系统地执行系统调用以检索当前时间。 否则时间存入高速缓存且仅在每隔一个 time-resolution 周期时才会检索。该时间在日志中显示。

描述保持以前内容不变。

time-resolution-mode(新)

静态(需要重新启动)

级别:服务器

类型:枚举

custom-resolution

每隔 time-resolution 毫秒即使用线程执行系统调用

system-milli

使用系统调用检索时间(以毫秒计)

system-micro

使用系统调用检索时间(以微秒计)

默认值:custom-resolution

描述:用于检索系统时间的模式

文档:此属性指定用于从 OS 检索时间的模式。

支持平台

目录代理服务器 6.3.1 Update 1 对于所有支持的 Directory Server Enterprise Edition 6.3.1 平台均可用。有关详细信息,请参见硬件要求操作系统要求

目录代理服务器 6.3.1 Update 1 中修复的错误 1

本节列出 目录代理服务器 6.3.1 Update 1 中修复的错误。

6567644

目录代理服务器 构建非法的数据库请求。

6590816

为 LDAP 侦听器设置 connectionIdleTimeOutInSec 可能会禁用 DSCC。

6641888

搜索操作返回的条目可能包含 viewable-attr 中不存在的属性。

6648665

如果未对连接执行任何操作,max-client-connections 属性不会执行。

6681502

默认情况下,内存监视被禁用。

6686150

数字分发算法应当使用 long 而非 int 来设置数值界限。

6717943

目录代理服务器 针对资源属性的默认大小限制将错误的整数用于无限制。

6721192

DN 变换失败。

6721749

add-attr-value 的设置可能导致 DN 变换产生错误输出。

6722222

绑定到 LDAP 服务器时应当映射 bindDN。(使用 bindDN 的 DV 的 DN 映射规则)。

6722238

不能添加具有同样的“MODEL, ACTION, ATTR_NAME”的新虚拟变换。

6723858

在后端目录服务器上设置的 requires-bind-password 属性未被执行。

6734559

依赖于虚拟属性的虚拟 DN 映射失败。

6736621

绑定 DN 在变换失败时被拒绝,即使当其进入视图时也是如此。

6737084

针对来源服务器方向的 DN 映射错误。

6739414

属性名称中的大写/小写字符由 6.3 目录代理服务器 实施变换。

6739456

客户要求 目录代理服务器 为 config 和日志文件设置组权限 (umask 117, chmod 660)。

6751692

使用 MaxTenuringThreshold Java 参数时,dpadm start 命令转储核心。

6758793

DN 映射可能丢弃重命名的条目。

6760526

dpadm 不生成 DPS.pid 文件。

6760951

目录代理服务器 配置模式与 SystemMonitorThread.java 功能不一致。

6761032

服务器与控制台对于 searchMode 参数不一致。

6764073

目录代理服务器 被配置为使用代理验证时失败。

6765629

允许使用 dpadm set-flags 设置 JAVA HOME

6767776

在 rootDSE 上不能使用 DN 映射

6774589

目录代理服务器 要求虚拟 DN 变换具有多值命名属性。

6778262

应当为 etimes 提供微秒时间粒度。

6778308

splitldif 命令忽略虚拟变换。

6780423

在重负载下,套接字可能保持在中断请求等待 (close wait) 状态中。

6782659

当套接字被创建时,在 目录代理服务器 6.3 中未设置 SO_KEEPALIVE 选项(即,setKeepAlive() != True)。

6798674

由于 ConfigAttribute 对象中存在 null 值,CR 6513526 的修复可能引起退化。

6802371

对基于通道的侦听器忽略了 acceptBacklog 属性。

6808701

由于后端连接上的上次活动的原因,非活动心跳的发送频率不足。

6808704

没有为绑定的后端联接发送不活动心跳。

6808706

由于上次服务器活动的原因,后端服务器检查执行的频率可能不足。

6809099

ldapsearch 在监视器条目上运行可能产生不一致 的输出。

6809712

在切断所有连接之前,可用性检查应当确保后端服务器已关闭。

6817976

在放弃请求的情况下,连接可能被阻塞。

6818788

在后端心跳中获得了更出色的精确度。

6818926

在服务器套接字中发生文件描述符泄漏。

6819304

如果故障转移池的定义不具备源,则在 cn=monitor 上搜索时可能出现 null 指针异常。

6819315

尝试绑定...失败后 目录代理服务器 继续打开至目录服务器的连接。

6819752

持久搜索客户端可能未接收条目更改通知。

6821356

2 个连接可能共享同样的标识符。

6821752

持续搜索在客户端断开后未清理。

6823036

当检测到数据源关闭时,主动监视间隔应当设置为 1 秒。

6823593

目录代理服务器 将不同的客户端操作关联到同一后端连接。

6827104

如果闲置大于 inactivity-timeout 而后端连接未关闭但被再利用,则引起连接泄漏。

6827129

连接池内务处理和健康检查进程应当进行调试。

6828462

两个同时发生的长期捆绑将同一后端连接分配给 2 个客户端连接。

6828841

设置错误的 jvm-path 会挂起重新启动且无任何警告。

6828842

无后端服务器可用时,目录代理服务器 返回不正确的错误代码。

6828896

在出现“不能检索后端连接”的情况下,应当提供关闭客户端连接的选项。

6832043

明确设置了 useAffinity=false 和 affinityPolicy 后,不应启用客户端关联。

6835931

如果数据源主机之一不可到达,则无法启动 目录代理服务器。

6836922

dpconf 命令应当支持 目录代理服务器 6.3.1_update 1 中引入的新属性。

6837295

dpconf 命令应当支持绑定 DN 映射。

6837392

应当提供更简单的版本更新用于管理 目录代理服务器 属性。

6837970

dpconf 应当支持 monitorRetryCount

6839452

客户端关联忽略了数据源的只读标志。

6844727

应当完成实施 CR 6714425 和 6714448 的修复。

6851216

小写字母联接表达式可能引起 SQL 请求失败。

6854864

当 100 台以上的客户机执行持续搜索时 目录代理服务器 6.3.1 性能不足。

6855978

持续搜索线程环和 目录代理服务器 不再可以处理持续搜索

6859116

持续搜索的性能不足。

6860746

创建 20 个持续搜索然后将其停止,引起持续搜索功能失败。

6868131

在属性映射和虚拟变换的某些情形中 目录代理服务器 返回 StringIndexOutOfBoundsException

6868804

变换和映射规则不按预期方式执行。

6870051

线程可能过早释放,产生 ASN.1 异常。

6870452

当后端关闭时 Directory Proxy Server 返回不正确的错误。

6870496

可能出现意外的 Null 指针异常。

6874644

在某些情况下,密码存储方案可能被 JDBC 数据视图忽略。

6879124

当不同的用户在客户端连接上绑定时 目录代理服务器 可能返回相同的结果。

6881972

在某些情况下,使用 JDBC 时 目录代理服务器 可能启动失败。

6886109

可能发生意外的 ASN1 异常且无法处理。

目录代理服务器 6.3.1 Update 1 安装说明

本节讨论以下主题:

获取软件

目录代理服务器 6.3.1 update 1 是修补程序,应用于现有的 Directory Server Enterprise Edition 6.3.1 安装。如果您正在运行 6.3.1 以前的 Directory Server Enterprise Edition 版本,则必须按照 第 2 章 中的介绍在应用 目录代理服务器 6.3.1 update 1 修补程序之前,首先升级到版本 6.3.1。

您可以从以下位置下载 目录代理服务器 6.3.1 update 1 修补程序:http://www.sun.com/software/products/directory_srvr_ee/get.jsp

目录代理服务器 6.3.1 update 1 是适用于所有 DSEE 平台的唯一修补程序:

对于每个平台,以下分发可用:

目录代理服务器 6.3.1 update 1 修补程序 141958-01 可通过以下位置获得:SunSolve 并适用于以下两类安装:

安装说明

本节介绍如何安装 目录代理服务器 6.3.1 update 1。

Procedure在 目录代理服务器 6.3.1 的 Zip 和本地软件包安装中安装修补程序

开始之前

注 –

在应用 Directory Proxy Server 6.3.1 update 1 修补程序之前,请备份 Directory Server Enterprise Edition 安装目录,因为您稍后无法恢复早期的 Directory Proxy Server 配置。此建议适用于 Zip 和本地软件包安装。


  1. 将修补程序 141958-01 从 Sunsolve 下载到 downloaded-patch-path 目录。

  2. 停止与拟安装修补程序的安装相关联的 目录代理服务器 实例。

  3. 在 Windows 系统上,打开命令提示符窗口。在 UNIX 系统上,打开终端窗口。

  4. 更改当前目录到您想要升级的平台和分发(zip 或本地)的安装软件所在的目录:

    以下示例显示了用于此目的的典型命令:


    $ cd downloaded-patch-path/SunOS_x64/zip/delivery
    

    以下表格显示了 downloaded-patch-path 目录下的安装软件位置。

    操作系统 

    包含 Zip 交付的目录 

    包含本地软件包交付的目录 

    Solaris SPARC 

    SunOS/zip/delivery

    SunOS/native/delivery

    Solaris 9 x86 

    SunOS_x86/zip/delivery

    SunOS_x86/native/delivery

    Solaris 10 x86 和 AMD x64 

    SunOS_x64/zip/delivery

    SunOS_x64/native/delivery

    Red Hat Linux 

    Linux/zip/delivery

    Linux/native/delivery

    SuSE Linux 

    Linux/zip/delivery

    Linux/native/delivery

    HP-UX 

    Hpux/zip/delivery

    N/A

    Windows 

    Windows/zip/delivery

    Windows/native/delivery

  5. 在 UNIX 系统上,启动安装脚本。

    运行以下命令:


    $ Install dsee631-install-path
    

    其中 dsee631-install-path 是通往 Directory Server Enterprise Edition 6.3.1 安装目录的路径。

    显示以下消息:


    --------------------------------------------------------------------
    IMPORTANT :
    Make sure all the DPS instances associated with the Directory Proxy Server
    installation being patched are shutdown prior to apply the Directory Proxy
    Server 6.3.1 Update 1 Patch
    --------------------------------------------------------------------
    Do you want to proceed with the installation (y/Y to proceed, n/N to abort) [n] ?

    输入 y 代表 yes。安装程序将修补程序应用到您指定的 Directory Server Enterprise Edition 6.3.1 安装。

  6. 在 Windows 安装中,在命令提示符窗口中运行以下命令:


    Install.exe
    

    向导打开并要求您浏览和选择合适的安全路径,用于安装 目录代理服务器 6.3.1 update 1 修补程序。要在 6.3.1 ZIP 安装上安装修补程序,请选择 Directory Server Enterprise Edition 6.3.1 所在的安装目录。要在本地软件包安装上安装修补程序,请选择 C:\Program Files\Sun\JavaES5\DSEE

    向导将修补程序应用于 Directory Server Enterprise Edition 6.3.1。

  7. 通过运行以下 2 个命令并验证响应与下述内容相同,来确认已成功安装:


    $ dpadm -V
    [dpadm]
    dpadm               : 6.3.1.1              B2009.1106.0156 ZIP
    
    [DPS]
    Sun Microsystems, Inc.
    Sun-Java(tm)-System-Directory-Proxy-Server/6.3.1.1 B2009.1106.0259
    $ dpconf -V
    [dpconf]
    clip.jar        : 6.3.1    B2008.1121.0155
    dpcfg.jar       : 6.3.1.1  B2009.1106.0155
    dpcfgcli.jar    : 6.3.1.1  B2009.1106.0155
    common.jar      : 6.3.1    B2008.1121.0155
    common_cfg.jar  : 6.3.1    B2008.1121.0155
  8. 如果您正在安装修复程序的 Directory Server Enterprise Edition 6.3.1 包含 CR 6722222 的热修复程序,则此步骤是必需的。

    如果已经应用了 CR 6722222 的热修复程序(绑定到 LDAP 服务器时映射 bindDN(使用 bindDN 的 DV 的 DN 映射规则)),则在所有的实例中为每个连接处理程序运行以下命令:


    $ dpconf set-connection-handler-prop -p port -h host connection handler \
      data-view-use-internal-client-identity:true
    

    此属性为标志,表明在绑定到远程 LDAP 服务器时,并不始终要求使用接收客户端标识。在应用了 CR 6722222 后,现在可以通过连接处理程序属性配置默认行为,如示例中所示。

  9. 重新启动所有代理服务器实例。

目录代理服务器 6.3.1 Update 1 中的已知问题和限制

本节列出了在发行 目录代理服务器 6.3.1 update 1 时发现的已知问题和限制。


注 –

目录代理服务器 6.3.1 中的已知问题和限制即使在应用了 目录代理服务器 6.3.1 update 1 的修补程序以后仍然存在。有关这些问题的信息请参考 目录代理服务器 中的已知问题和限制


目录代理服务器 6.3.1 Update 1 中的已知限制

本节列出了在发行 目录代理服务器 6.3.1 update 1 时发现的已知限制。

按照 《Sun Java System Directory Server Enterprise Edition 6.3 Reference》中的“JDBC Object Classes” 的说明,定义 JDBC 表格使用主表和从表。目录代理服务器 不允许从表为第三张表格的主表。即 目录代理服务器 不支持 1 级以上的联接规则。

目录代理服务器 6.3.1 Update 1 中的已知问题

本节列出了在发行 目录代理服务器 6.3.1 update 1 时发现的已知问题。

6728746

在发行版 6.3 中,如果一个条目拥有 2 个以上对象类,则由于 CR 6636463 修复程序的原因,通过联接视图(LDAP 和 JDBC)添加条目失败。要添加此类条目,这些对象类必须在 jdbc-object-class 配置条目中通过以下 ldapmodify 定义为超级类,因为 dpconf set-jdbc-object-class-prop 仅能添加一个超级类。

此示例添加以下条目:

dn: uid=test,ou=people,o=join
sn: User
cn: Test User
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
uid: test
userpassword: password
givenname: Test
mail: test@example.com
telephonenumber: 8888-8888
roomnumber: 8000

JDBC 视图按以下示例中所示方式定义,这在发行版 6.3 之前原可以正常发挥功能。

dn: cn=person,cn=example-view,cn=data views,cn=config
secondaryTable: country1
secondaryTable: phone1
primaryTable: employee1
objectClass: top
objectClass: configEntry
objectClass: jdbcObjectClassMapping
dnPattern: uid
cn: person
superclass: top

由于 objectClass:organizationalPersonobjectClass:inetOrgPerson 均存在于正被添加的条目中,因此需要将 2 个对象类指定为超级类,如以下 ldapmodify 命令所示。


$ ldapmodify -p dpsPort -D "cn=Proxy manager" -w password
dn: cn=person,cn=example-view,cn=data views,cn=config
changetype: modify
add: superClass
superClass: inetOrgPerson
-
add: superClass
superClass: organizationalPerson

ldapmodify 示例运行后,jdbc-object-class 按以下示例中所示方式定义。

dn: cn=person,cn=example-view,cn=data views,cn=config
secondaryTable: country1
secondaryTable: phone1
primaryTable: employee1
objectClass: top
objectClass: configEntry
objectClass: jdbcObjectClassMapping
dnPattern: uid
cn: person
superclass: top
superclass: inetOrgPerson Added
superclass: organizationalPerson Added
6826694

尽管 log-level-data-sources-detailed 属性的默认设置被记录为 none,实际默认值为 all。然而,将 log-level-data-sources-detailed 设置为 none 以外的任何值会影响服务器性能,并使 access 文件迅速增长。 由于该原因,DPS 服务器实例被创建时 log-level-data-sources-detailed 设置的值被自动设置为 none。建议您不要将此项设置设置为某个其他值。

6832498

由于 Vulnerability Note VU#836068, MD5 vulnerable to collision attacks 中所描述问题的原因,目录代理服务器 应当避免在签名证书中使用 MD5 算法。

执行以下步骤确定证书的签名算法。

  1. 运行以下命令,显示特定 目录代理服务器 实例中定义的证书列表。


    $ dpadm list-certs instance-path
    
  2. 在每个被定义的证书上运行以下命令,确定证书是否采用 MD5 算法签名。


    $ dpadm show-cert -F ascii -o cert-output-file \
    dps-instance-path cert-alias
    
    $ dsadm add-cert ds-instance-path cert-alias \
    cert-output-file
    
    $ dsadm show-cert ds-instance-path cert-alias
    

    以下示例显示了 dsadm show-cert 命令针对采用 MD5 签名算法的证书的典型输出信息:


    Certificate:
       Data:
       ...
       Signature Algorithm: PKCS #1 MD5 With RSA Encryption
       ...
  3. 运行以下命令从数据库删除任何 MD5 签名证书:


    $ dsadm remove-cert instance-path cert-alias
    

执行以下步骤更新证书数据库密码。(创建目录代理服务器实例时 dpadm 命令生成默认证书数据库密码。)

  1. 停止 目录代理服务器 实例。

  2. 运行以下命令:


    $ dpadm set-flags instance-path cert-pwd-prompt=on
    

    显示消息,提示您输入密码。

  3. 输入一个至少 8 个字符长的密码。

  4. 重新启动 目录代理服务器 实例并在提示时提供 Internal (Software) Token

将使用 MD5 功能的任何证书替换为使用 SHA-1 签名算法的证书。根据您的安装是否使用自签名证书,还是从证书授权机构获得的证书,执行以下过程之一。

执行以下步骤生成并储存一个自签名证书:

  1. 运行以下命令:


    $ dpadm add-selfsign-cert  --sigalg SHA1withRSA \
    dps-instance-path cert-alias
    

    注 –

    默认签名算法为 MD5withRSA


    显示以下提示:


    [Password or Pin for "NSS Certificate DB"]
  2. 输入新证书数据库密码。

执行以下步骤生成并储存从证书授权机构 (CA) 获得的证书:

  1. 运行以下命令发布 CA 签名的服务器证书请求:


    $ dpadm request-cert  --sigalg SHA1withRSA instance-path cert-alias
    
  2. 确保您的证书授权机构不再使用 MD5 签名算法,然后将证书请求发送到证书授权机构(公司内部或外部,取决于您的规则)以获取 CA 签名的服务器证书,在 《Sun Java System Directory Server Enterprise Edition 6.3 管理指南》中的“请求 CA 签名的服务器证书” 中有介绍。

  3. 当证书授权机构向您发送新证书时,请运行以下命令将证书添加到证书数据库:


    $ dpadm add-cert instance-path cert-alias
    

    《Sun Java System Directory Server Enterprise Edition 6.3 管理指南》中的“创建、请求和安装目录代理服务器的证书” 中对此步骤有介绍。

  4. 如果受信任的证书授权机构证书尚未存储在证书数据库中,请运行以下命令将其添加:


    $ dpadm add-cert --ca instance-path trusted-cert-alias
    

    《Sun Java System Directory Server Enterprise Edition 6.3 管理指南》中的“创建、请求和安装目录代理服务器的证书” 中对此步骤有介绍。

  5. 运行以下命令验证新证书是否正在被使用。


    $ dpadm show-cert -F ascii -o cert-output-file \
      dps-instance-path cert-alias
    
    $ dsadm add-cert ds-instance-path cert-alias \
      cert-output-file
    
    $ dsadm show-cert ds-instance-path cert-alias
    
6854861

对于 Microsoft SQL Server 后端,使用 smalldate 字段时,仅支持长整型版的日期,否则会发生转换错误,如以下示例中所示。


ldap_modify: Operations error
ldap_modify: additional info: java.lang.Exception: \
com.microsoft.sqlserver.jdbc.SQLServerException: \
Conversion failed when converting datetime from character string.

注 –

长整型版日期使用形式 YYYY -MM-DD HH:MM