Descripción del problema: No hemos podido establecer una conexión en SQL Server 2008 desde un servidor remoto con cuenta de Windows. Tenemos el mensaje de error: No se puede generar contexto SSPI.


Trabajo realizado: Hemos seguido el paso de solución de problemas a continuación:

Paso 1:  Hizo una  TELNET en el puerto de la máquina y confirmó que el puerto de la instancia de SQL Server estaba abierto.

Paso 2:  Se verificaron si el SPN para mi instancia del servidor SQL existen con el comando a continuación:

Inicio >> Ejecutar >> CMD >> Setspn -L <SuCuentaDeServicioDeSQL>

Registered ServicePrincipalNames for CN=svc-mssql-sgbd,OU=Users,OU=_Paris,DC=puteaux,DC=net:
        MSSQLSvc/serverName:PORT
        MSSQLSvc/serverName


Paso 3: Se verificaron si el SPN para mi instancia del servidor SQL existen con el comando a continuación:

Haga clic derecho en el escritorio >> Archivo >> Nuevo >> cambie el nombre de su archivo de texto por myTest.UDL.


 
Haga doble clic en él. Haga clic en la ficha del PROVEEDOR. Y seleccione SQL Server Native client 10.0

     Traté de hacer una conexión con otro protocolo, como Name Pipe.
     Np:<ServerName>\<IntanceName>  
          Funciona bien

     A  continuación, traté de hacer una conexión con protocolo TCP con SQL autenticación
     tcp:<ServerName>\<IntanceName>
          Funciona bien

     A  continuación, traté de hacer una conexión con protocolo TCP con  Windows autenticación
     tcp:<ServerName>\<IntanceName>  
          Se produjo el error: No se puede generar contexto SSPI

      A continuación, traté de hacer una conexión con protocolo TCP con  Windows autenticación y con el puerto
     tcp:<ServerName>\<IntanceName>,PortNumberOfYourSQLInstance  
          Se produjo el error: No se puede generar contexto SSPI

     Luego he intentado con el protocolo TCP con otra cuenta de la autenticación de Windows 
     tcp:<ServerName>\<IntanceName>
          Funciona bien

 

 

Causa: Hemos habilitado el registro detallado de Kerberos después del artículo de Microsoft Knowledge Base: http://support.microsoft.com/kb/262177 .

Y nos encontramos en del sistema dentro de Windows, el mensaje de error :

The kerberos SSPI package generated an output token of size 12536 bytes, which was too large to fit in the token buffer of size 12535 bytes, provided by process id 4.
The output SSPI token being too large is probably the result of the user
myUser@myDomain.com  being a member of a large number of groups.
It is recommended to minimize the number of groups a user belongs to. If the problem can not be corrected by reduction of the group memberships of this user, please contact your system administrator to increase the maximum token size, which in term is configured machine-wide via the following registry value: HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters\MaxTokenSize.

 

 

Resolución: Hemos aumentado el tamaño maximumtoken siguientes el artículo de Knowledge Base para volver a la producción : http://support.microsoft.com/kb/327825 ,  entonces el cliente investiga para ver por qué este usuario es miembro de un gran número de grupos.

 

 

Recursos relacionados::

     The SQL Network Interface library was unable to register SPN

     How to troubleshoot the "Cannot generate SSPI context" error message

     “Cannot Generate SSPI Context” error message, more comments for SQL Server

Michel Degremont | Premier Field Engineer - SQL Server Core Engineer |