GitSync

GitSync è un'integrazione creata per Google SecOps che sincronizza gli asset e i componenti di automazione della sicurezza con un repository Git esterno (come GitHub, GitLab o Bitbucket). Facilita la sincronizzazione bidirezionale dei contenuti, fornendo controllo della versione automatizzato, backup della configurazione e promozione tra ambienti durante il ciclo di vita delle operazioni di sicurezza. Tieni presente che GitSync è progettato per eseguire il backup e la migrazione degli asset tra ambienti correlati (come sviluppo, gestione temporanea e produzione), anziché per distribuire gli asset tra sistemi non correlati in cui gli identificatori interni del database potrebbero causare conflitti.

Casi d'uso

L'integrazione di GitSync supporta i seguenti casi d'uso principali:

  • Controllo della versione e verificabilità (Security as Code): monitora le modifiche, esamina le differenze e mantieni una cronologia delle versioni completa delle modifiche apportate a playbook, connettori, integrazioni e impostazioni di sistema.

  • Promozione in più ambienti (pipeline CI/CD): promuovi sistematicamente playbook, mappature di ontologie e impostazioni di integrazione dagli ambienti di sviluppo e gestione temporanea alla produzione tramite richieste di pull e unioni di rami.

  • Backup e disaster recovery: ripristina playbook e configurazioni della piattaforma eliminati, danneggiati o configurati in modo errato direttamente dal tuo repository Git.

  • Standardizzazione tra ambienti: distribuisci playbook standardizzati, famiglie visive personalizzate e definizioni di connettori in ambienti Google SecOps correlati da un repository centralizzato.

  • Isolamento di branching e staging: testa playbook sperimentali e branch di funzionalità in ambienti dedicati senza influire sui workflow o sulle pianificazioni di produzione.

  • Revisione e collaborazione offline: esporta le definizioni della piattaforma in formato JSON e Markdown per consentire la revisione tra pari, la convalida automatica e l'ispezione negli strumenti per sviluppatori standard.

  • Blocchi di workflow riutilizzabili: sincronizza i blocchi di workflow modulari insieme o separatamente dai playbook completi, in modo che i team possano condividere passaggi di automazione comuni.

Workflow di implementazione per obiettivo

Per andare direttamente alle indicazioni corrispondenti al tuo obiettivo attuale, seleziona il tuo workflow:

Prima di iniziare

Prima di configurare ed eseguire le operazioni di GitSync, verifica la versione dell'integrazione, ottieni l'accesso al repository e completa le seguenti attività di configurazione:

  • Utilizza un repository Git privato con accesso in scrittura: assicurati di disporre delle autorizzazioni in scrittura per un repository Git remoto privato ospitato su un provider Git supportato (ad esempio GitHub, GitLab o Bitbucket). Mentre i parametri di tipo Password sono esclusi per impostazione predefinita, a meno che non sia abilitato Commit Passwords, tutti gli altri parametri (come ID applicazione, ID client, nomi utente ed endpoint) vengono esportati in testo non crittografato. Non utilizzare mai un repository pubblico con GitSync.

  • Inizializza il repository remoto: verifica che il repository remoto abbia almeno un commit iniziale (ad esempio un file README.md o .gitignore). GitSync non può eseguire la sincronizzazione con un repository vuoto.

  • Prepara le credenziali di autenticazione Git: genera una credenziale di autenticazione con autorizzazioni in scrittura per il repository. GitSync supporta chiavi private SSH con codifica base64 (consigliato), token di accesso personale (PAT) e credenziali di base con nome utente e password.

    Per generare e codificare una chiave SSH, consulta Genera chiavi SSH per GitSync.

  • Verifica la connettività di rete e i Controlli di servizio VPC: verifica che l'istanza Google SecOps o il runner remoto abbia accesso al firewall in uscita sulla porta TCP 443 (per HTTPS) o sulla porta TCP 22 (per SSH) al tuo provider Git.

    Se il tuo ambienteGoogle Cloud utilizza un perimetro di servizio dei Controlli di servizio VPC, collabora con l'amministratore Google Cloud per configurare le regole in entrata e in uscita in modo che le integrazioni delle risposte possano comunicare con le API Google Cloud e gli endpoint esterni richiesti.

  • Ottieni l'impronta dell'host Git (consigliato): per proteggerti dagli attacchi person-in-the-middle (PITM), recupera l'impronta della chiave pubblica del tuo server Git per il pinning dell'impronta dell'host.

    Per i passaggi di configurazione, consulta Abilita il blocco della fingerprint dell'host.

  • Concedi le autorizzazioni di modifica dei playbook: se intendi sincronizzare i playbook con accesso predefinito limitato (ad esempio, set di autorizzazioni predefinite impostate su Può visualizzare), concedi al ruolo SOC Administrator le autorizzazioni Può modificare sul sistema di origine prima di eseguire i job di sincronizzazione.

    Per istruzioni passo passo, consulta Configura le autorizzazioni del playbook.

