Jak připravit projekt Identity Managementu?
Stojíte rozhodnutím jak připravit projekt Identity Managementu (IdM) a potřebujete poradit? Tento článek popisuje jak připravit projektu Identity Managementu. Motivací článku je srozumitelnost a jednoduchost. Motivací není do detailu popsat analýzu konkrétního nasazení. K tomu jsou určeny jiné naše články, viz. seznam na konci článku. Součástí článku je i praktická ukázka dat na straně připojovaných systémů.
Rozcestník než začnete číst:
- Pokud potřebujete upřesnit co je identity management?
- Hledáte vhodný SW IdM? Na co si dát pozor?
- Rozhodujete se, jakou spolupráci s dodavatelem navázat?
- Jak napsat poptávku na Identity Management a vytvořit výběrové řízení? (Článek připravujeme.)
- Nasazujete Identity Management do produkce?
- Chcete migrovat z jiného IdM?
Jaké jsou cíle projektu?
Určete cíle projektu – konkrétně, srozumitelně a měřitelně co vás pálí? Co chcete IdM projektem vyřešit? Přesně vydefinované cíle jsou zásadní pro úspěšnost projektu. Při tvorbě zadání se na ně s klientem vždy soustředíme.
Příklady správných cílů:
- Rychlost zakládání účtů pro zaměstnance,
- nebo delegace na vlastníky dat,
- nebo bezpečnost zamezením mrtvých duší,
- samoobsluha uživatelů – reset hesel,
- žádosti o práva?
O přínosech nasazení IDM si můžete přečíst v detailním článku “Co je to IDM”.
Existují různé potřeby, různé cíle. Zamezte očekávání: “IDM jako magický nástroj nám vyřeší vše”. IdM magickým nástrojem je, ale je třeba jej vhodně používat, respektive implementovat.
Co si připravit v projektovém řízení?
Musíte mít jasno v hlavně v zadání. Zní to samozřejmě, ale velmi často se setkáváme s vágním zadáním.
Vyhněte se fixnímu zadání u velkých projektů, což už je historicky ověřený postup vedoucí k neúspěchu. Nepotkal jsem projekt IdM, který by nebyl bez změnového řízení. Projekty Identity Managementu jsou integračními projekty, u kterých je extrémně náročné až nemožné předem vše analyzovat a navrhnout. Čím větší projekt, tím delší je realizace, tím vznikne více potřeby změn v systémech, organizaci i v projektu. Vytvořte si prostor na změny. I se státním výběrovým řízením to jde.
Agilní způsob vývoje a implementace SW je správným způsobem. Organizace se dnes rychle mění. Je nutné mít prostor i v projektu reagovat na změny. Agilní způsob vedení projektu je výrazně vhodnější.
Každý projekt musí mít:
- zadání rozsahu – alespoň prvního produktu (prototypu). Zadání musí vycházet z problémů, které má projekt a následné řešení pomoci vyřešit.
Jaké systémy chcete Identity Managementem spravovat? Zařaďte tyto systémy do zadání volitelně, ať je lze změnit bez zásahu do smlouvy! Potkal jsem mnoho případů, kdy firma vypsala výběrové řízení na správu systémů a pak jeden ze systémů bylo potřeba vyměnit za jiný. Dejte smluvně pravomoci týmu měnit zadání. - rozpočet – kolik celkem chcete investovat? Dejte rozpočet jako strop, ze kterého se bude agilně čerpat.
Dále je třeba vydefinovat:
- projektový výbor – kdo na projektu bude pracovat. Ano, jsou potřeba zástupci i odběratele – projektový vedoucí, IdM admin nebo produktový vedoucí, volitelně administrátoři systému.
- nastavit projektové schůzky – 1x/týden nebo 2 týdny,
- Risk log
- Harmonogram…
Jaké systémy má IDM spravovat?
Vydefinujte si 2-3 nutné systémy ke správě. Ty budou zadáním v prvním projektu. Další systémy k připojení postupně vykrystalizují a budou součástí navazujících projektů.
Nenechte se dotlačit k připojování co nejvíce systému najednou v jediném projektu. Velké zadání zpravidla velmi zvyšuje riziko neúspěchu. Připojujte a automatizujte to, co má skutečně smysl. Očekávejte, že se budete postupně učit sebe, i vaší organizaci, co je IdM a jak IdM nejlépe využít. To vám umožní agilní vedení projektu, fixní zadání naopak situaci výrazně komplikuje hlavně vám.
Vydefinujte si systémy, které chcete spravovat (integrovat) přímo a které nepřímo (nazýváme virtuálně). Přímá integrace je drahá. Proto má smysl pouze u častých změn na účtech a právech. Naopak pokud založíte v systému účet 2x do roka. Pak stačí nepřímé napojení virtuálním systémem. Nepřímé (virtuální) napojení systému lze vytvořit do minuty. Nepřímé napojení slouží jako evidenční nástroj (kdo má jaký účet na systému) a úkolování adminů.
Jaká data spravovat v systémech? Chceme jen zakládat účty nebo i do detailu spravovat práva?
Vydefinujte si jaká data chcete v systému spravovat. To je čistě práce zákazníka. Dodavatel může pokládat otázky, ale vaše data nezná.
Jaký je zdroj dat o zaměstnancích? Často to bývá personalistika. Pozor pro různé identity mohou být různé zdroje dat. Například pro ne-zaměstnance bývá zdrojem tabulka externistů nebo i webové rozhraní CzechIdM.
Příklad napojení systémů do IdM
Níže je uveden asi nejjednodušší případ jak napojit do IdM personální systém a Microsft Active Directory. Pokud takto připravíte data, tak systémy napojíte do IdM bez jakékoliv další úpravy na straně IdM.
Pesonalistika (HR systém) jako autoritativní systém o zaměstnancích
Mějme pro ukázku HR systém, který obsahuje data v SQL databázi nebo lze data exportovat do CSV souborů.
Názvy sloupců mohou být libovolné. Struktura databázových View nebo CSV odpovídá objektům Identita (Identity), Vztah (Contracts), Organizace (Department, Position) znázorněné na následujícím obrázku.
1/ Osoby
Tabulka osob, slouží jako základní zdroj informací pro založení identity uživatele v CzechIdM
Příklad
atribut | unikátní | povinný | poznámka |
id | * | * | často osobní číslo, ideálně v čase neměnný identifikátor, který není po ukončení vztahu s osobou “recyklován” |
login | * | minimální délka 2 znaky, pokud není dostupný, generuje login identity manager | |
jméno | |||
příjmení | |||
titul před | |||
titul za | |||
standardně je použit pro předávání hesla | |||
mobilní telefon | v případě napojení identity manageru na SMS bránu může být na mobil zasíláno heslo SMSkou | ||
timestamp | časová značka změny, ideálně tzv. “unix timestamp” |
2/ Vztahy (Contracts)
Vztahy (Contracts) si lze představit jako PPV, DPP, DPČ zaměstnance nebo kontrakt externího dodavatele, stážista na oddělení, studium na fakultě, účastník na neplaceném projektu a další. U vztahu je nejdůležitější vlastník a mají-li být řízeny automatické procesy jako nástup zaměstnance nebo ukončení zaměstnance, pak i platnosti úvazků od/do.
Běžně může mít identita v identity manageru evidováno více pracovně právních vztahů. Pro tyto případy je možné vztahy synchronizovat z externího zdroje stejně jako tomu je u identit. Pokud nejsou vztahy v organizaci využívány, není tato synchronizace nutná – identity manager si “sám” založí výchozí vztah na který navazuje veškerou funkčnost.
atribut | unikátní | povinný | poznámka |
id | * | * | klíč pro zpracování |
název úvazku | např. “Vrchní sestra”, nepovinné | ||
vlastník | * | reference na id osoby | |
platnost od | sql timestamp – Platnost pracovní smlouvy nebo úvazku | ||
platnost do | sql timestamp – Platnost pracovní smlouvy nebo úvazku | ||
vyřazení z ev. počtu | boolean, příznak vyřazení z evidenčního počtu | ||
hlavní úvazek | boolean, příznak hlavního úvazku. Pokud není uveden, je využit automatický výpočet | ||
nadřízený | reference na id osoby, lze využít i bez organizační struktury | ||
organizace | reference na id z organizační struktury | ||
timestamp | časová značka změny, ideálně tzv. “unix timestamp” |
3/Organizační struktura
V případě požadavku na synchronizaci organizační struktury do IdM je třeba dodržovat strukturu dat. Do takto synchronizované organizační struktury mohou být přiřazeny úvazky identity. IdM podporuje více organizačních struktur – je možné více synchronizací. Při odstranění prvku organizační struktury ze zdroje dat je odpovídající část org. struktury v identity manageru smazána pouze pokud je prázdná.
atribut | unikátní | povinný | poznámka |
id | * | * | neměnný klíč pro zpracování |
název | * | * | unikátní název organizační jednotky nebo pozice |
rodič | reference na id nadřízeného prvku organizační struktury |
Příklady spravovaných systémů
- LDAPv3 – provisioning identity a jejích rolí
- MS AD – jedna doména, provisioning identity a jejích rolí
- Databáze – Připojení do databáze pomocí JDBC, jedna tabulka pro identity (users)
MS Active Directory (MS-AD)
MS-AD příklad zadání:
- Instalace a konfigurace IdM.
- Napojení na doménu na MS-AD pro správu uživatelských účtů a jejich členství ve skupinách.
- Načítání skupin z MS-AD a automatické vytváření odpovídajících rolí v identity manageru.
- Správa domácích adresářů uživatelů.
- Správa emailových schránek na MS Exchange.
- Integrace s již existující instancí IDM/CA pro registraci a vystavování certifikátů externích uživatelů.
Příklad spravovaných dat. Konektor umožňuje spravovat vše dostupné.
atribut | povinný | poznámka |
DN | * | distinguished name |
sAMAccountName | login uživatele | |
cn | common name – často používané jako RDN | |
displayName | název účtu uživatele, často se zobrazuje v aplikacích používajících AD | |
description | ||
password | ||
sn | přijmení | |
givenName | křestní jméno | |
email uživatele | ||
userPrincipalName | login + doména |
Procesy
Identity Management je procesním nástrojem. Data se načítají ze systému, transformují, schvalují a zapisují do koncových systémů. Doporučuji využívat procesy připravené vybraným produktem Identity Manažerem. Pokud půjdete do úprav, zdražujete tím budoucí upgrady.
Existuje několik typů procesů:
- Řízení životního cyklu identit.
- Synchronizace osob + synchronizace vztahů (úvazků, PPV).
- Standardní proces předání hesla – zaslání emailem uživateli při vytvoření účtu v AD/LDAP/DB.
- Standardní procesy životního cyklu identity: Nový úvazek, Konec úvazku, Vynětí z evidenčního počtu, Změna organizačního zařazení.
- automatické přidělování a odebírání oprávnění dle zařazení v org. struktuře.
- Synchronizace organizační struktury (nebo jiných objektů – např. certifikátů, atributů – čísla karet apod.)
- Schvalovací proces žádosti o práva – změnu přidělených rolí.
- Konfigurace standardního schvalovacího procesu:
- Doplnění/schválení žádosti helpdeskem,
- vedoucím uživatele,
- správou uživatelů,
- případně finální schválení bezpečností
- Konfigurace standardního schvalovacího procesu:
- Manuální procesy – prováděné uživateli a správci v GUI IDM
- žádost o změnu oprávnění,
- schvalování změny oprávnění.
- reset hesla,
- hromadné akce,
- práce s rolemi,
- spuštění synchronizací apod.
Dotazy k procesům:
- Jaké procesy chcete automatizovat?
- Z jakých systémů chcete data synchronizovat a jaká data?
- Jaký je životní cyklus zaměstnaneckých účtů, externistů, zákazníků, systémových účtů? Sepište si jej alespoň rámcově – vznik, změny, zánik.
- Jak vypadá životní cyklus organizační struktury a daných jednotek? Pozor, toto bývá skrytá velká velká pracnost. Organizační strukturu doporučujeme spravovat v personalistice. IdM synchronizuje a vykonává změny v organizační struktuře dále do systémů.
- Jak vypadá životní cyklus rolí, skupin v AD, certifikátů? Vznik, změny, zánik? Opět se může jednat o zkrytě veliký úkol hodný samostatného projektu.
- Jak potřebujete schvalovat? Doporučujeme schvalování mít jednoduché, maximálně tří-krokové. V případě složitého schvalování narůstá v čase nespokojenost na délku schvalovacího kolečko. Přesuňte schvalování na vedoucí nebo vlastníky dat z administrátorů.
Oprávnění v identity manageru
Kdo a jak bude s IdMkem pracovat? Toto jsou obvyklé role práv v IdM:
- Super administrátor – minimálně jeden uživatel na straně zákazníka, který má nejvyšší oprávnění v identity manageru.
- Helpdesk – změna hesel, přístup k auditním informacím a odeslaným notifikacím.
- Běžný uživatel – změna svého hesla, svůj profil pro čtení, může podat žádost o změnu oprávnění.
- Vedoucí – práva jako běžný uživatel + vidí své podřízené, může pro ně žádat o změnu oprávnění.
- a mnoho dalších.
Požadavky na HW/SW pro IdM
IdM SW se obvykle skládá z java aplikace běžící ve webovém serveru a databáze, kde jsou ukládána metadata. HW pro IDM vyplývá z potřeb využití. Ve většině případů se jedná o velmi nenáročné využití, kdy stačí nízký HW. Ovšem jsou případy, kdy IdM systematicky synchronizuje velké množství dat z různých systémů. V takovém případě je důležité mít pro IdM dostatek výkonu. Každopádně HW dnes je výrazně levnější než v minulosti. Většinou pořízení HW stojí méně než týden práce týmu konzultantu.
Zde je příklad HW požadavků našeho IDM: Požadavky na hw/sw serveru
Jaké účty spravovat?
IdM může spravovat všechny účty. Pro každý typ účtů lze nastavit různé procesy. Jaké účty má 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.
Skupiny účtů:
- Zaměstnanci – obvykle identita vzniká začátkem smluvního úvazku, který je načten do IdM z personalistiky.
- 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.
- Technické a servisní účty – například administrátorské účty nebo účty aplikací. Tyto účty obvykle nesmí zaknitout i 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.
- Organizační struktura – jak jsou účty zařazovány? Jak jsou přiřazována práva, určován nadřízeny? atd.
Jaké objekty IdM zpracovává?
- Identity, účty, role, skupiny, složky, organizační strukturu, úvazky, certifikáty, fotky, katalog rolí, SW licence, vpn přístupy…
Jaké akce v GUI jsou třeba?
Součinnosti?
Na co se připravit jako zákazník? Kvalitní dodavatel formou schůzek pokládáním kvalitních otázek dokáže získat správné informace. Každopádně zákazník zadává jaké problémy chce řešit, jaké chce spravovat systémy, jakými procesy a jaká data.
Níže uvedené úkony se očekávají jako součinnost zákazníka:
- Příprava serveru (hardware/virtuální server).
- Instalace operačního systému, konfigurace firewallu apod.
- Nastavení mailserveru – identity manager vyžaduje přístup k SMTP serveru.
- Konfigurace SSL spojení k Active Directory (pokud se spravuje heslo)
- Vzdálený přístup pro techniky provádějící implementaci.
- Příprava zdroje dat dle formátu výše, zpřístupnění v síti.
- Účast na prvotním importu dat, čištění dat a ladění procesů
- Účast na školení a předání prostředí.
Závěr
Projekty Identity Managementu bývají rozsáhlé a komplexní integrační projekty. Dobrá příprava projektu je základem. Doporučuji začít minimálním zadáním, vytvořit minimální produkt-řešení a s tím jít co nejdříve do produkce. Následně iterativně řešení vylepšovat a rozšiřovat. Vyvarujete se tím protahováním projektu a implementací funkcí, které ač vypadají důležitě, tak nakonec nevyužijete.
Mohlo by vás také zajímat
Seriál o Identity Managementu:
- Co je to Identity Management?
- Jak vybrat IDM?
- Jak migrovat Identity Management?
- Modely spolupráce s dodavatelem IDM.
- Jak zabrátit vendor lock-in?
- Jak z personalistiky identifikovat vedoucího pro IDM?
- Jak se zbavit rutinních úkolů při správě IT systému automatizací Identity Managementu?
- Jak správně testovat IdM?
- Jak správně nasadit IDM do produktivního provozu?
- API pro připojení systému do IDM
- Co je to SCIM?
- IdM nebo formulářový systém?
- Netradiční využití IdM 1, 2, 3
O CzechIdM:
- Podporované konektory
- Základní funkce
- Jak na samoregistraci a žádost o VPN?
- Jak na reset hesel z Windows? Password filtr
- Napojení JIP/KAAS.
- Správa MS-Acess.
- IdM a napojení Moodle
- Integrace CzechIdM a DMS
- Integrace CzechIdM a CRM Salesforce
- Vytváření nových formulářů v CzechIdM
- Napojení MS-AD do CzechIdM
- Co jsou to business role
- Jak spravovat vnořené skupiny v MS-AD
- Správa personálního systému a časové řezy