Actions API
В результате выполнения поискового запроса могут быть настроены активные действия. Активные действия создаются в контексте создания задачи.
Отправка E-mail
Отправляет сообщение по указанному адресу. Название элемента в массиве активных действий: email.
| Название | Синтаксис | Описание | 
|---|---|---|
| to | <string> | Адрес получателя. | 
| recipient_group_id | <string> | ID группы получателей. (Подробнее Recipient Groups). | 
| smtp_id | <string> | ID настроек smtp_id (Подробнее SMTP). | 
| subject | <string> | Тема письма. | 
| body | <string> | Тело письма. | 
| html | <bool> | Записано тело в формате htmlили нет. | 
| sign | <string> | Подпись письма. | 
| enable_time | <bool> | Добавление времени отправки письма. | 
| enable_table | <bool> | Добавление таблицы с результатом поиска в тело письма. | 
| send_file | <bool> | Добавление файла с результатом поиска в тело письма. | 
| file_name | <string> | Название файла, которое прикрепляется к письму. | 
| file_type | <string> | Тип файла. Может принимать значения такие значения: json,csv,xls. | 
| is_once | <bool> | Запуск активного действия для результатов всего запроса или для каждого результата отдельно. | 
В случае если в Mail Action не указан smtp_id, то настройки отправителя будут браться из индекса .sm_settings.
В случае если Mail Action не указан в параметр recipient_group_id, то получатель будет выступать пользователь,
указанный в параметре
to.
В случае если письмо не отправляется, необходимо проверить разрешения записи SMTP, Recipient Groups и Recipient, входящих в группу. Если, у какой-то записи отсутствует роль "all_access" в правах на чтении, то необходимо ее добавить
POST {index_name}/_update/{record_id}
{
  "doc": {
    "_permissions": {
      "read": {
        "roles": [
          "all_access"
        ],
        "users": []
      },
      "write": {
        "roles": [],
        "users": []
      },
      "owner": "admin"
    }
  }
}
Incident Action
Создание инцидента в модуле Менеджер инцидентов. Название элемента в массиве активных действий: incident.
| Название | Синтаксис | Описание | 
|---|---|---|
| drilldown_type | <string> | Тип детализации. Принимает значение linkиsearch | 
| drilldown_context | <string> | Контекст детализации. | 
| incident_title | <string> | Заголовок инцидента. | 
| incident_description | <string> | Описание инцидента. | 
| incident_type | <string> | Тип инцидента. Принимает значение default,metric,scoring. | 
| severity | <int> | Критичность. | 
| line | <string> | Линия. | 
| status | <string> | Статус. | 
| log | <string> | Лог. | 
| fields | <object> | Объект, где ключ - старое название из результата поиска, значение - новое название для поля из результата поиска. | 
| custom_fields | <object> | Пользовательские поля в формате ключ - значение. | 
| custom_fields_s | <string> | Пользовательские поля в формате ключ - значение, но представлен в виде строки. | 
| workflow_id | <string> | ID workflow. | 
Index Event Action
Позволяет записывать результат выполнения запроса в индекс. Название элемента в массиве активных
действий: index_events.
| Название | Синтаксис | Описание | 
|---|---|---|
| index_name | <string> | Индекс, в который происходит запись результатов поиска. | 
| update_doc | <bool> | Обновление документа при каждом выполнении запроса вместо создания нового. | 
| is_once | <bool> | Запуск активного действия для результатов всего запроса или для каждого результата отдельно. | 
Запись в БД
Позволяет записывать результаты выполнения запроса во внешние базы данных. Название элемента в массиве активных
действий: jdbc_output.
| Название | Синтаксис | Описание | 
|---|---|---|
| user_id | <string> | ID пользователя базы данных (Подробнее JDBC User). | 
| connection_id | <string> | ID соединения (Подробнее Connection). | 
| table_name | <string> | Название таблицы. | 
Job Action
Осуществляет запуск задачи. Название элемента в массиве активных действий: job.
| Название | Синтаксис | Описание | 
|---|---|---|
| running_job_id | <string> | ID задачи. | 
Создание задачи, которая содержит Job Action, активирующий текущую задачу, не будет произведено.
Логирование событий
Записывает результаты поискового запроса в файл job_scheduler.log компонента Планировщик задач. Название элемента в
массиве активных действий: log_event.
Дополнительные поля отсутствуют.
Metric Action
Расчет метрик в РСМ. Название элемента в массиве активных действий: metric.
| Название | Синтаксис | Описание | 
|---|---|---|
| metric_name | <string> | Название метрики. | 
| object | <string> | Объект, по которому осуществляется разбиение. | 
| is_once | <bool> | Запуск активного действия для результатов всего запроса или для каждого результата отдельно. | 
MITRE ATT&CK Action
Позволяет тегировать события как срабатывания техник и подтехник базы MITRE ATT&CK® с последующей записью событий в
индекс. Название элемента в массиве активных действий: mitre.
| Название | Синтаксис | Описание | 
|---|---|---|
| name | <string> | Название активного действия. | 
| rule | <string> | Правило. | 
| layers | <array> | Список слоев. Каждый слой представляет собой строку. | 
| techniqueId | <array> | Список ID техник. Каждая техника представляет собой строку. | 
| severity | <string> | Критичность. | 
| custom_fields | <object> | Пользовательские поля в формате ключ - значение. | 
MITRE ATT&CK RISK Action
Позволяет фиксировать риск-балл в сработке. Название элемента в массиве активных действий: risk.
| Название | Синтаксис | Описание | 
|---|---|---|
| name | <string> | Название активной задачи. | 
| index_fields | <object> | поля индекса. | 
Index Fields
| Название | Синтаксис | Описание | 
|---|---|---|
| fidelity | <string> | Точность. может принимать значения high(1),medium(0.75),low(0.5). | 
| score | <string> | Балл. | 
Кроме того, пользователь может создавать свои поля внутри Index Fields.
Scoring Action
Позволяет фиксировать риск-балл в сработке. Название элемента в массиве активных действий: scoring.
| Название | Синтаксис | Описание | 
|---|---|---|
| type_id | <string> | ID типа из индекса .sm_scoring_types | 
| type_name | <string> | Название типа скоринга. | 
| index_name | <string> | Название индекса, в которое будет осуществляться сохранение результат Scoring Action | 
| type_fields | <object> | Поля, связанные с выбранным типом. | 
| uba_fields | <object> | Поля связанные с UBA. | 
| custom_fields | <object> | Пользовательские поля в формате ключ - значение. | 
| local_params | <object> | Локальные параметры в формате ключ - значение. | 
| score | <int> | Балл. | 
UBA Fields
| Название | Синтаксис | Описание | 
|---|---|---|
| object | <string> | Объект UBA. | 
| type | <string> | ID типа объекта UBA из индекса .sm_uba_types_configs. | 
| validity_period | <string> | Срок жизни. Например, 5h. | 
Script Action
Позволяет запускать имеющийся на сервере скрипт. Название элемента в массиве активных действий: script.
| Название | Синтаксис | Описание | 
|---|---|---|
| context | <string> | Утилита, что выполняет скрипт и абсолютный путь до файла со скриптом. | 
Пример context
/app/opensearch/utils/python/bin/python3 /app/opensearch/utils/scripts/example.py
Вебхук
Позволяет выполнять HTTP-запросы к удаленному серверу. Название элемента в массиве активных действий: Вебхук.
| Название | Синтаксис | Описание | 
|---|---|---|
| host | <string> | Хост получателя. | 
| port | <int> | Порт получателя. | 
| scheme | <string> | Протокол передачи. Может быть http,https. | 
| request_action | <string> | Http-метод. Принимает значения POST,GET,PUTиDELETE. | 
| request | <string> | путь. | 
| body_type | <string> | Тип тела. Может принимать значения none,custom,result. | 
| custom_body | <string> | Пользовательское тело. Отправляется в случае, если body_type = custom. | 
| user | <string> | Имя пользователя. Необходимо для авторизации. | 
| password_id | <string> | Ключ в keystoreс префиксом jobscheduler.webhook.password., в котором хранится пароль для Basic Auth | 
| headers | <object> | Http-заголовки. Ключ - название заголовка, значение - значение заголовка. | 
| params | <object> | Query параметры. Ключ - название параметра, значение - значение заголовка. | 
| trust_store_password | <string> | Ключ в keystoreс префиксомjobscheduler.truststore.password., в котором хранится пароль, необходимый для получения информации о сертификата из файла. | 
| trust_store_path | <string> | Путь до файла .jksфайла, в котором хранится информация о сертификате. | 
| trust_store_verifier | <string> | Проверка соответствия имени хоста URL имени сервера во время установки SSL-соединения. | 
| trust_self_signed_strategy | <bool> | Доверие к самоподписанным сертификатам. | 
| trust_store_protocol | <string> | Протокол подключения. Например, SSLилиTLS. | 
trust_store_verifier на данный момент принимает только одно значение: default_hostname_verifier. Если не указывать
значение trust_store_verifier, то проверка не будет осуществляться