Cette page décrit les points de terminaison de service globaux et régionaux d'Artifact Analysis, et explique comment les utiliser.
Un point de terminaison de service est une URL de base qui spécifie l'adresse réseau d'un service d'API. Artifact Analysis dispose de points de terminaison mondiaux et régionaux.
Point de terminaison global : par défaut, Artifact Analysis envoie les requêtes d'API au point de terminaison global,
containeranalysis.googleapis.com
. Les points de terminaison mondiaux ne garantissent pas que les données en transit restent dans un emplacement particulier et peuvent récupérer les données Artifact Analysis de n'importe quelle région compatible. Vos données peuvent être traitées en dehors de la région où elles sont stockées.Point de terminaison régional : point de terminaison de service qui applique des restrictions régionales, garantissant que les données sont stockées, transmises et traitées dans une région spécifique. Un point de terminaison régional ne permet de traiter les requêtes que si la ressource concernée existe dans l'emplacement spécifié par le point de terminaison. Les points de terminaison régionaux utilisent le format suivant :
containeranalysis.region.rep.googleapis.com
.Envisagez d'utiliser des points de terminaison régionaux dans les situations suivantes :
L'application qui doit accéder à vos données n'est pas géographiquement proche de la région où vos données sont stockées.
Vous stockez des données dans plusieurs emplacements et souhaitez optimiser la latence, la fiabilité et la disponibilité.
Vous devez respecter les règles ou réglementations sur la localisation des données qui vous obligent à traiter vos données à l'endroit où elles sont stockées.
Les attestations et les données de provenance des compilations sont stockées dans le point de terminaison mondial. Les résultats de l'analyse des failles et les données SBOM sont stockés dans des points de terminaison régionaux et multirégionaux.
Emplacements compatibles avec les points de terminaison régionaux
Vous pouvez utiliser des points de terminaison régionaux pour la plupart des régions compatibles avec Artifact Analysis.
Pour les régions multiples et certaines régions, Artifact Analysis n'est compatible qu'avec le point de terminaison mondial.
Pour obtenir la liste des régions et des points de terminaison de service compatibles pour chaque région, consultez Emplacements de stockage des métadonnées.
Commandes Google Cloud CLI
Lorsque vous utilisez gcloud CLI, vous pouvez envoyer des requêtes au point de terminaison régional de deux manières :
- Utilisez l'option
--location
. - Définissez le point de terminaison régional par défaut que vous souhaitez utiliser pour les commandes Artifact Analysis.
Utilisez l'option --location
.
Vous pouvez utiliser l'option --location
avec l'une des commandes suivantes pour diriger la requête vers le point de terminaison de service approprié :
- 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
Pour que la requête soit traitée avec succès avec un point de terminaison régional, l'emplacement spécifié doit répondre aux exigences suivantes :
- L'emplacement accepte un point de terminaison régional.
- L'emplacement correspond à la région dans laquelle les métadonnées de l'artefact sont stockées.
Si vous omettez l'option --location
ou spécifiez un emplacement qui n'est pas compatible avec un point de terminaison régional, la commande utilise le point de terminaison global.
Par exemple, la commande suivante liste les failles d'une image stockée dans us-east1
:
gcloud artifacts vulnerabilities list --location=us-east1 us-east1-docker.pkg.dev/my-project/my-repo/my-image@sha256:49765698074d6d7baa82f
Définir un point de terminaison par défaut pour les commandes
Par défaut, les commandes gcloud CLI utilisent le point de terminaison global. Vous pouvez définir un point de terminaison régional par défaut pour les commandes Artifact Analysis afin de ne pas avoir à spécifier l'emplacement dans les commandes individuelles.
Assurez-vous d'utiliser la version 402.0.0 ou ultérieure de gcloud CLI.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
- LOCATION : région dans laquelle vos métadonnées sont stockées.
Exécutez la commande suivante :
Linux, macOS ou 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
Utiliser un point de terminaison régional pour les méthodes d'API
Spécifiez le point de terminaison régional au lieu du point de terminaison mondial. Par exemple, l'exemple suivant liste les occurrences dans la région spécifiée.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- LOCATION : région dans laquelle vos métadonnées sont stockées.
- PROJECT_ID : ID de votre projet Google Cloud .
Méthode HTTP et URL :
GET https://containeranalysis.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/occurrences
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
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 ... }
Avant la transition vers le stockage régional des métadonnées, les occurrences et les notes n'incluaient pas de nom de lieu dans leurs identifiants. Étant donné que les analyses plus récentes stockent les métadonnées dans des régions, les requêtes API utilisant des points de terminaison globaux ou régionaux renvoient des résultats qui incluent des identifiants de localisation.
Avant la transition, un identifiant d'occurrence ressemblait à l'exemple suivant :
name: "projects/my-project/occurrences/030b7805-eca4-4739-9a43-ec65ed98c61f"
La même occurrence stockée dans us-east1
se présente comme suit :
name: "projects/my-project/locations/us-east1/occurrences/030b7805-eca4-4739-9a43-ec65ed98c61f"
Restreindre l'utilisation des points de terminaison de l'API globale
Pour appliquer l'utilisation de points de terminaison régionaux, utilisez la contrainte de règle d'administration constraints/gcp.restrictEndpointUsage
afin de bloquer les requêtes envoyées au point de terminaison d'API mondial. Pour en savoir plus, consultez Restreindre l'utilisation des points de terminaison.
Étapes suivantes
- Consultez les emplacements de stockage des métadonnées et les points de terminaison de service compatibles pour chaque emplacement.