facebook LinkedIN LinkedIN - follow
IT SYSTEMS 1-2/2015 , ITSM (ITIL) - Řízení IT

Cesta k efektivnímu identity managementu (1. díl)

Základy správy identit a přístupů



EvolveumSpráva identit a přístupů (Identity and Access Management, IAM) je klíčová oblast pro zaručení bezpečnosti a efektivity téměř jakékoliv organizace. Podnikové prostředí nedokáže efektivně existovat bez těchto technologií, jsou nevyhnutelné jak pro telekomunikaci, tak i pro profesionálně navrhnutý „cloud“. Navzdory tomu, že jsou tyto technologie tak důležité, jen velmi málo lidí jim opravdu rozumí. Za více než deset let práce s těmito technologiemi jsme se setkali s množstvím mýtů a polopravd, které velmi často ohrožují a předražují implementační projekty. Přitom samotné technologie správy identit a přístupů nejsou komplikované a je možné je efektivně nasadit, pokud se použijí správně. Proto jsme se rozhodli sestavit seriál o jejich principech a efektivním použití.


Základem porozumění celé IAM oblasti je fakt, že IAM není jedna konkrétní technologie, ale soubor několika spolupracujících technologií. Jednotlivé prvky řešení se kombinují přesně podle potřeb konkrétního prostředí, proto mají projekty vysokou variabilitu. Navzdory této variabilitě existují tři technologie, které je možné najít v téměř jakémkoliv řešení:

  • Adresářová služba (directory service) udržuje centrální databázi uživatelů.
  • Systém řízení přístupů (access management) vykonává centrální autentifikaci (SSO), základní autorizaci, zaznamenávání (audit) přístupů atp.
  • Provisioning systém zabezpečuje správu databáze uživatelů, její synchronizaci (např. s personálním), řídí bezpečnostní politiku atp.

Tyto tři technologie se navzájem doplňují. Jakékoliv netriviální IAM řešení nutně potřebuje všechny tři technologie, aby bylo kompletní. Ani jednu z nich není možné vynechat nebo zanedbat. Například adresářová služba může sloužit na autentifikaci uživatelů a často se tak v jednoduchých řešeních používá. Tato metoda je však značně omezená a pro profesionální řešení je třeba nahradit ji plnohodnotným systémem na správu přístupů. Dalším příkladem je synchronizace uživatelských databází. Téměř každá organizace má alespoň dvě uživatelské databáze: personalistiku a doménu (Active Directory). V jednoduchých řešeních se tyto databáze synchronizují ručně, což je pomalé, chybové a potencionálně otvírá velká bezpečnostní rizika. Zapojení provisioning systému do IAM řešení tyto problémy odstraní. Proto jen kombinace všech třech technologií vytváří uspokojivé řešení.

Adresářová služba (directory service) je komponenta, kterou je možné najít snad v každém nasazeném systému. U menších podnikových nasazeních je to často známé Active Directory. U větších škálovatelných systémů se často používá systém dedikovaných LDAP serverů. Ať už je použitý jakýkoliv produkt, základní princip je stejný: adresářová služba je specializovaná databáze uživatelů a je už svým návrhům přizpůsobená údajům o identitách. Výkon systému je vyladěný na údaje, které se zřídka mění, ale za to velmi často čtou, jsou tu speciální atributy pro heslo, fotografii a podobně. Použití vhodné adresářové služby je základem snad každého IAM řešení. Ale i když je adresářová služba specializovaná na údaje o identitách, stále je to jen databáze - služba ukládá a efektivně vyhledává údaje, ale možnosti transformace údajů téměř neexistují. Adresářová služba ukládá heslo a podobné „credentials“, ale možnosti použití těchto údajů na přímou autentifikaci jsou omezené. Klíčovým bodem při efektivním IAM řešení je uvědomit si, že adresářová služba je jen databáze a složitou logiku přenechává ostatním komponentům.

