Экспериментальная версия. Функциональность может сильно измениться. Совместимость с будущими версиями не гарантируется.
Политики безопасности
Примеры применения политик смотрите в Примерах.
NvSecurityRule
NvSecurityRule
задаёт политики безопасности, применяемые к рабочим нагрузкам внутри определённого пространства имён. Эти правила действуют только в том пространстве имён, где они развернуты, и затрагивают только цели внутри него.
Возможности:
- Применение в рамках одного пространства имен.
- Правила входящего/исходящего сетевого трафика.
- Контроль запуска процессов и доступа к файлам.
- Поддержка политик DLP и WAF.
NvClusterSecurityRule
NvClusterSecurityRule
определяет глобальные политики безопасности, применяемые ко всему кластеру вне зависимости от границ пространств имён. Такие правила подходят для обеспечения единых стандартов безопасности и базовой защиты.
Возможности:
- Применение на уровне всего кластера.
- Глобальные базовые политики безопасности.
- Управление политиками между пространствами имен.
- Поддержка федеративных политик.
NvGroupDefinition
NvGroupDefinition
позволяет создавать переиспользуемые критерии групп, на которые можно ссылаться из политик безопасности. Это обеспечивает модульность и согласованность при разработке политик.
Возможности:
- Определение переиспользуемых групп.
- Централизованное управление группами.
- Поддержка ссылок по имени (
name_referral
) - Упрощение сопровождения политик.
Политики контроля допуска
NvAdmissionControlSecurityRule
NvAdmissionControlSecurityRule
определяет политики, проверяющие и, при необходимости, блокирующие развертывание рабочих нагрузок на этапе приёма, в зависимости от заданных критериев безопасности.
Возможности:
- Интеграция с Kubernetes Admission Control.
- Проверка соответствия развертываний.
- Принудительное применение правил безопасности на этапе развертывания.
- Проверка на соответствие политике безопасности.
Специализированные политики безопасности
NvDlpSecurityRule
NvDlpSecurityRule
задаёт правила защиты от утечек конфиденциальных данных и обеспечивает соответствие требованиям обработки данных.
Возможности:
- Обнаружение чувствительных данных.
- Предотвращение утечек информации.
- Применение политик соответствия.
- Поддержка пользовательских шаблонов.
NvComplianceProfile
NvComplianceProfile
определяет стандарты соответствия, правила сканирования и отчётности. Используется для обеспечения нормативных требований.
Возможности:
- Описание стандартов соответствия.
- Автоматическое сканирование.
- Конфигурация отчётности.
- Поддержка пользовательских проверок.
NvVulnerabilityProfile
NvVulnerabilityProfile
определяет правила оценки уязвимостей и настройки управления рисками.
Возможности:
- Сканирование на уязвимости.
- Оценка рисков.
- Настройка процессов устранения.
- Пользовательские критерии.
NvWafSecurityRule
NvWafSecurityRule
задаёт правила защиты веб-приложений и фильтрации трафика.
Настройка политик безопасности
Чтобы применять политики безопасности, необходимо задать параметры цели (target
), режим работы и соответствующие правила. Ниже описаны ключевые элементы спецификации и примеры их использования.
Определение цели политики (target)
Каждая политика должна содержать блок target
, в котором указывается, к каким нагрузкам она применяется:
target:
policymode: Protect # Возможные значения: Discover, Monitor, Protect.
selector:
name: group-name
criteria:
- key: service
value: service-name
op: "="
- key: domain
value: namespace
op: "="
здесь:
criteria
— это набор условий (критериев), по которым политика применяется к определённым объектам: подам, контейнерам, сервисам и т.д.- режимы политик:
Discover
— наблюдение: записывать действия без ограничений.Monitor
— контроль: фиксировать нарушения, но разрешать трафик.Protect
— защита: активно блокировать нарушения.
Подробнее о режимах политик в разделе Описание
Сетевые правила
Сетевые правила определяют, какой входящий и исходящий трафик разрешён или запрещён:
ingress:
- action: allow|deny
name: rule-name
selector:
name: source-group
criteria:
- key: selector-key
value: selector-value
op: operator
ports: "tcp/80,tcp/443"
applications: ["HTTP", "SSL"]
priority: 0
Поддерживаемые приложения: HTTP, SSL, PostgreSQL, Redis, SSH, Kafka, MongoDB, MySQL и другие.
Правила процессов
Определяют, какие процессы разрешены или запрещены к запуску:
process:
- action: allow|deny
name: process-name
path: /path/to/process
allow_update: true|false
Правила доступа к файлам
Ограничивают доступ к файлам и каталогам:
file:
- behavior: monitor_change|block_access
filter: /path/to/file/or/directory
recursive: true|false
app: ["allowed-applications"]
Профили процессов
Определяют базовые поведенческие шаблоны работы процессов:
process_profile:
baseline: default|shield|basic|zero-drift
mode: Discover|Monitor|Protect
Операторы селекторов
Для гибкой настройки политик селекторы поддерживают различные операторы:
Оператор | Назначение | Пример |
---|---|---|
= |
Точное совпадение | value: "web-app" |
!= |
Не равно | value: "test" |
contains |
Содержит подстроку | value: "web" |
prefix |
Начинается с | value: "app-" |
regex |
Регулярное выражение | value: "^web-.*" |
!regex |
Отрицательное регулярное | value: "^(?!test).*" |
Использование ссылок на группы
Если вы заранее определили группы в NvGroupDefinition
, вы можете сослаться на них в политике:
selector:
name: predefined-group
name_referral: true
# Условия criteria будут проигнорированы и загружены из NvGroupDefinition.
Соглашения по именованию
- Используйте описательные имена правил:
web-to-database-access
. - Следуйте согласованному именованию групп:
nv.service.namespace
. - Избегайте зарезервированных префиксов:
fed.
,nv.ip.
,host:
,workload:
. - Имена должны соответствовать шаблону:
^[a-zA-Z0-9]+[.:a-zA-Z0-9_-]*$
.