Wednesday 28 April 2010

Zabezpečení přístupu k dokumentům v Oracle UCM, část 1

Jednou ze základních vlastností každého ECM systému je zabezpečení přístupu k dokumentům jen pro ty uživatele, kteří jej mají mít. Jakým způsobem je tato otázka řešena v Oracle UCM?

1. Bezpečnostní skupiny
Základním a povinným mechanismem jsou tzv. bezpečnostní skupiny. Bezpečnostní skupina je atribut položky (jedno z metadat), jehož nastavením se specifikuje, kdo bude mít k položce přístup a jaký přístup systém uživateli dovolí. Vztah mezi bezpečnostní skupinou jako atributem položky a přístupem konkrétního uživatele nejlépe popisuje následující obrázek:

Každá položka má přiřazenu právě jednu bezpečnostní skupinu a každý uživatel může mít přiřazeno více rolí. V případě více rolí je celkové oprávnění uživatele dáno jako maximální oprávnění mezi všemi přiřazenými rolemi k dané bezpečnostní skupině (př.: má-li role X přiřazená uživateli oprávnění {R - Read} na bezpečnostní skupinu SG1 a role Y oprávnění {R - Read, W - Write}, pak uživatel s rolemi X a Y bude mít na položky skupiny SG1 výsledné oprávnění {RW})

Co je to oprávnění?
Kdo se fakticky o autorizaci operací je oprávnění (permission). Oprávnění může být nastaveno na čtyřech úrovních:
  • R - Read; toto oprávnění dává uživateli právo číst obsah i metadata vložené položky. U mechanismu bezpečnostních skupin je třeba poznamenat, že při vyhledávání se filtr na bezpečnostní skupiny vkládá přímo do WHERE klauzule dotazu - proto se nedoporučuje definovat více než 50 bezpečnostních skupin; na druhou stranu může při vhodném navržení systému tento mechanismus vyhledávání značně urychlit
  • W - Write; toto oprávnění dává uživateli právo vkládat nové verze položek dané bezpečnostní skupiny, či měnit jejich metadata. Pro změnu atributu bezpečnostní skupiny musí mít uživatel právo W v obou skupinách.
  • D - Delete; toto oprávnění dává uživateli právo mazat položky
  • A - Administer; toto oprávnění dává uživateli právo vstupovat s položkou do ad-hoc workflows. Při užití některých dalších bezpečnostních mechanismů (např. Access Control Lists) musí mít uživatel toto oprávnění, aby mohl měnit bezpečnostní nastavení.
Oprávnění je možné přiřadit pouze kaskádově - tj. uživatel s oprávněním D automaticky získává i oprávnění R a W.

Pokračování v budoucích článcích.
Více na toto téma v tomto manuálu.

Wednesday 21 April 2010

Projekt eArchive pro Vodafone

Po minulém týdnu, kdy jsme si popsali nový koncept v publikaci elektronického obsahu si dáme další ochutnávku z programu naší připravované konference. Konkrétně se jedná o popis implementace jednoho projektu.

Projekt eArchive, který byl byl implementován převážné Oracle Consulting Services za spolupráce se společností Cleverlance pro Vodafone, řeší legislativní potřebu: uchovávat určitý typ dokumentů (v tomto projektu se jednalo o vydané faktury) po danou dobu (detailní faktury po dobu 6 měsíců a souhrnné po dobu 10 let).
V první fázi bylo hlavně třeba uspokojit obavy klienta z množství dokumentů - systém měsíčně přijme 2,4 mil. dokumentů, což představuje 400 GB dat. Tyto obavy byly rozptýleny už během velmi úspěšného POC, kdy po nahrání velkého množství dokumentů systém běžící na starém notebooku ve VMWare reagoval na požadavek vyhledání náhodného dokumentu prakticky bez prodlevy.
V druhé fázi, která je těsně před dokončením, se pak bude jednat o napojení systému na budoucí CRM systém (Siebel 8.1), čímž se využije další z výhod řešení postavených nad technologiemi Oracle - bezproblémová integrace s (nejen) oraclovským aplikačním balíkem.

Bezpochyby není nezajímavé, že na naší konferenci bude o projektu referovat přímo zástupce zákazníka - zprávy proto budou autentické a přímo z první ruky.

Wednesday 14 April 2010

Koncept Open WCM (Web Content Management)

