<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9F%D1%80%D0%B8%D1%91%D0%BC_%D1%80%D0%B5%D0%B7%D1%83%D0%BB%D1%8C%D1%82%D0%B0%D1%82%D0%BE%D0%B2_%D1%81%D0%BE%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D0%B8%D1%8F_Kyverno</id>
	<title>Приём результатов соответствия Kyverno - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9F%D1%80%D0%B8%D1%91%D0%BC_%D1%80%D0%B5%D0%B7%D1%83%D0%BB%D1%8C%D1%82%D0%B0%D1%82%D0%BE%D0%B2_%D1%81%D0%BE%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D0%B8%D1%8F_Kyverno"/>
	<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9F%D1%80%D0%B8%D1%91%D0%BC_%D1%80%D0%B5%D0%B7%D1%83%D0%BB%D1%8C%D1%82%D0%B0%D1%82%D0%BE%D0%B2_%D1%81%D0%BE%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D0%B8%D1%8F_Kyverno&amp;action=history"/>
	<updated>2026-10-06T17:59:19Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://doc.ruscomtech.ru/index.php?title=%D0%9F%D1%80%D0%B8%D1%91%D0%BC_%D1%80%D0%B5%D0%B7%D1%83%D0%BB%D1%8C%D1%82%D0%B0%D1%82%D0%BE%D0%B2_%D1%81%D0%BE%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D0%B8%D1%8F_Kyverno&amp;diff=6811&amp;oldid=prev</id>
		<title>IKuznetsov: Новая страница: « = Приём результатов соответствия Kyverno = Принимайте результаты соответствия Kyverno в &#039;&#039;&#039;Ключ-АСТРОМ&#039;&#039;&#039; как события безопасности. С контекстом времени выполнения от &#039;&#039;&#039;Ключ-АСТРОМ&#039;&#039;&#039; вы можете анализировать результаты политик &#039;&#039;&#039;Kubernetes&#039;&#039;&#039; вместе с сервисами и раб...»</title>
		<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9F%D1%80%D0%B8%D1%91%D0%BC_%D1%80%D0%B5%D0%B7%D1%83%D0%BB%D1%8C%D1%82%D0%B0%D1%82%D0%BE%D0%B2_%D1%81%D0%BE%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D0%B8%D1%8F_Kyverno&amp;diff=6811&amp;oldid=prev"/>
		<updated>2026-09-21T17:16:09Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: « = Приём результатов соответствия Kyverno = Принимайте результаты соответствия Kyverno в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; как события безопасности. С контекстом времени выполнения от &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; вы можете анализировать результаты политик &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; вместе с сервисами и раб...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
= Приём результатов соответствия Kyverno =&lt;br /&gt;
Принимайте результаты соответствия Kyverno в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; как события безопасности. С контекстом времени выполнения от &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; вы можете анализировать результаты политик &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; вместе с сервисами и рабочими нагрузками, на которые они влияют.&lt;br /&gt;
&lt;br /&gt;
== Начало работы ==&lt;br /&gt;
&lt;br /&gt;
== Обзор ==&lt;br /&gt;
Интеграция &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; с &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; позволяет унифицировать и контекстуализировать результаты политик и соответствия &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; с другими данными безопасности на платформе &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; — это нативный для &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; движок политик, который проверяет, изменяет и генерирует конфигурации ресурсов. Когда проверяющие политики развёрнуты в кластере, &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; оценивает целевые ресурсы и создаёт стандартизированные отчёты &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Эта интеграция развёртывает пользовательский дистрибутив &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Collector&amp;#039;&amp;#039;&amp;#039;, который читает &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; Kyverno, преобразует результаты политик в события безопасности &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; и отправляет их в конечную точку приёма событий безопасности &amp;#039;&amp;#039;&amp;#039;OpenPipeline&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; сопоставляет принятые данные с сущностями времени выполнения, которые являются частью вашей контролируемой среды, для унифицированного анализа, приоритизации и оркестрации.&lt;br /&gt;
&lt;br /&gt;
== Варианты использования ==&lt;br /&gt;
С принятыми данными вы можете реализовать различные сценарии, такие как:&lt;br /&gt;
&lt;br /&gt;
* Визуализация и анализ результатов безопасности&lt;br /&gt;
* Обнаружение пробелов в покрытии результатов безопасности&lt;br /&gt;
* Автоматизация и оркестрация результатов безопасности&lt;br /&gt;
&lt;br /&gt;
== Требования ==&lt;br /&gt;
Ниже приведены требования для &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; и &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039;, а также &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
=== Требования Kyverno и Kubernetes ===&lt;br /&gt;
&lt;br /&gt;
* Работающий кластер &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; версии 1.26 или новее.&lt;br /&gt;
* &amp;lt;code&amp;gt;kubectl&amp;lt;/code&amp;gt;, настроенный с разрешениями на создание ресурсов &amp;lt;code&amp;gt;ClusterRole&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;ClusterRoleBinding&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Helm&amp;#039;&amp;#039;&amp;#039; 3 или 4.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039;, установленный с включёнными &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* Развёрнутые в кластере проверяющие политики &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Включение OpenReports и настройка метрик Kyverno&amp;#039;&amp;#039;&amp;#039; Включите &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; и настройте контроллеры &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; на отправку метрик через &amp;#039;&amp;#039;&amp;#039;OTLP gRPC&amp;#039;&amp;#039;&amp;#039; со следующими минимальными значениями &amp;#039;&amp;#039;&amp;#039;Helm&amp;#039;&amp;#039;&amp;#039;:&amp;lt;pre&amp;gt;&lt;br /&gt;
openreports:&lt;br /&gt;
  enabled: true&lt;br /&gt;
  installCrds: true&lt;br /&gt;
