Hantera innehåll som kod med Microsoft Sentinel lagringsplatser

Med Microsoft Sentinel-repositorier kan du driftsätta och hantera anpassat innehåll för Sentinel från ett externt källkodsförvar för kontinuerlig integrering och kontinuerlig leverans (CI/CD). Den här automatiseringen tar bort behovet av manuella processer för att uppdatera och distribuera ditt anpassade innehåll på arbetsytor. En delmängd av innehåll som kod är identifieringar som kod (DaC). Microsoft Sentinel Repositories implementerar DaC också.

Mer information om Sentinel innehåll finns i Om Microsoft Sentinel innehåll och lösningar.

Så här fungerar Microsoft Sentinel lagringsplatser

Du kan distribuera dessa Microsoft Sentinel anpassade innehållstyper från en extern lagringsplats för källkontroll som du ansluter till Microsoft Sentinel:

  • Analysregler
  • Automatiseringsregler
  • Regler för anpassad identifiering (förhandsversion)
  • Jaktfrågor
  • Parser
  • Spelböcker
  • Arbetsböcker

Uppdateringar du gör i innehållet i dina Microsoft Sentinel-lagringsplatser synkroniseras till din Microsoft Sentinel arbetsyta och skriver över alla ändringar som du gör i innehållet via Microsoft Sentinel-portalen. Dina Microsoft Sentinel lagringsplatser blir din enda sanningskälla för anpassat innehåll på de anslutna arbetsytorna.

Planera din lagringsplatsanslutning

Microsoft Sentinel-repo kräver noggrann planering för att säkerställa att du har rätt behörigheter mellan arbetsytan och det repo som du vill ansluta.

  • Endast anslutningar till GitHub- och Azure DevOps-lagringsplatser stöds.
  • Samarbetspartners åtkomst till din GitHub-lagringsplats eller projektadministratörsåtkomst till din Azure DevOps-lagringsplats krävs.
  • Microsoft Sentinel-appen behöver behörighet till ditt repo.
  • Åtgärder måste vara aktiverade för GitHub.
  • Pipelines måste vara aktiverade för Azure DevOps.
  • En anslutning till Azure DevOps måste vara i samma klientorganisation som din Microsoft Sentinel-arbetsyta.

För att skapa en anslutning till en lagringsplats krävs en ägarroll i resursgruppen som innehåller din Microsoft Sentinel arbetsyta.

Om du hittar innehåll på en offentlig lagringsplats där du inte är deltagare kan du först importera, förgrena eller klona innehållet till en lagringsplats där du är deltagare. Anslut sedan lagringsplatsen till din Microsoft Sentinel arbetsyta. Mer information finns i Distribuera anpassat innehåll från din lagringsplats.

Maximalt antal anslutningar och distributioner

  • Varje Microsoft Sentinel arbetsyta är för närvarande begränsad till fem lagringsplatsanslutningar.
  • Varje Azure resursgrupp är begränsad till 800 distributioner i distributionshistoriken. Om du har en stor mängd malldistributioner i en eller flera av dina resursgrupper kan du se felet Deployment QuotaExceeded . Mer information finns i DeploymentQuotaExceeded i dokumentationen för Azure Resource Manager-mallar.

Planera lagringsplatsens innehåll

Microsoft Sentinel lagringsplatser stöder distribution av innehåll som du lagrar som Bicep-filer eller arm-mallar (Azure Resource Manager). Vi rekommenderar att du använder Bicep, vilket är mer intuitivt och gör det enklare att beskriva Azure resurser och Microsoft Sentinel innehåll.

Mallen för varje innehållstyp har en specifik struktur och specifika parameternamn, så som beskrivs i referensen för Sentinel-resursmallar. Exempel på varje innehållstyp finns i LagringsplatserSampleContent-lagringsplats.

Vi tillhandahöll en exempellagringsplats med mallar för var och en av de innehållstyper som visas. Lagringsplatsen visar också hur du använder avancerade funktioner i lagringsplatsanslutningar. Mer information finns i exempel på Microsoft Sentinel CI/CD-lagringsplatser.

Skärmbild av en lyckad lagringsplatsanslutning. LagringsplatserSampleContent visas. Den här skärmbilden är efter att exemplet har importerats från SentinelCICD-lagringsplatsen till en privat GitHub-lagringsplats i FourthCoffee-organisationen.

Även om du kan skapa mallar från grunden är det ofta enklare att utgå antingen från YAML-filerna i Sentinels offentliga GitHub-lagringsplats eller från färdigt Microsoft Sentinel-innehåll som ingår direkt. Den här tabellen beskriver hur du konverterar en ARM-mall för användning med Microsoft Sentinel lagringsplatser.

