Zápis událostí auditu SQL Serveru do protokolu zabezpečení
platí pro:SQL Server – jenom Windows
V prostředí s vysokým zabezpečením je protokol zabezpečení systému Windows vhodným umístěním pro zápis událostí, které zaznamenávají přístup k objektům. Jiná umístění auditu jsou podporována, ale jsou náchylnější k manipulaci.
Existují tři klíčové požadavky pro zápis auditů serveru SQL Serveru do protokolu zabezpečení systému Windows:
Nastavení přístupu k objektu auditu musí být nakonfigurováno pro zaznamenání událostí. Nástroj zásad auditu (
auditpol.exe
) zobrazuje různá nastavení podpolicií v kategorii přístup k objektům auditu . Pokud chcete SQL Serveru povolit auditovat přístup k objektům, nakonfigurujte nastavení vygenerované aplikací.Účet, na němž běží služba SQL Server, musí mít oprávnění generovat audity zabezpečení k zápisu do protokolu zabezpečení systému Windows. Ve výchozím nastavení mají účty LOCAL SERVICE a NETWORK SERVICE toto oprávnění. Tento krok se nevyžaduje, pokud sql Server běží pod jedním z těchto účtů.
Zadejte úplné oprávnění pro účet služby SQL Serveru k registru hive
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Security
.Důležitý
Nesprávná úprava registru může vážně poškodit systém. Před provedením změn registru doporučujeme zálohovat všechna hodnotná data v počítači.
Omezení a restrikce
Místní nastavení protokolu zabezpečení je možné přepsat zásadami domény. V takovém případě může zásada domény přepsat nastavení podkategorie (
auditpol /get /subcategory:"application generated"
). SQL Server nemá žádný způsob, jak zjistit, že události, které se pokouší auditovat, se nebudou zaznamenávat.Události můžou být ztraceny, pokud jsou zásady auditu nesprávně nakonfigurované. Zásady auditu systému Windows můžou ovlivnit auditování SYSTÉMU SQL Server, pokud je nakonfigurováno pro zápis do protokolu zabezpečení systému Windows. Protokol zabezpečení systému Windows je obvykle nastavený tak, aby přepsal starší události. Tím se zachovají nejnovější události. Pokud ale protokol zabezpečení systému Windows není nastavený na přepsání starších událostí, pak pokud je protokol zabezpečení plný, systém vydá událost Windows 1104 (protokol je plný). V tomto okamžiku:
Nezaznamenávají se žádné další události zabezpečení.
SQL Server nemůže zjistit, že systém nedokáže zaznamenávat události v protokolu zabezpečení, což vede k potenciální ztrátě událostí auditu.
Jakmile správce boxu opraví protokol zabezpečení, chování protokolování se vrátí do normálu.
Záznamy auditu SQL Serveru obsahují výrazně více dat než běžné položky protokolu událostí systému Windows. Kromě toho může SQL Server v závislosti na konfiguraci specifikace auditu vygenerovat v krátkém časovém období mnoho tisíc záznamů auditu (tisíce za sekundu). Za období vysokého zatížení to může vést k nepříznivým podmínkám, pokud jsou záznamy auditu zapsány do protokolu aplikace nebo do protokolu zabezpečení.
Mezi tyto nepříznivé podmínky mohou patřit:
Rychlé cyklování protokolu událostí (události se velmi rychle přepíší, jakmile soubor protokolu dosáhne limitu velikosti)
Jiné aplikace nebo služby, které čtou z protokolu událostí Systému Windows, mohou být negativně ovlivněny.
Cílové protokoly událostí mohou být nepoužitelné správci kvůli tak rychlému přepsání událostí.
Kroky, které mohou správci provést ke zmírnění těchto nepříznivých podmínek:
Zvětšete velikost cílového protokolu (4 GB není nerozumné, pokud je specifikace auditu velmi podrobná).
Snižte počet auditovaných událostí.
Vypíše záznamy auditu do souboru místo protokolů událostí.
Dovolení
Abyste mohli tato nastavení nakonfigurovat, musíte být správcem Windows.
Konfigurace nastavení přístupu k objektům auditu ve Windows pomocí auditpol
Otevřete příkazový řádek s oprávněními správce.
V nabídce Start přejděte na Příkazový řádeka vyberte Spustit jako správce.
Pokud se otevře dialogové okno řízení uživatelských účtů, vyberte Pokračovat.
Spuštěním následujícího příkazu povolte auditování z SQL Serveru.
auditpol /set /subcategory:"application generated" /success:enable /failure:enable
Zavřete okno příkazového řádku.
Udělit účtu oprávnění ke generování auditů zabezpečení pomocí secpol
V případě operačního systému Windows v nabídce Start vyberte Spustit.
Zadejte
secpol.msc
a pak vyberte OK. Pokud se zobrazí dialogové okno Řízení přístupu uživatele, vyberte Pokračovat.V nástroji Místní zásady zabezpečení přejděte na Nastavení zabezpečení > Místní zásady > přiřazení uživatelských práv.
V podokně výsledků otevřete Generování auditů zabezpečení.
Na kartě Místní nastavení zabezpečení vyberte Přidat uživatele nebo skupinu.
V dialogovém okně Vyberte uživatele, počítače nebo skupiny zadejte název uživatelského účtu, například doména1\user1 a pak vyberte OKnebo vyberte Upřesnit a vyhledejte účet.
Vyberte OK.
Zavřete nástroj Zásady zabezpečení.
Pokud chcete toto nastavení povolit, restartujte SQL Server.
Konfigurace nastavení přístupu k objektům auditu ve Windows pomocí secpol
Pokud je operační systém starší než Windows Vista nebo Windows Server 2008, v nabídce Start vyberte možnost Spustit.
Zadejte
secpol.msc
a pak vyberte OK. Pokud se zobrazí dialogové okno Řízení přístupu uživatele, vyberte Pokračovat.V nástroji Místní zásady zabezpečení přejděte na Nastavení zabezpečení > místní zásady > zásady auditu.
V podokně výsledků otevřete přístup k objektu Audit.
Na kartě Místní nastavení zabezpečení v oblasti Audit těchto událostí vyberte úspěch i selhání.
Vyberte OK.
Zavřete nástroj Zásady zabezpečení.