Команды предназначены для управления правами доступа пользователей во время работы с историей вызовов.
Параметры ограничения доступа к истории вызовов:
- call_history_restriction_enabled — включено ли ограничение на историю вызовов для пользователя? По умолчанию значение параметра выставлено в false либо параметр не задан;
- call_history_restriction_lists — списки ограничений истории вызовов. Здесь перечисляются имена списков по пути domain/<DOMAIN>/lists, которые используются в процедуре ограничения до истории вызовов — только номера (вызывающие и/или вызываемые) из данных списков будут доступны пользователю в истории вызовов. Если список номеров пустой, пользователю доступна пустая история вызовов. Если параметр call_history_restriction_lists не задан или значение параметра call_history_restriction_lists не является списком, то у пользователя есть доступ до всех записей истории вызовов. По умолчанию параметр call_history_restriction_lists не задан.
Данное поведение работает в случае если значение параметра call_history_restriction_enabled выставлено в true. - call_history_forbid_download_record — запрещено ли скачивать запись разговора? Если выставлено в значение true, то пользователю запрещено скачивать запись разговора.
Данное поведение работает в случае если значение параметра call_history_restriction_enabled выставлено в true.
Логика работы
Алгоритм определения права доступа к записям разговоров выполняется для любого количества портов, участвовавших в разговоре, т.е. если пользователю запрещено (не разрешено) слушать разговоры какого-либо порта, то у него нет права прослушивания всего разговора. Для упрощения процедуры конфигурирования соответствия пользователя имеется возможность присвоения ему заранее сформированного списка (или списков) портов.
Есть возможность в любой момент изменить (добавить, удалить) у пользователя его списки, что влечет изменение его прав, в том числе на доступ к записям разговоров, сделанных до изменения.
Состав любого списка может быть изменен (в том числе удален сам список), что влечет за собой изменение прав пользователя, в том числе на доступ к записям разговоров, сделанных до изменения.
- Фильтрация по спискам применяется всегда, без проверки флага enable, просто по факту наличия правила фильтрации в domain/<DOMAIN>/security/call-history/restrictions;
- Если списка разрешённых нет — разрешаем всё. Если список разрешённых есть — ограничиваем списком разрешённых.
- Если списка запрещённых нет — разрешаем весь полученный на предыдущем шаге список. Если список запрещённых есть — убираем запрещённых из полученного на предыдущем шаге списка.
Если в разговоре участвуют 2 порта (А и Б), то матрица принятия решения при определении права доступа пользователя к записям разговоров:
Порт А | Порт Б | Результат | |
---|---|---|---|
Ситуация 1 | Разрешено слушать | Разрешено слушать | Разрешено слушать |
Ситуация 2 | Разрешено слушать | Запрещено слушать | Запрещено слушать |
clean
Команда удаляет пользовательские ограничения на историю вызовов.
Путь команды:
domain/<DOMAIN>/security/call-history/restrictions/clean
Синтаксис:
clean <USER | *> [<OPTIONS>]
Параметры:
- <USER> — CoСon-пользователь или все пользователи (*);
- <OPTIONS>:
- --enable <true|false> — включено ли ограничение на историю вызовов для пользователя? По умолчанию значение параметра выставлено в false либо параметр не задан;
- --forbid_download <true|false> — запрещено ли скачивать запись разговора? Если параметр выставлен в значение true, то пользователю запрещено скачивать запись разговора;
- --white_list <listt1> ... <listN> — белый список ограничений истории вызовов. Здесь перечисляются имена списков по пути domain/<DOMAIN>/lists, которые используются в процедуре ограничения до истории вызовов — только номера (вызывающие и/или вызываемые) из данных списков будут доступны пользователю в истории вызовов. Если список номеров пустой, пользователю доступна пустая история вызовов;
- --black_list <listt1> ... <listN> — черный список ограничений истории вызовов. Здесь перечисляются имена списков по пути domain/<DOMAIN>/lists, которые используются в процедуре ограничения до истории вызовов — номера (вызывающие и/или вызываемые) из данных списков не будут доступны пользователю в истории вызовов. Если список номеров пустой, пользователю доступна вся история вызовов, если не используется белый список.
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/security/call-history/restrictions/clean support --white_list --black_list Success: Call history restrictions was changed. [exec at: 28.03.2022 10:50:46, exec time: 26ms, nodes: ds1@ecss1 v.3.14.11.217]
declare
Команда декларации пользовательских ограничений.
Путь команды:
domain/<DOMAIN>/security/call-history/restrictions/declare
Синтаксис:
declare <USER | * >
Параметры:
USER —CoСon-пользователь или все пользователи (*).
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/security/call-history/restrictions/declare support Success: Call history restrictions was changed. [exec at: 26.03.2022 08:28:37, exec time: 38ms, nodes: ds1@ecss1 v.3.14.11.214]
info
Команда отображает информацию об ограничениях пользователей для работы с историей вызовов. Для пользователя группы ecss-users показывает только собственные ограничения.
Путь команды:
domain/<DOMAIN>/security/call-history/restrictions/info
Синтаксис:
info
Параметры:
Команда не имеет параметров.
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/security/call-history/restrictions/info ┌────────────┬──────┬───────────────┬───────────┬───────────┐ │ User │Enable│Forbid download│White list │Black list │ ├────────────┼──────┼───────────────┼───────────┼───────────┤ │support │false │true │[sec_white]│[sec_black]│ │bsk_security│true │true │[sec_white]│[] │ └────────────┴──────┴───────────────┴───────────┴───────────┘ [exec at: 28.03.2022 10:49:30, exec time: 19ms, nodes: ds1@ecss1 v.3.14.11.217]
remove
Команда удаляет ограничения работы с историей вызовов для пользователя.
Путь команды:
domain/<DOMAIN>/security/call-history/restrictions/remove
Синтаксис:
remove <USER | * >
Параметры:
USER — CoСon-пользователь или все пользователи (*).
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/security/call-history/restrictions/remove support Success: Call history restrictions was cleaned. [exec at: 28.03.2022 10:52:09, exec time: 28ms, nodes: ds1@ecss1 v.3.14.11.217]
set
Команда установки значений для задекларированных ограничений.
Путь команды:
domain/<DOMAIN>/security/call-history/restrictions/set
Синтаксис:
set <USER | * > [<OPTIONS>]
Параметры:
- USER — CoСon-пользователь или все пользователи (*);
- <OPTIONS>:
- --enable <true | false> — включение ограничений для пользователя;
- --forbid_download <true | false> — запрет на скачивание записей разговоров;
- --white_list <list1> <list2> ... <listN> — имена списков, сформированных командой domain/DOMAIN/lists/ — белые списки номеров;
- --black_list <list1> <list2> ... <listN> — имена списков, сформированных командой domain/DOMAIN/lists/ — черные списки номеров;
- --add-list <black_list | white_list> <list1> <list2> ... <listN> — добавление списков;
- --remove-list <black_list | white_list> <list1> <list2> ... <listN> — удаление списков.
Примеры:
admin@mycelium1@ecss1:/$ domain/biysk.local/security/call-history/restrictions/set bsk_security --white_list sec_white Success: Call history restrictions was changed. [exec at: 28.03.2022 10:46:40, exec time: 8ms, nodes: ds1@ecss1 v.3.14.11.217]
admin@mycelium1@ecss1:/$ domain/biysk.local/security/call-history/restrictions/set bsk_security --enable true Success: Call history restrictions was changed. [exec at: 28.03.2022 10:47:17, exec time: 27ms, nodes: ds1@ecss1 v.3.14.11.217
Добавить комментарий