Risoluzione dei problemi errore OBJ_CLASS_VIOLATION Adamsync in Windows Server 2003 o in Windows Server 2008

Traduzione articoli Traduzione articoli
Identificativo articolo: 923835 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

viene descritto come risolvere un errore OBJ_CLASS_VIOLATION che si verifica quando si utilizza lo strumento Adamsync in Windows Server 2003 o in Windows Server 2008.

Questo errore si verifica a causa delle differenze di definizione di classe tra il servizio directory Active Directory e l'istanza ADAM. Per risolvere il problema, attenersi alla procedura Ŕ descritte nelle sezioni seguenti:
  • Determinare l'attributo e la classe dell'oggetto
  • Procedura per risolvere il problema, quando gli attributi appartengono alla classe TOP
  • Procedura per risolvere il problema, quando gli attributi non appartengono alla classe TOP
Se non Ŕ possibile risolvere il problema, contattare il supporto Microsoft.

Sintomi

Si tenta di utilizzare lo strumento programma di sincronizzazione Active Directory Application Mode (ADAM) (Adamsync.exe) per sincronizzare gli oggetti Active Directory a un'istanza di ADAM in un computer basato su Windows Server 2003 o basato su Windows Server 2008. Tuttavia, un messaggio di errore analogo al seguente Ŕ registrato nel file di registro Adamsync:
Elaborazione voce: Pagina X, X numero di Frame X, X voce, USN X elaborazione voce di origine <guid=f9023a23e3a06d408f07a0d51c301f38> f9023a23e3a06d408f07a0d51c301f38 voce nell'ambito di elaborazione. Aggiunta di destinazione l'oggetto CN =TestGroup, OU = Accounts, dc = domain, dc = com. Aggiunta di attributi: sourceobjectguid, objectClass, instanceType, displayName, informazioni, adminDescription, displayNamePrintable, userAccountControl, codePage, countryCode, logonHours, primaryGroupID, commento, accountExpires, sAMAccountName, desktopProfile, legacyExchangeDN, userPrincipalName

Si Ŕ verificato un errore LDAP. ldap_add_sW: violazione di classe di oggetti. Informazioni estese: 0000207D: UpdErr: DSID-0315119D, problema 6002 (OBJ_CLASS_VIOLATION), dati-2054643804

Cause

Questo problema si verifica a causa delle differenze definizione classe tra Active Directory e ADAM. Questa differenza viene visualizzato quando si tenta di modificare un oggetto per includere un attributo che non Ŕ valido per la classe. Ad esempio, l'attributo non Ŕ definito nello schema di ADAM, o l'attributo Ŕ definito, ma l'attributo non Ŕ presente nell'elenco degli attributi obbligatorio o facoltativo per la classe specifica. In genere, la seconda situazione Ŕ la causa pi¨ frequente di questo problema.

Definizione della classe per l'oggetto da sincronizzare contiene uno o pi¨ attributi in Active Directory che non sono disponibili in ADAM. Nella sezione di "Aggiunta gli attributi" del messaggio di errore menzionato nella sezione "Sintomi" vengono visualizzati gli attributi che si tenta di aggiungere. Questi attributi sono definiti nell'elenco di Optional o gli attributi obbligatori per la classe dell'oggetto che viene sincronizzata.

Ad esempio, nel messaggio di errore menzionato nella sezione "Sintomi", l'oggetto di riferimento Ŕ CN = TestGroup. Quando si visualizza il CN=TestGroup oggetto in Active Directory e controllare l'elenco di attributi per questa classe e la tutte le classi di padre, la si noterÓ che uno o pi¨ attributi in questo elenco non sono nell'elenco di obbligatorio o facoltativo attributi che sono attivati per questa classe in ADAM.

Nota Sono inclusi elenchi di attributo da tutte le classi padre.

Risoluzione

Per risolvere il problema, attenersi alla procedura descritta di seguito.

Determinare il attributi e la classe dell'oggetto

  1. Verificare l'elenco di attributi che vengono aggiunti all'oggetto non riuscita. ╚ possibile determinare l'oggetto non riuscita, visualizzando il messaggio di errore nel Registro di sincronizzazione. L'oggetto Ŕ sempre l'ultimo oggetto indicato alla fine del Registro di sincronizzazione esattamente prima il messaggio di errore. Ad esempio, il CN=TestGroup oggetto non riuscita nel messaggio di errore menzionato nella sezione "Sintomi".
  2. Determina se gli attributi DisplayNamePrintable , contrassegni o NomeEstensione sono inclusi nel messaggio di errore. Se uno di questi attributi Ŕ incluso nel messaggio di errore, vedere la sezione di "Passaggi per risolvere il problema, quando gli attributi appartengono alla classe TOP". Se non gli attributi sono incluse nel messaggio di errore, vedere la sezione di "Passaggi per risolvere il problema quando gli attributi non appartengono alla classe TOP".

Procedura per risolvere il problema, quando gli attributi appartengono alla classe TOP

