Microsoft Sentinel Provider -luokka

-luokan avulla voit käsitellä Microsoft Sentinel Data Lake -tallennustilassa. Sen MicrosoftSentinelProvider avulla voit esimerkiksi luetteloita tietokantoja, lukea taulukoita ja tallentaa tietoja. Tämä luokka on suunniteltu toimimaan Jupyter-muistikirjojen Spark-istuntojen kanssa, ja se tarjoaa menetelmiä Microsoft Sentinel Data Lakeen tallennettujen tietojen käyttöön ja käsittelyyn.

Tämä luokka on osa moduulia sentinel.datalake ja tarjoaa menetelmiä Data Lake -järjestelmän kanssa vuorovaikutukseen. Jos haluat käyttää tätä luokkaa, tuo se ja luo luokan esiintymä istunnon avulla spark .

from sentinel_lake.providers import MicrosoftSentinelProvider
data_provider = MicrosoftSentinelProvider(spark)      

Sinulla on oltava tarvittavat oikeudet tietojen lukemisen ja kirjoittamisen kaltaisten toimintojen suorittamiseen. Lisätietoja käyttöoikeuksista on kohdassa Microsoft Sentinel Data Lake -käyttöoikeudet.

Menetelmiä

-MicrosoftSentinelProviderluokka tarjoaa useita tapoja käsitellä Microsoft Sentinel Data Lake -tallennustilassa. Jokaisessa alla olevassa menetelmässä oletetaan, että MicrosoftSentinelProvider luokka on tuotu ja esiintymä on luotu käyttäen istuntoa spark seuraavasti:

from sentinel_lake.providers import MicrosoftSentinelProvider
data_provider = MicrosoftSentinelProvider(spark) 

list_databases

Luettele kaikki käytettävissä olevat tietokannat ja Microsoft Sentinel työtilat.

data_provider.list_databases()    

Palauttaa:

  • list[str]: tietokantojen nimien (työtilojen) luettelo, joka on käytettävissä Microsoft Sentinel Data Lake -tallennustilassa.

list_tables

Luettele kaikki tietyn tietokannan taulukot.

data_provider.list_tables([database_name],[database_id])
   

Parametrit:

  • database_name (str, optional): Sen tietokannan (työtilan) nimi, josta taulukot luetellaan. JOS tätä ei määritetä, järjestelmätaulukoiden tietokantaa käytetään.
  • database_id (str, optional): Tietokannan yksilöllinen tunnus, jos työtilojen nimet eivät ole yksilöllisiä.

Palauttaa:

  • list[str]: Määritetyn tietokannan taulukoiden nimien luettelo.

Esimerkkejä:

Luetteloi kaikki järjestelmätaulukoiden tietokannan taulukot:

data_provider.list_tables() 

Luettele kaikki tietyn tietokannan taulukot. database_id Määritä -tietokanta, jos työtilasi nimet eivät ole yksilöllisiä:

data_provider.list_tables("workspace1", database_id="ab1111112222ab333333")

read_table

Lataa DataFrame Lake-järven taulukosta.

data_provider.read_table({table}, [database_name], [database_id])

Parametrit:

  • table_name (str): Luettavan taulukon nimi.
  • database_name (str, optional): Taulukon sisältävän tietokannan nimi (työtila). Oletusarvo on System tables.
  • database_id (str, optional): Tietokannan yksilöllinen tunnus, jos työtilojen nimet eivät ole yksilöllisiä.

Palauttaa:

  • DataFrame: DataFrame, joka sisältää määritetyn taulukon tiedot.

Esimerkki:

df = data_provider.read_table("EntraGroups", "Workspace001")

save_as_table

Kirjoita DataFrame hallittuna taulukkona. Voit kirjoittaa Lake Tier -tasolle taulukon nimen jälkiliitteen tai _SPRK analytiikkatasolle käyttämällä _SPRK_CL jälkiliitettä.

Huomautus

Analytiikkatasolla save_as_table tuetaan append vain tilaa. overwrite -tilaa tuetaan vain Lake-tasossa.

data_provider.save_as_table({DataFrame}, {table_name}, [database_name], [database_id], [write_options])

Parametrit:

  • DataFrame (DataFrame): Taulukkona kirjoitettava DataFrame.
  • table_name (str): Luotavan tai korvattavan taulukon nimi.
  • database_name (str, valinnainen): Sen tietokannan (työtila) nimi, johon taulukko tallennetaan. Oletusarvo on System tables.
  • database_id (str, optional, vain analytiikkataso): Tietokannan yksilöllinen tunnus analytiikkatasolla, jos työtilojen nimet eivät ole yksilöllisiä.
  • write_options (sanelu, valinnainen): Vaihtoehdot taulukon kirjoittamiseen. Tuetut asetukset: - tila: append tai overwrite (oletus: append) overwrite -tilaa tuetaan vain lake-tasolla. - partitionBy: osioitavien sarakkeiden luettelo esimerkin mukaan: {'mode': 'liitä', 'partitionBy': ['date']}

Palauttaa:

  • str: Kirjoitustoiminnon suoritustunnus.

Huomautus

Osiointiasetus koskee vain järjestelmätaulukoiden tietokannan (työtilan) mukautettuja taulukoita Data Lake -tasolla. Sitä ei tueta analytiikkatason taulukoissa eikä muiden tietokantojen taulukoissa kuin Data Lake -tason järjestelmätaulukoiden tietokannassa.

Esimerkkejä:

Luo uusi mukautettu taulukko työtilan Data Lake -tasolla System tables .

data_provider.save_as_table(dataframe, "CustomTable1_SPRK", "System tables")

Korvaa taulukko järjestelmätaulukoiden tietokannassa (työtilassa) Data Lake -tasolla.

write_options = {
    'mode': 'overwrite'
}
data_provider.save_as_table(dataframe, "CustomTable1_SPRK", write_options=write_options)

Luo uusi mukautettu taulukko analytiikkatasolla.

data_provider.save_as_table(dataframe, "CustomTable1_SPRK_CL", "analyticstierworkspace")

Liitä olemassa olevaan mukautettuun taulukkoon analytiikkatasolla.

write_options = {
    'mode': 'append'
}
data_provider.save_as_table(dataframe, "CustomTable1_SPRK_CL", "analyticstierworkspace", write_options)

Liitä järjestelmätaulukoiden tietokantaan, jossa on osiointi sarakkeessa TimeGenerated .

data_loader.save_as_table(dataframe, "table1", write_options: {'mode': 'append', 'partitionBy': ['TimeGenerated']})

delete_table

Poistaa taulukon Lake-tasolta. Voit poistaa taulukon Lake Tier -tasolta käyttämällä _SPRK taulukon nimen jälkiliitettä. Et voi poistaa taulukkoa analysointitasolta tällä funktiolla. Jos haluat poistaa mukautetun taulukon analytiikkatasolta, käytä Log Analytics -ohjelmointirajapintafunktioita. Lisätietoja on artikkelissa Taulukoiden ja sarakkeiden lisääminen tai poistaminen Azure Valvontalokit.

data_provider.delete_table({table_name}, [database_name], [database_id])

Parametrit:

  • table_name (str): Poistettavan taulukon nimi.
  • database_name (str, optional): Taulukon sisältävän tietokannan nimi (työtila). Oletusarvo on System tables.
  • database_id (str, optional): Tietokannan yksilöllinen tunnus, jos työtilojen nimet eivät ole yksilöllisiä.

Palauttaa:

  • dict: Sanasto, joka sisältää poistotoiminnon tuloksen.

Esimerkki:

data_provider.delete_table("customtable_SPRK", "System tables")