Problembehandlung bei Fehler OBJ_CLASS_VIOLATION in Adamsync in Windows Server 2003 oder Windows Server 2008

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 923835 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

beschrieben, wie Sie einen OBJ_CLASS_VIOLATION-Fehler beheben, die auftritt, wenn Sie das Adamsync-Tool in Windows Server 2003 oder Windows Server 2008 verwenden.

Dieser Fehler tritt aufgrund der Klasse Definition Unterschiede zwischen Active Directory-Verzeichnisdienst und die ADAM-Instanz. Um dieses Problem zu beheben, gehen, die in den folgenden Abschnitten beschrieben werden:
  • Bestimmen Sie die Attribute und Klasse des Objekts
  • Schritte zur Behebung des Problems, wenn Attribute der TOP-Klasse angehören
  • Schritte zur Behebung des Problems beim Attribute nicht zu der TOP-Klasse gehören
Wenden Sie sich an Microsoft Support, wenn Sie das Problem nicht beheben können.

Problembeschreibung

Sie versuchen, das Tool Active Directory-Anwendungsmodus (ADAM) Synchronizer (Adamsync.exe) zu verwenden, um Active Directory-Objekte in eine ADAM-Instanz auf einem Computer mit Windows Server 2003 oder Windows Server 2008 zu synchronisieren. Jedoch ist eine Fehlermeldung etwa folgenden Inhalts in der Adamsync-Protokolldatei protokolliert:
Verarbeitung Eintrag: Seite X Frame X, Eingabe X Anzahl X USN X Quelle Eintrag Verarbeitung in Bereichseintrag f9023a23e3a06d408f07a0d51c301f38 <guid=f9023a23e3a06d408f07a0d51c301f38> Processing. Hinzufügen von target Objekt CN =TestGroup, OU = Accounts, dc = domain, dc = com. Hinzufügen von Attributen: Sourceobjectguid, ObjectClass, InstanceType, DisplayName, Info, AdminDescription, DisplayNamePrintable, UserAccountControl, CodePage, CountryCode, LogonHours, PrimaryGroupID, Kommentar, AccountExpires, sAMAccountName, DesktopProfile, LegacyExchangeDN, UserPrincipalName

LDAP-Fehler ist aufgetreten. Ldap_add_sW: Object Class Verletzung. Erweiterte Informationen: 0000207D: UpdErr: DSID-0315119D, Problem 6002 (OBJ_CLASS_VIOLATION) Daten-2054643804

Ursache

Dieses Problem tritt wegen der Klasse Definition Unterschiede zwischen Active Directory und ADAM. Dieser Unterschied wird, wenn Sie versuchen, Ändern eines Objekts ein Attribut enthalten, die für Ihre Klasse ungültig ist. Beispielsweise das Attribut ist nicht auf allen in der ADAM-Schema definiert, oder das Attribut definiert, aber das Attribut nicht in der Liste der Attribute erforderlich oder Optional für die bestimmte Klasse vorhanden ist. Normalerweise ist die zweite Situation die häufigste Ursache des Problems.

Die Klassendefinition für das Objekt synchronisiert werden, enthält eine oder mehrere Attribute in Active Directory, die in ADAM nicht verfügbar sind. Der Fehlermeldung, das im Abschnitt "Problembeschreibung" genannt wird im Abschnitt "Adding Attributes" zeigt die Attribute, die Sie hinzufügen. Diese Attribute werden definiert, in der Liste der Optional oder erforderliche Attribute für die Klasse des Objekts, das synchronisiert wird.

Beispielsweise ist das Reference-Objekt in der Fehlermeldung, das im Abschnitt "Problembeschreibung" genannt wird, CN = TestGroup. Wenn Sie anzeigen, die CN=TestGroup Objekt in Active Directory und Überprüfen der Liste der Attribute für diese Klasse und alle übergeordneten Klassen, das Sie sehen, dass ein oder mehrere Attribute in dieser Liste nicht in der Liste der Attribute erforderlich oder Optional sind, die für diese Klasse in ADAM aktiviert sind.

Hinweis: Dies umfasst Attribut Listen von allen übergeordneten Klassen.

Lösung

Gehen Sie folgendermaßen vor, um dieses Problem zu beheben.

