Integra Google Cloud IAM con Google SecOps

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

Casi d'uso

L'integrazione di Google Cloud IAM supporta i seguenti casi d'uso:

  • Gestione automatica del ciclo di vita degli account di servizio: crea, attiva o disattiva automaticamente gli account di servizio durante le procedure di onboarding e offboarding per garantire che l'accesso venga concesso solo quando necessario.

  • Risposta rapida agli incidenti di identità: elimina o disattiva immediatamente i ruoli e i service account compromessi durante un incidente di sicurezza per impedire l'accesso non autorizzato alle risorse cloud.

  • Governance e arricchimento delle identità: arricchisci le entità utente in Google SecOps con metadati dettagliati dell'account di servizio, ad esempio nomi visualizzati e ID progetto, per fornire agli analisti un contesto immediato durante le indagini.

  • Controllo e applicazione delle norme: recupera e controlla le norme di controllo dell'accesso per assicurarti che siano in linea con il principio del privilegio minimo e imposta programmaticamente nuove norme per correggere le modifiche non autorizzate.

  • Gestione controllo dell'accesso basato sui ruoli (RBAC): crea e gestisci ruoli IAM personalizzati con set di autorizzazioni specifici in tutta l'organizzazione per mantenere il controllo granulare sull'accesso all'ambiente cloud.

Prima di iniziare

Prima di configurare l'integrazione Google Cloud IAM in Google SecOps, completa i seguenti passaggi preliminari:

  1. Crea un ruolo IAM personalizzato: definisci un ruolo con le autorizzazioni specifiche richieste per gestire service account e ruoli.

  2. Crea un service account: crea l'identità che l'integrazione utilizza per eseguire azioni.

  3. Seleziona un metodo di autenticazione: scegli tra Workload Identity consigliato o una chiave JSON dell'account di servizio.

Creare e configurare un ruolo IAM personalizzato

Per mantenere il principio del privilegio minimo, completa i seguenti passaggi per creare un ruolo personalizzato contenente solo le autorizzazioni specifiche necessarie per questa integrazione:

  1. Nella console Google Cloud , vai a IAM e amministrazione > Ruoli.

  2. Fai clic su Crea ruolo.

  3. Fornisci un titolo, una descrizione e un ID.

  4. Imposta la Fase di avvio del ruolo su General Availability.

  5. Fai clic su Aggiungi autorizzazioni e aggiungi le seguenti autorizzazioni specifiche:

    • iam.serviceAccounts.list
    • iam.serviceAccounts.create
    • iam.serviceAccounts.get
    • iam.serviceAccounts.getIamPolicy
    • iam.serviceAccounts.setIamPolicy
    • iam.serviceAccounts.disable
    • iam.serviceAccounts.enable
    • iam.serviceAccounts.delete
    • iam.roles.list
    • iam.roles.get
    • iam.roles.create
    • iam.roles.delete
  6. Fai clic su Crea.

Crea un account di servizio

L'integrazione utilizza un account di servizio per autenticare ed eseguire azioni IAM all'interno del progetto.

Per creare un account di servizio, completa i seguenti passaggi:

  1. Nella console Google Cloud , vai a IAM e amministrazione > Service account.

  2. Fai clic su Crea account di servizio.

  3. Inserisci un nome e una descrizione, quindi fai clic su Crea e continua.

  4. Nella sezione Concedi a questo account di servizio l'accesso al progetto, assegna il ruolo personalizzato creato nel passaggio precedente a questo account di servizio. Fai clic su Fine.

Seleziona un metodo di autenticazione

Google SecOps supporta due percorsi di autenticazione per questa integrazione:

  • Opzione 1: Workload Identity (consigliato): questo metodo utilizza token di breve durata tramite la rappresentazione dell'account di servizio. È più sicuro perché elimina la necessità di chiavi JSON di lunga durata.

  • Opzione 2: chiave JSON del service account: questo metodo utilizza un file di chiavi statico. Utilizza questa opzione solo se non è disponibile unWorkload Identity nel tuo ambiente.

