facebook LinkedIN LinkedIN - follow
IT SYSTEM 10/2000

Řízení přístupu k datům v datovém skladu

Petr Sobotka [ sobotka (zavináč) komix (tečka) cz ]





V odborném i odborně-populárním tisku již bylo napsáno nepřeberné množství článků o datových skladech, které tuto moderní a módní problematiku rozebírají z nejrůznějších úhlů pohledu. Rovněž počítačová bezpečnost je v poslední době pojmem, o kterém se hodně hovoří. Jak je to ale s bezpečností a řízením přístupu k datům právě v datovém skladu? Na toto téma se zatím mnoho článků neobjevilo. Technologie datových skladů sice nevytváří nové, dosud nepoznané a neprozkoumané problémy v oblasti bezpečnosti, na druhou stranu je nepochybně důležité uvědomit si vzájemný vztah obou fenoménů.

Cílem tohoto článku je naznačit, jakým způsobem lze v aplikacích datového skladu realizovat řízení přístupu zaměstnanců organizace k citlivým datům z hlediska utajení. Nebudeme se zabývat obecnými záležitostmi pro podporu bezpečnosti jako je např. ochrana přenášených dat mezi klientskou stanicí a serverem, ochrana intranetové sítě před vnějším útočníkem při zveřejnění aplikace datového skladu mimo organizaci, spolehlivá autentizace uživatele, apod.

V následujícím textu budou pro ilustraci uváděny typické příklady z praxe. Protože společnost Komix má zkušenosti s použitím datových skladů v oblasti pojišťovnictví, budou uváděné příklady souviset právě s tímto typem organizace.

Definice pojmů
Na úvod uvedeme důležité pojmy z oblasti problematiky datových skladů a databází, které budou použity v dalším textu:

· fakt - údaj sledovaný v organizaci (např. počet pojistných smluv, výše smluvních částek)

· dimenze - hledisko, podle kterého se sleduje určitý fakt (např. časová dimenze, dimenze organizačních jednotek, dimenze produktů)

· dimenzionální položka - konkrétní hodnota v dané dimenzi (např. rok 1999, org. jednotka - pobočka Náchod, produkt - pojištění léčebných výloh)

· dimenzionální úroveň - na jednotlivé dimenze lze nahlížet v různých úrovních podrobnosti (např. časová dimenze obsahuje úrovně rok, kvartál, měsíc)

· (datové) tržiště - množina několika dimenzí a jedné či více faktových hodnot pro všechny kombinace položek těchto dimenzí; slouží vždy pro sledování určité uzavřené části dat organizace (např. tržiště pro sledování počtu pojistných smluv v jednotlivých organizačních jednotkách podle jeho vývoje v čase)

· datový sklad - soubor datových tržišť obsahující data celé organizace

· RDBMS - systém pro relační správu dat (Relational DataBase Management System), "relační databázový systém"

· OLAP Server - softwarový systém pro analytické zpracování dat (On-Line Analytical Processing); tímto termínem se obvykle označují systémy realizující funkce datového skladu

· "vločka" - způsob uložení datového tržiště do tabulek RDBMS; obsahuje vždy jednu centrální tabulku s hodnotami faktů pro různé kombinace nejdetailnějších úrovní dimenzí a k ní přes klíčové hodnoty připojené dimenzionální tabulky

· tabulka faktů - centrální tabulka ve vločce (viz předchozí pojem)

· multidimenzionální databáze - databázový systém organizující data ve vícerozměrných polích (tzv. multidimenzionálních kostkách); jejich použití je vhodné především pro uložení velkého objemu dat, která jsou nahlížena z různých perspektiv

Různé pohledy na zařazení zaměstnance v organizaci
V době návrhu mechanismů pro zajištění bezpečnosti dat uvnitř organizace je nutné si uvědomit její strukturu a logické členění zaměstnanců. Jednotlivé zaměstnance lze většinou rozdělit do skupin podle toho, jakým způsobem a k jakým datům přistupují. Takové rozdělení značně pomáhá v okamžiku přidělování práv přístupu k datům organizace, protože přístupová oprávnění se stanovují na úrovni těchto skupin a nikoliv na úrovni jednotlivých uživatelů. Důsledkem je jednodušší administrace bezpečnostní politiky v situaci, kdy má organizace velký počet zaměstnanců.

První způsob náhledu na členění zaměstnanců je jejich funkce v organizaci. Podle funkce, kterou zaměstnanec zastává, budeme hovořit o jeho zařazení do tzv. rolí. Role definují především to, jakým způsobem a k jakému typu údaje zaměstnanec přistupuje. Typické role v pojišťovací společnosti jsou:

