Komma igång med granskning av Azure SQL Managed Instance

Gäller för:Azure SQL Managed Instance

Azure SQL Managed Instance-granskning spårar databashändelser och skriver dem till en granskningslogg i ditt Azure Storage-konto. Granskning gör även följande:

  • Det hjälper dig att upprätthålla regelefterlevnad, förstå databasaktiviteter och få insikter om i avvikelser och fel som kan tyda på affärsproblem eller potentiella säkerhetsöverträdelser.
  • Det främjar och underlättar uppfyllandet av efterlevnadsstandarder, även om det inte garanterar efterlevnad. Mer information finns i Microsoft Azure Trust Center där du hittar den senaste listan över SQL Managed Instance-efterlevnadscertifieringar.

Viktigt!

Granskning för Azure SQL Database, Azure Synapse och Azure SQL Managed Instance är optimerad för tillgänglighet och prestanda. Under mycket hög aktivitet eller hög nätverksbelastning tillåter Azure SQL Database, Azure Synapse och Azure SQL Managed Instance åtgärder att fortsätta och kanske inte registrerar några granskade händelser.

Konfigurera granskning för servern till Azure Storage

I följande avsnitt beskrivs konfigurationen av granskning på din hanterade instans.

  1. Gå till Azure-portalen.

  2. Skapa en Azure Storage-container där granskningsloggar lagras.

    1. Gå till azure-lagringskontot där du vill lagra granskningsloggarna.

      • Använd ett lagringskonto i samma region som den hanterade instansen för att undvika läsningar/skrivningar mellan regioner.
      • Om ditt lagringskonto finns bakom ett virtuellt nätverk eller en brandvägg läser du Bevilja åtkomst från ett virtuellt nätverk.
      • Om du ändrar kvarhållningsperioden från 0 (obegränsad kvarhållning) till något annat värde gäller kvarhållning endast för loggar som skrivits efter att kvarhållningsvärdet har ändrats (loggar som skrevs under perioden då kvarhållningen var inställd på obegränsat bevaras, även efter att kvarhållning har aktiverats).
    2. I lagringskontot går du till Översikt och väljer Blobar.

      Screenshot showing the Azure Blobs widget.

    3. På den översta menyn väljer du + Container för att skapa en ny container.

      Screenshot showing the Create blob container icon.

    4. Ange ett containernamn, ange Offentlig åtkomstnivå till Privat och välj sedan OK.

      Screenshot showing the Create blob container configuration.

    Viktigt!

    Kunder som vill konfigurera ett oföränderligt loggarkiv för sina granskningshändelser på server- eller databasnivå bör följa anvisningarna i Azure Storage. (Kontrollera att du har valt Tillåt ytterligare tillägg när du konfigurerar den oföränderliga bloblagringen.)

  3. När du har skapat containern för granskningsloggarna finns det två sätt att konfigurera den som mål för granskningsloggarna: använda T-SQL eller använda SQL Server Management Studio-användargränssnittet (SSMS):

    • Konfigurera bloblagring för granskningsloggar med hjälp av T-SQL:

      1. I listan containrar väljer du den nyligen skapade containern och väljer sedan Containeregenskaper.

        Screenshot showing the Blob container properties button.

      2. Kopiera containerns URL genom att välja kopieringsikonen och spara URL:en (till exempel i Anteckningar) för framtida användning. Containerns URL-format ska vara https://<StorageName>.blob.core.windows.net/<ContainerName>

        Screenshot showing the Blob container copy URL.

      3. Generera en Azure Storage SAS-token för att bevilja granskningsbehörighet för hanterade instanser till lagringskontot:

        • Gå till azure-lagringskontot där du skapade containern i föregående steg.

        • Välj Signatur för delad åtkomst på menyn Lagring Inställningar.

          Shared access signature icon in storage settings menu.

        • Konfigurera SAS enligt följande:

          • Tillåtna tjänster: Blob

          • Startdatum: Använd gårdagens datum för att undvika tidszonsrelaterade problem

          • Slutdatum: välj det datum då SAS-token upphör att gälla

            Kommentar

            Förnya token vid förfallodatum för att undvika granskningsfel.

          • Välj Generera SAS.

            Screenshot showing the SAS configuration.

        • SAS-token visas längst ned. Kopiera token genom att välja på kopieringsikonen och spara den (till exempel i Anteckningar) för framtida användning.

          Screenshot showing how to copy SAS token.

          Viktigt!

          Ta bort frågetecknet (?) från början av token.

      4. Anslut till din hanterade instans via SQL Server Management Studio eller något annat verktyg som stöds.

      5. Kör följande T-SQL-instruktion för att skapa en ny autentiseringsuppgift med hjälp av container-URL:en och SAS-token som du skapade i föregående steg:

        CREATE CREDENTIAL [<container_url>]
        WITH IDENTITY='SHARED ACCESS SIGNATURE',
        SECRET = '<SAS KEY>'
        GO
        
      6. Kör följande T-SQL-instruktion för att skapa en ny servergranskning (välj ditt eget granskningsnamn och använd container-URL:en som du skapade i föregående steg). Om det inte anges är standardvärdet RETENTION_DAYS 0 (obegränsad kvarhållning):

        CREATE SERVER AUDIT [<your_audit_name>]
        TO URL (PATH ='<container_url>', RETENTION_DAYS = <integer>);
        GO
        
      7. Fortsätt genom att skapa en servergranskningsspecifikation eller databasgranskningsspecifikation.

    • Konfigurera bloblagring för granskningsloggar med hjälp av SQL Server Management Studio 18 och senare versioner:

      1. Anslut till den hanterade instansen med hjälp av SQL Server Management Studio-användargränssnittet.

      2. Expandera rotanteckningen i Object Explorer.

      3. Expandera noden Säkerhet, högerklicka på noden Granskningar och välj Ny granskning:

        Screenshot showing how to Expand security and audit node.

      4. Kontrollera att URL har valts i Granskningsmål och välj Bläddra:

        Screenshot showing how to Browse Azure Storage.

      5. (Valfritt) Logga in på ditt Azure-konto:

        Screenshot showing how to Sign in to Azure.

      6. Välj en prenumeration, ett lagringskonto och en blobcontainer från listrutorna eller skapa en egen container genom att välja skapa. När du är klar väljer du OK:

        Select Azure subscription, storage account, and blob container.

      7. Välj OK i dialogrutan Skapa granskning .

        Kommentar

        När du använder SQL Server Management Studio-användargränssnittet för att skapa granskning skapas automatiskt en autentiseringsuppgift för containern med SAS-nyckeln.

      8. När du har konfigurerat blobcontainern som mål för granskningsloggarna skapar och aktiverar du en servergranskningsspecifikation eller databasgranskningsspecifikation som för SQL Server:

    • Skapa T-SQL-guide för servergranskningsspecifikation

    • T-SQL-guide för att skapa databasgranskningsspecifikation

  4. Aktivera servergranskningen som du skapade i steg 3:

    ALTER SERVER AUDIT [<your_audit_name>]
    WITH (STATE = ON);
    GO
    

