Sun Java System Directory Server Enterprise Edition 6.3.1 Versionshinweise

Behobene Probleme in Directory Proxy Server 6.3.1 Update 1

In diesem Abschnitt werden die bekannten Probleme aufgeführt, die zum Zeitpunkt der Veröffentlichung von Directory Proxy Server 6.3.1 Update 1 vorlagen.

6728746

Wenn in Version 6.3 ein Eintrag mehr als zwei Objektklassen besitzt, kann ein Eintrag nicht über eine zusammengelegte Ansicht (LDAP und JDBC) aufgrund des Hotfix für CR 6636463 hinzugefügt werden. Um einen solchen Eintrag hinzuzufügen, müssen diese Objektklassen als Superklasse im Konfigurationseintrag jdbc-object-class mithilfe von ldapmodify definiert werden, da dpconf set-jdbc-object-class-prop nur eine Superklasse hinzufügen kann.

Dieses Beispiel fügt den folgenden Eintrag hinzu:

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

Die JDBC-Ansicht, die vor Version 6.3 aktuell war, wird wie im folgenden Beispiel dargestellt definiert.

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

Da objectClass:organizationalPerson und objectClass:inetOrgPerson beide in dem hinzuzufügenden Eintrag vorhanden sind, müssen beide Objektklassen als Superklassen angegeben werden, wie von folgendem Befehl ldapmodify dargestellt.


$ 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

Wenn der ldapmodify-Befehl ausgeführt ist, wird jdbc-object-class wie im folgenden Beispiel dargestellt definiert.

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

Obwohl die Dokumentation die Standardeinstellung für die Eigenschaft log-level-data-sources-detailed als none angibt, ist der eigentliche Standardwert all. Durch Einstellung von log-level-data-sources-detailed auf einen anderen Wert als none wird die Serverleistung beeinträchtigt und die access-Datei wächst schnell. Aus diesem Grund wird der Wert für die Einstellung log-level-data-sources-detailed automatisch auf none gesetzt, wenn DPS-Serverinstanzen erstellt werden. Es wird empfohlen, diese Einstellung nicht auf einen anderen Wert zu setzen.

6832498

Aufgrund eines Problems, das in Hinweise zur Störanfälligkeit VU#836068, MD5 anfällig für Konfliktangriffe beschrieben ist, sollte Directory Proxy Server nach Möglichkeit nicht den MD5-Algorithmus in signierten Zertifikaten verwenden.

Führen Sie folgende Schritte aus, um den Signaturalgorithmus eines Zertifikats festzulegen.

  1. Führen Sie folgenden Befehl aus, um eine Liste der in einer speziellen Directory Proxy Server-Instanz definierten Zertifikate anzuzeigen.


    $ dpadm list-certs instance-path
    
  2. Führen Sie folgende Befehle für jedes definierte Zertifikat aus, um festzulegen, ob das Zertifikat mit dem MD5-Algorithmus signiert ist:


    $ 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
    

    Das folgende Beispiel zeigt eine typische Ausgabe des Befehls dsadm show-cert für ein Zertifikat, das mit einem MD5-Signaturalgorithmus signiert ist:


    Certificate:
       Data:
       ...
       Signature Algorithm: PKCS #1 MD5 With RSA Encryption
       ...
  3. Führen Sie den folgenden Befehl aus, um alle MD5-signierten Zertifikate aus der Datenbank zu entfernen.


    $ dsadm remove-cert instance-path cert-alias
    

Führen Sie folgende Schritte aus, um das Passwort der Zertifikatsdatenbank zu aktualisieren. (Der Befehl dpadm erzeugt bei der Erstellung einer Directory Server-Proxy-Instanz ein Standardpasswort für die Zertifikatsdatenbank.)

  1. Halten Sie die Directory Proxy Server-Instanz an.

  2. Führen Sie folgenden Befehl aus:


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

    Eine Meldung erscheint, in der das Passwort abgefragt wird.

  3. Geben Sie ein Passwort mit einer Länge von mindestens acht Zeichen ein.

  4. Starten Sie die Directory Proxy Server-Instanz neu und geben Sie bei Aufforderung das Internal (Software) Token an.

Ersetzen Sie alle Zertifikate, die die MD5-Funktionen verwenden, mit Zertifikaten, die den SHA-1-Signaturalgorithmus verwenden. Führen Sie einen der folgenden Vorgänge aus, abhängig davon, ob Ihre Installation ein selbstsigniertes Zertifikat oder ein Zertifikat, das von einer Zertifikatsautorität erworben wurde, verwendet.

Führen Sie die folgenden Schritte aus, um ein selbstsigniertes Zertifikat zu erstellen und zu speichern:

  1. Führen Sie folgenden Befehl aus:


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

    Hinweis –

    Der Standardsignaturalgorithmus ist MD5withRSA.


    Die folgende Eingabeaufforderung erscheint:


    [Password or Pin for "NSS Certificate DB"]
  2. Geben Sie das neue Passwort für die Zertifikatdatenbank ein.

Führen Sie folgende Schritte aus, um ein Zertifkat, das von einer Zertifikatsautorität (CA) erfasst wurde, zu generieren und zu speichern:

  1. Führen Sie folgenden Befehl aus, um eine CA-signierte Serverzertifikatsanforderung auszustellen:


    $ dpadm request-cert  --sigalg SHA1withRSA instance-path cert-alias
    
  2. Stellen Sie sicher, dass Ihre Zertifikatsautorität den MD5-Signaturalgorithmus nicht länger verwendet, und senden Sie dann die Zertifikatsanforderung an die Zertifikatsautorität (entweder intern an Ihr Unternehmen oder extern, abhängig von Ihren Rollen), um ein CA-signiertes Serverzertifikat zu erhalten, wie unter To Request a CA-Signed Server Certificate in Sun Java System Directory Server Enterprise Edition 6.3 Administration Guide beschrieben.

  3. Wenn Ihnen die Zertifikatsautorität ein neues Zertifikat sendet, führen Sie den folgenden Befehl aus, um das Zertifikat zu der Zertifikatsdatenbank hinzuzufügen:


    $ dpadm add-cert instance-path cert-alias
    

    Dieser Schritt wird unter Creating, Requesting and Installing Certificates for Directory Proxy Server in Sun Java System Directory Server Enterprise Edition 6.3 Administration Guide beschrieben.

  4. Wenn das vertrauenswürdige Zertifikatsautoritätszertifikat bereits in der Zertifikatsdatenbank gespeichert ist, führen Sie zum Hinzufügen folgenden Befehl aus:


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

    Dieser Schritt wird unter Creating, Requesting and Installing Certificates for Directory Proxy Server in Sun Java System Directory Server Enterprise Edition 6.3 Administration Guide beschrieben.

  5. Führen Sie folgende Befehle aus, um festzustellen, ob das neue Zertifikat verwendet wird.


    $ 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

Wenn Sie mit einem Microsoft SQL-Server-Backend die Felder smalldate verwenden, wird nur die lange Version der Daten unterstützt, andernfalls tritt ein Umwandlungsfehler auf, wie im folgenden Beispiel dargestellt.


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

Hinweis –

Die lange Version eines Datums verwendet die Form YYYY -MM-DD HH:MM.