В модуле реализовано 4 алерта.
Модуль включен по умолчанию в наборах модулей: Default
, Managed
.
Модуль выключен по умолчанию в наборе модулей Minimal
.
Чтобы настроить модуль, используйте custom resource ModuleConfig
с именем admission-policy-engine
(подробнее о настройке Deckhouse…).
Пример ресурса ModuleConfig/admission-policy-engine
для настройки модуля:
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: admission-policy-engine
spec:
version: 1
enabled: true
settings: # <-- Параметры модуля из раздела "Параметры" ниже.
Параметры
Версия схемы: 1
- settings
- settings.denyVulnerableImages
Настройки trivy-провайдера.
Trivy-провайдер запрещает создание
Pod
/Deployment
/StatefulSet
/DaemonSet
с образами, которые имеют уязвимости в пространствах имен с лейбломsecurity.deckhouse.io/trivy-provider: ""
.Доступно только в enterprise edition.
- settings.denyVulnerableImages.enabled
Включить trivy-провайдер.
По умолчанию:
false
- settings.denyVulnerableImages.registrySecrets
Список дополнительных секретов приватных регистри.
По умолчанию для загрузки образов для сканирования используется секрет
deckhouse-registry
.По умолчанию:
[]
- settings.denyVulnerableImages.registrySecrets.name
Обязательный параметр
- settings.denyVulnerableImages.registrySecrets.namespace
Обязательный параметр
- settings.denyVulnerableImages.storageClass
Имя StorageClass для использования
trivy_provider
.Если значение не указано, то будет использоваться StorageClass, согласно настройке глобального параметра storageClass.
Настройка глобального параметра
storageClass
учитывается только при включении модуля. Изменение глобального параметраstorageClass
при включенном модуле не приведет к перезаказу диска.Внимание. Если указать значение, отличное от текущего (используемого в существующей PVC), диск будет перезаказан, и все данные удалятся.
Если указать
false
, будет принудительно использоватьсяemptyDir
.Примеры:
storageClass: ceph-ssd
storageClass: 'false'
- settings.podSecurityStandards
Настройки политик Pod Security Standards (PSS).
- settings.podSecurityStandards.defaultPolicy
Определяет политику Pod Security Standards по умолчанию для всех несистемных пространств имен:
Privileged
— политика без ограничений. Данная политика допускает эскалацию привилегий;Baseline
— политика с минимальными ограничениями, ограничивающая использование эскалаций привилегий;Restricted
— политика с максимальными ограничениями, соотвествущая актуальным рекомендациям по безопасному запуску приложений в кластере.
По умолчанию:
Baseline
— при первичной установке Deckhouse версии v1.55 и выше;Privileged
— при первичной установке Deckhouse версии ниже v1.55 (обновление Deckhouse в кластере на версию v1.55 и выше не меняет политику по умолчанию наBaseline
).
Допустимые значения:
Privileged
,Baseline
,Restricted
- settings.podSecurityStandards.enforcementAction
Действие, которое будет выполнено по результатам проверки ограничений:
- Deny — запрет;
- Dryrun — отсутствие действия. Применяется при отладке. Информацию о событии можно посмотреть в Grafana или консоли с помощью kubectl;
- Warn — аналогично
Dryrun
, но дополнительно к информации о событии будет выведена информация о том, из-за какого ограничения (constraint) был бы запрет действия, если бы вместоWarn
использовалсяDeny
.
По умолчанию:
"Deny"
Допустимые значения:
Warn
,Deny
,Dryrun
- settings.podSecurityStandards.policies
Определяет дополнительные параметры политик
- settings.podSecurityStandards.policies.hostPorts
Настройки ограничения HostPort.
- settings.podSecurityStandards.policies.hostPorts.knownRanges
Список диапазонов портов, которые будут разрешены в привязке hostPort.
- settings.podSecurityStandards.policies.hostPorts.knownRanges.max
- settings.podSecurityStandards.policies.hostPorts.knownRanges.min