Innehållstyp Konvertera från Sentinel Public YAML Exportera från Sentinel Referens för mallar Exempelmallar
Analysregler PowerShell-skript Exportera funktion eller PowerShell-skript Referens ARM-mallar
Automatiseringsregler EJ TILLÄMPLIGT Exportera funktion eller PowerShell-skript Referens EJ TILLÄMPLIGT
Jaktfrågor PowerShell-skript Azure CLI-kommandon Referens Exempelinnehåll
Parser ASIM PowerShell-skript Azure CLI-kommandon Referens Mallar
Spelböcker EJ TILLÄMPLIGT PowerShell-verktyg Referens EJ TILLÄMPLIGT
Arbetsböcker EJ TILLÄMPLIGT Exportera arbetsböcker som ARM-mallar Referens EJ TILLÄMPLIGT

Viktigt

Att tänka på när det gäller Bicep:

  • Om du vill använda Bicep-filer måste lagringsplatsanslutningen uppdateras om anslutningen skapades före den 1 november 2024. Anslutningar till databaser måste tas bort och återskapas för att kunna uppdatera.
  • Bicep-filer stöder inte egenskapen id . När du dekompilerar ARM JSON till Bicep kontrollerar du att du inte har den här egenskapen. Till exempel har analysregelmallar som exporteras från Microsoft Sentinel den id egenskap som behöver tas bort.
  • Ändra ARM JSON-schemat till version 2019-04-01 för bästa resultat vid dekompilering.

Analysregler som distribueras med funktionen Microsoft Sentinel Lagringsplatser kan endast använda frågor mellan arbetsytor om målarbetsytan finns i samma resursgrupp som arbetsytan som är ansluten till lagringsplatsen.

Information om hur du skapar anpassat innehåll från grunden finns i relevant Microsoft Sentinel GitHub-wiki för varje innehållstyp.

Distribuera anpassade identifieringsregler som kod (förhandsversion)

Viktigt

Stöd för anpassade identifieringsregler i Microsoft Sentinel lagringsplatser finns för närvarande i förhandsversion. Se Tilläggsvillkor för användning av Microsoft Azure-förhandsversioner för juridiska villkor som gäller för Azure-funktioner som är i beta, förhandsvisning eller på annat sätt ännu inte släppta för allmän tillgänglighet.

Du kan hantera anpassade identifieringsregler som kod på lagringsplatsen med hjälp av Microsoft Security BICEP-tillägget. Anpassade identifieringsregler använder ett annat BICEP-tillägg och en annan resursprovider än andra Microsoft Sentinel innehållstyper.

Krav för anpassade identifieringsregler

Förutom standardkraven för lagringsplatsens anslutning kräver anpassade identifieringsregler:

  • En Microsoft 365 E5 licens (eller motsvarande licens som innehåller Microsoft Defender XDR).
  • Microsoft Sentinel-arbetsytor som integrerats i Microsoft Defender-portalen.

Konfigurera Microsoft Security BICEP-tillägget

Anpassade identifieringsregler kräver Microsoft Security BICEP-tillägget. Skapa en bicepconfig.json-fil i rotkatalogen i ditt källkodsförråd:

{
  "extensions": {
    "MicrosoftSecurity": "br:mcr.microsoft.com/bicep/extensions/microsoftsecurity:v1.0.1"
  }
}

Den här konfigurationen krävs för både lagringsplatsbaserad synkronisering och direkt BICEP-distribution.

Skapa en BICEP-fil för en anpassad detekteringsregel

Definiera en anpassad identifieringsregel med hjälp av Microsoft.Security/detectionRules resurstypen. Skapa en .bicep fil (till exempel detectionRule.bicep) med följande struktur:

extension MicrosoftSecurity

resource detectionRule 'Microsoft.Security/detectionRules@2026-06-01-preview' = {
  id: 'custom-rule-id'
  displayName: 'Custom Rule Display Name'
  status: 'enabled'
  queryCondition: {
    queryText: 'DeviceProcessEvents | take 10 | project DeviceId, Timestamp, FileName'
  }
  schedule: {
    frequency: 'PT1H'
  }
  detectionAction: {
    alertTemplate: {
      title: '<ruleTitle>'
      description: 'Custom detection rule'
      severity: 'medium'
      tactics: [
        {
          tactic: 'Execution'
          techniques: [
            {
              technique: 'T1059'
            }
          ]
        }
      ]
      entityMappings: {
        hosts: [
          {
            id: 'h'
            deviceIdColumn: 'DeviceId'
          }
        ]
      }
    }
  }
}

Regler identifieras unikt av deras ID, som måste anges i mallen.

Distribuera anpassade identifieringsregler

Du kan distribuera anpassade identifieringsregler med någon av följande metoder.

Distributionsmetod Beskrivning Vem som kör distributionen
Microsoft Sentinel lagringsplatser (synkronisering) Automatisk synkronisering från din GitHub- eller Azure DevOps-lagringsplats till Microsoft Sentinel. Sentinel kör driftsättningen automatiskt vid varje commit.
BICEP CLI (direkt) Distribuera med hjälp av az deployment group create från Azure CLI. Du kör distributionen manuellt eller från en anpassad pipeline.

