Jak vybrat Identity Manager (IDM)?

Stojíte před výběrem Identity Manageru (IDM)? Chcete vybrat nejlepší IDM? Tento článek dává doporučení, jak IDM zvolit. Na co si dát při výběru pozor. Jaké funkce jsou důležité a jaké ne. Nenajdete zde konkrétní volbu, jméno IDM, pak by článek rychle zastaral, protože vývoj jde velmi rychle dopředu. Každý potřebuje jinou skupinu vlastností. Každý produkt IDM má trochu jinou filozofii, zaměření.

Co je identity management a Manager najdete v článku zde

Vlastnosti IDM, na které se zeptat. 

Seznam je seřazen po skupinách, které nejsou seřazeny dle důležitosti. Na podstatnou skupinu, kterou považuji za velmi důležitou, upozorním u každého bodu.

Dodavatel

Jde o zásadní volbu pro úspěch. Nejedná se o funkci IDM, přesto si myslím, že to sem patří. Vybírejte tým implementátorů, ne produkt. Kvalitní tým dokáže s různými produkty IDM podobnou muziku, naopak to neplatí. Jak na to? Nechte si navrhnout řešení na vaše potřeby. Nechte si ukázat reference. Ať vám dodavatel obhájí na vašem prostředí, jak vám IDM konkrétně pomůže. Ukázka funkcí produktu pro správný výběr dodavatele naprosto nestačí!

Co rozhodnout:

  1. Chci dodavatele na klíč, nebo si budeme implementovat řešení sami?
  2. Chci dodavatele, který je zároveň i výrobcem (vendorem) produktu IDM? Pokud dodavatel nevyvíjí produkt, pouze přeprodává, nemusí být tak flexibilní a znalý detailů jako výrobce.
  3. Chci český produkt nebo zahraniční? Ano, existují i IDM vyvíjené v ČR (my jsme jedním z výrobců). České IDM mají obvykle větší podporu například lokálních personálních systémů jako jsou Vema nebo Helios Orange/Green.

Funkce, funkce, funkce

Na funkce se každý soustředí, snadno se srovnávají. Množství funkcí se zdá být zásadní. Více je lépe. Za mne již dávno ne. 

V minulosti byly IDM obrovské implementační nástroje (moduly, knihovny, konektory) pro tým programátorů, který je přizpůsoboval dané organizaci. Aby návratnost takové velké implementace měla smysl, musela být organizace veliká. Mnoho funkcí zesložiťuje využití, prodražuje implementaci i upgrady. Dnešní trend je jiný. 

IDMka posunují mnoho funkcí od programátorů do GUI pro adminy. Aby i admin mohl co nejvíce funkcí udělat sám, například snadno připojit spravovaný systém. IDMka jsou jednodušší, intuitivnější, snadněji ovladatelná a rychleji nasaditelná. Raději méně funkcí, které jsou srozumitelné a snadno použitelné.

Kdo je cílová skupina IDM?

Toto je klíčové rozhodnutí. Kdo bude s IDM nejvíce pracovat?

  1. Uživatelé – typicky potřebují rychle požádat a schválit přístupy. Webové GUI má být srozumitelné a funkcí co nejméně.
  2. IT administrátoři – napojí si systém a nastaví synchronizace účtů. Webové rozhraní má mít hodně funkcí, obsahovat wizardy a být snadno použitelné.
  3. nebo IDM bude infrastrukturní SW na pozadí, který synchronizuje, integruje mnoho systémů. Bude zvládat mnoho transformací. Cílovkou pak bývá tým programátorů – implementátoři, kteří provádí rozsáhlé přizpůsobení.

Dříve byly IDM obecné a velmi složité integrační nástroje, tedy předchozí bod 3. Uměly splnit vše, ale byly složité a pomalé na používání. Moderní IDMka se snaží jít cestou “standardních funkcí”, které dokáže využít administrátor sám bez implementátorů. Nyní se IDMka více specializují na identity, ovšem řeší více typů identit, viz dále.

Řešené skupiny účtů

Existují 3 základní skupiny uživatelských účtů – zaměstnanci, dodavatelé a zákazníci. Na každou skupinu účtů se aplikují jiné typy procesů v IDM – na zaměstnance personální, na dodavatele proces garantů apod.

