Chrome теперь блокирует все запросы jsonp с https на http?
В какой-то момент недавно Chrome прекратил показывать данные, загруженные через jsonp с ошибкой
[заблокировано] На странице https://user.example.com/category/12345 небезопасное содержимое http://livedata.example.com/Data.svc/jsonp/GetData?category=12345&callback=_jsp&_1346417951424=.
Он по-прежнему отлично работает во всех других браузерах и был подтвержден на нескольких разных компьютерах с Chrome.
Единственное упоминание об этой проблеме, о котором я слышал ранее, - это когда страница обслуживалась с одного из собственных доменов Google (я полагаю, это функция безопасности для Служб Google?), Была ли она включена во все домены в недавней версии? хром?
В идеале нам не нужно включать https на нашем поддомене livingata из-за дополнительной нагрузки на сервер, которую это вызывает, все данные общедоступны, поэтому нет необходимости в их шифровании.
2 ответа
Это определенно должно блокировать это - это небезопасно и нарушает обещание HTTPS.
Выборка ресурса JSONP выполняется путем создания <script>
ресурс, указывающий на цель. Это означает, что целевой сервер может запускать любой понравившийся ему JavaScript на странице включения, и, следовательно, любой человек посередине может внедрить произвольный сценарий в страницу, предположительно HTTPS-защищенную (например, добавив кейлоггер или полностью заменив содержимое страницы).). Страница HTTPS с <script>
исходящий из HTTP не более безопасен, чем обычная HTTP-страница.
Вам нужно будет предоставить HTTPS-версию своего фида данных, если вы хотите, чтобы HTTPS-страницы могли иметь к ней доступ. В противном случае браузеры должны, по крайней мере, выдавать предупреждения. Chrome, по умолчанию блокирующий, не меняет природу проблемы, он просто дает вам дополнительный толчок, необходимый для правильного решения.
<script src="//domain.com/script.js"></script>
решает проблему, если удаленный сервер разрешает HTTPS... // автоматически устанавливает протокол на https, если сайт доступен по https.