Sdílet prostřednictvím


Řešení potíží s konektorem AWS S3

Konektor Amazon Web Services (AWS) S3 umožňuje ingestovat protokoly služby AWS shromážděné v kontejnerech AWS S3 do služby Microsoft Sentinel. Typy protokolů, které v současné době podporujeme, jsou AWS CloudTrail, protokoly toku VPC a AWS GuardDuty.

Tento článek popisuje, jak rychle identifikovat příčinu problémů s konektorem AWS S3, abyste mohli najít kroky potřebné k jejich řešení.

Zjistěte, jak připojit Microsoft Sentinel k Amazon Web Services a ingestovat data protokolu služby AWS.

Microsoft Sentinel nepřijímá data z konektoru Amazon Web Services S3 nebo z některého z jeho datových typů.

Protokoly konektoru AWS S3 (nebo některého z jeho datových typů) se v pracovním prostoru služby Microsoft Sentinel nezobrazují déle než 30 minut od připojení konektoru.

Než začnete hledat příčinu a řešení, projděte si tyto důležité informace:

  • Příjem dat do pracovního prostoru může od okamžiku připojení konektoru trvat 20 až 30 minut.
  • Stav připojení konektoru signalizuje přítomnost pravidla shromažďování dat, ale neznamená jejich načtení. Pokud je stav konektoru Amazon Web Services S3 zelený, existuje pravidlo shromažďování pro jeden z datových typů, ale stále žádná data.

Určení příčiny vašeho problému

V této části se věnujeme těmto příčinám:

  1. Zásady oprávnění konektoru AWS S3 nejsou správně nastavené.
  2. Data se neingestují do kbelíku S3 v AWS.
  3. Amazon Simple Queue Service (SQS) v cloudu AWS nepřijímá oznámení z kbelíku S3.
  4. Nejde načíst data z SQS nebo S3 v cloudu AWS. U protokolů GuardDuty je problém způsobený nesprávnými oprávněními Služby správy klíčů.

Příčina 1: Zásady oprávnění konektoru AWS S3 nejsou správně nastavené.

Příčinou tohoto problému jsou nesprávná oprávnění v prostředí AWS.

Vytvoření zásad oprávnění

K nasazení datového konektoru AWS S3 potřebujete zásady oprávnění. Zkontrolujte požadovaná oprávnění a nastavte příslušná oprávnění.

Příčina 2: Relevantní data v kbelíku S3 neexistují.

Příslušné protokoly v kontejneru S3 neexistují.

Řešení: Vyhledejte protokoly a v případě potřeby protokoly exportujte.

  1. V AWS otevřete kbelík S3, vyhledejte příslušnou složku podle požadovaných protokolů a zkontrolujte, jestli ve složce nejsou nějaké soubory protokolu.
  2. Pokud data neexistují, došlo k problému s konfigurací AWS. V takovém případě musíte nakonfigurovat službu AWS pro export protokolů do kontejneru S3.

Příčina 3: Data S3 nepřišla na SQS

Data se úspěšně nepřenesla z S3 do SQS.

Řešení: Ověřte, že data přišla, a nakonfigurujte oznámení událostí.

  1. V AWS otevřete příslušnou službu SQS.
  2. Na kartě Monitorování by se měl zobrazit provoz ve widgetu Počet odeslaných zpráv. Pokud se ve službě SQS žádný provoz nezobrazuje, je problém v konfiguraci AWS.
  3. Ujistěte se, že definice oznamování událostí služby SQS obsahuje správné filtry dat (předponu a příponu).
    1. Pokud chcete zobrazit oznámení událostí, v kbelíku S3 vyberte kartu Vlastnosti a vyhledejte část Oznámení událostí.
    2. Pokud se tato část nezobrazí, vytvořte ji.
    3. Ověřte, že služba SQS má příslušné zásady získávání dat z kbelíku S3. SQS musí tuto zásadu obsahovat na kartě Zásady přístupu .

Příčina 4: Služba SQS nenačetla data

Služba SQS úspěšně nenačetla data S3.

