Condividi tramite


Gestire il contenuto come codice con i repository di Microsoft Sentinel (anteprima)

I repository di Microsoft Sentinel consentono di distribuire e gestire contenuto di Sentinel personalizzato da un repository di controllo del codice sorgente esterno per l'integrazione continua/il recapito continuo (CI/CD). Questa automazione elimina la necessità di processi manuali per aggiornare e distribuire il contenuto personalizzato tra aree di lavoro. Un sottoinsieme di contenuti come codice è costituito dai rilevamenti come codice (DaC). Anche la funzionalità Repository di Microsoft Sentinel implementa l'applicazione livello dati.

Per altre informazioni sul contenuto di Sentinel, vedere Informazioni sul contenuto e sulle soluzioni di Microsoft Sentinel.

Importante

La funzionalità Repository di Microsoft Sentinel è attualmente disponibile in ANTEPRIMA. Vedere le Condizioni per l'utilizzo supplementari per le anteprime di Microsoft Azure per altre condizioni legali applicabili alle funzionalità di Azure in versione beta, in anteprima o non ancora rilasciate nella disponibilità generale.

Funzionamento dei repository di Microsoft Sentinel

È possibile distribuire questi tipi di contenuto personalizzati di Microsoft Sentinel da un repository di controllo del codice sorgente esterno connesso a Microsoft Sentinel:

  • Regole di analisi
  • Regole di automazione
  • Ricerca di query
  • Parser
  • Playbook
  • Workbooks

Gli aggiornamenti apportati al contenuto nei repository di Microsoft Sentinel vengono sincronizzati con l'area di lavoro di Microsoft Sentinel e sovrascrivono le modifiche apportate al contenuto tramite il portale di Microsoft Sentinel. I repository di Microsoft Sentinel diventano la "singola fonte di verità" per il contenuto personalizzato nelle aree di lavoro connesse.

Pianificare la connessione al repository

I repository di Microsoft Sentinel richiedono un'attenta pianificazione per riuscire ad acquisire le autorizzazioni appropriate dall'area di lavoro al repository che si vuole connettere.

  • Sono supportate solo connessioni ai repository GitHub e Azure DevOps.
  • È necessario l’accesso come collaboratore al repository GitHub o come amministratore del progetto al repository Azure DevOps.
  • L'applicazione Microsoft Sentinel deve disporre dell'autorizzazione al repository.
  • Per GitHub deve essere abilitato Azioni.
  • Per Azure DevOps deve essere abilitato Pipelines.
  • Una connessione ad Azure DevOps deve trovarsi nello stesso tenant dell'area di lavoro di Microsoft Sentinel.

La creazione di una connessione a un repository richiede un ruolo Proprietario nel gruppo di risorse che contiene l'area di lavoro di Microsoft Sentinel. Se non è possibile usare il ruolo Proprietario nell'ambiente in uso, usare la combinazione di ruoli Amministratore accesso utenti e Collaboratore Sentinel per creare la connessione.

Se si trova contenuto in un repository pubblico di cui non si è collaboratore, accertarsi prima di importare, creare una copia tramite fork o clonare il contenuto in un repository di cui si è collaboratore. Connettere quindi il repository alla propria area di lavoro di Microsoft Sentinel. Per altre informazioni, vedere Distribuire contenuto personalizzato dal repository.

Numero massimo di connessioni e distribuzioni

  • Ogni area di lavoro di Microsoft Sentinel è attualmente limitata a cinque connessioni al repository.
  • Ogni gruppo di risorse di Azure è limitato a 800 distribuzioni nella cronologia di distribuzione. Se si dispone di un volume elevato di distribuzioni di modelli in uno o più gruppi di risorse, è possibile che venga visualizzato l'errore Deployment QuotaExceeded. Per altre informazioni, vedere DeploymentQuotaExceeded nella documentazione dei modelli di Azure Resource Manager.

Pianificare il contenuto del repository

I repository di Microsoft Sentinel supportano la distribuzione del contenuto archiviato come file Bicep o modelli di Azure Resource Manager (ARM). È consigliabile usare Bicep, che è più intuitivo e semplifica la descrizione delle risorse di Azure e del contenuto di Microsoft Sentinel.

Il modello per ogni tipo di contenuto ha una struttura e un nome di parametro specifici, come documentato nel riferimento al modello di risorse di Sentinel. Per esempi di ogni tipo di contenuto, vedere il repository RepositoriesSampleContent.

È stato fornito un repository di esempio con modelli per ognuno dei tipi di contenuto elencati. Il repository dimostra anche come usare le funzionalità avanzate delle connessioni ai repository. Per altre informazioni, vedere l'esempio di repository CI/CD di Microsoft Sentinel.

Screenshot di una connessione al repository riuscita. Viene visualizzato RepositorySampleContent. Questo screenshot è dopo l'importazione dell'esempio dal repository SentinelCICD in un repository GitHub privato nell'organizzazione FourthCoffee.

