Integra Cloud Armor con Google SecOps
Questo documento spiega come integrare Google Cloud Armor con Google Security Operations.
Casi d'uso
L'integrazione di Cloud Armor supporta i seguenti casi d'uso:
Blocco automatico delle minacce: blocca immediatamente gli intervalli o gli indirizzi IP dannosi all' Google Cloud edge aggiornando le regole della policy di sicurezza durante un incidente.
Gestione delle policy di sicurezza: elenca, recupera e aggiorna le policy di sicurezza e le regole nel tuo ambiente per garantire una protezione WAF coerente.
Mitigazione dinamica degli attacchi DDoS: rispondi agli attacchi volumetrici o basati su protocollo regolando 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 Identity and Access Management personalizzato.
Scegli e configura uno dei seguenti metodi di autenticazione:
Opzione 1: Workload Identity (consigliato): 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 segreta 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 AggiungiCrea 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 Google Cloud console, vai a IAM e amministrazione > Service Accounts.
Fai clic su AggiungiCrea 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.
Configurare 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.
Identificare l'identità univoca dell'istanza
Per stabilire una connessione è necessario concedere all'istanza Google SecOps l'autorizzazione a rappresentare il tuoaccount di serviziot.
In Google SecOps, vai a Content Hub > Response Integrations.
Seleziona l'integrazione Cloud Armor e inserisci l'email del tuo account di servizio in
Workload Identity Email.Fai clic su Salva > Test. Il test non riesce.
Fai clic sul pulsante close_small accanto a Test e individua l'email dell'identità che inizia con
gke-init-python@...osoar-python@....Copia questo indirizzo email univoco.
Autorizza l'identità dell'istanza in Google Cloud
Nella Google Cloud console, vai a IAM e amministrazione > Service Accounts.
Seleziona il account di servizio di destinazione e vai a Autorizzazioni > Concedi accesso.
Incolla l'indirizzo email univoco nel campo Nuove entità e assegna il ruolo Creatore token service account (
roles/iam.serviceAccountTokenCreator).
Configurare una chiave JSON
I file delle chiavi segrete statiche e di lunga durata richiedono la rotazione manuale. Utilizza questo metodo solo se l'autenticazione Workload Identity non è disponibile.
Nella console Google Cloud , vai a IAM e amministrazione > Service account e seleziona il tuo account di servizio.
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 delaccount di serviziot. |
Workload Identity Email |
Facoltativo. L'indirizzo email client del tuo account di servizio. Configura questo parametro per l'autenticazione Workload Identity. Se configurato, |
User Service Account |
Facoltativo. L'intero contenuto del file JSON della chiave dell'account di servizio. Configura questo parametro per l'autenticazione della chiave delaccount di serviziot. Se configurata, l'integrazione ignora
|
Verify SSL |
Obbligatorio. Se selezionata, l'integrazione convalida il certificato SSL quando si connette al server Google Cloud . Abilitato per impostazione predefinita. |
Per istruzioni su come configurare un'integrazione in Google SecOps, consulta Configurare le integrazioni.
Se necessario, potrai 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 ulteriori informazioni sulle azioni, vedi Rispondere alle azioni in attesa dalla tua scrivania e Eseguire un'azione manuale.
Aggiungere 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 in cui aggiungere la regola alla policy. 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 casi | 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, il contenuto del file JSON o il nome di un criterio. |
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 del criterio da creare. Per saperne di più sulle policy, consulta Risorsa REST: securityPolicies. |
Output azione
| Tipo di output dell'azione | |
|---|---|
| Allegato della bacheca casi | 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 il contenuto 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 casi | 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 un criterio di sicurezza
Aggiorna la policy di sicurezza esistente nel servizio Cloud Armor.
Questa azione non può aggiornare le regole in 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 le norme aggiornate. Se non viene fornito alcun valore, viene creata la policy di sicurezza a livello globale. |
Rule JSON |
Obbligatorio Definizione JSON del criterio da aggiornare. Per maggiori informazioni sugli aggiornamenti delle norme, 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 casi | 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.