Sdílet prostřednictvím


Zabezpečení SQL Serveru

SQL Server je systém pro správu relačních databází (RDBMS), který ukládá a spravuje důležitá obchodní data pro aplikace, analýzy a vytváření sestav. Protože často obsahuje citlivé informace, jako jsou záznamy zákazníků, finanční data a duševní vlastnictví, zabezpečení SQL Serveru je nezbytné k ochraně organizace před únikem dat, neoprávněným přístupem a riziky dodržování předpisů.

Tento článek obsahuje pokyny, jak nejlépe zabezpečit SQL Server.

Zabezpečení sítě

Zabezpečení síťového přístupu k SQL Serveru pomáhá předcházet neoprávněným připojením, snižuje vystavení útokům a zajišťuje, že se k databázím dostanou jenom důvěryhodné zdroje.

Správa identit

Ovládací prvky silné identity a ověřování pomáhají zajistit, aby k prostředkům SQL Serveru měli přístup jenom autorizovaní uživatelé a aplikace.

  • Používejte ověřování systému Windows nebo ověřování Microsoft Entra: Preferujte ověřování systému Windows nebo ověřování Microsoft Entra před ověřováním SQL pro centralizovanou správu identit a jednodušší řízení životního cyklu účtu. Další informace najdete v tématu Výběr režimu ověřování.

  • Pro služby používejte účty služby spravované skupinou (gMSA): Pomocí gMSA můžete automaticky a bezpečně spravovat přihlašovací údaje účtu služby. Další informace najdete v tématu Group-Managed Přehled účtů služby.

  • Vynutit silné zásady hesel: Pokud používáte ověřování SQL, vyžadovat složitá hesla, která se nedají snadno odhadnout a nepoužívají se pro jiné účty. Pravidelně aktualizujte hesla a vynucujte zásady služby Active Directory. Další informace naleznete v tématu Silná hesla.

  • Pokud je to vhodné, používejte uživatele databáze s omezením: Zvažte uživatele databáze pro aplikace, které potřebují ověřování na úrovni databáze bez nutnosti přihlášení na úrovni serveru. Další informace naleznete v tématu Uživatelé databáze s omezením.

Privilegovaný přístup

Omezení a monitorování privilegovaného přístupu pomáhá zabránit neoprávněným změnám a snížit dopad ohrožených účtů.

  • Udělte minimální požadovaná oprávnění: Přiřaďte nejnižší úroveň oprávnění potřebná pro každého uživatele nebo služby. Pravidelně kontrolujte a upravujte oprávnění pro zachování nejnižších oprávnění. Další informace najdete v tématu Začínáme s oprávněními databázového stroje.

  • Samostatní správci databáze (DBA) a sysadmin role: Vyhněte se udělování sysadmin práv všem správcům databáze. Pokud je to možné, použijte oprávnění CONTROL SERVER , protože respektuje DENY oprávnění a umožňuje podrobnější řízení. Zvažte oddělení povinností, které omezují přístup k virtuálnímu počítači, schopnost přihlásit se k operačnímu systému, schopnost upravovat protokoly chyb a auditování a schopnost instalovat aplikace a/nebo funkce. Další informace naleznete v tématu Oprávnění (databázový stroj).

  • Monitorování a audit privilegovaných aktivit: Umožňuje auditování sledovat změny provedené privilegovanými účty a pravidelně kontrolovat protokoly pro podezřelé aktivity. Další informace získáte v části SQL Server Audit (Database Engine).

  • Implementace oddělení rolí: Umístění uživatelů služby Active Directory do skupin AD, mapování skupin AD na role SQL Serveru a udělení rolí SQL Serveru minimální oprávnění vyžadovaná aplikacemi. Další informace najdete v tématu Začínáme s oprávněními databázového stroje.

Ochrana dat

Ochrana neaktivních uložených dat a přenášených dat je důležitá, aby se zabránilo neoprávněnému zpřístupnění nebo manipulaci.

  • Šifrování citlivých informací pomocí funkce Always Encrypted: Používejte funkci Always Encrypted a Always Encrypted se zabezpečenými enklávy k ochraně citlivých dat na SQL Serveru. Upřednostněte randomizované šifrování pro silnější zabezpečení. Další informace naleznete v tématu Always Encrypted.

  • Použití transparentního šifrování dat (TDE) pro soubory databáze: Povolení transparentního šifrování dat k šifrování databáze, zálohování a souborů tempdb, ochrana dat v případě ohrožení fyzického média. Další informace naleznete v tématu transparentní šifrování dat (TDE).

  • Maskování citlivých dat pomocí dynamického maskování dat (DDM):: Použijte DDM k obfukování citlivých dat ve výsledcích dotazu, pokud šifrování není možné. Další informace naleznete v tématu Dynamické maskování dat.

  • Udělte oprávnění na úrovni sloupců: Omezte přístup k citlivým sloupcům tím, že udělíte SELECToprávnění nebo REFERENCESUPDATE oprávnění pouze oprávněným uživatelům. Další informace najdete v tématu GRANT oprávnění.

  • Pomocí zabezpečení Row-Level (RLS) omezte přístup k datům: Implementujte zabezpečení na úrovni řádků, abyste zajistili, že uživatelé uvidí jenom data, která jsou pro ně relevantní. Používá se SESSION_CONTEXT pro aplikace střední vrstvy, kde uživatelé sdílejí účty SQL. Další informace najdete v tématu Row-Level Zabezpečení.

  • Kombinování funkcí zabezpečení pro maximální ochranu: Používejte Row-Level Zabezpečení společně s funkcí Always Encrypted nebo Dynamické maskování dat, abyste maximalizovali stav zabezpečení vaší organizace. Další informace najdete v tématu Row-Level Osvědčené postupy zabezpečení.

Protokolování a detekce hrozeb

Komplexní protokolování a monitorování pomáhá zjišťovat hrozby, zkoumat incidenty a splňovat požadavky na dodržování předpisů.

  • Povolit a nakonfigurovat audit SQL Serveru: Auditovat přístup a změny citlivých dat a konfigurací na úrovni serveru i databáze. Zvažte auditování tabulek a sloupců s citlivými daty, u kterých jsou použita bezpečnostní opatření. Pravidelně kontrolujte protokoly auditu, zejména u tabulek obsahujících citlivé informace, kde nejsou možná úplná bezpečnostní opatření. Další informace získáte v části SQL Server Audit (Database Engine).

  • Použití účetní knihy v systému SQL Server: Povolení účetní knihy k vytvoření neměnného záznamu změn citlivých dat, které poskytuje protokolování odolné proti neoprávněné manipulaci. Další informace naleznete v tématu Konfigurace databáze registru.

Zálohování a obnovení

Spolehlivé procesy zálohování a obnovení chrání vaše data před ztrátou kvůli selháním, haváriím nebo útokům.

Posouzení zabezpečení a zmírnění hrozeb

Pravidelné posuzování prostředí SQL Serveru pomáhá identifikovat ohrožení zabezpečení a zlepšit stav zabezpečení.

  • Omezit povolené funkce pro omezení prostoru pro útoky: Povolte pouze funkce SQL Serveru požadované pro vaše prostředí. Další informace najdete v tématu konfigurace oblasti Surface.

  • Spuštění posouzení ohrožení zabezpečení: Pomocí posouzení ohrožení zabezpečení SQL v nástroji SSMS můžete zjišťovat a opravovat potenciální ohrožení zabezpečení databáze. Další informace naleznete v Posouzení ohrožení zabezpečení SQL.

  • Klasifikovat a označovat citlivá data: Pomocí zjišťování a klasifikace dat SQL můžete identifikovat a označovat citlivá data pro lepší ochranu a dodržování předpisů. Další informace najdete v tématu Zjišťování a klasifikace dat SQL.

  • Projděte si a zmírňujte běžné hrozby: Chraňte před SQL injekcí, postranními kanálovými útoky, brute force útoky, útoky typu password spraying a ransomwarem dodržováním doporučených postupů pro ověřování vstupu, zaplátování a řízení přístupu. Další informace najdete v tématu Útok prostřednictvím injektáže SQL a ransomwaru.

  • Implementujte hloubkové zabezpečení ochrany: K zajištění komplexní ochrany před různými hrozbami použijte více možností zabezpečení cílených na různé obory zabezpečení. Další informace najdete v tématu Osvědčené postupy zabezpečení SQL Serveru.