Integra Cloud Identity con Google SecOps

Questo documento spiega come integrare Cloud Identity con Google Security Operations.

Casi d'uso

L'integrazione di Cloud Identity utilizza le funzionalità di Google SecOps per supportare i seguenti casi d'uso:

  • Gestisci i controlli degli accessi: crea e aggiorna le configurazioni IAM direttamente da un playbook di indagine.
  • Definizioni delle policy di controllo: elenca le informazioni sulle policy disponibili per monitorare le modifiche di accesso.
  • Gestisci gli attributi degli elenchi dei rilevatori: aggiungi entità e indicatori a elenchi di URL di rilevatori specifici per il monitoraggio.

Prima di iniziare

Prima di configurare l'integrazione di Cloud Identity nella piattaforma Google SecOps, verifica di aver configurato l'ambiente seguendo questi passaggi:

  1. Crea un account di servizio.
  2. Delega l'autorità a livello di dominio al tuo service account
  3. Abilita le API richieste per il tuo progetto.
  4. Scegli e configura uno dei seguenti metodi di autenticazione:
    • Opzione 1: chiave JSON. Questo metodo si basa su un file di chiave secret statico e di lunga durata. Utilizza questo metodo solo se Workload Identity non è disponibile nel tuo ambiente.
    • Opzione 2: Workload Identity (consigliata): questo metodo utilizza token di accesso temporanei di breve durata tramite la simulazione dell'identità dei account di servizio, eliminando la necessità di archiviare secret.

Crea un account di servizio

Per creare un account di servizio per l'integrazione, completa i seguenti passaggi:

  1. Nella console Google Cloud , vai a IAM e amministrazione > Service account e seleziona il tuo progetto.

    Vai a Service account

  2. Fai clic su Crea account di servizio.

  3. Fornisci un nome e una descrizione e fai clic su Fine per creare l'account.

Delega l'autorità a livello di dominio al tuo account di servizio

  1. Nella Console di amministrazione Google del tuo dominio, vai a Menu principale > Sicurezza > Accesso e controlli relativi ai dati > Controlli API.
  2. Nel riquadro Delega a livello di dominio, seleziona Gestisci delega a livello di dominio.
  3. Fai clic su Aggiungi nuovo.
  4. Nel campo ID client, inserisci l'ID client ottenuto dalla sezione Crea un service account.
  5. Nel campo Ambiti OAuth, inserisci il seguente elenco delimitato da virgole degli ambiti richiesti per la tua applicazione:

    https://www.googleapis.com/auth/cloud-platform,
    https://www.googleapis.com/auth/cloud-identity.policies,
    https://www.googleapis.com/auth/admin.directory.orgunit
    
  6. Fai clic su Autorizza.

L'account di servizio è ora autorizzato ad accedere ai dati nel tuo dominio utilizzando gli ambiti specificati.

Abilita le API richieste per il progetto

  1. Nella console Google Cloud , vai ad API e servizi.

    Vai su API e servizi

  2. Fai clic su Abilita API e servizi.

  3. Cerca e abilita le seguenti API per il tuo progetto:

    • API SDK Admin (admin.googleapis.com)
    • API Cloud Identity (cloudidentity.googleapis.com)

Configura una chiave JSON

Puoi autenticare l'integrazione utilizzando un file di chiave JSON statico o la federazione delle identità per i workload. Per massimizzare la sicurezza dell'ambiente, utilizza il metodo Workload Identity. Utilizza il metodo della chiave JSON solo se Workload Identity non è supportato nella tua infrastruttura, poiché le chiavi statiche richiedono la rotazione manuale e aumentano i rischi di esposizione delle credenziali.

Per generare il file della chiave JSON richiesto per autenticare l'integrazione, completa i seguenti passaggi:

  1. Nella console Google Cloud , vai a IAM e amministrazione > Account di servizio e seleziona l'account di servizio che hai creato.

    Vai a Service account

  2. Vai alla scheda Chiavi.

  3. Fai clic su Aggiungi chiave.

  4. Seleziona Crea nuova chiave.

  5. Per il tipo di chiave, seleziona JSON e fai clic su Crea. Il file JSON viene scaricato sul computer.

  6. Copia l'intero contenuto di questo file e incollalo in User's Service Account JSON durante la configurazione dell'integrazione.

Configura le autorizzazioni di Cloud Identity

