Документация по настройке процессов
Примеры использования бизнес-процессов
Это документация Creatio версии 7.14.0. Мы рекомендуем использовать новую версию документации.

Как применять пользовательскую бизнес-логику для управления правами доступа

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

Пример

При изменении типа контакта на "Сотрудник" необходимо забрать права на редактирование и удаление записи у всех пользователей, кроме роли “HR. Группа руководителей“, которые смогут просматривать, редактировать и удалить запись.

Общая схема бизнес-процесса (Рис. 364):

1.Начальное событие [Сигнал] срабатывает при изменении значения в поле [Тип] страницы контакта на "Сотрудник" и сохраняет уникальный идентификатор измененной записи.

2.Элемент процесса [Изменить права доступа] устанавливает права доступа на изменение или удаление записи. Этот элемент получает значение уникального идентификатора записи контакта из начального события.

Рис. 364 — Бизнес-процесс "Изменение прав доступа на редактирование новой записи сотрудника"

chapter_process_creation_designer_access_rights_process.png 

Добавьте на диаграмму процесса Начальное событие [Сигнал] и укажите для него следующие параметры (Рис. 365).

1.В поле [Объект] укажите “Контакт”.

2.Выберите тип события “Изменение записи”.

3.В области [Ожидать изменения] выберите [Любого поля из выбранных] и добавьте колонку “Тип”.

4.Укажите условие “Тип = Сотрудник”.

Рис. 365 — Параметры начального события [Сигнал]

chapter_process_creation_designer_employee_type.png 

Добавьте Элемент процесса [Изменить права доступа] на диаграмму процесса и настройте для него следующие параметры (Рис. 367).

1.В поле [Для записей какого объекта изменить права доступа?] укажите “Контакт”.

2.В поле [Изменить доступ на все записи, соответствующие условию] настройте фильтр по колонке Id (”Id=Изменен тип контакта.Уникальный идентификатор записи”) (Рис. 366):

a.Нажмите [+ Добавить условие], чтобы добавить новое условие фильтрации.

b.В открывшемся окне выберите из списка значение ”Id”.

c.Кликните <?> и выберите “Сравнить с параметром”.

d.В открывшемся окне на вкладке [Элементы процесса] выберите начальное событие (в левой части окна).

e.В правой части окна выберите параметр [Уникальный идентификатор записи].

Рис. 366 — Настройка фильтра по колонке Id

chapter_process_creation_designer_access_rights_element_id_filter.GIF 

На заметку

Подробно о передаче значения уникального идентификатора записи между элементами процесса читайте в статье “Как настроить передачу параметров между элементами бизнес-процесса”.

3.В поле [Какие права забрать?] нажмите кнопку btn_com_add_tab00038.png и выберите ”Для всех ролей и пользователей”.

a.Снимите признак под изображением icn_chapter_process_designer_read_access00039.png, чтобы забрать у пользователей права на редактирование и удаление записи, но оставить право на чтение.

4.В поле [Какие права добавить?] нажмите кнопку btn_com_add_tab00040.png и выберите ”Для роли”.

a.В появившемся поле [Роль] нажмите кнопку btn_process_element_settings_lookup00041.png и выберите “Значение справочника“.

b.В открывшемся окне выбора значения справочника укажите “HR. Группа руководителей“.

Рис. 367 — Параметры элемента процесса [Изменить права доступа]

chapter_process_creation_designer_access_rights_element_paramters.png 

После настройки элементов, объедините их на диаграмме в единый процесс и сохраните.

В результате, каждый раз, когда тип контакта будет изменяться на “Сотрудник”, процесс будет забрать права на редактирование и удаление этой записи у всех пользователей системы, кроме тех, кто входит в роль “HR. Группа руководителей“.

Смотрите далее

Права доступа

Начальное событие [Сигнал]

Элемент процесса [Изменить права доступа]

Как настроить передачу параметров между элементами бизнес-процесса

Был ли данный материал полезен?

Как можно улучшить эту статью?