Questo tutorial mostra come proteggere Compute Engine utilizzando un perimetro di servizio e come risolvere un problema di violazione dell'ingresso per consentire l'accesso autorizzato a Compute Engine.
I Controlli di servizio VPC ti consentono di definire un perimetro di servizio intorno alle risorse dei servizi gestiti da Google per controllare le comunicazioni con quei servizi. Puoi stabilire un perimetro Zero Trust intorno alle tue risorse sensibili, limitando l'accesso a indirizzi IP, utenti e dispositivi autorizzati. Questa funzionalità ti consente di definire criteri di sicurezza che impediscono l'accesso ai servizi gestiti da Google al di fuori di un perimetro attendibile, bloccano l'accesso ai dati da località non attendibili e mitigano i rischi di esfiltrazione di dati.
Questo tutorial è rivolto agli Google Cloud amministratori dell'organizzazione che vogliono apprendere i concetti di base dei Controlli di servizio VPC.
Crea un perimetro di servizio
Crea un perimetro di servizio che protegga l'API Compute Engine nel progetto My-Project-2
:
Nella console Google Cloud , vai alla pagina Controlli di servizio VPC.
Vai a Controlli di servizio VPC
Assicurati di trovarti nell'ambito dell'organizzazione.
Fai clic su Gestisci policy.
Crea una nuova norma di accesso con ambito limitato alla cartella
Exercise
.Crea un nuovo perimetro con i seguenti dettagli:
Titolo:
MyFirstPerimeter
Tipo di perimetro: Regolare
Modalità di applicazione forzata: applicazione forzata
Risorse da proteggere: progetto
My-Project-2
Servizi con limitazioni: API Compute Engine
Verificare il perimetro
In questa sezione puoi effettuare richieste di accesso alle risorse nei progetti per verificare se il perimetro protegge le risorse previste.
Accedi al progetto
My-Project-1
e verifica di poter accedere a Compute Engine visitando la pagina Istanze VM.Dovresti essere in grado di accedere perché
My-Project-1
non è protetto dal perimetro che hai creato in precedenza.Accedi al progetto
My-Project-2
e verifica di poter accedere a Compute Engine visitando la pagina Istanze VM.Dovresti notare che i Controlli di servizio VPC negano la tua richiesta di accesso a Compute Engine perché il perimetro
MyFirstPerimeter
proteggeMy-Project-2
e l'API Compute Engine.
Risolvere un problema di violazione
I log di controllo dei Controlli di servizio VPC
includono i dettagli delle richieste alle risorse protette e il motivo per cui
i Controlli di servizio VPC hanno rifiutato la richiesta. Hai bisogno di queste informazioni per identificare e
risolvere il problema relativo alla violazione nel progetto My-Project-2
.
Visualizza audit log
Trova l'ID univoco della violazione dei Controlli di servizio VPC negli audit log del progetto
My-Project-2
:-
Nella Google Cloud console, vai alla pagina Esplora log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Seleziona il progetto
My-Project-2
.Per visualizzare tutti gli audit log, inserisci la seguente query nel campo dell'editor di query:
resource.type="audited_resource" protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
Fai clic su Esegui query.
Questa query mostra tutti gli audit log dei Controlli di servizio VPC. Per trovare i dettagli della violazione per l'accesso all'API Compute Engine nel progetto
My-Project-2
, controlla l'ultimo log degli errori.Per ulteriori informazioni, vedi Visualizzare i log.
-
Nel riquadro Risultati query, fai clic su Controlli di servizio VPC accanto al rifiuto di cui vuoi risolvere il problema, quindi fai clic su Risolvi problema di rifiuto.
Viene visualizzata la pagina Analizzatore delle violazioni dei controlli di servizio VPC. Questa pagina mostra il motivo della violazione e altre informazioni, ad esempio se la violazione riguarda l'ingresso o l'uscita.
In questo tutorial, cerca le seguenti informazioni:
"principalEmail": "USER@DOMAIN" "callerIp": "PUBLIC_IP_ADDRESS" "serviceName": "compute.googleapis.com" "servicePerimeterName": "accessPolicies/POLICY_NUMBER/servicePerimeters/MyFirstPerimeter "ingressViolations": [ { "targetResource": "projects/PROJECT_NUMBER", "servicePerimeter": "accessPolicies/POLICY_NUMBER/servicePerimeters/MyFirstPerimeter" } ], "violationReason": "NO_MATCHING_ACCESS_LEVEL", "resourceNames": "PROJECT_ID"
Il motivo della violazione è
"NO_MATCHING_ACCESS_LEVEL"
. La violazione"NO_MATCHING_ACCESS_LEVEL"
si verifica quando l'indirizzo IP, il tipo di dispositivo o l'identità dell'utente non corrispondono a nessuna regola di ingresso o livello di accesso associato al perimetro. Se l'indirizzo IP del chiamante non è presente o viene visualizzato come indirizzo IP interno nel log, questa violazione può essere dovuta a un servizio Google Cloud che non è supportato dai Controlli di servizio VPC.
Per risolvere questo rifiuto nel progetto My-Project-2
, hai due opzioni:
Crea un livello di accesso che consenta l'accesso all'indirizzo IP del sistema al progetto all'interno del perimetro.
Crea una regola di ingresso che consenta l'accesso a un client API dall'esterno del perimetro alle risorse all'interno del perimetro.
La sezione seguente illustra come risolvere questo rifiuto creando un livello di accesso.
Crea un livello di accesso
Nella console Google Cloud , vai alla pagina Gestore contesto accesso nell'ambito della cartella
Exercise
.Crea un livello di accesso con i seguenti dettagli:
Per Crea condizioni in, seleziona Modalità di base.
Per Se la condizione viene soddisfatta, restituisci, seleziona True.
Seleziona l'attributo Subnet IP e specifica l'indirizzo IP pubblico del tuo sistema.
Seleziona l'attributo Località geografiche e specifica la tua località geografica.
Questo livello di accesso consente l'accesso solo quando l'indirizzo IP e la posizione geografica corrispondono.
Vai alla pagina Controlli di servizio VPC nell'ambito dell'organizzazione.
Seleziona la policy di accesso che hai creato in precedenza in questo tutorial.
Aggiungi il livello di accesso che hai creato all'ambito della cartella
Exercise
al perimetroMyFirstPerimeter
.
Testa l'accesso
Dopo aver aggiunto il livello di accesso, verifica di poter accedere a Compute Engine
nel progetto My-Project-2
e creare un'istanza VM.
Nella console Google Cloud , vai alla pagina Istanze VM.
Dopo circa un minuto, Compute Engine crea un'istanza VM e questa azione verifica che tu abbia accesso completo a Compute Engine protetto all'interno del perimetro.