Translation not up to date
Chcete-li spravovat přístup k vašim citlivým datům, můžete použít mechanizmus ověřování a řízení přístupu k zavedení pravidel a ovladačů pro přístup k datům. Chcete-li však chránit před neznámým nebo nepřijatelným chováním a odhalovat je, můžete monitorovat přístup k datům pomocí funkce auditu Db2® .
Úspěšné monitorování nechtěného přístupu k datům a následná analýza může vést ke zlepšení kontroly přístupu k datům a k konečné prevenci škodlivého nebo bezúdržbného neoprávněného přístupu k datům. Monitorování přístupu k aplikacím a jednotlivým uživatelům, včetně akcí administrace systému, může poskytovat historický záznam aktivity na vašich databázových systémech.
- Audit (AUDIT)
- Generuje záznamy při změně nastavení auditu nebo při přístupu k protokolu auditu.
- Kontrola autorizace (CHECKING)
- Generuje záznamy během kontroly autorizace pokusů o přístup k databázovým objektům nebo funkcím Db2 nebo k manipulaci s nimi.
- Údržba objektu (OBJMAINT)
- Generuje záznamy při vytváření nebo rušení datových objektů a při změně určitých objektů.
- Údržba zabezpečení (SECMAINT)
- Generuje záznamy pro následující podmínky:
- Udělení nebo odebrání oprávnění k objektům nebo databázovým orgánům.
- Udělení nebo odebrání návěští zabezpečení nebo vynětí.
- Pozměnění autorizace skupin, autorizace rolí nebo přepsání nebo omezení atributů zásady zabezpečení LBAC.
- Udělení nebo odebrání oprávnění SETSESSIONUSER.
- Úpravy libovolných konfiguračních parametrů SYSADM_GROUP, SYSCTRL_GROUP, SYSMAINT_GROUP nebo SYSMON_GROUP.
- Administrace systému (SYSADMIN)
- Generuje záznamy, jsou-li provedeny operace, které vyžadují oprávnění SYSADM, SYSMAINT nebo SYSCTRL.
- Ověření uživatele (VALIDATE)
- Generuje záznamy při ověřování uživatelů nebo získávání informací o zabezpečení systému.
- Kontext operace (CONTEXT)
- Generuje záznamy pro zobrazení kontextu operace při provádění databázové operace. Tato kategorie umožňuje lepší interpretaci souboru protokolu auditu. Při použití v poli korelátoru událostí protokolu může být skupina událostí přidružena zpět k jedné operaci databáze. Například dotazovací příkaz pro dynamické dotazy, identifikátor balíku pro statické dotazy nebo indikátor typu prováděné operace, jako např. CONNECT, může poskytnout potřebný kontext při analýze výsledků auditu.
- Provést (EXECUTE)
- Generuje záznamy během provádění příkazů SQL.
U kterékoli z uvedených kategorií můžete monitorovat selhání, úspěch nebo obojí.
Všechny operace na databázovém serveru mohou generovat několik záznamů. Skutečný počet záznamů generovaných v protokolu auditu závisí na počtu kategorií událostí, které mají být zaznamenávány, jak je uvedeno v konfiguraci prostředku auditu. Závisí to také na tom, zda jsou auditovány úspěchy, poruchy nebo obojí. Je důležité, aby byly tyto události k auditu selektivní.
Záznamy generované z tohoto zařízení lze zobrazit ze sady tabulek AUDIT, kde každá tabulka odpovídá každé kategorii. Analýza těchto záznamů může odhalit vzory použití, které mohou identifikovat zneužití systému. Je-li zjištěno nesprávné použití, lze podniknout kroky ke snížení nebo eliminaci zneužití systému.
Funkce auditu poskytuje schopnost monitorovat na úrovni databáze. Každý člen skupiny administrátorů může konfigurovat zásadu auditu, aby kontroloval, kdy jsou takové informace o auditu shromažďovány, jako např. monitorování autorizačních ID, oprávnění k databázi, důvěryhodné kontexty nebo konkrétní tabulky.
Rychlé spuštění
- AUDIT_ALL je předdefinovaná zásada, která se konfiguruje během implementace. Tato zásada audituje všechny úspěchy a selhání pro každou kategorii záznamů auditu. Doporučuje se, abyste vytvořili vlastní zásadu, která vyhovuje vašim potřebám.
- AUDIT_UPDATE je předdefinovaná procedura, která extrahuje a načítá záznamy auditu do AUDIT.* tabulky.
- Příkazy AUDIT vyžadují, aby uživatelé disponovaly oprávněním SECADM. Chcete-li zobrazit data v AUDIT.* tabulky, uživatelé, kterým je uděleno oprávnění SELECT pro tyto tabulky, jsou schopni přistupovat k nim.
- Chcete-li povolit AUDIT k zachycení všech událostí ve službě pro každou roli,
AUDIT ROLE DV_ADMIN USING POLICY AUDIT_ALL; AUDIT ROLE DV_ENGINEER USING POLICY AUDIT_ALL; AUDIT ROLE DV_STEWARD USING POLICY AUDIT_ALL; AUDIT ROLE DV_WORKER USING POLICY AUDIT_ALL;
- Chcete-li vytvořit naplánovanou úlohu aktualizace auditu za účelem získání nejnovějších záznamů auditu do tabulek auditu každých 15 minut (minimální interval mezi aktualizacemi),
CALL SYSPROC.ADMIN_TASK_ADD( 'AUDIT_UPDATE', NULL, NULL, NULL, '*/15 * * * *', 'AUDIT', 'UPDATE', NULL, NULL, 'Periodically update to audit tables' );
- Chcete-li zobrazit záznamy auditu z 8 kategorií událostí auditu
select * from AUDIT.AUDIT;
select * from AUDIT.CHECKING;
select * from AUDIT.CONTEXT;
select * from AUDIT.EXCUTE;
select * from AUDIT.OBJMAINT;
select * from AUDIT.SECMAINT;
select * from AUDIT.SYSADMIN;
select * from AUDIT.VALIDATE;
- Vytvoření zásady auditu
- Začněte používat zásadu auditu.
- Konfigurace vlastní zásady auditu
- Zobrazit všechny zásady auditu, které byly vytvořeny
- Zkontrolovat, které zásady auditu se momentálně používají
- Zastavit audit na entitě databáze
- Zastavit audit ve skupině
- Vytvořit naplánovanou úlohu
- Upravit plánovanou úlohu
- Monitorování stavu naplánované úlohy aktualizace auditu
- Načtěte nejnovější záznamy auditu do AUDIT.* ihned tabulky
Další informace viz téma Zásady auditu.
CREATE AUDIT POLICY policy_name CATEGORIES category or ALL STATUS status ERROR TYPE NORMAL;
Další informace viz Příkaz CREATE AUDIT POLICY.
- Názvy zásad auditu
- Ujistěte se, že název je jedinečný a jeho účel je snadno identifikovatelný, například
AUDIT_SOC2_COMPLIANCE
neboAUDIT_LOGIN_ONLY
. Nezačínáte s názvemSYS
, protože je rezervováno pro interní názvy systémů v databázi. - Kategorie určené k auditu
- Zásada určuje, které kategorie mají být auditovány. Tato zásada může být použita na jiné databázové objekty, aby bylo možné určit, jak se mají tyto objekty používat. Pro audit je k dispozici osm dostupných kategorií. Čím více kategorií je nakonfigurováno, tím více informací je auditováno a kumuluje se do vyrovnávací paměti auditu s výpočetním prostorem. Pochopení toho, co je zapotřebí pro váš účel je důležité, aby se zabránilo přetížení výpočetního prostoru systému. Souhrn popisuje každou dostupnou kategorii. Je-li jako volba kategorie zadána hodnota
ALL
, nelze zadat žádnou další kategorii.Chcete-li splnit nejvyšší standardy zabezpečení, doporučené kategorie v následujícím seznamu budou mít přístup k monitorování řízení přístupu, ověřování a privilegovaného přístupu. Konfigurace zásad s těmito kategoriemi zajistí, že při údržbě zabezpečení bude minimální režie.EXECUTE WITHOUT DATA
-Řízení přístupuVALIDATE
-OvěřováníSECMAINT
-Monitorování privilegovaného přístupu
Kromě toho by u každé kategorie měly být auditovány jak úspěchy, tak i scénáře selhání, a typ chyby by měl protokolovat pouze chyby kódu SQL.STATUS BOTH
ERROR TYPE NORMAL
AUDIT database_entity USING POLICY policy_name;
Další informace viz Příkaz AUDIT.
Upravenou zásadu auditu můžete nakonfigurovat tak, aby zachytával požadavky na ověření a úspěšně provedly příkazy SQL a povolili jej.
CREATE AUDIT POLICY AUDIT_VALIDATE_EXECUTE CATEGORIES VALIDATE STATUS BOTH, EXECUTE STATUS SUCCESS ERROR TYPE NORMAL;
- Auditovat databázové objekty
- Auditování celé databáze bude mít za následek výpočet přetížení prostoru. Doporučení slouží k identifikaci tabulky a přidružené tabulky materializovaného dotazu (MQT) pro použití zásady.Pozn.: Zásada auditu, která platí pro tabulku, se nevztahuje na tabulku materializovaného dotazu (MQT) založenou na této tabulce. Doporučuje se, abyste přidružili zásadu auditu k tabulce, ale také tuto zásadu přidružíte ke kterékoli tabulce MQT založené na této tabulce. Kompilátor může automaticky použít tabulku MQT, i když příkaz SQL odkazuje na základní tabulku; avšak zásada auditu použitá pro základní tabulku bude stále v platnosti.
Další doporučenou konfigurací je použití zásady pro skupinu nebo roli. Tuto konfiguraci můžete použít k monitorování toho, kteří uživatelé ve které skupině a roli provádějí jakékoli neočekávané akce. Zvolíte-li použití zásady na celou databázi, ujistěte se, že zásada neuchovává záznam všech kategorií.
- Povolit zásadu auditu pro tabulku
AUDIT TABLE CUSTOMTABLE USING POLICY AUDIT_VALIDATE_EXECUTE;
Můžete také nakonfigurovat přizpůsobenou zásadu auditu tak, aby zachytával pouze požadavky na ověření (úspěch i selhání) a povolili jej.
CREATE AUDIT POLICY AUDIT_VALIDATE_ONLY CATEGORIES VALIDATE STATUS BOTH ERROR TYPE NORMAL;
select * from SYSCAT.AUDITPOLICIES;
Následující příklad výstupu je výsledkem spuštění předchozího příkazu SELECT:AUDITPOLICYNAME AUDITPOLICYID CREATE_TIME ALTER_TIME AUDITSTATUS CONTEXTSTATUS VALIDATESTATUS CHECKINGSTATUS SECMAINTSTATUS OBJMAINTSTATUS SYSADMINSTATUS EXECUTESTATUS EXECUTEWITHDATA ERRORTYPE REMARKS ---------------------------- ------------- -------------------------- -------------------------- ----------- ------------- -------------- -------------- -------------- -------------- -------------- ------------- --------------- --------- ------- AUDIT_VALIDATE_ONLY 108 2018-07-23-21.00.57.024758 2018-07-23-21.00.57.024758 N N B N N N N N N N - AUDIT_ALL 106 2018-07-23-20.51.18.017062 2018-07-23-20.51.18.017062 B B B B B B B B N N - 2 record(s) selected.
select * from SYSCAT.AUDITUSE;
Následující příklad výstupu je výsledkem spuštění předchozího příkazu SELECT:AUDITPOLICYNAME AUDITPOLICYID OBJECTTYPE SUBOBJECTTYPE OBJECTSCHEMA OBJECTNAME AUDITEXCEPTIONENABLED ------------------------- ------------- ---------- ------------- ------------- ----------------- --------------------- AUDIT_VALIDATE_ONLY 108 - CURRENT SERVER N 1 record(s) selected.
Chcete-li zastavit audit u entity databáze, zásada musí být odebrána.
AUDIT database_entity REMOVE POLICY;
Další informace viz Příkaz AUDIT.
AUDIT GROUP BLUUSERS REMOVE POLICY;
Další informace naleznete v tématu Procedura ADMIN_TASK_ADD-naplánování nové úlohy.
- Chcete-li vytvořit naplánovanou úlohu aktualizace auditu za účelem získání nejnovějších záznamů auditu do tabulek auditu každých 20 minut:
CALL SYSPROC.ADMIN_TASK_ADD( 'AUDIT_UPDATE', NULL, NULL, NULL, '*/20 * * * *', 'AUDIT', 'UPDATE', NULL, NULL, 'Periodically update to audit tables' );
- Frekvence plánu
- Frekvence spuštění předdefinované úlohy, která archivuje protokoly auditu, byla mimo rozsah tohoto testu, ale stojí za zmínku doporučení, která jsou shromážděna ze situací zákazníků s reálným životním situací. Při použití větších databází je doporučení spouštět úlohu archivace každý den po dobu 15 minut. To umožní zotavení databáze, pokud dojde k neočekávaným problémům s výkonem. Pokud jsou zásady konfigurovány podle doporučení, měly by být vyrovnávací paměti auditu schopny v daném časovém rámci obsahovat pracovní zátěž. Jak se ukázalo v testech výkonu, pokud jsou složité dotazy spuštěny souběžně s archivací záznamů auditu, očekávají se očekávané problémy s výkonem.
Další informace naleznete v tématu Procedura ADMIN_TASK_UPDATE-aktualizace existující úlohy.
- Chcete-li upravit naplánovanou úlohu aktualizace auditu za účelem získání nejnovějších záznamů auditu do tabulek auditu každých 20 minut:
CALL SYSPROC.ADMIN_TASK_UPDATE( 'AUDIT_UPDATE', NULL, NULL, NULL, '*/20 * * * *', 'Periodically update to audit tables every 20 minutes' );
- Chcete-li odebrat úlohu aktualizace plánovaného auditu, postupujte takto:
CALL SYSPROC.ADMIN_TASK_REMOVE( 'AUDIT_UPDATE', NULL );
select * from SYSTOOLS.ADMIN_TASK_STATUS;
Následující příklad výstupu je výsledkem spuštění předchozího příkazu SELECT:NAME TASKID STATUS AGENT_ID INVOCATION BEGIN_TIME END_TIME SQLCODE SQLSTATE SQLERRMC RC ------------- ------- ---------- ------------ ----------- -------------------------- -------------------------- -------- -------- -------- ----- AUDIT_UPDATE 1 COMPLETE 16433 1 2018-07-23-21.50.00.135211 2018-07-23-21.50.10.584127 0 x'' 0 AUDIT_UPDATE 1 RUNNING 16448 2 2018-07-23-21.55.00.608060 - - - - - 2 record(s) selected.
CALL AUDIT.UPDATE();
Poznámka: Poté, co spustíte toto volání procedury, můžete se setkat s touto zprávou:SQL1307N Při vyvolání funkce auditu zabezpečení došlo k chybě. Kód příčiny: "9".
Tato zpráva označuje, že od poslední doby, kdy byly tabulky auditu načteny s daty, nebyla žádná aktivita. Neoznačuje systémovou chybu.