Gli utenti che si verifichino problemi di autenticazione quando accedono a una pagina Web in IIS 6.0 o una query di Microsoft SQL Server 2000 dopo l'installazione di Windows Server 2003 Service Pack 1

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

In questa pagina

Sintomi

Si esegue l'aggiornamento di un computer basato su Microsoft Windows Server 2003 che esegue Microsoft Internet Information Services (IIS) 6.0 o Microsoft SQL Server 2000 a Windows Server 2003 Service Pack 1 (SP1). Dopo avere effettuato questa operazione, gli utenti si verifichino problemi di autenticazione quando si utilizzano applicazioni Web oppure quando utilizzano un programma che esegue una query sul database. Un utente, ad esempio, potrebbe verificarsi sintomi simili a una delle seguenti operazioni:
  • L'utente riceve un messaggio di errore "Accesso negato" quando l'utente tenta di accedere a una pagina Web che recupera dati da un database back-end.
  • L'utente non Ŕ in grado di connettersi a un altro server di database che si trova in un cluster di bilanciamento carico di rete (NLB, Network Load BALANCING). Le query al server di database non vengono eseguite correttamente.
I sintomi che gli utenti possono variare a seconda dell'ambiente particolare.

Cause

Questo problema si verifica se il nome principale servizio (SPN) del servizio non Ŕ autenticato. Se non Ŕ registrato il SPN per un account di servizio, il SPN non viene autenticato. Windows Server 2003 SP1 include funzionalitÓ di controllo di loopback viene memorizzato nella seguente voce del Registro di sistema:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\DisableLoopbackCheck
Per impostazione predefinita, funzionalitÓ di controllo di loopback viene attivata in Windows Server 2003 SP1 e la voce del Registro di sistema DisableLoopbackCheck Ŕ impostata su 0 (zero). La funzionalitÓ di controllo di loopback impedisce il programma di registrazione del nome SPN.

Risoluzione

Importante Questa sezione, metodo o attivitÓ contiene passaggi viene illustrato come modificare il Registro di sistema. Tuttavia, pu˛ causare seri problemi se si modifica il Registro di sistema in modo non corretto. Pertanto, assicurarsi di eseguire la procedura con attenzione. Per maggiore protezione, eseguire il backup del Registro di sistema prima di modificarlo. Quindi, Ŕ possibile ripristinare il Registro di sistema se si verifica un problema. Per ulteriori informazioni su come eseguire il backup e ripristino del Registro di sistema, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
322756Come eseguire il backup e ripristino del Registro di sistema in Windows

Importante Per impostazione predefinita, funzionalitÓ di controllo di loopback Ŕ attivato in Windows Server 2003 SP1 e la voce del Registro di sistema DisableLoopbackCheck Ŕ impostata su 0 (zero). La protezione viene ridotta quando si disattiva il controllo di loopback di autenticazione e aprire il server di Windows Server 2003 per uomo middle (MITM) attacchi su NTLM. Per evitare attacchi MITM, deve essere restituito il valore della voce del Registro di sistema su zero (0) dopo l'esecuzione di modifiche SPN. Inoltre, il metodo 1 Ŕ la soluzione migliore.

Metodo 1: Creare i nomi di host di autoritÓ di protezione locale Ŕ possibile fare riferimento in una richiesta di autenticazione NTLM (consigliata)

  1. Fare clic sul pulsante Start, scegliere Esegui, digitare regedit e quindi fare clic su OK.
  2. Nell'editor del Registro di sistema individuare e quindi fare clic sulla seguente chiave del Registro di sistema:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
  3. Fare clic con il pulsante destro del mouse su Msv1_0, scegliere nuovo e quindi fare clic su Valore multistringa.
  4. Digitare BackConnectionHostNames e quindi premere INVIO.
  5. Fare clic con il pulsante destro del mouse su BackConnectionHostNames e quindi fare clic su Modifica.
  6. Nella casella dati valore digitare il nome host o i nomi host per i siti che sono sul computer locale e quindi fare clic su OK.
  7. Chiudere l'editor del Registro di sistema e riavviare il server per rendere effettiva la modifica.

Metodo 2: Disattiva il controllo di loopback di autenticazione e registrare il nome principale di servizio con l'account viene eseguito il servizio

Per risolvere il problema, disattivare il controllo di loopback di autenticazione e quindi registrare il nome principale di servizio con l'account viene eseguito il servizio. A tale scopo, impostare la voce DisableLoopbackCheck in
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
sottochiave 1 Registro di sistema e determinare quindi il nome del SPN.

