Pueden enviar solicitudes HTTP SEARCH que no tienen un cuerpo SEARCH a un servidor Web que se publica en ISA Server 2006

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

Síntomas

Tenga en cuenta la situación siguiente:
  • Publicar un servidor Web en Microsoft Internet Security and Acceleration (ISA) Server 2006.
  • La escucha de Web de ISA Server se configura para utilizar la autenticación de HTTP y validar las credenciales de usuario mediante la opción de autenticación integrada de Windows (Active Directory) .
  • Un usuario utiliza Windows Internet Explorer para tener acceso al servidor Web.
En este escenario, se pueden enviar solicitudes HTTP SEARCH que no tienen un cuerpo SEARCH al servidor Web que se publica. Este problema puede producir comportamiento inesperado de acceso al Web. Por ejemplo, si publica Microsoft Office Outlook Web Access en ISA Server 2006, verá que la carpeta Bandeja de entrada no se muestra correctamente.

Causa

Internet Explorer puede enviar una solicitud HTTP SEARCH que no tiene un cuerpo HTTP en la primera parte del protocolo de enlace NTLM autenticación. Si se envía dicha solicitud determinada en la conexión TCP que ya se ha autenticado por ISA Server, ISA Server continúa utilizando el contexto de autenticación actual en lugar de reauthenticating el cliente. En esta situación, la solicitud SEARCH no tiene un cuerpo SEARCH se envía al servidor Web publicado.

Solución

Para resolver este problema, siga estos pasos:
  1. Aplicar el paquete de revisiones descrita en el siguiente artículo de Microsoft Knowledge Base:
    945821Descripción del paquete de revisión ISA Server 2006: 5 de diciembre de 2007
  2. Inicie el Bloc de notas.
  3. Copie el código siguiente y, a continuación, péguelo en el Bloc de notas.
    Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
    Const SE_VPS_NAME = "EnablePOSTReauthentication"
    Const SE_VPS_VALUE = true
    
    Sub SetValue()
    
        ' Create the root obect.
        Dim root  ' The FPCLib.FPC root object
        Set root = CreateObject("FPC.Root")
    
        'Declare the other objects needed.
        Dim array       ' An FPCArray object
        Dim VendorSets  ' An FPCVendorParametersSets collection
        Dim VendorSet   ' An FPCVendorParametersSet object
    
        ' Get references to the array object
        ' and the network rules collection.
        Set array = root.GetContainingArray
        Set VendorSets = array.VendorParametersSets
    
        On Error Resume Next
        Set VendorSet = VendorSets.Item( SE_VPS_GUID )
    
        If Err.Number <> 0 Then
            Err.Clear
    
            ' Add the item
            Set VendorSet = VendorSets.Add( SE_VPS_GUID )
            CheckError
            WScript.Echo "New VendorSet added... " & VendorSet.Name
    
        Else
            WScript.Echo "Existing VendorSet found... value- " &  VendorSet.Value(SE_VPS_NAME)
        End If
    
        if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then
    
            Err.Clear
            VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE
    
            If Err.Number <> 0 Then
                CheckError
            Else
                VendorSets.Save false, true
                CheckError
    
                If Err.Number = 0 Then
                    WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"
                End If
            End If
        Else
            WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"
        End If
    
    End Sub
    
    Sub CheckError()
    
        If Err.Number <> 0 Then
            WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
            Err.Clear
        End If
    
    End Sub
    
    SetValue
    
    Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin ninguna garantía tanto expresa como implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad e idoneidad para un fin determinado. Este artículo se supone que está familiarizado con el lenguaje de programación que se muestra y con las herramientas que se utilizan para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento. Sin embargo, no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos que cumplan sus requisitos específicos.
  4. Guarde el archivo como un archivo de secuencia de comandos de Microsoft Visual Basic. Para ello, utilice la extensión de nombre de archivo .vbs cuando guarda el archivo. Por ejemplo, utilice el siguiente nombre para guardar el archivo:
    EnableSEARCHReauthentication.vbs
  5. Inicie un símbolo del sistema, cambie a donde guardó el archivo EnableSEARCHReauthentication.vbs y, a continuación, ejecute el comando siguiente:
    cscript EnableSEARCHReauthentication.vbs
Nota Para revertir a la configuración predeterminada, editar la secuencia de comandos cambiando "const SE_VPS_VALUE = true"a"const SE_VPS_VALUE = false." Guardar la secuencia de comandos y, a continuación, ejecútela de nuevo.

Más información

Este hotfix reemplaza el hotfix descrita en el siguiente artículo de Microsoft Knowledge Base:
942638Pueden enviar solicitudes POST que no tienen un cuerpo POST a un servidor Web que se publica en ISA Server 2006
La revisión 942638 se aplica sólo a solicitudes HTTP POST. Sin embargo, esta nueva revisión se aplica a todos los métodos HTTP excepto para el método GET.

En este artículo describe un problema que puede producirse con solicitudes HTTP SEARCH. El problema actual normalmente se produce cuando publicar Outlook Web Access en ISA Server. Sin embargo, esta revisión también puede resolver problemas similares para otros métodos HTTP que pueden incluir un cuerpo HTTP excepto para el método GET.

Referencias

Para obtener más información acerca de la terminología relativa de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 945882 - Última revisión: viernes, 04 de enero de 2008 - Versión: 1.1
La información de este artículo se refiere a:
  • Microsoft Internet Security and Acceleration Server 2006 Standard Edition
  • Microsoft Internet Security and Acceleration Server 2006 Enterprise Edition
Palabras clave: 
kbmt kbexpertiseinter kbqfe KB945882 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): 945882

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