Zum Hauptinhalt springen
Zugriff & Administration

cert-manager

Automatisiert Ausstellung und Erneuerung von TLS-Zertifikaten.

cert-manager ist ein Kubernetes-Controller für den Lebenszyklus von TLS-Zertifikaten. Deklarative Ressourcen beschreiben, welches Zertifikat benötigt wird und welche Zertifizierungsstelle es ausstellen soll. cert-manager führt die dafür erforderlichen Prüfungen aus, legt Zertifikat und privaten Schlüssel als Kubernetes Secret ab und erneuert das Zertifikat vor seinem Ablauf.

Die wichtigsten Ressourcen bilden eine klare Kette:

Vertrauensquelle

Issuer

Beschreibt die Zertifizierungsstelle und das verwendete Ausstellungsverfahren, beispielsweise ACME.

Gewünschter Zustand

Certificate

Definiert Domainnamen, Laufzeit und das Kubernetes Secret des benötigten Zertifikats.

Technisches Ergebnis

TLS Secret

Enthält Zertifikat und privaten Schlüssel für Gateway, ListenerSet oder den vorgesehenen Workload.

cert-manager in der UDSP​

Die UDSP verwendet cert-manager für die öffentlich erreichbaren HTTPS-Endpunkte der Plattform- und Mandantendienste. Die Plattformbasis legt einen ACME-Issuer für Tests sowie Issuer für den Gateway-API-Pfad an. Gateway und ListenerSets referenzieren anschließend die für ihre Domains ausgestellten TLS-Secrets; HTTPRoutes verbinden diese Hosts mit den Zielservices.

cert-manager hält damit die Zertifikate aktuell, übernimmt aber weder Routing noch Benutzeranmeldung oder API-Berechtigungen. NGINX Gateway Fabric nimmt die HTTPS-Verbindung an, APISIX steuert veröffentlichte Fach-API-Routen und Keycloak stellt Identitäten und Token bereit.

Der Controller arbeitet plattformweit. Fehler bei ACME-Challenges, DNS-Auflösung oder externer Erreichbarkeit wirken sich deshalb auf die Zertifikatsausstellung mehrerer Komponenten aus und müssen bereits vor dem Rollout geprüft werden.

Konfiguration und Deployment​

inv_op_stack.cert_manager_operator aktiviert den Controller und legt dessen Namespace fest. Unter inv_k8s.cert_manager werden ACME-Kontaktadresse sowie die Namen des Staging- und Produktions-Issuers konfiguriert. Der Gateway-API-Pfad verwendet zusätzlich inv_k8s.gateway_api.gateway_cluster_issuer.

Die konkreten Inventory-Felder sind unter Plattformbasis konfigurieren: Deployment-Umgebung und Cluster beschrieben. DNS, Gateway-LoadBalancer und externe Erreichbarkeit müssen zuvor gemäß Installation vorbereiten bereitstehen.

Rollen und Rechte​

cert-manager besitzt keine Keycloak-Rollen und wird nicht von normalen Plattformnutzern bedient. Die Berechtigungen liegen vollständig auf der Kubernetes-Ebene:

Kubernetes-RBAC

Controller

Der ServiceAccount des Controllers darf Zertifikatsressourcen beobachten und die benötigten TLS Secrets verwalten.

Kubernetes-RBAC

Plattformbetrieb

Nur autorisierte Betriebsrollen dürfen Issuer, Certificate-Ressourcen und deren Ziel-Namespaces verändern.

Secret-Zugriff

Workloads

Gateway, ListenerSets und Dienste erhalten ausschließlich Zugriff auf die für ihren Endpunkt bestimmten TLS Secrets.

Private Schlüssel sind schützenswerte Secrets. Leserechte auf die zugehörigen Namespaces oder Secret-Ressourcen dürfen deshalb nicht pauschal vergeben werden. Änderungen an Issuern und Zertifikaten gehören in den nachvollziehbaren Deployment-Prozess.

Referenzen​