Začínáme s auditováním služby Azure SQL Managed Instance

Platí pro: Azure SQL Managed Instance

Auditování služby Azure SQL Managed Instance sleduje události databáze a zapisuje je do protokolu auditu ve vašem účtu úložiště Azure. Auditování také:

  • Pomáhá zajistit dodržování předpisů, porozumět databázové aktivitě a získat přehled o nesrovnalostech a anomáliích, které můžou značit problémy obchodního charakteru nebo vzbuzovat podezření na narušení zabezpečení.
  • Umožňuje a usnadňuje dodržování předpisů, i když soulad s těmito standardy nezaručuje. Další informace najdete v Centru zabezpečení Microsoft Azure, kde najdete nejnovější seznam certifikací dodržování předpisů služby SQL Managed Instance.

Důležité

Auditování pro Azure SQL Database, Azure Synapse a Azure SQL Managed Instance je optimalizované pro dostupnost a výkon. Během velmi vysoké aktivity nebo vysokého zatížení sítě umožňují Azure SQL Database, Azure Synapse a Azure SQL Managed Instance operace pokračovat a nemusí zaznamenávat některé auditované události.

Nastavení auditování pro server do Azure Storage

Následující část popisuje konfiguraci auditování spravované instance.

  1. Přejděte na Azure Portal.

  2. Vytvořte kontejner Azure Storage, ve kterém se ukládají protokoly auditu.

    1. Přejděte do účtu úložiště Azure, do kterého chcete ukládat protokoly auditu.

      • Pokud chcete zabránit čtení a zápisům mezi oblastmi, použijte účet úložiště ve stejné oblasti jako spravovaná instance.
      • Pokud je váš účet úložiště za virtuální sítí nebo bránou firewall, přečtěte si téma Udělení přístupu z virtuální sítě.
      • Pokud změníte dobu uchovávání od 0 (neomezeného uchovávání) na jinou hodnotu, uchovávání se použije pouze na protokoly zapsané po změně hodnoty uchovávání (protokoly zapsané během doby, kdy bylo uchovávání nastavené na neomezené , zůstanou zachovány i po povolení uchovávání).
    2. V účtu úložiště přejděte na Přehled a vyberte Objekty blob.

      Snímek obrazovky znázorňující widget Azure Blobs

    3. V horní nabídce vyberte + Kontejner a vytvořte nový kontejner.

      Snímek obrazovky s ikonou vytvořit kontejner objektů blob

    4. Zadejte název kontejneru, nastavte úroveň veřejného přístupu na Privátní a pak vyberte OK.

      Snímek obrazovky znázorňující konfiguraci kontejneru objektů blob

    Důležité

    Zákazníci, kteří chtějí nakonfigurovat neměnné úložiště protokolů pro události auditu na úrovni serveru nebo databáze, by měli postupovat podle pokynů poskytovaných službou Azure Storage. (Ujistěte se, že jste vybrali Povolit další připojení při konfiguraci neměnného úložiště objektů blob.)

  3. Po vytvoření kontejneru pro protokoly auditu existují dva způsoby, jak ho nakonfigurovat jako cíl pro protokoly auditu: pomocí T-SQL nebo pomocí uživatelského rozhraní aplikace SQL Server Management Studio (SSMS):

    • Konfigurace úložiště objektů blob pro protokoly auditu pomocí T-SQL:

      1. V seznamu kontejnerů vyberte nově vytvořený kontejner a pak vyberte Vlastnosti kontejneru.

        Snímek obrazovky s tlačítkem Vlastnosti kontejneru objektů blob

      2. Zkopírujte adresu URL kontejneru výběrem ikony kopírování a uložením adresy URL (například v Poznámkovém bloku) pro budoucí použití. Formát adresy URL kontejneru by měl být https://<StorageName>.blob.core.windows.net/<ContainerName>

        Snímek obrazovky znázorňující adresu URL kopírování kontejneru objektů blob

      3. Vygenerujte token SAS služby Azure Storage pro udělení přístupových práv k auditování spravované instance účtu úložiště:

        • Přejděte do účtu úložiště Azure, ve kterém jste kontejner vytvořili v předchozím kroku.

        • V nabídce Nastavení úložiště vyberte Sdílený přístupový podpis.

          Ikona sdíleného přístupového podpisu v nabídce nastavení úložiště

        • Sas nakonfigurujte následujícím způsobem:

          • Povolené služby: Objekt blob

          • Počáteční datum: Abyste se vyhnuli problémům souvisejícím s časovým pásmem, použijte datum včerejšího data.

          • Koncové datum: Zvolte datum, kdy platnost tohoto tokenu SAS vyprší.

            Poznámka:

            Obnovte token po vypršení platnosti, abyste se vyhnuli selháním auditu.

          • Vyberte Vygenerovat SAS.

            Snímek obrazovky znázorňující konfiguraci SAS

        • Token SAS se zobrazí v dolní části. Token zkopírujte tak, že vyberete ikonu kopírování a uložíte ho (například v Poznámkovém bloku) pro budoucí použití.

          Snímek obrazovky znázorňující, jak zkopírovat token SAS

          Důležité

          Odeberte znak otazníku (?) od začátku tokenu.

      4. Připojte se ke spravované instanci prostřednictvím aplikace SQL Server Management Studio nebo jakéhokoli jiného podporovaného nástroje.

      5. Spuštěním následujícího příkazu T-SQL vytvořte nové přihlašovací údaje pomocí adresy URL kontejneru a tokenu SAS, který jste vytvořili v předchozích krocích:

        CREATE CREDENTIAL [<container_url>]
        WITH IDENTITY='SHARED ACCESS SIGNATURE',
        SECRET = '<SAS KEY>'
        GO
        
      6. Spuštěním následujícího příkazu T-SQL vytvořte nový audit serveru (zvolte vlastní název auditu a použijte adresu URL kontejneru, kterou jste vytvořili v předchozích krocích). Pokud není zadáno, RETENTION_DAYS výchozí hodnota je 0 (neomezené uchovávání):

        CREATE SERVER AUDIT [<your_audit_name>]
        TO URL (PATH ='<container_url>', RETENTION_DAYS = <integer>);
        GO
        
      7. Pokračujte vytvořením specifikace auditu serveru nebo specifikace auditu databáze.

    • Nakonfigurujte úložiště objektů blob pro protokoly auditu pomocí aplikace SQL Server Management Studio 18 a novějších verzí:

      1. Připojte se ke spravované instanci pomocí uživatelského rozhraní aplikace SQL Server Management Studio.

      2. Rozbalte kořenovou poznámku Průzkumník objektů.

      3. Rozbalte uzel Zabezpečení, klikněte pravým tlačítkem na uzel Audit a vyberte Nový audit:

        Snímek obrazovky znázorňující, jak rozbalit uzel zabezpečení a auditování

      4. Ujistěte se, že je v cíli auditování vybraná adresa URL, a vyberte Procházet:

        Snímek obrazovky znázorňující, jak procházet Azure Storage

      5. (Volitelné) Přihlaste se ke svému účtu Azure:

        Snímek obrazovky znázorňující, jak se přihlásit k Azure

      6. V rozevíracích sadě vyberte předplatné, účet úložiště a kontejner objektů blob nebo vytvořte vlastní kontejner výběrem možnosti Vytvořit. Po dokončení vyberte OK:

        Vyberte předplatné Azure, účet úložiště a kontejner objektů blob.

      7. V dialogovém okně Vytvořit audit vyberte OK.

        Poznámka:

        Při použití uživatelského rozhraní aplikace SQL Server Management Studio k vytvoření auditu se automaticky vytvoří přihlašovací údaje pro kontejner s klíčem SAS.

      8. Jakmile nakonfigurujete kontejner objektů blob jako cíl pro protokoly auditu, vytvořte a povolte specifikaci auditu serveru nebo specifikaci auditu databáze stejně jako pro SQL Server:

    • Průvodce vytvořením specifikace auditu serveru T-SQL

    • Průvodce vytvořením specifikace auditu databáze T-SQL

  4. Povolte audit serveru, který jste vytvořili v kroku 3:

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