Eseguire l'autenticazione utilizzando un'Workload Identity (consigliato)

Per utilizzare unWorkload Identity, devi autorizzare la tua istanza Google SecOps a rappresentare l'account di servizio che hai creato.

  1. In Google SecOps, vai a Content Hub > Response Integrations.

  2. Seleziona l'integrazione Google Cloud IAM.

  3. Inserisci l'email del tuo account di servizio nel campo Email di Workload Identity.

  4. Fai clic su Salva e poi su Testa. Inizialmente è previsto che il test non vada a buon fine.

  5. Fai clic su close_small accanto al test non riuscito per visualizzare il messaggio di errore.

  6. Cerca l'indirizzo email univoco (nel formato gke-init-python@... o soar-python@...) che si trova quasi alla fine del messaggio di errore. Copia questo indirizzo.

Concedere le autorizzazioni di rappresentazione

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

  1. Nella console Google Cloud , vai a IAM e amministrazione > Service account.

  2. Seleziona il account di servizio che hai creato per questa integrazione.

  3. Vai alla scheda Autorizzazioni e fai clic su Concedi l'accesso.

  4. Incolla l'indirizzo email univoco che hai copiato nel campo Nuove entità.

  5. Assegna il ruolo Creatore token account di servizio (roles/iam.serviceAccountTokenCreator). Fai clic su Salva.

Esegui l'autenticazione usando una chiave JSON

Se l'utilizzo di un'Workload Identity non è disponibile nel tuo ambiente, puoi autenticare l'integrazione utilizzando una chiave JSON dell'account di servizio. Questo metodo si basa su un file secret statico di lunga durata per stabilire la connessione tra la piattaforma e le tue risorse Google Cloud .

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

  2. Vai alla scheda Chiavi.

  3. Fai clic su Aggiungi chiave > Crea nuova chiave.

  4. Seleziona JSON come tipo di chiave e fai clic su Crea. Il file viene scaricato sul computer.

  5. Copia l'intero contenuto del file JSON.

  6. Quando configuri questa integrazione nella piattaforma, incolla i contenuti nel campo Contenuto del file JSON dell'account di servizio.

Parametri di integrazione

L'integrazione Google Cloud IAM richiede i seguenti parametri:

Parametro Descrizione
API Root

Facoltativo.

L'URL di base dell'istanza Google Cloud IAM.

Il valore predefinito è https://iam.googleapis.com.

Account Type

Facoltativo.

Il tipo di account Google Cloud .

Questo valore corrisponde al parametro type nel file JSON di autenticazione.

Il valore predefinito è service_account.

Project ID

Facoltativo.

L'ID progetto dell'account Google Cloud .

Questo valore corrisponde al parametro project_id nel file JSON di autenticazione.

Quota Project ID

Facoltativo.

L'ID progetto utilizzato per la quota e la fatturazione quando si effettuano richieste API.

Private Key ID

Facoltativo.

L'ID della chiave privata dell'account Google Cloud .

Questo valore corrisponde al parametro private_key_id nel file JSON di autenticazione.

Private Key

Facoltativo.

La chiave privata dell'account Google Cloud .

Questo valore corrisponde al parametro private_key nel file JSON di autenticazione.

Client Email

Facoltativo.

L'email cliente dell'account Google Cloud .

Questo valore corrisponde al parametro client_email nel file JSON di autenticazione.

Client ID

Facoltativo.

L'ID client dell'account Google Cloud .

Questo valore corrisponde al parametro client_id nel file JSON di autenticazione.

Auth URI

Facoltativo.

L'URI di autenticazione per l'account Google Cloud .

Questo valore corrisponde al parametro auth_uri nel file JSON di autenticazione.

Il valore predefinito è https://accounts.google.com/o/oauth2/auth.