Passaggio 1: Per impostare la voce del Registro di sistema DisableLoopbackCheck a 1

  1. Fare clic sul pulsante Start, scegliere Esegui, digitare regedit e quindi fare clic su OK.
  2. Individuare e selezionare la seguente sottochiave del Registro di sistema:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\LSA
  3. Fare clic con il pulsante destro del mouse su DisableLoopbackCheck e quindi fare clic su Modifica.
  4. Digitare 1 nella casella dati valore e quindi fare clic su OK.

Passaggio 2: per determinare il nome del SPN

  1. Aggiungere le seguenti voci del Registro di sistema e impostare ogni voce del Registro di sistema sul valore appropriato come segue:
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\LogLevel

      Valore: 1
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\LogToFile

      Valore: 1
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\KerbDebugLevel

      Valore: c3
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters\LogLevel

      Valore: 1 1
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters\LogToFile

      Valore: 1
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters\KerbDebugLevel

      Valore: c3
    Per aggiungere una voce del Registro di sistema, attenersi alla seguente procedura:
    1. Individuare e quindi fare clic sulla sottochiave del Registro di sistema in cui si desidera aggiungere la voce del Registro di sistema.
    2. Scegliere nuovo dal menu Modifica e quindi fare clic su Valore DWORD.
    3. Digitare il nome della voce del Registro di sistema che si desidera aggiungere e quindi premere INVIO.
    4. Fare clic con il pulsante destro del mouse la voce del Registro di sistema aggiunto nel passaggio 2c e quindi fare clic su Modifica.
    5. Digitare il valore appropriato per tale voce del Registro di sistema e quindi fare clic su OK.
    6. Ripetere il passaggio 2a a 2e per ogni voce del Registro di sistema che si desidera aggiungere.
    7. Chiudere l'editor del Registro di sistema.
  2. Riavviare il computer e quindi riprodurre il problema. Dopo avere effettuato questa operazione, nel Registro di sistema viene registrato un messaggio di errore ID evento Ŕ simile al seguente:
    Tipo: errore
    Origine: Kerberos
    Categoria: nessuno
    ID evento: 3
    Descrizione: Un errore di Kerberos Ŕ stato ricevuto il messaggio:
    Nella sessione di accesso
    Ora del client:
    Ora server: TimeDate
    Codice errore: 0 x 7 KDC_ERR_S_PRINCIPAL_UNKNOWN
    Errore esteso:
    Area autenticazione client:
    Nome client:
    Area autenticazione server: DomainName .com
    Nome server: MSSQLSvc / DomainName .com:1433
    Nome destinazione: MSSQLSvc / ServerName. DomainName: 1433 @ DomainName.com
    Errore testo:
    File: 9
    Riga: ab8
    Dati di errore Ŕ nei dati del record.
    Determinare il SPN dal messaggio di errore ID evento. In questo esempio, il SPN Ŕ MSSQLSvc / DomainName .com:1433.

Passaggio 3: Utilizzare lo strumento della riga di comando Setspn.exe per registrare SPN per l'account di servizio appropriati

In IIS 6.0, l'account del servizio Ŕ in genere l'account viene eseguito il servizio WWW o l'account utilizzato dal pool di applicazioni. In SQL Server 2000, l'account del servizio Ŕ l'account con cui viene eseguito SQL Server 2000. Per aggiungere un nuovo nome SPN, utilizzare la seguente sintassi:
setspn - a SPN DomainName \ AccountName

Di seguito Ŕ riportato un esempio di come utilizzare l'utilitÓ da riga di comando Setspn.exe per aggiungere un SPN:
Setspn - a MSSQLSvc/NLBNAME.corp.domain.com:1433 DomainName \ AccountName

Informazioni

Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
970536Aggiornamento per lo strumento Setspn.exe supporto per Windows Server 2003


Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
837361Voci del Registro di sistema protocollo Kerberos e le chiavi di configurazione KDC in Windows Server 2003


Dopo aver installato l'aggiornamento della protezione 957097, applicazioni quali SQL Server o Internet Information Services (IIS) potrebbero non riuscire quando si effettuano le richieste di autenticazione NTLM locali. Per ulteriori informazioni su come risolvere il problema, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
957097MS08-068: Una vulnerabilitÓ in SMB pu˛ consentire l'esecuzione di codice in modalitÓ remota
Vedere la sezione "Problemi noti con questo aggiornamento della protezione" dell'articolo della Knowledge Base 957097 per informazioni dettagliate su come risolvere il problema.

ProprietÓ

Identificativo articolo: 887993 - Ultima modifica: martedý 10 febbraio 2009 - Revisione: 4.1
Le informazioni in questo articolo si applicano a:
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
Chiavi:á
kbmt kbtshoot KB887993 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: 887993
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