Sun Java System Directory Server Enterprise Edition 6.3.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