Авторизация vk.com + iframe = проблемы

Захотел сделать систему комментариев на сайте с возможностью авторизации в социальных сетях. Делать «как обычно», то есть со всплывающим окном или переходом на другую страницу с последующим возвратом на исходную не захотелось, а захотелось сделать так: на странице есть скрытый iframe, при щелчке по радио-кнопке «отправить комментарий через Вконтакте» происходит отображение этого iframe и загрузка в него страницы oauth.vk.com/authorize?client_id=*****&scope=photo&response_type=code&redirect_uri=http://www.***.com/auth.php
В случае успеха, на странице редиректа вызывается JS код, который вставляет на страницу аватар пользователя и его имя.
Всё хорошо работает, если человек уже авторизован в социальной сети, но если нет, то в iframe загружается страница в коде которой
  if (parent && parent != window) {
    location.href = "https://oauth.vk.com/blank.html";
  }

И происходит перенаправление на пустую страницу с надписью «Login success».

Подскажите, можно ли как-то осуществить авторизацию через ВКонтакте способом, который я описал (т.е. через появляющийся iframe)
  • Вопрос задан
  • 9240 просмотров
Пригласить эксперта
Ответы на вопрос 2
@nick4fake
Уже ответили, что никак, но уточню. Такое делать нельзя вообще в принципе (и не с ВКонтакте), т.к. КАК пользователь узнает, что это не фишинговая страница? Со стороны ВКонтакте было бы безрассудным позволять iframe, а со стороны пользователя — крайне глупо вводить свои данные в таком окошке.
Ответ написан
Комментировать
DjPhoeniX
@DjPhoeniX
Hardcore iOS & ESP developer & DJ
VK не даёт возможности встроить себя в iframe из соображений безопасности. Авторизовать пользователя можно, только открыв окно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы