Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Applies to: SQL Server 2022 (16.x) a novější verze
Azure SQL Database
Azure SQL Managed Instance
Vytvoření důvěry v oblasti integrity dat uložených v databázových systémech je dlouhodobým problémem pro všechny organizace, které spravují finanční, lékařské nebo jiné citlivé údaje. Funkce účetní knihy poskytuje schopnosti pro detekci manipulace ve vaší databázi. Můžete kryptograficky ověřit jiné strany, jako jsou auditoři nebo jiné obchodní strany, že vaše data nebyla manipulována.
Ledger pomáhá chránit data před jakýmkoli útočníkem nebo vysoce privilegovaným uživatelem, včetně správců databází (DBA), správců systému a správců cloudu. Stejně jako u tradičního registru zachová tato funkce historická data. Pokud se v databázi aktualizuje řádek, zachová se její předchozí hodnota a bude chráněná v tabulce historie. Kniha účetnictví poskytuje záznam všech změn provedených v databázi v čase.
Účetní kniha a historická data jsou spravována transparentně a poskytují ochranu bez nutnosti změnit aplikaci. Tato funkce udržuje historická data v relační podobě, aby podporovala dotazy SQL pro auditování, forenzní účely a další účely. Poskytuje záruky integrity kryptografických dat při zachování výkonu, flexibility a výkonu databáze SQL.
Případy použití registru
Pojďme si projít některé výhody použití registru.
Zefektivnění auditů
Jakákoli hodnota produkčního systému je založená na schopnosti důvěřovat datům, která systém spotřebovává a vytváří. Pokud uživatel se zlými úmysly manipuloval s daty ve vaší databázi, může mít katastrofální výsledky v obchodních procesech, které se na tato data spoléhají.
Udržování důvěry v data vyžaduje kombinaci povolení správných kontrolních mechanismů zabezpečení, aby se snížily potenciální útoky, postupy zálohování a obnovení a důkladné postupy zotavení po havárii. Audity externích stran zajišťují, aby byly tyto postupy zavedeny.
Procesy auditu jsou vysoce časově náročné aktivity. Auditování vyžaduje kontrolu implementovaných postupů na místě, jako je kontrola protokolů auditu, kontrola ověřování a kontrola řízení přístupu. I když tyto ruční procesy můžou odhalit potenciální mezery v zabezpečení, nemůžou poskytnout důkaz, že se data nezlými úmysly nezměnila.
Účetní kniha poskytuje kryptografické doklady o integritě dat auditorům. Tento důkaz může zjednodušit proces auditování. Poskytuje také nepopiratelnost týkající se integrity dat systému.
Obchodní procesy více stran
V některých systémech, jako jsou systémy řízení dodavatelského řetězce, musí několik organizací vzájemně sdílet stav z obchodního procesu. Tyto systémy se potýkají s výzvou, jak sdílet a důvěřovat datům. Mnoho organizací se mění na tradiční blockchainy, jako je Ethereum nebo Hyperledger Fabric, a digitálně transformují své obchodní procesy ve více stranách.
Blockchain je skvělé řešení pro sítě s více stranami, kde mezi stranami, které se účastní sítě, je nízká důvěra. Mnohé z těchto sítí jsou v podstatě centralizovaná řešení, kde je důležitá důvěra, ale plně decentralizovaná infrastruktura je těžké řešení.
Ledger poskytuje řešení pro tyto sítě. Účastníci můžou ověřit integritu centrálně uložených dat bez složitosti a dopadu na výkon, které v blockchainové síti zavádí konsensus sítě.
Úspěch zákazníka
Důvěryhodné mimořetězové úložiště pro blockchain
Pokud je blockchainová síť nezbytná pro více stran obchodní proces, možnost dotazovat se na data v blockchainu bez obětování výkonu je výzvou.
Typické vzory pro řešení tohoto problému zahrnují replikaci dat z blockchainu do mimořetězového úložiště, jako je databáze. Po replikaci dat do databáze z blockchainu ale integrita dat zaručuje ztrátu nabídky blockchainu. Ledger poskytuje integritu dat pro off-chain úložiště pro blockchainové sítě, což pomáhá zajistit úplnou důvěru v data v celém systému.
Jak to funguje
Všechny řádky upravené transakcí v tabulce registru jsou kryptograficky SHA-256 hashovány pomocí datové struktury Merkle strom, která vytvoří kořenovou hodnotu hash představující všechny řádky v transakci. Transakce, které databáze zpracovává, jsou pak také hashovány pomocí SHA-256 společně prostřednictvím datové struktury ve formě Merkleova stromu. Výsledkem je kořenový hash, který tvoří blok. Blok je pak zhashován pomocí SHA-256, přičemž jako vstup do hashovací funkce slouží kořenový hash tohoto bloku spolu s kořenovým hashem předchozího bloku. Toto hashování tvoří blockchain.
Kořenové hash hodnoty v registru databáze, označované také jako digesty databáze, obsahují hashované transakce a představují stav databáze. Můžou se pravidelně generovat a ukládat mimo databázi v úložišti odolném proti manipulaci, například Azure Blob Storage nakonfigurované pomocí zásad neměnnosti, Azure Confidential Ledger nebo místních Write Once Read Many (WORM) storage devices. Hodnoty digestů se později použijí k ověření integrity databáze porovnáním hodnoty hash v digestu s vypočítanými hodnotami hash v databázi.
Funkce registru se zavádí do tabulek ve dvou formách:
- Aktualizovatelné tabulky registru, které umožňují aktualizovat a odstranit řádky v tabulkách.
- Tabulky registru, které umožňují vložení jenom do tabulek.
Aktualizovatelné tabulky registru i tabulky registru pouze s možností přidání poskytují důkazy o neoprávněných změnách a digitální forenziku.
Aktualizovatelné tabulky registru
Aktualizovatelné tabulky registru jsou ideální pro vzory aplikací, které očekávají vydání aktualizací a odstranění tabulek v databázi, jako je systém aplikací záznamů (SOR). Stávající vzory dat pro vaši aplikaci se nemusí měnit, aby se povolily funkce registru.
Aktualizovatelné tabulky registru sledují historii změn všech řádků v databázi, když dojde k transakcím, které provádějí aktualizace nebo odstranění. Aktualizovatelná tabulka registru je tabulka se systémovou verzí, která obsahuje odkaz na jinou tabulku se zrcadleným schématem.
Druhá tabulka se nazývá tabulka historie. Systém používá tuto tabulku k automatickému uložení předchozí verze řádku při každé aktualizaci nebo odstranění řádku v tabulce registru. Tabulka historie se vytvoří automaticky při vytváření aktualizovatelné tabulky registru.
Hodnoty v tabulce aktualizovatelných registrů a odpovídající tabulce historie poskytují kroniku hodnot databáze v průběhu času. Zobrazení registru generované systémem spojuje aktualizovatelnou tabulku registru a tabulku historie, abyste mohli snadno dotazovat tuto kroniku databáze.
Další informace o aktualizovatelných tabulkách registru naleznete v tématu Vytvoření a použití aktualizovatelných tabulek registru.
Tabulky záznamové pouze pro přidávání
Tabulky registru jen pro připojení jsou ideální pro vzory aplikací, které jsou určené jen pro vložení, jako jsou aplikace pro správu událostí (SIEM) a informace o zabezpečení. Tabulky registru jen pro připojení blokují aktualizace a odstranění na úrovni rozhraní API. Toto blokování poskytuje lepší ochranu proti manipulaci od privilegovaných uživatelů, jako jsou správci systému a administrátoři databáze.
Vzhledem k tomu, že do systému jsou povoleny pouze vkládání, tabulky registru pouze pro připojení nemají odpovídající tabulku historie, protože neexistuje žádná historie, která by se měla zachytit. Stejně jako u aktualizovatelných tabulek účetní knihy poskytuje zobrazení účetní knihy přehled o transakci, která vkládala řádky do tabulky pouze pro přidávání, a o uživateli, který toto vložení provedl.
Další informace o tabulkách účetní knihy pouze pro přidávání naleznete v části Vytvoření a použití tabulek účetní knihy pouze pro přidávání.
Účetní databáze
Databáze registru poskytují jednoduché řešení pro aplikace, které vyžadují ochranu integrity všech dat po celou dobu životnosti databáze. Databáze registru může obsahovat pouze tabulky registru. Vytváření běžných tabulek (které nejsou tabulkami registru) není podporováno. Každá tabulka je ve výchozím nastavení vytvořená jako aktualizovatelná tabulka registru s výchozím nastavením, což usnadňuje vytváření takových tabulek. Databázi nakonfigurujete jako databázi registru při vytváření. Po vytvoření nelze databázi registru převést na běžnou databázi. Další informace naleznete v tématu Konfigurace databáze registru.
Databázové souhrny
Hash hodnota nejnovějšího bloku v databázovém registru se nazývá souhrn databáze . Představuje stav všech tabulek registru v databázi v době, kdy se blok vygeneroval.
Při vytvoření bloku se publikuje a uloží jeho přidružený digest databáze mimo databázi v úložišti odolném proti manipulaci. Vzhledem k tomu, že hodnoty hash databáze představují stav databáze v době, kdy byly generovány, je ochrana hodnot hash před manipulací nejdůležitější. Útočník, který má přístup k úpravě digestů, by mohl:
- Manipulujte s daty v databázi.
- Vygenerujte hodnoty hash, které představují databázi s těmito změnami.
- Upravte digesty tak, aby zobrazovaly aktualizovaný hash transakcí v bloku.
Ledger poskytuje možnost automatického generování a ukládání databázových souhrnů do neproměnného úložiště nebo Azure Confidential Ledger k zamezení manipulace. Alternativně mohou uživatelé manuálně vytvářet kontroly souhrnů databází a ukládat je do umístění dle svého výběru. Data uložená v tabulkách registru se používají k pozdějšímu ověření, že data uložená v tabulkách registru nebyla manipulována.
Ověření registru
Funkce účetní knihy neumožňuje upravovat obsah systémových zobrazení účetní knihy, tabulek s možností pouze připojení a tabulek historie. Útočník nebo správce systému, který má kontrolu nad počítačem, ale může obejít všechny kontroly systému a přímo manipulovat s daty. Například útočník nebo správce systému může upravovat soubory databáze v úložišti. Ledger nemůže takovým útokům zabránit, ale zaručuje, že jakákoli manipulace bude odhalena při ověření dat v ledgeru.
Proces ověření registru přebírá jako vstup jeden nebo více dříve vygenerovaných hodnot hash databáze a rekomputuje hodnoty hash uložené v registru databáze na základě aktuálního stavu tabulek registru. Pokud vypočítané hodnoty hash neodpovídají vstupním hodnotám hash, ověření selže a značí, že data byla manipulována. Ledger pak oznamuje všechny nesrovnalosti, které zjistil.
Související obsah
- Co je registr databáze?
- Vytváření a používání tabulek registru pouze pro přidávání
- Vytváření a používání aktualizovatelných tabulek registru
- Povolení automatického ukládání shrnutí
- Konfigurace databáze registru
- Ověření tabulky registru k detekci manipulací
- Přinášíme výkon blockchainu do Azure SQL Database a SQL Server s účetní knihou | Data Exposed