Další informace:

Auditování operací podpora Microsoftu

Auditování operací podpora Microsoftu pro službu SQL Managed Instance umožňuje auditovat operace techniků podpory Microsoftu, když potřebují přístup k vašemu serveru během žádosti o podporu. Použití této funkce společně s auditováním zajišťuje lepší transparentní přehled o pracovnících a umožňuje detekovat anomálie, vizualizovat trendy a zabraňovat ztrátě dat.

Pokud chcete povolit auditování operací podpora Microsoftu, přejděte do části Vytvořit audit v části Audit zabezpečení>ve službě SQL Manage Instance a vyberte operace podpory Microsoftu.

Snímek obrazovky s ikonou Vytvořit audit

Poznámka:

Pro auditování operací Microsoftu musíte vytvořit samostatný audit serveru. Pokud toto políčko povolíte pro existující audit, přepíše audit a pouze operace podpory protokolu.

Nastavení auditování serveru na protokoly služby Event Hubs nebo Azure Monitoru

Protokoly auditu ze spravované instance je možné odesílat do služby Azure Event Hubs nebo do protokolů služby Azure Monitor. Tato část popisuje, jak tuto konfiguraci nakonfigurovat:

  1. Přejděte na webu Azure Portal ke spravované instanci.

  2. Vyberte Nastavení diagnostiky.

  3. Vyberte Zapnout diagnostiku. Pokud je diagnostika už povolená, zobrazí se místo toho +Přidat nastavení diagnostiky.

  4. V seznamu protokolů vyberte SQLSecurityAuditEvents .

  5. Pokud konfigurujete operace podpory Microsoftu, vyberte v seznamu protokolů protokoly auditu operací DevOps.

  6. Vyberte cíl událostí auditu: Event Hubs, protokoly služby Azure Monitor nebo obojí. Nakonfigurujte pro každý cíl požadované parametry (například pracovní prostor služby Log Analytics).

  7. Zvolte Uložit.

    Snímek obrazovky znázorňující, jak nakonfigurovat nastavení diagnostiky

  8. Připojte se ke spravované instanci pomocí aplikace SQL Server Management Studio (SSMS) nebo jakéhokoli jiného podporovaného klienta.

  9. Spuštěním následujícího příkazu T-SQL vytvořte audit serveru:

    CREATE SERVER AUDIT [<your_audit_name>] TO EXTERNAL_MONITOR;
    GO
    
  10. Vytvořte a povolte specifikaci auditu serveru nebo specifikaci auditu databáze stejně jako pro SQL Server:

  11. Povolte audit serveru vytvořený v kroku 8:

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

