He implementado una política de HSTS para nuestro sitio. Tengo el encabezado que se sirve en nuestro dominio principal y se envía en la primera respuesta que sirve a la Redirección 304 desde el servidor. (De acuerdo con este artículo , el encabezado debe estar en esta respuesta). Tenemos la directiva includeSubDomains
y preload
y hemos precargado nuestro sitio. Está listado en el archivo de configuración de chromium json.
El problema es que a veces la política se aplica para subdominios, y otras veces no, y no puedo entender por qué.
Aquí se ve una solicitud y respuesta GET inicial de nuestro dominio (he reemplazado nuestro nombre de dominio con REDACTADO):
SOLICITAR
GET http://www.REDACTED.com/ HTTP/1.1
Host: www.REDACTED.com
Connection: keep-alive
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8
Cookie: user_segment=Prospect; _ga=GA1.2.992855402.1446138879; ASPSESSIONIDCQBCRBQD=EIAMMLLAAHBGBIPLEDPCPEFF
RESPUESTA
HTTP/1.1 302 Object moved
Cache-Control: private
Content-Length: 149
Content-Type: text/html; Charset=utf-8
Expires: Wed, 28 Oct 2015 17:31:02 GMT
Location: https://www1.REDACTED.com/
Server: Microsoft-IIS/8.0
Set-Cookie: ASPSESSIONIDSQBTRCQC=MGIFCOMALHAFEDECCCMECFKB; path=/
X-Powered-By: ASP.NET
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Date: Thu, 29 Oct 2015 17:32:01 GMT
<head><title>Object moved</title></head>
<body><h1>Object Moved</h1>This object may be found <a HREF="https://www1.REDACTED.com/">here</a>.</body>
Sé que HSTS funciona al hacer que el navegador almacene en caché la política, pero parece arbitrario cuando la UA (Chrome / Firefox) decide aplicarla. A veces se aplica y otras no, incluso después de haber visitado el dominio principal para "actualizar" la política.