Token URI

Facoltativo.

L'URI del token per l'account Google Cloud .

Questo valore corrisponde al parametro token_uri nel file JSON di autenticazione.

Il valore predefinito è https://oauth2.googleapis.com/token.

Auth Provider X509 URL

Facoltativo.

L'URL del certificato X.509 del provider di autenticazione.

Questo valore corrisponde al parametro auth_provider_x509_cert_url nel file JSON di autenticazione.

Il valore predefinito è https://www.googleapis.com/oauth2/v1/certs.

Client X509 URL

Facoltativo.

L'URL del certificato X.509 del client.

Questo valore corrisponde al parametro client_x509_cert_url nel file JSON di autenticazione.

Organization ID

Facoltativo.

L'identificatore univoco della tua Google Cloud organizzazione.

Service Account Json File Content

Facoltativo.

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

Se viene fornito questo parametro, i singoli parametri di connessione (ad esempio Private Key ID e Private Key) vengono ignorati.

Workload Identity Email

Facoltativo.

L'indirizzo email associato al account di servizio Workload Identity.

Verify SSL

Facoltativo.

Se selezionata, l'integrazione convalida il certificato SSL quando si connette al servizio Google Cloud IAM.

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 Supportare più istanze.

Azioni

Per ulteriori informazioni sulle azioni, vedi Rispondere alle azioni in attesa dalla tua scrivania e Eseguire un'azione manuale.

Creazione ruolo

Crea un ruolo Identity and Access Management.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
ID ruolo Stringa N/D Specifica l'ID ruolo per il ruolo Identity and Access Management appena creato.
Definizione del ruolo Stringa N/D Specifica il documento della policy JSON da utilizzare come definizione del ruolo.

Run On

L'azione non viene eseguita sulle entità.

Esempio di JSON per la policy del ruolo

{
   "name": "projects/silver-shift-275007/roles/iam_test_role_api",
   "title": "iam_test_role_api",
   "description": "test role",
   "includedPermissions": [
       "storagetransfer.projects.getServiceAccount"
   ],
   "stage": "GA",
   "etag": "BwXBu1RHiPw="
}

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
   "name": "projects/[PROJECT_ID]/roles/[ROLE_NAME]",
   "title": "[ROLE_TITLE]",
   "description": "[ROLE_DESCRIPTION]",
   "includedPermissions": [
       "storagetransfer.projects.getServiceAccount"
   ],
   "stage": "GA",
   "etag": "[ETAG_VALUE]"
}
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se l'azione è stata eseguita correttamente (is_success=true)

    • Identity and Access Management <roleid> è stato creato correttamente.

  • Se l'ID ruolo fornito esiste già(is_success =false)

    • L'ID ruolo fornito <role_id> esiste già.

  • Se il JSON del ruolo fornito non è valido (is_success =false)

    • Il documento JSON di definizione del ruolo <role json> fornito non è valido.

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, SDK error, like wrong credentials, no connection to server, other: "Error executing action "Create Role". Motivo: {0}''.format(error.Stacktrace)

Generali

Crea il service account

Crea un service account Identity and Access Management.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
ID account di servizio Stringa Stringa Specifica l'ID del account di servizio da creare.
Nome visualizzato del service account Stringa Stringa No Specifica il nome visualizzato dell'account di servizio da creare.
Descrizione service account Stringa Stringa No Specifica la descrizione del account di servizio da creare.

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
   "name": "projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com",
   "projectId": "PROJECT_ID",
   "uniqueId": "UNIQUE_ID",
   "email": "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com",
   "displayName": "SERVICE_ACCOUNT_DISPLAY_NAME",
   "etag": "ETAG_VALUE",
   "description": "SERVICE_ACCOUNT_DESCRIPTION",
   "oauth2ClientId": "UNIQUE_ID"
}
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se l'azione è stata eseguita correttamente (is_success=true)

    • Google Cloud Il service account è stato creato correttamente <unique id>.
  • Se l'azione non è stata eseguita perché il account di servizio fornito esiste già(is_success =false)

    • Il account di servizio fornito <unique id> esiste già.

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