Při práci s webovým obsahem si až dodnes většina organizací musela vybrat mezi budováním webových stránek (statických či dynamických pomocí nějakého WCM nástroje) a budováním webové aplikace. Ty byly, zejména pokud se použil nějaký portálový framework, o něco flexibilnější (většina těchto frameworků dnes sama nabízí základní funkce pro práci s obsahem), jejich nasazení však zpravidla vyžadovalo migraci stávajících zdrojů do nového prostředí, aby se nové funkce mohly začít využívat.
Koncept Open WCM, který byl poprvé částečně implementován v release Oracle UCM 10g.4 a který bude výrazně posílen v release 11g, vychází z předpokladu, že funkce správy webového obsahu by měly být poskytovány prakticky kdekoli a uživatel by tím neměl přicházet o žádný komfort. Jen pro vysvětlení: funkcemi správy webového obsahu se zde myslí např. možnost modifikovat obsah přímo na zobrazovaných stránkách, a to buď pomocí webového editoru (dokonce inline!), pomocí desktop aplikací, pokud je obsah stránky tvořen na základě nějakého takového dokumentu (např. MS Word), či výběrem s předem vybrané sady dokumentů, obrázků atp.
Představte si např., že budete chtít převézt uživatelské rozhraní nějaké aplikace do WCM. "Starým způsobem" (např. pomocí nástroje Site Studio) by se musely všechny zdroje do úložiště nástroje a vlastníkem stránek by nově byl WCM. "Nově" postačí, když se příslušná stránka upraví tak, že namísto statického elementu původní stránky nahradí dynamický element spravovaný - od 11g - aplikačním serverem té samé aplikace a o zbytek se už postarají knihovny. Samozřejmě, budete-li chtít ukládat obsah do úložiště, bude stále nutné mít běžící i content server. Ten však už nebude vlastníkem webové stránky, ale jen obsahu na ní zobrazovaného.
Z toho vyplývá, že jedinou podmínkou pro nasazení je vlastně jen, aby spravovaná aplikace či stránky běžely nad nějakým aplikačním serverem, na kterém je možné provozovat Open WCM funkce. Původní aplikace může zůstat jinak nezměněna (např. se může jednat o PHP aplikaci). Dokonce, pokud by nebylo možné z nějakého důvodu zasahovat do kódu stránky, je možné využít mashup (WebCenter - Ensemble), ve kterém se provede "namíchání" až těsně před zobrazením koncovému uživateli.
Ve verzi 11g.1 bude (dočasně) podporován jen Weblogic Server. Technologií, ve které se bude dělat design stránek, bude JSP a vývojovým nástrojem JDeveloper (toto už je podporováno od 10g4).

Wednesday 7 April 2010

Zpracování transakčních dokumentů (Oracle I/PM)

Nejprve možná k názvu: transakční dokument je takový dokument, který má nějaký, většinou velmi přímý, vztah k nějaké obchodní transakci (zejména v ekonomickém systému či ERP). Příkladem transakčního dokumentu může být faktura, objednávka či jiné logistické dokumenty; jiným příkladem může být ale např. i účtenka za taxi, kterou posíláte do systému pro vyplácení cestovních nákladů.

Z technického hlediska mají transakční dokumenty několik charakteristik:
- nemění se (výjimkou může být přeskenování dokumentu z důvodu špatné čitelnosti či chybějících či duplicitních stránek)
- velmi často je prvním zařízením, které je zpracovává, skener - alternativně je možné je přijímat i elektronicky na nějakou vyčleněnou emailovou adresu či "postaru" faxem; v ČR pak tímto alternativním vstupním kanálem mohou být i datové schránky
- velmi často mívají povahu semistrukturovaných dokumentů - např. u faktur není až tak důležité mít možnost fulltextového vyhledávání, jako spíš umět rozpoznat hlavičková data (dodavatel, číslo faktury, datum splatnosti) a při pokročilejší automatizaci i řádková data (položky, počty kusů, ceny, danňovou sazbu apod.), což je mimochodem něco, co se jen stěží dá naroubovat na metadatový model klasického DMS
- jak již bylo výše řečeno, mají často vazbu na další systémy

Z těchto důvodů se při implementaci projektu zpracovávajícího transakční dokumenty někdy místo generických ECM nástrojů (jako je Oracle UCM) preferují speciální aplikace. Už od dob Stellentu byl takovou aplikací produkt jménem Imaging and Process Management (I/PM). Až donedávna, konkrétně do uvolnění verze 11g se tento produkt nabízel mimo USA jen zřídka - nebylo možné jej lokalizovat a jednalo se o standalone Windows aplikaci (napsanou v .NETu), takže někdy byl i problém zařazení této aplikace do architektury organizace.

Co se změnilo v release 11g?
  • Především, I/PM byla zcela přepsána - dnes se jedná o J2EE aplikaci běžící nad serverem Weblogic (verze pro další aplikační servery je slíbena orientačně na konec kalendářního roku 2010).
  • Další novinkou je vyřešení schizofrenie kolem úložiště - do budoucna bude úložištěm pro I/PM - Oracle UCM
  • Totéž pak platí pro workflow. I/PM je vlastně první produkt, na kterém je možné demonstrovat posuny platné pro celou verzi 11g (tj. procesním strojem bude BPEL PM, designovým nástrojem pak Oracle BPM, dříve Fuego či Aqualogic BPM)
Největší hodnotou (např. i ve srovnání s Oracle UCM) je existence adaptérů pro napojení na Oracle Enterprise Applications, a to pro úlohy zpracovávající neměnné dokumenty (imaging). Dnes tyto adaptéry existují pro EBS (verzi ve Forms), PeopleSoft a do budoucna se plánuje i html verze EBS a JDEdwards.
Pro srovnání: Siebel je integrován přímo s UCM, protože povaha dokumentů vkládaných ze Siebelu má velmi často jinou povahu, než transakční dokumenty (např. tyto dokumenty je žádoucí měnit, verzovat apod.)
Hlavní výhodou těchto adaptérů je to, že se Oracle zavazuje je podporovat při dalších budoucích změnách (tj. ať už na straně I/PM, UCM či naopak EBS, Siebelu atd.)