Configura la località dei dati utilizzando gli endpoint a livello di regione

Questa pagina descrive gli endpoint di servizio globali e regionali di Artifact Analysis e come utilizzarli.

Un endpoint di servizio è un URL base che specifica l'indirizzo di rete di un servizio API. Artifact Analysis dispone di endpoint sia globali che regionali.

  • Endpoint globale: per impostazione predefinita, l'Artifact Analysis invia richieste API all'endpoint globale containeranalysis.googleapis.com. Gli endpoint globali non garantiscono che i dati in transito rimangano in una determinata posizione e possono recuperare i dati di Artifact Analysis da qualsiasi regione supportata. I tuoi dati potrebbero essere trattati al di fuori della regione in cui sono archiviati.

  • Endpoint a livello di area geografica: un endpoint di servizio che applica limitazioni regionali, assicurando che i dati vengano archiviati, trasmessi ed elaborati in una regione specificata. Un endpoint a livello di regione consente alle richieste di procedere solo se la risorsa interessata esiste nella posizione specificata dall'endpoint. Gli endpoint regionali utilizzano il seguente formato:

    containeranalysis.region.rep.googleapis.com.

    Valuta la possibilità di utilizzare endpoint a livello di regione nelle seguenti situazioni:

    • L'applicazione che deve accedere ai tuoi dati non è geograficamente vicina alla regione in cui sono archiviati.

    • Archivi i dati in più località e vuoi ottimizzare latenza, affidabilità e disponibilità.

    • Devi rispettare le norme o le normative sulla località dei dati che richiedono di elaborare i dati nella stessa posizione in cui sono archiviati.

Le attestazioni e i dati sulla provenienza della compilazione vengono archiviati nell'endpoint globale. I risultati della scansione 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 più regioni e per 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 dell'interfaccia a riga di comando Google Cloud CLI

Quando utilizzi gcloud CLI, ci sono 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 del servizio appropriato:

Per elaborare correttamente la richiesta con un endpoint regionale, la località specificata deve soddisfare i seguenti requisiti:

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à per 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

Impostare 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 posizione nei singoli comandi.

Assicurati di utilizzare gcloud CLI 402.0.0 o versioni successive.

Prima di utilizzare i dati dei comandi riportati di seguito, apporta le seguenti sostituzioni:

  • LOCATION: la regione in cui sono archiviati i metadati.

Esegui il seguente 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

Utilizzare un endpoint a livello di regione per i metodi dell'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 seguenti sostituzioni:

  • LOCATION: la regione in cui sono archiviati i metadati.
  • PROJECT_ID: l'ID 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 a livello di regione, le occorrenze e le note non includevano un nome della località nei relativi identificatori. Poiché le scansioni più recenti memorizzano 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 memorizzata in us-east1 ha il seguente aspetto:

name: "projects/my-project/locations/us-east1/occurrences/030b7805-eca4-4739-9a43-ec65ed98c61f"

Passaggi successivi