Si noterÓ che la classe TOP nello schema di Active Directory contiene l'attributo DisplayNamePrintable , contrassegni o NomeEstensione . Tuttavia, questi attributi non sono contenuti nella classe TOP in ADAM. Non Ŕ possibile modificare la classe TOP in ADAM. Pertanto, utilizzare uno dei metodi descritti di seguito, per risolvere il problema:
  • Per escludere questi attributi utilizzando la sezione <exclude> file di configurazione XML.
  • Utilizzando lo schema MMC, aggiungere manualmente questi attributi all'elenco di attributi facoltativi per la classe corrispondente nello schema di ADAM. Nel messaggio di errore menzionato nella sezione "Sintomi", ad esempio, l'oggetto di cui si Ŕ verificato l'errore Ŕ della classe Group. Di conseguenza, Ŕ necessario aggiungere questi attributi all'elenco di attributi facoltativi per la classe di gruppo in ADAM.

Procedura per risolvere il problema, quando gli attributi non appartengono alla classe TOP

  1. In ADSchemaAnalyzer in Strumenti di \ dal menu di Opzioni , fare clic su Update con riferimenti a elementi nuovi e presenti nella scheda Generazione LDIF .
  2. Per caricare Active Directory come schema di destinazione e ADAM come schema di base, utilizzare il menu file . Attendere che lo strumento per completare il confronto tra gli schemi.
  3. Scegliere schema dal menu, contrassegnare tutti gli elementi come inclusi .
  4. Nel menu file , fare clic su create LDIF file per creare un file LDF che contiene le modifiche.

    Nota Se si importa il file LDF direttamente in ADAM, gli attributi necessari probabilmente non verranno aggiunto o modificati correttamente. Inoltre, non Ŕ possibile visualizzare alcun messaggio di errore. Vedere la sezione "PerchÚ non Ŕ possibile importare il file LDF direttamente in ADAM" per una spiegazione del motivo per cui questo si verifica. In questo caso, andare al passaggio 5 senza importare il file LDF.
  5. Esaminare il file LDF creato nel passaggio 4. In particolare, visualizzare la classe che Ŕ la causa del problema. Ad esempio, Ŕ possibile visualizzare la classe di gruppo. La sezione per la classe conterrÓ l'elenco di attributi che sono presenti nell'elenco di attributi obbligatorio o facoltativo per questa classe in Active Directory ma che risultano mancanti in ADAM.
  6. Trovare l'attributo di problema nel file LDF. Per effettuare questa operazione, esaminare la sezione "#attributes" del file LDF. Gli attributi che non vengono importati rimangono in questa sezione. In genere, l'attributo di problema Ŕ l'unico attributo disponibili nella sezione "#attributes". Se si trova l'attributo del problema, andare al passaggio 8. Se non si trova l'attributo del problema, andare al passaggio 7.
  7. Se l'attributo del problema non Ŕ evidente dalla sezione "#attributes" nel file LDF, attenersi alla seguente procedura per trovare l'attributo del problema:
    1. Tutte le modifiche apportate a una classe sono attualmente in una sezione del file LDF. Si tratta la sezione "#Updating presente elementi". In questa sezione, individuare la sezione che aggiorna la classe che presenta il problema. Ad esempio, se la classe di gruppo Ŕ il problema, si noterÓ una sezione simile al seguente: elemento
      # 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. Modificare le voci individuato nel passaggio 4a suddividendo le voci in un singolo attributo per ogni operazione. Ad esempio modificare le voci nell'esempio che nel passaggio 7a utilizzando le voci simili alle seguenti:
      # 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. Salvare il file LDF.
  9. Importare il file LDF nello schema di ADAM utilizzando il comando fornito all'inizio il file LDF.
  10. Visualizzare il report viene visualizzato per l'utilitÓ LDIFDE. LDIFDE ora segnalerÓ gli errori che si verificano con gli attributi che non sono stati importati. Le informazioni sull'errore sarÓ simile alle informazioni di esempio riportate di seguito:
    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
    

    Nota Individuare l'attributo del problema nel file LDF, visualizzare il numero di riga indicato nella segnalazione errori.
  11. Utilizzare queste informazioni di errore per trovare l'attributo del problema e risolvere il problema. Attenersi alla seguente procedura per tentare di risolvere il problema:
    1. Individuare l'attributo del problema nel file LDF, visualizzare il numero di riga indicato nella segnalazione errori. L'attributo dispone di un prefisso "DUP-" nel DisplayName.
    2. Si noti l'identificatore di oggetto (OID) dell'attributo e cercare l'identificatore di oggetto in ADAM.
    3. Trovare l'attributo in ADAM con lo stesso identificatore di oggetto.
    4. Confrontare l'attributo in ADAM e nel file LDF per individuare le eventuali differenze. Ad esempio, gli attributi possono avere un diverso DisplayName ma lo stesso identificatore di oggetto.
    5. Decidere l'attributo per mantenere e quindi correggere l'altra. Ad esempio, Ŕ possibile rimuovere la voce dal file LDF, oppure Ŕ possibile correggere la voce di attributo di ADAM. In alternativa, Ŕ possibile escludere l'attributo del problema dalla sincronizzazione utilizzando la sezione <exclude> file di configurazione XML.
  12. Dopo che l'attributo del problema Ŕ stato corretto in Active Directory o nello schema ADAM o dopo avere rimosso l'attributo dal file LDF, importare di nuovo il file LDF modificato. Dopo l'operazione di importazione deve essere eseguita correttamente. Se il problema non viene risolto, potrebbe trattarsi di un altro attributo che Ŕ la causa del problema. Ripetere i passaggi 10 a 12 per tutti gli attributi vengono importati.