&lt;br /&gt;
admissionController:&lt;br /&gt;
  metering:&lt;br /&gt;
    disabled: false&lt;br /&gt;
    config: grpc&lt;br /&gt;
    port: 4317&lt;br /&gt;
    collector: otel-collector.astromkey.svc.cluster.local&lt;br /&gt;
&lt;br /&gt;
backgroundController:&lt;br /&gt;
  metering:&lt;br /&gt;
    disabled: false&lt;br /&gt;
    config: grpc&lt;br /&gt;
    port: 4317&lt;br /&gt;
    collector: otel-collector.astromkey.svc.cluster.local&lt;br /&gt;
&lt;br /&gt;
cleanupController:&lt;br /&gt;
  metering:&lt;br /&gt;
    disabled: false&lt;br /&gt;
    config: grpc&lt;br /&gt;
    port: 4317&lt;br /&gt;
    collector: otel-collector.astromkey.svc.cluster.local&lt;br /&gt;
&lt;br /&gt;
reportsController:&lt;br /&gt;
  metering:&lt;br /&gt;
    disabled: false&lt;br /&gt;
    config: grpc&lt;br /&gt;
    port: 4317&lt;br /&gt;
    collector: otel-collector.astromkey.svc.cluster.local&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Требования Ключ-АСТРОМ ===&lt;br /&gt;
Сгенерируйте токен платформы или классический токен доступа и сохраните его для дальнейшего использования.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Область токена платформы&lt;br /&gt;
!Область классического токена доступа&lt;br /&gt;
!Назначение&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;openpipeline:security.events:ingest&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;openpipeline.events_security&amp;lt;/code&amp;gt;&lt;br /&gt;
|Приём событий безопасности через &amp;lt;code&amp;gt;/platform/ingest/v1/security.events&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;openpipeline:metrics:ingest&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;metrics.ingest&amp;lt;/code&amp;gt;&lt;br /&gt;
|Отправка метрик &amp;#039;&amp;#039;&amp;#039;OTLP&amp;#039;&amp;#039;&amp;#039; в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;openpipeline:logs:ingest&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;logs.ingest&amp;lt;/code&amp;gt;&lt;br /&gt;
|Отправка логов &amp;#039;&amp;#039;&amp;#039;OTLP&amp;#039;&amp;#039;&amp;#039; в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;openpipeline:traces:ingest&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;openTelemetryTrace.ingest&amp;lt;/code&amp;gt;&lt;br /&gt;
|Отправка трассировок &amp;#039;&amp;#039;&amp;#039;OTLP&amp;#039;&amp;#039;&amp;#039; в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Активация и настройка ==&lt;br /&gt;
Чтобы интегрировать &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; Kyverno с &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;, разверните пользовательский &amp;#039;&amp;#039;&amp;#039;Коллектор событий безопасности Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; в вашем кластере &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Требуемый образ коллектора доступен по адресу:&amp;lt;pre&amp;gt;&lt;br /&gt;
ghcr.io/astromkey-oss/astromkey-security-events-collector:latest&lt;br /&gt;
&amp;lt;/pre&amp;gt;Этот образ коллектора может принимать, анализировать и преобразовывать &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; Kyverno в события безопасности &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;, которые соответствуют &amp;#039;&amp;#039;&amp;#039;Семантическому словарю Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Используйте один из следующих подходов к развёртыванию.&lt;br /&gt;
&lt;br /&gt;
=== OpenTelemetry Operator ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Рекомендуется&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Используйте этот вариант, если у вас уже установлен &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Operator&amp;#039;&amp;#039;&amp;#039; или вы предпочитаете управление жизненным циклом на основе &amp;#039;&amp;#039;&amp;#039;CRD&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;1. Подготовьте среду&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Создайте пространство имён.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl create namespace astromkey&lt;br /&gt;
&amp;lt;/pre&amp;gt;Создайте секрет &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; с вашей конечной точкой &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039;-токеном и именем кластера.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey create secret generic astromkey-secrets \&lt;br /&gt;
  --from-literal=endpoint=https://&amp;lt;your-environment&amp;gt;.astromkey.com \&lt;br /&gt;
  --from-literal=api-token=dt0XXX.XXXXXXXX \&lt;br /&gt;
  --from-literal=cluster-name=&amp;lt;your-cluster-name&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;Замените:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;amp;#x3C;your-environment&amp;amp;#x3E;&amp;lt;/code&amp;gt; на вашу среду &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* &amp;lt;code&amp;gt;dt0XXX.XXXXXXXX&amp;lt;/code&amp;gt; на токен платформы или классический токен доступа, который вы сгенерировали для этой интеграции.&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;amp;#x3C;your-cluster-name&amp;amp;#x3E;&amp;lt;/code&amp;gt; на имя, идентифицирующее этот кластер в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; (например, &amp;lt;code&amp;gt;prod-eu-1&amp;lt;/code&amp;gt;). Имя кластера необязательно, но рекомендуется для многое кластерных конфигураций.&lt;br /&gt;
