Шаблоны поиска
Шаблоны поиска в R-Vision SIEM используются для настройки конфигурации и условий RQL-запросов. Они применяются в разделе Поиск и виджетах дашбордов для отображения аналитических данных.
Управление конфигурациями шаблонов поиска осуществляется в разделе Экспертиза. Шаблоны позволяют задавать фильтры, временные интервалы и RQL-запросы для выборки событий, упрощая анализ данных и создание визуализаций.
О шаблонах поиска
Шаблон поиска — это структурированный объект данных в формате RObject (.ro), который определяет параметры и условия для выполнения запросов к данным в системе в разделе Поиск и виджетах дашбордов. Их можно создавать на основе запросов, введенных в этих разделах, или непосредственно через раздел Экспертиза. Шаблон поиска задает структуру фильтров, временной интервал и параметры выборки, которые могут быть использованы для выполнения поисковых запросов по событиям системы.
Шаблон поиска включает следующие компоненты: фильтры для настройки условий отбора данных, временные параметры и RQL-запрос, формирующий логику поиска. Фильтры определяют поля и условия, по которым данные отбираются, временные параметры указывают период выборки, а запрос на языке RQL задает основную логику обработки данных.
Каждый фильтр включает описание целевого поля данных, логический оператор сравнения и значения, по которым данные должны отбираться. В качестве условий могут использоваться операторы EQ
, BETWEEN
, LIKE
, IN
, GT
, GE
, LT
, LE
, и NE
.
Шаблон поиска позволяет настраивать временные параметры, включая фиксированный период и интервальные значения. Это обеспечивает возможность как статических, так и динамических выборок данных на основе шаблона. Поля фильтров и временных настроек передаются в RQL-запрос, который используется для конечной выборки данных.
Работа с шаблоном поиска
Шаблоны поиска используются в разделе Поиск.
Доступные операции над шаблоном поиска:
Создание шаблона
Чтобы создать шаблон:
-
Перейдите в раздел Поиск.
-
Нажмите на кнопку Шаблоны (
). Отобразится панель шаблонов.
-
Нажмите на кнопку Создать шаблон. Отобразится окно сохранения шаблона.
-
Введите название шаблона.
-
При необходимости введите описание шаблона.
-
Выберите каталог раздела Экспертиза, в который будет помещен шаблон.
-
Чтобы сохранить в шаблоне текущий заданный период, установите флажок Сохранить временной период.
-
Чтобы сохранить в шаблоне имеющиеся пользовательские фильтры, установите флажок Сохранить фильтры.
-
Нажмите на кнопку Создать. Система создаст шаблон поиска и отобразит соответствующее уведомление. Новый шаблон появится на панели шаблонов.
Применение шаблона
Чтобы применить шаблон:
-
Перейдите в раздел Поиск.
-
Нажмите на кнопку Шаблоны (
). Отобразится панель шаблонов.
-
Выберите шаблон из списка. Система применит шаблон для поиска событий.
Поиск шаблона
Чтобы найти шаблон:
-
Перейдите в раздел Поиск.
-
Нажмите на кнопку Шаблоны (
). Отобразится панель шаблонов.
-
Введите название требуемого шаблона в поле поиска. На панели отобразятся шаблоны, в названии которых встречается введенный запрос.
Обновление шаблона
Вы можете обновить существующий шаблон. Для этого:
-
Перейдите в раздел Поиск.
-
Нажмите на кнопку Шаблоны (
). Отобразится панель шаблонов.
-
Вы можете отредактировать название и описание шаблона. Также можно установить или снять флажки Сохранить временной период и Сохранить фильтры.
-
Нажмите на кнопку Обновить и подтвердите обновление. Система сохранит изменения и отобразит соответствующее уведомление. В шаблоне будет сохранен поисковый запрос, введенный в поле запроса на момент редактирования.
Работа с RObject-конфигурацией шаблона поиска
Создание шаблона поиска
Чтобы создать шаблон поиска:
-
Перейдите в раздел Экспертиза. Система отобразит сведения об имеющихся элементах экспертизы.
-
На панели инструментов нажмите на кнопку Создать и выберите из выпадающего списка опцию Шаблон поиска. Система отобразит окно создания шаблона.
При создании элемента экспертизы поля его структуры заполняются значениями по умолчанию. Для быстрой настройки структуры в системе доступны предустановленные примеры. Чтобы заполнить поля элемента экспертизы с помощью примера, нажмите на кнопку Примеры и выберите требуемый пример из выпадающего списка. -
Заполните поля шаблона поиска, чтобы задать параметры поиска и условия фильтрации.
-
Нажмите на кнопку Опубликовать версию. Система создаст шаблон поиска и отобразит соответствующее уведомление. Новый шаблон появится в таблице раздела Экспертиза.
Чтобы шаблон поиска стал доступным для использования, его необходимо включить. Вы можете создать черновик шаблона поиска без публикации, используя кнопку Сохранить черновик. Система создаст черновик и отобразит соответствующее уведомление. Черновик отобразится в таблице раздела Экспертиза.
Вы также можете создать конфигурацию шаблона поиска на основе существующего запроса. |
Изменение шаблона поиска
Чтобы изменить шаблон поиска:
-
Перейдите в раздел Экспертиза. Система отобразит сведения об имеющихся элементах экспертизы.
-
Нажмите на строку шаблона поиска в списке. Система отобразит в правой части экрана карточку этого шаблона с подробной информацией о нем.
-
Нажмите на кнопку действий (
) в верхнем правом углу карточки и выберите опцию Изменить. Отобразится окно настроек шаблона.
Вы также можете открыть окно настроек с помощью кнопки в нижней части карточки:
-
Для опубликованной версии: нажмите на кнопку Просмотр в нижней части карточки. Система отобразит окно просмотра настроек элемента экспертизы. Нажмите на кнопку Изменить в правом нижнем углу окна.
-
Для черновика: нажмите на кнопку Изменить в нижней части карточки.
-
-
Внесите необходимые изменения в конфигурацию шаблона поиска.
-
Нажмите на кнопку Обновить версию. Система опубликует новую версию шаблона поиска с измененной конфигурацией и отобразит соответствующее уведомление.
При публикации новой версии элемента экспертизы требуется увеличить его текущую версию в поле version
.Вы можете сохранить измененную конфигурацию шаблона поиска в виде черновика без публикации с помощью кнопки Сохранить черновик. Система сохранит конфигурацию для дальнейшего редактирования и отобразит соответствующее уведомление. В верхней части карточки шаблона будет отображаться предупреждение о наличии неопубликованных изменений.
Удаление шаблона поиска
Удаление доступно только для элементов экспертизы с типом создания Пользовательский. |
Удаление недоступно для элементов экспертизы, используемых в других сущностях системы.
Чтобы удалить шаблон поиска:
-
Перейдите в раздел Экспертиза. Система отобразит сведения об имеющихся элементах экспертизы.
-
Нажмите на строку шаблона поиска в списке. Система отобразит в правой части экрана карточку этого шаблона с подробной информацией о нем.
-
Нажмите на кнопку действий (
) в верхнем правом углу карточки и выберите опцию Удалить. Отобразится окно подтверждения удаления шаблона.
-
Нажмите на кнопку Удалить. Система удалит шаблон поиска и отобразит соответствующее уведомление. Удаленный шаблон будет исключен из списка элементов экспертизы.
Вы также можете удалить группу элементов экспертизы. Для этого:
|
Структура шаблона поиска
Шаблон поиска содержит обязательные и опциональные поля, определяющие его логику и настройки для отбора данных.
Поле | Описание | Тип данных | Обязательное поле |
---|---|---|---|
|
Уникальный идентификатор шаблона поиска. Должен быть уникальным в пределах экспертизы. Можно использовать UUID в качестве значения. |
Строка |
да |
|
Название шаблона поиска. Допустимы латинские буквы, цифры, точки, подчеркивания и дефисы. |
строка |
да |
|
Краткое описание назначения шаблона поиска. |
строка |
нет |
|
Тип шаблона. Для шаблонов поиска всегда указывается |
строка |
да |
|
Имя и контактные данные автора шаблона поиска. |
строка |
нет |
|
Дата создания или изменения шаблона. Задается в формате Поле не связано с полями Дата создания и Дата изменения в карточке элемента экспертизы. |
строка |
нет |
|
Статус разработки текущей версии шаблона поиска. Может принимать любые текстовые значения. Примеры значений:
|
строка |
нет |
|
Список тегов, присвоенных шаблону поиска для классификации и быстрого поиска. |
массив строк |
нет |
|
Версия шаблона поиска в формате Semantic Versioning. |
строка |
да |
|
Временной интервал для выборки данных. Может включать период ( |
объект |
да |
|
RQL-запрос, определяющий логику поиска и выборки данных. |
строка |
да |
Структура filters
Поле filters
описывает настройки условий для отбора данных в шаблоне поиска. Каждый фильтр включает параметры для задания условий отбора и дополнительных параметров конфигурации.
Поле | Описание | Тип данных | Обязательное поле |
---|---|---|---|
|
Название целевого поля данных, к которому применяется фильтр. |
строка |
да |
|
Оператор сравнения, определяющий логику фильтрации. Допустимые значения: |
строка |
да |
|
Массив значений, используемых для фильтрации. Для операций |
массив строк |
да |
|
Статус фильтра, указывающий, будет ли он применен ( |
булево значение |
да |
|
Опция инверсии условия фильтрации. Если установлено в |
булево значение |
нет |
|
Пользовательское название фильтра, отображаемое в интерфейсе на панели фильтров. Если значение не задано, используется значение поля |
строка |
нет |
Структура time
Поле time
определяет временной интервал, за который выполняется выборка данных в шаблоне поиска. Интервал может задаваться двумя способами: с помощью фиксированного периода (from
и to
) или через интервальные параметры (unit
и value
).
Поле | Описание | Тип данных | Обязательное поле |
---|---|---|---|
|
Начальная точка временного интервала в формате |
строка |
да (если |
|
Конечная точка временного интервала в формате |
строка |
да (если |
|
Единица измерения временного интервала. Допустимые значения: |
строка |
да (если |
|
Количество единиц, задающих продолжительность временного интервала. Например, при значениях |
число |
да (если |
Составление шаблона поиска
Для создания шаблона поиска необходимо определить ряд обязательных и опциональных полей, которые формируют структуру и логику поиска.
Поля метаданных
Заполните поля метаданных шаблона поиска:
-
id
: уникальный идентификатор шаблона поиска. Должен быть уникальным в пределах экспертизы. -
name
: название шаблона поиска. Допустимы латинские буквы, цифры, символы подчеркивания, точки и дефисы. -
type
: всегда указываетсяsearch_template
для элементов экспертизы данного типа. -
description
(опционально): краткое описание назначения шаблона. -
author
(опционально): имя и контактные данные автора шаблона поиска. -
version
: версия шаблона поиска согласно стандарту Semantic Versioning. -
status
(опционально): статус разработки шаблона. Может принимать текстовые значения, такие как:-
draft
: черновая версия. -
published
: опубликованная версия. -
deprecated
: устаревшая версия.
-
-
tags
(опционально): список тегов, присвоенных шаблону для классификации и быстрого поиска. -
date
(опционально): дата создания или изменения шаблона. Формат значения:YYYY-MM-DD
.
Пример метаданных:
id: 61f0c404-5cb3-11e7-907b-000000000000 name: Failed Logins type: search_template description: Шаблон поиска для неудачных попыток входа author: John Doe <johndoe@rvision.ru> version: 1.0.0 status: published date: 2024-01-15 tags: - security - login
В этом примере:
-
Поле
id
: уникальный идентификатор шаблона поиска. В данном случае UUID —61f0c404-5cb3-11e7-907b-000000000000
. -
Поле
name
: название шаблона — "Failed Logins". -
Поле
type
: тип шаблона —search_template
. -
Поле
description
: краткое описание — "Шаблон поиска для неудачных попыток входа". -
Поле
author
: имя автора шаблона — "John Doe <johndoe@example.com>". -
Поле
version
: версия шаблона в формате1.0.0
. -
Поле
status
: статус разработки шаблона —published
. -
Поле
date
: дата создания шаблона — "2024-01-15". -
Поле
tags
: содержит тегиsecurity
иlogin
для классификации шаблона.
Поле filters
Поле filters
используется для настройки условий фильтрации данных. Каждый фильтр определяет параметр для отбора, логический оператор и значения.
-
name
: название целевого поля данных для фильтрации. -
operation
: логический оператор для сравнения значений (например,EQ
,BETWEEN
,LIKE
,IN
). -
values
: массив значений для сравнения с полем.Для операций IN
допускается указание нескольких значений, а дляBETWEEN
— строго два значения (границы интервала). -
inverted
: указывает, применяется ли логическое отрицание к результату фильтрации. -
enabled
: указывает, включен ли фильтр для обработки. -
customTitle
(опционально): заголовок фильтра, который отображается на панели фильтров.
Пример фильтра:
filters: - name: action values: - login operation: EQ inverted: false enabled: true customTitle: Action Filter - name: status values: - failed operation: EQ inverted: false enabled: true customTitle: Status Filter
В этом примере:
-
Первый фильтр проверяет, равно ли значение поля
action
значениюlogin
. -
Второй фильтр проверяет, равно ли значение поля
status
значениюfailed
. -
Оба фильтра включены для обработки (
enabled: true
), и логическое отрицание не применяется (inverted: false
). -
В полях
customTitle
фильтрам присвоены заголовкиAction Filter
иStatus Filter
, которые отобразятся на панели фильтров.
Поле time
Поле time
определяет временной интервал для выборки данных в шаблоне поиска. Может быть представлено либо фиксированным периодом, либо интервалом времени.
Фиксированный период
-
from
: начало временного интервала. -
to
: окончание временного интервала.
Пример с фиксированным периодом:
time: from: 2024-10-25 04:00:00 to: 2024-10-26 03:59:59
В этом примере данные будут отбираться за фиксированный временной период с 25 октября 2024 года, начиная с 04:00:00, по 26 октября 2024 года до 03:59:59.
Интервальный тип
-
unit
: единица измерения интервала времени (например,DAY
,HOUR
). -
value
: длительность интервала в указанных единицах.
Пример с интервальным типом:
time: unit: DAY value: 1
В этом примере задается временной интервал в 1 день (unit: DAY
, value: 1
). Это позволяет динамически выбирать данные, например, за последние 24 часа от момента выполнения запроса.
Поле rql
Поле rql
определяет запрос на языке RQL для формирования условий поиска в шаблоне.
Пример RQL-запроса:
rql: sourceIp = '192.0.2.1' AND dvendor = 'Linux'
В этом примере:
-
Запрос отбирает записи, где:
-
sourceIp
: значение поля равно192.0.2.1
. -
dvendor
: значение поля равноLinux
.
-
Пример шаблона поиска
# Уникальный идентификатор шаблона поиска. id: a1f0d234-6ac2-4d7e-bf93-000000000000 # Название шаблона поиска. name: Failed Login Attempts # Тип элемента экспертизы. type: search_template # Версия шаблона. version: 1.0.0 # Описание назначения шаблона поиска. description: Шаблон для поиска неудачных попыток входа в систему # Автор шаблона. author: John Doe <johndoe@example.com> # Фильтры для настройки условий поиска. filters: - name: action values: - login operation: EQ inverted: false enabled: true customTitle: Action Filter - name: status values: - failed operation: EQ inverted: false enabled: true customTitle: Status Filter # Временной период для выборки данных. time: unit: HOUR value: 1 # RQL-запрос для выборки данных. rql: sourceIp = '192.0.2.1' AND dvendor = 'Linux'
Интерпретация
Метаданные шаблона поиска:
-
id
: уникальный идентификатор шаблона поиска. В данном случае UUID —a1f0d234-6ac2-4d7e-bf93-000000000000
. -
name
: название шаблона поиска — "Failed Login Attempts". -
type
: тип элемента — всегда указывается какsearch_template
. -
version
: версия шаблона —1.0.0
. -
description
: описание назначения шаблона — "Шаблон для поиска неудачных попыток входа в систему". -
author
: автор шаблона — "John Doe <johndoe@example.com>".
Фильтры:
-
filters
: фильтры позволяют задавать условия для отбора данных:-
Фильтр
action
с операторомEQ
задает условие, при котором значение поляaction
должно быть равноlogin
. -
Фильтр
status
также с операторомEQ
отбирает события, где значение поляstatus
равноfailed
. -
Фильтры отобразятся на панели фильтров с заголовками
Action Filter
иStatus Filter
, которые заданы в поляхcustomTitle
.
-
Временной интервал:
-
time
: интервал, в пределах которого будут искаться события. В примере указан интервал в 1 час (unit
установлен наHOUR
,value
равно1
).
RQL-запрос:
-
rql: запрос на языке RQL, определяющий логику поиска.
-
Запрос отбирает записи, где:
-
sourceIp
: значение равно192.0.2.1
. -
dvendor
: значение равноLinux
.
-
-