Se si verifica un errore irreversibile, un errore SDK, ad esempio credenziali errate, nessuna connessione al server o altro: "Errore durante l'esecuzione dell'azione "Crea account di servizio". Motivo: {0}''.format(error.Stacktrace)

Generali

Elimina ruolo

Elimina un ruolo Identity and Access Management.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
ID ruolo Stringa N/D Specifica l'ID ruolo per il ruolo Identity and Access Management appena creato.

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
   "name": "projects/[PROJECT_ID]/roles/[ROLE_NAME]",
   "title": "[ROLE_TITLE]",
   "description": "[ROLE_DESCRIPTION]",
   "includedPermissions": [
       "storagetransfer.projects.getServiceAccount"
   ],
   "stage": "GA",
   "etag": "[ETAG_VALUE]",
   "deleted": true
}
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se l'azione è stata eseguita correttamente (is_success=true)

    • Identity and Access Management <roleid> è stato eliminato.

  • If provided role_id not exists(is_success =false)

    • L'ID ruolo <role_id> fornito non esiste.

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, SDK error, like wrong credentials, no connection to server, other: "Error executing action "Delete Role". Motivo: {0}''.format(error.Stacktrace)

Generali

Elimina service account

Elimina account di servizio. L'azione prevede l'email del account di servizio Identity and Access Management come entità utente Google SecOps.

Run On

Questa azione viene eseguita sull'entità Utente.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • se l'operazione va a buon fine per almeno una delle entità fornite: "Eliminazione riuscita dei seguenti service account: {0}".format([entity.Identifier]).

  • Se non riesci a eliminare tutte le entità fornite: "Nessun service account è stato eliminato."

  • Se non riesci a trovare dati in Identity and Access Management per eliminare entità specifiche: "L'azione non è riuscita a trovare una corrispondenza in Identity and Access Management per le entità fornite: {0}".format([entity.identifier])

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, SDK error, like wrong credentials, no connection to server, other: "Error executing action "Delete Service Account". Motivo: {0}''.format(error.Stacktrace)

Generali

Disabilita service account

Disabilita account di servizio. L'azione prevede l'email del account di servizio Identity and Access Management come entità utente Google SecOps.

Run On

Questa azione viene eseguita sull'entità Utente.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • in caso di esito positivo, almeno una delle entità fornite: "Disattivazione dei seguenti service account riuscita: {0}".format([entity.Identifier]).

  • Se non riesci a disattivare tutte le entità fornite: "Nessun service account è stato disattivato."

  • Se non riesci a trovare i dati in Google Cloud Identity and Access Management per disattivare entità specifiche: "L'azione non è riuscita a trovare una corrispondenza in Google Cloud Identity and Access Management per le entità fornite: {0}".format([entity.identifier])

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, SDK error, like wrong credentials, no connection to server, other: "Error executing action "Disable Service Account". Motivo: {0}''.format(error.Stacktrace)

Generali

Abilita service account

Abilita account di servizio. L'azione prevede l'email del account di servizio Identity and Access Management come entità utente Google SecOps.

Run On

Questa azione viene eseguita sull'entità Utente.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • in caso di esito positivo almeno una delle entità fornite: "Successfully enabled the following service accounts: {0}".format([entity.Identifier]).

  • Se non riesci ad abilitare tutte le entità fornite: "Nessun service account è stato abilitato."

  • Se non riesci a trovare i dati in Identity and Access Management per attivare entità specifiche: "Action was not able to find a match in Identity and Access Management for the provided entities: {0}".format([entity.identifier])

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, SDK error, like wrong credentials, no connection to server, other: "Error executing action "Enable Service Account". Motivo: {0}''.format(error.Stacktrace)

Generali

