La pregunta aquí es diferente de 1 y 2
Cuando intento conectarme a una base de datos de SQL Server que está en otro sistema en la red, ambos están en el grupo de trabajo, cuando intento conectarme a una instancia de SQL Server 2008 usando SQL Server Management Studio con autenticación de Windows, me conecto.
Pero cuando intento conectarme desde mi aplicación, aparece el siguiente error
(Error de inicio de sesión. El inicio de sesión es de un dominio que no es de confianza y no se puede usar con la autenticación de Windows.) Native = 18452).
Si SQL Server Management Studio puede conectarse, ¿qué se requeriría para que mi aplicación se conecte?
sql-server
sql-server-2008
Comunidad
fuente
fuente
Respuestas:
Dado que se está ejecutando en un grupo de trabajo, la única autenticación posible es aquella que utiliza 'cuentas NT duplicadas' , lo que significa que el proceso que intenta autenticarse debe ejecutarse bajo una identidad que se 'refleja' en el host que autentica el proceso. Las cuentas 'duplicadas' son cuentas locales distintas con nombre y contraseña idénticos en ambos hosts que realizan la autenticación.
Por lo tanto, debe seguir que se está ejecutando SSMS de una cuenta que se refleja en el host de SQL Server (por ejemplo.
<computername>\Administrator
, Lo que se refleja en la<sqlhost>\Administrator
y tiene la misma contraseña). Tenga en cuenta que UAC no tiene nada que hacer aquí (es decirrunning as administrator
, no ayudará).Es probable que su aplicación se ejecute con una cuenta local diferente (¿quizás un apéndice IIS predeterminado?) Y la cuenta con la que se ejecuta la aplicación no se refleja en el host de SQL Server.
Su mejor solución es deshacerse de la red improvisada e implementar un AD (dominio) adecuado. Como provisional, asegúrese de ejecutar su aplicación en una cuenta que se refleje en la máquina host de SQL Server.
fuente
Si está utilizando Windows 7, es posible que deba "ejecutarlo como administrador". Esto permitirá que la aplicación reutilice sus credenciales de Windows y las pase al Servidor SQL. De lo contrario, pasará las credenciales de invitado al SQL Server.
fuente