Шаблоны ACL

В Системе реализован механизм доступа на основе списков прав доступа ACL. Access Control List – это список управления доступом, который определяет кто может получать доступ к объекту и какие именно операции разрешено или запрещено выполнять субъекту.

В списке ACL реализуется разрешающий тип доступа. Каждый ACL может быть привязан к одному из объектов:

  • документ;
  • бизнес-объект;
  • папка;
  • связь;
  • коллекция.

Элементами ACL являются принципал (пользователь, роль или группа пользователей) и список разрешений, которыми обладает принципал по отношению к объекту.

Схематично структура ACL представлена на рисунке.

Применение ACL для предоставления доступа определяет правило политики доступа Casbin. Для этого в политике доступа должна быть указана функция «checkAcl». Функция Casbin «checkAcl (Acl, Sub, Action)» включает в себя:

  • Acl – список ACl, состоящий из имени принципала, которому дается разрешение на определенное действие, и список разрешенных действий.
  • Sub – пользователь, запросивший доступ. Пользователь должен содержать данные о своем логине, ролях и групп, в которые входит.
  • Action – запрашиваемое пользователем действие.