Эта функция использует Google Firebase и позволяет входить в систему с помощью Google, электронной почты и пароля Firebase, Facebook и Github.
Установка
Ну нужен проект Firebase, тогда и настроим Disciple.Tools.
Конфигурация приложения Firebase
Создайте проект Firebase на https://console.firebase.google.com с любым именем. Аналитика не нужна.
Веб-приложение
На панели управления нажмите, чтобы создать веб-приложение. Выбирайте любой никнейм. Сохраните настройки, которые выглядят так. Они нам понадобятся позже.
const firebaseConfig = {
apiKey: "AIza-***",
authDomain: "disciple-tools-auth.firebaseapp.com",
projectId: "disciple-tools-auth",
storageBucket: "disciple-tools-auth.appspot.com",
messagingSenderId: "*********",
appId: "******"
};
Аутентификация
В левом меню выберите «Создать», затем выберите «Аутентификация».
На вкладке «Аутентификация» добавьте провайдеров, которых вы хотите включить (Google, Email and Pass, Facebook и т. д.).
Пример Google:
Нажмите Добавить нового поставщика. Потом Гугл. Включите поставщика. Выберите имя, которое увидят пользователи, например «disciple-tools-auth».
Разрешенные домены
Перейдите на вкладку «Настройки». В разделе «Авторизованный домен» добавьте домен вашего экземпляра DT. Примеры: "disciple.tools" или "*.disciple.tools
Настройка ДТ
Перейдите в Настройки (DT) > Вход в систему SSO. На мультисайте с помощью плагина Multisite DT перейдите в раздел «Администратор сети» > Disciple.Tools > Вход в систему единого входа.
Откройте вкладку Firebase.
Сформируйте приведенную выше конфигурацию firebaseConfig, добавьте значение apiKey AIza… к ключу API Firebase, значение projectId к идентификатору проекта Firebase и appId к идентификатору приложения Firebase. Нажмите «Сохранить».
На вкладке «Общие» установите для параметра «Включить пользовательскую страницу входа» значение «вкл.» и сохраните.
На вкладке «Поставщики удостоверений» установите для поставщика «Google» значение «Вкл.» и сохраните.
Выйдите из системы и попробуйте!
УСТРАНЕНИЕ НЕПОЛАДОК
- Сообщение об ошибке «Класс «Firebase\JWT\Key» не найден» может указывать на то, что используется старая версия плагина мобильного приложения.