Genera chiavi SSH per GitSync

Per configurare l'autenticazione sicura e senza password utilizzando le chiavi SSH:

  1. Genera una coppia di chiavi RSA o Ed25519 nel terminale. Quando ti viene richiesta una passphrase, premi Invio per lasciare il campo vuoto:

    ssh-keygen -b 2048 -t rsa -f ./id_rsa
    

    Questo comando crea due file: id_rsa (chiave privata) e id_rsa.pub (chiave pubblica).

  2. Aggiungi la chiave pubblica (id_rsa.pub) al tuo servizio di hosting Git remoto come chiave di deployment o chiave di accesso con autorizzazioni in scrittura.

  3. Converti la chiave privata in una stringa con codifica Base64 su una singola riga:

    • Linux / macOS:

      base64 -w 0 ./id_rsa
      
    • Windows (PowerShell):

      [Convert]::ToBase64String([System.IO.File]::ReadAllBytes(".\id_rsa"))
      
  4. Copia la stringa base64 risultante e incollala nel parametro Git Password/Token/SSH Key (Password/token/chiave SSH Git) durante la configurazione dell'istanza di integrazione GitSync.

Attiva il blocco dell'impronta dell'host

Il pinning dell'impronta dell'host verifica l'identità del server Git al momento della connessione per proteggerti dagli attacchi person-in-the-middle (PITM). Sebbene il parametro Impronta server Git sia facoltativo, la sua configurazione garantisce che GitSync si connetta esclusivamente al tuo host Git verificato.

Per configurare il pinning dell'impronta dell'host:

  1. Recupera la fingerprint dell'host: esegui ssh-keyscan nel terminale sul nome host del server Git:

    ssh-keyscan -t rsa <hostname>
    

    Ad esempio, per GitHub, esegui ssh-keyscan -t rsa github.com. Il comando restituisce una riga della chiave host pubblica simile alla seguente:

    github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...
    
  2. Salva il fingerprint per la configurazione: copia la riga della chiave host pubblica. Inserisci questo valore nel parametro Git Server Fingerprint quando configuri l'istanza di integrazione GitSync (per applicarlo a tutti i job) o nei singoli job di sincronizzazione (per eseguire l'override dell'impostazione per host specifici).

Configura le autorizzazioni del playbook

Quando sincronizzi i playbook con autorizzazioni limitate (ad esempio, autorizzazioni predefinite impostate su Può visualizzare), assegna le autorizzazioni Può modificare al ruolo SOC Administrator:

  1. In Google SecOps, vai a Playbook e seleziona il playbook di destinazione.
  2. Apri le impostazioni delle autorizzazioni del playbook.
  3. Aggiungi il ruolo SOC Administrator all'elenco delle entità e imposta l'autorizzazione su Può modificare.

Rollback alla versione 53.0

La versione 53.0 di GitSync ha introdotto modifiche all'API Chronicle e schemi di esportazione JSON modificati che hanno causato errori di sincronizzazione. Per risolvere questi problemi, la versione 54.0 di GitSync annulla le modifiche della versione 53.0 e ripristina il codebase della versione stabile 52.0.