· běžný úředník pracující na přepážce,
· kontrolor plnění podmínek pojistných smluv,
· likvidátor škod.

Druhý obvyklý způsob členění zaměstnanců souvisí s jejich přístupovým oprávněním k určité omezené části dat daného typu.

Toto rozdělení zaměstnanců budeme označovat jako skupiny (pojem skupina v předchozím textu byl použit jako termín obecného významu, v dalším textu bude skupina označovat právě tento druhý způsob členění zaměstnanců). V rámci jedné role mají uživatelé patřící do různých skupin právo přístupu k různým datům.

Skupiny určují, k jakým datům bude mít zaměstnanec v rámci své role právo přístupu. Jako příklady skupin můžeme uvést:

· rozdělení zaměstnanců podle organizačních jednotek; každý má potom právo pouze na data, která náleží k "jeho" organizační jednotce,

· členění podle přiřazení zaměstnance k určité skupině produktů, které nabízí organizace; v pojišťovně se může jednat např. o produkty v oblasti důchodové, úrazového či majetkového pojištění apod.,

· rozdělení podle oprávnění přístupu ke kontraktům pouze do určité výše smluvní částky.

Jednotlivým zaměstnancům jsou tedy přiděleny role a každý zaměstnanec může patřit do více skupin. V pojišťovací organizaci se např. mohou vyskytovat zaměstnanci jako:

· běžný úředník z pobočky Náchod - role: běžný úředník, skupina: organizační jednotka Náchod (má právo pouze na přístup k datům vzniklým v dané pobočce),

· kontrolor plnění podmínek pojistných smluv se souhrnným rizikem do 10 milionů korun - role: kontrolor, skupina: riziková částka do 10 mil.,

· likvidátor škod majetkového pojištění v celé organizaci - role: likvidátor, skupina: produkt typu majetkové pojištění.

Vazba rolí a skupin na elementy datového skladu

V předchozím textu jsme zavedli pojmy role a skupina. Podívejme se nyní, jaký existuje vztah mezi způsobem uložením dat v datovém skladu a zařazením zaměstnanců - uživatelů datového skladu - do těchto rolí a skupin.

Veškerá data organizace, která jsou soustředěna do datového skladu, mohou být rozdělena do jednotlivých datových tržišť. Tržiště se skládá z faktů a dimenzí. Fakta v tržišti představují typ údaje, který se pomocí daného tržiště sleduje. Dimenze určují, z jakých hledisek lze tato fakta sledovat. Jak bylo uvedeno, právě uživatelské role souvisí se způsobem přístupu k datům určitého typu. To znamená, že struktura tržiště určuje, pro jaké role je dané tržiště určeno. Jinými slovy řečeno, pomocí rolí lze definovat oprávnění přístupu uživatele ke konkrétním tržištím.

Druhou otázkou je, jakým způsobem se uplatní rozdělení uživatelů do skupin. Na základě výše uvedených příkladů skupin dojdeme k závěru, že skupiny souvisí s obsahem dimenzí (tj. jednotlivými dimenzionálními položkami). Pokud uvažujeme např. dimenzi organizačních jednotek, je možno požadovat, aby konkrétní uživatel měl přístup pouze k té části dat, která odpovídají "jeho" organizační jednotce, resp. organizační jednotce skupiny, do které patří. Totéž může platit pro libovolné jiné dimenze, jejichž položky jsou přiřazeny konkrétním skupinám. Prostřednictvím skupin bude proto zřejmě možné omezit přístup uživatelů jen k těm datům, která odpovídají konkrétním dimenzionálním položkám.

Pokud shrneme předchozí dva odstavce, dojdeme k závěru, že:

· role určují přístup uživatelů k tržištím datového skladu,

· skupiny definují přístup k jednotlivým dimenzionálním položkám v rámci tržišť.

Implementace řízení přístupu k datům datového skladu
Zajímavým důsledkem našich úvah je, jakým způsobem by bylo možné uplatnit bezpečnostní politiku přístupu k datům datového skladu. Prvním možným přístupem je implementace definovaných pravidel v programové nadstavbě databázového systému, která realizuje funkce datového skladu - OLAP server. Tato vrstva potom je odpovědná za:

· poskytování tržišť pouze těm uživatelům, kteří na ně mají z titulu své role právo,

· filtrování dat takovým způsobem, aby uživatel získal pouze faktové hodnoty, které odpovídají dimenzionálním položkám, k nimž má uživatel právo podle svého zařazení do určité skupiny.

