Разделение прав доступа
Для реализации разделения прав доступа используются категории "группа пользователей" и "роль пользователя".
Группа пользователей обеспечивает разграничение прав доступа по субъектам и объектам права.
Субъектом права выступает пользователь, представляемый его учетной записью.
Объектом права является раздел иерархической структуры (регистрационная карточка), файл и системные функции.
Основной состав групп формируется на этапе внедрения разработчиком системы и расширяется на этапе эксплуатации администратором системы.
Пользователь может входить в несколько групп.Каждая группа имеет различные права на те или иные действия с объектами системы. Каждому разделу иерархической структуры сопоставляется одна или несколько групп, пользователи которых имеют право работать с данным разделом, используя означенный перечень прав.
Таким образом, при попытке пользователя произвести определенное действие с каким-либо разделом структуры проверяется, какие группы сопоставлены данному разделу. Если такие группы найдены, то проверяется, входит ли в них данный пользователь. В случае когда входит, система определяет, имеется ли у каждой из указанных групп флажок "разрешено" на соответствующее действие. Если хотя бы в одном случае он имеется, действие разрешается; в противном случае действие запрещается.
В системе реализована дискреционная модель доступа с наследованием прав доступа по иерархии структуры.
Роль пользователя определяется совокупностью его функций и возможностей, предоставляемых ему для их выполнения системой, его участие в общем процессе, автоматизируемом системой.
Роль предоставляет пользователю возможности прикладных функций в рамках пользовательского интерфейса – отображение атрибутов, форму регистрационных карточек, функциональные кнопки. Для каждой роли формируется свой пользовательский интерфейс.
Количество ролей определяется на этапе разработки системы и неизменно в процессе ее эксплуатации.
Объем возможностей каждой роли определяется в техническом задании.
Схема ролевой модели, реализованная в системе, увязывает между собой:
- учетные записи;
- роли;
- группы;
- права доступа;
- объекты права;
- пользовательский интерфейс.