Archiv pro štítek: Waveset

Odložené úkoly – Deffered Tasks v Oracle Waveset

Ve většině společností se účty zaměstnanců spravují k určitému datu. Při nástupu zaměstnance se mu jeho uživatelské účty (email, přístup do informačních systémů dané společnosti atd.) zpřístupní k datu jeho nástupu. Při jeho odchodu se mu naopak účty zablokují, případně smažou, k datu jeho odchodu. Níže Vám nastíním jednu z možností, jak takové řešení implementovat.

Nedávno jsme u jednoho zákazníka řešili následující úkol. Pravidelný proces, který kontroloval a aktualizoval všechny identity uživatelů každý den, se postupně s více napojenými systémy zpomalil a bylo ho potřeba nahradit úspornějším a stejně funkčním řešením. Tento proces prováděl kontrolu platnosti účtů u všech identit a podle toho případně přidával či odebíral role, tj. zakládal či blokoval uživatelské účty. U drtivé většiny identit ale žádná změna neprobíhala. Bylo tedy potřeba vytvořit proces, který se spustí pouze nad identitami, kde má proběhnout nějaká změna, např. nad zaměstnanci, jimž dnes končí pracovní poměr.

Vzhledem k tomu, že u tohoto zákazníka je nasazen Oracle Waveset, bylo možné částečně použít řešení Deffered Tasks (Odložené úkoly).

clocks

Deffered Tasks

O co se tedy vlastně jedná? V Oracle Waveset se vyskytuje standardní funkce Deffered Tasks, která umožňuje u dané identity uložit, kdy a jaký proces se má nad ní spustit. Dále je zde možné nastavit, zda se má daný proces provést pouze jednou, nebo opakovaně. Spouštění těchto tasků zajišťuje další proces – Deffered Task Scanner. Ten je spouštěn v pravidelných intervalech a zpracovává deffered tasks z minulosti. Prochází tedy pouze identity, které u sebe mají nastavené spuštění úkolu s datem v minulosti. U těchto identit spustí specifikovaný proces s parametry, které je také možné uložit u identity. Po skončení vypíše seznam identit, spouštěné procesy a výsledek.

Nasazení v našem případě

V našem konkrétním případě tedy stačí, když při každé změně data konce či začátku daného účtu bude spuštěn proces, který provede potřebné kroky. Toto datum se načítá při synchronizaci. Bylo ji tedy třeba upravit tak, aby případně k uživateli uložila odložený úkol. Příklad uložení můžete vidět níže:

<Property name='tasks'>
  <List>
    <Object name='Deffered Task'>
      <Attribute name='date'>
	<Date>2014-03-02T23:00:00.000Z</Date>
      </Attribute>
      <Attribute name='description' value='2014-03-03'/>
      <Attribute name='executeOnce' value='true'/>
      <Attribute name='accountId' value='100001'/>
    </Object>
  </List>
</Property>

Poté bylo potřeba pouze nastavit pravidelné spouštění Deffered Task Scanneru, který již bude potřebné operace spouštět každý den v pravidelnou dobu.

Tato úprava tedy nahradila zbytečně velký, dlouhý a náročný proces za optimálnější řešení, které funguje přesně na identitách, na kterých má, a neprovádí zbytečné úkony navíc. Bylo potřeba samozřejmě dopsat proces, který se spouští na zadaných identitách v zadanou dobu.

Možnost nasazení jinde

Toto řešení lze samozřejmě implementovat i v jiných podobných systémech. Data, která se ukládají k objektům, navíc nejsou nijak velká, tedy nevznikne ani velký nárok na další paměť. Pravidelný proces pro vykonávání těchto akcí se dá naplánovat na námi požadovanou dobu a tím pádem lze určit, kdy poběží tato akce, která může být v některých případech časově náročná. Navíc máme kontrolu nad tím, kdy a pro jakého uživatele se daná akce spouští. Tím pádem se vždy po doběhnutí pravidelného procesu můžeme podívat na potřebné výsledky a nemusíme je hledat mezi spoustou dalších pro nás nepotřebných záznamů.

Závěr

