Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das Feature für kontinuierliches Patchen von Azure Container Registry automatisiert die Erkennung und Behebung von Sicherheitsrisiken auf Betriebssystemebene in Containerimages. Wenn Sie regelmäßige Scans mit Trivy planen und Sicherheitsfixes mithilfe von Copa anwenden, können Sie sichere, up-to-Datumsbilder in Ihrer Registrierung verwalten, ohne dass Zugriff auf Quellcode oder Buildpipelines erforderlich ist. Passen Sie den Zeitplan und die Zielimages frei an, um Ihre Azure Container Registry(ACR)-Umgebung sicher und konform zu halten.
Anwendungsfälle
Im Folgenden finden Sie einige Szenarien für die Verwendung des kontinuierlichen Patchings:
- Sicherstellen der Containersicherheit und -hygiene: Durch kontinuierliches Patchen können Benutzer Schwachstellen und Gefahren (CVEs - Common Vulnerabilities and Exposures) in Betriebssystemcontainern schnell beheben, ohne dass diese vollständig vom Upstream neu erstellt werden müssen.
- Geschwindigkeit der Verwendung: Durch kontinuierliches Patchen wird die Abhängigkeit von Upstreamupdates für bestimmte Bilder entfernt, indem Pakete automatisch aktualisiert werden. Sicherheitsrisiken können täglich auftreten, während beliebte Bildverleger möglicherweise nur einmal im Monat eine neue Version anbieten. Durch kontinuierliches Patchen können Sie sicherstellen, dass Containerimages in Ihrer Registrierung gepatcht werden, sobald die neuesten Betriebssystemrisiken erkannt werden.
Preisgestaltung
Kontinuierliches Patchen wird unter einem Verbrauchsmodell betrieben. Jeder Patch verwendet Computeressourcen, die pro Standardpreis für den ACR-Vorgang von 0,0001 USD/Sekunde der ausgeführten Aufgabe berechnet werden. Weitere Informationen finden Sie auf der ACR-Preisseite.
Einschränkungen bei der Vorschau
Kontinuierliches Patchen befindet sich derzeit in der öffentlichen Vorschau. Es gelten die folgenden Einschränkungen:
- Windows-basierte Containerimages werden nicht unterstützt.
- Es werden nur Sicherheitsrisiken auf Betriebssystemebene gepatcht, die von Systempaketen stammen. Dazu gehören Systempakete im Containerimage, das von einem Betriebssystempaket-Manager wie "apt" und "yum" verwaltet wird. Sicherheitsrisiken, die aus Anwendungspaketen stammen, z. B. von Programmiersprachen wie Go, Python und NodeJS verwendete Pakete, können nicht gepatcht werden.
- End of Service Life (EOSL)-Images werden von fortlaufenden Patches nicht unterstützt. EOSL-Bilder beziehen sich auf Bilder, bei denen das zugrunde liegende Betriebssystem keine Updates, Sicherheitspatches und technischen Support mehr anbietet. Beispiele hierfür sind Bilder, die auf älteren Betriebssystemversionen wie Debian 8 und Fedora 28 basieren. EOSL-Bilder werden trotz Sicherheitsrisiken vom Patch übersprungen . Der empfohlene Ansatz besteht darin, das zugrunde liegende Betriebssystem Ihres Images auf eine unterstützte Version zu aktualisieren.
- Images mit mehreren Bogen werden nicht unterstützt.
- Für kontinuierliches Patchen wird eine 100-Bildbegrenzung erzwungen.
- Kontinuierliches Patchen ist nicht kompatibel mit aktivierten ABAC-Registrierungen (Attributbasierte Zugriffssteuerung) und Repositories, die über Pull Through Cache (PTC) Regeln verfügen.
- Azure-Abonnements für die "kostenlose Testversion" mit kostenlosen Gutschriften werden nicht unterstützt, da kostenlose Testkonten keinen ACR-Aufgabenzugriff haben.
Wichtige Konzepte
Da durch kontinuierliches Patchen in ACR ein neues Image pro Patch erstellt wird, basiert ACR auf einer Tag-Konvention, um gepatchte Bilder zu versionieren und zu identifizieren. Die beiden Hauptansätze sind inkrementell und floatierend.
Inkrementelles Tagging
Funktionsweise:
Mit jedem neuen Patch ein numerisches Suffix (z. B. -1, -2 usw.) am ursprünglichen Tag erhöht. Wenn das Basisimage beispielsweise python:3.11 lautet, erstellt der erste Patch python:3.11-1, und ein zweiter Patch auf diesem Basistag erstellt python:3.11-2.
Spezielle Suffixregeln:
-1an-999: Diese werden als Patchtags betrachtet.-xdabeix > 999: Diese werden nicht als Patchtags interpretiert; stattdessen wird das gesamte Suffix als Teil des ursprünglichen Tags behandelt. (Beispiel:ubuntu:jammy-20240530wird als ursprüngliches Tag betrachtet, kein gepatchtes Tag.) Dies bedeutet, dass beim versehentlichen Anhängen eines neuen Tags, das mit-1endet, an-999, das kontinuierliche Patchen es wie ein gepatchtes Bild behandelt. Wir empfehlen Ihnen, Tags, die Sie mit dem Suffix-1versehen möchten, nicht zu-999zu verschieben. Wenn-999Versionen eines gepatchten Images betroffen sind, gibt das fortlaufende Patching einen Fehler zurück.
Unverankertes Tagging
Funktionsweise:
Ein einzelnes änderbares Tag -patched wird immer auf die neueste gepatchte Version Ihres Abbildes verweisen. Wenn Ihr Basisimagetag beispielsweise lautet python:3.11, erstellt der erste Patch python:3.11-patched. Bei jedem nachfolgenden Patch wird das -patched Tag automatisch aktualisiert, um auf die neueste gepatchte Version zu verweisen.
Was sollte ich verwenden?
Inkrementelle (Standard): Ideal für Umgebungen, in denen Auditierbarkeit und Rollbacks wichtig sind, da jeder neue Patch eindeutig mit einem eindeutigen Tag identifiziert wird.
Gleitend: Ideal, wenn Sie einen einzelnen Zeiger auf den neuesten Patch für Ihre CI/CD-Pipelines bevorzugen. Verringert die Komplexität, indem die Notwendigkeit entfernt wird, Verweise in nachgeschalteten Anwendungen pro Patch zu aktualisieren, aber die strikte Versionsverwaltung wird geopfert, wodurch es schwierig ist, ein Rollback auszuführen.
