ventana - habilitar cookies internet explorer 11
IE11 no envía cookies de sesión cuando se hace clic en un enlace que se dirige a una nueva pestaña(en la primera solicitud) (3)
Este es un error activo según microsoft. Aparentemente, no hay una forma del lado del servidor para arreglar esto.
Tengo problemas para mantener la sesión al abrir una nueva pestaña inicial (target _blank) desde IE11.
Cuando cierro todas las instancias de IE11 y luego abro un navegador nuevo y navego a la página web de prueba (default.aspx), la página almacena un valor en sesión y muestra el ID de sesión en la página. Si actualizo la página, la ID de la sesión permanece igual. La página tiene un enlace a sí mismo (default.aspx) con un objetivo de _blank. Si hago clic en este enlace, se abre una nueva pestaña, pero la identificación de la sesión es diferente. Si luego actualizo la ventana original, la ID de la sesión ahora coincide con la nueva ventana.
<%@ Page Language="C#" AutoEventWireup="true" Inherits="System.Web.UI.Page" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<% Session["StoredValue"]="Test"; %>
<div>SessionID: <%=Session.SessionID%></div>
<a href="/default.aspx" target="_blank">New Window</a>
<a href="http://www.google.com" target="_blank">3rd Party Window</a>
</body>
</html>
Parece que este problema solo ocurre para la primera ventana en el mismo dominio abierto en una nueva pestaña (he verificado el problema con target = "_ blank" y manteniendo presionado CTRL mientras hago clic en el enlace).
- Cuando veo el tráfico de cookies con Fiddler, veo que la cookie de sesión se envía normalmente en la solicitud inicial de default.aspx. Cuando hago clic en el enlace para abrir la página en una nueva pestaña, la cookie de sesión no se envía en los encabezados de solicitud.
- Si reinicio el navegador, vaya a la página de prueba, abra una nueva pestaña manualmente y pegue el destino del enlace en ella, la cookie se envía correctamente en los encabezados de solicitud y la sesión de la nueva pestaña coincide con la pestaña original como se esperaba.
- Si reinicio el navegador, vaya a la página de prueba, abra google desde un enlace dirigido a _blank en la página de prueba y luego haga clic en el enlace abriendo la página de prueba en una pestaña nueva. La cookie también se envía correctamente en los encabezados de solicitud y la sesión desde la nueva ventana coincide con la ventana original como se esperaba.
Creo que esto es un problema del lado del cliente, pero el sitio se está ejecutando desde Windows Server Standard 2008 R2 SP 1 en un sitio web integrado 4.0 con .NET 4.51 instalado (también probado con solo 4.5 instalados).
El cliente es Windows 7 de 64 bits que ejecuta IE11 (11.0.9600.16476). He verificado el problema en otras máquinas que ejecutan Windows 7 desde IE11 y he confirmado que no es un problema en IE10 desde Windows 8 en modo de escritorio. Todo funciona como se esperaba en Chrome y Firefox.
He verificado que el problema persiste incluso si yo:
- Mover la seguridad de medio alto a medio
- Deshabilitar el modo protegido
- Cambiar privacidad para aceptar todas las cookies
- Agregue el sitio a la lista de sitios web de la zona Intranet local o Sitios de confianza
- Establezca una política de privacidad compacta P3P en los encabezados de respuesta que indique que no se recopila ni utiliza información.
- Establezca una política de privacidad compacta P3P en los encabezados de respuesta que normalmente se aceptarían para permitir cookies de terceros dentro de un iframe en versiones anteriores de IE.
- Cambie la configuración de estado de la sesión de ASP.NET del sitio web a cookieless = "UseCookies" o "false" o elimine el atributo por completo (ASP.NET State Server).
¿Algunas ideas? ¿Alguien más ha visto este problema o similar?
El mismo problema para mi inicio de sesión, pero intentamos resolverlo cambiando algunas configuraciones en IE11 u otros navegadores problemáticos.
Ir a herramientas => Opciones de Internet => Privacidad Haga clic en el botón Sitios. Allí agregue mydomain.com y haga clic en el botón Permitir. Reinicia tu navegador.
No es una solución, sino una pista: notamos un comportamiento similar y lo rastreamos hasta las solicitudes para rootear / browserconfig.xml, haciendo que el usuario no esté autenticado. El servidor envió una nueva cookie de sesión porque Windows no estaba enviando la existente. Las solicitudes posteriores enviaron el nuevo valor de cookie de sesión. Cambiamos nuestro servidor para buscar esta solicitud y no configurar cookies de respuesta.