Resumen
ASP.Net no devuelve un Set-Cookie
encabezado cuando usa IE 10. Lo que significa que, por ejemplo, no puede iniciar sesión en un sitio ASP.Net usando IE10 cuando usa la autenticación de formularios, por ejemplo.
Detalle
Actualmente estamos probando una de nuestras aplicaciones web heredadas con IE 10 [Vista previa 2].
Cuando intentamos iniciar sesión usando la autenticación de formularios, no obtenemos un Set-Cookie
encabezado en la respuesta si el agente de usuario es el de IE 10. Lo hemos intentado con un sitio .Net 2 y .Net 4 en blanco.
Debido a que no podíamos / no lo creíamos, incluso ejecutamos la siguiente solicitud HTTP manualmente telnet
, después de usar todas las herramientas habituales, y obtuvimos la misma respuesta.
GET http://test.ourdomain.co.uk/ HTTP/1.1
Accept: */*
Host: test.ourdomain.co.uk
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)
Content-Length: 0
La solicitud HTTP anterior devuelve no Set-Cookie
en la respuesta. ¡Sin embargo, si simplemente cambiamos el User-Agent para Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/6.0)
que funcione!
¿Alguien más puede replicar esto? No puedo encontrar ningún problema conocido con las cookies IE10 que no sea un problema que afecte a los patrones de URL no estándar.
Revisión
Después de que devio publicó la respuesta original, con una solución alternativa, nullptr ha confirmado que ahora hay una revisión para esto .
http://support.microsoft.com/kb/2600088
He promovido la revisión a la pregunta principal ya que es más útil para futuras referencias, pero por favor, vote a favor de los usuarios mencionados.
fuente
Respuestas:
Encontré esta entrada en MS Connect , el comportamiento es un error reconocido.
Solución alternativa sugerida (de la entrada):
fuente
El problema reside en algunas instancias de IIS que piensan que IE10 es un navegador sin cookies (es decir, no admite cookies). En nuestro caso problemático, el servidor estaba configurando la cookie de autenticación y enviándola de vuelta al navegador, pero luego ignoraba la cookie en solicitudes posteriores.
La solución es parchear las capacidades del navegador para que sepa que IE10 puede hacer cookies (descrito en otra respuesta en esta página), o cambiar el comportamiento predeterminado para forzarlo a usar cookies incluso si cree que el navegador no puede hacer cookies.
Acabamos de agregar lo siguiente a nuestra sección de formularios en web.config:
cookieless = "UseCookies"
fuente
Hay una revisión disponible para este problema [1].
1) http://support.microsoft.com/kb/26000881) http://support.microsoft.com/kb/2600217 (reemplaza KB anterior)
Además, [2] sugiere que esto llegará a Windows Update en enero de 2012.
2) http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx
fuente
Gracias por la ayuda. Funcionó no.
Copié el archivo del sitio a
C:\WINDOWS\microsoft.net\Framework\v2.0.50727\CONFIG\Browsers
Ejecutar en el símbolo del sistema
C:\WINDOWS\microsoft.net\Framework\v2.0.50727>aspnet_regbrowsers.exe -i
Reinicie el IIS.
Probado el sitio y funciona sin ningún error.
Gracias de nuevo por los comentarios
fuente
Una actualización para la respuesta nullptr.
Hoy intenté descargar Microsoft KB2600088. Después de recibir el enlace por correo electrónico, hice clic en él y luego me llevó a la página que dice que ya no está disponible.
Pruebe esto: http://support.microsoft.com/kb/2600217
Ese enlace es un reemplazo para KB2600088 y KB2628838.
MIcrosoft .Net Framework 4.5 también está disponible ahora.
fuente
Instaló los diversos parches que todos mencionan y, por alguna razón, el problema no se resolvió.
Se instaló .NET Framework 4.5 Full y el problema desapareció.
No tiene que actualizar ningún proyecto para apuntar a 4.5. Simplemente instálelo en el servidor.
fuente