Anche se è possibile creare modelli da zero, è spesso più facile iniziare dai file YAML del repository GitHub pubblico di Sentinel o dal contenuto esistente di Microsoft Sentinel. Questa tabella illustra come convertire un modello ARM da usare con i repository di Microsoft Sentinel.

Tipo di contenuto Effettuare la conversione da YAML pubblico di Sentinel Esportare da Sentinel Informazioni di riferimento sul modello Modelli di esempio
Regole analitiche Script di PowerShell Esportare la funzionalità o lo script di PowerShell Riferimento Modelli ARM
Regole di automazione N/A Funzione di esportazione o script PowerShell Riferimento N/A
Ricerca di query Script di PowerShell Comandi dell'interfaccia della riga di comando di Azure Riferimento Contenuto di esempio
Parser Script di PowerShell ASIM Comandi dell'interfaccia della riga di comando di Azure Riferimento Templates
Playbooks N/A Utilità PowerShell Riferimento N/A
Quaderni N/A Esportazione di cartelle di lavoro come modelli ARM Riferimento N/A

Importante

Considerazioni su Bicep:

  • Per usare i file Bicep, è necessario aggiornare la connessione ai repository se la connessione è stata creata prima del 1° novembre 2024. Per eseguire l'aggiornamento, è necessario rimuovere e ricreare le connessioni dei repository.
  • I file Bicep non supportano la id proprietà . Quando si decompila un modello JSON di ARM in Bicep, assicurarsi che non sia presente questa proprietà. I modelli di regole analitiche esportati da Microsoft Sentinel, ad esempio, contengono la proprietà id che deve essere rimossa.
  • Per ottenere risultati ottimali durante la decompilazione, modificare lo schema JSON di ARM alla versione 2019-04-01.

Importante

Le regole analitiche distribuite usando la funzionalità Repository di Microsoft Sentinel possono usare query tra aree di lavoro solo se l'area di lavoro di destinazione si trova nello stesso gruppo di risorse dell'area di lavoro connessa al repository.

Per informazioni sulla creazione di contenuto personalizzato da zero, vedere il wiki GitHub di Microsoft Sentinel pertinente per ogni tipo di contenuto.

Migliorare le prestazioni con distribuzioni intelligenti

Suggerimento

Per garantire il funzionamento delle distribuzioni intelligenti in GitHub, i flussi di lavoro devono disporre delle autorizzazioni di lettura e scrittura per il repository. Per altri dettagli, vedere Gestione delle impostazioni di GitHub Actions per un repository .

La funzionalità di distribuzione intelligente è una funzionalità back-end che migliora le prestazioni monitorando attivamente le modifiche apportate ai file di contenuto di un repository connesso. Usa un file CSV all'interno della cartella .sentinel del repository per controllare ogni commit. Questo flusso di lavoro evita che vengano ridistribuiti i contenuti che non sono stati modificati dall'ultima distribuzione. Questo processo migliora le prestazioni di distribuzione e impedisce la manomissione dei contenuti rimasti invariati nell'area di lavoro, come il ripristino di pianificazioni dinamiche delle regole di analisi.

Le distribuzioni intelligenti sono abilitate per impostazione predefinita nelle connessioni appena create. Se si preferisce che l’intero contenuto di controllo del codice sorgente venga distribuito ogni volta che viene attivata una distribuzione, indipendentemente dal fatto che il contenuto sia stato modificato o meno, modificare il flusso di lavoro in modo da disabilitare le distribuzioni intelligenti. Per altre informazioni, vedere Personalizzare il flusso di lavoro o la pipeline.

Prendere in considerazione le opzioni di personalizzazione della distribuzione

Quando si distribuisce contenuto con i repository di Microsoft Sentinel, prendere in considerazione le opzioni di personalizzazione seguenti.

Personalizzare il flusso di lavoro o la pipeline

Personalizzare il flusso di lavoro o la pipeline in uno dei modi seguenti:

  • configurare trigger di distribuzione diversi
  • distribuire contenuti soltanto da una cartella radice specifica per una determinata area di lavoro
  • pianificare l'esecuzione periodica del flusso di lavoro
  • combinare insieme diversi eventi del flusso di lavoro
  • disattivare le distribuzioni intelligenti

Queste personalizzazioni vengono definite in un file .yml specifico del flusso di lavoro o della pipeline. Per altre informazioni su come implementare, vedere Personalizzare le distribuzioni di repository

Personalizzare la distribuzione

Dopo l'attivazione del flusso di lavoro o della pipeline, la distribuzione supporta gli scenari seguenti:

  • classificare i contenuti del repository da distribuire in base al grado di priorità
  • escludere il contenuto dalla distribuzione
  • specificare i file dei parametri del modello di Resource Manager

Queste opzioni sono disponibili tramite una funzionalità dello script di distribuzione di PowerShell chiamato dal flusso di lavoro o dalla pipeline. Per altre informazioni su come implementare queste personalizzazioni, vedere Personalizzare le distribuzioni del repository.

Passaggi successivi

Ottenere altri esempi e istruzioni dettagliate sulla distribuzione dei repository di Microsoft Sentinel.