PHP-платформа Wad-er содержит встроенные средства для аутентификации пользователей (по логину, паролю, запоминание IP-адреса) и для их авторизации - управления доступом к функциям и объектам (страницам, документам и модулям) – по ролям RBAC (Role Based Access Control).
Каждая страница WEB-приложения может быть публичной (отображаться на сайте без аутентификации) или приватной. Приватная страница может быть доступной для пользователя только после его аутентификации и отображаться на сайте или в панели управления.
PHP-платформа Wad-er позволяет обеспечить контроль доступа к функциям и страницам WEB-приложения для неограниченного числа пользователей и групп пользователей (в соответствии с выполняемыми ими ролями).
Интерфейс WEB-приложения (страницы и опции динамического меню), который доступен для пользователя после его аутентификации, соответствует его правам.
Право является объектом. Запись о нем в БД содержит его ID и название, родитель (например, модуль, на который устанавливаются права доступа).
Роль является объектом. Роль - это определенный набор прав для группы пользователей. Запись о роли в БД содержит ID и название, родитель (например, модуль, с которым связана роль).
Управление доступом – Права. Конфигурация wACM&CRM Системы wBsuite
Пользователь является объектом. Запись о нем в БД содержит его ID и название (имя пользователя), пароль (в зашифрованном виде) и логин для аутентификации, IP-адрес (с которого возможен доступ), срок действия пароля, адрес электронной почты, и др.
При инсталляции платформы Wad-er по умолчанию создаются 2 пользователя с кодом (Id) – sys_superadmin и sys_webuser. Пользователь с кодом sys_webuser используется для решения временных задач приложения – например, чтобы на какой-то промежуток времени обеспечить доступ к определенным объектам системы.
Если пользователь регистрируется сам, он добавляется неактивированным. На его почтовый адрес (e-mail) отправляется письмо со ссылкой для активации аккаунта. Неактивированные аккаунты не имеют доступа к страницам сайта.
Активировать пользователя можно в карточке пользователя на вкладке Флаги. Или, наоборот, там же можно деактивировать, если необходимо принудительно запретить доступ пользователя к сайту. На вкладке Ссылки при этом можно выбрать причину закрытия доступа.
Управление доступом. Карточка пользователя. Конфигурация wACM&CRM Системы wBsuite
Каждый пользователь может выполнять неограниченное количество ролей. Его права будут определяться суперпозицией прав выполняемых ролей. Для установления связи между пользователями и ролями используется матрица Пользователи-Роли. Это кросс-таблица, позволяющая на пересечении колонок (роли) и столбцов (пользователи) установить связь между ними нажатием левой кнопки мыши (зеленая иконка означает, что связь установлена).
Матрица Пользователи-Роли. Конфигурация wACM&CRM Системы wBsuite
Для каждой роли пользователей определяется соответствующий набор прав на функции. Для каждого права задается его глубина в разрезе CRUD (ДЧИУ) – отдельных прав на создание (Create -Добавить), чтение (Read -Читать), обновление (Update -Изменить) и удаление (Delete -Удалить).
Для установления связи между правами и ролями используется матрица Права-Роли. Это кросс-таблица, позволяющая на пересечении колонок (роли) и столбцов (права) установить связь между ними в разрезе ДЧИУ нажатием левой кнопки мыши на кнопку соответствующего права (зеленая иконка означает, что соответствующее право доступно). Кросс-таблицу Права-Роли можно посмотреть в разрезе прав модулей.
Матрица Права-Роли. Конфигурация wACM&CRM Системы wBsuite
Для каждой роли пользователей определяется соответствующий набор прав на страницы WEB-приложения (объекты). Для установления связи между страницами и ролями используется матрица Страницы-Роли . Это кросс-таблица, позволяющая на пересечении колонок (роли) и столбцов (страницы) установить связь между ними нажатием левой кнопки мыши (зеленая иконка означает, что связь установлена).
Определить, каким ролям будет доступна страница, можно в карточке каждой страницы (меню ЭЛЕМЕНТЫ САЙТА-СТРАНИЦЫ (МЕНЮ)) на вкладке Роли.
Подробнее см. Управление доступом по ролям RBAC
Матрица Страницы-Роли. Конфигурация wACM&CRM Системы wBsuite
Для задания прав доступа пользователей к объектам других пользователей используется привязка пользователя к должности и к отделу.
Пользователь Х имеет доступ к объектам других пользователей, если:
Привязка пользователя к структуре должностей и отделов. Конфигурация wACM&CRM Системы wBsuite