Raccogli i log di Aware Signals
Parser Version: 1.0
Questo documento spiega come configurare Aware per inviare i log degli eventi di Signal a Google Security Operations utilizzando i webhook.
Aware (by Mimecast) è una piattaforma di sicurezza della collaborazione e di rischio interno che monitora i contenuti su strumenti di comunicazione aziendali come Slack, Microsoft Teams, Zoom, Cisco Webex e Workvivo. L'applicazione Aware Signal utilizza modelli di AI, corrispondenza delle parole chiave, espressioni regolari e analisi del sentiment per rilevare violazioni delle norme e generare eventi. Questi eventi di Signal possono essere inoltrati a una destinazione SIEM per il monitoraggio e la correlazione centralizzati della sicurezza.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Un'istanza Google SecOps
- Un abbonamento alla piattaforma Aware con il modulo Signal abilitato
- Un account amministratore di Aware con accesso alle impostazioni di sistema
- Almeno una piattaforma di collaborazione (Slack, Microsoft Teams, Zoom, Webex o Workvivo) connessa e che acquisisce contenuti in Aware
- Almeno una policy e una regola di Signal configurate per generare eventi
- Accesso alla Google Cloud Console (per la creazione della chiave API)
Crea un feed webhook in Google SecOps
Creare il feed
- Vai a Impostazioni SIEM > Feed.
- Fai clic su Aggiungi nuovo feed di notizie.
- Nella pagina successiva, fai clic su Configura un singolo feed.
- Nel campo Nome feed, inserisci un nome per il feed (ad esempio
Aware Signal Events). - Seleziona Webhook come Tipo di origine.
- Seleziona Aware Signals come Tipo di log.
- Fai clic su Avanti.
- Specifica i valori per i seguenti parametri di input:
- Delimitatore di suddivisione: inserisci
\n(delimitatore di nuova riga per i payload NDJSON) - Spazio dei nomi dell'asset: lo spazio dei nomi dell'asset
- Etichette di importazione: l'etichetta da applicare agli eventi di questo feed
- Delimitatore di suddivisione: inserisci
- Fai clic su Avanti.
- Controlla la nuova configurazione del feed di notizie nella schermata Finalizza e poi fai clic su Invia.
Genera e salva la chiave segreta
Dopo aver creato il feed, devi generare una chiave segreta per l'autenticazione:
- Nella pagina dei dettagli del feed, fai clic su Genera chiave segreta.
- Viene visualizzata una finestra di dialogo con la chiave segreta.
- Copia e salva la chiave segreta in modo sicuro.
Ottieni l'URL dell'endpoint del feed
- Vai alla scheda Dettagli del feed.
- Nella sezione Endpoint Information (Informazioni sull'endpoint), copia l'URL dell'endpoint del feed.
Il formato dell'URL è:
https://{region}-chronicle.googleapis.com/v1/{parent}/logs:importDove
{region}è la regione dell'istanza Google SecOps (ad esempious,europeoasia-southeast1) e{parent}è il percorso della risorsa nel formatoprojects/<PROJECT_ID>/locations/<LOCATION>/instances/<INSTANCE_ID>/logTypes/<LOG_TYPE>.Salva questo URL per i passaggi successivi.
Fai clic su Fine.
Crea una chiave API Google Cloud
Google SecOps richiede una chiave API per l'autenticazione. Crea una chiave API con limitazioni nella Google Cloud Console.
Creare la chiave API
- Vai alla pagina Credenziali della console Google Cloud.
- Seleziona il tuo progetto (il progetto associato alla tua istanza di Google SecOps).
- Fai clic su Crea credenziali > Chiave API.
- Viene creata una chiave API, che viene visualizzata in una finestra di dialogo.
- Fai clic su Modifica chiave API per limitare la chiave.
Limitare la chiave API
- Nella pagina delle impostazioni Chiave API:
- Nome: inserisci un nome descrittivo (ad esempio
Chronicle Webhook API Key)
- Nome: inserisci un nome descrittivo (ad esempio
- In Restrizioni API:
- Seleziona Limita chiave.
- Nel menu a discesa Seleziona API, cerca e seleziona API Google SecOps (o API Chronicle).
- Fai clic su Salva.
- Copia il valore della chiave API dal campo Chiave API nella parte superiore della pagina.
Salva la chiave API in modo sicuro.
Ottenere la chiave API Aware
Aware utilizza una chiave API per autenticare le integrazioni esterne. Per ottenere la chiave:
- Accedi ad Aware all'indirizzo https://aware.work con un account amministratore.
- Fai clic su Impostazioni di sistema nell'angolo in basso a sinistra.
- Vai alla scheda Integrazioni.
Copia la chiave API visualizzata nella pagina.
Salva la chiave API in modo sicuro per utilizzarla nei passaggi successivi.
Configura l'inoltro del webhook Aware Signal
Crea l'URL webhook
Combina l'URL dell'endpoint Google SecOps, la chiave API e la chiave segreta:
<ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>Esempio:
https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=AIzaSyD...&secret=abcd1234...
Configura l'inoltro degli eventi in Aware
Configura Aware per inoltrare gli eventi Signal all'endpoint webhook di Google SecOps. I passaggi esatti possono variare a seconda della versione della piattaforma Aware.
- Accedi ad Aware all'indirizzo https://aware.work con un account amministratore.
- Fai clic su Impostazioni di sistema nell'angolo in basso a sinistra.
- Vai alla scheda Integrazioni.
Configura una nuova destinazione webhook con i seguenti dettagli:
URL di destinazione: incolla l'URL webhook completo con la chiave API e la chiave segreta aggiunte come parametri di ricerca:
https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=YOUR_API_KEY&secret=YOUR_SECRET_KEYTipo di contenuti: seleziona
application/jsonIntestazione di autenticazione (se supportata dalla tua versione di Aware): imposta il nome dell'intestazione su
X-Aware-Api-Keye il valore sulla chiave API Aware
Seleziona i tipi di eventi da inoltrare. Per un monitoraggio completo della sicurezza, attiva l'inoltro di tutti gli eventi di Signal:
- Eventi di violazione delle norme
- Eventi di corrispondenza delle parole chiave
- Eventi di rilevamento dell'AI/del sentiment
- Eventi di rilevamento di comportamenti tossici
Fai clic su Salva per attivare la destinazione webhook.
Alternativa: inoltra gli eventi utilizzando una funzione Cloud Run
Se la tua versione di Aware non supporta il push webhook nativo per gli eventi Signal, puoi utilizzare una funzione Cloud Run per eseguire il polling dell'API Aware e inoltrare gli eventi all'endpoint webhook di Google SecOps.
- Crea una funzione Cloud Run (Python 3.12 o versioni successive) con un trigger Pub/Sub.
- Configura la funzione in modo che:
- Esegui l'autenticazione nell'API Aware utilizzando l'intestazione
X-Aware-Api-Key. - Esegui query sugli eventi di Signal dall'endpoint API Aware.
- Inoltra ogni evento come payload JSON all'URL dell'endpoint webhook di Google SecOps.
- Esegui l'autenticazione nell'API Aware utilizzando l'intestazione
Utilizza Cloud Scheduler per richiamare la funzione a intervalli regolari (ad esempio ogni 5 minuti).
Esempio di richiesta di inoltro degli eventi:
curl -X POST "https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=YOUR_API_KEY&secret=YOUR_SECRET_KEY" \ -H "Content-Type: application/json" \ -d '{"signal_id":"12345","event_type":"policy_violation","timestamp":"2026-01-15T10:30:00Z","user":"user@example.com","platform":"slack","policy":"Data Loss Prevention","rule":"Credit Card Numbers","message_snippet":"detected content"}'
Verificare la pubblicazione degli eventi
- In Google SecOps, vai a Impostazioni SIEM > Feed.
- Fai clic sul feed Aware Signal Events (Eventi di segnale Aware).
- Vai alla scheda Stato.
- Verifica che gli eventi vengano ricevuti.
In alternativa, attiva un evento di test di Segnali in Aware:
- In Aware, vai a Signal > Eventi.
- Verifica che i nuovi eventi vengano generati dai tuoi criteri.
- Attendi qualche minuto perché gli eventi vengano visualizzati in Google SecOps.
Tipi di eventi di indicatori Aware
Aware Signal rileva gli eventi su piattaforme di collaborazione collegate utilizzando una combinazione di modelli di AI, corrispondenza delle parole chiave, espressioni regolari e analisi del sentiment. Vengono generate comunemente le seguenti categorie di eventi:
| Categoria | Descrizione | Esempi |
|---|---|---|
| Violazione delle norme | Eventi attivati da regole delle policy definite | Rilevamento di parole chiave, corrispondenza di pattern regex, dati sensibili |
| AI/Sentiment | Eventi rilevati da modelli di AI e sentiment | Linguaggio tossico, sentiment negativo, molestie |
| Perdita dei dati | Eventi correlati alla potenziale esfiltrazione di dati | Violazioni della condivisione di file, condivisione esterna, esposizione delle credenziali |
| Rischio interno | Eventi che indicano potenziali minacce interne | Pattern di comportamento insoliti, anomalie di accesso, rischio di dipendenti in uscita |
| Conformità | Eventi relativi alla conformità legale | Esposizione di PII, condivisione di dati finanziari, violazioni dell'HIPAA |
Riferimento ai metodi di autenticazione
I feed dei webhook di Google SecOps supportano diversi metodi di autenticazione. Scegli il metodo supportato dal tuo fornitore.
Metodo 1: parametri di query
Aggiungi le credenziali all'URL webhook.
Formato URL:
<ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>Esempio:
https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=AIzaSyD...&secret=abcd1234...
Metodo 2: intestazioni personalizzate
Se la tua configurazione supporta le intestazioni HTTP personalizzate, utilizza questo metodo per una maggiore sicurezza.
Headers:
x-goog-chronicle-auth: <API_KEY> x-chronicle-auth: <SECRET_KEY>
Vantaggi:
- Chiave API e secret non visibili nell'URL
- Più sicuro (le intestazioni non vengono registrate nei log di accesso del server web)
Limiti e best practice dei webhook
Limiti per le richieste
| Limite | Valore |
|---|---|
| Dimensioni massime della richiesta | 4 MB |
| QPS max (query al secondo) | 15.000 |
| Timeout richieste | 30 secondi |
| Comportamento dei nuovi tentativi | Automatico con backoff esponenziale |
Best practice
- Attiva l'inoltro per tutti i tipi di eventi Signal per garantire una copertura di sicurezza completa
- Monitora regolarmente lo stato di invio del webhook per verificare la presenza di errori o ritardi
- Utilizza il delimitatore di suddivisione
\nnella configurazione del feed di Google SecOps per gestire i payload NDJSON - Testa l'integrazione con una violazione delle norme nota prima di eseguire il deployment nell'ambiente di produzione
- Rivedi periodicamente le norme relative agli indicatori Aware per assicurarti che vengano acquisiti gli eventi pertinenti
Risoluzione dei problemi
Eventi che non vengono visualizzati in Google SecOps
Causa: gli eventi vengono generati in Aware, ma non vengono importati
Soluzione:
- Vai a Impostazioni SIEM > Feed in Google SecOps.
- Fai clic sul feed Aware Signal Events.
- Vai alla scheda Stato.
- Controlla se sono presenti errori di importazione.
- Verifica che il tipo di log sia impostato su Aware Signals.
- Verifica che la chiave API e la chiave segreta nell'URL webhook siano corrette.
Errori di autenticazione
Causa: chiave API o chiave segreta non valida
Soluzione:
- Verifica che la chiave API Google SecOps sia valida e abbia la restrizione API corretta.
- Verifica che la chiave segreta corrisponda a quella generata durante la creazione del feed.
Testa manualmente l'endpoint:
curl -X POST "https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=YOUR_API_KEY&secret=YOUR_SECRET_KEY" \ -H "Content-Type: application/json" \ -d '{"test": "event"}'Se il test non va a buon fine, rigenera la chiave API o la chiave segreta e aggiorna la configurazione del webhook in Aware.
Il payload supera le dimensioni massime
Causa: i payload degli eventi superano il limite di 4 MB
Soluzione:
- Riduci il numero di tipi di eventi inoltrati.
- Contatta l'assistenza di Aware per configurare i limiti di dimensione del payload.
- Se utilizzi l'approccio con Cloud Run Functions, implementa il raggruppamento in batch per suddividere i payload di grandi dimensioni in più richieste.
Tabella di mappatura UDM
| Campo log | Mappatura UDM | Logica |
|---|---|---|
has_principal |
metadata.event_type |
Mappato: true → NETWORK_CONNECTION, true → STATUS_UPDATE |
has_user |
metadata.event_type |
Mappato: true → USER_UNCATEGORIZED |
signalEventDetails.eventStatus |
security_result.action_details |
Mappato direttamente |
contentObjectDetails_contentObjectIsChat_label |
security_result.detection_fields |
Unita |
contentObjectDetails_contentObjectIsThread_label |
security_result.detection_fields |
Unita |
detectionLength_label |
security_result.detection_fields |
Unita |
detectionStart_label |
security_result.detection_fields |
Unita |
ruleConditionMatches_label |
security_result.detection_fields |
Unita |
search_label |
security_result.detection_fields |
Unita |
signalEventDetails_createdTime_label |
security_result.detection_fields |
Unita |
signalEventDetails_deletedTime_label |
security_result.detection_fields |
Unita |
signalEventDetails_inspectionRequestId_label |
security_result.detection_fields |
Unita |
signalEventDetails_isQuarantined_label |
security_result.detection_fields |
Unita |
signalEventDetails_policyDetails_createdTime_label |
security_result.detection_fields |
Unita |
signalEventDetails_policyDetails_policyId_label |
security_result.detection_fields |
Unita |
signalEventDetails_policyDetails_policyName_label |
security_result.detection_fields |
Unita |
signalEventDetails_ruleBehavior_label |
security_result.detection_fields |
Unita |
signalEventDetails_ruleFamilyId_label |
security_result.detection_fields |
Unita |
signalEventDetails_tenantId_label |
security_result.detection_fields |
Unita |
signalEventId_label |
security_result.detection_fields |
Unita |
signal_EventDetails_policyDetails_deletedTime_label |
security_result.detection_fields |
Unita |
snippetContent_label |
security_result.detection_fields |
Unita |
snippetLength_label |
security_result.detection_fields |
Unita |
snippetStart_label |
security_result.detection_fields |
Unita |
signalEventDetails_ruleId |
security_result.rule_id |
Mappato direttamente |
signalEventDetails_ruleName |
security_result.rule_name |
Mappata direttamente |
contentGroupDetails.contentGroupScope_label |
target.group.attribute.labels |
Unita |
contentObjectDetails_contentGroupDetails_contentGroupTag_label |
target.group.attribute.labels |
Unita |
contentGroupDetails_contentGroupName |
target.group.group_display_name |
Mappata direttamente |
contentObjectDetails_contentPlatformId_label |
target.resource.attribute.labels |
Unita |
contentObjectDetails_contentTime_label |
target.resource.attribute.labels |
Unita |
contentObjectDetails_contentObjectId |
target.resource.product_object_id |
Mappato direttamente |
contentObjectDetails_contentObjectType |
target.resource.resource_subtype |
Mappata direttamente |
contentAuthorDetails_contentAuthorEmail |
target.user.email_addresses |
Unita |
contentAuthorDetails_contentAuthorName |
target.user.user_display_name |
Mappato direttamente |
contentAuthorDetails_contentAuthorId |
target.user.userid |
Mappato direttamente |
| N/D | metadata.event_type |
Costante: NETWORK_CONNECTION |
| N/D | metadata.product_name |
Costante: AWARE SIGNALS |
| N/D | metadata.vendor_name |
Costante: AWARE SIGNALS |
Log delle modifiche
Visualizza il log delle modifiche per questo parser
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.