Nastavení auditu pomocí 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

Využívání protokolů auditu

Využívání protokolů uložených ve službě Azure Storage

K zobrazení protokolů auditování objektů blob můžete použít několik metod.

  • Pomocí systémové funkce sys.fn_get_audit_file (T-SQL) vrátíte data protokolu auditu v tabulkovém formátu. Další informace o použití této funkce najdete v sys.fn_get_audit_file dokumentaci.

  • Protokoly auditu můžete prozkoumat pomocí nástroje, jako je Průzkumník služby Azure Storage. V Azure Storage se protokoly auditování ukládají jako kolekce souborů objektů blob v kontejneru, který byl definovaný pro ukládání protokolů auditu. Další informace o hierarchii složky úložiště, konvencích vytváření názvů a formátu protokolu najdete v referenčních informacích k formátu protokolu auditu objektů blob.

  • Úplný seznam metod spotřeby protokolů auditu najdete v tématu Začínáme s auditováním služby Azure SQL Database.

Využívání protokolů uložených ve službě Event Hubs

Pokud chcete využívat data protokolů auditu ze služby Event Hubs, budete muset nastavit datový proud, který bude využívat události a zapisovat je do cíle. Další informace najdete v dokumentaci ke službě Azure Event Hubs.

Využívání a analýza protokolů uložených v protokolech služby Azure Monitor

Pokud se protokoly auditu zapisují do protokolů služby Azure Monitor, jsou k dispozici v pracovním prostoru služby Log Analytics, kde můžete spouštět rozšířené vyhledávání na datech auditu. Jako výchozí bod přejděte do pracovního prostoru služby Log Analytics. V části Obecné vyberte Protokoly a zadejte základní dotaz, například: search "SQLSecurityAuditEvents" pro zobrazení protokolů auditu.

Protokoly služby Azure Monitor poskytují přehledy o provozu v reálném čase pomocí integrovaného vyhledávání a vlastních řídicích panelů k snadné analýze milionů záznamů napříč všemi úlohami a servery. Další informace o jazyku a příkazech prohledávání protokolů služby Azure Monitor najdete v referenčních informacích k prohledávání protokolů služby Azure Monitor.

Poznámka:

Tento článek byl nedávno aktualizován tak, aby místo Log Analytics používal termín protokoly služby Azure Monitor. Data protokolů jsou stále uložená v pracovním prostoru služby Log Analytics a stále se shromažďují a analyzují stejnou službou Log Analytics. Aktualizujeme terminologii tak, aby lépe odrážela roli protokolů ve službě Azure Monitor. Podrobnosti najdete v tématu Změny terminologie služby Azure Monitor.

Rozdíly v auditu mezi databázemi ve službě Azure SQL Managed Instance a databázemi na SQL Serveru

Mezi hlavní rozdíly mezi auditováním v databázích ve službě Azure SQL Managed Instance a databázemi v SQL Serveru patří:

  • Se službou Azure SQL Managed Instance funguje auditování na úrovni serveru a ukládá .xel soubory protokolů do služby Azure Blob Storage.
  • V SQL Serveru funguje audit na úrovni serveru, ale ukládá události v systému souborů a protokolech událostí Systému Windows.

Auditování XEvent ve spravovaných instancích podporuje cíle služby Azure Blob Storage. Protokoly souborů a Windows se nepodporují.

Hlavní rozdíly v CREATE AUDIT syntaxi pro auditování do služby Azure Blob Storage jsou:

  • Poskytuje se nová syntaxe TO URL a umožňuje zadat adresu URL kontejneru úložiště objektů blob v Azure, kde .xel jsou soubory umístěné.
  • Poskytuje se nová syntaxe TO EXTERNAL MONITOR pro povolení cílů protokolů služby Event Hubs a Služby Azure Monitor.
  • Syntaxe TO FILE není podporovaná , protože spravovaná instance Azure SQL nemá přístup ke sdíleným složkám Windows.
  • Možnost vypnutí není podporována.
  • queue_delay hodnota 0 není podporována.

Další kroky