Совместимо ли reCaptcha с iFrames? - PullRequest
0 голосов
/ 13 ноября 2018

Я оцениваю перемещение сторонних JavaScripts в песочницы iFrames, чтобы не дать им доступ к данным главной страницы.Таким образом, если сторонний скрипт скомпрометирован, могут быть украдены только данные в iFrame.

Одним из потоков, которые мы хотим переместить, является форма авторизации.Прямо сейчас у нас есть JavaScript с Google reCaptcha, который запускает поток регистрации на наших серверах.Я подумал о том, чтобы переместить всю форму и перенести js в «песочницу» iFrame.Таким образом, я могу изолировать javascript reCaptcha от остальной части страницы.Вход в систему должен осуществляться внутри iFrame, и в некотором роде этот iFrame отправит файлы cookie или сеанс на главную страницу.

Как вы думаете, это правильный сценарий?Моя главная проблема заключается в том, будет ли скрипт reCaptcha работать в изолированном iFrame.

Позвольте мне включить 2 сценария дизайна.Сценарий 1:

  • reCaptcha выделяется в iFrame.Как только reCaptcha разрешен, он передает ключ recaptcha в родительский фрейм, и он устанавливается в форме.Один из способов сделать это - через API PostMessage.
  • Таким образом, код reCaptcha не имеет доступа даже к форме авторизации.

Сценарий 2 (если сценарий 1 недействителен):

  • Вся форма авторизации изолирована в iFrame.В этом случае код reCaptcha имеет доступ к форме входа, но не ко всем страницам.

Сценарий 1

Сценарий 2

Для обоих сценариев после отправки формы с ключом reCaptcha,должен обеспечить способ передачи файлов cookie или необходимых ключей на главную страницу без перезагрузки.Это может быть достигнуто также с помощью postMessage.

С уважением,

...