Registrazione di diagnostica

Quando si trova l'attributo del problema, potrebbe non essere evidente Qual Ŕ il difetto con esso. Ad esempio, potrebbe non essere un identificatore di oggetto duplicato o una voce DisplayName diversa. Quando un attributo del problema non viene importato, Ŕ possibile ottenere ulteriori informazioni sull'errore attivando la registrazione di debug per l'interfaccia LDAP. Per effettuare questa operazione, attenersi alla seguente procedura:
  1. Per ottenere ulteriori informazioni sull'errore LDIFDE, attivare la registrazione in ADAM di LDAP. Per effettuare questa operazione, modificare il valore per la voce del Registro di sistema di
    Category 16 LDAP Interface events
    a 5. Questa voce del Registro di sistema si trova nella seguente sottochiave del Registro di sistema:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ADAM_instanceName\Diagnostics
  2. Importare di nuovo il file LDF.
  3. Controllare il registro eventi per gli errori.
  4. Al termine della risoluzione dei problemi, reimpostare il valore per la voce del Registro di sistema di
    Category 16 LDAP Interface events
    su 0. In caso contrario, il registro eventi sarÓ sovraccarico.

Contattare il supporto tecnico Microsoft

Se il problema non viene risolto al termine di questo articolo, contattare il supporto Microsoft. Fare clic sul seguente collegamento per accedere di supporto tecnico Microsoft:
http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

Status

Questo comportamento legato alla progettazione.

Informazioni

Per sincronizzare i dati da Active Directory ad ADAM utilizzando lo strumento Adamsync, attenersi alla seguente procedura:
  1. Fare clic su Start , scegliere tutti i programmi , scegliere ADAM , quindi prompt dei comandi strumenti di ADAM .
  2. Al prompt dei comandi digitare il comando seguente e premere INVIO:
    adamsync /fs Server_Name: port_number configurationName /log log_file_name log
Per ulteriori informazioni su come utilizzare lo strumento Adamsync, visitare i seguenti siti Web 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

PerchÚ non Ŕ possibile importare il file LDF direttamente in ADAM

Se si importa il file LDF creato nel passaggio 1 nella sezione "Passaggi per risolvere il problema, quando gli attributi non appartengono alla classe TOP" in ADAM, questi attributi ancora non vengono aggiunti all'elenco degli attributi in ADAM. ╚ possibile verificare questo comportamento, utilizzando lo schema di ADAM MMC o ADSIEDIT per esaminare lo schema. Questo comportamento si verifica poichÚ il LDIFDE importare operazione non riesce, in modo invisibile all'utente. Attualmente, LDIFDE non segnala gli errori. Si verifica un errore automaticamente a causa della modalitÓ che ADSchemaAnalyzer crea il file LDF. ADSchemaAnalyzer utilizza i comandi ntdsschemaadd e ntdsSchemamodify . Questi comandi attivare il controllo LDAP permissiva. Ci˛ significa che qualsiasi errore Ŕ invisibile all'utente.

Inoltre, per ciascuna classe, tutti gli attributi per essere aggiunto all'elenco di attributi facoltativi vengono aggiunte in aggiungere, modificare un'unica operazione. Di conseguenza, se si Ŕ verificato un problema aggiungendo uno degli attributi, l'intera operazione non riesce e non gli attributi nell'elenco vengono aggiunti. Di conseguenza, ulteriori necessario procedere per trovare l'attributo del problema.

In genere, il motivo probabile dell'errore Ŕ un identificatore di oggetto duplicato di un attributo o un altra differenza nelle definizioni di attributo in Active Directory e ADAM. In Windows Server 2003, ADSchemaAnalyzer utilizza il LdapDisplayName degli attributi e classi per confrontare Active Directory e ADAM. Ci˛ significa che duplicano OID potrebbe essere non e attributo pu˛ essere visualizzato come un nuovo attributo, se il LDapDisplayName non esiste in ADAM. In Windows Server 2008 (Active Directory/LDS), ADSchemaAnalyzer utilizza l'identificatore di oggetto e segnalerÓ i conflitti, se trovato.

ProprietÓ

Identificativo articolo: 923835 - Ultima modifica: mercoledý 16 luglio 2008 - Revisione: 2.0
Le informazioni in questo articolo si applicano a:
  • 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
Chiavi:á
kbmt kbprb kbtshoot KB923835 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 923835
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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