Size: a a a

2021 January 06

D

Dmitry in symfony
у вас задача то как стоит ?
источник

И

Игорь in symfony
Dmitry
вы уверены что вам вообще oauth server нужен ?
Нуу я не знаю ещё хороших флоу на эту тему. По факту мне нужна авторизация с горой скоупов для доступа к ресурсам, но я что то скептично отношусь к такому жирному токену...
источник

И

Игорь in symfony
Dmitry
у вас задача то как стоит ?
Задача, в распределенной системе сделать аутентификацию которая будет масштабироваться "как угодно", и управляется из админки🤔
источник

D

Dmitry in symfony
ну сделайте скоупы по разделам, заказы, статистика и хз что там у вас
а каждый раздел уже будет смотреть на токен и по абак решать что там куда можно
источник

D

Dmitry in symfony
но это так, пальцем в небо
источник

И

Игорь in symfony
Dmitry
ну сделайте скоупы по разделам, заказы, статистика и хз что там у вас
а каждый раздел уже будет смотреть на токен и по абак решать что там куда можно
Тогда у нас получается пачка абаков не управляемая. Разве нет?
источник

D

Dmitry in symfony
почему? у вас же уже есть абак на каждого пользователя, он уже работает
источник

D

Dmitry in symfony
oauth2 токен у вас это просто идентификатор пользователя с "урезанными правами"
источник

И

Игорь in symfony
Так, давайте по порядку. Абак, и скоуп предоставляемых сервисам которые хотят получить доступ это разные вещи. Я все правильно понимаю?
источник

D

Dmitry in symfony
да, разные
источник

И

Игорь in symfony
Ну тоесть сервису смотреть ордеры можно, а конкретному пользователю нельзя
источник

И

Игорь in symfony
Найс 👍
источник

D

Dmitry in symfony
погодите, я совсем запутался
источник

D

Dmitry in symfony
сервис ваш или 3-й стороны ? вы кому токены предоставлять собрались ?
источник

И

Игорь in symfony
Теперь как я это вижу, у нас сервис аутентификации выдаёт и доступы для сервисов, и информацию о пользователе на основе которой конкретный сервис, позволит что то сделать. Всё правильно? Или вы говорите, что абак должен висеть на каждом сервисе, и внутри него хранится вся внутрянка по правам?
источник

D

Dmitry in symfony
oauth2 предоставляет третьей стороне идентификатор пользователя на определенные действия в своей системе
принцип работы тут: разрешено только то что разрешено, остальное запрещено
поэтому у вас 3-я сторона не может "смотреть сервисы" просто так по дефолту
источник

И

Игорь in symfony
Dmitry
сервис ваш или 3-й стороны ? вы кому токены предоставлять собрались ?
Токены планируется предоставлять всем кто их захочет. И нашим сервисам, и внешним системам
источник

D

Dmitry in symfony
ну вот пусть сервисы и работают по этим токенам
если это сервис заказов, значит он будет работать с заказами доступными пользователю этого токена
и только
источник

D

Dmitry in symfony
а какие именно заказы доступны этому пользователю решает уже сервис который собственно эти заказы хранит на основании идентификатора пользователя по своему абаку
источник

И

Игорь in symfony
Dmitry
ну вот пусть сервисы и работают по этим токенам
если это сервис заказов, значит он будет работать с заказами доступными пользователю этого токена
и только
Да но тут накладочка. Я какраз и пытаюсь её уточнить. В моем понимание абак это что то вроде
Company:MFC
Position:GeneralManager
City:Moscow

Я предполагаю что данные утверждения получат доступ ко всем ордерам в регионе Москвы созданные компанией MFC

Это нам придоставит централизованный abac

Есть по который помогает красиво фильтровать заказы, оно аутентифицируется у нас и ему выдаётся список прав например
read:orders (конкретный scope)

Тогда получается что понятие прав доступа разное тоесть предоставить права на чтения ордеров приложению
!= что конечный пользователь сможет их увидеть. Это разные истории
источник