Bestimmen der Attribute und Klasse des Objekts

  1. Überprüfen Sie die Liste der Attribute, die das Objekt hinzugefügt werden, die fehlgeschlagen. Sie können das Objekt ermitteln, indem Sie die Fehlermeldung in das Sync-Protokoll anzeigen fehlgeschlagen. Das fehlerhafte Objekt ist immer das letzte Objekt, das am Ende das Sync-Protokoll genau vor die Fehlermeldung angegeben ist. Z. B. die CN=TestGroup-Objekt ist fehlgeschlagen in Fehlermeldung, das im Abschnitt "Problembeschreibung" genannt wird.
  2. Feststellen Sie, ob die DisplayNamePrintable , Flags oder Erweiterungsname Attribute in der Fehlermeldung enthalten sind. Wenn eines dieser Attribute in der Fehlermeldung enthalten ist, finden Sie im Abschnitt "Schritte zur Problembehebung, wenn Attribute der TOP-Klasse angehören". Wenn keine Attribute in der Fehlermeldung enthalten sind, finden Sie im Abschnitt "Schritte zum Problem, wenn Attribute nicht zu der TOP-Klasse gehören".

Schritte zur Behebung des Problems, wenn Attribute der TOP-Klasse angehören

Sie werden feststellen, dass die TOP-Klasse in Active Directory-Schema das DisplayNamePrintable , Flags oder Erweiterungsname -Attribut enthält. Diese Attribute sind jedoch nicht in der TOP-Klasse in ADAM enthalten. Allerdings können Sie die TOP-Klasse in ADAM nicht ändern. Daher verwenden Sie eine der folgenden Methoden, um das Problem zu beheben:
  • Schließen Sie diese Attribute mithilfe des <exclude>-Abschnitts in der XML-Konfigurationsdatei.
  • Mithilfe von MMC-Schema fügen Sie diese Attribute manuell zur Liste der optionalen Attribute für die relevanten Klasse im ADAM-Schema hinzu. Beispielsweise ist in der Fehlermeldung, das im Abschnitt "Problembeschreibung" genannt wird, das fehlerhafte Objekt der Klasse gruppieren. Daher müssen Sie der Liste Optionaler Attribute für die Klasse Group in ADAM diese Attribute hinzufügen.

