Předchozí díly našeho seriálu naznačily některé klíčové tendence v oblasti řízení přístupu a oprávnění na platformě Windows. Adresářové služby jednoznačně zvítězily na straně vytváření a udržování identit uživatelů, a dnes si jen těžko představíme větší síť s platformou Windows bez řízení přístupu za přispění Active Directory.
Výrobce však prostoupil ještě dále: dnes můžeme na serverech s Windows instalovat nejen klasickou službu Active Directory, ale také „nezávislou“ variantu služby LDAP v jakési odlehčené podobě (tzv. AD LDS), která nám nabízí větší svobodu v návrhu podoby databáze a jejích objektů.
Právě tato varianta se hodí jako úložiště pro aplikace, které z dobrých bezpečnostních důvodů nemají sahat do centrální Active Directory a tím riskovat neoprávněný přístup. Využití je nasnadě: třeba služby či servery v izolovaných síťových zónách nemusejí přímo kontaktovat plnokrevnou Active Directory a vystačí si s odlehčenou, specializovanou variantou.
Druhým klíčovým trendem je orientace na webové aplikace, přesněji řečeno přerod řady aplikací do podoby webových služeb, který s sebou nese též jasně určený způsob ověřování a zabezpečení. Středobodem se zde stává technologie IIS, o níž jsme hodně mluvili minule, a její sada ověřovacích protokolů a možností. Na první pohled nemusí být tento „plíživý“ vývoj tak dobře patrný, ale stačí důkladnější pohled a zjistíme, v jaké šíři se toto děje.
Vezměme si několik případů z různých oblastí: o řešení Exchange jsme si již řekli dosti, nezmínili jsme ale prozatím třeba novou služby Exchange Web Services, která po dlouhých letech konečně přináší možnost komunikovat s obsahem databází schránek přes definované webové rozhraní; z jiného soudku nechť je kupříkladu správa Active Directory prostřednictvím AD Management Gateway Service, tedy služby, která je, ano, webová.
A když už jsme u správy, Powershell je fenoménem současnosti a platformou zítřka pro správu systémů Windows a aplikací na nich, a jeho vzdálená komunikace probíhá – jak asi čtenář očekává – prostřednictvím webové služby, i když ji zrovna nemusí provozovat IIS, ale v tomto případě služba WinRM (též WS-Man). Jiný zářný příklad, služby SharePoint, si necháme hned na další odstavec.
Na třetím místě pak zmiňme ještě jeden zajímavý vývojový směr, který možná patří k těm nejméně nápadným. Poměrně výrazně se projevil především v produktu MS Exchange, v omezené míře je využit také v dalších řešeních jako SharePoint, MS SQL či certifikačních autoritách, a jinak byl prozatím znám spíše správcům odlišných platforem, či teoretikům v oblasti počítačové bezpečnosti.
Můžeme jej označit jako řízení přístupu pomocí rolí a s ním spojenou identifikaci uživatelů na podobné bázi. Připomeňme, že jde o významný a zajímavý posun. Nejen ve Windows dominuje po dlouhá léta zásadní princip ověření pomocí uživatelského účtu a řízení přístupu prostřednictvím tzv. bezpečnostních (či zabezpečených) skupin, což je poměrně přímočarý a konkrétní model.
Zavedení rolí či podobných mechanizmů je v podstatě zavedením vyšších vrstev abstrakce, které nás posunují od striktní reality operačního systému k modelu bližšímu „lidské“ hierarchii a složitějším vztahům, založeným na více okolnostech (než je jednoznačné: patří do skupiny ano/ne). Dalo by se tedy říci, že též identity a bezpečnostní vztahy se nám virtualizují a abstrahují, což asi dnes nikoho nepřekvapí, když už vlastně běžíme na „virtuálních“ procesorech a kus strojového kódu aby jeden pohledal. Trend řízení přístupu pomocí rolí nabude významu s příchodem nových Windows, a proto se u něj ještě zastavíme.
Syntéza: SharePoint a MS SQL
Aplikační platforma, jejíž varianty budeme souhrnně označovat jako SharePoint, je zářnou ukázkou syntézy dosažených možností aplikační bezpečnosti. Spolehlivé zázemí poskytuje služba webového serveru, tedy ve Windows služba IIS, a s ní spojené mechanismy zabezpečení při přístupu na dynamicky sestavované stránky.
Autentizace, kterou jsme již dříve označili jako formulářovou (web based), pracuje jako univerzální mechanismus při vstupu přihlašovacích údajů, ruku v ruce se zabezpečeným přenosem SSL. Pakliže hovoříme o vnitřní síti, a tedy vlastně o „intranetu“, snaží se nám SharePoint poskytovat ověřování integrované s klientským operačním systémem tak, aby výsledkem bylo očekávané unifikované přihlašování „najedenkrát“ (single sign-on).
Středobodem správy identit, tedy účtů uživatelů, je zde jednoznačně služba LDAP, tedy Active Directory, která slouží jako odrazový můstek k nadstavbě v podobě řízení přístupu pomocí určitých rolí. Logika těchto rolí je však poměrně pevně vázána na dokumenty, či stránky v rámci portálového řešení: uživatel tedy nepřistupuje do celého systému vždy jako držitel univerzálně platné role (která by jej zmocňovala k určitému přístupu), ale spíše na základě své identity získává dílčí role podle místa přístupu.
Databázový server MS SQL je další pěknou ukázkou spolupráce různých přístupů k zabezpečené přístupu ke zdrojům. Již několik generací tohoto produktu podporuje dvojaký způsob ověření identity uživatele, tedy první krok na cestě k řízení přístupu. Databázový stroj má především svou vlastní správu identit-účtů, která tak poskytuje úplnou izolaci od struktur jako jsou Active Directory či lokální databáze účtů v systému Windows.
Paralelně s tímto režimem je možno provozovat integrované ověřování, spoléhající právě na jinak běžné autority důvěryhodnosti, jako je Active Directory, a poskytnout tak komfort co nejmenšího počtu přihlašovacích údajů. Tímto duálním ověřením identity však celé řízení v podstatě začíná: skutečný přístup ke zdrojům je následně opět kontrolován sadou rolí, jež jsou definovány na několika úrovních (třeba serveru či databáze).
PKI: tradiční ctitel rolí
Technologie SSL, resp. TLS, hraje klíčovou roli v mnoha aplikacích a službách, jak ukázala i naše série. A právě její nasazení vyžaduje pevný základ v podobě důvěryhodné implementaci PKI, tedy především služeb certifikační autority a vydávaných certifikátů.
Výrobce Windows nabízí tyto technologie jako součást systému již od verze 2000, teprve s pozdějšími variantami však dochází k zavedení poměrně přísného oddělení rolí při správě této kritické a citlivé služby. Zavedení rolí zde má opodstatněnou logiku: samotný provoz služby po technické stránce by neměl být v rukou toho, kdo rozhoduje o splnění nároků na vydání citlivých, důvěryhodných certifikátů, a v zásadě ve stejném duchu se nesou i požadavky nezávislých standardů, kterým se snaží Windows vyhovět.
Proto Microsoft přistoupil, kromě tradiční koncepce řízení přístupu pomocí „access control listů“, k zavedení rolí a jejich výlučnosti. Služby certifikačních autorit se tímto staly vlastně průkopníkem tohoto přístupu na platformě Windows.
Za zmínku stojí třeba zavedení specifické role jakéhosi „auditora“, který nemá oprávnění měnit nastavení či vydávat certifikáty, ale může jen „dohlížet“ na prováděné operace z pozice jakého pozorovatele. Mimochodem, tato koncepce prosakuje v dalších verzích Windows do operačního systému obecně, a dnes je možno bez obtíží definovat limitovaná práva pro uživatele, kteří mohou sledovat třeba záznamy činnosti (logy), aniž systém mohou změnit, a tím ohrozit.
Jakou roli budou hrát role?
Ačkoliv serverová platforma Windows 8 je prozatím věcí budoucnosti, některé rysy jsou již samozřejmě zjevné, a oblast řízení přístupu by se mohla dočkat zajímavých změn. Obzvláště přístup na souborový systém patří z hlediska řízení mezi nejkonzervativnější, a právě zde by mohl nastat výrazný posun.
Systém Windows 8 by totiž měl obsahovat nový mechanismus Dynamic Access Control, který je předzvěstí zavádění již zmíněných nových trendů. Ve zkratce jde o to, že přístup na souborový systém nebude již výsledkem striktních záznamů v seznamech řízení přístupů na konkrétních objektech (ACL na souboru/adresáři), ale bude sestaven dynamicky podle vícero faktorů, jako jsou momentální členství uživatele v určitých skupinách (tedy postaru) v kombinaci s určitými atributy v Active Directory a klasifikací cílových dokumentů samotných.
Takto formulováno to vypadá možná dosti suše, ale je třeba na celou věc pohledět s mírnou rozvahou. Jak tedy budu moci ovlivnit přístup ke zdrojům? Už to nebude jen ono zaklínadlo členství ve skupinách, ale můžete operativně upravovat řadu jiných atributů a tím přístup řídit. A na druhou stranu, přicházejí nové nástrahy pro správce.
Zkusme si jen představit, jak budeme takový systém auditovat a kontrolovat: kdo má momentálně kam přístup? Bude třeba nových postupů a nástrojů, nové prostředí bude opravdu v neustálém pohybu. Podobný princip je již dnes uplatněn třeba ve zmíněném produktu Exchange 2010, a provést kontrolu takovýchto nastavení, postavených na rolích, není věru legrace.
Celý mechanismus bude určitě spoléhat na další prvky, pravděpodobně bude potřeba se opírat také o aplikace, jež budou celé architektuře rozumět. Na druhou stranu, jistě přijdou i výhody, jako aplikace pravidel na vícero serverech v síti bez nutnosti všude opakovaně nastavovat práva, či třeba zavedení pokročilejší logiky komunikace s uživatelem, než je prosté oznámení, že přístup byl odepřen. Ať už se nová implementace objeví v příští verzi Windows, nebo ne, vytyčený směr je jasný a v nastoupené cestě se jistě bude pokračovat.