Skip to content

Implementation PHP Oauth2 Server with Open ID Connect

License

Notifications You must be signed in to change notification settings

Uru-ruru/oauth2-oidc

Repository files navigation

Oauth2 with OIDC for Bitrix

Вариант реализации Oauth 2.0 на основе сервера - oauth2-server, интеграции uru/bitrix-mvc и slim 4.

Дополнен OpenID Connect https://openid.net/specs/openid-connect-core-1_0.html (OIDC) и реализует аутентификацию пользователя через логин/пароль так и SSO для внешних клиентов. Может использоваться для интеграции Бека на Битрикс с React или Vue фронтом.

Структура

  • migrations - миграции по созданию необходимых HL инфоблоков в Битриксе
  • src/Api/V2 - реализация сервера
  • src/Models/HL - модели сущностей для работы сервера
  • src/Models/User.php - обертка над $USER Битрикса (как пример работы с пользователем)
  • src/api.php - роутинг API

Настройка

В данном описании не учитываются настройки используемых пакетов. Настройка сервера https://oauth2.thephpleague.com/installation/, slim https://www.slimframework.com/docs/v4/start/installation.html

Битрикс

  • Добавить в /local/php_interface/init.php
$em = Bitrix\Main\EventManager::getInstance();
$em->addEventHandler('main', 'OnAfterUserLogin', [UserHandlers::class, "redirectAfterLogin"]);
  • Создать файл конфига в папке 'config/.env.php' по примеру в папке config/.env.example.php

Реализованные методы API

Варианты авторизации

About

Implementation PHP Oauth2 Server with Open ID Connect

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages