Контроль прав при поиске

Описание настройки

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

По умолчанию механизм контроля прав пользователя при поиске объектов выключен.

Включение механизма контроля прав пользователей на объекты при поиске может привести к повышенной загрузке ресурсов сервера и понизить быстродействие системы.

Выполнение настройки

  1. В общих настройках поиска включите параметр Использовать механизм контроля прав пользователей на объекты, выводимые в список результатов поиска. Подробнее в разделе Общие настройки поиска.

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

    • В разделе "Настройка бизнес-процессов" → "Группы пользователей и роли" → "Роли":

      • В списке ролей отображается колонка "Определение списка объектов для поиска". Роли, определяющие условия фильтрации списка результатов поиска, отмечены зеленой галочкой .

      • На формах добавления и редактирования роли пользователей для пользовательских ролей отображается флажок Определить условие отбора объектов, доступных обладателю роли при поиске и соответствующее ему поле Скрипт.

    • В матрице прав всех классов и типов в группе "Другие права" отображается право "Показывать в результатах поиска".

  2. Добавьте пользовательскую роль с признаком "Определить условие отбора объектов, доступных обладателю роли при поиске" или установите данный признак для уже существующей пользовательской роли при редактировании. Подробнее в разделе Настройка пользовательской роли.

  3. Добавьте профиль прав, который содержит роли с признаком "Определение списка объектов для поиска". Подробнее в разделе Профили прав доступа.

  4. Для профиля прав выдайте право "Показывать в результатах поиска" (группа "Другие права") в классах/типах объектов, по которым производится поиск:

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

    Для права "Показывать в результатах поиска" нет возможности указать дополнительный скрипт в матрице прав.

    Право может быть установлено только для профилей, в которые входят роли с признаком "Определение списка объектов для поиска". У остальных профилей флажок недоступен.

Результат настройки

Если механизм включен и поиск осуществляется не суперпользователем, то выполняется проверка наличия права "Показывать в результатах поиска" для всех профилей текущего пользователя по всем классам объектов, для которых настроен поиск:

  • если в классе/типе объектов ни у одного профиля нет права "Показывать в результатах поиска", то поиск по данному классу/типу объектов не производится.
  • если профили с правом "Показывать в результатах поиска" найдены, то для всех ролей, определяющих условия фильтрации списка результатов поиска, каждого из найденных профилей производится вычисление условий фильтрации результатов поиска. Условия фильтрации суммируются по ИЛИ.

После проверки прав производится поиск объектов и пользователю выводится список результатов поиска с учетом условий фильтрации.