Schritte zur Behebung des Problems beim Attribute nicht zu der TOP-Klasse gehören

  1. In ADSchemaAnalyzer unter Extras \ im Menü Optionen , klicken Sie Update durch Verweise auf neue und aktuelle Elemente auf die Registerkarte LDIF-Generierung .
  2. Verwenden Sie im Menü Datei , um Active Directory als Zielschema und ADAM als das Basisschema zu laden. Warten Sie auf das Tool zum Vergleichen der Schemas Fertig stellen.
  3. Klicken Sie im Schema auf alle Elemente als einbezogen markieren .
  4. Klicken Sie im Menü Datei auf Create LDIF-Datei , um eine LDF-Datei zu erstellen, die die Änderungen enthält.

    Hinweis: Wenn Sie diese LDF-Datei direkt in ADAM importieren, werden die erforderlichen Attribute wahrscheinlich nicht hinzugefügt oder ordnungsgemäß geändert. Darüber hinaus ist kein Fehlermeldung angezeigt. Abschnitt "Warum können nicht Sie die LDF-Datei direkt in ADAM importieren" eine Erklärung, warum dies geschieht. In diesem Fall zu Schritt 5 gehen Sie, ohne die LDF-Datei importieren.
  5. Überprüfen Sie die LDF-Datei, die Sie in Schritt 4 erstellt haben. Zeigen Sie an, insbesondere Klasse, die das Problem verursacht. Beispielsweise zeigen Sie an, die Group-Klasse. Der Abschnitt für diese Klasse enthalten die Liste der Attribute, die in der Liste der Attribute erforderlich oder Optional für diese Klasse in Active Directory vorhanden sind, aber, fehlen in ADAM.
  6. Suchen Sie das Problem-Attribut in die LDF-Datei. Um dies tun, untersuchen Sie Abschnitt "#attributes" in der LDF-Datei. Attribute, die nicht importiert werden, bleiben in diesem Abschnitt. Normalerweise ist das Problem-Attribut das einzige Attribut, das Sie im Abschnitt "#attributes" finden. Wenn Sie das Attribut Problem finden, gehen Sie zu Schritt 8. Wenn Sie das Problem-Attribut nicht finden, gehen Sie zu Schritt 7.
  7. Gehen Sie wenn das Problem Attribut aus dem Abschnitt "#attributes" in die LDF-Datei nicht offensichtlich ist, folgendermaßen vor um das Problem Attribut suchen
    1. Alle Änderungen an einer Klasse sind derzeit unter einem Abschnitt in der LDF-Datei. Dies ist der Abschnitt "#Updating vorhanden Elemente". Suchen Sie unter diesem Abschnitt den Abschnitt, der die Klasse aktualisiert, die das Problem verursacht. Beispielsweise ist Group-Klasse das Problem, Sie werden feststellen ein Abschnitts, die die folgenden ähnelt:
      # Update element: group
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: adminCount
      mayContain: 1.2.840.113556.1.4.150
      # mayContain: controlAccessRights
      mayContain: 1.2.840.113556.1.4.200
      # mayContain: groupAttributes
      mayContain: 1.2.840.113556.1.4.152
      # mayContain: groupMembershipSAM
      mayContain: 1.2.840.113556.1.4.166
      -
      
      NoteSome more entries that may be located here have been excluded from this example.
      
      dn: 
      changetype: modify
      add: schemaUpdateNow
      schemaUpdateNow: 1
      
    2. Ändern Sie die Einträge, die Sie durch die Einträge in ein einzelnes Attribut pro Vorgang aufteilen in Schritt 4a gefunden. Beispielsweise ändern, die Einträge in dem Beispiel im Schritt 7a mithilfe der Einträge, die die folgenden ähneln:
      # Update element: group
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: adminCount
      mayContain: 1.2.840.113556.1.4.150
      -
      
      # Update element: group
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: controlAccessRights
      mayContain: 1.2.840.113556.1.4.200
      -
      
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: groupAttributes
      mayContain: 1.2.840.113556.1.4.152
      -
      
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: groupMembershipSAM
      mayContain: 1.2.840.113556.1.4.166
      -
      
      Note Some more entries that may be located here have been excluded from this example.
      
      
      dn: 
      changetype: modify
      add: schemaUpdateNow
      schemaUpdateNow: 1
      
  8. Speichern Sie die LDF-Datei.
  9. Importieren Sie die LDF-Datei in das ADAM-Schema mithilfe des Befehls, der am Anfang der LDF-Datei bereitgestellt wird.
  10. Anzeigen des Berichts, der durch das Dienstprogramm LDIFDE angezeigt wird. LDIFDE meldet jetzt die Fehler, die mit den Attributen auftreten, die nicht importiert wurden. Die Fehlerinformationen werden die folgenden Beispielinformationen ähneln:
    C:\WINDOWS\ADAM>ldifde -i -u -f c:\data\problem\KBtest_modified.ldf -s localhost:50010 -j . -c "cn=Configuration,dc=X" #configurationNamingContext
    Connecting to "localhost:50010"
    Logging in as current user using SSPI
    Importing directory from file "c:\data\problem\KBtest_modified.ldf"
    Loading entries.
    Add error on line 15: Already Exists
    The server side error is: 0x2071 An attempt was made to add an object to the
    ectory with a name that is already in use.
    The extended server error is:
    00002071: UpdErr: DSID-0305030D, problem 6005 (ENTRY_EXISTS), data 0
    

    Hinweis: Suchen Sie das Problem-Attribut in der LDF-Datei, indem Sie die Zeilennummer, die angegeben wird in den Fehlerbericht anzeigen.
  11. Verwenden Sie diese Fehlerinformationen finden das Problem-Attribut und Lösen des Problems. Gehen Sie folgendermaßen, um das Problem zu beheben vor:
    1. Suchen Sie das Problem-Attribut in der LDF-Datei, indem Sie die Zeilennummer, die angegeben wird in den Fehlerbericht anzeigen. Fehlgeschlagene Attribut kann dieser Wert ein Präfix "DUP-" enthalten.
    2. Beachten Sie den Objektbezeichner (OID) des Attributs und dieses Objekt-ID in ADAM suchen.
    3. Suchen Sie das Attribut in ADAM, die die gleiche Objektkennung verfügt.
    4. Vergleichen Sie das Attribut in ADAM und die LDF-Datei alle Unterschiede feststellen. Die Attribute verfügen z., einen anderen DisplayName jedoch die gleiche Objektkennung.
    5. Entscheiden Sie, welches Attribut beibehalten, und korrigieren Sie anderen. Beispielsweise können Sie den Eintrag aus der LDF-Datei entfernen, oder Sie können den ADAM-Attribut-Eintrag korrigieren. Oder Sie können das Problem Attribut von der Synchronisierung ausschließen, mithilfe des <exclude>-Abschnitts in der XML-Konfigurationsdatei.
  12. Nachdem das Attribut Problem behoben ist, in Active Directory oder in der ADAM-Schema oder nachdem die LDF-Datei das Attribut entfernt wird, importieren Sie die geänderte LDF-Datei erneut. Nachdem der Importvorgang erfolgreich ausgeführt werden soll. Wenn das Problem nicht behoben wird, liegt möglicherweise ein anderes Attribut, das das Problem verursacht. Wiederholen Sie Schritte 10 bis 12, bis alle Attribute importiert werden.

Diagnostikprotokoll

