Экспериментальная версия. Функциональность может сильно измениться. Совместимость с будущими версиями не гарантируется.
Как посмотреть все ресурсы, которые не прошли CIS compliance-проверки?
kubectl get clustercompliancereports.aquasecurity.github.io cis -ojson |
jq '.status.detailReport.results | map(select(.checks | map(.success) | all | not))'
Как посмотреть ресурсы, которые не прошли конкретную CIS compliance-проверку?
По id
:
check_id="5.7.3"
kubectl get clustercompliancereports.aquasecurity.github.io cis -ojson |
jq --arg check_id "$check_id" '.status.detailReport.results | map(select(.id == $check_id))'
По описанию:
check_desc="Apply Security Context to Your Pods and Containers"
kubectl get clustercompliancereports.aquasecurity.github.io cis -ojson |
jq --arg check_desc "$check_desc" '.status.detailReport.results | map(select(.description == $check_desc))'
Как вручную перезапустить сканирование ресурса и когда происходит повторное сканирование?
Модуль выполняет повторное сканирование ресурсов каждые 24 часа согласно следующему алгоритму:
- В пространстве имён c каждым просканированным ресурсом создаётся объект
VulnerabilityReport
. - В этом объекте присутствует аннотация
trivy-operator.aquasecurity.github.io/report-ttl
, которая указывает время жизни отчёта (по умолчанию -24h
). - По истечении этого времени объект удаляется, что вызывает повторное сканирование ресурса.
Принудительно запустить повторное сканирование ресурса можно одним из двух способов:
- Перезапишите аннотацию
trivy-operator.aquasecurity.github.io/report-ttl
, указав короткое время жизни отчёта. - Удалите объект
VulnerabilityReport
из пространства имён, где находится просканированный ресурс.
Пример команды для перезаписи аннотации trivy-operator.aquasecurity.github.io/report-ttl
:
kubectl annotate VulnerabilityReport -n <namespace> <reportName> trivy-operator.aquasecurity.github.io/report-ttl=1s --overwrite