Tutorial I sui Controlli di servizio VPC di base

1. Introduzione

I Controlli di servizio VPC (VPC-SC) sono un controllo di sicurezza a livello di organizzazione in Google Cloud che consente ai clienti aziendali di mitigare i rischi di esfiltrazione di dati. I Controlli di servizio VPC consentono l'accesso in modalità Zero Trust ai servizi multi-tenant consentendo ai client di limitare l'accesso agli IP autorizzati, al contesto client e ai parametri dei dispositivi durante la connessione ai servizi multi-tenant da internet e da altri servizi, al fine di ridurre le perdite intenzionali e non intenzionali. Puoi utilizzare i Controlli di servizio VPC per creare perimetri che proteggono le risorse e i dati dei servizi che specifichi in modo esplicito.

Gli obiettivi di questo tutorial sono:

  • Comprendere le nozioni di base dei Controlli di servizio VPC
  • Crea un perimetro di servizio VPC
  • Proteggere un progetto con i Controlli di servizio VPC
  • Risolvere i problemi di una violazione in entrata dei Controlli di servizio VPC

2. Configurazione e requisiti

Per questo tutorial, sono necessari i seguenti prerequisiti:

  • Un'organizzazione Google Cloud.
  • Una cartella nell'organizzazione.
  • Due progetti GCP all'interno della stessa organizzazione inseriti nella cartella.
  • Autorizzazioni richieste a livello di organizzazione.
  • Account di fatturazione per entrambi i progetti.

1a62ebea85d6d4fc.png

Configurazione delle risorse

  1. Nella console Google Cloud, crea una cartella nell'organizzazione e due nuovi progetti (puoi riutilizzare quelli esistenti).

Se non hai già un account Google Workspace/Cloud Identity, devi ottenerne uno, in quanto per questo tutorial è necessaria un'organizzazione.

  1. Verifica di disporre delle autorizzazioni corrette per questo tutorial a livello di organizzazione.
  1. Assicurati che entrambi i progetti siano disponibili nella cartella, poiché dobbiamo creare una policy con ambito a livello di cartella. Scopri di più su come spostare un progetto in una cartella.

f7c75ab82028cb15.png

Costo

Per utilizzare le risorse/API Cloud, devi abilitare la fatturazione in Cloud Console. Completare questo codelab non costa molto, se non nulla. Per arrestare le risorse ed evitare addebiti oltre a quelli previsti in questo tutorial, puoi eliminare le risorse che hai creato o il progetto. I nuovi utenti di Google Cloud possono usufruire del programma di prova senza costi di 300 $.

L'unica risorsa che genererà un costo è l'istanza VM. Un costo stimato è disponibile nel Calcolatore prezzi.

3. Crea un perimetro

In questo lab eseguiremo i seguenti passaggi:

  1. Nella console Google, seleziona la tua organizzazione e accedi ai controlli di servizio VPC. Assicurati di trovarti a livello di organizzazione.

43d5af2d5f084bb4.png

  1. Fai clic su "Gestisci policy" per creare una nuova policy di accesso con ambito limitato alla cartella "Codelab".

9f75d949ca9992c4.png

  1. Crea un nuovo perimetro in modalità di applicazione forzata. Per questo tutorial, chiamiamolo "SuperProtection".
  • Quando crei il perimetro, seleziona il progetto da applicare come ProjectZ.
  • Seleziona "Normale" come tipo di perimetro.
  • Nella finestra di dialogo Specifica i servizi da limitare, seleziona il servizio da limitare come "Compute Engine".

La configurazione del perimetro dovrebbe essere simile alla seguente:

914d603103cb21.png

4. Verifica che il perimetro sia stato applicato

  1. Accedi a ProjectX e verifica se riesci ad accedere all'API Compute Engine visitando la home page delle istanze VM. Dovresti essere in grado di farlo perché projectX non è protetto dal perimetro VPC SC creato.
  2. Accedi a ProjectZ e verifica se riesci ad accedere a Compute Engine. Puoi notare che la richiesta è stata vietata dai Controlli di servizio VPC perché il perimetro di servizio SuperProtection protegge ProjectZ e l'API Compute Engine.

d5073543f783e9c7.png

5. Risoluzione dei problemi relativi al rifiuto

Per prima cosa, dobbiamo identificare il problema esatto per determinare come risolverlo.

  1. I log dei Controlli di servizio VPC includono dettagli sulle richieste alle risorse protette e il motivo per cui i Controlli di servizio VPC hanno rifiutato la richiesta. Troviamo l'ID univoco dei Controlli di servizio VPC negli audit log di ProjectZ utilizzando la seguente query in Esplora log:
resource.type="audited_resource"
protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"

