Права доступа на данные показателей
Содержание
Описание
Права доступа на данные можно разграничивать за счет сегментов.
Сегмент - это часть данных показателя, ограниченная фильтрами на элементы справочников. Фильтры по справочникам независимы, из чего следует, что кол-во ячеек в сегменте - это декартово произведение элементов всех справочников показателя.
- Показатель может иметь неограниченное кол-во сегментов
- Сегменты могут пересекаться
- Сегменты вычисляются на лету при открытии показателя. Это означает, что фильтры на элементы справочника сегмента могут быть динамическими, в т. ч. содержать формулы, использующие значения токена.
- На сегменты можно раздать стандартные права: роли или пользователю на чтение/изменение/удаление.
Для того, чтобы включить проверку прав по сегментам, в показателе нужно выставить настройку
1 {
2 ...
3 "isAccessRightsEnabled": true,
4 ...
5 }
API по работе с сегментами
Сваггер по адресу /engine/swagger/index.html#/Segment
Создание сегмента
/engine/swagger/index.html#/Segment/Segment_CreateSegment
Для создания нужно указать идентификатор показателя и коллекцию описания справочников (ид. справочника и фильтры).
В ответ приходит этот же набор фильтров, а также ид. сегмента.
Просмотр сегментов показателя
/engine/swagger/index.html#/Segment/Segment_GetSegments
Чтобы посмотреть все сегменты по показателю, нужно воспользоваться этим методом, указав ид. показателя.
Просмотр и изменение сегментов
Если известен ид. сегмента, то можно его посмотреть, удалить или модифицировать.
- /engine/swagger/index.html#/Segment/Segment_GetSegment
- /engine/swagger/index.html#/Segment/Segment_EditSegment
- /engine/swagger/index.html#/Segment/Segment_DeleteSegment
Раздача прав на сегменты
/engine/swagger/index.html#/Segment/Segment_SetPermissions
После того как сегменты созданы, можно назначать на них права: нужно указать ид. показателя, ид. сегмента, субъекта и тип права.