Skupiny účtů:

  1. Zaměstnanci – identita obvykle vzniká začátkem smluvního úvazku, který je načten do IDM z personalistiky.
  2. Externisti – zákazníci, dodavatelé, studenti apod. Přistupují do systémů pomocí VPN, často využívají certifikáty. Pro vznik identity se může využívat webové rozhraní IDM.
  3. Technické a servisní účty – například administrátorské účty nebo účty aplikací. Tyto účty obvykle nesmí zaniknout ani po odchodu vlastníka účtu. Nelze na ně aplikovat běžné personální procesy zaměstnanců. Mají vlastní agendu procesů. IDM může řešit i agendu předávání hesla.
  4. Privilegované účty (PIM) – například administrátor ve Windows.

Většina IDMek je přizpůsobena pouze pro zaměstnanecké účty. Moderní IDMka mají specializované funkce i na PIM, například dočasné přidávání hesla pro technický účet v databázi.

Řešené objekty v IDM:

  1. Účty v systémech,
  2. Role, katalog rolí – reprezentace skupiny práv ve spravované aplikaci nebo v IDM,
  3. Organizační struktura
    1. Složky organizace
    2. Funkční místa
  4. Pracovně právní vztahy (PPV) – dáno smluvním vztahem zaměstnance nebo kontraktora.
  5. Assets – například certifikáty, SW licence, klíčenky, karty do budovy apod.
  6. Skupiny, reprezentace počítače v doméně apod.

IDMka historicky pracovala s 1-3.

Zodpovězte si v rámci zadání, jaké účty a jiné objekty má pro vás smysl spravovat. Integrace a automatizace i s nástrojem IDM stojí nějaké investice. Asi nemá smysl automatizovat proces, který se aplikuje zřídka na minimu účtu. Takový proces může asi levněji provést administrátor.

Pěkné a rychlé web GUI

Toto je dnes naprosto zásadní bod. V IDMkách jsou v přívětivosti a rychlosti GUI obrovské rozdíly.

Dřívější IDM vypadaly jako složité tabulky. Obrazovky obsahovaly velké množství informací, číselníků, které se dlouho načítaly. Doba se změnila. Uživatelé již nechtějí číst nápovědy, nechtějí čekat na zobrazení. Uživatelé chtějí rychle vyřídit svůj úkol a jít dále – například resetovat heslo nebo podat/schválit žádost o přístup. Proto moderní IDM musí být srozumitelné. Uživatel chce raději méně informací, ale uživatelsky jednoduché a sakra rychlé. Odezvy web GUI musí být okamžité, pokud se nečeká na reakci spravované aplikace (například reset hesla v Active Directory).

Kvalitu a rychlost webového uživatelského rozhraní doporučuji otestovat. Věnujte proklikání dost času. Odzkoušejte si časté činnosti. Pokud čekáte na překreslení, je to špatně. Zvolte jiné IDMko, uživatelům se líbit nebude.

Procesy

Proces je v IDM reprezentován workflow, dále různými synchronizacemi a vstupy uživatelů a systémů. Pro zjednodušení uvažujme pod procesem sled událostí nad identitou.

Existuje několik základních typů procesů:

  1. Personální procesy:
    1. nástup zaměstnance a vznik identity, vznik pracovního úvazku,
    2. změna organizačního zařazení v rámci úvazku,
    3. změna popisných atributů (telefon, adresa apod.),
    4. vynětí z evidenčního počtu (mateřská/rodičovská),
    5. ukončení úvazku, zánik identity,
  2. Ruční zásahy uživatele ve web GUI – žádosti o přístupy, VPN, certifikát a schválení žádosti, manuální založení účtu administrátorem apod.
  3. Automatické synchronizace mezi systémy – účtů, rolí, skupin, organizační struktury, ale i jakéhokoliv atributu.

Mapování a následná implementace personálních procesů může být nemalou položkou rozpočtu IDM projektu. Využitím dodávaných standardních procesů lze v implementaci hodně ušetřit. Ptejte se po standardních personálních procesech a schvalovacích žádostech. Podívejte se na schémata procesů, zda alespoň rámcově odpovídají vaší představě. Je velká šance, že půjde použít v IDM již obsažený proces a nebude potřeba vyvíjet ho na míru.

API frontend-backend

