que puede nombre manager generate generar error correcto contexto context cannot sql sql-server security sspi

sql - nombre - No se puede crear el contexto SSPI



sspi que es (16)

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.


El error "No se puede generar el contexto SSPI" es muy genérico y puede ocurrir por una multitud de razones. Es solo un error de cobertura para cualquier error subyacente de Kerberos / NTLM. El enlace del artículo de KB de Gbn es un muy buen punto de partida y generalmente resuelve los problemas. Si aún tiene problemas, le recomiendo seguir los pasos de solución de problemas para solucionar errores de Kerberos .


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?

Este error generalmente se produce cuando la cuenta de usuario de Windows caduca y ya ha iniciado sesión con una contraseña antigua. Simplemente pídale al usuario que reinicie su máquina y verifique si la contraseña ha caducado o si ha cambiado la contraseña. ¡¡¡¡¡Espero que esto ayude!!!!!


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.


Puedo resolver este problema restableciendo el dominio (máquina del servidor, que es el servidor del dominio, pero no relacionado con el Servidor SQL, excepto la administración del dominio) seguido por las máquinas cliente.

¡Gracias a todos por su apoyo inmediato!


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.


Si está alojando en IIS, asegúrese de que la contraseña de la cuenta de AppPool no haya cambiado .

Si es así, sigue estos pasos:

  • Ir a IIS
  • Haga clic en Grupos de aplicaciones
  • Seleccione el AppPool de su aplicación
  • Haga clic derecho en su AppPool
  • Ajustes avanzados
  • Identidad
  • Actualiza contraseña
  • Reinicie AppPool

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 el mismo problema después de cambiar el usuario que ejecutaba el servicio MSSQLSERVER

Para resolver SPN incorrectos con SQL Server utilicé esta herramienta

http://www.microsoft.com/en-us/download/details.aspx?id=39046 - Microsoft® Kerberos Configuration Manager para SQL Server

En mi caso funcionó bastante bien.


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.