Los usuarios experimentan problemas de autenticación cuando tienen acceso a una página Web en IIS 6.0 o Microsoft SQL Server 2000 de la consulta después de instalar Windows Server 2003 Service Pack 1

Seleccione idioma Seleccione idioma
Id. de artículo: 887993 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Síntomas

Actualizar un equipo basado en Microsoft Windows Server 2003 que ejecuta Microsoft Internet Information Services (IIS) 6.0 o Microsoft SQL Server 2000 a Windows Server 2003 Service Pack 1 (SP1). Después de hacerlo, los usuarios experimentan problemas de autenticación al usar aplicaciones Web o cuando utilicen un programa que consulta la base de datos. Por ejemplo, un usuario puede experimentar síntomas similares a uno de los siguientes:
  • El usuario recibe un mensaje de error "Acceso denegado" cuando el usuario intenta tener acceso a una página Web que recupera datos de una base de datos back-end.
  • El usuario no puede conectarse a otro servidor de base de datos que se encuentra en un clúster de equilibrio de carga de red (NLB). Las consultas al servidor de base de datos no.
Los síntomas que los usuarios experimentan pueden variar dependiendo de su entorno concreto.

Causa

Este problema se produce si el nombre principal de servicio (SPN) del servicio no está autenticado. Si no está registrado el SPN para una cuenta de servicio, no se autentica el SPN. Windows Server 2003 SP1 incluye funcionalidad de comprobación de bucle invertido que se almacena en la siguiente entrada del registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\DisableLoopbackCheck
De forma predeterminada, funcionalidad de comprobación de bucle invertido está activado en Windows Server 2003 SP1 y la entrada de registro DisableLoopbackCheck se establece en 0 (cero). La funcionalidad de comprobación de bucle invertido impide que el programa de registro del SPN.

Solución

Importante Esta sección, método o de tarea contiene pasos que le indican cómo modificar el registro. Sin embargo, pueden producirse problemas graves si modifica incorrectamente el registro. Por tanto, asegúrese de que siga estos pasos cuidadosamente. Para obtener más protección, haga una copia de seguridad del registro antes de modificarlo. A continuación, puede restaurar el registro si se produce un problema. Para obtener más información acerca de cómo realizar una copia de seguridad y restaurar el registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
322756Cómo hacer copia de seguridad y restaurar el registro de Windows

Importante De forma predeterminada, funcionalidad de comprobación de bucle invertido está activado en Windows Server 2003 SP1 y la entrada de registro DisableLoopbackCheck se establece en 0 (cero). Cuando deshabilita la comprobación de bucle invertido de autenticación y abra el servidor de Windows Server 2003 para ataques de tipo "Man in the middle" (MITM) en NTLM, se reduce la seguridad. Para evitar los ataques MITM, debe devolverse el valor de entrada del registro a cero (0) después de haber realizan los cambios SPN. Además, el método 1 es la mejor solución.

Método 1: Crear los nombres de host de autoridad de seguridad local que se pueden hacer referencia en una solicitud de autenticación NTLM (preferida)

  1. Haga clic en Inicio, haga clic en Ejecutar, escriba regedit y, a continuación, haga clic en Aceptar.
  2. En el Editor del registro, busque y haga clic en la siguiente clave del registro:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
  3. Haga clic con el botón secundario del mouse en Msv1_0, seleccione nuevo y, a continuación, haga clic en Valor de cadena múltiple.
  4. Escriba BackConnectionHostNames y, a continuación, presione ENTRAR.
  5. Haga clic con el botón secundario del mouse en BackConnectionHostNames y, a continuación, haga clic en Modificar.
  6. En el cuadro información del valor, escriba el nombre de host o los nombres de host para los sitios que están en el equipo local y, a continuación, haga clic en Aceptar.
  7. Salga del Editor del registro y, a continuación, reinicie el servidor para que este cambio surta efecto.

Método 2: Deshabilitar la comprobación de bucle invertido de autenticación y registrar el SPN con la cuenta de que se ejecuta el servicio

Para resolver este problema, deshabilite la comprobación de bucle invertido de autenticación y, a continuación, registrar el SPN con la cuenta de que se ejecuta el servicio. Para ello, establezca la entrada DisableLoopbackCheck en el
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
registro subclave a 1 y, a continuación, determine el nombre del SPN.