Ytterligare information:

Granskning av Microsoft Support-åtgärder

Granskning av Microsofts supportåtgärder för SQL Managed Instance gör att du kan granska Microsofts supportteknikers åtgärder när de behöver komma åt servern under en supportbegäran. Användningen av den här funktionen, tillsammans med granskning, möjliggör mer insyn i personalen och möjliggör avvikelseidentifiering, trendvisualisering och dataförlustskydd.

Om du vill aktivera granskning av Microsoft Support-åtgärder navigerar du till Skapa granskning under Säkerhetsgranskning> i sql-hanteringsinstansen och väljer Microsofts supportåtgärder.

Screenshot showing the Create audit icon.

Kommentar

Du måste skapa en separat servergranskning för granskning av Microsoft-åtgärder. Om du aktiverar den här kryssrutan för en befintlig granskning skrivs gransknings- och loggstödsåtgärderna över.

Konfigurera granskning för servern till Event Hubs- eller Azure Monitor-loggar

Granskningsloggar från en hanterad instans kan skickas till Azure Event Hubs- eller Azure Monitor-loggar. I det här avsnittet beskrivs hur du konfigurerar detta:

  1. Navigera i Azure-portalen till den hanterade instansen .

  2. Välj Diagnostikinställningar.

  3. Välj Aktivera diagnostik. Om diagnostik redan är aktiverat visas +Lägg till diagnostikinställning i stället.

  4. Välj SQLSecurityAuditEvents i listan över loggar.

  5. Om du konfigurerar Microsofts supportåtgärder väljer du DevOps-åtgärder Granskningsloggar i listan med loggar.

  6. Välj ett mål för granskningshändelserna: Event Hubs, Azure Monitor-loggar eller båda. Konfigurera för varje mål de obligatoriska parametrarna (till exempel Log Analytics-arbetsytan).

  7. Välj Spara.

    Screenshot showing how to configure diagnostic settings.

  8. Anslut till den hanterade instansen med hjälp av SQL Server Management Studio (SSMS) eller någon annan klient som stöds.

  9. Kör följande T-SQL-instruktion för att skapa en servergranskning:

    CREATE SERVER AUDIT [<your_audit_name>] TO EXTERNAL_MONITOR;
    GO
    
  10. Skapa och aktivera en servergranskningsspecifikation eller databasgranskningsspecifikation som för SQL Server:

  11. Aktivera servergranskningen som skapades i steg 8:

    ALTER SERVER AUDIT [<your_audit_name>]
    WITH (STATE = ON);
    GO
    

Konfigurera granskning med T-SQL

-- Create audit without OPERATOR_AUDIT - Will audit standard SQL Audit events
USE [master];
GO