Wenn Sie das Attribut Problem gefunden haben, kann es nicht offensichtlich sein was mit falsch ist. Beispielsweise können Sie eine doppelte Objektkennung oder einen anderen DisplayName-Eintrag nicht gefunden. Wenn ein Problem Attribut importiert wird, erhalten Sie weitere Informationen zum Fehler, durch Aktivieren der Debugprotokollierung für LDAP-Schnittstelle. Gehen Sie hierzu folgendermaßen vor:
  1. Um weitere Informationen über den LDIFDE-Fehler erhalten, aktivieren Sie LDAP-Protokollierung in ADAM. Ändern Sie dazu den Wert für den Registrierungseintrag
    Category 16 LDAP Interface events
    auf 5. Dieser Registrierungseintrag befindet sich unter den folgenden Registrierungsunterschlüssel:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ADAM_instanceName\Diagnostics
  2. Importieren Sie die LDF-Datei erneut.
  3. Betrachten Sie das Ereignisprotokoll auf Fehler.
  4. Nachdem Sie die Problembehandlung abgeschlossen haben, wird den Wert für die
    Category 16 LDAP Interface events
    Registrierungseintrag auf 0 zurückgesetzt. Andernfalls wird das Ereignisprotokoll übertragen werden.

Nehmen Sie Kontakt mit dem Microsoft-Kundendienst auf

Wenn das Problem nach dem Ausführen der in diesem Artikel beschriebenen Schritte nicht behoben ist, wenden Sie sich an den Microsoft Support. Klicken Sie auf den folgenden Link, um Microsoft Support zuzugreifen:
http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

Status

Es handelt sich hierbei um ein beabsichtigtes Verhalten.

Weitere Informationen

Gehen Sie folgendermaßen vor, um Active Directory zu ADAM-Daten mithilfe von Adamsync-Tool zu synchronisieren:
  1. Klicken Sie auf Start , zeigen Sie auf Programme , zeigen Sie auf ADAM und klicken Sie dann auf ADAM Tools-Eingabeaufforderung .
  2. Geben Sie in die Eingabeaufforderung den folgenden Befehl ein, und drücken Sie anschließend die [EINGABETASTE]:
    Adamsync FS Server_Name: port_number configurationName ConfigurationName/log log_file_name .log
Weitere Informationen dazu, wie das Adamsync-Tool verwenden, finden Sie auf folgenden Websites von Microsoft:
http://technet2.microsoft.com/windowsserver2008/en/library/ca49911b-d004-4497-b369-6506495fb30f1033.mspx?mfr=true

http://technet2.microsoft.com/windowsserver/en/library/809c8d09-cc99-4e7e-a80d-e77c5aefb3211033.mspx?mfr=true

Sie können nicht warum die LDF-Datei direkt in ADAM importieren.

Wenn Sie die LDF-Datei, die Sie in Schritt 1 unter dem Abschnitt importieren "Schritte zur Problembehebung, wenn Attribute nicht zu der TOP-Klasse gehören" in ADAM erstellt haben, werden diese Attribute nicht immer noch die Attributliste in ADAM hinzugefügt. Sie können dies überprüfen, untersuchen Sie das Schema mithilfe von ADAM-Schema, MMC oder ADSIEDIT. Dieses Verhalten, weil die LDIFDE fehl automatisch importieren. Derzeit meldet LDIFDE keine Fehler. Wird automatisch aufgrund der Art, ADSchemaAnalyzer die LDF-Datei erstellt. ADSchemaAnalyzer verwendet die Befehle Ntdsschemaadd und NtdsSchemamodify . Diese Befehle aktivieren permissive LDAP-Steuerelement. Dies bedeutet, dass alle Fehler silent ist.

Darüber hinaus für jede Klasse werden alle Attribute in der Liste Optionaler Attribute hinzugefügt werden in einem hinzufügen/ändern von Vorgang hinzugefügt. Daher, wenn ein Problem Hinzufügen eines der Attribute der gesamte Vorgang fehlschlägt, und keine Attribute in der Liste werden hinzugefügt. Daher müssen zusätzliche Schritte durchgeführt werden, um Problem Attribut gefunden.

Normalerweise ist die mögliche Ursache eine doppelte Objektkennung eines Attributs oder einige andere Unterschied in der Attributdefinitionen im Active Directory und ADAM. In Windows Server 2003 wird von ADSchemaAnalyzer LdapDisplayName von Attributen und Klassen verwendet, um Active Directory und ADAM zu vergleichen. OIDs doppelte bedeutet dies möglicherweise übersehen und ein Attribut kann als neues Attribut angezeigt werden, wenn die LDapDisplayName in ADAM nicht vorhanden. In Windows Server 2008 (Active Directory/LDS), ADSchemaAnalyzer verwendet die Objekt-ID und Konflikte meldet, wenn gefunden.

Eigenschaften

Artikel-ID: 923835 - Geändert am: Mittwoch, 16. Juli 2008 - Version: 2.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Standard
Keywords: 
kbmt kbprb kbtshoot KB923835 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 923835
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com