Paso 1: Para establecer la entrada de registro DisableLoopbackCheck a 1

  1. Haga clic en Inicio, haga clic en Ejecutar, escriba regedit y, a continuación, haga clic en Aceptar.
  2. Busque y haga clic en la siguiente subclave del Registro:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
  3. Haga clic con el botón secundario del mouse en DisableLoopbackCheck y, a continuación, haga clic en Modificar.
  4. Escriba 1 en el cuadro datos del valor y, a continuación, haga clic en Aceptar.

Paso 2: para determinar el nombre del SPN

  1. Agregue las siguientes entradas del registro y, a continuación, establezca cada entrada del registro en el valor adecuado como sigue:
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\LogLevel

      Valor: 1
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\LogToFile

      Valor: 1
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\KerbDebugLevel

      Valor: c3
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters\LogLevel

      Valor: 1 1
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters\LogToFile

      Valor: 1
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters\KerbDebugLevel

      Valor: c3
    Para agregar una entrada del registro, siga estos pasos:
    1. Busque y haga clic en la subclave del registro donde desee agregar la entrada del registro.
    2. En el menú Edición, seleccione nuevo y, a continuación, haga clic en Valor DWORD.
    3. Escriba el nombre de la entrada del registro que desea agregar y, a continuación, presione ENTRAR.
    4. Haga clic con el botón secundario del mouse en el registro de entrada que agregó en el paso 2c y, a continuación, haga clic en Modificar.
    5. Escriba el valor apropiado para esa entrada del registro y, a continuación, haga clic en Aceptar.
    6. Repita el paso 2a y 2e para cada entrada del registro que desea agregar.
    7. Salga del Editor del Registro.
  2. Reinicie el equipo y, a continuación, reproduzca el problema. Después de hacerlo, se registra un mensaje de error de ID de evento es similar al siguiente en el registro del sistema:
    Tipo: error
    Origen: Kerberos
    Categoría: ninguno
    ID. de suceso: 3
    Descripción: Un error de Kerberos se ha recibido el mensaje:
    en el inicio de sesión
    Hora de cliente:
    Hora de servidor: Date de Time
    Código de error: 0 x 7 KDC_ERR_S_PRINCIPAL_UNKNOWN
    Error extendido:
    Territorio de cliente:
    Nombre de cliente:
    Territorio de servidor: DomainName .com
    Nombre de servidor: MSSQLSvc / DomainName .com:1433
    Nombre de destino: MSSQLSvc / ServerName. DomainName: 1433 @ DomainName.com
    Error de texto:
    Archivo: 9
    Línea: ab8
    Datos de error está en datos de registro.
    Determinar el SPN de la mensaje de error de ID de evento. En este ejemplo, el SPN es MSSQLSvc / DomainName .com:1433.

Paso 3: Usar la herramienta de línea de comandos Setspn.exe para registrar el SPN para la cuenta de servicio apropiado

En IIS 6.0, la cuenta de servicio es normalmente la cuenta de que se ejecuta el servicio WWW o la cuenta que utiliza el grupo de aplicaciones. En Microsoft SQL Server 2000, la cuenta de servicio es la cuenta que se ejecuta SQL Server 2000. Utilice la sintaxis siguiente para agregar un SPN nuevo:
setspn - a SPN DomainName \ AccountName

El siguiente es un ejemplo de cómo utilizar la herramienta de línea de comandos Setspn.exe para agregar un SPN:
setspn - a MSSQLSvc/NLBNAME.corp.domain.com:1433 DomainName \ AccountName

Más información

Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
970536Actualización de herramienta de soporte técnico de Setspn.exe para Windows Server 2003


Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
837361Las entradas del registro de protocolo de Kerberos KDC claves de configuración y en Windows Server 2003


Después de instalar la actualización de seguridad 957097, aplicaciones como SQL Server o Internet Information Services (IIS) pueden fallar al realizar las solicitudes de autenticación de NTLM locales. Para obtener más información acerca de cómo resolver este problema, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
957097MS08-068: Una vulnerabilidad en SMB podría permitir la ejecución remota de código
Consulte la sección "Problemas conocidos con esta actualización de seguridad" de artículo de Knowledge Base 957097 para obtener información detallada acerca de cómo resolver el problema.

Propiedades

Id. de artículo: 887993 - Última revisión: martes, 10 de febrero de 2009 - Versión: 4.1
La información de este artículo se refiere a:
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
Palabras clave: 
kbmt kbtshoot KB887993 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 887993

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com