SQL Server 2008: il login proviene da un dominio non attendibile e non può essere utilizzato con l'autenticazione di Windows


8

La domanda qui è diversa da 1 e 2

Quando provo a connettermi a un database SQL Server che si trova su un altro sistema nella rete entrambi sono nel gruppo di lavoro, quando provo a connettermi a un'istanza di SQL Server 2008 utilizzando SQL Server Management Studio con l'autenticazione di Windows, mi connetto.

Ma quando provo a connettermi dalla mia applicazione, ottengo il seguente errore

(Accesso non riuscito. L'accesso proviene da un dominio non attendibile e non può essere utilizzato con l'autenticazione di Windows.) Nativo = 18452).

Se SQL Server Management Studio è in grado di connettersi, cosa sarebbe necessario per la mia applicazione per connettersi?


Ha funzionato dopo aver usato lo stesso account sul server mssql.

Risposte:


4

Poiché si sta eseguendo un gruppo di lavoro, l'unica autenticazione possibile è quella che utilizza "account NT con mirroring" , il che significa che il processo che tenta di eseguire l'autenticazione deve essere eseguito con un'identità "mirroring" sull'host che sta autenticando il processo. Gli account "con mirroring" sono account locali distinti con nome e password identici su entrambi gli host che eseguono l'autenticazione.

Quindi deve seguire che stai eseguendo SSMS da un account che è speculare sull'host di SQL Server (ad es. <computername>\Administrator, Che è speculare dalla <sqlhost>\Administratore ha la stessa password). Nota che UAC non ha nulla da fare qui (cioè running as administratornon aiuterà).

Probabilmente l'applicazione è in esecuzione con un altro account locale (forse appool IIS predefinito?) E l'account con cui viene eseguita l'applicazione non viene eseguito il mirroring sull'host di SQL Server.

La soluzione migliore è abbandonare la rete improvvisata e distribuire un AD (dominio) adeguato. Nel frattempo, assicurati di eseguire la tua applicazione con un account che si rispecchia sul computer host di SQL Server.


Sì, è necessario eseguire il mirroring dell'autenticazione !. La mia applicazione che è un servizio era in esecuzione con un account Windows diverso (x) rispetto a SQL Server Management Studio. Questo account di Windows (x) è presente anche nell'altro sistema, ma entrambi avevano password diverse !!!!!!! Ho reso la password uguale in entrambi i sistemi e ha funzionato. Grazie mille !!

5

Se si utilizza Windows 7, potrebbe essere necessario eseguire "come amministratore". Ciò consentirà all'app di riutilizzare le credenziali di Windows e passarle a SQL Server. Altrimenti, passerai le credenziali guest a SQL Server.


3
Improbabile. Controllo dell'account utente influenza solo le interazioni locali. Non influisce sull'autenticazione con un host remoto.
Remus Rusanu,
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.