que - sspi sql server error




No se puede crear el contexto SSPI (11)

Estoy trabajando en una aplicación .NET donde estoy tratando de construir los scripts de base de datos. Al crear el proyecto, aparece un error "No se puede crear el contexto SSPI". Este error se muestra en la ventana de resultados (dentro de la pantalla VS2008) y el proceso de construcción falló. Por favor ayuda en esto. SQL Server está configurado para funcionar en la autenticación de Windows y se ejecuta como servicio de red (estas dos cosas son obligatorias para mi proyecto).

Por favor ayuda en esto. Este error no parece ser consistente. Se solucionó en el pasado reiniciando la máquina, cambiando la hora del sistema para que coincidiera con la hora del dominio y algunas sugerencias en la red. Por favor ayuda en esto.


Acabo de tener el mismo problema y todo lo que hice fue eliminar las credenciales de inicio de sesión del usuario en el servidor SQL usando otra identificación de usuario y agregarlas nuevamente.


Aquí está mi caso. Tenía una máquina remota que albergaba SQL Server. Desde mi máquina local, estaba tratando de acceder a la instancia de SQL a través de algún código C # y estaba recibiendo este error. Mi contraseña para la cuenta de usuario en mi máquina / dominio ha caducado . Lo arreglé con lo siguiente:

  1. Abrí la máquina remota, lo que me pidió un cambio de contraseña
  2. Cambié mi contraseña dentro de este aviso e inicié sesión en la máquina remota
  3. "Bloqueé" mi máquina local (usando la tecla windows + L para no tener que cerrar la sesión por completo) para poder volver a la página de inicio de sesión
  4. Regresé a mi máquina local con la nueva contraseña

Entonces todo funcionó bien.


En mi caso era un SPN faltante, tenía que ejecutar estos dos comandos:

setspn -a MSSQLSvc: SERVERNAME SERVERNAME setspn -a MSSQLSvc: SERVERNAME: 1433 SERVERNAME

En otras palabras, en mi caso ya tenía el FQDN allí, pero no solo el nombre de NETBIOS, después de agregarlos funcionó bien. Bueno, inicialmente no fue así, pero después de esperar 2 minutos lo hizo.


Es un error bastante común con una variedad de causas: comience aquí con KB 811889

  • ¿Qué versión de SQL Server?
  • ¿Y Windows en cliente y servidor?
  • ¿Instancia de SQL local o de red?
  • Dominio o grupo de trabajo? ¿Proveedor?
  • Cambio de contraseña
  • ¿Windows local registra errores?
  • ¿Alguna otra aplicación afectada?

Lo primero que debe hacer es ir a los registros ( Management\SQL Server Logs ) y ver si SQL Server successfully registered the Service Principal Name (SPN) . Si ve algún tipo de error (la The SQL Server Network Interface library could not register the Service Principal Name (SPN) for the SQL Server service ), entonces sabe dónde comenzar.

Vimos que esto sucedía cuando cambiamos la cuenta bajo la que se estaba ejecutando SQL Server. Restablecerlo a la cuenta del sistema local solucionó el problema. Microsoft también tiene una guide para configurar manualmente el SPN.


Parece que su PC no se ha contactado con un controlador de dominio de autenticación por un tiempo. (Solía ​​hacer que esto sucediera en mi computadora portátil unas cuantas veces).

También puede suceder si su contraseña caduca.


Quizás haya utilizado Integrated Security = SSPI en la cadena de conexión. SSPI se usa para conexiones de confianza que usan Windows Authentication.hence, para funcionar correctamente en la autenticación de Windows, ya sea que su sistema y el servidor de la base de datos deben estar en el mismo dominio y usar la misma dirección del servidor DNS, o deben estar en un dominio de confianza.

Si su sistema y el servidor de la base de datos están en el mismo dominio, verifique la dirección del servidor DNS de las propiedades de IPV4 en la conexión de red de su sistema y proporcione el mismo servidor DNS que está utilizando el servidor de la base de datos.


Resolví mi error de Cannot Generate SSPI Context utilizando el Administrador de configuración de SQL Server. Como tengo un cliente nativo de SQL Server 10.0 en mi máquina, la conexión al servidor está tratando de usar canalizaciones con nombre (¿o memoria compartida?). Otras máquinas podrían ejecutar mi aplicación sin ningún problema. Cuando miré el administrador de configuración, las canalizaciones con nombre y la memoria compartida estaban habilitadas (bueno). Sin embargo, bajo el alias, el nombre de la computadora estaba allí con TCP forzado. Como no sabía qué efecto tendría este cambio, cambié la cadena de conexión en mi programa para usar <servername>. <domainname> en su lugar. Fijo.


También emití este problema, y ​​los administradores del servidor lo resolvieron siguiendo la misma solución que indu_teja propuesta en http://www.sqlservercentral.com/Forums/Topic546566-146-1.aspx

La solución propuesta por indu_teja dice:

Si obtiene este "Error de contexto SSPI". Los problemas que enfrentamos son:

  1. No podremos conectarnos a SQL Server de forma remota.
  2. Sin embargo podremos conectarnos al servidor con la cuenta local.

CAUSA: El problema podría deberse a que no se produjo una sincronización adecuada para los SPN en Active Directory.

RESOLUCIÓN:

  1. Es necesario restablecer SPN. Utilice el synytax "SET SPN". Puede comprobar la sintaxis en red una vez.
  2. Cambie su cuenta de servicio de servidor SQL de una cuenta de dominio a una cuenta local, recicle SQL y luego restablezca nuevamente con su cuenta de dominio y recicle su servidor SQL.

Tenía un ejemplo realmente extraño de esto; Todos los productos web que tenían cadenas de conexión que contenían el nombre de computadora de Windows del servidor SQL funcionaron bien, pero los productos que tenían un FQDN con el dominio interno adjunto dieron un error de SSPI. es decir, COMPUTERNAME vs COMPUTERNAME.DOMAIN (el ping siempre funcionó como se esperaba)

Esto SOLO dio problemas cuando se estaba utilizando un nuevo servidor SQL y los archivos de host apuntaban tanto al nombre de la computadora como al nombre de computadora como un FQDN para las cadenas de conexión.

La solución en este caso fue establecer todas las cadenas de conexión solo en el nombre del equipo, eliminando las referencias del dominio.

SQL: 2008R2 SQL2012

IIS: 2008R2


Tuve este error: sucedió porque mi contraseña expiró y tuve que cambiarla. No lo noté, porque en algunos programas todavía podía iniciar sesión y todo funcionaría normalmente (incluidas las ventanas), pero no podía iniciar sesión en ningún servidor de SQL Server.





sspi