&lt;br /&gt;
Примените разрешения &amp;#039;&amp;#039;&amp;#039;RBAC&amp;#039;&amp;#039;&amp;#039;.&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -O https://raw.githubusercontent.com/astromkey-oss/astromkey-security-events-collector/refs/heads/master/manifests/rbac.yaml&lt;br /&gt;
kubectl apply -f rbac.yaml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;#039;&amp;#039;&amp;#039;2. Установите OpenTelemetry Operator&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Пропустите этот шаг, если &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Operator&amp;#039;&amp;#039;&amp;#039; уже установлен в вашем кластере.&amp;lt;pre&amp;gt;&lt;br /&gt;
helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts&lt;br /&gt;
helm install opentelemetry-operator open-telemetry/opentelemetry-operator \&lt;br /&gt;
  --namespace opentelemetry-operator-system --create-namespace&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;#039;&amp;#039;&amp;#039;3. Разверните коллектор&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Файл &amp;lt;code&amp;gt;openTelemetry-manifest_statefulset.yaml&amp;lt;/code&amp;gt; определяет пользовательский ресурс &amp;lt;code&amp;gt;OpenTelemetryCollector&amp;lt;/code&amp;gt;, которым управляет оператор.&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -O https://raw.githubusercontent.com/astromkey-oss/astromkey-security-events-collector/refs/heads/master/manifests/openTelemetry-manifest_statefulset.yaml&lt;br /&gt;
kubectl apply -f openTelemetry-manifest_statefulset.yaml&lt;br /&gt;
&amp;lt;/pre&amp;gt;Используйте пользовательский образ коллектора с &amp;lt;code&amp;gt;ghcr.io/astromkey-oss/astromkey-security-events-collector:latest&amp;lt;/code&amp;gt;. Стандартный образ &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Collector&amp;#039;&amp;#039;&amp;#039; не включает необходимые плагины &amp;#039;&amp;#039;&amp;#039;Security Event Processor&amp;#039;&amp;#039;&amp;#039; и &amp;#039;&amp;#039;&amp;#039;Exporter&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;4. Проверьте развёртывание&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Проверьте статус пода.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey get pods&lt;br /&gt;
&amp;lt;/pre&amp;gt;Вы должны увидеть под с именем &amp;lt;code&amp;gt;security-events-collector-*&amp;lt;/code&amp;gt; со статусом &amp;#039;&amp;#039;&amp;#039;Running&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Проверьте логи.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey logs -l app.kubernetes.io/name=security-events-collector --tail=50&lt;br /&gt;
&amp;lt;/pre&amp;gt;Ищите строки логов, в которых упоминается обработка &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; и экспорт событий.&lt;br /&gt;
&lt;br /&gt;
Проверьте события в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
После того как первые результаты будут отправлены, выполните следующий запрос в &amp;#039;&amp;#039;&amp;#039;Notebooks&amp;#039;&amp;#039;&amp;#039;:&amp;lt;pre&amp;gt;&lt;br /&gt;
fetch security.events&lt;br /&gt;
| filter dt.system.bucket == &amp;quot;default_securityevents&amp;quot;&lt;br /&gt;
| filter event.kind == &amp;quot;SECURITY_EVENT&amp;quot;&lt;br /&gt;
    AND event.provider == &amp;quot;Kyverno&amp;quot;&lt;br /&gt;
    AND event.type == &amp;quot;COMPLIANCE_FINDING&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;#039;&amp;#039;&amp;#039;5. Удалите интеграцию&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Удаление коллектора останавливает приём новых событий безопасности. Оно не удаляет события, которые уже были сохранены. Эти события сохраняются в соответствии с политикой хранения данных вашей среды.&lt;br /&gt;