Rozumné aplikační rozhraní je důležité pro další rozšiřování IDM řešení. Pokud existuje dobré a zdokumentované API (například ve formě REST API), lze pak k IDM pomocí něj napojovat nejen ostatní systémy. Různé portálové aplikace si mohou z IDM budou brát data, nebo třeba různé “dlaždice” integrovatelné do firemního intranetu a podobně. Výhodou a vlastně i důsledkem přítomnosti dobře udělaného API je, že implementátorem aplikací využívajích data identity manageru může být kdokoliv – interní IT, jiní dodavatelé…
Pokud IDM rozšiřovat neplánujete, pak API takovou váhu při rozhodování dávat nemusíte. Ovšem nikdy nevíte, zda za rok-dva nebude najednou zapotřebí.

Výhody RESTful API:

  • rychlé a flexibilní,
  • široce rozšířeno v současných aplikacích,
  • jedno API podporuje snadnou centralizaci komunikace i auditu,
  • existují nástroje na přehlednou dokumentaci (například swagger),
  • usnadňuje integrovatelnost s ostatními aplikacemi.

Licence – OpenSource nebo CloseSource?

Licence opensource nabízí klientovi více – svobodu. Ovšem licence nijak nesouvisí s kvalitou a vhodností IDM. Není pravdou, že opensource IDM jsou všeobecně lepší nebo horší.

Zjistěte si:

  1. Jak je licence omezená? Obvyklá omezení – počet instancí, konektorů, uživatelů, časové období, zpracovávané operace, moduly, zákazníci,  apod.
  2. Jaké služby nabízí dodavatel – maintenance, SLA, rozvojové služby, roadmapa produktu…

Promyslete, co se stane, až budete potřebovat změnit dodavatele IDM?

  1. O tom jsem se rozepsal zde: Jak migrovat Identity Management?
  2. Jak zabránit vendor lock-in u Identity Managementu?

Nechci se dopodrobna zabývat možnostmi. Licence je složitá tématika, poraďte se s právní­kem.

Výkonnost a rychlost

Rychlostí myslím reakci na uživatelský požadavek ve web GUI. Tomu jsem se věnoval v části o web GUI.

Výkonnost – kolik identit zpracuje IDM za jednotku času při synchronizaci mezi systémy. Tomuto parametru má smysl se věnovat, pokud máte již tisíce některých z objektů – účtů, rolí, skupin nebo úvazků atd.

IDM při synchronizaci typicky dělá mnoho výpočetně náročných operací, které zaberou i na výkonném HW nemalý čas. Příklad operací, které IDM provádí při synchronizaci – načtení z koncového systému, porovnání změn, provedení změn, audit operací, spuštění personálních procesů, transformace dat, synchronizace s dalšími systémy, spuštění schvalovacích procesů, reporty…

Máme zákazníky s miliónem účtů nebo rolí. Je velký rozdíl, zda IDM zpracuje synchronizaci za 4 hodiny, nebo 4 dny. 

U synchronizace požadujte možnost změnové synchronizace, které jsou řádově rychlejší. Změnová synchronizace bere v potaz pouze objekty, které se od posledního běhu změnily, takže neprochází všechny objekty. U velkého počtu objektů (řádově desítky tisíc a víc) dokáže změnová synchronizace běžet minuty, zatímco plná synchronizace poběží hodiny nebo dny.

Metriku výkonnosti doporučuji nastavit na zpracování 1 účtu max za 1 s, ovšem záleží na koncovém systému. Pokud webová služba SAPu odpovídá 1 s, tak IDM čas logicky jen přidá.

Upgradovatelnost

Upgradovatelnost je nenápadný parametr, který může hodně napovědět o modernosti aplikace. Jak často vychází nové verze IDM? Pouze 1 do roka? To může být málo, protože upgrade může být velmi náročný, drahý. Při pořízení IDM se ptejte, kolik práce stojí provést upgrade IDM. Upgrade samotného produktu by měl být otázkou minut. Přizpůsobené/upravené části na míru můžou upgrade IDM prodloužit na týdny.

Kvalitní kód 

Prověřit kvalitu kódu má smysl, pokud chcete IDM implementovat a upravovat vlastním týmem vývojářů. Jak poznat kvalitní kód? 

Dle mnoha parametrů:

  • kvality rozhraní,
  • dokumentace kódu,
  • kód pokrytý testy,
  • čitelnosti a pochopitelnosti,
  • udržitelnosti a rozšiřitelnosti,
  • kontroly vstupů, chybových stavů, integrity,
  • atd. atd.

Dokumentace

Kvalitní dokumentace je znamením kvalitního programu. Bude potřeba pro budoucí rozvoj prostředí. IDM je většinou řešení na dlouhá léta, který s organizací roste.

