Настройка прав доступа

Версии: 3.x, 2.x.

Доступ задается на трех уровнях.

  1. Доступ к разделам.
  2. Доступ к группам таблиц (таблиц конкретного раздела).
  3. Доступ к отдельным записям таблицы.

Настройка доступа к разделам

Доступ к разделам позволяет скрывать разделы для разных групп пользователей. Настройки доступа производятся в разделе «Разделы». Для каждого раздела на вкладке «Доступ для ролей» необходимо указать какая группа пользователей может видеть данный раздел, а какая нет. При создании нового раздела в системе, необходимо создать новую запись в разделе «Разделы», при этом в поле «Системное название» («Код») написать имя каталога в папке sections.

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

С помощью доступа к разделам можно настроить доступ, например, так, что раздел «Справочники» будет виден высшему руководству, а менеджерам виден не будет.

Настройка доступа к группам таблиц

Доступ к группам таблиц позволяет настроить доступ к определенным таблицам (таблицам конкретного раздела) для различных групп пользователей. Обычно, группы таблиц содержат таблицы одного раздела. Настройки доступа производятся в разделе «Группы таблиц». Настройка доступа производится следующим образом.

  1. Создается группа таблиц «Компании».
  2. На вкладке «Таблицы» задаются таблицы, связанные с компаниями («Компани», «Важные даты компаний», «Продукты компаний», «Реквизиты», т. д.).
  3. На вкладке «Права для ролей» указываются права на чтение, вставку, модификацию и удаление записей. В случае настройки прав доступа к отдельным записям таблиц указывается параметр «Смена доступа» (см. настройку доступа к отдельным записям таблиц).

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

С помощью доступа к группам таблиц можно настроить доступ, например, так, чтобы раздел «Компании» менеджерам был доступен только на чтение, а высшему руководству был доступен в полном объеме. Также возможно настроить доступ так, чтобы менеджеры могли иметь доступ только к какой либо одной вкладке раздела компании на модификацию и вставку, а весь раздел был доступен только на чтение. Данные настройки можно изменить в лбой момент. Можно, например, дать полный доступ какой либо группе пользователей а затем убрать его.

Настройка доступа к отдельным записям таблицы

Доступ к отдельным записям таблицы позволяет настроить отдельные права на каждую запись таблицы. Настройка доступа к отдельным записям производится следующим образом.

  1. В разделе «Таблицы» у нужной таблицы iris_<table_name> включается «Проверка доступа по записям».
  2. Создается специальная таблица iris_<table_name>_access, которая будет хранить права доступа для таблицы iris_<table_name>. Данную таблицу можно создать по аналогии с таблицей iris_account_access. Можно взять скрипт ее создания и заменить слово account на <table_name>.
  3. В разделе «Таблицы» на вкладке «Права по умолчанию» необходимо задать права, которые будут применяться к вновь созданым записям. Права задаются следующим образом: указывается роль создающего, получающая роль, сами права. При этом пользователь, создавший запись автоматически получает на нее полные права. Права, относящиеся к конкретной записи отображаются на вкладке «Доступ». Их впоследствии можно изменить, если имеются права на изменение доступа для данной записи.

Пример:

Роль создающего Получающая роль Права
Менеджеры Менеджеры Только чтение
Менеджеры Высшее руководство Полный доступ
Если запись создал менеджер, то остальные менеджеры ее могут только читать, а высшее руководство имеет к ней полный доступ
Высшее руководство Менеджеры Нет доступа
Высшее руководство Высшее руководство Полный доступ
Если запись создал кто-либо из группы высшее руководство, то менеджеры ее не увидят, а высшее руководство будет иметь к ней полный доступ

По умолчанию, в системе заданы права так, что для роли создающего «Администраторы» права не заданы. Это значит, что при создании записи администратором ее никто не увидит в системе. Для того, чтобы создаваемые администратором записи были видны необходимо задать права доступа для записей, если создающая роль «Администратор».

Примечание. Если в таблице были какие либо данные, а потом была включена проверка доступа по записям(создана таблица для хранения прав и т.д.) то созданные ранее записи никто не увидит, кроме администратора, так как у старых записей не заданы никакие права. Для этого нужно или проставить вручную права для старых записей или же сделать это каким либо скриптом на СУБД. Поэтому лучше заранее решить, будет использоваться доступ по записям. Если да, то лучше включить его с самого начала использования системы.

С помощью доступа по записям можно, например, настроить доступ так, чтобы компании, которые создает менеджер были видны только ему и высшему руководству, а другим менеджерам видны не были или же были доступны только на чтение.