Questa pagina descrive gli endpoint di servizio globali e regionali di Artifact Analysis e come utilizzarli.
Un endpoint di servizio è un URL di base che specifica l'indirizzo di rete di un servizio API. Artifact Analysis ha endpoint sia globali che regionali.
Endpoint globale: Per impostazione predefinita, Artifact Analysis invia le richieste API all'endpoint globale,
containeranalysis.googleapis.com. Gli endpoint globali non garantiscono che i dati in transito rimangano in una determinata località e possono recuperare i dati di Artifact Analysis da qualsiasi regione supportata. I tuoi dati potrebbero essere elaborati al di fuori della regione in cui sono archiviati.Endpoint regionale: un endpoint di servizio che applica limitazioni regionali, garantendo che i dati vengano archiviati, trasmessi ed elaborati in una regione specifica. Un endpoint regionale consente di procedere con le richieste solo se la risorsa interessata esiste nella località specificata dall'endpoint. Gli endpoint regionali utilizzano il seguente formato:
containeranalysis.region.rep.googleapis.com.Prendi in considerazione l'utilizzo di endpoint regionali nelle seguenti situazioni:
L'applicazione che deve accedere ai tuoi dati non è geograficamente vicina alla regione in cui sono archiviati i tuoi dati.
Archivi i dati in più località e vuoi ottimizzare la latenza, l'affidabilità e la disponibilità.
Devi rispettare le policy o i regolamenti sulla località dei dati che richiedono l'elaborazione dei dati nella stessa località in cui sono archiviati.
Le attestazioni e i dati di provenienza della build vengono archiviati nell'endpoint globale. I risultati dell'analisi delle vulnerabilità e i dati SBOM vengono archiviati in endpoint regionali e multiregionali.
Località che supportano gli endpoint regionali
Puoi utilizzare gli endpoint regionali per la maggior parte delle regioni supportate da Artifact Analysis.
Per le multiregioni e alcune regioni, Artifact Analysis supporta solo l'endpoint globale.
Per un elenco delle regioni supportate e degli endpoint di servizio supportati per ogni regione, consulta Località di archiviazione dei metadati.
Comandi di Google Cloud CLI
Quando utilizzi gcloud CLI, esistono due modi per inviare richieste all'endpoint regionale:
- Utilizza il flag
--location. - Imposta l'endpoint regionale predefinito che vuoi utilizzare per i comandi di Artifact Analysis.
Utilizza il flag --location
Puoi utilizzare il flag --location con uno dei seguenti comandi per indirizzare la richiesta all'endpoint di servizio appropriato:
- 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
Per elaborare correttamente la richiesta con un endpoint regionale, la località specificata deve soddisfare i seguenti requisiti:
- La località supporta un endpoint regionale.
- La località corrisponde alla regione in cui sono archiviati i metadati degli artefatti.
Se ometti il flag --location o specifichi una località che non supporta un endpoint regionale, il comando utilizza l'endpoint globale.
Ad esempio, il seguente comando elenca le vulnerabilità di un'immagine archiviata in us-east1:
gcloud artifacts vulnerabilities list --location=us-east1 us-east1-docker.pkg.dev/my-project/my-repo/my-image@sha256:49765698074d6d7baa82f
Imposta un endpoint predefinito per i comandi
Per impostazione predefinita, i comandi gcloud CLI utilizzano l'endpoint globale. Puoi impostare un endpoint regionale predefinito per i comandi di Artifact Analysis in modo da non dover specificare la località nei singoli comandi.
Assicurati di utilizzare gcloud CLI 402.0.0 o versioni successive.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
- LOCATION: la regione in cui sono archiviati i metadati.
Esegui questo comando:
Linux, macOS o 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
Utilizza un endpoint regionale per i metodi API
Specifica l'endpoint regionale anziché quello globale. Ad esempio, l'esempio seguente elenca le occorrenze nella regione specificata.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- LOCATION: la regione in cui sono archiviati i metadati.
- PROJECT_ID: l'ID progetto del tuo progetto Google Cloud .
Metodo HTTP e URL:
GET https://containeranalysis.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/occurrences
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
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
...
}
Prima della transizione allo spazio di archiviazione dei metadati regionale, le occorrenze e le note non includevano un nome della località nei relativi identificatori. Poiché le scansioni più recenti archiviano i metadati nelle regioni, le richieste API che utilizzano endpoint globali o regionali restituiscono risultati che includono identificatori di località.
Un identificatore di occorrenza prima della transizione era simile a questo esempio:
name: "projects/my-project/occurrences/030b7805-eca4-4739-9a43-ec65ed98c61f"
La stessa occorrenza archiviata in us-east1 ha il seguente aspetto:
name: "projects/my-project/locations/us-east1/occurrences/030b7805-eca4-4739-9a43-ec65ed98c61f"
Limita l'utilizzo degli endpoint API globali
Per contribuire a imporre l'utilizzo di endpoint regionali, utilizza il vincolo delle policy dell'organizzazione constraints/gcp.restrictEndpointUsage per bloccare le richieste all'endpoint API globale. Per saperne di più, consulta Limita l'utilizzo degli endpoint.
Passaggi successivi
- Visualizza le località di archiviazione dei metadati e gli endpoint di servizio supportati per ogni località.