Řešení: Ověřte, že služba SQS čte data.

  1. V AWS otevřete příslušnou službu SQS.

  2. Na kartě Monitorování by se měl zobrazit provoz ve widgetech Počet odstraněných zpráv a Počet přijatých zpráv.

  3. Jedna špička dat nestačí. Počkejte, až bude dostatek dat (několik špiček), a pak zkontrolujte problémy.

  4. Pokud je některý z widgetů prázdný, spuštěním následujícího dotazu zkontrolujte protokoly stavu:

    SentinelHealth 
    | where TimeGenerated > ago(1d)
    | where SentinelResourceKind in ('AmazonWebServicesCloudTrail', 'AmazonWebServicesS3')
    | where OperationName == 'Data fetch failure summary'
    | mv-expand TypeOfFailureDuringHour = ExtendedProperties["FailureSummary"]
    | extend StatusCode = TypeOfFailureDuringHour["StatusCode"]
    | extend StatusMessage = TypeOfFailureDuringHour["StatusMessage"]
    | project SentinelResourceKind, SentinelResourceName, StatusCode, StatusMessage, SentinelResourceId, TypeOfFailureDuringHour, ExtendedProperties
    
  5. Ujistěte se, že je povolená funkce sledování stavu:

    SentinelHealth 
    | take 20
    
  6. Pokud funkce sledování stavu není povolená, povolte ji.

Data z konektoru AWS S3 (nebo některého z jeho datových typů) se ve službě Microsoft Sentinel zobrazují se zpožděním delším než 30 minut.

K tomuto problému obvykle dochází, když Microsoft nemůže číst soubory ve složce S3. Microsoft nemůže číst soubory, protože jsou buď šifrované, nebo v nesprávném formátu. V těchto případech mnoho opakování nakonec způsobí zpoždění příjmu dat.

Určení příčiny vašeho problému

V této části se věnujeme těmto příčinám:

  • Šifrování protokolu není správně nastavené
  • Oznámení o událostech nejsou správně definovaná.
  • Chyby stavu nebo zakázání stavu

Příčina 1: Šifrování protokolu není správně nastavené

Pokud jsou protokoly plně nebo částečně zašifrované službou správy klíčů (KMS), nemusí mít služba Microsoft Sentinel pro tuto službu Správy klíčů oprávnění k dešifrování souborů.

Řešení: Kontrola šifrování protokolu

Ujistěte se, že služba Microsoft Sentinel má pro tuto službu Správy klíčů oprávnění k dešifrování souborů. Projděte si požadovaná oprávnění KMS pro protokoly GuardDuty a CloudTrail.

Příčina 2: Oznámení událostí nejsou správně nakonfigurovaná

Při konfiguraci oznámení událostí Amazon S3 musíte zadat, na které podporované typy událostí má Amazon S3 oznámení odesílat. Pokud v kontejneru Amazon S3 existuje typ události, který jste nezadali, Amazon S3 oznámení neodešle.

Řešení: Ověřte, že jsou oznámení událostí správně definovaná.

Pokud chcete ověřit, jestli jsou oznámení událostí z S3 do SQS správně definovaná, zkontrolujte, že:

  • Oznámení je definované z konkrétní složky, která obsahuje protokoly, a ne z hlavní složky, která obsahuje kbelík.
  • Oznámení je definováno s příponou .gz . Příklad:

Příčina 3: Chyby stavu nebo zakázání stavu

V protokolech stavu můžou být chyby nebo není povolená funkce stavu.

Řešení: Ověřte, že v protokolech stavu nejsou žádné chyby, a povolte stav.

  1. Spuštěním následujícího příkazu ověřte, že protokoly stavu neobsahují žádné chyby:

    SentinelHealth
    | where TimeGenerated between (ago(startTime)..ago(endTime))
    | where SentinelResourceKind  == "AmazonWebServicesS3"
    | where Status != "Success"
    | distinct TimeGenerated, OperationName, SentinelResourceName, Status, Description
    
  2. Ujistěte se, že je povolená funkce sledování stavu:

    SentinelHealth 
    | take 20
    
  3. Pokud funkce sledování stavu není povolená, povolte ji.

Další kroky

V tomto článku jste zjistili, jak rychle identifikovat příčiny a vyřešit běžné problémy s konektorem AWS S3.

Uvítáme zpětnou vazbu, návrhy, žádosti o funkce, zprávy o chybách nebo vylepšení a doplňky. Přejděte do úložiště Microsoft Sentinel na GitHubu , vytvořte problém nebo fork a nahrajte příspěvek.