Proč jsou bezpečnost a zálohování databází kritické
Databáze jsou srdcem informačních systémů. Každý jejich výpadek či kompromitace může znamenat ztrátu tržeb, poškození reputace i právní důsledky. Cílem je zajistit důvěrnost, integritu, dostupnost a auditovatelnost (CIAA) dat v běžném provozu i při incidentech. Základem je kombinace bezpečnostní architektury, strategie zálohování a obnovy a pravidelného testování.
Hrozby a model rizik
- Externí útoky: SQL injection, zneužití zranitelností, síťové útoky, ransomware.
- Interní rizika: nadměrná oprávnění, chybné konfigurace, lidské chyby, hrozby ze strany interních uživatelů.
- Provozní události: selhání hardwaru, poškození dat, neúmyslné smazání, chybné migrační skripty.
- Environmentální a regionální rizika: výpadky napájení, požáry, povodně, selhání cloudového regionu.
Architektonické principy bezpečnosti
- Zero Trust: žádná implicitní důvěra; autentizace a autorizace každé akce, segmentace přístupu.
- Least Privilege: pouze nezbytná oprávnění, oddělení rolí (DBA, vývojáři, provoz, auditoři).
- Defense in Depth: vrstvená ochrana od sítě přes aplikaci až po data a klíče.
- Secure by Default: bezpečné výchozí konfigurace, vypnutí nepoužívaných služeb a rozšíření.
Řízení identit a přístupů (IAM)
- Silné ověřování: MFA pro administrátory a skokové servery; krátkodobé přístupové tokeny místo statických hesel.
- Role a politiky: RBAC/ABAC, jemnozrnná oprávnění (např. repliky pouze pro čtení pro reporting).
- Just-In-Time (JIT) access: dočasné navyšování oprávnění se záznamem v auditní stopě a schválením.
- Federace: SSO přes OIDC/SAML do nástrojů pro správu DB, jednotné rušení přístupů při odchodu zaměstnanců.
Síťová bezpečnost a segmentace
- Oddělení zón: databázová vrstva v privátní síti bez přímého přístupu z internetu.
- Seznam povolených přístupů: přístup pouze z aplikačních podsítí a bastion hostů; security groups/NSG.
- Šifrované tunely: TLS, mTLS, IPsec; zákaz přenosu nešifrovaných dat i uvnitř datacentra.
- Ochrana proti skenování: firewall, WAF (na aplikační vrstvě), omezení rychlosti požadavků, port knocking (kde dává smysl).
Šifrování a správa klíčů
- Šifrování při přenosu: TLS 1.2+ (případně 1.3), moderní sady šifer, HSTS na proxy, mTLS pro interní služby.
- Šifrování dat v klidu: TDE (Transparent Data Encryption), šifrované tablespaces, šifrované zálohy, šifrované snapshoty.
- KMS/HSM: centrální správa klíčů, jejich rotace, oddělení oprávnění správců klíčů a správců dat.
- Správa tajných údajů: trezory (Vault, KMS Secrets), krátká životnost přihlašovacích údajů, nikdy je neukládat do kódu ani CI.
Audit, protokolování a detekce anomálií
- Auditní logy: přihlášení, změny schémat, DDL/DCL, citlivé příkazy SELECT/UPDATE/DELETE; neměnitelné úložiště (WORM).
- Integrace SIEM/SOAR: korelace událostí, upozornění, automatizované scénáře reakce.
- Detekce anomálií: neobvyklé dotazy, objemy exportů, přístupy mimo pracovní dobu, odchylky v geolokaci.
Konfigurační hygiena a zranitelnosti
- Hardening: vypnutí výchozích účtů, omezení xp_cmdshell/udf a rozšíření, bezpečné parametry (např. local_infile=OFF).
- Opravy: pravidelné bezpečnostní záplaty databázového enginu i operačního systému; průběžné aktualizace v clusterech HA.
- Řízení změn: migrace pomocí migračních nástrojů, kontrola kódu, postupné nasazení, plány návratu k předchozí verzi.
Ochrana proti SQL injection a logickým útokům
- Parametrizované dotazy a osvědčené postupy pro ORM.
- Seznam povolených přístupů k procedurám a pohledům; minimalizace přímých oprávnění DML.
- Validace vstupů v aplikační vrstvě, pravidla WAF pro typické škodlivé vstupy.
Strategie zálohování: cíle RPO/RTO a vrstvy ochrany
Definujte RPO (maximální ztrátu dat) a RTO (maximální dobu obnovy) pro jednotlivé systémy. Na jejich základě navrhněte kombinaci metod a vrstev:
- Pravidlo 3–2–1: 3 kopie, 2 různá média, 1 kopie mimo lokalitu (off-site/offline/immutable).
- Úplné / diferenciální / přírůstkové zálohy: kombinace pro zkrácení zálohovacích oken a rychlou obnovu.
- PITR (Point-in-Time Recovery): archivace WAL/redo logů/transakčních logů.
- Neměnitelné a air-gapped zálohy: ochrana před ransomwarem a hrozbami ze strany interních uživatelů.
Typy záloh a konzistence
- Logické zálohy: výpis/export (např. pg_dump, mysqldump) – přenosné, ale obnova je pomalejší; pozor na konzistenci.
- Fyzické zálohy: kopie datových souborů, snapshoty LVM/ZFS/cloudu, rychlé obnovení celé instance.
- Hot/Warm/Cold zálohy: online zálohy oproti zálohám s omezením provozu; vždy zajistěte aplikační konzistenci (quiesce, fsfreeze, skripty před/po záloze).
- Test obnovy: pravidelné zkoušky obnovy v izolovaném prostředí s ověřením integrity (kontrolní součty) a funkčními testy.
Replikace vs. záloha: rozdíl a komplementarita
- Replikace: vysoká dostupnost a škálování čtení, ale chyby a smazání se rychle replikují – nenahrazuje zálohy.
- Záloha: historická ochrana a možnost návratu v čase; doplňuje architektury HA/DR.
Plán obnovy po havárii (DR) a scénáře
- DR runbook: kontakty, odpovědnosti, pořadí kroků, přístupové klíče, rozhodovací šablony (go/no-go).
- Regionální DR: asynchronní replikace do jiné zóny/regionu, pravidelné testy přepnutí.
- Částečná obnova: obnova konkrétního schématu/tabulky (obnova tablespace) bez přerušení celého systému, pokud je podporována.
Šifrované zálohy a ochrana metadat
- Šifrování při uložení záloh, oddělená správa klíčů (KMS/HSM), rotace a přístup na principu nezbytné potřeby.
- Integrita záloh: podpisy, kontrolní součty, úložiště odolné proti neoprávněným změnám.
- Maskování a tokenizace při obnově do neprodukčního prostředí (vývoj/test) – ochrana osobních údajů (PII) a soulad s předpisy.
Retenční politika a právní požadavky
- Doba uchovávání: různě dlouhé retenční lhůty podle kritičnosti a regulace (např. účetnictví, zdravotnictví).
- Právo být zapomenut: procesy pro selektivní výmaz ze záloh (např. expirační okna, kryptografické mazání klíčů).
- Auditovatelnost: dokumentace záloh, obnov a testů; dohledatelnost přístupů k zálohám.
Specifika podle typů databází
- PostgreSQL: základní záloha + archivace WAL; nástroje pg_basebackup, pgBackRest, Barman; pozor na replication slots a diskovou kapacitu.
- MySQL/MariaDB: logické výpisy oproti nástroji Percona XtraBackup pro fyzické zálohy za provozu; binlogy pro PITR.
- SQL Server: úplné/diferenciální/zálohy transakčního protokolu, Always On Availability Groups; šifrování záloh, CHECKDB.
- Oracle: RMAN, FRA, Data Guard; TDE, oddělení klíčů, Flashback pro logické chyby.
- NoSQL (MongoDB, Cassandra): zálohy podle shardů/replik, oplog/commitlog pro PITR; konzistence napříč shardy.
Cloud, DBaaS a multicloud
- Snapshoty DBaaS: ověřte, zda jsou aplikačně konzistentní a zda podporují PITR; nespoléhejte se pouze na poskytovatele.
- Zálohy a replikace mezi regiony; pravidelné testy obnovy v cílovém regionu.
- FinOps: náklady na úložiště ve vztahu k RPO/RTO; archivní úroveň pro dlouhé retenční lhůty.
Automatizace, CI/CD a provozní disciplína
- Zálohování jako kód: infrastrukturní a zálohovací politiky v repozitáři (IaC), vzájemná kontrola.
- Plánování: zálohovací okna, škálování workerů, omezení zátěže I/O; koordinace s ETL a diagnostikou.
- Monitoring: metriky úspěšnosti záloh, doby trvání, velikosti a míry komprese; upozornění na překročení cíle RPO.
Ransomware a odolnost
- Neměnné úložiště a zásady WORM pro zálohy; oddělený účet/tenant pro zálohovací úložiště.
- Offline kopie (air-gap) pro kritické systémy; rotace médií.
- Rychlá obnova: scénáře obnovy na prázdný hardware/nový cluster, předpřipravené AMI/obrazy.
Testování obnovy: jediná „skutečná“ metrika
- Stolní a technické cvičení: čtvrtletně simulujte incident, měřte skutečné RTO/RPO a dokumentujte zjištění.
- Kontrola integrity: po obnově spusťte CHECKDB/ANALYZE, aplikační kouřové testy a výkonnostní základní měření.
Kontrolní seznam bezpečné databáze
- Segmentovaná síť, žádný veřejný přístup, mTLS/TLS všude.
- RBAC/ABAC, přístupy JIT, MFA pro administrátory.
- TDE/šifrované tablespaces, šifrované zálohy, rotace klíčů v KMS/HSM.
- Auditní logy v neměnitelném úložišti, upozornění SIEM.
- Pravidelné aktualizace databáze a operačního systému, hardening konfigurace.
- Zálohování podle pravidla 3–2–1, PITR, neměnné/air-gap kopie, definované RPO/RTO.
- Čtvrtletní test obnovy a DR runbook; dokumentace a školení týmu.
- Maskování dat při obnově do neprodukčního prostředí, retenční a právní politika.
Nejčastější chyby a jak se jim vyhnout
- „Zálohujeme, ale obnovu jsme nikdy nevyzkoušeli“ – zavést povinné testy obnovy.
- Spoléhání na replikaci místo záloh – kombinovat HA/DR s historickou ochranou.
- Výchozí konfigurace a široká oprávnění – audit rolí a politik, vypnutí nepoužívaných funkcí.
- Nešifrované zálohy a klíče ve stejném úložišti – oddělit správu a úložiště, zavést KMS.
- Chybějící dokumentace – runbooky, kontakty, přístupové cesty, postupy pro plnění právních požadavků.
Závěr
Bezpečnost a zálohování databází nejsou jednorázovým projektem, ale nepřetržitým procesem, který propojuje architekturu, provoz, správu a pravidelná cvičení. Organizace, které disciplinovaně kombinují vrstvené zabezpečení, robustní zálohovací politiku a testovanou obnovu, získávají předvídatelnou dostupnost a důvěru v data – základ stabilního podnikání i inovací.
