Почему iOS/MacOS игнорирует заголовки ответов Strict Transport Security, связанные с элементами HTML?

Введите следующий URI в адресной строке в любом браузере (Safari, Chrome, Firefox и т. Д.) На устройстве iOS/MacOS

https://mysite/read/test.png

приводит к правильному добавлению домена mysite в кеш HSTS. Последующие запросы к этому домену корректно и всегда отправляются браузером через HTTPS. Полученный ответ на вышеуказанный запрос содержит соответствующий заголовок HSTS:

Strict-Transport-Security: max-age=3600; includeSubDomains

Однако, если я добавлю следующую разметку на страницу HTML (обратите внимание, что URI такой же)

<img src="https://mysite/read/test.png">

заголовок HSTS не учитывается, когда страница HTML загружается в системе iOS/MacOS с использованием Safari. Заголовок HSTS время от времени соблюдается при использовании других браузеров, таких как Firefox. Это всегда соблюдается при использовании Chrome.

Однако когда указанная выше разметка отображается на странице HTML и отображается в браузере в системах Windows, тогда заголовок ответа HSTS учитывается.

Эта проблема всегда возникает на старых устройствах iOS/MacOS, но, похоже, время от времени возникает на более новых версиях (iPhone 8).

Серверное приложение является очень простым приложением ASP.NET Web API.

0 ответов

Другие вопросы по тегам