Небезопасное содержимое в iframe на защищенной странице
Я нахожусь в процессе разработки приложения для клиента, которое будет иметь сертификат SSL и обслуживаться по протоколу https. Однако для интеграции со своим существующим сайтом они хотят обеспечить свою навигацию внутри iframe.
Я вижу, что это вызывает проблемы, так как я ожидаю, что браузер будет жаловаться на сочетание безопасного и небезопасного контента на странице. Я посмотрел на подобные вопросы здесь, и все они, похоже, относятся к этому наоборот (безопасный контент в iframe).
то, что я хотел бы знать, тогда: это вызовет проблемы с небезопасным контентом, включенным в iframe , помещенным на безопасную страницу, и если да, то какие проблемы они будут?
В идеале, если это не хорошая идея (и у меня есть сильное чувство, что это не так) мне нужно быть в состоянии объяснить это клиенту.
3 ответов:
если доступ к Вашей странице осуществляется с помощью
https://www.example.com/main/index.jsp(SSL) тогда ваш браузер будет жаловаться с "Эта страница содержит как безопасные, так и небезопасные элементы", если есть какие-либо ресурсы в HTML-коде, на которые ссылаются сhttp://(не-SSL). Это включает в себя фреймы.если ваша страница навигации размещена на том же сервере, вы можете предотвратить сообщение "небезопасное содержимое", используя относительный URL-адрес, подобный этому...
<iframe src="/app/navigation.jsp" />из вашего вопроса это звучит, как ваша навигация страница обслуживается с отдельного хоста, и вы вынуждены использовать что-то вроде этого
<iframe src="http://otherserver.example.com/app/navigation.jsp" />что, конечно, вызовет сообщение "небезопасный контент" в вашем браузере.
ваши единственные решения-либо
реализовать SSL на сервере, удерживающем вашу навигационную страницу, чтобы вы могли использовать
https://для вашего iframe ссылки, илипереместите навигационное приложение на тот же сервер, чтобы вы могли использовать относительный url.
лично я не могу понять, почему ваша навигация будет на другом хосте, потому что тогда вы получите проблемы с междоменными сценариями JavaScript (если только не задействован какой-то фанк JSONP).
Если ваша страница http, то она позволяет iframe с содержимым https.
но если ваша страница https, то она не позволяет http-контент.
давайте проставим следующие возможности.
page - iframe - status http - http - allowed http - https - allowed https- http - not allowed https- https - allowed
Попробуйте удалить символы http: в значении атрибута src следующим образом:
<iframe src="//example.com/thefile.htm"></iframe>Это, конечно, обходной путь, безопасность важна, поэтому не обходите беспечно, но в любом случае это однажды заставило меня пройти мимо подобной проблемы.
Comments