CREATE SERVER AUDIT testingauditnodevops TO EXTERNAL_MONITOR;
GO

CREATE SERVER AUDIT SPECIFICATION testingaudit_Specification_nodevops
FOR SERVER AUDIT testingauditnodevops ADD (SUCCESSFUL_LOGIN_GROUP),
    ADD (BATCH_COMPLETED_GROUP),
    ADD (FAILED_LOGIN_GROUP)
WITH (STATE = ON);
GO

ALTER SERVER AUDIT testingauditnodevops
    WITH (STATE = ON);
GO

-- Create separate audit without OPERATOR_AUDIT ON - Will audit Microsoft Support Operations
USE [master]

CREATE SERVER AUDIT testingauditdevops TO EXTERNAL_MONITOR
    WITH (OPERATOR_AUDIT = ON);
GO

CREATE SERVER AUDIT SPECIFICATION testingaudit_Specification_devops
FOR SERVER AUDIT testingauditdevops ADD (SUCCESSFUL_LOGIN_GROUP),
    ADD (BATCH_COMPLETED_GROUP),
    ADD (FAILED_LOGIN_GROUP)
WITH (STATE = ON);
GO

ALTER SERVER AUDIT testingauditdevops
    WITH (STATE = ON);
GO

Använda granskningsloggar

Använda loggar som lagras i Azure Storage

Det finns flera metoder som du kan använda för att visa blobgranskningsloggar.

  • Använd systemfunktionen sys.fn_get_audit_file (T-SQL) för att returnera granskningsloggdata i tabellformat. Mer information om hur du använder den här funktionen finns i dokumentationen om sys.fn_get_audit_file.

  • Du kan utforska granskningsloggar med hjälp av ett verktyg som Azure Storage Explorer. I Azure Storage sparas granskningsloggar som en samling blobfiler i en container som har definierats för att lagra granskningsloggarna. Mer information om hierarkin för lagringsmappen, namngivningskonventioner och loggformat finns i referensen för blobgranskningsloggformat.

  • En fullständig lista över metoder för förbrukning av granskningsloggar finns i Komma igång med Azure SQL Database-granskning.

Använda loggar som lagras i Event Hubs

Om du vill använda granskningsloggdata från Event Hubs måste du konfigurera en dataström för att använda händelser och skriva dem till ett mål. Mer information finns i dokumentationen om Azure Event Hubs.

Använda och analysera loggar som lagras i Azure Monitor-loggar

Om granskningsloggar skrivs till Azure Monitor-loggar är de tillgängliga på Log Analytics-arbetsytan, där du kan köra avancerade sökningar på granskningsdata. Som utgångspunkt går du till Log Analytics-arbetsytan. Under avsnittet Allmänt väljer du Loggar och anger en grundläggande fråga, till exempel: search "SQLSecurityAuditEvents" för att visa granskningsloggarna.

Azure Monitor-loggar ger dig driftinsikter i realtid med hjälp av integrerade sök- och anpassade instrumentpaneler för att enkelt analysera miljontals poster över alla dina arbetsbelastningar och servrar. Mer information om sökspråk och kommandon för Azure Monitor-loggar finns i Sökreferens för Azure Monitor-loggar.

Kommentar

Den här artikeln uppdaterades nyligen för att använda termen Azure Monitor-loggar i stället för Log Analytics. Loggdata lagras fortfarande på en Log Analytics-arbetsyta och samlas fortfarande in och analyseras av samma Log Analytics-tjänst. Vi uppdaterar terminologin för att bättre återspegla loggarnas roll i Azure Monitor. Mer information finns i Terminologiändringar i Azure Monitor.

Granska skillnader mellan databaser i Azure SQL Managed Instance och databaser i SQL Server

De viktigaste skillnaderna mellan granskning i databaser i Azure SQL Managed Instance och databaser i SQL Server är:

  • Med Azure SQL Managed Instance fungerar granskning på servernivå och lagrar .xel loggfiler i Azure Blob Storage.
  • I SQL Server fungerar granskning på servernivå, men lagrar händelser i filsystemet och Windows-händelseloggar.

XEvent-granskning i hanterade instanser stöder Azure Blob Storage-mål. Fil- och Windows-loggar stöds inte.

De viktigaste skillnaderna i syntaxen CREATE AUDIT för granskning av Azure Blob Storage är:

  • En ny syntax TO URL tillhandahålls och gör att du kan ange URL:en för Azure Blob Storage-containern .xel där filerna placeras.
  • En ny syntax TO EXTERNAL MONITOR tillhandahålls för att aktivera loggmål för Event Hubs och Azure Monitor.
  • Syntaxen TO FILE stöds inte eftersom Azure SQL Managed Instance inte kan komma åt Windows-filresurser.
  • Avstängningsalternativet stöds inte.
  • queue_delayav 0 stöds inte.

Nästa steg