Управление учебным процессом ВУЗа  (28.03.2024)
Использование "профилей" для ограничения прав на бизнес-объекты

Нередки случаи, когда необходимо ограничивать права пользователей на бизнес-объекты системы, связанные с определенными подразделениями (факультетами, кафедрами), филиалами или другими сущностями. Например, возможна ситуация, в которой пользователю нужно предоставить права на просмотр записей о студентов трех из десяти факультетов вуза, при этом дать права на запись в отношении только двух из этих факультетов. Аналогичные задачи возможны применительно к учебным планам различных факультетов, данным о нагрузке различных кафедр, слушателям различных подразделений дополнительного образования.

Для решения подобных задач можно использовать "профили" пользователей. Работа с профилями ведется в Административной форме системы. Для управления доступом к некоторой категории объектов (например, к учебным планам, контингенту студентов) на вкладке Профили нужно добавить запись о новом профиле при помощи действия Создать.

Добавление профиля

Для добавления профиля нужно задать его Имя и Наименование. В поле Домен нужно выбрать домен того свойства, по которому будет вводиться ограничение прав. Например, для ограничения по факультету нужно выбрать домен класса Ссылки на объекты, связанный с классом Факультеты и отделения. В поле Доступ нужно выбрать один из двух режимов: Контролировать только запись (флажок снят) или Контролировать чтение и запись (флажок установлен).

После создания записи о профиле необходимо создать его элементы. Элементы профиля содержат информацию о том, на объекты какого класса и по какому свойству вводится ограничение.

Добавление элемента профиля

На представленной выше форме параметров приведен пример добавления в профиль элемента, вводящего ограничение на объекты класса Рабочий учебный план по свойству Факультет.

В каждый профиль можно влкючить несколько элементов профиля. Например, в профиль "Профиль работы с учебными планами" можно включить элементы, вводящие ограничения по свойству Факультет на доступ к объектам классов Рабочие учебные планы, Базовые учебные планы, Учебные планы факультета.

Для того, чтобы ограничения доступа были применены к определенным пользователям, необходимо установить связь между пользователями и профилями. Это можно сделать в подчиненной таблице Пользователи таблицы Профили при помощи действия Создать.

Включение пользователя в профиль

В форме параметров данного действия нужно выбрать пользователя, включаемого в профиль, а также установить значение свойства, по которому вводится ограничение, для данного пользователя. В зависимости от домена свойства для заполнения будет доступно одно из полей для ввода значений (Строковое значение, Целое значение, Значение-объект и проч.)

Если пользователю нужно предоставить права на объекты с определенным набором значений свойств (например, на планы нескольких факультетов), то нужно повторить действие по добавлению пользователя с каждым из этих значений.

Важно!
До тех пор, пока пользователь не включен ни в один из профилей, для него не действуют никакие из вводимых профилем ограничений на чтение или запись. Как только пользователь включен в профиль с определенными значениями ограничивающих свойств, он будет иметь права на чтение или запись объектов указанных классов только с определенными значениями свойств. Например, при включении пользователя в профиль "Профиль работы с учебными планами" со значениями свойства Факультет "Факультет социологии" и "Факультет истории" пользователь сможет вносить изменения только в учебные планы этих двух факультетов. К планам остальных факультетов он сохранит доступ в режиме "только для чтения".

Пример формирования состава профиля:

Пример настройки профиля. Состав профиля.

Пример включения пользователей в профиль:

Пример настройки профиля. Пользователи.

В приведенном примере пользователь "Дугарская Полина Васильевна" будет иметь права на запись только для учебных планов (объектов классов Рабочие учебные планы, Базовые учебные планы и Учебные планы факультета) факультетов права и прикладной политологии, а пользователь "Белов Никита Юрьевич" будет иметь права на запись только учебных планов факультета социологии и Института демографии.