Сегодня мы рассмотрим настройку прав доступа в системе «1С:Документооборот». В качестве примера для рассмотрения механизма прав доступа предположим, что мы приняли на работу стажера и нам требуется ограничить его доступ к ряду документов и бизнес-процессов системы. Рассмотрение примера мы будем производить на демо-базе конфигурации «1С:Документооборот». Для работы демо-базы требуется платформа «1С:Предприятие 8.3 / 8.2» версии не ниже 8.2.12.
Система прав доступа рассматриваемой конфигурации является достаточно универсальной и практически полностью повторяет систему прав доступа «1С:Библиотека стандартных подсистем», аналогичная система прав доступа (с небольшими изменениями) используется в продукте СЭД «Корпоративный документооборот», «1С:Управление производственным предприятием», «1С:Управление торговлей ред. 11» и некоторых других.
В подсистеме «Управление доступом» используются ограничения на уровне ролей, заданных в «Конфигураторе» и ограничений на уровне записей базы данных (RLS – Record Level Sercurity) платформы «1С» версии 8.2. Подсистема «Управление доступом» библиотеки стандартных подсистем построена на следующих объектах метаданных конфигурации:
- Справочник «Группы доступа» — данный справочник содержит информацию по группам доступа, ведение групп доступа позволяет быстро и просто управлять разграничением прав в системах с большим количеством пользователей.
- Справочник «Грифы доступа» — справочник содержит набор используемых грифов доступа. Значения справочника присваиваются реквизиту «Гриф доступа» входящих, исходящих и внутренних документов «1С:Документооборот».
- Справочник «Профили групп доступа» — справочник используется для организации предопределенных (созданных в конфигураторе или в пользовательском режиме администраторами системы) значений, определяющих права доступа. Профиль группы доступа используется при назначении прав группе сотрудников, при этом профиль содержит информацию о доступных участникам этой группы пользователей ролях видах доступа (см. ниже).
- План видов характеристик «Виды доступа» — используется для определения всевозможных объектов, для которых необходимо установить контроль доступа. Например, элементами данного плана видов характеристик «1С» могут быть элементы справочников «Папки файлов», «Виды входящих документов», «Виды исходящих документов» и другие, часто при настройке системы данный «Виды доступов» расширяют (на уровне конфигурирования) и включают в него справочник «Контрагенты».
- Элементы конфигурации «Роли«. В системе разграничения прав доступа используются и роли, заданные в режиме «Конфигуратор». Данные роли расположены в разделе «Общие» подразделе «Роли» конфигурации. Список созданных в режиме конфигурирования ролей используется в элементах справочника «Пользователи» и в элементах справочника «Профили групп доступа». Элемент не доступен для редактирования в пользовательском режиме.
- Форма «Права по значениям доступа«. Данная форма расположена в подсистеме «Общие» и предназначена для настройки прав (чтение, создание, изменение, удаление) на конкретные объекты системы «1С:Документооборот». Данная форма обычно доступа из формы списка справочника «Группы пользователей» и формы элемента «Пользователи».
Кроме того, используется ряд внутренних регистров сведений:
- Регистр сведений «Группы значений доступа»
- Регистр сведений «Значения групп доступа»
- Регистр сведений «Наборы значений групп доступа»
- Регистр сведений «Таблицы групп доступа»
Данные регистры заполняются автоматически и не предназначены для ручной корректировки пользователями.
Вернемся к нашему примеру с принятым на работу стажером. Все действия мы будем выполнять в подсистеме «Настройки и администрирование» в обычном, пользовательском режиме «1С:Предприятие 8.3 / 8.2». Создадим в базе данных «1С:Документооборот» нового пользователя (например, Иванова Александра Петровича).
В форме нового элемента справочника «Пользователи» укажем полное имя нового пользователя, его подразделение, должность, а также имя пользователя (для входа в систему).
Важно! На закладке «Свойства пользователя информационной базы» не нужно указывать доступные данному пользователю роли. Галочки в списке ролей будут проставлены автоматически, после присвоения пользователю группы прав доступа в которой, в свою очередь, указан профиль группы доступа с отмеченными доступными ролями из конфигуратора «1С:Документооборот». В случае, если пользователь будет обладать полными правами, то можно указать доступные роли и в форме «Пользователя», но в нашем примере у стажера нет полных прав, соответственно нужные роли будут установлены системой автоматически. Основные настройки прав доступа производятся с группами прав доступа.
Группа прав доступа объединяет различных пользователей в одну группу с одинаковыми правами. Перейдем в форму справочника «Группы доступа» и создадим новую группу «Стажеры». В созданной группе, в списке пользователей, укажем нашего пользователя «Иванов Александр Петрович».
Для добавления нового пользователя воспользуйтесь правой кнопкой мышки и выберите пункт «Добавить» в контекстном меню списка пользователей. В той же форме группы прав доступа укажите нужный профиль прав доступа.
Профиль прав доступа является набором настраиваемых видов доступа. Профиль прав доступа позволяет структурировать систему прав доступа и, в дальнейшем, легко изменять доступность или недоступность конкретных видов объектов «1С:Документооборот» для всех пользователей группы прав доступа. Для нашего случая создадим профиль прав доступа «Стажеры предприятия» и определим, какие объекты (точнее виды объектов) будут подлежать настройке в группах прав доступа (где будет использоваться данный профиль).
В профиле групп также необходимо указать, какие роли из конфигурации системы будут доступны для пользователей. Список данных ролей определяется в конфигураторе в разделе «Общие Роли». Немного упрощая схему, можно отметить, что список ролей (левый список) определяет права пользователей на уровне конфигурации с использованием механизма ролей, как они использовались еще в версиях 7.7 и 8.0. А список ограничений доступа (правый список) определяет, ограничения на уровне записей базы данных (RLS), когда ограничения накладываются по существующим значениям данных в базе данных «1С», а не по объектам метаданных из конфигуратора.
На рисунке ниже приведен пример профиля «Стажеры предприятия» в котором указаны виды доступа, которые будут настроены для групп прав доступа этого профиля. Мы указали следующие виды доступа (правый список):
- Виды внутренних документов
- Виды входящих документов
- Папки файлов
Укажем наш профиль «Стажеры предприятия» в созданной ранее группе доступа «Стажеры».
После заполнения списка «Профиль», в правом верхнем списке мы видим виды доступа, которые были указаны в нашем профиле. Теперь в нижнем правом списке мы сможем указать конкретные значения этих видов доступа, к которым будут иметь доступ пользователи группы, в частности наш Иванов Александр Петрович. Команда «Добавить» позволяет создать новое значение для выбранного вида доступа.
Для вида доступа «Виды внутренних документов» мы определили следующие значения доступа:
- Информационно-справочный
- Служебная записка
Для вида доступа «Виды входящих документов» определили эти значения доступа:
- Предложение
- Письмо
Важно! Для указанных выше видов мы определяем права доступа только ко всем указанным значениям, например, ко всем входящим письмам, всем входящим предложениям, всем внутренним служебным запискам, а не конкретным документам системы.
Выбрав в верхнем списке вид доступа «Папки файлов» мы видим, что не можем указать конкретные значения доступа. Дело в том, что для вида доступа «Папки файлов», разработчики системы определили, что права доступа определяются через конкретные значения объектов, в нашем случае, через указание конкретных имен файлов (далее будет приведен детальный пример такой настройки). Стоит заметить, что в типовой конфигурации «1С:Документооборот» такой вид доступа (по конкретным значениям) определен только для папок файлов и папок внутренних документов.