Size: a a a

Архитектура ИТ-решений

2020 April 07

AS

Aleksandr Semyannikov in Архитектура ИТ-решений
dreamore
оно самое.... построить отчет, содержащий данные, доступ к которым есть у подразделения, в которое входит пользователь...
построить отчет - действие, тут просто. хочешь внутрь токена гранты, хочешь фильтруй на шлюзе
а вот дать доступ к одним данным и не дать к другим - котовасия
Дать доступ к одним данным и не дать к другим - типичная ситуация в системах документооборота, например
источник

AS

Aleksandr Semyannikov in Архитектура ИТ-решений
Phil Delgyado
Тут не удается обойтись только gateway, вся эта фигня начинает просачиваться вглубь модели данных (
Фил, а какие есть еще варианты? В голову приходит только два способа:
1. Фильтрация
2. Отражение прав в модели данных

Первый вариант помедленнее, второй усложняет модель, а дальше лавируем между ними в зависимости от нагрузок\потребностей.
источник

NK

Nikita Kiselev in Архитектура ИТ-решений
фильтрация - дорого, но иногла токлько она (
источник

NK

Nikita Kiselev in Архитектура ИТ-решений
модель досутпа к данным, зависящая от данных - ночной кошмар при тюнинге производительности
источник

СС

Сергей Старцев in Архитектура ИТ-решений
еще кстати есть СУБД, которые позволяют ограничивать доступ на уровне строки/поля (например, Postgres) 😊
https://wiki.postgresql.org/wiki/Row-security
источник

NK

Nikita Kiselev in Архитектура ИТ-решений
оракл
источник

СС

Сергей Старцев in Архитектура ИТ-решений
Nikita Kiselev
оракл
ну, и он тоже, как прородитель... но кусается конечно ценой 😊
источник

NK

Nikita Kiselev in Архитектура ИТ-решений
но! таки FGA требует чтобы у базы в сессии была инфа на основе кторой фильтровать
источник

NK

Nikita Kiselev in Архитектура ИТ-решений
т.е. по сути все роли и права достать придется, но отдать их в БД
источник

NK

Nikita Kiselev in Архитектура ИТ-решений
вместо фильтра, например, в Java. не факт что будет быстрее
источник

NK

Nikita Kiselev in Архитектура ИТ-решений
а главное размаанная логика превратится в кошмар саппорта
источник

EN

Evgeniy Nikonorov in Архитектура ИТ-решений
не это главное, главное что ты как архитектор этой байды перестанешь спать спокойно)
источник

SL

Sergey Lukin in Архитектура ИТ-решений
Roman Roman
ну вот динамику в чем лучше презентовать ?
разбить на куски и каждый в sequence diagram (главное не перегружать их, большие сиквенсы диаграммы это зло)
источник

EN

Evgeniy Nikonorov in Архитектура ИТ-решений
универсального механизма нет, т.к. в общем случае надо фильтровать и по региону и по сегменту и по мало чему еще + замещение, подчинение и прочее. А еще есть принципиально разные группы сотрудников, например очереди заявок и там совсем другие правила
источник

EN

Evgeniy Nikonorov in Архитектура ИТ-решений
и все это просачивается в бизнес логику в конечном итоге
источник

RR

Roman Roman in Архитектура ИТ-решений
Sergey Lukin
разбить на куски и каждый в sequence diagram (главное не перегружать их, большие сиквенсы диаграммы это зло)
ясно, спасибо большое
источник

SL

Sergey Lukin in Архитектура ИТ-решений
Evgeniy Nikonorov
универсального механизма нет, т.к. в общем случае надо фильтровать и по региону и по сегменту и по мало чему еще + замещение, подчинение и прочее. А еще есть принципиально разные группы сотрудников, например очереди заявок и там совсем другие правила
добавим еще, "владелец объекта" и все становится куда сложение : )
источник

EN

Evgeniy Nikonorov in Архитектура ИТ-решений
а еще есть бизнес администраторы, которые вроде бы никто, а на самом деле делают дела руководителей))))
источник

EN

Evgeniy Nikonorov in Архитектура ИТ-решений
а еще руководители бывают разных уровней
источник

EN

Evgeniy Nikonorov in Архитектура ИТ-решений
да, заместители руководителей еще)))
источник