Sé que una cookie con secure
bandera no se enviará a través de una conexión no cifrada. Me pregunto cómo funciona esto en profundidad.
¿Quién es el responsable de determinar si la cookie se enviará o no?
Sé que una cookie con secure
bandera no se enviará a través de una conexión no cifrada. Me pregunto cómo funciona esto en profundidad.
¿Quién es el responsable de determinar si la cookie se enviará o no?
El cliente establece esto solo para conexiones cifradas y esto se define en RFC 6265 :
El atributo Seguro limita el alcance de la cookie a los canales "seguros" (donde el agente de usuario define "seguro"). Cuando una cookie tiene el atributo Seguro, el agente de usuario incluirá la cookie en una solicitud HTTP solo si la solicitud se transmite a través de un canal seguro (generalmente HTTP sobre Seguridad de la capa de transporte (TLS) [RFC2818]).
Aunque aparentemente es útil para proteger las cookies de los atacantes de red activos, el atributo Seguro protege solo la confidencialidad de la cookie. Un atacante de red activo puede sobrescribir las cookies seguras de un canal inseguro, interrumpiendo su integridad (consulte la Sección 8.6 para obtener más detalles).
Solo otra palabra sobre el tema:
Omitir
secure
porque su sitio webexample.com
es completamente https no es suficiente.Si su usuario está llegando explícitamente
http://example.com
, será redirigido a,https://example.com
pero ya es demasiado tarde; la primera solicitud contenía la cookie.fuente
secure
?