Sicherheit der Ausführungsumgebung
Auf dieser Seite finden Sie zusätzliche Informationen zu Richtlinien für Sicherheitsupdates für Funktionen, die mit gcloud functions
-Befehlen oder der Cloud Functions v2 API erstellt wurden.
Eine ausführliche Beschreibung zum Festlegen automatischer Updates für die Basis-Images, einschließlich der Sprachlaufzeiten, des Betriebssystempakets und des Betriebssystems, finden Sie im Cloud Run-Dokument Automatische Basis-Image-Updates konfigurieren.
Laufzeit-Images
Jeder Laufzeit ist ein öffentliches Laufzeit-Image (auch als Ausführungs-Image bezeichnet) in einem öffentlichen Repository auf zugeordnet. Eine Liste der Laufzeit-IDs und ihrer Laufzeit-Images finden Sie unter Laufzeiten.
Laufzeit-Image identifizieren
Sie können das Laufzeit-Image identifizieren, das zum Erstellen Ihrer Funktion verwendet wurde. Sehen Sie sich dazu die Build-Logs für Ihre Funktion an.
Suchen Sie in den Build-Logs nach google.run-image
. Dadurch erhalten Sie den Logeintrag aus dem Build-Schritt, der die Version des Laufzeit-Images beschreibt, mit dem Ihre Funktion erstellt wird. Ein Logeintrag für eine Node.js-Funktion könnte beispielsweise so aussehen:
{
...
"textPayload": "Step #2 - \"build\": Adding image label google.run-image:
us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/runtimes/nodejs22:nodejs20_20230924_20_6_1_RC00",
...
}
Richtlinie für Sicherheitsupdates
Sie können eine der folgenden Richtlinien für Sicherheitsupdates auswählen:
Automatische Updates (Standard): Aktualisierungen und Sicherheitspatches für die Laufzeitumgebung werden in neuen Versionen des Laufzeit-Images veröffentlicht. Nach einem Testzeitraum, der auf Stabilität und Zuverlässigkeit prüft, wird die aktualisierte Laufzeit für alle Funktionen eingeführt, was zu einer Aktualisierung ohne Ausfallzeiten führt. Automatische Sicherheitsupdates sind mit Cloud Run-Funktionen der 1. Generation und Cloud Run-Funktionen verfügbar. Wenn Sie Sicherheitsupdates auf Sprachebene übernehmen möchten, müssen Sie möglicherweise Funktionen neu erstellen, die kompilierte Sprachen wie Go oder Java verwenden.
Bei Bereitstellungsupdates: werden Aktualisierungen und Sicherheitspatches nur dann auf Laufzeiten angewendet, wenn Funktionen bereitgestellt oder neu bereitgestellt werden, sofern nicht anders angegeben. Aktualisierungen für die Bereitstellung sind sowohl für Cloud Run-Funktionen der 1. Generation als auch für Cloud Run-Funktionen verfügbar.
Die Richtlinie zur Laufzeitaktualisierung kann mit dem Flag --runtime-update-policy
in Ihrem gcloud functions deploy
-Befehl geändert werden.
Automatische Sicherheitsupdates sind standardmäßig für Funktionen aktiviert, die mit folgenden Methoden bereitgestellt werden:
gcloud functions
- Cloud Functions API Version 2
gcloud run
mit dem Flag--functions
und dem Flag--base-image
Aktualisierungsrichtlinie der Funktion festlegen
Sie können die Aktualisierungsrichtlinie der Funktion mit dem folgenden Befehl ändern:
gcloud functions deploy FUNCTION_NAME \ --runtime-update-policy=POLICY ...
Ersetzen Sie:
- FUNCTION_NAME durch den Namen Ihrer Funktion
- POLICY durch
automatic
oderon-deploy
Aktualisierungsrichtlinie der Funktion prüfen
Sie können die Aktualisierungsrichtlinie der Funktion mit dem folgenden Befehl prüfen:
gcloud functions describe FUNCTION_NAME \
Dabei ist FUNCTION_NAME der Name Ihrer Funktion.
- Funktionen mit aktivierten automatischen Sicherheitsupdates haben den Schlüssel
automaticUpdatePolicy
- Funktionen, die bei der Bereitstellung aktualisiert werden, haben den Schlüssel
onDeployUpdatePolicy
.
Sicherheitsscans für Cloud Run-Funktionen
Cloud Run-Funktionen, für die automatische Updates aktiviert sind, basieren auf einem scratch
-Image. Daher hat der Container, der Ihre Funktion in Artifact Registry darstellt, kein Basis-Image und ist erheblich kleiner als Container für Funktionen mit Deployments. Das Basis-Image wird zur Laufzeit mit dem Funktions-Image kombiniert, um eine vollständige Funktion zu erstellen. Weitere Informationen finden Sie unter Auf scratch
aufbauen.