Některé nedostatky adresářových služeb řeší systémy na správu přístupů (access management, AM). Tyto systémy spolupracují s aplikacemi nebo aplikačními bránami tak, aby dokázaly zpracovat jakýkoliv přístup k aplikacím. Ve světě webových aplikací je toto řešeno převážně přesměrováním autentifikačních stránek aplikace na AM systém. AM vykoná autentifikaci uživatele (a to i více faktorovou) a přesměruje spojení zpět na aplikaci. AM systém dokáže vykonat i částečnou autorizaci přístupu, i když granularita autorizace je většinou omezená jen na úroveň aplikace jako celku. Událost vykonání autorizace se na straně AM systému zaznamená, což slouží pro účely auditu, ale i pro zjednodušení přihlašování. Uživatel přihlášený do jedné aplikace může přistoupit na další aplikaci bez nutnosti přihlašovat se znova. Moderní AM řešení implementují federaci identit mezi organizacemi, integraci na sociální sítě atp.

Služby poskytované AM systémy jsou pověstným svatým grálem IAM technologií. Tyto služby jsou to, co uživatelé vidí a čeho chtějí společně s vedením firmy dosáhnout. Jak to už obyčejně bývá, ani toto není tak jednoduché, jak by se na první pohled mohlo zdát. Na to, aby AM systém dobře pracoval, musí mít k dispozici sjednocenou databázi uživatelů. To možná zní triviálně, ale v praxi to není jednoduché. Pro mnoho organizací jsou náročné i zdánlivě tak jednoduché věci, jako je zabezpečení jednotných identifikátorů (login name) pro přihlášení do všech aplikací. Některé aplikace používají příjmení, jiné osobní číslo, další kombinaci prvních písmen příjmení a náhodným číslem atp. Přitom pokud se nesjednotí identifikátor, systém na řízení přístupu je téměř bezmocný. Ani sjednocením identifikátoru problémy nekončí. Pokud je identifikátor založený na příjmení, mění se překvapivě často a to zejména kvůli sňatkům. V tomto případě je potřebné zabezpečit synchronní změnu identifikátoru mezi centrální databází (adresářovou službou) a databázemi všech relevantních aplikací. I tato úloha je v praxi mnohem složitější, než jak se jeví na první pohled.

Zde přichází do hry poslední komponent: provisioning systém. Hlavní zodpovědností provisioning systému je synchronizovat údaje v adresářové službě, aplikacích, personalistických systémech atp. V ideálním případě by data měla existovat jen v jedné databázi. Toto je však možné jen v extrémně jednoduchých systémech. V praxi je takových databází několik a systémy s desítkami nebo i stovkami databází nejsou úplně výjimečné. Všechny tyto databáze je potřeba udržovat konzistentní, jinak se celý systém rozpadne. Konzistence databází je přesně to, co provisioning systém zabezpečuje, proto je tento systém svým způsobem úplně nejdokonalejší komponentou IAM řešení. Kromě toho aplikuje bezpečnostní politiky, transformuje údaje, řídí pracovní procesy, poskytuje samoobslužné služby atp.

Je téměř nemožné sestavit plnohodnotné IAM řešení bez kterékoliv z těchto komponent. Adresářový systém, řízení přístupu a řízení identit pomocí provisioning systému jsou klíčové prvky IAM řešení. Samotný název „Identitiy and Access Management“ hovoří sám za sebe.

V dalších částech seriálu podrobněji popíšeme každou z těchto třech technologických oblastí a poté se budeme věnovat i tomu, jak z nich sestavit efektivní řešení.

Ing. Radovan Semančík, PhD., Evolveum Ing. Radovan Semančík, PhD., Evolveum
Autor pracuje ve společnosti Evolveum na pozici softwarového architekta a specialisty na správu identit. Navrhoval jedno z prvních řešení správy identit ve střední Evropě a podílel se na návrhu a nasazení mnoha komplexních řešení v oblasti správy identit. Momentálně věnuje většinu svého času vedením projektu midPoint, který je nejrozsáhlejším volně dostupným open source systémem pro správu identit.
Spoluautor Stanislav Grünfeld, MBA
působí ve společností AMI Praha jako ředitel realizace a je zodpovědný za projekty v oblasti identity managementu.
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.