Attivazione delle notifiche via email e chat in tempo reale

Panoramica

Security Command Center fornisce notifiche in tempo reale dei risultati nella consoleGoogle Cloud . Questa guida descrive come utilizzare i servizi Google Cloud e le API di terze parti per estendere questa funzionalità e ricevere notifiche quasi in tempo reale nelle app email e di chat. Quando completi la guida, ricevi avvisi relativi a nuove scoperte nei servizi di terze parti configurati senza accedere alla console Google Cloud , consentendo una valutazione più rapida di vulnerabilità e minacce. Scopri di più sui diversi tipi di vulnerabilità e minacce in Security Command Center.

Topologia

In questa guida, crei la configurazione illustrata nel diagramma seguente.

Flusso di lavoro delle notifiche quasi in tempo reale (fai clic per ingrandire)
Flusso di lavoro delle notifiche quasi in tempo reale per Security Command Center (fai clic per ingrandire)

Obiettivi

In questa guida imparerai a:

  1. Configurare un argomento Pub/Sub.
  2. Configura Slack, WebEx Teams e Twilio SendGrid Mail.
  3. Scrivi codice nelle funzioni Cloud Run.
  4. Configura le funzioni Pub/Sub e Cloud Run per inviare notifiche a Slack, WebEx Teams o Twilio Sendgrid Mail ogni volta che un nuovo risultato di gravità alta o critica viene scritto in Security Command Center.
  5. Risolvi i problemi relativi alle notifiche.

Costi

Questo tutorial utilizza componenti fatturabili di Google Cloud, tra cui:

  • Pub/Sub
  • Cloud Run Functions
  • Cloud Build

Utilizza il calcolatore prezzi per generare una stima dei costi in base all'utilizzo previsto.

Prima di iniziare

Per completare questa guida, devi disporre dei seguenti ruoli IAM (Identity and Access Management):

  • Amministratore dell'organizzazione (roles/resourcemanager.organizationAdmin)
  • Amministratore Centro sicurezza (roles/securitycenter.admin)
  • Amministratore sicurezza (roles/iam.securityAdmin)
  • Un ruolo con l'autorizzazione serviceusage.services.use, ad esempio Proprietario (roles/owner), Editor (roles/editor) o un ruolo personalizzato
  • Crea service account (roles/iam.serviceAccountCreator)
  • Editor Pub/Sub (roles/pubsub.editor)
  • Amministratore account di fatturazione (roles/billing.admin)

I ruoli IAM per Security Command Center possono essere concessi a livello di organizzazione, cartella o progetto. La possibilità di visualizzare, modificare, creare o aggiornare risultati, asset e origini di sicurezza dipende dal livello per cui ti è stato concesso l'accesso. Per scoprire di più sui ruoli di Security Command Center, consulta la sezione Controllo dell'accesso.

Configurazione di un progetto

