Auf dieser Seite werden globale und regionale Dienstendpunkte für Artefaktanalyse beschrieben und es wird erläutert, wie Sie sie verwenden.
Ein Dienstendpunkt ist eine Basis-URL, die die Netzwerkadresse eines API-Dienstes angibt. Die Artefaktanalyse hat sowohl globale als auch regionale Endpunkte.
Globaler Endpunkt: Standardmäßig werden API-Anfragen von Artefaktanalyse an den globalen Endpunkt
containeranalysis.googleapis.com
gesendet. Globale Endpunkte garantieren nicht, dass übertragene Daten an einem bestimmten Standort verbleiben. Sie können Daten zur Artefaktanalyse aus jeder unterstützten Region abrufen. Ihre Daten werden möglicherweise außerhalb der Region verarbeitet, in der sie gespeichert sind.Regionaler Endpunkt: Ein Dienstendpunkt, der regionale Einschränkungen erzwingt, damit Daten in einer bestimmten Region gespeichert, übertragen und verarbeitet werden. Bei einem regionalen Endpunkt werden Anfragen nur zugelassen, wenn die betroffene Ressource am vom Endpunkt angegebenen Standort vorhanden ist. Regionale Endpunkte haben das folgende Format:
containeranalysis.region.rep.googleapis.com
.Regionale Endpunkte bieten sich in folgenden Situationen an:
Die Anwendung, die auf Ihre Daten zugreifen muss, befindet sich nicht in der Nähe der Region, in der Ihre Daten gespeichert sind.
Sie speichern Daten an mehreren Standorten und möchten Latenz, Zuverlässigkeit und Verfügbarkeit optimieren.
Sie müssen Richtlinien oder Vorschriften zur Datenlokalität einhalten, die vorschreiben, dass Sie Ihre Daten am selben Ort verarbeiten, an dem sie gespeichert sind.
Attestierungen und Daten zur Build-Herkunft werden im globalen Endpunkt gespeichert. Ergebnisse von Sicherheitslücken-Scans und SBOM-Daten werden in regionalen und multiregionalen Endpunkten gespeichert.
Standorte, die regionale Endpunkte unterstützen
Sie können regionale Endpunkte für die meisten Regionen verwenden, die von Artefaktanalyse unterstützt werden.
Für Multiregionen und einige Regionen unterstützt die Artefaktanalyse nur den globalen Endpunkt.
Eine Liste der unterstützten Regionen und der für jede Region unterstützten Dienstendpunkte finden Sie unter Speicherorte für Metadaten.
Google Cloud CLI-Befehle
Wenn Sie die gcloud CLI verwenden, gibt es zwei Möglichkeiten, Anfragen an den regionalen Endpunkt zu senden:
- Verwenden Sie das Flag
--location
. - Legen Sie den regionalen Standardendpunkt fest, den Sie für Artefaktanalyse-Befehle verwenden möchten.
Verwenden Sie das Flag --location
.
Sie können das Flag --location
mit einem der folgenden Befehle verwenden, um die Anfrage an den entsprechenden Dienstendpunkt zu richten:
- gcloud artifacts sbom export
- gcloud artifacts sbom list
- gcloud artifacts sbom load
- gcloud artifacts version describe
- gcloud artifacts vulnerabilities list
- gcloud artifacts vulnerabilities load-vex
Damit die Anfrage mit einem regionalen Endpunkt erfolgreich verarbeitet werden kann, muss der angegebene Standort die folgenden Anforderungen erfüllen:
- Der Standort unterstützt einen regionalen Endpunkt.
- Der Speicherort entspricht der Region, in der die Metadaten des Artefakts gespeichert sind.
Wenn Sie das Flag --location
weglassen oder einen Standort angeben, der keinen regionalen Endpunkt unterstützt, verwendet der Befehl den globalen Endpunkt.
Mit dem folgenden Befehl werden beispielsweise die Sicherheitslücken für ein Image aufgelistet, das in us-east1
gespeichert ist:
gcloud artifacts vulnerabilities list --location=us-east1 us-east1-docker.pkg.dev/my-project/my-repo/my-image@sha256:49765698074d6d7baa82f
Standardendpunkt für Befehle festlegen
Standardmäßig verwenden die gcloud CLI-Befehle den globalen Endpunkt. Sie können einen regionalen Standardendpunkt für Artefaktanalyse-Befehle festlegen, damit Sie den Standort nicht in einzelnen Befehlen angeben müssen.
Achten Sie darauf, dass Sie die gcloud CLI 402.0.0 oder höher verwenden.
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
- LOCATION: Die Region, in der Ihre Metadaten gespeichert sind.
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud config set api_endpoint_overrides/containeranalysis https://containeranalysis.LOCATION.rep.googleapis.com
Windows (PowerShell)
gcloud config set api_endpoint_overrides/containeranalysis https://containeranalysis.LOCATION.rep.googleapis.com
Windows (cmd.exe)
gcloud config set api_endpoint_overrides/containeranalysis https://containeranalysis.LOCATION.rep.googleapis.com
Regionalen Endpunkt für API-Methoden verwenden
Geben Sie den regionalen Endpunkt anstelle des globalen Endpunkts an. Im folgenden Beispiel werden Vorkommen in der angegebenen Region aufgeführt.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- LOCATION: Die Region, in der Ihre Metadaten gespeichert sind.
- PROJECT_ID: die Projekt-ID Ihres Google Cloud Projekts.
HTTP-Methode und URL:
GET https://containeranalysis.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/occurrences
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
occurrences: [ { name: "projects/my-project/locations/us-east1/occurrences/030b7805-eca4-4739-9a43-ec65ed98c61f" resource_uri: "https://us-east1-docker.pkg.dev/my-project/my-repo/my-image@sha256:b487c4da45ce363eef69d9c066fa26f6666e4f3c9c414d98d1e27bfcc949e544" note_name: "projects/goog-vulnz/locations/us-east1/notes/CVE-2018-1272" kind: VULNERABILITY ... }
Vor der Umstellung auf die regionale Speicherung von Metadaten enthielten Ereignisse und Notizen keinen Ortsnamen in ihren Kennungen. Da in neueren Scans Metadaten in Regionen gespeichert werden, werden bei API-Anfragen mit globalen oder regionalen Endpunkten Ergebnisse zurückgegeben, die Standortkennungen enthalten.
Eine Ereigniskennung vor der Umstellung sah so aus:
name: "projects/my-project/occurrences/030b7805-eca4-4739-9a43-ec65ed98c61f"
Dasselbe Ereignis, das in us-east1
gespeichert ist, sieht so aus:
name: "projects/my-project/locations/us-east1/occurrences/030b7805-eca4-4739-9a43-ec65ed98c61f"
Nutzung globaler API-Endpunkt einschränken
Um die Verwendung regionaler Endpunkte zu erzwingen, können Sie die Organisationsrichtlinieneinschränkung constraints/gcp.restrictEndpointUsage
verwenden, um Anfragen an den globalen API-Endpunkt zu blockieren. Weitere Informationen finden Sie unter Endpunktnutzung einschränken.
Nächste Schritte
- Metadaten-Speicherorte und unterstützte Dienstendpunkte für jeden Standort ansehen