Toto řešení předpokládá, že pro běžné uživatele nesmí existovat jiná možnost přístupu k datům v databázi, než prostřednictvím OLAP serveru. Pokud by uživatelé měli k dispozici nástroj, pomocí kterého by mohli nahlížet přímo na data v databázi (SQL klient), nebylo by možné spoléhat na utajení citlivých dat před neoprávněným přístupem.

Druhou možností je zabezpečení dat na úrovni databáze spojené s šifrováním uložených dat. Takové řešení je odolné vůči téměř libovolným pokusům o neoprávněný přístup k datům datového skladu. Bezpečnost dat v systému je zajištěna i v okamžiku, kdy se uživatel dostane k systémovým prostředkům, které mu umožňují přímý přístup do databáze. Rozeberme nyní podrobněji, jaký je vztah mezi strukturou datového tržiště a uložením dat v relační, resp. multidimenzionální databázi a co z toho vyplývá pro implementaci řízení přístupu k datům datového skladu.

Uvažujme nejprve relační uložení dat. Jednotlivá data jsou rozdělena do tržišť, přičemž může nastat dvojí situace:

· každému tržišti odpovídá jedna tabulka faktů obsahující faktové a dimenzionální sloupce - role pak definují právo přístupu uživatelů ke konkrétním tabulkám; přidělování práv k tabulkám je běžně k dispozici ve většině RDBMS,

· veškerá data datového skladu se nacházejí v jediné tabulce, rozdělení do tržišť je pouze virtuální a popsané např. pomocí metadat - v tomto případě souvisí role s právem přístupu k jednotlivým sloupcům dané tabulky (dimenzionálním i faktovým); přestože RDBMS opět standardně poskytují nástroje pro řízení přístupu k jednotlivým sloupcům tabulek, má toto řešení jedno omezení - není možné určitou dimenzi či fakt v jednom tržišti uživateli zpřístupnit a v jiném zakázat.

Tímto jsme vysvětlili, jakým způsobem se na databázové úrovni uplatňují uživatelské role.

Jakým způsobem se uplatní rozdělení uživatelů do skupin, které jsme zavedli v předchozím textu? Vzhledem k tomu, že jednotlivým položkám dimenze odpovídají jednotlivé řádky v dimenzionálních tabulkách, určují skupiny to, ke kterým řádkům tabulek faktů bude mít uživatel přístup (viz Obrázek 3). Řízení přístupu k řádkům tabulek v relačních databázích není zdaleka standardně poskytovaná funkcionalita, ovšem existují komerčně nabízené softwarové nadstavby, které databázový systém v tomto smyslu rozšiřují.

V případě multidimenzionálního uložení dat, což je technologie používaná při realizaci některých implementací datových skladů, je situace obdobná s tím rozdílem, že:

· role určují přístup k jednotlivým multidimenzionálním kostkám, resp. omezují přístup k některým dimenzím dané kostky a některým hodnotám (faktům) uvnitř kostky,

· skupiny definují omezené řezy datovou kostkou.

Závěr
Smyslem tohoto článku bylo nabídnout pohled na část problematiky zabezpečení dat v datovém skladu vůči neoprávněnému přístupu uživatelů - zaměstnanců organizace. Byla naznačena vzájemná vazba mezi rozdělením zaměstnanců v organizaci a jednotlivými elementy datového skladu. Rovněž byly uvedeny souvislosti s možnou implementací mechanismů pro řízení přístupu k datům.

Skutečná implementace přístupových práv v aplikaci datového skladu tak, jak jsme ji navrhli a realizovali v KMXWarehouse verze 3, vychází z uvedených myšlenek. Celá problematika přístupových práv v daném typu aplikace (nemluvě o ostatních aspektech počítačové bezpečnosti) je ovšem mnohem složitější a vždy je třeba hledat vhodný kompromis mezi splněním požadovaných nároků, implementační náročností a jednoduchým a srozumitelným ovládáním pro uživatele.

Chcete získat časopis IT Systems s tímto a mnoha dalšími články z oblasti informačních systémů a řízení podnikové informatiky? Objednejte si předplatné nebo konkrétní vydání časopisu IT Systems z našeho archivu.


Inzerce

Modernizace IS je příležitost přehodnotit způsob práce

IT Systems 4/2025V aktuálním vydání IT Systems bych chtěl upozornit především na přílohu věnovanou kybernetické bezpečnosti. Jde o problematiku, které se věnujeme prakticky v každém vydání. Neustále se totiž vyvíjí a rozšiřuje. Tematická příloha Cyber Security je příležitostí podívat se podrobněji, jakým kybernetickým hrozbám dnes musíme čelit a jak se před nimi můžeme chránit. Kromě kybernetické bezpečnosti jsme se zaměřili také na digitalizaci průmyslu.