V tomto článku  je popsáno využití odložených úkolů v konkrétním případě. Toto řešení lze určitě aplikovat i na mnoho dalších problémů. Pokud byste měli nějaké dotazy ohledně našeho řešení, či nějaké další dotazy ohledně Oracle Waveset, neváhejte mě kontaktovat na adam.lenger@bcvsolutions.eu.

Vytvoření formuláře v Oracle Waveset

Oracle Waveset nám nabízí mnoho standardních formulářů, ale občas je třeba vytvořit jeden specifický, který se mezi nimi nevyskytuje. S takovýmto problémem jsme se setkali i u nás a to v situaci, kdy bylo potřeba vytvořit formulář pro změnu hesla na nově připojeném systému. Je to centrální autentizační systém. Tento nový formulář slouží běžným uživatelům ke změně svého hesla, správcům potom ke změně hesla normálním uživatelům, kteří spadají do jejich oblasti působnosti (tato oblast je určována podle přiřazené role).

Pokračování textu

Připojení finančního informačního systému do IdM

Na podzim tohoto roku jsme připojovali finanční informační systém (dále zde označován pod zkratkou FIS) pro vysokou školu od dodavatele BBM. Na této univerzitě již běží Identity Manager Sun/Oracle Waveset, kde je již několik systémů připojených. V tomto článku vás seznámím s průběhem připojení a také s problémy, které při tom nastaly.

Zadání

Identity Manager má za úkol na FISu spravovat uživatele. Přidává nebo odebírá role a také mění jeho atributy. Role ale nevytváří, needituje ani neodstraňuje.
Pokračování textu

Případová studie: Průběžná migrace z Oracle IdM Waveset na CzechIdM

V září letošního roku jsme se pustili do unikátní akce – postupného přechodu z Identity Managementu od bývalé společnosti Sun k našemu vlastnímu produktu, Identity Managementu CzechIdM. Produkt bývalé společnosti Sun (dnešní oficiální název je Oracle Waveset) už není novým vlastníkem, firmou Oracle, dále vyvíjen ani podporován. Jeden z našich zákazníků se proto rozhodl pro migraci k plně podporovanému CzechIdM.

Prostředí zákazníka je však poměrně rozsáhlé a SunIdM v něm obsluhuje celou řadu systémů; ocitli jsme se tak před velkou výzvou: jak převést komplikované stávající řešení pod nový produkt bez odstávky a s minimální změnou pro uživatele? Odpovědí je právě projekt postupné migrace: oba Identity Managementy „zřetězíme“ a jednotlivé systémy postupně přepojíme za plného chodu. Ve svém článku vás seznámím s architekturou řešení a upozorním na některá úskalí, se kterými se během implementace střetáváme.

Pokračování textu

Úprava schvalovacího workflow v Oracle Identity Managementu


Tento článek popisuje jakým způsobem je možné upravit standardní schvalovací workflow v systému Sun Identity Manager (Oracle Waveset) tak, aby došlo ke schválení i v případě, kdy jeden ze schvalovatelů tuto akci zamítne. Dále zde bude rozebrána funkčnost, kdy jsou schvalovatelé definováni tím, že mají přiřazenou k tomu určenou roli.

Pokračování textu

Import a export rolí ze Oracle Identity Managementu do CSV


Cílem tohoto článku je ukázat, jakým způsobem je možné exportovat a importovat role ze Sun Identity Manageru (Oracle Waveset).

Jeden z našich klientů, kterému pomáháme v oblasti identity managementu potřeboval, aby z Identity Managera (dále jen IdM) bylo možné vyexportovat role do textového souboru. Exportované soubory s rolemi budou editovat správci jednotlivých systémů a následně bude prováděn hromadný import do IdM.

Pokračování textu

Vytvoření vlastního resource adaptéru pro Sun Identity Manager


Tento článek popisuje, jakým způsobem je možné naprogramovat vlastní „Standard Resource Adapter“ pro produkt Sun Identity Manager, respektive Oracle Waveset 8.1. Při psaní jsem vycházel ze zkušeností, které jsem společně s kolegy nasbíral při programování „univerzálního SSH adaptéru pro unixové systémy (pro Linux, AIX, HP-UX, Solaris a Sambu)“ .

Pokračování textu