SQL Server 2012 Impossibile accedere con l'account del computer


11

Stiamo migrando un sito IIS / SQL Server dal 2008 al 2012 e sto riscontrando un problema con l'autenticazione. Usiamo l'autenticazione di Windows per autenticare come DOMAIN\COMPUTER$, ma questo non funziona, dando un errore che dice:

Accesso non riuscito per l'utente "DOMAIN \ COMPUTER $". Motivo: impossibile trovare un accesso corrispondente al nome fornito. [CLIENTE: <macchina locale>]

Ho verificato l'esistenza dell'account e persino cancellato e ricreato

create login "DOMAIN\COMPUTER$" from windows

Se lo faccio di nuovo, ottengo la risposta:

Messaggio 15025, livello 16, stato 2, riga 1
Il server principale 'DOMAIN \ COMPUTER $' esiste già.

( DOMAIN\COMPUTERè sostituito con il dominio reale e il nome del computer)

Quindi sembra che il sito stia eseguendo una query su SQL Server, ma SQL Server non sta esaminando molto i suoi accessi.

Cosa mi sono perso?

Risposte:


6

Molto probabilmente non è affatto DOMAIN \ computer $. Questo messaggio è noto per essere fuorviante. Penso che tutto ciò che vuole è che "NT AUTHORITY \ NETWORK SERVICE" abbia accesso al server. Apri le proprietà di accesso di SQL Server e aggiungi questo account. Inoltre, controlla quale utente viene utilizzato in IIS per impersonare l'utente anonimo, dovrebbe essere simile a "IUSR_ServerName". Concedi l'accesso anche a questo utente


1
"NT AUTHORITY \ NETWORK SERVICE" ha già accesso al server. IIS si sta impersonando come "IUSR" (no _ServerName). Per quanto ne sapevo, questo non è un account reale e non posso concedere l'accesso a "DOMAIN \ IUSR" o "DOMAIN \ IUSR" poiché questi account non esistono.
alt

Questo ha funzionato per me per un servizio Windows
user919426

Dopo aver combattuto una lunga mattinata con la procedura guidata Copia database e la procedura guidata di esportazione / importazione SQL, questa è l'unica risposta che l'ha fatto funzionare. Grazie!
Zalakain,

6

Sia @cha che @alt hanno indizi giusti - il messaggio di errore è fuorviante ed Application Pool Identityè coinvolto (beh, almeno era nel mio caso).

Se viene utilizzato il pool di applicazioni dell'app IIS Application Pool Identity, l'account utente che è necessario aggiungere a SQL Server è IIS APPPOOL\your_app_pool_name. Nota: non utilizzare il Search...pulsante in Proprietà di accesso per trovare questo utente - lo troverà, ma lo sostituirà con il MACHINE_NAME\your_app_pool_namequale non funzionerà - basta digitare IIS APPPOOL\your_app_pool_namecome nome di accesso.


1
Funziona solo quando il tuo server web e sql sono nella stessa scatola.
maxisam,

1
Certo, gli account di identità del pool di app sono locali per il computer AFAIK, quindi non è possibile utilizzarli su altri computer. Basta usare l'autenticazione di SQL Server in quel caso o eseguire l'app Web su un account di dominio.
Jakub Januszkiewicz,

3

Questo problema dovrebbe essere gestito in modo diverso a seconda della configurazione del server.

  1. Il server SQL e IIS si trovano sullo stesso computer.

    un. cambiare l'identità del pool di applicazioni inNetwork Service

    b. aggiungi NT AUTHORITY\NETWORK SERVICEal tuo login del server SQL

  2. Il server SQL e IIS si trovano su macchine diverse.

    un. aggiungere l'account macchina DOMAIN\computer-name$, al login del server SQL.

    b. rimane l'identità del pool di applicazioniApplication Pool Identity


1

Sono riuscito a farlo funzionare modificando il sito in IIS per utilizzare il Application Pool Identity, quindi cambiando l'identità del pool di applicazioni in Network Service. Sentiti libero di commentare eventuali problemi di sicurezza che ciò può sollevare.


Perché non utilizzare un utente di dominio per il pool di app in quanto è presente AD o un account di servizio gestito meglio?
Spörri,

0

Stavo ottenendo lo stesso errore. Errore di accesso: 18456, gravità: 14, stato: 5. La disabilitazione di CEIP da SQL Server Error and Usage Reporting mi ha risolto il problema.


1
Potresti approfondire un po 'la tua risposta? Puoi citare qualche risorsa rilevante? La tua risposta è risultata di bassa qualità a causa della sua lunghezza e contenuto e potrebbe essere eliminata per questo.
John aka hot2use,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.