Перейти к содержанию

Обновление результата

Запрос

Тип Метод
PUT /logmule_go_results/update

Описание: при выполнении запроса будет обновлена информация о результате "сработки" правила в соответствии с заданными параметрами.

Работает по принципу частичного обновления, т.е. будут обновлены только те поля модели которые были переданы в запросе.

Позволяет также управлять связями многие ко многим с другими моделями через поле _relations.

Ключами в поле _relations могут быть названия полей моделей ссылающиеся на другие. Например если у модели связь с моделью правил корреляции и в нем хранится объект связанного правила то это поле можно использовать при управлении данной связью

Управление работает следующим образом:

  • Если поля в объекте _relations отсутствуют зависимости не обновляются.
  • Если поле зависимости указано и в значении не пустой список идентификаторов, то связи модели приводятся к описанному состоянию.
  • Если поле зависимости указано и в значении пустой список то все связи удаляются.
  • Зависимости игнорируются в теле запроса.
  • Зависимости в ответе всегда null.

Например следующий запрос:

{
  "id": "uuid",
  ...
  "_relations": {
    "logmule_go_rules": [] // - очистит все связи с правилами
    // "logmule_go_rules": ["uuid1", "uuid2"] // - создаст связь с 2 правилами
    // "logmule_go_rules": ["uuid1"] // - оставит связь только с первым правилом
  }
}
Пример запроса

PUT
http://127.0.0.1/cruddy/v2/logmule_go_results/update

Тело запроса:

Параметр Тип Обязательность Описание
id string Required Идентификатор результата сработки парвила
rule_id string Required Идентификатор правила
analysis_output string Required Результат анализа
event object Required Событие строкой
compressed_event string Required Событие одной строкой в формате byte array
risklevel number Required Уровень риска в формате float
occurred_at string Required Дата и время происшествия в формате: date-time
occurrence_id string Required Идентификатор происшествия
error string Required Ошибка
service_asset_id string Required Идентификатор актива
asset_info object<asset> Required Данные актива
incident_identifier string Required Идентификатор инцидента
metadata object Required Метаданные в формате map
mitre object Optional Техники mitre в формате map

LogmuleGoResultsAsset

Параметр Тип Обязательность Описание
ip string Required IP-адрес актива
hostname string Required Хостнейм актива
fqdn string Required FQDN актива
mac string Required MAC-адрес актива
Пример тела запроса

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "rule_id": "uuid",
  "analysis_output": "string",
  "event": [
    {
      "uuid": "94a5ee25-435a-4943-b88b-9a108057d5fd"
    },
    {
      "uuid": "045f14f9-83c0-4075-bd9b-b690f9258149"
    }
  ],
  "compressed_event": "string",
  "risklevel": 5.35,
  "occurred_at": "2023-12-20T00:00:01.652259Z",
  "occurrence_id": "uuid",
  "error": "string",
  "service_asset_id": "uuid",
  "asset_info": {
    "ip": "string",
    "hostname": "string",
    "fqdn": "string",
    "mac": "string"
  },
  "incident_identifier": "string",
  "metadata": {
    "key": "value"
  },
  "mitre": {
    "key": "value"
  }
}

Успешный ответ

Статус код: 200 – успешное обновление информации о результате "сработки" правила.

Формат: JSON.

Тело ответа: модель обновленного результата "сработки" правила.

Пример ответа

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "created_at": "2023-12-20T00:00:01.652259Z",
  "updated_at": "2023-12-20T00:00:01.652259Z",
  "rule_id": "uuid",
  "analysis_output": "string",
  "event": {},
  "compressed_event": "string",
  "risklevel": 5.35,
  "occurred_at": "2023-12-20T00:00:01.652259Z",
  "occurrence_id": "uuid",
  "error": "string",
  "service_asset_id": "uuid",
  "asset_info": {
    "ip": "string",
    "hostname": "string",
    "fqdn": "string",
    "mac": "string"
  },
  "incident_identifier": "string",
  "metadata": "{\"key\": \"value\"}",
  "logmule_go_rule": null,
  "occurrence": null,
  "service_asset": null,
  "service_asset_groups": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "created_at": "2023-12-20T00:00:01.652259Z",
      "updated_at": "2023-12-20T00:00:01.652259Z",
      "name": "string",
      "network_ranges": [],
      "domain": "string",
      "itsm_synced": false,
      "regex": "string",
      "subject_id": "string",
      "object_id": "string",
      "is_kii": false,
      "is_fincert": false,
      "responsible_person": "string",
      "technical_specialist": "string",
      "system_id": "string",
      "responsible_group_id": "2d40d7ca-3218-4132-89ef-42e29379a567",
      "edited_by": "9501acb5-3be0-4719-a60e-dfa79624666c"
    }
  ],
  "_relations": {}
}

Другие возможные ответы

Код Ответ Описание
400 Bad Request
name_already_used
Неверный тип параметра запроса, либо отсутствует обязательный параметр
Попытка присвоить объекту существующее уникальное значение атрибута
404 Not Found Редактируемый объект не найден в БД
500 Internal Server Error Другие ошибки при редактировании объекта

Примечание: Текст ошибки не фиксированный, может изменяться в зависимости от фактического ответа получателя запроса.

Пример ответа

Код 400

{
  "error": "Bad Request",
  "error_code": 400
}

Код 404

{
  "error": "Not Found",
  "error_code": 404
}

Код 500

{
  "error": "Internal Server Error",
  "error_code": 500
}