Virtuální systémy v CzechIdM
Na projektech u zákazníků se setkáváme se situací, kdy zákazník chce prostřednictvím CzechIdM evidovat účty uživatelů na systémech, které z nějakého důvodu nemohou být připojeny k CzechIdM na přímo (například daný systém neposkytuje žádné rozhraní k jeho napojení). Někdy jen není žádoucí přímé napojení na daný systém. Abychom těmto požadavkům zákazníků vyšli vstříc, máme v CzechIdM implementovaný model tzv. virtuálních systémů, jenž tyto požadavky řeší. V tomto článku se blíže podíváme, jak jsme virtuální systémy implementovali v CzechIdM.
Co to je virtuální systém a k čemu slouží?
Virtuální systém je takový systém, na němž CzechIdM přímo nespravuje uživatelské účty. Místo toho se odesílá emailová notifikace administrátorům daného systému, aby požadovanou akci (založení účtu uživatele, modifikaci atributů účtu, smazání účtu uživatele) provedli ručně. Virtuální systémy nacházejí uplatnění například tam, kde:
- daný systém není možné z technických důvodů napojit přímo,
- přímé napojení daného systému není ekonomicky výhodné,
- nebo je žádoucí systém nejdříve napojit jako virtuální a ověřit tím správnou funkcionalitu napojení.
Jak jsou virtuální systémy v CzechIdM realizovány?
Z pohledu CzechIdM se virtuální systémy napojují jako jakékoliv jiné koncové systémy, ve kterých má CzechIdM spravovat účty. Dokonce je možné přímo napojený systém přepnout do stavu “virtuální”. Samozřejmě to lze realizovat i opačně, kdy virtuální systém je přepnut na přímou správu. Standardně virtuální systémy napojujeme jako databázi, jež zastupuje skutečný koncový systém a kam CzechIdM posílá informace o účtech uživatelů a jejich atributech. Skripty pro napojení takové databáze máme implementovány tak, že rozšíření napojení virtuálního systému (např. přidání dalšího atributu, který se bude do virtuálního systému posílat) je pouze konfigurační záležitostí bez nutnosti cokoliv měnit v samotném kódu či skriptech. Na obrázku níže vidíme konfiguraci mapování atributů mezi CzechIdM a testovacím virtuálním systémem. Pokud bychom chtěli posílat do virtuálního systému další atribut, tak ho jednoduše přidáme do mapování a určíme, co bude jeho zdrojem dat.
Na obrázku níže vidíme konfiguraci testovacího virtuálního systému. To, že se bude se systémem pracovat jako s virtuálním, určuje checkbox “Virtuální systém”. Pokud je zaškrtnut, tak administrátor dále určí, jak budou realizovány jednotlivé operace CREATE, UPDATE a DELETE pro daný systém. První z možností je to, že se provede klasická “provisioning ” operace nad daným systémem. Druhou možností je specifikovat pravidlo, které se spustí pro danou akci. V CzechIdM jsou za tímto účelem implementována pravidla “virtualSystemConfigureCreate”, “virtualSystemConfigureUpdate” a “virtualSystemConfigureDelete”. Tato pravidla fungují pro jednotlivé operace přibližně následovně:
- administrátorům daného systému se odešle emailová notifikace s požadavkem o provedení požadované akce nad účtem uživatele
- pokud je vyžadováno potvrzování provedené akce, tak se administrátorům daného systému vytvoří v CzechIdM úkol na potvrzení toho, že provedli požadovanou akci
- po potvrzení požadované akce administrátorem provede CzechIdM propsání akce na daný systém (standardně do databáze, jež zastupuje daný systém)
- pokud administrátor zamítne provedení dané akce, tak CzechIdM nikam nic nezapisuje a předpokládá, že daný účet uživatele je ve stavu jako před vytvořením požadavku
Potvrzování provedené akce administrátorem virtuálního systému
Jak již bylo řečeno, u virtuálních systémů lze nastavit, aby provedení dané akce potvrzovali administrátoři v CzechIdM. Na obrázku níže je příklad, jak vypadá potvrzovací formulář v CzechIdM. V tomto případě má administrátor založit na virtuálním systému VirtualSystem účet uživateli Jan Novák dle uvedených atributů. Až potvrzením této žádosti bude CzechIdM počítat s tím, že účet na daném systému byl uživateli Jan Novák vytvořen.
Závěr
V tomto článku jsme si popsali, co to jsou tzv. virtuální systémy, k čemu slouží a jakým způsobem v nich CzechIdM spravuje účty. Pokud byste měli k tomuto tématu nějaké otázky, nebo vás napadá, jak správu virtuálních systémů dále rozšířit, neváhejte nás kontaktovat na emailu info@bcvsolutions.eu