Подтвердить что ты не робот

HTTP и HTTPS iframe

Я создаю небольшой виджет, и я хочу разрешить другим использовать его. iframe загружается через HTTP - но я хочу разрешить пользователям входить в систему через HTTPS. т.е. отправить запрос на вход через SSL.

Разрешено ли это в политике одного и того же происхождения? Т.е. сценарий заключается в том, что пользователь может интегрировать мой JavaScript на свой веб-сайт, виджет открывается, и я хочу разрешить им зарегистрироваться через HTTPS?

4b9b3361

Ответ 1

Как правило, неверно использовать встроенный iframe с содержимым, обслуживаемым через HTTPS, на странице, обслуживаемой простым HTTP (или смешанным контентом). Причина этого в том, что нет хорошего способа проверить, что пользователь использует сайт HTTPS, который они намереваются (если только пользователь не хочет проверить источник страницы).

Злоумышленник может очень хорошо заменить контент, который вы обслуживаете следующим образом:

<iframe src="https://your.legitimate.example/loginframe" />

с:

<iframe src="https://rogue.site.example/badloginframe" />

или даже:

<iframe src="http://rogue.site.example/badloginframe" />

Это очень сложно обнаружить для пользователя и побеждает меру безопасности, которую вы пытаетесь внедрить, включив вход через HTTPS.

Ответ 2

@Bruno - я согласен, но я хотел бы указать, что даже проверка источника - как требовательного, как это - на странице, может быть недостаточно для обеспечения безопасности или надлежащего/назначенного адресата, поскольку это часто бывает первоначально служил исходный текст. Если я не ошибаюсь, это можно легко изменить с помощью кода на странице или даже вне страницы javascript (который сам по себе может быть запутан, если кто-то действительно хочет сделать его рядом с невозможным). При этом IF у пользователя есть соответствующий браузер, Я думаю,, что они могут быть в состоянии , если они подозрительны, чтобы начать с - проверить источник iframe, чтобы определить источник этого кода, а затем определить, доверяют ли они источнику... на самом деле не разумное ожидание.

Несмотря на то, что все это можно определить с помощью соответствующих отладчиков и/или программных/DOM-инспекторов и хорошей поддержки цифровой локоть-смазки, OP не может разумно ожидать, что все это сделают (если кто-либо вообще )

Ответ 3

Я сделал несколько тестов. Если вы ссылаетесь на страницу https на другой домен с помощью https, им нужен действительный сертификат SSL.