Completa i seguenti passaggi per passare alla versione 52.0 o 54.0 e ripristinare un branch del repository compatibile:

  1. Metti in pausa i job di sincronizzazione pianificati: disattiva tutti i job GitSync pianificati attivi (come Push Content e Pull Content) in modo che non vengano eseguiti mentre cambi versione e branch.

  2. Passa alla versione 54.0 o esegui il rollback alla versione 52.0: In Content Hub, individua l'integrazione GitSync:

    • Se è disponibile la versione 54.0, esegui l'upgrade dell'integrazione alla versione 54.0.
    • Se la versione 54.0 non è ancora visualizzata (le cache di Content Hub si sincronizzano circa ogni 8 ore) o se preferisci eseguire il downgrade direttamente, esegui il rollback alla versione 52.0 dell'integrazione.
  3. Indirizza GitSync al branch del repository precedente: I branch del repository compilati utilizzando la versione 53.0 utilizzano uno schema JSON diverso che non è compatibile con la versione 52.0 o 54.0:

    • Se hai creato un branch separato per la versione 53.0 (ad esempio, gitsync-chronicle-api): vai a Impostazioni > Integrazioni > GitSync, riporta il parametro Branch al branch originale (ad esempio, main) ed esegui l'azione Ping per verificare la connettività.
    • Se hai sovrascritto il branch esistente nella versione 53.0: ripristina il branch dal tag Git backup-legacy-pre-migration (o dall'ultimo commit precedente alla versione 53) o rimuovi le directory esportate della versione 53.0 (Playbooks/, Connectors/, Integrations/, Jobs/, Ontology/, SimulatedCases/ e Settings/) ed esegui un job Push Content completo dalla versione 52.0 o 54.0 per ripopolare il branch.
  4. Riprendi i job pianificati: dopo aver verificato che il tuo branch contiene le configurazioni esportate dalla versione 52.0 o 54.0, riattiva i job GitSync pianificati.

Configura l'integrazione

Configura l'integrazione di GitSync come istanza condivisa in Google SecOps in modo che tutti i componenti della piattaforma e i job pianificati possano accedere alle configurazioni del repository.

Parametri di integrazione GitSync

Parametro Descrizione
Repo URL

Obbligatorio.

L'URL del repository Git remoto.

Quando utilizzi l'autenticazione HTTPS, l'URL deve iniziare con https:// (ad esempio, https://github.com/organization/secops-platform.git).

Quando utilizzi l'autenticazione SSH, l'URL deve iniziare con git@ o ssh:// (ad esempio, git@github.com:organization/secops-platform.git).

Branch

Obbligatorio.

Il branch del repository Git con cui eseguire la sincronizzazione (ad esempio, main).

Git Password/Token/SSH Key

Obbligatorio.

La credenziale di autenticazione per il repository Git remoto.

Questo parametro accetta una password dell'account Git, un token di accesso personale (PAT) o una chiave privata SSH con codifica Base64 (RSA a 2048 bit o Ed25519).

Git Username

Facoltativo.

Il nome utente dell'account Git.

Obbligatorio quando si utilizza l'autenticazione con nome utente e password tramite HTTPS.

Git Server Fingerprint

Facoltativo.

La chiave host pubblica SSH del tuo server Git remoto (ad esempio, github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...).

La configurazione di questo parametro consente il pinning dell'impronta dell'host, garantendo che GitSync si connetta esclusivamente all'host Git verificato e mitigando i rischi di attacchi person-in-the-middle (PITM).

Per recuperare questo valore, consulta Attiva il blocco del fingerprint dell'host.

Commit Author

Facoltativo.

L'identità dell'autore associata ai commit Git in uscita generati da GitSync.

Il formato deve seguire la paternità Git standard: Name &lt;email@domain.com&gt; (il valore predefinito è GitSync &lt;gitsync@siemplify.co&gt;).

Siemplify Verify SSL

Obbligatorio.

Se selezionata, l'integrazione convalida il certificato SSL dell'endpoint API Google SecOps.

Abilitato per impostazione predefinita.

Git Verify SSL

Obbligatorio.

Se selezionata, l'integrazione convalida il certificato SSL del server del provider Git remoto.

Abilitato per impostazione predefinita.

SOAR Username

Facoltativo.

Il nome utente Google SecOps di un account con autorizzazioni di modifica dei playbook.

Fornisci questo parametro se la chiave API predefinita non funziona a causa di limiti di autorizzazione.

SOAR Password

Facoltativo.

La password corrispondente al SOAR Username configurato.

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 connessione di rete e verificare le credenziali di autenticazione rispetto al repository e al branch Git configurati.

Input azione

Nessuno.

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 executed action "Ping". L'azione è riuscita e la connettività del repository è stata verificata.
Error executing action "Ping". Reason: ERROR_REASON L'azione non è andata a buon fine. Verifica l'URL del repository, il nome del branch, le credenziali o le route di rete.
Risultato dello script

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

Nome del risultato dello script Valore
is_success true o false

Job

GitSync fornisce 16 configurazioni di job di sincronizzazione (2 job di istanza completa e 7 coppie di job autonomi) per gestire gli asset della piattaforma. Questi job supportano gli ambiti di sincronizzazione autonomi completi a livello di istanza e mirati.

Ambito di sincronizzazione e asset supportati

L'integrazione organizza i job di sincronizzazione in due ambiti operativi distinti per soddisfare diverse esigenze amministrative e di automazione:

  • Sincronizzazione completa dell'istanza (Push Content e Pull Content): sincronizza l'intera piattaforma Google SecOps in un'unica operazione collettiva.

    Ciò comprende 21 categorie di asset della piattaforma in tre aree funzionali:

    • Configurazioni di sistema e ambiente: ambienti, domini, parametri dinamici, elenchi personalizzati, reti, liste bloccate, impostazioni del titolo della richiesta, modelli di email e logo.

    • Gestione di avvisi e richieste: tag delle richieste, fasi delle richieste, motivi di chiusura delle richieste, record SLA e richieste simulate.

    • Automazione e integrazioni della sicurezza: playbook (inclusi blocchi di workflow riutilizzabili), integrazioni, istanze di integrazione, connettori, job pianificati, mappature di ontologia e famiglie visive.

  • Sincronizzazione granulare degli asset (job di push e pull autonomi):

    Fornisce coppie di job push e pull dedicate per sette asset specifici. Utilizza i job autonomi durante lo sviluppo, l'aggiornamento o il test di singoli componenti senza sincronizzare o sovrascrivere il resto dell'ambiente:

    • Playbook e blocchi del workflow: Push Playbook e Pull Playbook

    • Connettori: Push Connectors e Pull Connector

    • Integrazioni: Push Integration e Pull Integration

    • Job pianificati: Push Job e Pull Jobs

    • Mappature dell'ontologia: Push Mappings e Pull Mappings

    • Famiglie di immagini personalizzate: Push Custom Family e Pull Custom Family

    • Scenari di test simulati: Push Simulated Cases e Pull Simulated Cases

Struttura delle directory del repository

L'esecuzione di un job Push Content iniziale (obbligatorio prima di eseguire qualsiasi job di pull su un branch nuovo o migrato) crea la seguente struttura di directory predefinita, i file di configurazione JSON, il file di metadati GitSync.json principale e la documentazione README.md generata nel repository Git remoto.

├── Connectors/
│   └── <Integration_Name>/
│       └── <Connector_Name>/
│           ├── <Connector_Name>.json
│           └── README.md
├── Integrations/
│   └── <Integration_Identifier>/
│       ├── Actions/
│       ├── Connectors/
│       ├── Dependencies/
│       ├── Jobs/
│       ├── Managers/
│       ├── Resources/
│       ├── Integration-<Integration_Identifier>.def
│       └── README.md
├── Jobs/
│   ├── <Job_Name>.json
│   └── README.md
├── Ontology/
│   ├── Mappings/
│   │   └── <Source_Name>/
│   │       ├── <Source_Name>_Records.json
│   │       ├── <Source_Name>_Rules.json
│   │       └── README.md
│   └── VisualFamilies/
│       └── <Family_Name>/
│           ├── <Family_Name>.json
│           ├── <Family_Name>.png
│           └── README.md
├── Playbooks/
│   ├── README.md
│   └── <Folder_Name>/
│       └── <Playbook_Or_Block_Name>/
│           ├── <Playbook_Or_Block_Name>.json
│           └── README.md
├── Settings/
│   ├── blacklists.json
│   ├── caseCloseCauses.json
│   ├── caseTitles.json
│   ├── customLists.json
│   ├── domains.json
│   ├── dynamicParameters.json
│   ├── emailTemplates.json
│   ├── environments.json
│   ├── integrationInstances.json
│   ├── logo.json
│   ├── networks.json
│   ├── slaDefinitions.json
│   ├── stages.json
│   └── tags.json
├── SimulatedCases/
│   └── <Case_Name>.case
├── GitSync.json
└── README.md

Job di sincronizzazione a livello di istanza

I job a livello di istanza sincronizzano le categorie di asset selezionate in un'intera istanza Google SecOps.

Push Content

Utilizza il job Push Content per esportare le categorie di asset selezionate dalla tua istanza di Google SecOps ed eseguirne il commit nel branch del repository Git configurato. Esegui sempre prima Push Content (Contenuti push) quando inizializzi un nuovo ramo.

Input del job

Per configurare il job Push Content, utilizza i seguenti parametri:

Parametro Descrizione
Commit

Obbligatorio.

Il messaggio di commit Git che descrive le modifiche ai contenuti esportati.

Commit Passwords

Facoltativo.

Se selezionato, il job esporta i parametri di tipo Password in testo non crittografato per le istanze di integrazione, i connettori e i job configurati.

Parametri di selezione degli asset:
Integrations, Playbooks, Jobs, Connectors, Simulated Cases, Integration Instances, Visual Families, Mappings, Environments, Dynamic Parameters, Logo, Case Tags, Case Stages, Case Title Settings, Case Close Reasons, Networks, Domains, Custom Lists, Email Templates, Blacklists, SLA Records

Facoltativo (pulsanti di attivazione/disattivazione booleani).

Seleziona ogni categoria di asset da includere nell'esportazione.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository configurato nell'istanza di integrazione.

Branch

Facoltativo.

Esegue l'override del branch del repository configurato nell'istanza di integrazione.

Commit Author

Facoltativo.

Esegue l'override dell'autore del commit configurato nell'istanza di integrazione. Deve utilizzare il formato Name &lt;email@domain.com&gt;.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta dell'host SSH configurata nell'istanza di integrazione.

Output dei job

Il job scrive i file di configurazione JSON e i riepiloghi README.md nel branch Git di destinazione nella gerarchia di directory standard (/Playbooks, /Connectors, /Integrations, /Jobs, /Ontology/Mappings, /Ontology/VisualFamilies, /SimulatedCases e /Settings) e genera i log di esecuzione nella console del runner del job. Le integrazioni personalizzate vengono esportate come pacchetti completi, mentre le integrazioni commerciali esportano solo script personalizzati o modifiche aggiunte all'integrazione.

Pull Content

Utilizza il job Pull Content per recuperare le categorie di configurazione selezionate dal branch del repository Git configurato e applicarle alla piattaforma Google SecOps.

Input del job

Per configurare il job Pull Content, utilizza i seguenti parametri:

Parametro Descrizione
Parametri di selezione degli asset:
Integrations, Playbooks, Jobs, Connectors, Simulated Cases, Integration Instances, Visual Families, Mappings, Environments, Dynamic Parameters, Logo, Case Tags, Case Stages, Case Title Settings, Case Close Reasons, Networks, Domains, Custom Lists, Email Templates, Blacklists, SLA Records

Facoltativo (pulsanti di attivazione/disattivazione booleani).

Seleziona ogni categoria di asset che vuoi importare dal repository nel tuo ambiente.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository configurato nell'istanza di integrazione.

Branch

Facoltativo.

Esegue l'override del branch del repository configurato nell'istanza di integrazione.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta dell'host SSH configurata nell'istanza di integrazione.

Output dei job

Il job importa le definizioni del repository selezionate nella piattaforma, crea o aggiorna istanze di integrazione, playbook, connettori, job, mappature di ontologie e impostazioni e genera log di esecuzione nella console di esecuzione dei job.

Job di sincronizzazione autonomi

I job autonomi consentono la sincronizzazione granulare di asset specifici senza richiedere una sincronizzazione completa del repository.

Playbook per le notifiche push

Utilizza il job Push Playbook per esportare singoli playbook o blocchi di workflow riutilizzabili in Git.

Input del job

Per configurare il job Push Playbook, utilizza i seguenti parametri:

Parametro Descrizione
Commit

Obbligatorio.

Il messaggio di commit Git che descrive le modifiche al playbook.

Playbook Whitelist

Facoltativo.

Un elenco separato da virgole di nomi esatti di playbook o blocchi sensibili alle maiuscole da esportare. Fornisci Playbook Whitelist o Folders Whitelist.

Folders Whitelist

Facoltativo.

Un elenco separato da virgole di nomi di cartelle (categorie) di playbook. Vengono esportati tutti i playbook e i blocchi che si trovano all'interno di queste cartelle.

Include Playbook Blocks

Facoltativo.

Se selezionata, esporta i blocchi di workflow riutilizzabili insieme ai playbook selezionati, inclusi tutti i blocchi a cui viene fatto riferimento come passaggi all'interno di questi playbook.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Commit Author

Facoltativo.

Esegue l'override dell'autore del commit predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Readme Addon

Facoltativo.

Contenuti personalizzati aggiunti al file README.md generato per tutti i playbook di cui è stato eseguito il push in questa esecuzione e salvati nel file dei metadati GitSync.json principale.

Supporta sia la sintassi Markdown sia i template Jinja.

Output dei job

Esporta i playbook selezionati e i blocchi del workflow inclusi in /Playbooks/<Folder_Name>/<Playbook_Name>/ e aggiorna /Playbooks/README.md.

Playbook per il pull

Utilizza il job Pull Playbook per importare playbook o blocchi specifici da Git.

Input del job

Per configurare il job Pull Playbook, utilizza i seguenti parametri:

Parametro Descrizione
Playbook Whitelist

Obbligatorio.

Un elenco separato da virgole di nomi esatti di playbook o blocchi da importare dal repository.

Include Playbook Blocks

Facoltativo.

Se selezionata, importa automaticamente tutti i blocchi di workflow riutilizzabili a cui fanno riferimento i playbook selezionati.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Output dei job

Importa i playbook e i blocchi specificati da /Playbooks (o /Blocks) nella piattaforma, installando prima i blocchi di riferimento e poi i playbook principali.

Connettori push

Utilizza il job Push Connectors per esportare le configurazioni dei connettori in Git.

Input del job

Per configurare il job Push Connectors, utilizza i seguenti parametri:

Parametro Descrizione
Connectors

Obbligatorio.

Un elenco separato da virgole dei nomi visualizzati dei connettori da esportare.

Commit

Obbligatorio.

Il messaggio di commit Git.

Include Mappings

Facoltativo.

Se selezionata, esporta i record e le regole di mappatura dell'ontologia associati all'integrazione del connettore in /Ontology/Mappings.

Include Visual Families

Facoltativo.

Se selezionata, esporta le famiglie di elementi visivi personalizzati associate ai record di ontologia del connettore in /Ontology/VisualFamilies.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Commit Author

Facoltativo.

Esegue l'override dell'autore del commit predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Readme Addon

Facoltativo.

Contenuti personalizzati aggiunti al file README.md generato per tutti i connettori di cui è stato eseguito il push in questa esecuzione e salvati in GitSync.json.

Supporta sia la sintassi Markdown sia i template Jinja.

Output dei job

Esporta le impostazioni e le pianificazioni del connettore in /Connectors/<Integration_Name>/<Connector_Name>/ (insieme alle mappature dell'ontologia e alle famiglie visive associate, se selezionate).

Pull Connector

Utilizza il job Pull Connector per importare una configurazione del connettore da Git. Prima di eseguire questo job, assicurati che l'integrazione sottostante del connettore sia già installata nell'ambiente di destinazione.

Input del job

Per configurare il job Pull Connector, utilizza i seguenti parametri:

Parametro Descrizione
Connector Name

Obbligatorio.

Il nome visualizzato del connettore da importare dal repository.

Include Mappings

Facoltativo.

Se selezionata, importa le mappature dell'ontologia associate all'integrazione del connettore.

Include Visual Families

Facoltativo.

Se selezionata, importa le famiglie di immagini personalizzate associate all'integrazione del connettore.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Output dei job

Installa o aggiorna il connettore nell'ambiente di destinazione (insieme alle mappature o alle famiglie visive associate, se selezionate).

Integrazione push

Utilizza il job Push Integration per esportare in Git le integrazioni personalizzate o gli script personalizzati aggiunti alle integrazioni commerciali. Le integrazioni personalizzate vengono esportate come pacchetti di integrazione completi, mentre le integrazioni commerciali esportano solo script personalizzati o modifiche aggiunte all'integrazione.

Input del job

Per configurare il job Push Integration, utilizza i seguenti parametri:

Parametro Descrizione
Push Whitelist

Obbligatorio.

Un elenco separato da virgole di identificatori di integrazione da esportare.

Commit

Obbligatorio.

Il messaggio di commit Git.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Commit Author

Facoltativo.

Esegue l'override dell'autore del commit predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Readme Addon

Facoltativo.

Contenuti personalizzati aggiunti al file README.md generato per tutte le integrazioni inviate in questa esecuzione e salvati in GitSync.json.

Supporta sia la sintassi Markdown sia i template Jinja.

Output dei job

Esporta le definizioni di integrazione, gli script personalizzati (Actions/, Connectors/, Jobs/, Managers/), le dipendenze e la documentazione di README.md in /Integrations/<Integration_Identifier>/.

Integrazione pull

Utilizza il job Pull Integration per importare integrazioni personalizzate o script personalizzati per integrazioni commerciali da Git. Per le integrazioni commerciali, GitSync installa l'ultima versione dell'integrazione da Content Hub e vi salva gli script personalizzati.

Input del job

Per configurare il job Pull Integration, utilizza i seguenti parametri:

Parametro Descrizione
Install Whitelist

Obbligatorio.

Un elenco separato da virgole di identificatori di integrazione da importare dal repository.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Output dei job

Installa pacchetti di integrazione personalizzati o installa integrazioni commerciali da Content Hub e aggiorna i relativi script personalizzati nell'ambiente di destinazione.

Job push

Utilizza il job Push Job per esportare le configurazioni dei job della piattaforma pianificati in Git.

Input del job

Per configurare il job Push Job, utilizza i seguenti parametri:

Parametro Descrizione
Job Whitelist

Obbligatorio.

Un elenco separato da virgole dei nomi dei job pianificati da esportare.

Commit

Obbligatorio.

Il messaggio di commit Git.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Commit Author

Facoltativo.

Esegue l'override dell'autore del commit predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Readme Addon

Facoltativo.

Contenuti personalizzati aggiunti al file README.md generato per tutti i job inviati in questa esecuzione e salvati in GitSync.json.

Supporta sia la sintassi Markdown sia i template Jinja.

Output dei job

Esporta i parametri del job e gli intervalli di pianificazione in /Jobs/<Job_Name>.json e aggiorna /Jobs/README.md.

Job di pull

Utilizza il job Pull Jobs per importare i job della piattaforma pianificati da Git.

Input del job

Per configurare il job Pull Jobs, utilizza i seguenti parametri:

Parametro Descrizione
Job Whitelist

Obbligatorio.

Un elenco separato da virgole di nomi di job pianificati da importare dal repository.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Output dei job

Configura e registra i job pianificati specificati nell'utilità di pianificazione dei job della piattaforma.

Esegui il push delle mappature

Utilizza il job Push Mappings per esportare in Git i record e le regole di mappatura degli eventi dell'ontologia per un'origine specifica.

Input del job

Per configurare il job Push Mappings, utilizza i seguenti parametri:

Parametro Descrizione
Source

Obbligatorio.

L'origine dell'ontologia (nome dell'integrazione) di cui vuoi esportare i record e le regole di mappatura.

Commit

Obbligatorio.

Il messaggio di commit Git.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Commit Author

Facoltativo.

Esegue l'override dell'autore del commit predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Readme Addon

Facoltativo.

Contenuti personalizzati aggiunti al file README.md generato per tutte le mappature inviate in questa esecuzione e salvate in GitSync.json.

Supporta sia la sintassi Markdown sia i template Jinja.

Output dei job

Scrive i record dell'ontologia (<Source>_Records.json), le regole di mappatura (<Source>_Rules.json) e README.md in /Ontology/Mappings/<Source>/.

Esegui il pull delle mappature

Utilizza il job Pull Mappings per importare record e regole di mappatura dell'ontologia per un'origine specifica da Git.

Input del job

Per configurare il job Pull Mappings, utilizza i seguenti parametri:

Parametro Descrizione
Source

Obbligatorio.

L'origine dell'ontologia (nome dell'integrazione) di cui vuoi importare i record e le regole di mappatura.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Output dei job

Registra le regole di mappatura dell'ontologia e le assegnazioni delle famiglie visive nelle impostazioni dell'ontologia della piattaforma. Le mappature vengono visualizzate nella tabella Stato ontologia dopo l'importazione degli eventi corrispondenti.

Famiglia di push personalizzata

Utilizza il job Push Custom Family per esportare in Git le definizioni e le icone delle famiglie visive personalizzate.

Input del job

Per configurare il job Push Custom Family, utilizza i seguenti parametri:

Parametro Descrizione
Family Name

Obbligatorio.

Un elenco separato da virgole di nomi di famiglie di immagini personalizzate da esportare.

Commit

Obbligatorio.

Il messaggio di commit Git.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Commit Author

Facoltativo.

Esegue l'override dell'autore del commit predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Readme Addon

Facoltativo.

Contenuti personalizzati aggiunti al file README.md generato per tutte le famiglie di immagini personalizzate di cui è stato eseguito il push in questa esecuzione e salvati in GitSync.json.

Supporta sia la sintassi Markdown sia i template Jinja.

Output dei job

Esporta le definizioni della famiglia visiva (<Family_Name>.json), i file immagine delle icone (<Family_Name>.png) e README.md in /Ontology/VisualFamilies/<Family_Name>/.

Famiglia personalizzata di pull

Utilizza il job Pull Custom Family per importare una definizione e un'icona di famiglia visiva personalizzata da Git.

Input del job

Per configurare il job Pull Custom Family, utilizza i seguenti parametri:

Parametro Descrizione
Family Name

Obbligatorio.

Il nome esatto della famiglia visiva personalizzata da importare.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Output dei job

Importa la definizione e l'icona della famiglia visiva personalizzata nelle impostazioni dell'ontologia della piattaforma.

Invia richieste di simulazione

Utilizza il job Push Simulated Cases per esportare gli scenari di test simulati in Git.

Input del job

Per configurare il job Push Simulated Cases, utilizza i seguenti parametri:

Parametro Descrizione
Simulated Cases

Obbligatorio.

Un elenco separato da virgole di nomi di richieste simulate da esportare.

Commit

Obbligatorio.

Il messaggio di commit Git.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Commit Author

Facoltativo.

Esegue l'override dell'autore del commit predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Output dei job

Esporta i casi simulati come file .case in /SimulatedCases/<Case_Name>.case.

Esegui il pull delle richieste simulate

Utilizza il job Pull Simulated Cases per importare scenari di test simulati da Git.

Input del job

Per configurare il job Pull Simulated Cases, utilizza i seguenti parametri:

Parametro Descrizione
Simulated Cases

Obbligatorio.

Un elenco separato da virgole di nomi di richieste simulate da importare dal repository.

Repo URL

Facoltativo.

Esegue l'override dell'URL del repository predefinito.

Branch

Facoltativo.

Esegue l'override del branch predefinito.

Git Server Fingerprint

Facoltativo.

Esegue l'override dell'impronta digitale dell'host SSH predefinita.

Output dei job

Importa le richieste simulate specificate nel catalogo delle richieste simulate della piattaforma.

Risoluzione dei problemi

La tabella seguente fornisce i passaggi per la correzione degli errori di sincronizzazione comuni:

Messaggio di errore osservato Causa operativa Procedura di correzione
AttributeError: 'OnePlatformSoarApi' object has no attribute 'update_ide_item' o errori di sincronizzazione nella versione 53.0 di GitSync Esecuzione del pacchetto GitSync versione 53.0 regressivo, che contiene problemi di sincronizzazione noti con elementi IDE personalizzati e schemi JSON modificati. Esegui il rollback di GitSync alla versione 52.0 o esegui l'upgrade alla versione 54.0 in Content Hub e assicurati che il parametro Branch punti al branch del repository precedente alla versione 53. Per istruzioni passo passo, consulta Rollback alla versione 53.0 e compatibilità con le versioni 52.0/54.0.
Permission denied (publickey) o Host key verification failed (o Authentication failed for 'https://...') Errore di autenticazione Git causato da un formato delle credenziali non valido, da autorizzazioni in scrittura della chiave di deployment mancanti o da un'impronta host non corrispondente.
  • Autenticazione SSH: verifica che la chiave SSH privata sia convertita in una stringa base64 su una singola riga senza nuove righe o spazi vuoti finali. Verifica che la chiave pubblica corrispondente sia registrata nel tuo repository Git con accesso in scrittura.
  • Fingerprint host: se il pinning del fingerprint host è abilitato, verifica la stringa del fingerprint utilizzando ssh-keyscan -t rsa <hostname> e aggiorna il parametro Fingerprint server Git.
  • Autenticazione HTTPS: verifica che il tuo token di accesso personale (PAT) non sia scaduto e che abbia l'ambito di scrittura del repository.
403 Forbidden: Insufficient permissions to modify playbook (o Failed to push playbook: Access denied) Il playbook di destinazione ha autorizzazioni di accesso predefinite limitate (ad esempio Può visualizzare) e al ruolo SOC Administrator non sono state concesse le autorizzazioni Può modificare nel sistema di origine. In Google SecOps, vai a Playbook, seleziona il playbook interessato, apri le impostazioni del set di autorizzazioni e aggiungi il ruolo SOC Administrator con le autorizzazioni Può modificare (o configura i parametri facoltativi Nome utente SOAR e Password SOAR nell'istanza di integrazione GitSync). Per i passaggi dettagliati, consulta Configura le autorizzazioni del playbook.
Il job Pull Content o Pull Integration va in timeout dopo 5 minuti L'installazione di più integrazioni commerciali da Content Hub durante una singola operazione di pull ha superato il timeout di esecuzione del job di 5 minuti. Installa manualmente le integrazioni commerciali richieste dall'hub dei contenuti prima di eseguire Pull Content (Estrai contenuti) o esegui nuovamente il job Pull Content (Estrai contenuti) per continuare a importare gli asset rimanenti.
General error performing Job Pull Content (o 400 Bad Request/404 Not Found quando esegui il pull da un ramo del repository) Tentativo di eseguire il pull da un branch del repository non inizializzato o da un branch i cui file JSON sono stati esportati utilizzando lo schema GitSync versione 53.0 incompatibile.
  • Se il branch è stato modificato utilizzando GitSync versione 53.0, reimposta il parametro Branch sul branch del repository precedente alla versione 53 o ripristina il backup del branch precedente alla versione 53 (consulta Rollback della versione 53.0 e compatibilità con le versioni 52.0/54.0).
  • Se stai configurando un nuovo ramo nella versione 52.0 o 54.0, esegui prima un job Push Content completo per compilare il ramo prima di eseguire qualsiasi job di pull.
Playbook '<Playbook_Name>' is assigned to environment(s) that don't exist Un playbook o un blocco in fase di importazione è assegnato a un ambiente o a un gruppo di ambienti che non è stato creato nell'istanza di destinazione. Esegui Pull Content (Estrai contenuti) con l'opzione Environments (Ambienti) selezionata per prima oppure crea manualmente l'ambiente mancante in Settings > Environments (Impostazioni > Ambienti) nell'istanza di destinazione prima di estrarre i playbook.
Commit Author parameter must be in the following format: Name <example@gmail.com> Nel parametro Autore commit nell'istanza di integrazione o nella configurazione del job manca un indirizzo email tra parentesi angolari. Aggiorna il parametro Autore commit in modo che corrisponda al formato richiesto: Name <email@domain.com> (ad esempio, GitSync <gitsync@example.com>).
400 Bad Request o 409 Conflict durante l'importazione delle mappature dell'ontologia Le regole di mappatura degli eventi nel repository sono in conflitto con le regole di ontologia della piattaforma esistenti o sono state esportate utilizzando una versione di GitSync non compatibile. Esegui un nuovo job Push Mappings utilizzando GitSync versione 54.0 o 52.0 per riesportare le definizioni di mappatura o risolvere le regole di mappatura degli eventi duplicate in Settings > Ontology > Mapping Rules prima di eseguire nuovamente il job.

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