Accesso sensibile al contesto con regole per il traffico in entrata

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Le configurazioni delle regole di accesso in entrata sensibile al contesto consentono l'accesso alle risorse in base agli attributi del client, come l'origine di rete (indirizzo IP o rete VPC), il tipo di identità (account o utente del servizio), l'identità e i dati del dispositivo. L'accesso è definito dalle regole in entrata.

Per una panoramica delle regole di traffico in entrata e in uscita, vedi Regole in entrata e in uscita.

Per istruzioni su come applicare i criteri delle regole di traffico in entrata e in uscita, vedi Configurare i criteri in entrata e in uscita.

Esempi di configurazione dei casi d'uso di accesso sensibile al contesto

Questa sezione contiene i seguenti esempi di accesso sensibile al contesto:

  1. Consenti agli utenti umani di accedere a BigQuery da Internet e solo da account di servizio specifici di un intervallo IP specificato
  2. Consenti ai dipendenti di eseguire query su BigQuery da dispositivi attendibili su Internet e da un account di servizio specifico per caricare privatamente i dati in un bucket Cloud Storage (dati di origine)

Consenti agli utenti umani di accedere a BigQuery da Internet e accedi solo ad account di servizio specifici da un intervallo IP specificato

Ingress da reti e utenti riconosciuti

Supponiamo di aver definito il seguente perimetro indicando il perimetro con gcloud:

name: accessPolicies/222/servicePerimeters/Example
status:
  resources:
  - projects/111
  restrictedServices:
  - bigquery.googleapis.com
  - storage.googleapis.com
  vpcAccessibleServices:
    enableRestriction: true
    allowedServices:
    - RESTRICTED_SERVICES
title: Example

Presupponiamo inoltre che sia stato definito un livello di accesso denominato CorpDatacenters. CorpDatacenters, in questo esempio, è un intervallo autorizzato di IP di data center aziendali che accedono da quali account di servizio sono consentiti.

Di seguito è riportato il criterio direzionale per consentire a tutte le persone e a un determinato insieme di account di servizio, limitato a un determinato insieme di IP (definiti da un livello di accesso):

echo """
- ingressFrom:
    identities:
    - serviceAccount:my-sa@my-project.iam.gserviceaccount.com
    sources:
    - accessLevel: accessPolicies/222/accessLevels/CorpDatacenters
  ingressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - method: \"*\"
    resources:
    - \"*\"
- ingressFrom:
    identityType: ANY_USER_ACCOUNT
    sources:
    - accessLevel: \"*\"
  ingressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - method: \"*\"
    resources:
    - \"*\"
""" > ingress.yaml

Applica le regole in entrata eseguendo questo comando:

gcloud beta access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml

Consenti ai dipendenti di eseguire query su BigQuery da dispositivi attendibili su Internet e da un account di servizio specifico per caricare privatamente i dati in un bucket Cloud Storage (dati di origine)

Ingress da dispositivi e reti riconosciuti

Supponiamo di aver definito il seguente perimetro indicando il perimetro con gcloud:

name: accessPolicies/222/servicePerimeters/Example
status:
  resources:
  - projects/111
  restrictedServices:
  - bigquery.googleapis.com
  - storage.googleapis.com
  vpcAccessibleServices:
    enableRestriction: true
    allowedServices:
    - RESTRICTED_SERVICES
title: Example

Di seguito è riportato il criterio direzionale per consentire alle persone di accedere alle viste BigQuery da dispositivi attendibili (utilizzando un livello di accesso) e a un account di servizio specifico privato per accedere a Cloud Storage da una rete VPC autorizzata:

echo """
- ingressFrom:
    identities:
    - serviceAccount:my-sa@my-project.iam.gserviceaccount.com
    sources:
    - resource: projects/111
  ingressTo:
    operations:
    - serviceName: storage.googleapis.com
      methodSelectors:
      - method: google.storage.Write
      - method: google.storage.objects.create
    resources:
    - \"*\"

- ingressFrom:
    identityType: ANY_USER_ACCOUNT
    sources:
    - accessLevel: accessPolicies/222/accessLevels/TrustedDevices
  ingressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - permission: bigquery.tables.getData
    resources:
    - \"*\"
""" > ingress.yaml

Applica le regole in entrata eseguendo questo comando:

gcloud beta access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml