Контроль доступа

Evado приложение контролирует права доступа к ресурсам с помощью ролевой системы (RBAC). Это позволяет удобно и гибко настраивать правила ограничений.

Разрешения в системе RBAC описывают то, что можно сделать в приложении. Например, Создать статью, Создать пользователя, Удалить комментарий и так далее.

Роли группируют разрешения в одно целое. Например, роль Автор имеет разрешения Создать статью и Редактировать статью, а роль Модератор имеет разрешение Удалить комментарий. Роль может наследовать другую роль.

Назначения связывают пользователей c ролями. Например, если пользователю Adam назначить роль Автор, то Adam сможет делать то, что разрешено Автору - создавать и редактировать статьи.

Перейдите в модуль Администрирование и выберите пункт Security (Безопасность) в боковом меню. Выберите пункт Roles (Роли). По умолчанию в приложение есть две роли. Роль Admin (Администратор) имеет полный доступ к функционалу приложения. Роль Guest (Гость) не имеет каких-либо разрешений и назначается автоматически для неаутентифицированных пользователей.

Для блога необходимо создать дополнительные роли. Роль Writer (Автор), позволяющая создавать и управлять собственными статьями и фотографиям, и роль Editor (Редактор), позволяющая управлять всеми данными Офиса.

Автор

Создайте роль Writer (Автор). Добавьте разрешения Office module (Модуль Офис) для доступа к Офису и Upload files (Загружать файлы). Перейдите в пункт Meta permissions (Разрешения метаданных). Создайте разрешение, которое позволяет управлять собственными статьями и фотографиями:

Разрешение метаданных

Тип Allow (Разрешить) устанавливает разрешающее действие. Тип Deny (Запретить) устанавливает запрещающее действие. Например, Allow to create (Разрешить создавать) или Deny to create (Запретить создавать). Поле Targets (Цели) определяет метаданные, на которые действует разрешение.

Rule (Правило) определяет возможность применения разрешения. Это происходит в момент запроса доступа к цели. Правило Meta author проверяет является ли пользователь создателем того объекта, к которому пытается получить доступ. Если бы правило отсутствовало, то пользователь с ролью Автор мог получить полный доступ к любой статье.

Редактор

Создайте роль Editor (Редактор). Добавьте разрешения Office module (Модуль Офис) для доступа к Офису и Upload files (Загружать файлы). Перейдите в пункт меню Meta permissions (Разрешения метаданных). Откройте разрешение полного доступа к данным Офиса и добавьте роль Editor.

Нажмите кнопку Restart security (Перезапустить безопасность) на верхней панели, чтобы изменения вступили в силу.

Пользователи

Перейдите в пункт Users (Пользователи) бокового меню. Создайте пользователя Walter и добавьте ему роль Writer (Автор). Создайте пользователя Edward и добавьте ему роль Editor (Редактор). Установите флажок Verified (Проверен), чтобы считать электронный адрес подтвержденным и разрешить пользователю работать в системе. Теперь вы можете войти под созданными пользователями и проверить назначенные роли в действии.