RBAC
Role-based access control (RBAC) - управление доступом на основе ролей.
В системе создаются роли на основе бизнес-ролей. Роли присваиваются пользователям, а компоненты системы ограничивают или разрешают определенные действия для каждой роли.
Матрица доступа для RBAC - это доступность действия в системе от роли пользователя.
RBAC используется в случаях когда бизнес-правила одномерны и могут быть просто и однозначно разбиты по ролям.
Развитие системы
При усложнении системы создаются дополнительные роли и в итоге число ролей равно числу различных комбинаций всех атрибутов доступа.
Создаются новые и новые роли для новых комбинаций в матрице доступа.
Роли прописаны в коде и на основе их значений запрещаются или разрешаются определенные действия в системе.
Доступ к данным
На основе ролей сложно организовать нибукий доступ к данным.
Нет никакой возможности сделать разграничение доступа к данным на основе ролей и свойств данных.