dd
← Назад

Пакеты для построения SSO

admin | 17.04.22 16:38

Наконец-то закончил доделывать систему единой авторизации для всех своих текущих и будущих сервисов.

Все пакеты, которые в этом деле участвуют, написаны для yii2 на php8.1.

1. https://github.com/ddruganov/yii2-api-auth

Это основной пакет и он управляет основным сервером авторизации. На этот сервер вы отправляете пользователей логиниться/регистрироваться, а в дальнейшем на этом сервере проверяете и обновляете токены авторизации. На этот же сервер уходит запрос для выхода из аккаунта.

Так же, вся работа по определению доступа пользователей к ресурсам производится на этом же сервере через rbac. Каждое разрешение пользователя привязано к определённому приложению из заданного реестра. Кстати, сам учёт приложений в вашей сети ведётся здесь же.

2. https://github.com/ddruganov/yii2-api-auth-proxy

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

Планируется этот пакет перенести на c#, так это будет делом простым, а пощупать разработку апи на шарпе хочется уже слишком давно.


Так как я только закончил работу над пакетами, то многие моменты там оставляют желать лучшего, из самых ярких: readme, тесты и эндпоинты создания ролей/разрешений/приложений. В ближайшую неделю постараюсь с этим разобраться, пока главное, что это всё работает)