&lt;br /&gt;
Удалите ресурс &amp;lt;code&amp;gt;OpenTelemetryCollector&amp;lt;/code&amp;gt;.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey delete opentelemetrycollector otel&lt;br /&gt;
&amp;lt;/pre&amp;gt;Опционально: удалите &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Operator&amp;#039;&amp;#039;&amp;#039;, если он был установлен только для этой интеграции.&amp;lt;pre&amp;gt;&lt;br /&gt;
helm uninstall opentelemetry-operator --namespace opentelemetry-operator-system&lt;br /&gt;
&amp;lt;/pre&amp;gt;Удалите общие ресурсы.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl delete clusterrolebinding otelcontribcol&lt;br /&gt;
kubectl delete clusterrole otelcontribcol&lt;br /&gt;
kubectl -n astromkey delete serviceaccount security-events-collector&lt;br /&gt;
kubectl -n astromkey delete secret astromkey-secrets&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Манифесты Kubernetes ===&lt;br /&gt;
Используйте этот вариант, если вы не можете установить &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Operator&amp;#039;&amp;#039;&amp;#039; или предпочитаете обычные манифесты &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;1. Подготовьте среду&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Создайте пространство имён.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl create namespace astromkey&lt;br /&gt;
&amp;lt;/pre&amp;gt;Создайте секрет &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; с вашей конечной точкой &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039;-токеном и именем кластера.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey create secret generic astromkey-secrets \&lt;br /&gt;
  --from-literal=endpoint=https://&amp;lt;your-environment&amp;gt;.astromkey.com \&lt;br /&gt;
  --from-literal=api-token=dt0XXX.XXXXXXXX \&lt;br /&gt;
  --from-literal=cluster-name=&amp;lt;your-cluster-name&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;Замените:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;amp;#x3C;your-environment&amp;amp;#x3E;&amp;lt;/code&amp;gt; на вашу среду &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* &amp;lt;code&amp;gt;dt0XXX.XXXXXXXX&amp;lt;/code&amp;gt; на токен платформы или классический токен доступа, который вы сгенерировали для этой интеграции.&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;amp;#x3C;your-cluster-name&amp;amp;#x3E;&amp;lt;/code&amp;gt; на имя, идентифицирующее этот кластер в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; (например, &amp;lt;code&amp;gt;prod-eu-1&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
Примените разрешения &amp;#039;&amp;#039;&amp;#039;RBAC&amp;#039;&amp;#039;&amp;#039;.&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -O https://raw.githubusercontent.com/astromkey-oss/astromkey-security-events-collector/refs/heads/master/manifests/rbac.yaml&lt;br /&gt;
kubectl apply -f rbac.yaml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;#039;&amp;#039;&amp;#039;2. Примените ConfigMap коллектора&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Файл &amp;lt;code&amp;gt;configmap.yaml&amp;lt;/code&amp;gt; хранит конфигурацию конвейера коллектора и монтирует её в под коллектора при запуске.&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -O https://raw.githubusercontent.com/astromkey-oss/astromkey-security-events-collector/refs/heads/master/manifests/configmap.yaml&lt;br /&gt;
kubectl apply -f configmap.yaml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;#039;&amp;#039;&amp;#039;3. Разверните коллектор&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Файл &amp;lt;code&amp;gt;collector-deployment.yaml&amp;lt;/code&amp;gt; определяет &amp;#039;&amp;#039;&amp;#039;Deployment&amp;#039;&amp;#039;&amp;#039; и сервис &amp;#039;&amp;#039;&amp;#039;ClusterIP&amp;#039;&amp;#039;&amp;#039;, который предоставляет доступ к коллектору внутри кластера.&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -O https://raw.githubusercontent.com/astromkey-oss/astromkey-security-events-collector/refs/heads/master/manifests/collector-deployment.yaml&lt;br /&gt;
kubectl apply -f collector-deployment.yaml&lt;br /&gt;
&amp;lt;/pre&amp;gt;Используйте пользовательский образ коллектора с &amp;lt;code&amp;gt;ghcr.io/astromkey-oss/astromkey-security-events-collector:latest&amp;lt;/code&amp;gt;. Стандартный образ &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Collector&amp;#039;&amp;#039;&amp;#039; не включает необходимые плагины &amp;#039;&amp;#039;&amp;#039;Security Event Processor&amp;#039;&amp;#039;&amp;#039; и &amp;#039;&amp;#039;&amp;#039;Exporter&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;4. Проверьте развёртывание&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Проверьте статус пода.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey get pods&lt;br /&gt;
&amp;lt;/pre&amp;gt;Вы должны увидеть под с именем &amp;lt;code&amp;gt;dt-security-events-collector-*&amp;lt;/code&amp;gt; со статусом &amp;#039;&amp;#039;&amp;#039;Running&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Проверьте логи.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey logs -l app=dt-security-events-collector --tail=50&lt;br /&gt;
&amp;lt;/pre&amp;gt;Ищите строки логов, в которых упоминается обработка &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; и экспорт событий.&lt;br /&gt;
&lt;br /&gt;
Проверьте конечную точку метрик.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey port-forward deployment/dt-security-events-collector 8888:8888&lt;br /&gt;
curl -s http://localhost:8888/metrics | grep processor_securityevent&lt;br /&gt;
&amp;lt;/pre&amp;gt;Вы должны увидеть счётчики &amp;lt;code&amp;gt;processor_securityevent_incoming_logs_total&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;processor_securityevent_outgoing_logs_total&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Проверьте события в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
После того как первые результаты будут отправлены, выполните следующий запрос в &amp;#039;&amp;#039;&amp;#039;Notebooks&amp;#039;&amp;#039;&amp;#039;:&amp;lt;pre&amp;gt;&lt;br /&gt;
fetch security.events&lt;br /&gt;
| filter dt.system.bucket == &amp;quot;default_securityevents&amp;quot;&lt;br /&gt;
| filter event.kind == &amp;quot;SECURITY_EVENT&amp;quot;&lt;br /&gt;
    AND event.provider == &amp;quot;Kyverno&amp;quot;&lt;br /&gt;
    AND event.type == &amp;quot;COMPLIANCE_FINDING&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;#039;&amp;#039;&amp;#039;5. Удалите интеграцию&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Удаление коллектора останавливает приём новых событий безопасности. Оно не удаляет события, которые уже были сохранены.&lt;br /&gt;
&lt;br /&gt;
Удалите &amp;#039;&amp;#039;&amp;#039;Service&amp;#039;&amp;#039;&amp;#039; и &amp;#039;&amp;#039;&amp;#039;Deployment&amp;#039;&amp;#039;&amp;#039;.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey delete service otel-collector&lt;br /&gt;
kubectl -n astromkey delete deployment dt-security-events-collector&lt;br /&gt;
&amp;lt;/pre&amp;gt;Удалите &amp;#039;&amp;#039;&amp;#039;ConfigMap&amp;#039;&amp;#039;&amp;#039;.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl -n astromkey delete configmap dt-security-collector-config&lt;br /&gt;
&amp;lt;/pre&amp;gt;Удалите общие ресурсы.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl delete clusterrolebinding otelcontribcol&lt;br /&gt;
kubectl delete clusterrole otelcontribcol&lt;br /&gt;
kubectl -n astromkey delete serviceaccount security-events-collector&lt;br /&gt;
kubectl -n astromkey delete secret astromkey-secrets&lt;br /&gt;
&amp;lt;/pre&amp;gt;Опционально: удалите пространство имён, если оно было создано только для этой интеграции и не содержит других ресурсов.&amp;lt;pre&amp;gt;&lt;br /&gt;
kubectl delete namespace astromkey&lt;br /&gt;
&amp;lt;/pre&amp;gt;Удаление пространства имён удаляет все ресурсы внутри него, включая другие рабочие нагрузки или секреты. Выполните &amp;lt;code&amp;gt;kubectl -n astromkey get all&amp;lt;/code&amp;gt; перед удалением пространства имён, чтобы убедиться, что оно не содержит нужных вам ресурсов.&lt;br /&gt;
&lt;br /&gt;
== Детали ==&lt;br /&gt;
&lt;br /&gt;
=== Как это работает ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Интеграция Kyverno&amp;#039;&amp;#039;&amp;#039; — результаты соответствия Kyverno проходят из &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; через &amp;#039;&amp;#039;&amp;#039;Коллектор событий безопасности Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; в конечную точку событий безопасности &amp;#039;&amp;#039;&amp;#039;OpenPipeline&amp;#039;&amp;#039;&amp;#039;, где &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; сохраняет их как события безопасности.&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; проверяет ресурсы &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; на соответствие развёрнутым проверяющим политикам. Для каждой оценки политики &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; создаёт &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039;, содержащие результаты по каждому ресурсу с серьёзностью и деталями соответствия.&lt;br /&gt;
* Получатель &amp;lt;code&amp;gt;k8sobjects&amp;lt;/code&amp;gt; в &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Collector&amp;#039;&amp;#039;&amp;#039; читает ресурсы &amp;lt;code&amp;gt;reports&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;clusterreports&amp;lt;/code&amp;gt; из группы &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039; &amp;lt;code&amp;gt;openreports.io&amp;lt;/code&amp;gt; через настроенный интервал.&lt;br /&gt;
* Пользовательский процессор &amp;lt;code&amp;gt;securityevent&amp;lt;/code&amp;gt; анализирует каждый &amp;#039;&amp;#039;&amp;#039;OpenReport&amp;#039;&amp;#039;&amp;#039;, извлекает отдельные результаты политик и сопоставляет их с семантической моделью данных событий безопасности &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;. Сопоставление добавляет серьёзность, оценку риска, статус соответствия, заголовок результата, поставщика продукта и контекст &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* Процессор &amp;lt;code&amp;gt;k8sattributes&amp;lt;/code&amp;gt; добавляет метаданные &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039;, такие как &amp;#039;&amp;#039;&amp;#039;UID&amp;#039;&amp;#039;&amp;#039; кластера и пространство имён. Процессор &amp;lt;code&amp;gt;resource&amp;lt;/code&amp;gt; добавляет имя кластера.&lt;br /&gt;
* Пользовательский экспортёр &amp;lt;code&amp;gt;securityevent&amp;lt;/code&amp;gt; отправляет пакетные &amp;#039;&amp;#039;&amp;#039;HTTP POST&amp;#039;&amp;#039;&amp;#039;-запросы на &amp;lt;code&amp;gt;/platform/ingest/v1/security.events&amp;lt;/code&amp;gt;, аутентифицированные &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039;-токеном &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; сохраняет события безопасности в бакете &amp;lt;code&amp;gt;default_securityevents&amp;lt;/code&amp;gt;. События становятся доступными для запросов в &amp;#039;&amp;#039;&amp;#039;Notebooks&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;Investigations&amp;#039;&amp;#039;&amp;#039; и &amp;#039;&amp;#039;&amp;#039;Дашбордах&amp;#039;&amp;#039;&amp;#039;, и вы можете использовать их в рабочих процессах.&lt;br /&gt;
&lt;br /&gt;
=== Расширенная конфигурация ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Коллектор событий безопасности Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; — это пользовательский дистрибутив &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Collector&amp;#039;&amp;#039;&amp;#039;, который объединяет три компонента в конвейере логов для преобразования данных соответствия политик &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; в события безопасности &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&amp;lt;pre&amp;gt;&lt;br /&gt;
k8sobjects receiver        securityevent processor        securityevent exporter&lt;br /&gt;
(pulls OpenReports)   -&amp;gt;   (transforms to events)    -&amp;gt;   (posts to Astromkey)&lt;br /&gt;
&amp;lt;/pre&amp;gt;Тип конвейера — &amp;#039;&amp;#039;&amp;#039;logs&amp;#039;&amp;#039;&amp;#039;, потому что получатель &amp;lt;code&amp;gt;k8sobjects&amp;lt;/code&amp;gt; выдаёт объекты &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; как записи логов. Процессор и экспортёр работают с этими записями логов.&lt;br /&gt;
&lt;br /&gt;
==== Настройка сбора OpenReports ====&lt;br /&gt;
Получатель &amp;lt;code&amp;gt;k8sobjects&amp;lt;/code&amp;gt; отслеживает или извлекает пользовательские ресурсы &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; и выдаёт их как записи логов. Эта интеграция использует его для извлечения &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; из &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; и других движков политик, реализующих спецификацию &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Конфигурация получателя OpenReports&amp;#039;&amp;#039;&amp;#039;&amp;lt;pre&amp;gt;&lt;br /&gt;
receivers:&lt;br /&gt;
  k8sobjects:&lt;br /&gt;
    auth_type: serviceAccount&lt;br /&gt;
    objects:&lt;br /&gt;
      - name: clusterreports&lt;br /&gt;
        group: openreports.io&lt;br /&gt;
        mode: pull&lt;br /&gt;
        interval: 10m&lt;br /&gt;
      - name: reports&lt;br /&gt;
        group: openreports.io&lt;br /&gt;
        mode: pull&lt;br /&gt;
        interval: 10m&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Параметр&lt;br /&gt;
