Добавление сущностей-справочников и идентификаторов в схему домена
В этом сценарии мы расширим созданную на предыдущих этапах схему домена с помощью домена справочников и человекочитаемых идентификаторов.
Перечисления и сущности-справочники
В доменах может понадобиться ограничить возможные значения свойств сущности. Для этого существуют два разных механизма — перечисления и справочники.
-
Перечисление — это пользовательский тип данных атрибута с жестко заданным в схеме домена списком значений:
-
Изменять список значений могут только пользователи, имеющие разрешение на управление элементами экспертизы.
-
Перечисление используется там, где набор значений известен заранее и не меняется. Например, уровень критичности инцидента — низкий, средний, высокий; тип сети — виртуальная или физическая.
-
-
Справочник — это отдельная сущность в домене, значения которой могут изменять пользователи:
-
Добавлять и редактировать экземпляры могут все пользователи, которым выданы разрешения на действия в домене.
-
Справочник может иметь дополнительные атрибуты.
-
Создание домена для справочников
Создадим новый домен для сущностей-справочников и опишем сущность Категории инцидентов.
id: dictionaries.test
type: domain
version: 0.0.1
name: Dictionary Domain
description: Справочники
status: test
date: 2025-08-02
author: John Doe
tags: [dictionaries]
entities:
- id: IncidentCategoryDict
name: Категории
label: "{categoryName}"
attributes:
- id: categoryName
name: Название
dataType: String
- id: categoryDescription
name: Описание
dataType: String
- id: categorySource
name: Источник
dataType: String
Опишем действия с сущностью, ее представления и меню домена:
Пример описания интерфейса в домене
id: dictionaries.test
...
actions:
- id: actions_createCategory
name: Добавить
type: open_modal
modal: forms_newCategory
entity: IncidentCategoryDict
operation: create
description: Открыть форму для создания категории
- id: actions_openCategoryPanel
name: Категория
type: open_panel
panel: panels_CategoryPanel
entity: IncidentCategoryDict
- id: actions_bulkRemoveCategories
name: Удалить
type: bulk
entity: IncidentCategoryDict
operation: remove
description: Удаление сущностей
views:
- id: categoryViews
type: entity
entity: IncidentCategoryDict
widgets:
- id: editors_categoryName
type: attribute
attribute: categoryName
description: Поле для ввода названия
- id: editors_categoryDescription
type: attribute
attribute: categoryDescription
description: Поле для ввода описания
- id: editors_categorySource
type: attribute
attribute: categorySource
description: Поле для источника
- id: buttons_createCategory
type: action
action: actions_createCategory
description: Кнопка регистрации категории
control:
type: regular_button
- id: buttons_bulkRemoveCategories
type: action
action: actions_bulkRemoveCategories
description: Кнопка удаления категорий
control:
type: regular_button
groups:
- id: blocks_categoryInfo
type: block
layout:
direction: column
expandable: false
components:
- widget: editors_categorySource
- widget: editors_categoryDescription
- widget: editors_categoryName
- id: tabs_categoryInfo
type: tab
label: Информация
description: Вкладка информации о категории
components:
- block: blocks_categoryInfo
- id: blocks_forms_newCategory
description: Блок формы для регистрации данных записи категории
type: form
layout:
direction: column
components:
- widget: editors_categoryName
- widget: editors_categoryDescription
- widget: editors_categorySource
views:
- id: panels_CategoryPanel
name: Панель просмотра категории
type: panel
label: "{categoryName}"
tabs:
- tab: tabs_categoryInfo
- id: forms_newCategory
description: Форма регистрации данных категории
type: modal
form: blocks_forms_newCategory
label: Регистрация категории
- id: lists_category_entities
type: list
actionPanel:
- widget: buttons_createCategory
- widget: buttons_bulkRemoveCategories
source:
type: operational
entity: IncidentCategoryDict
label: Список категорий
table:
columns:
- id: name
attribute: categoryName
label: Название
layout:
visible: true
width:
default: 350
min: 50
max: 400
- id: description
attribute: categoryDescription
label: Описание
layout:
visible: true
width:
default: 200
min: 50
max: 250
menus:
- id: enumerations
route: /enumerations
label: Справочники
type: root_group
description: Справочники
placement: top
icon: icons
items:
- id: category
route: /category
label: Категории
type: menu
description: Категории
placement: top
view: lists_category_entities
Наполнение справочника
Создадим объекты категорий в домене справочника. Примеры категорий приведены в таблице.
| Название | Описание |
|---|---|
Attack |
Атака |
DataSecurity |
Защита данных |
HostCompromise |
Компрометация узла |
IllegalSoftwareUsage |
Использование нелегитимного ПО |
MalwareInfection |
Заражение ВПО |
SecurityToolsState |
Состояние СЗИ |
UnauthorizedConfigChange |
Несанкционированное изменение конфигурации |
Undefined |
Не определено |
Создание связи со справочником
Свяжем сущность Инцидент в домене индикаторов компрометации с сущностью Категории из домена справочников:
id: iocs.test
...
linkages:
...
- id: Incident_Category
name: Категория инцидента
description: Категория инцидента
# Ссылка на сущность Категория в домене Справочники.
side1: dictionaries.test/IncidentCategoryDict
# Ссылка на сущность Инцидент.
side2: Incident
type: 1_n
undirected: false
nameFrom:
side1: Инциденты
side2: Категория
Опишем виджет связи с категорией в представлении инцидента:
id: iocs.test
...
views:
# Представление Инцидента.
- id: viewIncident
widgets:
...
- id: editors_link_Incident_Category
type: linkage
linkage: Incident_Category
groups:
# Группа Блок формы создания Инцидента.
- id: blocks_forms_newIncident
...
components:
...
# Ссылка на виджет связи.
- widget: editors_link_Incident_Category
...
# Группа Блока информации.
- id: blocks_infoIncident
...
components:
...
# Ссылка на виджет связи.
- widget: editors_link_Incident_Category
Добавление идентификаторов
Для каждого объекта по умолчанию создается системный атрибут идентификатора с типом UUID. Однако для того, чтобы сформировать человекочитаемый код, по которому объект можно легко найти и отличить от других объектов, в схеме данных нужно настроить атрибуты с типом данных Identifier. Такие атрибуты позволяют формировать структурированные идентификаторы, по которым можно определить дату создания или происхождение объекта.
В схеме домена поддерживаются два основных типа идентификаторов:
-
Несегментированные — простая последовательность чисел с заданным шагом.
-
Сегментированные — составные идентификаторы, которые включают префикс, кодирующий дополнительные данные, и дату в настраиваемом формате.
Добавление несегментированного идентификатора
Индикаторы компрометации обычно создаются в большом количестве, для них достаточно простого несегментированного счётчика, использующего последовательность.
Настройка последовательности
Опишем последовательность в блоке sequences:
id: iocs.test
...
sequences:
- id: IOCSeq
startFrom: 1
description: Последовательность для индикаторов
Добавление атрибута и виджетов
Добавим к сущности Индикатор атрибут идентификатора и опишем его в представлениях:
id: iocs.test
...
entities:
- id: Ioc
...
attributes:
...
- id: iocId
name: Идентификатор IOC
dataType: Identifier
# Ссылка на FQID последовательности, используемой в атрибуте.
sequence: IOCSeq
...
views:
# Представление Индикатора.
- id: viewIoc
widgets:
# Виджет атрибута идентификатора.
- id: editors_iocId
type: attribute
attribute: iocId
...
groups:
# Блок информации об индикаторе.
- id: blocks_infoIoc
...
components:
# Ссылка на виджет атрибута.
- widget: editors_iocId
...
...
# Представление Списка индикаторов.
- id: lists_iocs
...
table:
columns:
...
- id: iocId
# Ссылка на атрибут идентификатора.
attribute: iocId
label: Идентификатор
Сегментированный идентификатор с датой
Для источников индикаторов используем шаблон с датой, чтобы идентификатор отражал время создания записи. Шаблон описывается в поле template.
id: iocs.test
...
entities:
...
# Сущность Источник индикатора
- id: IocSource
...
attributes:
...
- id: sourceId
name: Идентификатор источника
dataType: Identifier
# Шаблон с годом, месяцем и инкрементом.
template: "{@YYYY}-{@MM}-{@inc}"
Примеры идентификаторов, сгенерированных согласно шаблону:
-
2025-10-1 -
2025-10-2
Добавим атрибут идентификатора в представления:
Пример идентификатора в представлениях
id: iocs.test
...
views:
- id: viewIocSource
widgets:
- id: editors_sourceId
type: attribute
# Ссылка на атрибут идентификатора.
attribute: sourceId
...
groups:
- id: blocks_infoIocSource
...
components:
- widget: editors_sourceId
...
...
- id: lists_iocSources
...
table:
columns:
- id: sourceId
attribute: sourceId
label: Идентификатор
...
Сегментированный идентификатор с префиксом и датой
Чтобы можно было визуально различать инциденты разных типов, используем идентификатор с датой и префиксом. Тип инцидента хранится в отдельном справочнике.
Создание справочника для определения префикса
Создадим сущность Тип инцидента в домене справочников с атрибутами полного названия, описания и короткого кода для идентификатора:
# Домен справочников.
id: dictionaries.test
...
entities:
...
- id: IncidentTypeDict
name: Тип инцидента
attributes:
- id: fullName
name: Название
dataType: String
- id: shortCode
name: Код типа
dataType: String
- id: typeDescription
name: Описание
dataType: String
Опишем действия с сущностью и ее представления:
Пример описания действий и представлений
actions:
...
# Действия с типом инцидента
- id: actions_createType
name: Добавить
type: open_modal
modal: forms_newType
entity: IncidentTypeDict
operation: create
description: Открыть форму для создания типа
- id: actions_openTypePanel
name: Категория
type: open_panel
panel: panels_TypePanel
entity: IncidentTypeDict
- id: actions_bulkRemoveTypes
name: Удалить
type: bulk
entity: IncidentTypeDict
operation: remove
description: Удаление типов
views:
...
# Представление типа инцидента.
- id: typeViews
type: entity
entity: IncidentTypeDict
widgets:
- id: editors_fullName
type: attribute
attribute: fullName
description: Поле для ввода названия
- id: editors_shortCode
type: attribute
attribute: shortCode
description: Поле для ввода короткого кода
- id: editors_typeDescription
type: attribute
attribute: typeDescription
description: Поле для ввода короткого кода
- id: buttons_createType
type: action
action: actions_createType
description: Кнопка регистрации типа
control:
type: regular_button
- id: buttons_bulkRemoveTypes
type: action
action: actions_bulkRemoveTypes
description: Кнопка удаления типов
control:
type: regular_button
groups:
- id: blocks_typeInfo
type: block
layout:
direction: column
expandable: false
components:
- widget: editors_fullName
- widget: editors_shortCode
- widget: editors_typeDescription
- id: tabs_typeInfo
type: tab
label: Информация
description: Вкладка информации о типе
components:
- block: blocks_typeInfo
- id: blocks_forms_newType
description: Блок формы для регистрации данных типа
type: form
layout:
direction: column
components:
- widget: editors_fullName
- widget: editors_shortCode
- widget: editors_typeDescription
views:
- id: panels_TypePanel
name: Панель просмотра типа
type: panel
label: "{fullName}"
tabs:
- tab: tabs_typeInfo
- id: forms_newType
description: Форма регистрации данных типа
type: modal
form: blocks_forms_newType
label: Регистрация категории
# Представление списка типов.
- id: lists_type_entities
type: list
actionPanel:
- widget: buttons_createType
- widget: buttons_bulkRemoveTypes
source:
type: operational
entity: IncidentTypeDict
label: Список типов
table:
columns:
- id: fullName
attribute: fullName
label: Название
layout:
visible: true
width:
default: 200
min: 50
max: 400
- id: shortCode
attribute: shortCode
label: Код
layout:
visible: true
width:
default: 50
min: 50
max: 250
- id: typeDescription
attribute: typeDescription
label: Описание
layout:
visible: true
width:
default: 250
min: 50
max: 250
menus:
- id: enumerations
...
items:
...
- id: type
route: /type
label: Типы
type: menu
description: Типы инцидентов
placement: top
view: lists_type_entities
Наполнение справочника для идентификатора
Создадим объекты типов в домене справочника. Примеры типов приведены в таблице.
| Название | Код | Описание |
|---|---|---|
AntivirusDisabled |
AVD |
Отключение антивирусного ПО |
Attack |
ATK |
Атака |
AutorunModification |
ARM |
Модификация параметров автозапуска |
BruteForce |
BFC |
Брутфорс |
DataLeakage |
DLK |
Утечка данных |
DataSecurity |
DSC |
Защита данных |
HostCompromise |
HCM |
Компрометация узла |
IllegalSoftwareUsage |
ISU |
Использование нелегитимного ПО |
MaliciousActionsOnEvent |
MAE |
Выполнение вредоносных действий по событию |
MaliciousResources |
MRS |
Вредоносные ресурсы |
MalwareInfection |
MIF |
Заражение вредоносным ПО |
MalwareInjection |
MIJ |
Внедрение вредоносного кода в компоненты системы |
NetworkScan |
NWS |
Сканирование сети |
RemoteControlUsage |
RCU |
Использование средств удалённого управления |
SecurityToolsState |
STS |
Состояние СЗИ |
SoftwareSuspiciousActivity |
SSA |
Подозрительная активность ПО |
SuspiciousWebActivity |
SWA |
Подозрительная веб-активность |
TaskManipulation |
TMN |
Манипуляции с запланированными задачами |
UnauthorizedConfigChange |
UCC |
Несанкционированное изменение конфигурации |
Undefined |
INC |
Не определено |
Добавление атрибута-идентификатора
Опишем атрибут идентификатора для сущности инцидента. В описании атрибута нужно заполнить следующие поля:
-
template— шаблон идентификатора, указывающий формат и порядок сегментов; -
defaultPrefix— префикс по умолчанию; -
incrementTemplate— настройка дополнения инкремента ведущими нулями; -
prefixRules— правила определения префикса:-
id— идентификатор правила; -
attribute— атрибут сущности, с которым будет сравниваться атрибут справочника; -
source— источник префикса. Включает поля:-
entity— сущность-справочник; -
key: атрибут сущности-справочника для сравнения; -
value: атрибут справочника, из которого берется значение префикса.
-
-
id: iocs.test
...
entities:
...
- id: Incident
...
attributes:
...
- id: IncidentTypeDict
name: Тип инцидента
dataType: String
- id: incidentId
name: Идентификатор инцидента
dataType: Identifier
template: "{@prefix}-{@YY}/{@MM}/{@DD}-{@inc}"
# Префикс по умолчанию.
defaultPrefix: INC
# Дополнение нулями до четырех цифр.
incrementTemplate: "0000"
prefixRules:
- id: PrefixByType
attribute: IncidentType
source:
entity: dictionaries.test/IncidentTypeDict
key: fullName
value: shortCode
Примеры сгенерированных идентификаторов:
-
DFC-25/10/08-0001 -
MIN-25/11/08-0016 -
DLK-25/12/15-0103
Добавим атрибут идентификатора в представления инцидента и списка инцидентов:
Пример идентификатора в представлениях
id: iocs.test
...
views:
- id: viewIncident
widgets:
- id: editors_incidentType
type: attribute
attribute: incidentType
- id: editors_incidentId
type: attribute
attribute: incidentId
...
groups:
- id: blocks_forms_newIncident
...
components:
...
- widget: editors_incidentType
- id: blocks_infoIncident
...
components:
- widget: editors_incidentId
...
...
- id: lists_Incidents
...
table:
columns:
- id: incidentId
attribute: incidentId
label: Идентификатор
...
Примеры схем доменов
Пример схемы домена-справочника
id: dictionaries.test
type: domain
version: 0.0.1
name: Dictionary Domain
description: Справочники
status: test
date: 2025-08-02
author: John Doe
tags: [dictionaries]
entities:
- id: IncidentCategoryDict
name: Категории
label: "{categoryName}"
attributes:
- id: categoryName
name: Название
dataType: String
- id: categoryDescription
name: Описание
dataType: String
- id: categorySource
name: Источник
dataType: String
- id: IncidentTypeDict
name: Тип инцидента
attributes:
- id: fullName
name: Название
dataType: String
- id: shortCode
name: Код типа
dataType: String
- id: typeDescription
name: Описание
dataType: String
actions:
- id: actions_createCategory
name: Добавить
type: open_modal
modal: forms_newCategory
entity: IncidentCategoryDict
operation: create
description: Открыть форму для создания категории
- id: actions_openCategoryPanel
name: Категория
type: open_panel
panel: panels_CategoryPanel
entity: IncidentCategoryDict
- id: actions_bulkRemoveCategories
name: Удалить
type: bulk
entity: IncidentCategoryDict
operation: remove
description: Удаление сущностей
- id: actions_createType
name: Добавить
type: open_modal
modal: forms_newType
entity: IncidentTypeDict
operation: create
description: Открыть форму для создания типа
- id: actions_openTypePanel
name: Категория
type: open_panel
panel: panels_TypePanel
entity: IncidentTypeDict
- id: actions_bulkRemoveTypes
name: Удалить
type: bulk
entity: IncidentTypeDict
operation: remove
description: Удаление типов
views:
- id: categoryViews
type: entity
entity: IncidentCategoryDict
widgets:
- id: editors_categoryName
type: attribute
attribute: categoryName
description: Поле для ввода названия
- id: editors_categoryDescription
type: attribute
attribute: categoryDescription
description: Поле для ввода описания
- id: editors_categorySource
type: attribute
attribute: categorySource
description: Поле для источника
- id: buttons_createCategory
type: action
action: actions_createCategory
description: Кнопка регистрации категории
control:
type: regular_button
- id: buttons_bulkRemoveCategories
type: action
action: actions_bulkRemoveCategories
description: Кнопка удаления категорий
control:
type: regular_button
groups:
- id: blocks_categoryInfo
type: block
layout:
direction: column
expandable: false
components:
- widget: editors_categorySource
- widget: editors_categoryDescription
- widget: editors_categoryName
- id: tabs_categoryInfo
type: tab
label: Информация
description: Вкладка информации о категории
components:
- block: blocks_categoryInfo
- id: blocks_forms_newCategory
description: Блок формы для регистрации данных записи категории
type: form
layout:
direction: column
components:
- widget: editors_categoryName
- widget: editors_categoryDescription
- widget: editors_categorySource
views:
- id: panels_CategoryPanel
name: Панель просмотра категории
type: panel
label: "{categoryName}"
tabs:
- tab: tabs_categoryInfo
- id: forms_newCategory
description: Форма регистрации данных категории
type: modal
form: blocks_forms_newCategory
label: Регистрация категории
- id: lists_category_entities
type: list
actionPanel:
- widget: buttons_createCategory
- widget: buttons_bulkRemoveCategories
source:
type: operational
entity: IncidentCategoryDict
label: Список категорий
table:
columns:
- id: name
attribute: categoryName
label: Название
layout:
visible: true
width:
default: 350
min: 50
max: 400
- id: description
attribute: categoryDescription
label: Описание
layout:
visible: true
width:
default: 200
min: 50
max: 250
- id: typeViews
type: entity
entity: IncidentTypeDict
widgets:
- id: editors_fullName
type: attribute
attribute: fullName
description: Поле для ввода названия
- id: editors_shortCode
type: attribute
attribute: shortCode
description: Поле для ввода короткого кода
- id: editors_typeDescription
type: attribute
attribute: typeDescription
description: Поле для ввода короткого кода
- id: buttons_createType
type: action
action: actions_createType
description: Кнопка регистрации типа
control:
type: regular_button
- id: buttons_bulkRemoveTypes
type: action
action: actions_bulkRemoveTypes
description: Кнопка удаления типов
control:
type: regular_button
groups:
- id: blocks_typeInfo
type: block
layout:
direction: column
expandable: false
components:
- widget: editors_fullName
- widget: editors_shortCode
- widget: editors_typeDescription
- id: tabs_typeInfo
type: tab
label: Информация
description: Вкладка информации о типе
components:
- block: blocks_typeInfo
- id: blocks_forms_newType
description: Блок формы для регистрации данных типа
type: form
layout:
direction: column
components:
- widget: editors_fullName
- widget: editors_shortCode
- widget: editors_typeDescription
views:
- id: panels_TypePanel
name: Панель просмотра типа
type: panel
label: "{fullName}"
tabs:
- tab: tabs_typeInfo
- id: forms_newType
description: Форма регистрации данных типа
type: modal
form: blocks_forms_newType
label: Регистрация категории
- id: lists_type_entities
type: list
actionPanel:
- widget: buttons_createType
- widget: buttons_bulkRemoveTypes
source:
type: operational
entity: IncidentTypeDict
label: Список типов
table:
columns:
- id: fullName
attribute: fullName
label: Название
layout:
visible: true
width:
default: 200
min: 50
max: 400
- id: shortCode
attribute: shortCode
label: Код
layout:
visible: true
width:
default: 50
min: 50
max: 250
- id: typeDescription
attribute: typeDescription
label: Описание
layout:
visible: true
width:
default: 250
min: 50
max: 250
menus:
- id: enumerations
route: /enumerations
label: Справочники
type: root_group
description: Справочники
placement: top
items:
- id: category
route: /category
label: Категории
type: menu
description: Категории
placement: top
view: lists_category_entities
- id: type
route: /type
label: Типы
type: menu
description: Типы инцидентов
placement: top
view: lists_type_entities
Пример схемы домена с идентификаторами и связью со справочником
id: iocs.test
type: domain
version: 0.0.3
name: IOCs Domain
description: Домен индикаторов компрометации
status: test
date: 2025-08-01
author: John Doe
tags: [iocs]
entities:
- id: Ioc
name: Индикатор
label: "{type}: {value}"
description: Индикатор компрометации
attributes:
- id: value
name: Значение
description: Значение индикатора компрометации
dataType: String
- id: type
name: Тип
description: Тип индикатора компрометации
dataType: enumIocTypes
- id: refIocSourcesArray
name: Источник индикатора
dataType: Array
item:
dataType: Reference
entity: IocSource
- id: iocId
name: Идентификатор IOC
dataType: Identifier
sequence: IOCSeq
- id: IocSource
name: Источник индикатора
label: "{sourceName}"
description: Источник индикатора компрометации
attributes:
- id: sourceName
name: Название
description: Название источника индикатора
dataType: String
- id: sourceDescription
name: Описание
description: Описание источника индикатора
dataType: String
- id: sourceId
name: Идентификатор источника
dataType: Identifier
template: "{@YYYY}-{@MM}-{@inc}"
- id: Incident
name: Инцидент
label: "{incidentSubject}"
attributes:
- id: incidentSubject
name: Тема
dataType: String
- id: incidentDescription
name: Описание
dataType: String
- id: Urgency
name: Срочность
dataType: IncUrgency
- id: incidentType
name: Тип инцидента
dataType: String
- id: incidentId
name: Идентификатор инцидента
dataType: Identifier
template: "{@prefix}-{@YY}/{@MM}/{@DD}-{@inc}"
defaultPrefix: INC
incrementTemplate: "0000"
prefixRules:
- id: PrefixByType
attribute: incidentType
source:
entity: dictionaries.test/IncidentTypeDict
key: fullName
value: shortCode
dataTypes:
- id: enumIocTypes
name: Типы индикаторов компрометации
dataType: Enum
values:
- id: Account
name: Аккаунт
- id: File
name: Файл
- id: Domain
name: Домен
- id: URL
name: URL
- id: Email
name: Email
- id: IP
name: IP
- id: IPv6
name: IPv6
- id: MD5Hash
name: Хэш MD5
- id: SHA1Hash
name: Хэш SHA-1
- id: SHA256Hash
name: Хэш SHA-256
- id: IncUrgency
name: Критичность
description: Критичность
dataType: Enum
values:
- id: criticalityHigh
name: Высокая
value: 1
- id: criticalityMedium
name: Средняя
value: 2
- id: criticalityLow
name: Низкая
value: 3
sequences:
- id: IOCSeq
startFrom: 1
description: Последовательность для индикаторов
linkages:
- id: Incident_Ioc
name: Инцидент связан с индикатором компрометации
description: В данных инцидента обнаружен индикатор компрометации
side1: Incident
side2: Ioc
type: n_n
undirected: true
nameFrom:
side1: Содержит индикатор
side2: Связан с инцидентом
- id: Incident_Category
name: Категория инцидента
description: Категория инцидента
side1: dictionaries.test/IncidentCategoryDict
side2: Incident
type: 1_n
undirected: false
nameFrom:
side1: Инциденты
side2: Категория
menus:
- id: menus_iocs
route: /iocs
label: "Индикаторы компрометации"
type: root_group
description: Меню домена Индикаторы
placement: top
items:
- id: IndicatorsMenu
route: /iocs/indicators
label: Индикаторы компрометации
type: menu
view: lists_iocs
description: Меню раздела Индикаторы.
- id: IocSourceMenu
route: /iocs/sources
label: Источники
type: menu
view: lists_iocSources
description: Меню раздела Источники
- id: IncidentMenu
route: /iocs/incidents
label: Инциденты
type: menu
view: lists_Incidents
description: Меню раздела Инциденты.
actions:
- id: actions_createIoc
name: Добавить
type: open_modal
modal: forms_newIoc
entity: Ioc
operation: create
description: Открыть модальное окно создания индикатора
- id: actions_openIocPanel
name: Детали
type: open_panel
panel: panels_infoIoc
entity: Ioc
description: Открыть панель с информацией об индикаторе
- id: actions_bulkRemoveIocs
name: Удалить
type: bulk
entity: Ioc
operation: remove
description: Удалить индикатор
- id: actions_createIocSource
name: Добавить
type: open_modal
modal: forms_newIocSource
operation: create
entity: IocSource
description: Открыть модальное окно создания источника
- id: actions_openIocSourcePanel
name: Детали
type: open_panel
panel: panels_infoIocSource
entity: IocSource
description: Открыть панель с информацией об индикаторе
- id: actions_bulkRemoveIocSources
name: Удалить
type: bulk
entity: IocSource
operation: remove
description: Удалить индикаторы
- id: actions_createIncident
name: Добавить
type: open_modal
modal: forms_newIncident
operation: create
entity: Incident
description: Открыть модальное окно создания инцидента
- id: actions_openIncidentPanel
name: Детали
type: open_panel
panel: panels_infoIncident
entity: Incident
description: Открыть панель с информацией об инциденте
- id: actions_bulkRemoveIncidents
name: Удалить
type: bulk
entity: Incident
operation: remove
description: Удалить инциденты
views:
- id: viewIoc
type: entity
entity: Ioc
widgets:
- id: editors_iocType
type: attribute
attribute: type
description: Поле для ввода типа индикатора
- id: editors_iocValue
type: attribute
attribute: value
description: Поле для ввода значения индикатора
- id: editors_iocSource
type: attribute
attribute: refIocSourcesArray
description: Поле для выбора источников индикатора
- id: editors_iocId
type: attribute
attribute: iocId
- id: buttons_createIoc
type: action
action: actions_createIoc
description: Кнопка, которая запускает действие создания индикатора. Действие открывает модальную форму создания записи.
control:
type: regular_button
label: Добавить
- id: buttons_removeIocs
type: action
action: actions_bulkRemoveIocs
description: Кнопка для удаления индикаторов
control:
type: regular_button
label: Удалить
- id: editors_link_Ioc_Incident
type: linkage
linkage: Incident_Ioc
label: Инциденты
description: Связанные инциденты
side: 1
control:
type: table
addLinksView: lists_Incidents
columns:
- id: incidentSubject
attribute: incidentSubject
groups:
- id: blocks_infoIoc
description: Информация об индикаторе
type: block
layout:
direction: column
expandable: false
components:
- widget: editors_iocId
- widget: editors_iocType
- widget: editors_iocValue
- widget: editors_iocSource
- widget: editors_link_Ioc_Incident
- id: tabs_infoIoc
description: Информация об индикаторе
type: tab
label: Детали
components:
- block: blocks_infoIoc
- id: blocks_forms_newIoc
description: Блок формы для создания индикатора
type: form
layout:
direction: column
components:
- widget: editors_iocType
- widget: editors_iocValue
- widget: editors_iocSource
- widget: editors_link_Ioc_Incident
views:
- id: panels_infoIoc
description: Детали индикатора
type: panel
label: "Ioc {type}: {value}"
tabs:
- tab: tabs_infoIoc
- id: forms_newIoc
description: Форма создания индикатора
type: modal
form: blocks_forms_newIoc
label: Добавление индикатора
- id: lists_iocs
type: list
source:
type: operational
entity: Ioc
label: Индикаторы компрометации
actionPanel:
- widget: buttons_createIoc
- widget: buttons_removeIocs
table:
columns:
- id: iocId
attribute: iocId
label: Идентификатор
- id: type
attribute: type
label: Тип
layout:
width:
default: 100
min: 50
max: 100
- id: value
attribute: value
label: Значение
layout:
width:
default: 100
min: 50
max: 150
- id: createdAt
attribute: createdAt
label: Дата создания
type: timestamp
layout:
width:
default: 100
min: 50
max: 100
- id: updatedAt
attribute: updatedAt
label: Дата изменения
type: timestamp
layout:
width:
default: 100
min: 50
max: 100
actions:
- type: row_click
action: actions_openIocPanel
selection: true
- id: viewIocSource
type: entity
entity: IocSource
widgets:
- id: editors_iocSourceName
type: attribute
attribute: sourceName
description: Поле для ввода названия источника
- id: editors_iocSourceDescription
type: attribute
attribute: sourceDescription
description: Поле для ввода описания источника
- id: editors_sourceId
type: attribute
attribute: sourceId
- id: buttons_createIocSource
type: action
action: actions_createIocSource
description: Кнопка, которая запускает действие создания источника. Действие открывает модальную форму создания записи.
control:
type: regular_button
label: Добавить
- id: buttons_removeIocSources
type: action
action: actions_bulkRemoveIocSources
description: Кнопка для удаления источников индикаторов
control:
type: regular_button
label: Удалить
groups:
- id: blocks_forms_newIocSource
description: Блок формы для создания источника индикатора
type: form
layout:
direction: column
components:
- widget: editors_iocSourceName
- widget: editors_iocSourceDescription
- id: blocks_infoIocSource
description: Информация об источнике индикатора
type: block
layout:
direction: column
components:
- widget: editors_sourceId
- widget: editors_iocSourceName
- widget: editors_iocSourceDescription
- id: tabs_infoIocSource
description: Информация об источнике индикатора
type: tab
label: Детали
components:
- block: blocks_infoIocSource
views:
- id: forms_newIocSource
description: Форма создания источника индикатора
type: modal
form: blocks_forms_newIocSource
label: Добавление индикатора
- id: panels_infoIocSource
description: Детали источника индикатора
type: panel
label: "Источник {sourceName}"
tabs:
- tab: tabs_infoIocSource
- id: lists_iocSources
type: list
source:
type: operational
entity: IocSource
label: Источники индикаторов
table:
columns:
- id: sourceId
attribute: sourceId
label: Идентификатор
- id: name
attribute: sourceName
label: Название
layout:
width:
default: 100
min: 50
max: 100
- id: description
attribute: sourceDescription
label: Описание
layout:
width:
default: 100
min: 50
max: 150
actions:
- type: row_click
action: actions_openIocSourcePanel
selection: true
actionPanel:
- widget: buttons_createIocSource
- widget: buttons_removeIocSources
- id: viewIncident
type: entity
entity: Incident
widgets:
- id: editors_incidentSubject
type: attribute
attribute: incidentSubject
description: Поле для темы
- id: editors_incidentDescription
type: attribute
attribute: incidentDescription
description: Поле для описания
- id: editors_Author
type: attribute
attribute: createdBy
description: Поле для указания автора инцидента
- id: editors_Opened
type: attribute
attribute: createdAt
description: Поле для указания даты создания инцидента
- id: editors_Urgency
type: attribute
attribute: Urgency
description: Поле для указания срочности
- id: editors_link_Incident_Category
type: linkage
linkage: Incident_Category
- id: editors_incidentType
type: attribute
attribute: incidentType
- id: editors_incidentId
type: attribute
attribute: incidentId
- id: buttons_createIncident
type: action
action: actions_createIncident
description: Кнопка, которая запускает действие создания инцидента. Действие открывает модальную форму создания записи.
control:
type: regular_button
label: Добавить
- id: buttons_removeIncidents
type: action
action: actions_bulkRemoveIncidents
description: Кнопка для удаления инцидентов
control:
type: regular_button
label: Удалить
groups:
- id: blocks_forms_newIncident
description: Блок формы для создания инцидента
type: form
layout:
direction: column
components:
- widget: editors_incidentSubject
- widget: editors_incidentDescription
- widget: editors_Urgency
- widget: editors_link_Incident_Category
- widget: editors_incidentType
- id: blocks_infoIncident
description: Информация об инциденте
type: block
layout:
direction: column
components:
- widget: editors_incidentId
- widget: editors_incidentSubject
- widget: editors_incidentDescription
- widget: editors_Urgency
- widget: editors_Author
- widget: editors_Opened
- widget: editors_link_Incident_Category
- id: tabs_infoIncident
description: Информация об инциденте
type: tab
label: Детали
components:
- block: blocks_infoIncident
views:
- id: forms_newIncident
description: Форма создания инцидента
type: modal
form: blocks_forms_newIncident
label: Добавление инцидента
- id: panels_infoIncident
description: Детали источника индикатора
type: panel
label: "{incidentSubject}"
tabs:
- tab: tabs_infoIncident
- id: lists_Incidents
type: list
source:
type: operational
entity: Incident
label: Источники индикаторов
table:
columns:
- id: incidentId
attribute: incidentId
label: Идентификатор
- id: incidentSubject
attribute: incidentSubject
label: Тема
layout:
width:
default: 100
min: 100
max: 150
- id: incidentDescription
attribute: incidentDescription
label: Описание
layout:
width:
default: 200
min: 200
max: 250
- id: Opened
attribute: createdAt
label: Дата регистрации
layout:
width:
default: 100
min: 100
max: 150
- id: Urgency
attribute: Urgency
label: Срочность
layout:
width:
default: 100
min: 100
max: 150
- id: Author
attribute: createdBy
label: Автор
layout:
width:
default: 100
min: 100
max: 150
actions:
- type: row_click
action: actions_openIncidentPanel
selection: true
actionPanel:
- widget: buttons_createIncident
- widget: buttons_removeIncidents
Была ли полезна эта страница?