Arricchisci entità

Arricchisci le entità utente di Google SecOps con le informazioni sugli account di servizio di Identity and Access Management. L'azione prevede l'email del account di servizio Identity and Access Management come entità utente Google SecOps.

Run On

Questa azione viene eseguita sull'entità Utente.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
  "name": "projects/[PROJECT_ID]/serviceAccounts/[SERVICE_ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com",
  "projectId": "[PROJECT_ID]",
  "uniqueId": "[UNIQUE_ID]",
  "email": "[SERVICE_ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com",
  "displayName": "[DISPLAY_NAME]",
  "etag": "[ETAG]",
  "description": "[DESCRIPTION]",
  "oauth2ClientId": "[UNIQUE_ID]"
}
Arricchimento delle entità
Nome del campo di arricchimento Logica: quando applicare
Google_IAM_name
Google_IAM_project_id ..
Google_IAM_unique_id
Google_IAM_email
Google_IAM_display_name
Google_IAM_description
Google_IAM_oauth2_client_id
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se l'operazione va a buon fine e almeno una delle entità fornite è stata arricchita: "Successfully enriched entities: {0}".format([entity.Identifier]).
  • Se non riesci ad arricchire tutte le entità fornite: "Nessuna entità è stata arricchita."
  • Se non riesci a trovare dati in Identity and Access Management per arricchire entità specifiche: "Action was not able to find a match in Identity and Access Management to enrich provided entities: {0}".format([entity.identifier])

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, SDK error, like wrong credentials, no connection to server, other: "Error executing action "Enrich Entities". Motivo: {0}''.format(error.Stacktrace)

Generali
Tabella (arricchimento)

Nome tabella: Tabella di arricchimento {entity}

Colonne:chiave, valore

Entità

Recupero criterio IAM per service account

Recupera la policy di controllo dell'accesso per il account di servizio. L'azione prevede l'email del account di servizio Identity and Access Management come entità utente Google SecOps. Tieni presente che la norma potrebbe essere vuota se non è assegnata alcuna norma alaccount di serviziot.

Run On

Questa azione viene eseguita sull'entità Utente.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
   "version": 1,
   "etag": "[ETAG_VALUE]",
   "bindings": [
       {
           "role": "roles/iam.securityReviewer",
           "members": [
               "user:[USER_EMAIL]"
           ]
       }
   ]
}
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se l'azione è stata eseguita correttamente (is_success=true)

    • "Recupero riuscito del criterio di Identity and Access Management per i seguenti Google Cloud service account: <email id1, email id 2...>
  • Se l'azione non ha trovato informazioni per l'entità (ad esempio, non esistente nell'email di Google Identity and Access Management fornita):

    • L'azione non è riuscita a recuperare il criterio di gestione di Identity and Access Management per i seguenti service account: <email id1, email id2 ..> Google Cloud
  • Se non riesci a trovare la policy Identity and Access Management per tutte le entità fornite: "Non è stata trovata alcuna policy Identity and Access Management per le entità fornite."

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, SDK error, like wrong credentials, no connection to server, other: "Error executing action "Get Service Account IAM Policy". Motivo: {0}''.format(error.Stacktrace)

Generali

Elenco dei ruoli

Elenca i ruoli Identity and Access Management in base ai criteri di ricerca specificati. Tieni presente che l'azione non funziona sulle entità Google SecOps.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
Visualizza DDL Di base No Specifica la visualizzazione da utilizzare per restituire le informazioni sui ruoli.
Numero massimo di righe da restituire Numero intero 50 No Specifica quanti ruoli deve restituire l'azione.
Elenca solo i ruoli personalizzati del progetto? Casella di controllo Deselezionata No Se l'azione è abilitata, verranno restituiti solo i ruoli personalizzati definiti per l'ID progetto corrente.
Mostra eliminati Casella di controllo Deselezionata No Se abilitata, l'azione restituirà anche i ruoli eliminati.

Run On

L'azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
   "roles": [
       {
           "name": "roles/accessapproval.approver",
           "title": "Access Approval Approver",
           "description": "Ability to view or act on access approval requests and view configuration",
           "stage": "BETA",
           "etag": "[ETAG_VALUE]"
       },
       {
           "name": "roles/accessapproval.configEditor",
           "title": "Access Approval Config Editor",
           "description": "Ability update the Access Approval configuration",
           "stage": "BETA",
           "etag": "[ETAG_VALUE]"
       }
   ]
}
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se i ruoli sono stati elencati correttamente(is_success = true): "Recupero dei ruoli Identity and Access Management riuscito."

  • Se non sono disponibili valori(is_success = false): "Non sono stati restituiti ruoli per i parametri di input specificati."

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, invalid zone, SDK error, like wrong credentials, no connection to server, other: "Error executing action "List Roles". Motivo: {0}''.format(error.Stacktrace)