Utilizza la seguente procedura per definire i privilegi amministrativi richiesti dall'integrazione per gestire le risorse dell'organizzazione:

  1. Nella Console di amministrazione Google, vai ad Account > Ruoli amministratore.
  2. Fai clic su Crea nuovo ruolo.
  3. Specifica un nome per il nuovo ruolo personalizzato e fai clic su Continua.
  4. Nella pagina Seleziona privilegi, vai alla sezione dei privilegi API Admin.
  5. In Privilegi API Admin, seleziona i seguenti privilegi:
    • Organization Units
    • Users
    • Groups
  6. Fai clic su Continua.
  7. Per creare un nuovo ruolo personalizzato, fai clic su Crea ruolo.
Assegnare il ruolo personalizzato a un utente

Utilizza la seguente procedura per assegnare il ruolo a un account utente, autorizzando l'integrazione a eseguire azioni per tuo conto:

  1. Per creare un nuovo utente, vai alla pagina Directory > Utenti.
  2. Aggiungi un nuovo utente associato al account di servizio.
  3. Apri le impostazioni per l'utente appena creato. Si apre la scheda dell'account utente.
  4. Fai clic su Ruoli e privilegi di amministratore.
  5. Fai clic su Modifica Modifica.
  6. Seleziona il ruolo personalizzato che hai creato.
  7. Per il ruolo selezionato, attiva l'opzione Assegnato.

Configura le credenziali di Workload Identity

Scegli questo metodo o il metodo della chiave JSON per autenticare l'integrazione. Workload Identity è l'approccio consigliato e più sicuro perché utilizza token di accesso temporanei di breve durata tramite la simulazione dell'identità dei account di servizio, riducendo al minimo i rischi di esposizione delle credenziali secret di lunga durata.

Identifica l'identità univoca dell'istanza

Per utilizzare Workload Identity, devi concedere alla tua istanza Google SecOps l'autorizzazione per impersonare il tuo account di servizio. Questo passaggio consente all'istanza di accedere in modo sicuro alle risorse Google Cloud.

  1. In Google SecOps, vai a Content Hub > Integrazioni di risposta.
  2. Seleziona l'integrazione che stai configurando e inserisci l'indirizzo email del account di servizio nel campo Workload Identity Email.
  3. Inserisci l'indirizzo email che vuoi che l'integrazione impersoni nel campo Delegated Email.
  4. Fai clic su Salva > Verifica. Il test dovrebbe non riuscire.
  5. Fai clic su close_small a destra di Test e cerca nel messaggio di errore l'email dell'identità che inizia con gke-init-python@... o soar-python@....

  6. Copia questo indirizzo email univoco.

Autorizza l'identità dell'istanza in Google Cloud

Dopo aver recuperato l'identità univoca per la tua istanza di Google SecOps, devi autorizzarla ad accedere alle tue risorse Google Cloud . Questo passaggio abilita la simulazione dell'identità dei account di servizio, consentendo alla piattaforma di generare token di breve durata e di agire per tuo conto senza la necessità di chiavi statiche.

  1. Nella console Google Cloud , vai a IAM e amministrazione > Account di servizio.

    Vai a Service account

  2. Seleziona il account di servizio di destinazione e vai a Autorizzazioni > Concedi l'accesso.

  3. Incolla l'indirizzo email univoco nel campo Nuove entità e assegna il ruolo Creatore token account di servizio (roles/iam.serviceAccountTokenCreator).

Parametri di integrazione

L'integrazione di Cloud Identity richiede i seguenti parametri:

Parametro Descrizione
Service Account JSON File Content

Facoltativo.

Il contenuto del file JSON della chiave del account di servizio.

Puoi configurare questo parametro o Email Workload Identity. Per utilizzare questo metodo, incolla l'intera stringa JSON dal file della chiave scaricato durante la creazione del account di servizio.

Workload Identity Email

Facoltativo.

L'indirizzo email client del tuo account di servizio.

Puoi configurare questo parametro o Contenuto del file JSON dell'account di servizio.

Per utilizzare questo metodo per la simulazione dell'identità dei account di servizio, devi concedere il ruolo Creatore token service account all'identità dell'istanza Google SecOps sul account di servizio.

Delegated Email

Obbligatorio.

L'indirizzo email utilizzato dall'integrazione per eseguire azioni.

Assicurati che questo account disponga delle autorizzazioni delegate appropriate all'interno del tuo ambiente per eseguire le attività di integrazione richieste.

Verify SSL

Facoltativo.

Se selezionata, l'integrazione convalida il certificato SSL durante la connessione al server Cloud Identity.

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.

Dindin

Utilizza l'azione Ping per testare la connettività a Cloud Identity.

Questa azione non viene eseguita sulle entità Google SecOps.

Input azione

Non sono richiesti parametri di input per questa azione.

