Gjelder for:✅ Warehouse i Microsoft Fabric
Revisjon i Fabric datalager gir forbedrede sikkerhets- og samsvarsmuligheter ved å spore og registrere databasehendelser.
Du kan konfigurere SQL-revisjonslogger i Fabric datalager i Fabric-portalen eller via REST API.
Prerequisites
For å konfigurere SQL-revisjonslogger for Fabric datalager, trenger du følgende elementer:
- Et stoffarbeidsområde med en aktiv kapasitet eller prøvekapasitet.
- Tilgang til en lagergjenstand innenfor et arbeidsområde.
-
Revideringstillatelse for å konfigurere og spørre i revisjonslogger. Hvis du vil ha mer informasjon, kan du se Tillatelser.
Du kan konfigurere SQL-revisjonslogger ved å bruke Fabric-portalen eller REST API.
I Fabric-arbeidsområdet velger du Innstillinger for lagervaren.
Velg siden for SQL-overvåkingslogger .
Aktiver innstillingen Lagre hendelser i SQL-overvåkingslogger.
Som standard er alle handlinger aktivert og beholdt i ni år.
Under Hendelser for å registrere, velg hvilke hendelser SQL-revisjonsloggene fanger opp. Velg hendelseskategoriene eller individuelle revisjonsaksjonsgrupper du ønsker å fange. Velg bare hendelsene organisasjonen krever for å optimalisere lagring og relevans.
Valgfritt kan du skrive inn et predikatuttrykk for å filtrere hendelser, for eksempel å utelate aktivitet fra en kjent tjenesteprincipal eller automatiseringsidentitet. Bruk syntaksen beskrevet i predikatuttrykkssyntaks.
Viktig!
Predikatfiltrering gjelder kun for hendelser som allerede er valgt under Hendelser for å registrere dem. For eksempel, for å filtrere SELECT setninger, må du også aktivere Batch Was Completed.
Angi en ønsket loggoppbevaringsperiode i År, Måneder og Dager.
Velg Lagre for å bruke innstillingene.
Lageret ditt registrerer nå de valgte revisjonshendelsene og lagrer loggene sikkert i OneLake.
Last ned og installer Visual Studio Code.
Installer REST Client-utvidelsen fra Visual Studio Marketplace.
Få bærertokenet ved å følge disse trinnene. Du kan finne din Power BI bearer-token i nettleserens utviklerverktøy eller via PowerShell.
For å bruke Edge-utviklerverktøyene for å finne ditt Power BI bærertoken:
- Åpne Microsoft Fabric-arbeidsområdet ditt i en nettleser (Microsoft Edge).
- Trykk F12 for å åpne Utviklerverktøy.
- Velg Konsoll-fanen. Hvis det er nødvendig, velger du Utvid hurtigvisning for å vise konsollledeteksten
>.
- Skriv inn kommandoen
powerBIAccessToken , og trykk ENTER. Høyreklikk på den store unike strengen som returneres i konsollen, og velg Kopier strenginnhold.
- Lim det inn i stedet
<bearer token> for i følgende skript.
For å bruke PowerShell for å finne din Power BI bærertoken:
Installer modulen MicrosoftPowerBIMgmt fra Microsoft Power BI Cmdlets for Windows PowerShell og PowerShell Core.
Install-Module -Name MicrosoftPowerBIMgmt
Bruk Connect-PowerBIServiceAccount for å koble til Power BI PowerShell, og hent bærertokenet.
Connect-PowerBIServiceAccount
$token = (Get-PowerBIAccessToken).Authorization
Write-Output "Bearer $token"
Etter at du har fått Power BI-bærertokenet, send en PATCH forespørsel ved å bruke REST Client-utvidelsen. I VS Code, opprett en ny tekstfil med endelsen..http
Kopier og lim inn følgende forespørsel:
PATCH https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/warehouses/<warehouseId>/settings/sqlAudit
content-type: application/json
Authorization: Bearer <BEARER_TOKEN>
{
"state": "Enabled",
"retentionDays": "0"
}
- Erstatt
<workspaceId> og <warehouseId> med tilsvarende stoffarbeidsområde og lager-ID-er. Hvis du vil finne disse verdiene, kan du gå til lageret i Fabric-portalen.
-
<workspaceID>: Finn GUID-en for arbeidsområdet i nettadressen etter inndelingen /groups/ , eller ved å kjøre SELECT @@SERVERNAME i et eksisterende lager. Eksempel: 11aaa111-a11a-1111-1aaa-aa111111aaa. Ikke ta med tegnene / .
-
<warehouseID>: Finn lager-GUID-en i nettadressen etter inndelingen /warehouses/ , eller ved å kjøre SELECT @@SERVERNAME i et eksisterende lager. Eksempel: 11aaa111-a11a-1111-1aaa-aa111111aaa. Ikke ta med tegnene / .
- Erstatt
<BEARER_TOKEN> med ihendehaverbrikken din.
- Sett
state til Enabled for å slå på revisjon (bruk Disabled for å slå det av).
- Sett parameteren
retentionDays til 0 for ubegrenset beholdning. Dette er standardinnstillingen.
Viktig!
I eksempelkoden for utvidelsen må du inkludere en tom linje umiddelbart etter at du har angitt bærertokenet. Denne tomme linjen signaliserer utvidelsen der HTTP-headerne slutter og API-kommandoen starter, slik at API-et kan skille mellom de to korrekt.
Velg Send forespørsel.
Kontroller statusen for overvåkingsloggen med REST-API-en
For å verifisere om SQL-revisjonslogger er aktivert, send en GET-forespørsel ved å bruke samme REST Client-utvidelse.
- I VS Code, opprett en ny tekstfil med endelsen.
.http
- Kopier og lim inn følgende forespørsel, og oppgi din egen
workspaceId, <warehouseId>og <BEARER_TOKEN>.
GET https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/warehouses/<warehouseId>/settings/sqlAudit
content-type: application/json
Authorization: Bearer <BEARER_TOKEN>
Responsen returnerer ENABLED eller DISABLED og den nåværende konfigurasjonen av auditActionsAndGroups og predicateExpression.
SQL-overvåkingslogger er avhengige av forhåndsdefinerte handlingsgrupper som registrerer bestemte hendelser i databasen. For detaljer om revisjonsaksjonsgrupper, se SQL-revisjonslogger i Fabric datalager.
I VS Code, opprett en ny tekstfil med endelsen..http
Kopier og lim inn følgende forespørsel, og oppgi din egen workspaceId, <warehouseId>og <BEARER_TOKEN>.
POST https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/warehouses/<warehouseId>/settings/sqlAudit
content-type: application/json
Authorization: Bearer <BEARER_TOKEN>
[ "DATABASE_OBJECT_PERMISSION_CHANGE_GROUP" ]
Velg Send forespørsel.
Bruk samme PATCH API-forespørsel for å konfigurere et predikatuttrykk som utelukker spesifikke hendelser fra å bli generert, som aktivitet fra en kjent tjenesteprincipal eller automatiseringsidentitet. For full predikatsyntaks, se predikatuttrykkssyntaks.
I VS Code, opprett en ny tekstfil med endelsen..http
Kopier og lim inn følgende forespørsel, og oppgi din egen workspaceId, <warehouseId>og <BEARER_TOKEN>.
PATCH https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/warehouses/<warehouseId>/settings/sqlAudit
content-type: application/json
Authorization: ******
{
"state": "Enabled",
"retentionDays": 10,
"predicateExpression": "NOT statement LIKE 'SELECT %'"
}
- Dette eksempelet utelukker
SELECT kontoutskrifter fra å bli revidert ved å filtrere på statement feltet.
- Når du aktiverer SQL-revisjon for første gang, gjelder det ingen predikat å
predicateExpression utelate. Ved senere oppdateringer forblir det eksisterende predikatet uendret ved å utelate det. Spesifiser en tom streng ("") for å fjerne et eksisterende predikat.
Viktig!
Predikatfiltrering evaluerer kun hendelser som allerede er konfigurert til å fanges opp. For å filtrere SELECT setninger som vist i dette eksempelet, må du også aktivere handlingsgruppen Batch Was Completed.BATCH_COMPLETED_GROUP For mer informasjon, se Database-level audit action groups and actions.
Velg Send forespørsel.
Overvåkingslogger for spørring
SQL-revisjonsloggdata lagres i . XEL-filer i OneLake. Du kan få tilgang til disse dataene ved å bruke funksjonen sys.fn_get_audit_file_v2 Transact-SQL (T-SQL). For mer informasjon om hvordan revisjonsfiler lagres i OneLake, se SQL-revisjonslogger i Fabric datalager.
Fra SQL-spørringseditoren eller et hvilket som helst spørringsverktøy som SQL Server Management Studio (SSMS) eller MSSQL-utvidelsen for Visual Studio Code, bruk følgende eksempler på T-SQL-spørringer. Husk å oppgi din egen <workspaceId> og <warehouseId>.
SELECT *
FROM sys.fn_get_audit_file_v2
('https://onelake.blob.fabric.microsoft.com/<workspaceId>/<warehouseId>/Audit/sqldbauditlogs/'
, default, default, default, default);
Hvis du vil filtrere logger etter tidsområde, bruker du følgende spørring:
SELECT *
FROM sys.fn_get_audit_file_v2
('https://onelake.blob.fabric.microsoft.com/<workspaceId>/<warehouseId>/Audit/sqldbauditlogs/'
, default, default, '2025-03-30T08:40:40Z', '2025-03-30T09:10:40Z');
Relatert innhold