Generali
Tabella

Nome tabella: Google Cloud Ruoli IAM

Colonne della tabella:

Nome ruolo

Titolo del ruolo

Descrizione ruolo

Fase del ruolo

ETag del ruolo

Autorizzazioni dei ruoli

Generali

Elenco account di servizio

Elenca i service account del servizio Identity and Access Management in base ai criteri di ricerca specificati. Tieni presente che l'azione non funziona sulle entità Google SecOps.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
Nome visualizzato del service account Stringa N/D No Specifica il nome visualizzato del account di servizio da restituire. Il parametro accetta più valori come stringa separata da virgole.
Email del service account Stringa N/D No Specifica l'email del account di servizio da restituire. Il parametro accetta più valori come stringa separata da virgole.
Numero massimo di righe da restituire Numero intero 50 No Specifica quanti ruoli deve restituire l'azione.

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
  "accounts": [
    {
      "name": "projects/[PROJECT_ID]/serviceAccounts/[SERVICE_ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com",
      "projectId": "[PROJECT_ID]",
      "uniqueId": "[UNIQUE_ID]",
      "email": "[SERVICE_ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com",
      "displayName": "[DISPLAY_NAME]",
      "etag": "[ETAG_VALUE]",
      "description": "[SERVICE_ACCOUNT_DESCRIPTION]",
      "oauth2ClientId": "[UNIQUE_ID]"
    }
  ]
}
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se i service account sono stati elencati correttamente (is_success = true):
    "Recupero di Google Cloud service account riuscito."
  • Se non sono disponibili valori(is_success = false): "Non sono stati restituiti service account per i parametri di input specificati."

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, invalid zone, SDK error, like wrong credentials, no connection to server, other: "Error executing action "List Service Accounts". Motivo: {0}''.format(error.Stacktrace)

Generali
Tabella

Nome tabella: Google Cloud Service account

Colonne della tabella:

Nome account di servizio

ID univoco service account

Email del service account

Nome visualizzato del service account

Descrizione service account

ID client OAuth2 del service account

Generali

Dindin

Testa la connettività al servizio Identity and Access Management con i parametri forniti nella pagina di configurazione dell'integrazione nella scheda Google Security Operations Marketplace.

Parametri

N/D

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se l'operazione va a buon fine: "Connessione al servizio Identity and Access Management riuscita con i parametri di connessione forniti."

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

  • Se si verifica un errore critico, ad esempio credenziali errate o perdita di connettività: "Impossibile connettersi al servizio Identity and Access Management. Error is {0}".format(exception.stacktrace)
Generale

Ruota le chiavi del service account

Utilizza l'azione Ruota le chiavi del service account per ruotare le chiavi gestite dall'utente associate a unaccount di serviziot. Durante la rotazione, tutte le chiavi esistenti vengono eliminate e ne viene creata una nuova.

Questa azione viene eseguita sulle seguenti entità Google SecOps:

  • Deployment

  • Username

Input azione