Completa i seguenti passaggi per creare o selezionare un progetto.

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Build API.

    Enable the API

  5. Install the Google Cloud CLI.

  6. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identità federata.

  7. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  8. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  9. Make sure that billing is enabled for your Google Cloud project.

  10. Enable the Cloud Build API.

    Enable the API

  11. Install the Google Cloud CLI.

  12. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identità federata.

  13. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  14. Tempo stimato: la configurazione e il test delle notifiche per un singolo servizio richiedono circa un'ora.

    Configurazione di un argomento Pub/Sub

    Pub/Sub è un servizio di messaggistica in tempo reale che consente di inviare e ricevere messaggi tra applicazioni indipendenti. Scopri di più su Pub/Sub.

    In questa sezione, configuri Security Command Center in modo che pubblichi i risultati in un argomento Pub/Sub.

    Per configurare e sottoscrivere un argomento Pub/Sub:

    1. Specifica il tuo progetto Google Cloud in una variabile di ambiente.

      export PROJECT_ID=PROJECT_ID
      

      Sostituisci PROJECT_ID con l'ID progetto.

    2. Specifica la tua Google Cloud organizzazione in una variabile di ambiente.

      export ORG_ID=ORG_ID
      

      Sostituisci ORG_ID con l'ID organizzazione.

    3. Imposta l'ID progetto per i comandi gcloud.

      gcloud config set project PROJECT_ID
      
    4. Crea l'argomento Pub/Sub in cui vengono pubblicate le notifiche.

      gcloud pubsub topics create scc-critical-and-high-severity-findings-topic
      
    5. Specifica l'argomento in una variabile di ambiente.

      export TOPIC=projects/$PROJECT_ID/topics/scc-critical-and-high-severity-findings-topic
      
    6. Crea l'abbonamento che notifica alle funzioni Cloud Run di inviare un'email o un messaggio di chat quando i messaggi vengono pubblicati nell'argomento.

      gcloud pubsub subscriptions create scc-critical-and-high-severity-findings-sub \
        --topic scc-critical-and-high-severity-findings-topic
      
    7. Configura Security Command Center per pubblicare notifiche nell'argomento. È possibile utilizzare qualsiasi filtro compatibile con l'API ListFindings.

      Il seguente filtro pubblica le notifiche per i risultati attivi con gravità alta e critica nella posizione global. Scopri di più sul filtraggio dei risultati.

       gcloud scc notifications create scc-critical-high-severity \
           --pubsub-topic=$TOPIC \
           --organization=$ORG_ID \
           --location=global \
           --filter "(severity=\"HIGH\" OR severity=\"CRITICAL\") AND state=\"ACTIVE\""
      

    Successivamente, crea o configura la tua app di email o chat per ricevere notifiche da Pub/Sub.

    Configurare un'app di messaggistica

    Questa sezione descrive come utilizzare Pub/Sub e le funzioni Cloud Run o Cloud Run (1ª generazione) per attivare notifiche quasi in tempo reale per l'API Twilio Sendgrid Mail, Slack e WebEx Teams.

    Twilio Sendgrid Mail

    Per attivare le notifiche via email:

    • Crea un account API Twilio Sendgrid Mail e ottieni una chiave API.
    • Crea ed esegui il deployment di una funzione Cloud Run che invia email quando vengono ricevute notifiche da Pub/Sub.

    Crea un account API Mail di Twilio Sendgrid

    In questa sezione, crei un account API Twilio Sendgrid Mail e ottieni una chiave API. Se hai già abilitato SendGrid, vai a Ottenere una chiave API Mail di Twilio Sendgrid e assicurati che la chiave API esistente disponga delle autorizzazioni adeguate.

    1. Vai alla Google Cloud console.
      Vai alla console Google Cloud
    2. Nella casella di ricerca nella parte superiore della pagina, cerca SendGrid Email API. Ricerca SendGrid
    3. Nella pagina successiva, seleziona il piano più adatto alle tue esigenze.

      Se necessario, procedi selezionando un progetto da associare a SendGrid. Potresti aver bisogno di autorizzazioni adeguate per gestire gli acquisti per l'account di fatturazione associato al progetto.

    4. Leggi i termini e, se li accetti, fai clic su Iscriviti.

    5. Attiva il servizio SendGrid facendo clic su Registrati con SendGrid.

    6. Nella schermata di registrazione, inserisci un nome utente, una password e un indirizzo email. Accetta i termini di servizio e fai clic su Continua.

    7. Nella finestra di dialogo di conferma, fai clic su Torna a Google.

    Ottenere una chiave API Mail di Twilio Sendgrid

    1. Fai clic su Gestisci chiavi API sul sito web di SendGrid. Si apre una nuova scheda per il sito web di SendGrid. Gestisci chiavi API

    2. Compila il modulo o accedi, se richiesto. Quindi, fai clic su Inizia.

    3. Nel riquadro del menu, espandi Impostazioni e fai clic su Chiavi API.

    4. Nella schermata successiva, fai clic sul pulsante Crea chiave API.

    5. In Nome chiave API, inserisci "SCC Email Notifications", seleziona Accesso completo e poi fai clic sul pulsante Crea e visualizza.

      Nome chiave API

    6. Viene visualizzata la chiave API. Registra il valore. Ti servirà nella sezione successiva.

    7. Fai clic su Fine. Viene visualizzato l'insieme corrente di chiavi API. Chiudi la scheda e torna alla console Google Cloud .

    Successivamente, esegui il deployment di una funzione Cloud Run per inviare notifiche a un indirizzo email.

    Crea la funzione Cloud Run SendGrid

    In questa sezione, esegui il deployment di una funzione che invia notifiche al tuo account email.

    1. Vai a Cloud Run Functions.
      Vai a Cloud Run Functions

    2. Assicurati di utilizzare lo stesso PROJECT_ID che hai utilizzato per creare l'argomento Pub/Sub.

    3. Fai clic su Crea funzione. Funzione SendGrid

    4. Imposta Nome funzione su send-high-and-critical-finding-email-notification e Tipo di trigger su Pub/Sub.

    5. Seleziona l'argomento Pub/Sub che hai creato in Configurazione di un argomento Pub/Sub.

    6. Fai clic su Salva e poi su Avanti.

    7. Nella pagina successiva, imposta Runtime su Python 3.8. L'esempio di codice in questa sezione è scritto in Python, ma puoi utilizzare qualsiasi linguaggio supportato dalle funzioni Cloud Run.

    8. Nell'elenco dei file, fai clic su requirements.txt e aggiungi quanto segue al campo di testo: sendgrid.

      Requisiti di SendGrid

    9. Fai clic su main.py e sostituisci i contenuti con il seguente snippet di codice.

      import base64
      import json
      from sendgrid import SendGridAPIClient
      from sendgrid.helpers.mail import Mail
      
      def send_email_notification(event, context):
          """Triggered from a message on a Pub/Sub topic.
          Args:
               event (dict): Event payload.
               context (google.cloud.functions.Context): Metadata for the event.
          """
          pubsub_message = base64.b64decode(event['data']).decode('utf-8')
          message_json = json.loads(pubsub_message)
          message = Mail(
              from_email='noreply@yourdomain.com',
              to_emails='$EMAIL_ADDRESS',
              subject='New High or Critical Severity Finding Detected',
              html_content='A new high or critical severity finding was
              detected: ' + ''.join(message_json['finding']['category']))
          try:
              sg = SendGridAPIClient('$SENDGRID_EMAIL_API_KEY')
              response = sg.send(message)
              print(response.status_code)
              print(response.body)
              print(response.headers)
          except Exception as e:
              print(e)
      
          print(pubsub_message)
      
    10. Sostituisci quanto segue:

      • Modifica noreply@yourdomain.com con l'indirizzo email da cui vuoi che provengano i messaggi.
      • Modifica$EMAIL_ADDRESS con l'indirizzo email del destinatario previsto. Nota:questa variabile può contenere un array di indirizzi email (['user1@yourdomain.com', 'user2@yourdomain.com']) oppure puoi scrivere codice personalizzato per creare una variabile dinamica impostata, ad esempio, su un elenco a rotazione di persone di turno.
      • Modifica $SENDGRID_EMAIL_API_KEY con la chiave API che hai già o con quella che hai creato nella sezione precedente.
    11. Vai al campo Entry point e inserisci il nome della funzione nello snippet di codice (send_email_notification, in questo esempio).

    12. Fai clic su Esegui il deployment. Viene visualizzata di nuovo la lista delle funzioni Cloud Run in cui dovresti vedere la tua nuova funzione. Quando accanto al nome della funzione viene visualizzato un segno di spunta verde, il deployment è stato eseguito correttamente. L'operazione potrebbe richiedere alcuni minuti. Deployment della funzione SendGrid

    Slack

    Per inviare notifiche a un canale Slack:

    • Crea una nuova app Slack con privilegi sufficienti per pubblicare messaggi su un canale Slack pubblico.
    • Crea e implementa una funzione Cloud Run che pubblica messaggi di chat su Slack quando vengono ricevute notifiche da Pub/Sub.

    Crea una nuova app Slack

    In questa sezione, crea una nuova app Slack per ricevere le notifiche.

    1. Vai a App API Slack. La pagina si apre in una nuova scheda.
    2. Accedi o crea un account.

    3. Seleziona Crea un'app.

    4. Imposta Nome app su "SCC Finding Notifier".

    5. Seleziona l'area di lavoro Slack di sviluppo in cui vuoi che il bot Slack pubblichi i messaggi, quindi fai clic su Crea app.

    6. Nel pannello di navigazione, seleziona OAuth e autorizzazioni.

      Autorizzazioni di Slack

    7. Vai alla sezione Ambiti. Gli ambiti rientrano in due categorie:

      • Ambiti del token bot
      • User Token Scopes
    8. Per questo esercizio, non devi aggiungere un ambito del token utente. In Ambiti token bot, fai clic su Aggiungi un ambito OAuth e inserisci:

      • chat:write
      • chat:write.public

        Ambiti di Slack
    9. Scorri fino alla parte superiore della pagina OAuth e autorizzazioni e fai clic su Installa app in Workspace.

    10. Nella finestra di dialogo di conferma, fai clic su Consenti.

    11. Copia il token di accesso OAuth utente bot da utilizzare nella funzione Cloud.

    Successivamente, esegui il deployment di una funzione Cloud Run per inviare notifiche a un gruppo Slack.

    Crea la funzione Cloud Run di Slack

    In questa sezione, esegui il deployment di una funzione per inviare notifiche al tuo account Slack.

    1. Vai a Cloud Run Functions.
      Vai a Cloud Run Functions

    2. Assicurati di utilizzare lo stesso PROJECT_ID in cui è stato creato l'argomento Pub/Sub.

    3. Fai clic su Crea funzione. Funzione SendGrid

    4. Imposta Nome funzione su slack-chat-high-and-critical-findings e Tipo di trigger su Pub/Sub.

    5. Seleziona l'argomento Pub/Sub che hai creato in Configurazione di un argomento Pub/Sub.

    6. Fai clic su Salva e poi su Avanti.

    7. Nella pagina successiva, imposta Runtime su Python 3.8. L'esempio di codice in questa sezione è scritto in Python, ma puoi utilizzare qualsiasi linguaggio supportato dalle funzioni Cloud Run.

    8. Vai all'elenco dei file. Fai clic su requirements.txt e aggiungi quanto segue: requests. Requisiti di Slack

    9. Fai clic su main.py e sostituisci i contenuti con il seguente snippet di codice.

      import base64
      import json
      import requests
      
      TOKEN = "BOT_ACCESS_TOKEN"
      
      def send_slack_chat_notification(event, context):
          pubsub_message = base64.b64decode(event['data']).decode('utf-8')
          message_json = json.loads(pubsub_message)
          finding = message_json['finding']
      
          requests.post("https://slack.com/api/chat.postMessage", data={
              "token": TOKEN,
              "channel": "#general",
              "text": f"A high severity finding {finding['category']} was detected!"
          })
      
    10. Sostituisci BOT_ACCESS_TOKEN con il token di accesso OAuth dell'utente bot che hai creato con l'app Slack.

    11. Vai al campo Entry point e inserisci il nome della funzione nello snippet di codice (send_slack_chat_notification, in questo esempio).

    12. Fai clic su Esegui il deployment. Viene visualizzata di nuovo la lista delle funzioni Cloud Run in cui dovresti vedere la tua nuova funzione. Quando accanto al nome della funzione compare un segno di spunta verde, il deployment è stato eseguito correttamente. La procedura potrebbe richiedere un paio di minuti. I messaggi vengono visualizzati nel canale Slack #general. Funzione Slack

    WebEx

    Per inviare notifiche al tuo account WebEx Teams:

    • Crea un nuovo account di servizio con le autorizzazioni per recuperare gli asset da Security Command Center.
    • Crea un nuovo bot WebEx con privilegi sufficienti per pubblicare messaggi nel tuo spazio di lavoro.
    • Crea ed esegui il deployment di una funzione Cloud Run che esegue la sottoscrizione a Pub/Sub e pubblica messaggi di chat su WebEx quando vengono ricevute notifiche dall'argomento Pub/Sub.

    Crea un account di servizio

    Per impostazione predefinita, le funzioni Cloud Run non possono recuperare asset da Security Command Center. In questa sezione, esegui il provisioning di un account di servizio che consente alle funzioni Cloud Run di recuperare gli asset associati ai risultati.

    1. Assegna un nome al account di servizio e specificalo come variabile di ambiente.

      export SERVICE_ACCOUNT=ACCOUNT_NAME
      
    2. Crea il account di servizio per il tuo progetto.

      gcloud iam service-accounts create $SERVICE_ACCOUNT \
       --display-name "Service Account for SCC Finding Notifier WebEx Cloud Function" \
       --project $PROJECT_ID
      
    3. Concedi al account di servizio il ruolo securitycenter.assetsViewer a livello di organizzazione.

       gcloud organizations add-iam-policy-binding $ORG_ID \
         --member="serviceAccount:$SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com" \
         --role='roles/securitycenter.assetsViewer'
      

    Creare un bot Webex

    In questa sezione, creerai un bot WebEx che pubblica messaggi nel tuo spazio di lavoro.

    1. Accedi al tuo account WebEx Teams e vai alla pagina Nuovo bot.

    2. Imposta Nome bot su "SCC Finding Notifier".

    3. Seleziona un nome utente bot descrittivo ma univoco (your-name-scc-finding-notifier-demo).

    4. Nella sezione Icona, seleziona Predefinita 1.

    5. Imposta Descrizione su "Un bot che invia una notifica al team quando viene pubblicato un nuovo risultato di gravità alta o critica in Security Command Center".

    6. Fai clic su Aggiungi bot.

    7. Nella pagina di conferma, copia il token di accesso del bot e salvalo per utilizzarlo nella funzione Cloud Run.

    Aggiungere il bot Webex allo spazio di lavoro

    In questa sezione, aggiungi il bot WebEx a un workspace.

    1. Nello spazio WebEx in cui vuoi che il bot pubblichi le notifiche, espandi il pannello delle attività. Pannello WebEx

    2. Seleziona Aggiungi persone.

    3. Digita "SCC Finding Notifier" nel campo di testo e seleziona il bot che hai creato dal menu a discesa. WebEx add

    4. Seleziona il pulsante Aggiungi, poi chiudi il riquadro.

    5. Ottieni l'ID stanza dello spazio di lavoro per la funzione Cloud Run. Su un computer desktop, vai a https://developer.webex.com/docs/api/v1/rooms/list- rooms e accedi, se necessario. Questa pagina utilizza l'API WebEx per elencare le stanze a cui appartieni. Sale WebEx

    6. Vai al pannello di ricerca.

    7. Seleziona la scheda Prova nella parte superiore del riquadro.

    8. Lascia invariati i valori predefiniti per tutte le opzioni e fai clic su Esegui.

    9. Nella scheda Risposta, ricevi una risposta in formato JSON con un elenco di items, ovvero di camere. Trova l'title della stanza in cui vuoi che vengano visualizzate le notifiche e registra il valore id associato. WebEx
response

    Successivamente, esegui il deployment di una funzione Cloud Run per inviare notifiche al tuo spazio di lavoro WebEx.

    Crea la funzione Cloud Run WebEx

    In questa sezione, esegui il deployment di una funzione per inviare notifiche al tuo account WebEx.

    1. Vai a Cloud Run Functions.
      Vai a Cloud Run Functions

    2. Seleziona lo stesso PROJECT_ID in cui è stato creato l'argomento Pub/Sub.

    3. Fai clic su Crea funzione. Funzione WebEx

    4. Imposta Nome funzione su webex-teams-high-and-critical-findings e Tipo di trigger su Pub/Sub.

    5. Seleziona l'argomento Pub/Sub che hai creato in Configurazione di un argomento Pub/Sub.

    6. Espandi il campo Variabili, networking e impostazioni avanzate.

    7. Nella sezione Service account, filtra e seleziona il account di servizio webex-cloud-function-sa che hai creato. Variabili WebEx

    8. Fai clic su Salva e poi su Avanti.

    9. Nella pagina successiva, imposta Runtime su Python 3.8. L'esempio di codice in questa sezione è scritto in Python, ma puoi utilizzare qualsiasi linguaggio supportato dalle funzioni Cloud Run.

    10. Vai all'elenco dei file. Fai clic su requirements.txt e aggiungi quanto segue:

      • requests==2.25.1
      • google-cloud-securitycenter==1.1.0 Requisiti di WebEx
    11. Fai clic su main.py e sostituisci i contenuti con il seguente snippet di codice.

      #!/usr/bin/env python3
      import base64
      import json
      
      import requests
      from google.cloud import securitycenter_v1
      
      WEBEX_TOKEN = "WEBEX_TOKEN"
      ROOM_ID = "ROOM_ID"
      
      TEMPLATE = """
      **Severity:** {severity}\n
      **Asset:** {asset}\n
      **SCC Category:** {category}\n
      **Project:** {project}\n
      **First observed:** {create_time}\n
      **Last observed:** {event_time}\n
      **Link to finding:** {finding_link}
      """
      
      PREFIX = "https://console.cloud.google.com/security/command-center/findings"
      
      def get_finding_detail_page_link(finding_name):
          """Constructs a direct link to the finding detail page."""
          org_id = finding_name.split("/")[1]
          return f"{PREFIX}?organizationId={org_id}&resourceId={finding_name}"
      
      def get_asset(parent, resource_name):
          """Retrieves the asset corresponding to `resource_name` from SCC."""
          client = securitycenter_v1.SecurityCenterClient()
          resp = client.list_assets(
              securitycenter_v1.ListAssetsRequest(
                  parent=parent,
                  filter=f'securityCenterProperties.resourceName="{resource_name}"',
              )
          )
          page = next(resp.pages)
          if page.total_size == 0:
              return None
          asset = page.list_assets_results[0].asset
          return json.loads(securitycenter_v1.Asset.to_json(asset))
      
      def send_webex_teams_notification(event, context):
          """Send the notification to WebEx Teams."""
          pubsub_message = base64.b64decode(event["data"]).decode("utf-8")
          message_json = json.loads(pubsub_message)
          finding = message_json["finding"]
      
          parent = "/".join(finding["parent"].split("/")[0:2])
          asset = get_asset(parent, finding["resourceName"])
      
          requests.post(
              "https://webexapis.com/v1/messages",
              json={
                  "roomId": ROOM_ID,
                  "markdown": TEMPLATE.format(
                      severity=finding["severity"],
                      asset=asset["securityCenterProperties"]["resourceDisplayName"],
                      category=finding["category"],
                      project=asset["resourceProperties"]["project"],
                      create_time=finding["createTime"],
                      event_time=finding["eventTime"],
                      finding_link=get_finding_detail_page_link(finding["name"]),
                  ),
              },
              headers={"Authorization": f"Bearer {WEBEX_TOKEN}"},
          )
      
    12. Sostituisci quanto segue:

      • WEBEX_TOKEN con il token di accesso del bot dalla sezione Crea un bot WebEx.
      • ROOM_ID con l'ID stanza dalla sezione Aggiungi bot WebEx all'area di lavoro.
    13. Vai al campo Entry point e inserisci il nome della funzione nello snippet di codice (send_webex_teams_notification, in questo esempio).

    14. Fai clic su Esegui il deployment. Viene visualizzata di nuovo la lista delle funzioni Cloud Run in cui dovresti vedere la tua nuova funzione. Quando accanto al nome della funzione viene visualizzato un segno di spunta verde, il deployment è stato eseguito correttamente. Il processo può richiedere alcuni minuti. Deployment di WebEx

    Se i passaggi precedenti per il servizio selezionato sono stati completati senza errori, la configurazione è completa e inizierai a ricevere le notifiche. Ricorda:

    • Ricevi un'email o un messaggio di chat separato per ogni singolo risultato critico o di gravità elevata. La frequenza o il numero di notifiche dipende dalle risorse all'interno della tua organizzazione.
    • Le notifiche vengono pubblicate e inviate quasi in tempo reale. Tuttavia, l'immediatezza di email o messaggi non è garantita e diversi fattori possono causare ritardi, tra cui problemi con Twilio Sendgrid Mail, il sistema di posta elettronica, Slack o WebEx.

    Per modificare il flusso di lavoro delle notifiche, puoi:

    • Modifica i destinatari aggiornando la funzione Cloud Run.
    • Modifica i risultati che attivano le notifiche aggiornando il filtro per l'argomento Pub/Sub.

    Test delle notifiche

    Per verificare se le notifiche sono configurate correttamente, segui le istruzioni di seguito per attivare e disattivare i risultati di gravità elevata.

    1. Vai alla pagina Risultati di Security Command Center.
      Vai alla pagina Risultati
    2. Se richiesto, seleziona la tua organizzazione.
    3. Nel riquadro Filtri rapidi, scorri verso il basso fino alla sezione Gravità e seleziona Alta o Critica. Il riquadro Risultati della query sui risultati si aggiorna per mostrare i risultati solo della gravità selezionata.
    4. Nel riquadro Risultati della query sui risultati, seleziona un risultato selezionando la casella accanto al nome.
    5. Dal menu Modifica stato attivo nella barra delle azioni Risultati query sui risultati, seleziona Non attivo. Se la query sui risultati attuale mostra solo i risultati attivi, il risultato viene rimosso dai risultati della query.
    6. Nel riquadro Filtri rapidi, scorri verso il basso fino alla sezione Stato e modifica le selezioni in modo che sia selezionato solo Non attivo. Il riquadro Risultati della query sui risultati si aggiorna per mostrare solo i risultati inattivi.
    7. Nel riquadro Risultati della query sui risultati, seleziona il risultato che hai contrassegnato come inattivo.
    8. Dal menu Modifica stato attivo nella barra delle azioni Risultati query sui risultati, seleziona Attivo.
    9. Controlla la tua email o il tuo servizio di messaggistica. Dovresti visualizzare un messaggio simile alle immagini riportate di seguito.

    Email:

    Notifica via email

    Slack:

    Notifica Slack

    I messaggi inviati a WebEx, che contengono maggiori informazioni in questa guida, assomigliano all'immagine seguente.

    Notifica WebEx

    Risoluzione dei problemi

    Se le email o i messaggi di chat non vengono inviati o ricevuti, segui i passaggi riportati di seguito per identificare e risolvere i potenziali problemi.

    • Twilio Sendgrid Mail:

      • Per impedire che le email vengano inviate alla cartella Spam, aggiungi il valore from_email alla tua lista consentita per le email o configura l'autenticazione del mittente su SendGrid.
      • Assicurati di non superare il limite di frequenza per il tuo piano SendGrid.
      • Le email non inviate possono essere rilevate tramite i report di SendGrid.
        • Il criterio DMARC del tuo dominio o del tuo provider email potrebbe bloccare le email provenienti da mittenti non autenticati. Scopri come SendGrid gestisce l'identità del mittente. Se si verifica un errore, prova un altro indirizzo email nel valore from_email.
    • Twilio Sendgrid Mail, Slack e WebEx:

      1. Controlla i log di Stackdriver per la tua funzione Cloud Run per determinare se la funzione viene richiamata. Se non viene richiamato, assicurati che le notifiche siano configurate correttamente.

      2. Se viene richiamata la funzione Cloud Run, è possibile che si arresti in modo anomalo. Controlla la presenza di errori nelle funzioni Cloud Run utilizzando la Google Cloud segnalazione degli errori della console.

    Pulizia

    Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.

    Elimina il progetto

    1. In the Google Cloud console, go to the Manage resources page.

      Go to Manage resources

    2. In the project list, select the project that you want to delete, and then click Delete.
    3. In the dialog, type the project ID, and then click Shut down to delete the project.

    Eliminazione di singole risorse

    1. Elimina la configurazione delle notifiche:

      gcloud scc notifications delete scc-critical-high-severity \
          --organization=ORG_ID \
          --location=global
      

      Sostituisci ORG_ID con l'ID organizzazione.

      Per mantenere la configurazione e mettere in pausa temporaneamente le notifiche, commenta le chiamate send o post nella tua funzione Cloud Run.

    2. Elimina la funzione Cloud Run:

      1. Vai a Cloud Run Functions.
        Vai a Cloud Run Functions
      2. Fai clic sulla casella di controllo accanto alla funzione che vuoi eliminare.
      3. Fai clic su Elimina .
    3. Elimina il account di servizio:

      1. Vai alla pagina Account di servizio.
        Vai alla pagina Service account
      2. Seleziona un progetto.
      3. Seleziona l'account di servizio da eliminare, quindi fai clic su Elimina .

    Passaggi successivi