Integra Cloud Armor con Google SecOps
Questo documento spiega come integrare Google Cloud Armor con Google Security Operations.
Casi d'uso
L'integrazione con Cloud Armor supporta i seguenti casi d'uso:
Blocco automatico delle minacce: blocca istantaneamente gli indirizzi IP o gli intervalli dannosi sul perimetro Google Cloud aggiornando le regole delle policy di sicurezza durante un incidente.
Gestione delle policy di sicurezza: elenca, recupera e aggiorna le policy e le regole di sicurezza nel tuo ambiente per garantire una protezione WAF coerente.
Mitigazione DDoS dinamica: rispondi agli attacchi volumetrici o basati su protocollo modificando in modo programmatico le impostazioni delle policy di sicurezza.
Audit forense: recupera i dettagli di configurazione delle policy di sicurezza esistenti per correlare le protezioni perimetrali con gli avvisi di sicurezza interni.
Prima di iniziare
Prima di configurare l'integrazione di Cloud Armor in Google SecOps, completa i seguenti passaggi preliminari:
Crea e configura un ruolo personalizzato di Identity and Access Management.
Scegli e configura uno dei seguenti metodi di autenticazione:
Opzione 1: Workload Identity (consigliata): questo metodo utilizza token di breve durata tramite la simulazione dell'identità dei account di servizio.
Opzione 2: chiave JSON del service account. Questo metodo si basa su un file di chiave secret statico e di lunga durata.
Crea e configura il ruolo IAM
Per fornire all'integrazione le autorizzazioni necessarie, crea un ruolo personalizzato nel tuo progetto Google Cloud :
Nella console Google Cloud , vai a Ruoli.
Fai clic su addCrea ruolo personalizzato.
Fornisci un titolo, una descrizione e un ID univoco.
Imposta Fase di lancio del ruolo su Disponibilità generale.
Aggiungi le seguenti autorizzazioni al ruolo:
compute.backendBuckets.setSecurityPolicycompute.backendServices.setSecurityPolicycompute.regionBackendServices.setSecurityPolicycompute.regionSecurityPolicies.createcompute.regionSecurityPolicies.getcompute.regionSecurityPolicies.listcompute.regionSecurityPolicies.updatecompute.securityPolicies.createcompute.securityPolicies.getcompute.securityPolicies.listcompute.securityPolicies.update
Fai clic su Crea.
Crea un account di servizio
Nella console Google Cloud , vai a IAM e amministrazione > Account di servizio.
Fai clic su addCrea service account.
Fornisci un nome e una descrizione e fai clic su Crea e continua.
Nel passaggio Concedi a questo account di servizio l'accesso al progetto, assegna il ruolo IAM personalizzato che hai creato.
Fai clic su Fine. Prendi nota dell'indirizzo email del account di servizio.
Configura le credenziali di Workload Identity
Workload Identity è l'approccio consigliato perché utilizza token di breve durata tramite la simulazione dell'identità dei account di servizio.
Identifica l'identità univoca dell'istanza
Per stabilire una connessione, devi concedere alla tua istanza Google SecOps l'autorizzazione per simulare l'identità del tuo account di servizio.
In Google SecOps, vai a Content Hub > Integrazioni di risposta.
Seleziona l'integrazione di Cloud Armor e inserisci l'indirizzo email del tuo service account in
Workload Identity Email.Fai clic su Salva > Verifica. Il test non va a buon fine.
Fai clic sul pulsante close_small accanto a Test e individua l'email di identità che inizia con
gke-init-python@...osoar-python@....Copia questo indirizzo email univoco.
Autorizza l'identità dell'istanza in Google Cloud
Nella console Google Cloud , vai a IAM e amministrazione > Account di servizio.
Seleziona il account di servizio di destinazione e vai a Autorizzazioni > Concedi l'accesso.
Incolla l'indirizzo email univoco nel campo Nuove entità e assegna il ruolo Creatore token account di servizio (
roles/iam.serviceAccountTokenCreator).
Configura una chiave JSON
I file di chiavi secret statici e di lunga durata richiedono la rotazione manuale. Utilizza questo metodo solo se l'autenticazione di Workload Identity non è disponibile.
Nella console Google Cloud , vai a IAM e amministrazione > Account di servizio e seleziona il tuo service account.
Vai alla scheda Chiavi e fai clic su Aggiungi chiave > Crea nuova chiave.
Seleziona JSON e fai clic su Crea. Il file della chiave viene scaricato sul tuo computer.
Parametri di integrazione
L'integrazione di Cloud Armor richiede i seguenti parametri:
| Parametro | Descrizione |
|---|---|
API Root |
Obbligatorio. La radice dell'API del servizio Cloud Armor. Il valore predefinito è |
Project ID |
Facoltativo. L'ID progetto da scegliere come target per Cloud Armor. Se non viene fornito alcun valore, l'integrazione recupera l'ID dalle credenziali dell'account di servizio. |
Workload Identity Email |
Facoltativo. L'indirizzo email client del tuo account di servizio. Configura questo parametro per l'autenticazione di Workload Identity. Se configurato, |
User Service Account |
Facoltativo. I contenuti completi del file JSON della chiave del account di servizio. Configura questo parametro per l'autenticazione della chiave del account di servizio. Se configurata, l'integrazione ignora |
Verify SSL |
Obbligatorio. Se selezionata, l'integrazione convalida il certificato SSL durante la connessione al server Google Cloud . Abilitato per impostazione predefinita. |
Per istruzioni su come configurare un'integrazione in Google SecOps, consulta Configura le integrazioni.
Se necessario, puoi apportare modifiche in un secondo momento. Dopo aver configurato un'istanza di integrazione, puoi utilizzarla nei playbook. Per saperne di più su come configurare e supportare più istanze, consulta Supporto di più istanze.
Azioni
Per saperne di più sulle azioni, consulta Rispondi alle azioni in attesa dalla scrivania di lavoro ed Esegui un'azione manuale nel tuo caso.
Aggiungi una regola a una policy di sicurezza
Aggiungi una nuova regola alla policy di sicurezza nel servizio Cloud Armor.
Entità
Questa azione non viene eseguita sulle entità.
Input azione
Per configurare l'azione, utilizza i seguenti parametri:
| Parametri | |
|---|---|
Policy Name |
Obbligatorio Nome della policy di sicurezza a cui aggiungere una nuova regola. |
Region |
Optional Regione della policy in cui aggiungere la regola. Se non viene fornito alcun valore, la regola viene aggiunta alla policy di sicurezza a livello globale. |
Rule JSON |
Obbligatorio Definizione JSON della regola da aggiungere. Per saperne di più sull'aggiunta di una regola a una policy, consulta Metodo: securityPolicies.addRule. |
Output azione
| Tipo di output dell'azione | |
|---|---|
| Allegato della bacheca richieste | N/D |
| Link alla bacheca casi | N/D |
| Tabella della bacheca casi | N/D |
| Tabella di arricchimento | N/D |
| Risultato JSON | Disponibile |
| Risultato dello script | Disponibile |
Risultato dello script
| Nome del risultato dello script | Valore |
|---|---|
| is_success | Vero o falso |
Risultato JSON
{
"kind": "compute#securityPolicy",
"id": "ID",
"creationTimestamp": "2024-04-14T05:39:05.798-07:00",
"name": "example",
"description": "Test for integration",
"rules": [
{
"kind": "compute#securityPolicyRule",
"description": "test",
"priority": 100,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
},
{
"kind": "compute#securityPolicyRule",
"description": "Default rule, higher priority overrides it",
"priority": 2147483647,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
}
],
"fingerprint": "A3hq2ZQYxj8=",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
"type": "CLOUD_ARMOR",
"labelFingerprint": "42WmSpB8rSM=",
"region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
Bacheca casi
Questa azione fornisce i seguenti messaggi di output:
| Messaggio di output | Descrizione del messaggio |
|---|---|
Successfully added a new rule to the security policy! |
Azione riuscita. |
Error executing action "Add a Rule to a Security Policy".
Reason: ERROR_REASON |
Azione non riuscita. Controlla la connessione al server, i parametri di input, le credenziali, il nome della regione, i contenuti del file JSON o il nome di una policy. |
Crea una policy di sicurezza
Crea una policy di sicurezza nel servizio Cloud Armor.
Entità
Questa azione non viene eseguita sulle entità.
Input azione
Per configurare l'azione, utilizza i seguenti parametri:
| Parametri | |
|---|---|
Region |
Optional La regione in cui creare una policy. Se non viene fornito alcun valore, viene creata la policy di sicurezza a livello globale. |
Policy JSON |
Obbligatorio La definizione JSON della policy da creare. Per saperne di più sulle policy, consulta Risorsa REST: securityPolicies. |
Output azione
| Tipo di output dell'azione | |
|---|---|
| Allegato della bacheca richieste | N/D |
| Link alla bacheca casi | N/D |
| Tabella della bacheca casi | N/D |
| Tabella di arricchimento | N/D |
| Risultato JSON | Disponibile |
| Risultato dello script | Disponibile |
Risultato dello script
| Nome del risultato dello script | Valore |
|---|---|
| is_success | Vero o falso |
Risultato JSON
{
"kind": "compute#securityPolicy",
"id": "ID",
"creationTimestamp": "2024-04-14T05:39:05.798-07:00",
"name": "example",
"description": "Test for integration",
"rules": [
{
"kind": "compute#securityPolicyRule",
"description": "test",
"priority": 100,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
},
{
"kind": "compute#securityPolicyRule",
"description": "Default rule, higher priority overrides it",
"priority": 2147483647,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
}
],
"fingerprint": "A3hq2ZQYxj8=",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
"type": "CLOUD_ARMOR",
"labelFingerprint": "42WmSpB8rSM=",
"region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
Bacheca casi
Questa azione fornisce i seguenti messaggi di output:
| Messaggio di output | Descrizione del messaggio |
|---|---|
Successfully created a new security policy! |
Azione riuscita. |
Error executing action "Create a Security Policy". Reason:
ERROR_REASON |
Azione non riuscita. Controlla la connessione al server, i parametri di input, le credenziali, il nome della regione o i contenuti di un file JSON. |
Dindin
Testa la connettività al servizio Cloud Armor con i parametri forniti nella pagina di configurazione dell'integrazione.
Entità
Questa azione non viene eseguita sulle entità.
Input azione
N/D
Output azione
| Tipo di output dell'azione | |
|---|---|
| Allegato della bacheca richieste | N/D |
| Link alla bacheca casi | N/D |
| Tabella della bacheca casi | N/D |
| Tabella di arricchimento | N/D |
| Risultato JSON | N/D |
| Risultato dello script | Disponibile |
Risultato dello script
| Nome del risultato dello script | Valore |
|---|---|
| is_success | Vero o falso |
Bacheca casi
Questa azione fornisce i seguenti messaggi di output:
| Messaggio di output | Descrizione del messaggio |
|---|---|
Successfully connected to the Google Cloud Armor service with
the provided connection parameters! |
Azione riuscita. |
Failed to connect to the Google Cloud Armor service! Error is
ERROR_REASON |
Azione non riuscita. Controlla la connessione al server, i parametri di input o le credenziali. |
Aggiorna una policy di sicurezza
Aggiorna la policy di sicurezza esistente nel servizio Cloud Armor.
Questa azione non può aggiornare le regole di una policy. Per aggiungere una regola alla policy correlata, utilizza l'azione Aggiungi una regola a una policy di sicurezza.
Entità
Questa azione non viene eseguita sulle entità.
Input azione
Per configurare l'azione, utilizza i seguenti parametri:
| Parametri | |
|---|---|
Policy Name |
Obbligatorio Nome della policy di sicurezza a cui aggiungere una nuova regola. |
Region |
Optional Regione per la policy aggiornata. Se non viene fornito alcun valore, viene creata la policy di sicurezza a livello globale. |
Rule JSON |
Obbligatorio Definizione JSON della policy da aggiornare. Per saperne di più sugli aggiornamenti delle policy, consulta Metodo: securityPolicies.patch . Non puoi aggiornare le regole con questa azione. Per aggiungere una regola a una policy, utilizza l'azione Aggiungi una regola a una policy di sicurezza. |
Output azione
| Tipo di output dell'azione | |
|---|---|
| Allegato della bacheca richieste | N/D |
| Link alla bacheca casi | N/D |
| Tabella della bacheca casi | N/D |
| Tabella di arricchimento | N/D |
| Risultato JSON | Disponibile |
| Risultato dello script | Disponibile |
Risultato dello script
| Nome del risultato dello script | Valore |
|---|---|
| is_success | Vero o falso |
Risultato JSON
{
"kind": "compute#securityPolicy",
"id": "ID",
"creationTimestamp": "2024-04-14T05:39:05.798-07:00",
"name": "example",
"description": "Test for integration",
"rules": [
{
"kind": "compute#securityPolicyRule",
"description": "test",
"priority": 100,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
},
{
"kind": "compute#securityPolicyRule",
"description": "Default rule, higher priority overrides it",
"priority": 2147483647,
"match": {
"versionedExpr": "SRC_IPS_V1",
"config": {
"srcIpRanges": [
"*"
]
}
},
"action": "allow",
"preview": false
}
],
"fingerprint": "A3hq2ZQYxj8=",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
"type": "CLOUD_ARMOR",
"labelFingerprint": "42WmSpB8rSM=",
"region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
Bacheca casi
Questa azione fornisce i seguenti messaggi di output:
| Messaggio di output | Descrizione del messaggio |
|---|---|
Successfully added comment to the
identity protection detection with ID
DETECTION_ID in CrowdStrike |
Azione riuscita. |
Error executing action "Update a Security Policy". Reason:
ERROR_REASON |
Azione non riuscita. Controlla la connessione al server, i parametri di input o le credenziali. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.