L'azione Ruota le chiavi del service account richiede i seguenti parametri:

Parametro Descrizione
Service Account

Facoltativo.

Un elenco separato da virgole di service account per cui ruotare le chiavi.

Questo parametro funziona insieme alle entità. Se fornita, l'azione ruota le chiavi per questi account specifici, oltre a qualsiasi entità account di servizio identificata nell'ambito dell'azione.

Output dell'azione

L'azione Ruota le chiavi del service account fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi 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 Ruota le chiavi del service account:

[
    {
       "Entity": "123",
       "EntityResult": {
               "name": "projects/example-project/serviceAccounts/sample-sa@example-project.iam.gserviceaccount.com/keys/b333bbda7826af991a4d4cc4e3f83325103580ca",
               "validAfterTime": "2023-09-12T11:02:31Z",
               "validBeforeTime": "9999-12-31T23:59:59Z",
               "keyAlgorithm": "KEY_ALG_RSA_2048",
               "keyOrigin": "GOOGLE_PROVIDED",
               "keyType": "USER_MANAGED"
        }
    },
    {
       "Entity": "1234",
       "EntityResult": {
               "name": "projects/example-project/serviceAccounts/sample-sa@example-project.iam.gserviceaccount.com/keys/b333bbda7826af991a4d4cc4e3f83325103580ca",
               "validAfterTime": "2023-09-12T11:02:31Z",
               "validBeforeTime": "9999-12-31T23:59:59Z",
               "keyAlgorithm": "KEY_ALG_RSA_2048",
               "keyOrigin": "GOOGLE_PROVIDED",
               "keyType": "USER_MANAGED"
        }
    }
]
Messaggi di output

L'azione Ruota le chiavi del service account può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully rotated keys for service account SERVICE_ACCOUNT_EMAIL in Google Cloud IAM.

The following service accounts were not found in Google Cloud IAM: SERVICE_ACCOUNT_KEYS.

None of the provided service accounts were found in Google Cloud IAM.

L'azione è riuscita.
Error executing action "Rotate Service Account Keys". Reason: ERROR_REASON

L'azione non è riuscita.

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 Ruota le chiavi dell'account di servizio:

Nome del risultato dello script Valore
is_success true o false

Impostazione criterio IAM per account di servizio

Imposta la policy di controllo dell'accesso sul account di servizio specificato. L'azione prevede l'email delaccount di serviziot Identity and Access Management come entità dell'account Google SecOps. Tieni presente che la policy fornita nell'azione sostituisce qualsiasi policy esistente.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
Norme Stringa N/D Specifica il documento della policy JSON da impostare per account di servizio.

Run On

Questa azione viene eseguita sull'entità Account.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
   "version": 1,
   "etag": "[ETAG_VALUE]",
   "bindings": [
       {
           "role": "roles/iam.securityReviewer",
           "members": [
               "user:[USER_EMAIL]"
           ]
       }
   ]
}
Bacheca casi
Tipo di risultato Valore/Descrizione Tipo
Messaggio di output*

L'azione non deve non riuscire né interrompere l'esecuzione di un playbook:

  • Se alcune hanno esito positivo (is_success=True):

    • Policy Identity and Access Management impostata correttamente per i seguenti Google Cloud service account: <email id1, ...>

  • Se alcuni non sono andati a buon fine:

    • L'azione non è riuscita a impostare il criterio di gestione di Identity and Access Management per i seguenti service account: <email id1, ....> Google Cloud

  • Se tutti i tentativi non sono andati a buon fine:

    • Non sono stati impostati criteri Identity and Access Management per il service account.

  • Se il JSON della policy fornito non è valido (is_success =false)

    • Il documento JSON dei criteri fornito <policy> non è valido.

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:

if fatal error, SDK error, like wrong credentials, no connection to server, other: "Error executing action "Set Service Account IAM Policy". Motivo: {0}''.format(error.Stacktrace)

Generali

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