Alternativ 1: Distribuera med Microsoft Sentinel lagringsplatser

  1. Checka in BICEP-filen och bicepconfig.json i din GitHub- eller Azure DevOps-lagringsplats.
  2. I Microsoft Defender-portalen navigerar du till Microsoft Sentinel>Content-hanteringsdatabaser>.
  3. Skapa en ny lagringsplatsanslutning eller redigera en befintlig.
  4. I anslutningsinställningarna väljer du Anpassade identifieringsregler under Innehållstyper.
  5. Spara anslutningen.

När det är aktiverat synkroniserar Microsoft Sentinel anpassade identifieringsregler från lagringsplatsen automatiskt.

Alternativ 2: Distribuera med BICEP direkt

Kör följande Azure CLI-kommando:

az deployment group create \
  --resource-group <RESOURCE_GROUP> \
  --template-file detectionRule.bicep \
  --name mtp-deployment

Kontrollera att distributionen har slutförts i resursgruppen.

Verifiera utplaceringen

Efter driftsättning med något av följande alternativ:

  1. Bekräfta att identifieringsregeln visas i listan över anpassade identifieringsregler i Microsoft Defender-portalen.
  2. Kontrollera att regeln är aktiverad och ger förväntade resultat.
  3. Om du använde synkronisering av lagringsplats (alternativ 1) gör du ändringar på lagringsplatsen för att verifiera synkroniseringsbeteendet.

Begränsningar i förhandsversionen

Under förhandsversionen:

  • Anpassad frekvens för Microsoft Sentinel data stöds inte.
  • Anpassade uppgifter stöds inte.

Förbättra prestanda med smarta distributioner

Tips

För att säkerställa att smarta distributioner fungerar i GitHub måste arbetsflöden ha läs- och skrivbehörighet på din lagringsplats. Mer information finns i Hantera GitHub Actions inställningar för en lagringsplats.

Funktionen för smarta distributioner är en backend-funktion som förbättrar prestandan genom att aktivt spåra ändringar som gjorts i innehållsfilerna på en ansluten lagringsplats. Den använder en CSV-fil i .sentinel mappen på din lagringsplats för att granska varje incheckning. Arbetsflödet undviker omdistribution av innehåll som inte har ändrats sedan den senaste distributionen. Den här processen förbättrar distributionsprestandan och förhindrar manipulering av oförändrat innehåll på din arbetsyta, till exempel återställning av dynamiska scheman för dina analysregler.

Smarta distributioner är aktiverade som standard för nyligen skapade anslutningar. Om du föredrar allt källkontrollinnehåll som distribueras varje gång en distribution utlöses, oavsett om innehållet har ändrats eller inte, ändrar du arbetsflödet för att inaktivera smarta distributioner. Mer information finns i Anpassa arbetsflödet eller pipelinen.

Överväg anpassningsalternativ för distribution

Överväg följande anpassningsalternativ när du distribuerar innehåll med Microsoft Sentinel lagringsplatser.

Anpassa arbetsflödet eller pipelinen

Anpassa arbetsflödet eller pipelinen på något av följande sätt:

  • konfigurera olika distributionsutlösare
  • distribuera innehåll endast från en specifik rotmapp för en viss arbetsyta
  • schemalägga arbetsflödet så att det körs regelbundet
  • kombinera olika arbetsflödeshändelser tillsammans
  • stäng av smarta distributioner

Dessa anpassningar definieras i en .yml fil som är specifik för ditt arbetsflöde eller din pipeline. Mer information om hur du implementerar finns i Anpassa lagringsplatsdistributioner

Anpassa driftsättningen

När arbetsflödet eller pipelinen har utlösts stöder distributionen följande scenarier:

  • prioritera innehåll som ska distribueras före resten av lagringsplatsens innehåll
  • exkludera innehåll från distribution
  • ange parameterfiler för ARM-mallar

De här alternativen är tillgängliga via en funktion i PowerShell-distributionsskriptet som anropas från arbetsflödet eller pipelinen. Mer information om hur du implementerar dessa anpassningar finns i Anpassa lagringsplatsdistributioner.

Hantera Microsoft Sentinel lagringsplatser med hjälp av API:et

Information om hur du hanterar Microsoft Sentinel lagringsplatser med hjälp av API:et finns i åtgärderna Källkontroll och Källkontroller i Microsoft Sentinel REST API.

Viktigt

Från och med juni 2026 stöds inte längre äldre API-versioner som används av Microsoft Sentinel lagringsplatser. Om du använder API:er för att skapa och hantera lagringsplatsanslutningar övergår du till API-version 2025-09-01, 2025-06-01 eller 2025-07-01-preview före den 15 juni 2026 för att undvika avbrott i tjänsten. Befintliga lagringsplatsanslutningar påverkas inte.

Nästa steg

Få fler exempel och stegvisa instruktioner om hur du distribuerar Microsoft Sentinel lagringsplatser.