Output azione

L'azione Ping fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca richieste Non disponibile
Link alla bacheca casi Non disponibile
Tabella della bacheca casi Non disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Non disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Messaggi di output

L'azione Ping può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully connected to the Cloud Identity server with the provided connection parameters!

L'azione è andata a buon fine.
Failed to connect to the Cloud Identity server! Error is ERROR_REASON

L'azione non è andata a buon fine.

Controlla la connessione al server, i parametri di input o le credenziali.

Risultato dello script

La tabella seguente elenca il valore per l'output del risultato dello script quando utilizzi l'azione Ping:

Nome del risultato dello script Valore
is_success true o false

Aggiungi entità all'elenco di URL del rilevatore

Utilizza l'azione Aggiungi entità all'elenco URL del rilevatore per aggiungere entità all'elenco di rilevamento delle policy di Cloud Identity.

Questa azione viene eseguita sulle seguenti entità Google SecOps:

  • URL
  • Dominio

Input azione

L'azione Aggiungi entità all'elenco URL del rilevatore richiede i seguenti parametri:

Parametro Descrizione
Detector Policy ID

Obbligatorio.

L'identificatore univoco della policy del rilevatore da aggiornare.

URL

Facoltativo.

Un elenco separato da virgole di URL da aggiungere all'elenco del rilevatore.

Domain

Facoltativo.

Un elenco di domini separati da virgole da aggiungere all'elenco dei rilevatori.

Output azione

L'azione Aggiungi entità all'elenco di URL del rilevatore fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca richieste Non disponibile
Link alla bacheca casi Non disponibile
Tabella della bacheca casi Non disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Risultato JSON

L'esempio seguente mostra l'output del risultato JSON ricevuto quando utilizzi l'azione Aggiungi entità all'elenco di URL del rilevatore:

{
 "type": "ADMIN",
 "customer": "customers/<CUSTOMER_ID>",
 "policyQuery": {
   "query": "entity.org_units.exists(org_unit, org_unit.org_unit_id == orgUnitId('<ORG_UNIT_ID>'))",
   "orgUnit": "orgUnits/<ORG_UNIT_ID>"
 },
 "setting": {
   "type": "settings/detector.url_list",
   "value": {
     "displayName": "test_url_list_detector",
     "description": "test_url_list_detector desc",
     "urlList": {
       "urls": [
         "[http://example.com](http://example.com)",
         "example.org",
         "bad_entity.com"
       ]
     }
   }
 }
}
Messaggi di output

L'azione Aggiungi entità all'elenco di URL del rilevatore può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully blocked the following URLs using Cloud Identity: ENTITY_IDENTIFIER

L'azione è andata a buon fine.
Error executing action "Add Entity To Detector URL List". Reason: ERROR_REASON

L'azione non è andata a buon fine.

Controlla la connessione al server, i parametri di input o le credenziali.

Risultato dello script

La tabella seguente elenca il valore dell'output del risultato dello script quando utilizzi l'azione Aggiungi entità all'elenco di URL del rilevatore:

Nome del risultato dello script Valore
is_success true o false

Crea policy

Utilizza l'azione Crea policy per creare una nuova voce della policy in Cloud Identity.

Questa azione non viene eseguita sulle entità Google SecOps.

Input azione

L'azione Create Policy richiede i seguenti parametri:

Parametro Descrizione
Policy Entry

Obbligatorio.

L'oggetto JSON che rappresenta la configurazione della voce della policy da aggiungere.

Esempi di configurazioni delle policy

Le seguenti configurazioni di esempio mostrano come strutturare il parametro Policy Entry:

Esempio 1: rilevatore di elenchi di URL

{
  "type": "ADMIN",
  "customer": "customers/<CUSTOMER_ID>",
  "policyQuery": {
    "orgUnit": "orgUnits/<ORG_UNIT_ID>",
    "sortOrder": 1
  },
  "setting": {
    "type": "settings/detector.url_list",
    "value": {
      "displayName": "BlockUrlDetector",
      "description": "Blocked urls for security reasons",
      "urlList": {
        "urls": [
          "www.medium.com",
          "medium.com",
          "wikipedia.org"
        ]
      }
    }
  }
}

Esempio 2: regola DLP

