Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


phpbb:automatic-registration-of-new-users-and-authorization-by-social-networks-facebook-google-vk-yandex-mail-ru-ok-in-phpbb3-3-1:connect-to-facebook-api

Автоматическая регистрация и авторизация через социальные сети на форуме phpBB v3.1. Часть 2.5. Подключение "Facebook"

Для подключения форума к учётной записи социальной сети Facebook мы предварительно должны создать в этой социальной сети отдельную учётную запись, от имени которой будет настроено подключение. Предположительно, это будет учётная запись для человека, являющегося администратором форума phpBB. Залогинившись в социальную сеть от имени этой учётной записи перейдём по ссылке:

https://developers.facebook.com/apps.

Здесь сначала нам потребуется получить статус разработчика приняв условиями соглашения:

После регистрации пользователя социальной сети в качестве разработчика появится страница создания нового приложения Add a New App. Выберем вариант Website

Введём имя приложения и нажмём кнопку Create New Facebook App ID

Затем введём контактный адрес электронной почты, выберем категорию приложения (можно выбрать любую) и нажмём кнопку Create App ID

После этого откроется длинная страница с кодом SDK, прокрутим страницу вниз, введём URL форума в окно Site URL и нажмём кнопку Next

Затем страница ещё больше увеличится. Снова прокрутим страницу вниз и нажмём ссылку входа в панель управления приложениями Skip to Developer Dashboard

Здесь мы сможем получить информацию о реквизитах только что созданного нами веб-приложения App ID и App Secret.

Внимание!
Никому не сообщайте секретный ключ App Secret приложения.

Не смотря на то, что мы создали приложение и уже получили нужные нам данные для интеграции с форумом phpBB, приложение в данный момент выключено. Для того, чтобы его включить, перейдём в раздел App Review

Включим переключатель в вопросе Make <AppName> public? = Yes

Подтвердим запрос на переключение приложения в общедоступный режим:

После этого, в таблице ниже мы увидим информацию об атрибутах пользователей социальной сети, которые будут доступны данному приложению.

Теперь переходим в Административный раздел форума на вкладку НАСТРОЙКА РАСШИРЕНИЙ > Раздел СОЦИАЛЬНАЯ АВТОРИЗАЦИЯ > Facebook

Здесь включим авторизацию через Facebook и укажем ранее полученные данные ID приложения и Секретный ключ приложения (App Secret). Группа доступа для новых регистрируемых через социальную сеть пользователей – По умолчанию. Сохраним изменения кнопкой Отправить

Помимо сделанных настроек на стороне нашего форума phpBB, для текущей версии расширения авторизации (2.0.1) потребуется внести одну правку в код скрипта, отвечающего за вызов API Facebook:

…/forum/ext/bb3mobi/social/oAuth/facebook.php

находим строку:

facebook.php
$params = array('access_token' => $access_token);

и заменяем её на строку:

facebook.php
$params = array('access_token' => $access_token, 'fields' =>'id,name,first_name,last_name,email,birthday,picture');

Сохраняем изменения в файле.

На этом настройку интеграции авторизации форума phpBB c социальной сетью можно считать выполненной. Остаётся проверить результат.

Для проверки можно создать в социальной сети Facebook тестового пользователя, залогиниться с его учётными данными в социальной сети, а затем перейти на форум и в правом верхнем углу нажать кнопку входа:

Форум перенаправит пользователя на страницу входа социальной сети, где пользователю будет задан вопрос о согласии с тем, что Форум запрашивает учётные данные пользователя из базы данных социальной сети.

После согласия будет выполнена процедура автоматической регистрация нового пользователя на форуме и будет выполнен вход этого пользователя на форум:

Если пользователь перейдёт в раздел личных настроек в Профиль > Мои аккаунты, то сможет увидеть информацию о подключении к локальной учётной записи форума аккаунта социальной сети Facebok:

Во время автоматической регистрации на почтовый ящик пользователя указанный в профиле социальной сети придёт письмо, в котором будет содержаться имя пользователя и пароль в локальной базе пользователей форума phpBB на тот случай, если авторизация через социальную сеть по какой-то причине окажется неработоспособной.

Все последующие входы пользователя на форум будут выполняться в автоматическом режиме без излишних запросов.

Перейти в оглавление...


Автор первичной редакции:
Алексей Максимов
Время публикации: 11.04.2016 13:35

Обсуждение

Ваш комментарий:
 

phpbb/automatic-registration-of-new-users-and-authorization-by-social-networks-facebook-google-vk-yandex-mail-ru-ok-in-phpbb3-3-1/connect-to-facebook-api.txt · Последние изменения: 11.04.2016 13:38 — Алексей Максимов