Size: a a a

2021 January 06

D

Dmitry in symfony
Игорь
Могу озадасится и поискать пруфы, это про одно и тоже) oidc это скорее расширение стандарта)
источник

SP

Sergey Protko in symfony
есть делигейтед токены - когда ты запрашиваешь до auth tokens с конкретными пермишенами (что бы least previliged принцип соблюбдать)
источник

И

Игорь in symfony
Sergey Protko
встроенная. Нам удобно потому что айдишка юзера лежит в токене и не надо никуда ходить за деталями. Опять же как сказал Игорь - openid только про аутентификацию.
Сергей, я верно понимаю что scope это про предоставления доступов клиентскому ПО, а ABAC это предоставление прав пользователю?
источник

И

Игорь in symfony
Типо разные штуки
источник

SP

Sergey Protko in symfony
Игорь
Сергей, я верно понимаю что scope это про предоставления доступов клиентскому ПО, а ABAC это предоставление прав пользователю?
тип того. Мол скоуп редактировать юзеров у тебя может и есть но вот имеешь ты право редактировать именно этого юзера - это уже про ABAC.
источник

И

Игорь in symfony
Sergey Protko
тип того. Мол скоуп редактировать юзеров у тебя может и есть но вот имеешь ты право редактировать именно этого юзера - это уже про ABAC.
😘😘😘😘😘😘
источник

SP

Sergey Protko in symfony
и JWT могут быть удобны именно тут - когда операцию делает одна система а все атрибуты может ты делать что-то или нет у другой. Мол ты у той системы со своими скоупами по атрибутам проверяешь есть ли пермишены и если есть - выдаешь jwt токен для выполнения собственно операции. И эта операция уже по сути к конкретному юзеру привязана скажем. Мол можешь заливать автораки для этого конкретного юзера
источник

D

Dmitry in symfony
Sergey Protko
встроенная. Нам удобно потому что айдишка юзера лежит в токене и не надо никуда ходить за деталями. Опять же как сказал Игорь - openid только про аутентификацию.
а куда и как потом сервис ходит за правами для конкретного юзера?
или вы права вкладываете в jwt прямо который генериться из openid ?
источник

И

Игорь in symfony
Sergey Protko
тип того. Мол скоуп редактировать юзеров у тебя может и есть но вот имеешь ты право редактировать именно этого юзера - это уже про ABAC.
Есть ещё вопрос. Правильно ли я понимаю Auth сервис хранит в себе абак, выдаёт токен с утверждениями, а конкретный сервис, на основе утверждений выдаёт доступ, например по средствам вортов?
источник

SP

Sergey Protko in symfony
Игорь
Есть ещё вопрос. Правильно ли я понимаю Auth сервис хранит в себе абак, выдаёт токен с утверждениями, а конкретный сервис, на основе утверждений выдаёт доступ, например по средствам вортов?
тут опасно что-то утверждать ибо "хранит у себя abac" -> хранит у себя все атрибуты -> сервис базы данных?)
источник

SP

Sergey Protko in symfony
ну то есть тебе для принятия решений можно или нельзя частенько данные нужны... а эти данные - ими какая-то система владеет. А значит именно эта система должна разрешать или запрещать
источник

SP

Sergey Protko in symfony
можно конечно тупой ACL билдить - мол тупые мэпы... но это иногда плохо скейлится
источник

D

Dmitry in symfony
Sergey Protko
ну то есть тебе для принятия решений можно или нельзя частенько данные нужны... а эти данные - ими какая-то система владеет. А значит именно эта система должна разрешать или запрещать
централизованная система, и мы приходим к тому что я говорил выше
все равно придется иметь сервис авторизации
источник

И

Игорь in symfony
Sergey Protko
тут опасно что-то утверждать ибо "хранит у себя abac" -> хранит у себя все атрибуты -> сервис базы данных?)
Так, тогда мы возможно про разное. В абак я вкладываю "роль менеджер в филиале в Москве" эта штука хранится прям на сервисе аутентификации. Приходит он такой красивый в сервис ордеров, и сервис читая это говорит "ага ты менеджер, ну лови все заказы этого подразделения. А был бы простым юзером хуй пойми откуда, дал бы только твои личные заказы"
источник

SP

Sergey Protko in symfony
Dmitry
централизованная система, и мы приходим к тому что я говорил выше
все равно придется иметь сервис авторизации
централизация чего-то это не оч хорошая идея в контексте распределенных систем. У тебя либо все данные надо "синкать" либо еще чего сложного либо вообще нафига тебе там oauth/openid
источник

И

Игорь in symfony
Все верно понимаю? Просто я так понимаю что ролевая модель. Изжела себя
источник

SP

Sergey Protko in symfony
Игорь
Так, тогда мы возможно про разное. В абак я вкладываю "роль менеджер в филиале в Москве" эта штука хранится прям на сервисе аутентификации. Приходит он такой красивый в сервис ордеров, и сервис читая это говорит "ага ты менеджер, ну лови все заказы этого подразделения. А был бы простым юзером хуй пойми откуда, дал бы только твои личные заказы"
ты тогда про RBAC не? если тебя чисто роли интересуют. ABAC это все ж про атрибуты ресурсов
источник

D

Dmitry in symfony
Sergey Protko
централизация чего-то это не оч хорошая идея в контексте распределенных систем. У тебя либо все данные надо "синкать" либо еще чего сложного либо вообще нафига тебе там oauth/openid
ну тут мы приходим к вопросу - обновления данных, кеширования их в микросервисах и тп для снятия нагрузки и бла бла бла
источник

SP

Sergey Protko in symfony
RBAC можно "эмулировать" за счет скоупов легко и просто
источник

SP

Sergey Protko in symfony
Dmitry
ну тут мы приходим к вопросу - обновления данных, кеширования их в микросервисах и тп для снятия нагрузки и бла бла бла
и прикодим к выводу что централизация плохая идея)
источник