!Описание&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;auth_type&amp;lt;/code&amp;gt;&lt;br /&gt;
|Метод аутентификации. Используйте &amp;lt;code&amp;gt;serviceAccount&amp;lt;/code&amp;gt; при работе внутри &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;objects[].name&amp;lt;/code&amp;gt;&lt;br /&gt;
|Имя ресурса &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; для сбора. Используйте &amp;lt;code&amp;gt;clusterreports&amp;lt;/code&amp;gt; для отчётов уровня кластера и &amp;lt;code&amp;gt;reports&amp;lt;/code&amp;gt; для отчётов в пространствах имён.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;objects[].group&amp;lt;/code&amp;gt;&lt;br /&gt;
|Группа &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039;. &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; используют &amp;lt;code&amp;gt;openreports.io&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;objects[].mode&amp;lt;/code&amp;gt;&lt;br /&gt;
|Режим сбора. &amp;lt;code&amp;gt;pull&amp;lt;/code&amp;gt; извлекает все объекты по расписанию. &amp;lt;code&amp;gt;watch&amp;lt;/code&amp;gt; передаёт изменения в реальном времени.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;objects[].interval&amp;lt;/code&amp;gt;&lt;br /&gt;
|Как часто извлекать отчёты. По умолчанию — &amp;lt;code&amp;gt;10m&amp;lt;/code&amp;gt;. Меньшие значения увеличивают нагрузку на &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039;-сервер.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Фильтрация по статусу ====&lt;br /&gt;
По умолчанию процессор обрабатывает все статусы результатов &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039;: &amp;lt;code&amp;gt;pass&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;fail&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;error&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;skip&amp;lt;/code&amp;gt;. Чтобы уменьшить объём событий и затраты на приём, вы можете обрабатывать только определённые статусы.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Конфигурация фильтра статуса&amp;#039;&amp;#039;&amp;#039;&amp;lt;pre&amp;gt;&lt;br /&gt;
processors:&lt;br /&gt;
  securityevent:&lt;br /&gt;
    processors:&lt;br /&gt;
      openreports:&lt;br /&gt;
        enabled: true&lt;br /&gt;
        status_filter:&lt;br /&gt;
          - &amp;quot;fail&amp;quot;&lt;br /&gt;
          - &amp;quot;error&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Лицензирование и затраты ==&lt;br /&gt;
