RBAC без магии: 58 атомарных прав в стройке
В PDP собрали RBAC не по принципу «админ всё может», а через 58 атомарных разрешений по схеме {entity}_{can_view|can_create|can_edit|can_delete}. Доступ режем по ролям и по конкретным объектам.

В PDP мы собрали RBAC, где не «админ всё может», а 58 атомарных разрешений по схеме {entity}_{can_view|can_create|can_edit|can_delete}. Да, почти как LEGO для доступа — только если собрать криво, кто-то внезапно увидит не свои сделки 🙃
Главное: доступ режем не только по роли, но и на уровне конкретных объектов. Пользователь видит только те дома и помещения, к которым привязан. Поэтому прораб не лезет в сделки, а менеджер по продажам — в замечания инспекторов.
Самый «весёлый» слой — мультиролевые пересечения: один и тот же человек может быть инспектором, ответственным за замечание и наблюдателем одновременно. Тут уже не «назначили роль и забыли», а нормальная инженерия. На фоне тренда на fine-grained access control это уже не опция, а база для enterprise-систем.