Kvalitní dokumentace je drahá věc. Nestačí produktové listy a návody how-to postupy v GUI. Je třeba mít popsané, jak vnitřně fungují vaše procesy správy uživatelů vašeho řešení. Jak jsou systémy integrované, jaká data se předávají kam, jak se transformují. IDM bývá obvykle integrován, přizpůsoben. Dokumentace musí být z pohledu administrátora, ale i z  pohledu vývojáře.

Role (RBAC)

IDM nastavuje práva na základě přiřazení role, tj. RBAC – Role-Based Access Control. Jde o základní funkční mechanismus IDM. Pokud získám roli, znamená to, že jsem typicky získal přístup do systému nebo nějaké konkrétní oprávnění v systému (například zařazení do MS Active Directory skupiny).

Typy rolí:

  1. Role aplikační – mám roli, mám přístup do aplikace nebo konkrétní právo v aplikaci.
  2. Přístupové role v IDM – mám roli, mám nějaké vyšší pravomoci práce v Identity Manageru. Například mohu schvalovat někomu práva.
  3. Byznys role – seskupují výše zmíněné. Například role “sekretářka” má role pro Docházkový systém a Helpdesk.
  4. Dle typu přiřazení:
    1. Automatické – například na základě příslušnosti k organizaci, úvazku nebo na základě atributu u identity.
    2. Ručně administrátorem nebo na základě žádosti a schválení pověřenou osobou (nadřízený, byznys vlastník role apod.).

Podpora spravovaných systémů?

K IDM je možné připojit libovolný systém, který je dostupný po síti a je známa jeho struktura identit. Konektor je malý programový nástroj na straně IDM, který dovoluje výměnu dat s napojeným systémem pomocí jeho nativního API. Tím pádem se konektor přizpůsobuje napojenému systému, nikoli naopak. Což je obrovskou výhodou IDM ve snadnosti připojení.

Některá IDMka se specializují na jeden svět – například Microsoft IDM integruje AD, Office 365 a SharePoint. Ovšem mimo svůj svět (myslím jiné aplikace, například SAP) již tato IDMka nemusí mít dodávané konektory.

Ptejte se svého dodavatele. Seznam podporovaných systémů bývá velmi rozsáhlý. Pokud nemáte nějaký lokální systém, tak bude podporován.

Existují základní konektory:

  1. Scripted SQL Connector – pro připojení SQL databází, více tabulek.
  2. LDAP connector
  3. Powershell Connector – připojení AD domény, správu Exchange i O365.
  4. WS webová služba
  5. Flat File – načítání dat ze souboru.
  6. Database Table Connector – napojení jednoduché SQL tabulky.
  7. CSV Directory

Na co si dát u nabízeného konektoru pozor?

  1. Zda konektor podporuje vaši verzi spravovaného systému.
  2. Jaké funkce/operace konektor podporuje. Například zda podporuje blokaci účtu, změnu hesla nebo změnové synchronizace.
  3. Jaké objekty v koncovém systému podporuje. Například konektory pro Active Directory často nepodporují správu skupin.
  4. Licenční omezení, protože cena konektoru nemusí být nízká…

 

Závěr

Vybírejte dodavatele IDM, ne jen produkt. Nezaměřujte se tolik na funkce, ale na vyřešení vašich úkolů. IDM jsou systémy na léta využívání. Doporučuji výběr neuspěchat, podívat se na reference a zvolit cestu menších jednoduchých projektů s jasným a přesným zadáním. Nechte si zpracovat PoC – malý testovací projekt.

Mohlo by vás také zajímat:

  1. Co je to Identity Management?
  2. Jak migrovat Identity Management?
  3. Modely spolupráce s dodavatelem IDM.
  4. Jak zabrátit vendor lock-in?
  5. Jak z personalistiky identifikovat vedoucího pro IDM?
  6. Jak se zbavit rutinních úkolů při správě IT systému automatizací Identity Managementu?
  7. Co je to SCIM?
  8. API pro připojení do Identity Managementu.
  9. RBAC Wikipedia
  10. Roles in CzechIdM – who approves their assigning?

About Lukáš Cirkva

CEO, Identity Management consultant with 10+ years of experience. I have also played a leadership role in the development of our company's own SW tool - CzechIdM. We also service our delivered solutions. Please see www.CzechIdM.com and linkedin for more info: www.linkedin.com/in/lukascirkva/

Leave a Reply