Новинка: ВКонтакте авторизация
Для чего нужно и подводные камни
Ни для кого не секрет, что крупные профессиональные сайты, фирмы и интернет-сообщества имеют в социальной сети ВКонтакте свои группы. Таким образом, за счет ВКонтакте происходит популяризация сторонних сайтов. Да и кроме этого, переходя на незнакомый сайт, на котором нужна авторизация, намного проще ввести логин и пароль от аккаунта ВКонтакте, чем проходить порой громоздкую процедуру регистрации. Конечно, это – одна большая дыра с точки зрения безопасности. Ведь есть огромный риск ввести данные входа на левый сайт, но с точки зрения удобства – новинка не знает себе альтернативы. Понравилось? Хотите такую «фишку» и на свой сайт? Тогда все, что вам понадобиться, это Open API и немного времени.
Авторизация через ВКонтакте пишется полностью на PHP. Приводить здесь весь код – смысла нет, озвучим и поясним лишь некоторые наиболее важные моменты.
ВКонтакте авторизация: пара слов
Главные действия выполняет один класс. Назовем его Auth_Vkontakte. Он содержит 3 метода:
— is_auth — этот метод будет возвращать ID пользователя ВКонтакте. Если же пользователь не авторизован через OpenAPI, будет возвращено false;
— logout — данный метод отвечает за «разлогинивание» пользователя. При этом он очищает куки, которые добавляет сайт ВКонтакте. Заметим, что присутсвующий для этих целей в OpenAPI метод logout почему-то не всегда работает корректно;
— render_login_form — метод возвращает HTML-код, необходимый для отображения кнопки «Вход ВКонтакте». Код уже сразу содержит все скрипты.
Чтобы PHP авторизация ВКонтакте работала, вам придется добавить поддержку социальной сети в движок своего сайта.
Шаги работы должны быть примерно следующие:
— когда пользователь ВКонтакте вошел, перекидываем его на отдельную страницу. И там уже проверяем, зарегистрирован пользователь с указанным логином или нет. Если не зарегистрирован, необходимо предложить ему простейшую форму регистрации. Если зарегистрировался, переводим его главную страницу;
— необходимо создать backend. Он отвечает за проверку куков ВКонтакте при помощи Auth_Vkontakte::is_auth. Если возвращаемое значение не False – значит пользователь с таким логином уже у вас зарегистрирован. Если возвращается False – снова показываем пользователю форму регистрации;
— используя logout, удаляем куки ВКонтакте (свою не трогаем). Для этого используем метод Auth_Vkontakte::logout.
Общий принцип работы авторизации ВКонтакте таков. Если что-то непонятно – ищите исходники и разбирайтесь уже в процессе работы.
Поделитесь информацией с друзьями Вконтакте с помощью специальной кнопки
Советуем также обратить внимание:
Рубрика: Доступ ко Вконтакте |