Verranno visualizzati tutti gli audit log dei Controlli di servizio VPC. Cercheremo l'ultimo log degli errori.

  1. Fai clic nell'intestazione Controlli di servizio VPC e seleziona "Risolvi i problemi di rifiuto", che aprirà lo strumento per la risoluzione dei problemi relativi a Controlli di servizio VPC.

Questa API ci mostrerà in un'interfaccia utente intuitiva il motivo della violazione e se si trattava di una violazione in entrata o in uscita, oltre ad altre informazioni utili.

Per questo esercizio cercheremo quanto segue:

"principalEmail": "user@domain"
"callerIp": "PUBLIC_IP_ADDRESS"
"serviceName": "compute.googleapis.com"
"servicePerimeterName":
"accessPolicies/[POLICY_NUMBER]/servicePerimeters/SuperProtection
"ingressViolations": [
        {
"targetResource": "projects/[PROJECT_NUMBER]",
"servicePerimeter": "accessPolicies/[POLICY_NUMBER]/servicePerimeters/SuperProtection"
        }
      ],
"violationReason": "NO_MATCHING_ACCESS_LEVEL",
"resourceNames": "[PROJECT_ID]"

Abbiamo due opzioni per correggere questo rifiuto nel progetto Z.

  • Creazione di un livello di accesso per consentire l'accesso al progetto all'interno del perimetro concedendo l'accesso al mio IP di sistema.
  • Creazione di una regola in entrata per consentire l'accesso da parte di un client API dall'esterno del perimetro di servizio a risorse all'interno di un perimetro di servizio.

In questo tutorial risolveremo il problema creando un livello di accesso.

  1. Vai a Gestore contesto accesso nell'ambito della cartella (Codelab) e crea un nuovo livello di accesso.
  2. Utilizza la "Modalità di base" e consentiremo l'accesso quando la subnet IP e la posizione geografica corrispondono.

678f0f9d7bac921d.png

  1. Vai a Controlli di servizio VPC nell'ambito dell'organizzazione. Seleziona la policy di accesso per questo codelab e modifica il perimetro che abbiamo creato in precedenza.
  2. Aggiungi il livello di accesso creato nell'ambito della cartella e salva.

c0af5691dfe9dd75.png

6. Risultati del test.

Conferma di avere accesso a Compute Engine e di poter creare un'istanza VM. Ora che abbiamo creato il livello di accesso, proviamo ad accedere a Compute Engine in ProjectZ e a creare un'istanza VM.

  1. Vai a Compute Engine e fai clic su Crea istanza.

c1206aaf18497ec1.png

  1. Lascia invariati i valori predefiniti e prova a creare un'istanza VM a basso costo.

Dopo circa un minuto, dovresti vedere l'istanza VM creata e puoi verificare di avere accesso completo a Compute Engine protetto all'interno del perimetro.

5b2ded02f669b2ef.png

7. Esegui la pulizia

Sebbene non siano previsti addebiti separati per l'utilizzo dei controlli di servizio VPC quando il servizio non è in uso, è una best practice pulire la configurazione utilizzata in questo laboratorio. Puoi anche eliminare l'istanza VM e/o i progetti Cloud per evitare addebiti. L'eliminazione del progetto Cloud interrompe la fatturazione per tutte le risorse utilizzate al suo interno.

  1. Per eliminare l'istanza VM, seleziona la casella di controllo a sinistra del nome dell'istanza VM, quindi fai clic su Elimina.

da0abf0894fe03cd.png

  1. Per eliminare il perimetro, completa i seguenti passaggi:
  • Nella console Google Cloud, fai clic su Sicurezza, quindi su Controlli di servizio VPC nell'ambito dell'organizzazione.
  • Nella pagina Controlli di servizio VPC, nella riga della tabella corrispondente al perimetro che vuoi eliminare, fai clic su "Icona Elimina".
  1. Per eliminare il livello di accesso, completa i seguenti passaggi:
  • Nella console Google Cloud, apri la pagina Gestore contesto accesso nell'ambito della cartella.
  • Nella griglia, nella riga corrispondente al livello di accesso che vuoi eliminare, fai clic su "Icona Elimina" e poi su Elimina.
  1. Per arrestare i progetti, completa i seguenti passaggi:
  • Nella console Google Cloud, vai alla pagina Impostazioni IAM e amministrazione del progetto che vuoi eliminare.
  • Nella pagina delle impostazioni IAM e amministrazione, fai clic su Arresto.
  • Inserisci l'ID progetto e fai clic su Chiudi comunque.

8. Complimenti!

In questo codelab hai creato un perimetro dei Controlli di servizio VPC, lo hai applicato e ne hai risolto i problemi.

Scopri di più

Licenza

Questo lavoro è concesso in licenza ai sensi di una licenza Creative Commons Attribution 2.0 Generic.