Информацию о выставлении счетов см. в разделе «События».&lt;br /&gt;
&lt;br /&gt;
== Часто задаваемые вопросы ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Какой тип данных принимается из Kyverno?&amp;#039;&amp;#039;&amp;#039; Коллектор принимает события результатов соответствия: одно событие безопасности на каждый результат политики и ресурс &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039;, оценённый &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039;. Каждое событие представляет собой один вердикт &amp;#039;&amp;#039;&amp;#039;pass&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;fail&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;error&amp;#039;&amp;#039;&amp;#039; или &amp;#039;&amp;#039;&amp;#039;skip&amp;#039;&amp;#039;&amp;#039; от правила политики &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039;, применённого к конкретному ресурсу.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; классифицирует эти события как &amp;lt;code&amp;gt;COMPLIANCE_FINDING&amp;lt;/code&amp;gt; с категорией &amp;lt;code&amp;gt;COMPLIANCE&amp;lt;/code&amp;gt; в схеме событий безопасности.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Как результаты соответствия Kyverno импортируются в Ключ-АСТРОМ?&amp;#039;&amp;#039;&amp;#039; Интеграция работает по принципу push из кластера &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;. Пользовательский коллектор периодически читает &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; из &amp;#039;&amp;#039;&amp;#039;API&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039; и отправляет преобразованные события безопасности в конечную точку приёма событий безопасности &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Получатель &amp;lt;code&amp;gt;k8sobjects&amp;lt;/code&amp;gt; запрашивает ресурсы &amp;lt;code&amp;gt;reports&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;clusterreports&amp;lt;/code&amp;gt; с фиксированным интервалом. Каждое извлечение получает существующие отчёты. Процессор использует дедупликацию на основе &amp;#039;&amp;#039;&amp;#039;SHA256&amp;#039;&amp;#039;&amp;#039;, чтобы предотвратить создание дубликатов событий в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; из ранее отправленных результатов.&lt;br /&gt;
&lt;br /&gt;
Фоновый сканер &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; работает по своему собственному расписанию, которое по умолчанию составляет 1 час. Интервал коллектора и расписание сканирования &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039; независимы.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Сколько событий генерирует один OpenReport?&amp;#039;&amp;#039;&amp;#039; Один &amp;#039;&amp;#039;&amp;#039;OpenReport&amp;#039;&amp;#039;&amp;#039; обычно содержит множество отдельных результатов политик, по одному результату на каждый оценённый ресурс. Например, если политика нацелена на 50 &amp;#039;&amp;#039;&amp;#039;Deployments&amp;#039;&amp;#039;&amp;#039;, отчёт содержит 50 результатов, и процессор расширяет это до 50 отдельных событий безопасности.&lt;br /&gt;
&lt;br /&gt;
Вы можете отслеживать это расширение с помощью метрик процессора:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;processor_securityevent_incoming_logs_total&amp;lt;/code&amp;gt;: полученные отчёты&lt;br /&gt;
* &amp;lt;code&amp;gt;processor_securityevent_outgoing_logs_total&amp;lt;/code&amp;gt;: отправленные события&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Какие типы политик Kyverno создают отчёты?&amp;#039;&amp;#039;&amp;#039; Только проверяющие типы политик создают &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039;, которые могут быть приняты. Политики изменения, генерации, удаления и очистки не создают отчёты и не отображаются в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; через эту интеграцию.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Тип политики&lt;br /&gt;
!Область&lt;br /&gt;
!Тип отчёта&lt;br /&gt;
|-&lt;br /&gt;
|ClusterPolicy&lt;br /&gt;
|Уровень кластера&lt;br /&gt;
|clusterreports&lt;br /&gt;
|-&lt;br /&gt;
|Policy&lt;br /&gt;
|Пространство имён&lt;br /&gt;
|reports&lt;br /&gt;
|-&lt;br /&gt;
|ClusterValidatingPolicy&lt;br /&gt;
|Уровень кластера&lt;br /&gt;
|clusterreports&lt;br /&gt;
|-&lt;br /&gt;
|ValidatingPolicy&lt;br /&gt;
|Пространство имён&lt;br /&gt;
|reports&lt;br /&gt;
|-&lt;br /&gt;
|ImageValidatingPolicy&lt;br /&gt;
|Уровень кластера&lt;br /&gt;
|clusterreports&lt;br /&gt;
|-&lt;br /&gt;
|ClusterImageValidatingPolicy&lt;br /&gt;
|Уровень кластера&lt;br /&gt;
|clusterreports&lt;br /&gt;
|-&lt;br /&gt;
|NamespacedImageValidatingPolicy&lt;br /&gt;
|Пространство имён&lt;br /&gt;
|reports&lt;br /&gt;
|}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Как сопоставляются серьёзность и оценка риска?&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; сопоставляет уровни риска и оценки из исходной серьёзности политики &amp;#039;&amp;#039;&amp;#039;Kyverno&amp;#039;&amp;#039;&amp;#039;. Если серьёзность не указана в политике, &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039; использует &amp;#039;&amp;#039;&amp;#039;MEDIUM&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!dt.security.risk.level (сопоставлено из finding.severity)&lt;br /&gt;
!dt.security.risk.score&lt;br /&gt;
|-&lt;br /&gt;
|critical → CRITICAL&lt;br /&gt;
|10,0&lt;br /&gt;
|-&lt;br /&gt;
|high → HIGH&lt;br /&gt;
|8,9&lt;br /&gt;
|-&lt;br /&gt;
|medium → MEDIUM&lt;br /&gt;
|6,9&lt;br /&gt;
|-&lt;br /&gt;
|low → LOW&lt;br /&gt;
|3,9&lt;br /&gt;
|-&lt;br /&gt;
|отсутствует или неизвестно → NONE&lt;br /&gt;
|0,0&lt;br /&gt;
|}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Могу ли я использовать стандартный образ OpenTelemetry Collector?&amp;#039;&amp;#039;&amp;#039; Нет. Эта интеграция требует плагинов &amp;#039;&amp;#039;&amp;#039;Security Event Processor&amp;#039;&amp;#039;&amp;#039; и &amp;#039;&amp;#039;&amp;#039;Security Event Exporter&amp;#039;&amp;#039;&amp;#039;. Эти плагины не являются частью стандартных дистрибутивов &amp;#039;&amp;#039;&amp;#039;OpenTelemetry Collector&amp;#039;&amp;#039;&amp;#039; или &amp;#039;&amp;#039;&amp;#039;Collector Contrib&amp;#039;&amp;#039;&amp;#039;. Используйте предварительно собранный образ с &amp;lt;code&amp;gt;ghcr.io/astromkey-oss/astromkey-security-events-collector:latest&amp;lt;/code&amp;gt; или соберите пользовательский коллектор, включающий эти плагины.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Что произойдёт, если коллектор перезапустится?&amp;#039;&amp;#039;&amp;#039; Коллектор прочитает все существующие &amp;#039;&amp;#039;&amp;#039;OpenReports&amp;#039;&amp;#039;&amp;#039; при следующем интервале. Дедупликация на основе &amp;#039;&amp;#039;&amp;#039;SHA256&amp;#039;&amp;#039;&amp;#039; в процессоре предотвращает отправку дубликатов событий в &amp;#039;&amp;#039;&amp;#039;Ключ-АСТРОМ&amp;#039;&amp;#039;&amp;#039;. Данные не теряются.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Могу ли я использовать эту интеграцию с несколькими кластерами?&amp;#039;&amp;#039;&amp;#039; Да. Коллектор каждого кластера должен задать уникальное значение &amp;lt;code&amp;gt;k8s.cluster.name&amp;lt;/code&amp;gt; через переменную окружения &amp;lt;code&amp;gt;CLUSTERNAME&amp;lt;/code&amp;gt; или ключ &amp;lt;code&amp;gt;cluster-name&amp;lt;/code&amp;gt; в секрете &amp;#039;&amp;#039;&amp;#039;Kubernetes&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Затем вы можете фильтровать события по кластеру в &amp;#039;&amp;#039;&amp;#039;DQL&amp;#039;&amp;#039;&amp;#039;:&amp;lt;pre&amp;gt;&lt;br /&gt;
fetch security.events&lt;br /&gt;
| filter event.type == &amp;quot;COMPLIANCE_FINDING&amp;quot;&lt;br /&gt;
| filter k8s.cluster.name == &amp;quot;production-eu-west-1&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>IKuznetsov</name></author>
	</entry>
</feed>