10.1 Migration vom Sun ONE-Schema zu NetIQ eDirectory

Führen Sie folgende Schritte aus, um das Sun ONE-Schema zu NetIQ eDirectory zu migrieren:

10.1.1 Schritt 1: Aktualisierungsvorgang für Schema-Cache ausführen

Mit folgendem Befehl können Sie die Fehler, die beim Vergleich des Schemas auftreten, in eine Fehlerdatei schreiben:

ice -e LDIF error file name -C -a -SLDAP -s Sun ONE server -p Sun ONE port -DLDAP -s eDirectory server -p eDirectory port

Beispiel:

ice -e err.ldf -C -a -SLDAP -s sun_srv1 -p sun_port1 -DLDAP -s edir_srv2 -p edir_port2

Alle beim Vergleichen des Schemas aufgetretenen Fehler werden in die Fehlerdatei (in diesem Beispiel err.ldf) geschrieben. Zum Ausführen dieses Vorgangs ist keine Anmeldung erforderlich, es sei denn, einer der Server benötigt zum Lesen des Root-DSE eine Authentifizierung. Microsoft Active Directory erfordert eine Authentifizierung zum Lesen des Root-DSE.

10.1.2 Schritt 2: Fehlerhafte LDIF-Datei korrigieren, um die Fehler zu beseitigen

  • Sun ONE definiert bestimmte Schemadefinitionen öffentlich, die eDirectory nicht öffentlich definiert. Dies betrifft Attribute wie objectClasses, attributeTypes, ldapSyntaxes und subschemSubentry. Diese Definitionen existieren intern sind für das Schema von wesentlicher Bedeutung. Sie können daher nicht geändert werden. Vorgänge, die versuchen, diese Definitionen zu ändern, verursachen folgenden Fehler:

    LDAP-Fehler: 53 (DSA will nicht aktiv werden)

    Datensätze, die Bezüge zu diesen Definitionen enthalten, verursachen folgenden Fehler:

    LDAP-Fehler: 16: (kein solches Attribut)

    Datensätze, die einen Bezug zu diesen Objekten enthalten oder versuchen, diese Definitionen zu ändern, müssen in der LDIF-Fehlerdatei (in diesem Beispiel err.ldf) kommentiert werden.

  • Einige Objektklassendefinitionen in Sun ONE verfügen über keine Benennungsattribute. Beim Hinzufügen solcher Objektklassen würde in eDirectory folgender Fehler auftreten:

    LDAP-Fehler: 80 (NDS-Fehler: keine eindeutige Benennung (-651)

    Dieser Fehler tritt auf, weil Sun ONE nicht die gleiche Methode zur Bestimmung von Benennungsregeln verwendet wie eDirectory.

    Setzen Sie eine beliebige der drei folgenden Optionen ein, um das Problem zu lösen:

    Option 1:

    Fügen Sie zu jeder der betreffenden Objektklassen ein gültiges Benennungsattribut hinzu.

    Beispiel:

    Um das Benennungsattribut [ cn ] zur Objektklasse netscapeMachineData hinzuzufügen, bearbeiten Sie den Eintrag (im Beispiel unten hervorgehoben) in der Datei err.ldf unter Verwendung der Flagge X-NDS_NAMING:

    dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME ’netscapeMachineData’ 
        DESC ’iPlanet defined objectclass’ SUP top STRUCTURAL MAY ’cn’     X-NDS_NAMING ’cn’ )-
    

    Option 2:

    Definieren Sie jede betreffende Objektklasse als AUXILIARY oder ABSTRACT.

    Beispiel:

    Um die Definition der Objektklasse netscapeMachineData von STRUCTURAL in AUXILIARY zu ändern, bearbeiten Sie den Eintrag in der Datei err.ldf (im Beispiel unten hervorgehoben) wie folgt:

    dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME ’netscapeMachineData’ 
       DESC ’iPlanet defined objectclass’ SUP top AUXILIARY )-
    

    Um die Definition der Objektklasse netscapeMachineData von STRUCTURAL in ABSTRACT zu ändern, bearbeiten Sie den Eintrag in der Datei err.ldf (im Beispiel unten hervorgehoben) wie folgt:

    dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME ’netscapeMachineData’ 
       DESC ’iPlanet defined objectclass’ SUP top ABSTRACT )-
    

    Option 3:

    Fügen Sie cn zur Definition von Top in eDirectory hinzu, um ein potenzielles Benennungsattribut für alle Objektklassen zu verursachen.

    Zum Hinzufügen von cn zu Top stehen zwei Methoden zur Verfügung:

    • Methode 1:

      Erstellen Sie wie nachfolgend dargestellt eine Datei und benennen Sie die Datei topsch.ldf.

      version : 1
      
      dn:cn=schema
      
      changetype :modify
      
      delete : objectclasses
      
      objectclasses : ( 2.5.6.0 NAME ’top’ STRUCTURAL )
      
      -
      
      add:objectclasses
      
      objectclasses : (2.5.6.0 NAME ’top’ STRUCTURAL MAY cn)
      

      Führen Sie folgende NetIQ Import Conversion Export (ICE)-Befehlszeile aus:

      ice -SLDIF -f LDIF_file_name -DLDAP -s eDirectory_server -p eDirectory_port -d eDirectory_Admin_DN -w eDirectory_password
      

      Beispiel:

      ice -SLDIF -f topsch.ldf -DLDAP -s edir_srv2 -p edir_port2 -d cn=admin,o=org -w pwd1
      
    • Methode 2:

      1. Klicken Sie in NetIQ iManager auf die Schaltfläche Rollen und Aufgaben Schaltfläche 'Rollen und Aufgaben'.

      2. Klicken Sie auf Schema > Attribut hinzufügen.

      3. Wählen Sie in der Liste Verfügbare Klassen den Eintrag Anfang und klicken Sie auf OK.

      4. Doppelklicken Sie in der Liste Verfügbare optionale Attribute auf CN.

      5. Klicken Sie auf OK.

  • Einige Objektklassendefinitionen enthalten userPassword als Bestandteil der Liste obligatorischer Attribute. Beim Hinzufügen solcher Objektklassen zu eDirectory tritt folgender Fehler auf:

    LDAP-Fehler: 16 (kein solches Attribut)

    Um das Problem zu lösen, ändern Sie die Objektklassendefinition so, dass sie die neue Objektklasse von ndsLoginProperties erbt, und entfernen Sie das Attribut userPassword aus der Liste der obligatorischen Attribute.

    Beispiel:

    Eine Objektklasse, die userPassword in der Liste obligatorischer Attribute enthält:

    version : 1
    dn: cn=schemaz
    changetype: modify
    add: objectClasses
    objectClasses: ( 0.9.2342.19200300.100.4.19 NAME ’simpleSecurityObject’ DESC ’
     Standard LDAP objectClass’ SUP top STRUCTURAL MUST userPassword )
    

    Dies muss folgendermaßen geändert werden (beachten Sie die Änderung in der letzten Zeile):

    version : 1
    dn: cn=schema
    changetype: modify
    add: objectClasses
    objectClasses: ( 0.9.2342.19200300.100.4.19 NAME ’simpleSecurityObject’ DESC ’
     Standard LDAP objectClass’ SUP (ndsLoginProperties $ top) STRUCTURAL )
    

10.1.3 Schritt 3: LDIF-Datei importieren

Importieren Sie mit folgendem NetIQ Import Conversion Export (ICE)-Befehl die veränderte Schemavergleichs-LDIF-Datei (in unserem Beispiel err.ldf):

ice -e error_file -SLDIF -f modified_LDIF_file -DLDAP -s eDirectory_server -p eDirectory_port -d eDirectory_Admin_DN -w eDirectory_password

Beispiel:

ice -e errors.ldf -SLDIF -f err.ldf -DLDAP -s edir_srv2 -p edir_port2 -d cn=admin,o=org -w pwd1