{
  "type": "ADMIN",
  "customer": "customers/<CUSTOMER_ID>",
  "policyQuery": {
    "query": "entity.org_units.exists(org_unit, org_unit.org_unit_id == orgUnitId('<ORG_UNIT_ID>'))",
    "orgUnit": "orgUnits/<ORG_UNIT_ID>",
    "sortOrder": 1
  },
  "setting": {
    "type": "settings/rule.dlp",
    "value": {
      "display_name": "TestRule",
      "description": "GoogleSecOps URL Blocklist Rule. Keeps state of blocked URLs. Manual modification is not advised",
      "triggers": [
        "google.workspace.chrome.url.v1.navigation"
      ],
      "condition": {
        "contentCondition": "url.matches_url_list('policies/<DETECTOR_POLICY_ID>')"
      },
      "action": {
        "chromeAction": {
          "blockContent": {
            "actionParams": {
              "customEndUserMessage": {
                "unsafeHtmlMessageBody": "(EQ)🚫 BlockedAccess denied."
              }
            }
          }
        }
      },
      "state": "ACTIVE"
    }
  }
}

Output azione

L'azione Crea policy fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca richieste Non disponibile
Link alla bacheca casi Non disponibile
Tabella della bacheca casi Non disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Risultato JSON

L'esempio seguente mostra l'output del risultato JSON ricevuto quando utilizzi l'azione Crea policy:

{
  "type": "ADMIN",
  "customer": "customers/<CUSTOMER_ID>",
  "policyQuery": {
    "query": "entity.org_units.exists(org_unit, org_unit.org_unit_id == orgUnitId('<ORG_UNIT_ID>'))",
    "orgUnit": "orgUnits/<ORG_UNIT_ID>"
  },
  "setting": {
    "type": "settings/rule.dlp",
    "value": {
      "display_name": "test_create_rule",
      "triggers": [
        "google.workspace.chrome.file.v1.download"
      ],
      "state": "ACTIVE",
      "action": {
        "chromeAction": {
          "warnUser": {}
        }
      }
    }
  }
}
Messaggi di output

L'azione Crea policy può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully added a new policy in Cloud Identity.

L'azione è andata a buon fine.
Error executing action "Create Policy". Reason: ERROR_REASON

L'azione non è andata a buon fine.

Controlla la connessione al server, i parametri di input o le credenziali.

Risultato dello script

La tabella seguente elenca il valore per l'output del risultato dello script quando utilizzi l'azione Crea policy:

Nome del risultato dello script Valore
is_success true o false

Elenco criteri

Utilizza l'azione Elenca policy per recuperare un elenco delle policy esistenti da Cloud Identity.

Questa azione non viene eseguita sulle entità Google SecOps.

Input azione

L'azione Elenca policy richiede i seguenti parametri:

Parametro Descrizione
Organization Unit Name

Obbligatorio.

Il nome dell'unità organizzativa da cui elencare le policy.

Policy Type Filter

Facoltativo.

Il tipo di policy utilizzato per filtrare l'elenco. Valori possibili: Admin, System o Both.

Il valore predefinito è Both.

Settings Type Filter

Facoltativo.

Il pattern dell'espressione regolare utilizzato per filtrare le policy in base al tipo di impostazione. Questo filtro viene applicato direttamente alla richiesta API.

Settings Display Name Filter

Facoltativo.

Un elenco separato da virgole di nomi visualizzati utilizzati per filtrare le impostazioni della policy.

Max Results To Return

Facoltativo.

Il numero massimo di risultati da restituire per l'esecuzione dell'azione. Il valore predefinito è 50. Il valore massimo è 100.

Output azione

L'azione Elenca policy fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca richieste Non disponibile
Link alla bacheca casi Non disponibile
Tabella della bacheca casi Non disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Risultato JSON

L'esempio seguente mostra l'output del risultato JSON ricevuto quando si utilizza l'azione Elenca policy:

[
  {
    "name": "policies/123",
    "customer": "customers/123",
    "type": "ADMIN",
    "policy_query": {
      "query": "entity.org_units.exists(org_unit, org_unit.org_unit_id == orgUnitId('12345'))",
      "orgUnit": "orgUnits/12345",
      "sortOrder": 1
    },
    "setting": {
      "type": "settings/rule.dlp",
      "value": {
        "display_name": "Test DLP Rule"
      }
    }
  }
]
Messaggi di output

L'azione Elenca policy può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully listed policies based on the provided criteria in Cloud Identity.

No policies found based on the provided criteria in Cloud Identity.

L'azione è andata a buon fine.
Error executing action "List Policies". Reason: ERROR_REASON

L'azione non è andata a buon fine.

Controlla la connessione al server, i parametri di input o le credenziali.

Risultato dello script

La tabella seguente elenca il valore per l'output del risultato dello script quando utilizzi l'azione Elenca policy:

Nome del risultato dello script Valore
is_success true o false

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.