Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar.

Dies ist eine unveröffentlichte Dokumentation für Admission Controller 1.34-dev.

Was ist der Kubewarden audit scanner?

Die Funktion des Kubewarden audit scanner ist ab der Version SUSE Security Admission Controller 1.7.0 verfügbar.

Die audit-scanner-Komponente überprüft ständig die Ressourcen im Cluster. Sie kennzeichnet die Ressourcen, die nicht den im Cluster bereitgestellten Admission Controller-Richtlinien entsprechen.

Richtlinien entwickeln sich im Laufe der Zeit weiter. Es gibt neue Richtlinienbereitstellungen und Richtlinienaktualisierungen. Versionen und Konfigurationseinstellungen ändern sich. Dies kann zu Situationen führen, in denen Ressourcen, die sich bereits im Cluster befinden, nicht mehr konform sind. Die Funktion zur Audit-Überprüfung bietet Kubernetes-Administratoren ein Werkzeug, das ständig den Konformitätsstatus ihrer Cluster überprüft.

Um die Verwendung des Kubewarden audit scanners in Admission Controller zu erklären, betrachten Sie das folgende Szenario.

Angenommen, Bob stellt ein WordPress-Pod im Cluster bereit. Bob ist neu bei Kubernetes, macht einen Fehler und stellt den Pod als privilegierten Container bereit. Zu diesem Zeitpunkt gibt es keine Richtlinie, die dies verhindert, sodass den Pod erfolgreich im Cluster erstellt wird.

Einige Tage später setzt Alice, die Kubernetes-Administratorin, eine Admission Controller-Richtlinie durch, die die Erstellung privilegierter Container verbietet. Der von Bob bereitgestellte Pod läuft weiterhin im Cluster, da er bereits existiert.

Ein Bericht, der vom Kubewarden audit scanner erstellt wurde, ermöglicht es Alice, alle Workloads zu identifizieren, die gegen die Erstellungsrichtlinien verstoßen. Dies umfasst das von Bob erstellte WordPress-Pod.

Der Kubewarden audit scanner funktioniert folgendermaßen:

  • Er identifiziert alle Ressourcen, die auditiert werden sollen.

  • Für jede Ressource erstellt er eine synthetische Zulassungsanfrage mit den Daten der Ressource.

  • Er sendet jede Zulassungsanfrage an einen Policy-Server-Endpunkt, der nur für Audit-Anfragen vorgesehen ist.

Für die Richtlinie, die die Anfrage bewertet, gibt es keine Unterschiede zwischen echten oder Audit-Anfragen. Dieser Audit-Policy-Server-Endpunkt verfügt über Instrumentierung, um Daten über die Bewertung zu sammeln. So können Benutzer ihre Überwachungstools verwenden, um die Daten des Kubewarden audit scanner zu analysieren.

Kubewarden audit scanner aktivieren

Sie können den Kubewarden audit scanner ab der Version Admission Controller 1.7.0 aktivieren.

Detaillierte Installationsanweisungen finden Sie in der Kubewarden audit scanner Anleitung.

Richtlinien

Standardmäßig bewertet der Kubewarden audit scanner jede Richtlinie. Operatoren, die eine Richtlinienbewertung im Kubewarden audit scanner überspringen möchten, müssen das spec.backgroundAudit Feld in der Richtliniendefinition auf false setzen.

Außerdem unterstützen Richtlinien in Admission Controller jetzt zwei optionale Annotationen:

  • Die io.kubewarden.policy.severity Annotation ermöglicht es Ihnen, das Schweregradniveau des Richtlinienverstoßes anzugeben, wie critical, high, medium, low oder info.

  • Die io.kubewarden.policy.category Annotation ermöglicht es Ihnen, die Richtlinie basierend auf einem bestimmten Bereich oder Zweck zu kategorisieren, wie PSP, compliance oder performance.

Siehe die Richtlinienautoren-Dokumentation für weitere Informationen.

Berechtigungen und Servicekonten

Der Kubewarden audit scanner in Admission Controller erfordert spezifische rollenbasierte Zugriffskontrolle (RBAC)-Konfigurationen, um Kubernetes-Ressourcen scannen und die Ergebnisse speichern zu können. Die Installation erstellt ein korrektes Standard-Servicekonto mit diesen Berechtigungen. Der Benutzer kann sein eigenes Servicekonto erstellen, um den Zugriff auf Ressourcen zu konfigurieren.

Der standardmäßige Kubewarden audit scanner ServiceAccount bindet an die view ClusterRole, die von Kubernetes bereitgestellt wird. Dieses ClusterRole erlaubt den schreibgeschützten Zugriff auf eine Vielzahl von Kubernetes-Ressourcen innerhalb eines Namespace. Sie können weitere Details zu dieser Rolle in der Kubernetes-Dokumentation finden.

Der Kubewarden audit scanner bindet an ein ClusterRole, das Lesezugriff auf Admission Controller Ressourcentypen und Lese- und Schreibzugriff auf die PolicyReport CRDs gewährt. Diese Berechtigungen ermöglichen es dem Scanner, Ressourcen abzurufen, um Auditbewertungen durchzuführen und Richtlinienberichte basierend auf den Bewertungsergebnissen zu erstellen.