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.
Přejděte na Azure Portal.
Vytvořte kontejner Azure Storage, ve kterém se ukládají protokoly auditu.
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í).
V účtu úložiště přejděte na Přehled a vyberte Objekty blob.
V horní nabídce vyberte + Kontejner a vytvořte nový kontejner.
Zadejte název kontejneru, nastavte úroveň veřejného přístupu na Privátní a pak vyberte OK.
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.)
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:
V seznamu kontejnerů vyberte nově vytvořený kontejner a pak vyberte Vlastnosti kontejneru.
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>
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.
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.
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í.
Důležité
Odeberte znak otazníku (
?
) od začátku tokenu.
Připojte se ke spravované instanci prostřednictvím aplikace SQL Server Management Studio nebo jakéhokoli jiného podporovaného nástroje.
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
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
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í:
Připojte se ke spravované instanci pomocí uživatelského rozhraní aplikace SQL Server Management Studio.
Rozbalte kořenovou poznámku Průzkumník objektů.
Rozbalte uzel Zabezpečení, klikněte pravým tlačítkem na uzel Audit a vyberte Nový audit:
Ujistěte se, že je v cíli auditování vybraná adresa URL, a vyberte Procházet:
(Volitelné) Přihlaste se ke svému účtu Azure:
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:
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.
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:
Povolte audit serveru, který jste vytvořili v kroku 3:
ALTER SERVER AUDIT [<your_audit_name>] WITH (STATE = ON); GO
Další informace:
- Rozdíly v auditování mezi službou Azure SQL Managed Instance a databází na SQL Serveru
- VYTVOŘENÍ AUDITU SERVERU
- ALTER SERVER AUDIT
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.
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:
Přejděte na webu Azure Portal ke spravované instanci.
Vyberte Nastavení diagnostiky.
Vyberte Zapnout diagnostiku. Pokud je diagnostika už povolená, zobrazí se místo toho +Přidat nastavení diagnostiky.
V seznamu protokolů vyberte SQLSecurityAuditEvents .
Pokud konfigurujete operace podpory Microsoftu, vyberte v seznamu protokolů protokoly auditu operací DevOps.
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).
Zvolte Uložit.
Připojte se ke spravované instanci pomocí aplikace SQL Server Management Studio (SSMS) nebo jakéhokoli jiného podporovaného klienta.
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
Vytvořte a povolte specifikaci auditu serveru nebo specifikaci auditu databáze stejně jako pro SQL Server:
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
- Úplný seznam metod spotřeby protokolů auditu najdete v tématu Začínáme s auditováním služby Azure SQL Database.