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
- Creare 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 Google Cloud nella stessa organizzazione inseriti nella cartella.
- Le autorizzazioni richieste a livello di organizzazione.
- Account di fatturazione per entrambi i progetti.

Configurazione delle risorse
- 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 perché per questo tutorial devi avere un'organizzazione).
- Verifica di avere le autorizzazioni corrette per questo tutorial a livello di organizzazione.
- Ruoli IAM per le cartelle
- Autorizzazioni e ruoli per i progetti
- Autorizzazioni e ruoli necessari per configurare i Controlli di servizio VPC
- Autorizzazioni e ruoli necessari per gestire Compute Engine
- Assicurati che entrambi i progetti siano disponibili nella cartella, poiché dobbiamo creare una policy con ambito limitato a livello di cartella. Scopri come spostare un progetto in una cartella.

Costo
Per utilizzare le risorse/API Cloud, devi attivare la fatturazione nella console Cloud. L'esecuzione di questo codelab non costa molto, se non nulla. Per arrestare le risorse ed evitare addebiti di fatturazione oltre questo tutorial, puoi eliminare le risorse che hai creato o il progetto. I nuovi utenti di Google Cloud hanno diritto al 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 laboratorio eseguiremo i seguenti passaggi:
- Nella console Google, seleziona la tua organizzazione e accedi ai Controlli di servizio VPC. Assicurati di essere a livello di organizzazione.

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

- 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 il tipo di perimetro come "Regolare".
- 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:

4. Verifica che il perimetro sia stato applicato
- 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 dei Controlli di servizio VPC creato.
- 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.

5. Risoluzione dei problemi relativi al rifiuto
Innanzitutto, dobbiamo identificare il problema esatto per determinare come risolverlo.
- 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.
- Fai clic nell'intestazione Controlli di servizio VPC e seleziona "Risolvi i problemi relativi al rifiuto" per aprire lo strumento per la risoluzione dei problemi dei 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, tra le altre cose 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 risolvere questo rifiuto in ProjectZ.
- Creare un livello di accesso per consentire l'accesso al progetto all'interno del perimetro concedendo l'accesso all'IP del mio sistema.
- Creare una regola in entrata per consentire l'accesso da parte di un client API dall'esterno del perimetro di servizio alle risorse all'interno di un perimetro di servizio.
In questo tutorial risolveremo i problemi creando un livello di accesso.
- Vai a Gestore contesto accesso nell'ambito della cartella (Codelab) e crea un nuovo livello di accesso.
- Utilizza la "Modalità di base" e consentiremo l'accesso quando vengono soddisfatti la sottorete IP e la posizione geografica.

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

6. Risultati del test.
Verifica 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.
- Vai a Compute Engine e fai clic su Crea istanza

- Lascia tutto come predefinito 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.

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 liberare spazio dalla 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 all'interno del progetto.
- Per eliminare l'istanza VM, seleziona la casella di controllo a sinistra del nome dell'istanza VM e fai clic su Elimina.

- 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".
- 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", quindi su Elimina.
- 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 Impostazioni IAM e amministrazione, fai clic su Arresta.
- Inserisci l'ID progetto e fai clic su Arresta comunque.
8. Complimenti!
In questo codelab hai creato un perimetro dei Controlli di servizio VPC, lo hai applicato e hai risolto i problemi.
Scopri di più
- Consulta la documentazione dei Controlli di servizio VPC.
- Consulta la documentazione di Gestore contesto accesso.
- Consulta la documentazione dello strumento per la risoluzione dei problemi dei Controlli di servizio VPC.
Licenza
Questo lavoro è concesso in licenza ai sensi di una licenza Creative Commons Attribution 2.0 Generic.