Rozhraní

Otevřená integrační platforma GINIS

Otevřená integrační platforma GINIS představuje komplexní integrační platformu určenou pro realizaci bezpečného propojení heterogenních softwarových systémů do jednoho harmonicky spolupracujícího celku. S využitím integrační platformy GINIS náš zákazník docílí, aby jednotlivé systémy od různých dodavatelů navzájem vystoupily z izolace a začaly navenek tvořit kompaktní aplikační řešení.

Otevřená integrační platforma GINIS je ve svém jádru tvořena souhrnem programového vybavení, které našim zákazníkům pomáhá překonávat komunikační bariéry mezi jejich informačními systémy. Tato ucelená sada softwarových prostředků představuje špičkovou technologickou základnu vhodnou pro široký okruh integračních scénářů. Aplikační jádro integrační platformy GINIS je totiž navrženo tak, aby bylo škálovatelné a vyhovovalo všem organizacím bez ohledu na jejich velikost a finanční možnosti.

Dalším z důležitých pilířů otevřené integrační platformy GINIS jsou hluboké zkušenosti našich specialistů jak v oblasti technologické, tak v oblasti metodiky zpracování informací v organizacích státní správy a samosprávy v ČR. Tyto znalosti jsou zároveň zárukou jistého dosažení cílového stavu integrace, kdy jednotlivé informační systémy různých dodavatelů spolu plně automatizovaným způsobem komunikují a není přitom potřeba měnit způsoby jejich obsluhy. Znalostní báze integrační platformy GINIS je nad to umocněna důsledným dodržováním a implementací mezinárodně akceptovaných průmyslových standardů, která ve svém výsledku napomáhá při snižování nákladů na provozování a další rozvoj informačních technologií v organizaci.

Klíčové vlastnosti Otevřené integrační platformy GINIS

  • Zahrnuje komplexní soubor technologií, zaměřených na procesní i datovou integraci heterogenních softwarových systémů a aplikací.
  • Sjednocuje integrační technologie do společné platformy založené na používání mezinárodních otevřených průmyslových standardů
  • Umožňuje bezproblémovou implementaci nezávisle na organizačním uspořádání, či fyzickém rozdělení subjektu do více geograficky oddělených lokalit.
  • Poskytuje zabezpečenou datovou komunikaci uvnitř organizace i mimo ni. K tomuto účelu přednostně využívá existující IT infrastrukturu konkrétního subjektu.
  • Podporuje alternativní přístup směřující k zavedení systémové integrace s progresivní architekturou orientovanou na služby, která je obecně známá pod termínem Services Oriented Architecture (SOA).
  • Přináší rozsáhlou množinu standardně dodávaných a dlouhodobým provozem ověřených komponent, které vznikly na základě praktických požadavků z mnoha již realizovaných integračních projektů u subjektů z oblasti veřejné správy.
  • Garantuje vysokou flexibilitu, otevřenost a snadnou rozšiřitelnost, která vychází přímo ze základní koncepce integrační platformy GINIS a tou je orientace na použití standardizovaných technologií spojených s využitím jazyka XML.
  • Nabízí příležitost pro inovaci a optimalizaci stávajících procesů v organizaci s ohledem na snížení celkových nákladů na vlastnictví IT infrastruktury.
  • Obsahuje komplexní nabídku služeb v oblasti systémové integrace. Mezi ně patří mj. analýza, návrh, poradenství, implementace, provoz a údržba integračního řešení v rámci organizací veřejné správy.
  • Zpřístupňuje eventuelní možnost vybudování a nasazení tzv. kompozitních aplikací. Jedná se o přídavnou vrstvu aplikační logiky, která běží nad více klasickými aplikacemi a umožňuje z jednoho místa provádět řadu transakcí podle předem daného postupu. Cílem je získat mnohem efektivnější a pružnější kontrolu nad správou dat ve více informačních zdrojích organizace současně.
  • Zaručuje škálovatelnost, robustnost a spolehlivost všech dodávaných komponent. Tyto vlastnosti jsou již tradičními znaky všech námi dodávaných aplikací a jejich ověření je možno provést na mnoha desítkách referencí.

Hlavní přínosy zavedení Otevřené integrační platformy GINIS

  • Umožní organizacím pochopit procesní souvislosti a realizovat nové vazby, které jim ve svém důsledku přinesou eliminaci duplicitních činností a uvolnění kapacit pro zefektivnění jejich primární činnosti.
  • Poskytne přístup k prvotřídním znalostem metodiky zpracování dat v oblasti veřejné správy ČR a dlouhodobým zkušenostem z praktické realizace řady integračních řešení.
  • Zaručí vysokou míru bezpečnosti celého řešení, zejména ochranu před neoprávněným přístupem, zneužitím a znehodnocením dat.
  • Přináší možnost maximalizace návratnosti investic do stávajících počítačových systémů a snížení celkových nákladů na jejich vlastnictví, to vše přitom v důsledku zefektivnění jejich vzájemné komunikace a optimalizace existujících informačních toků.
  • Nabízí pomoc při adaptaci na změny v legislativě a aplikaci s tím souvisejících nově vzniklých požadavků na softwarové aplikace a jejich integraci.

Základní komponenty integrační platformy GINIS

XML rozhraní systému GINIS - rozhraní založené na zpracování a distribuci dat ve formátu XML. Jedná se o otevřenou aplikační platformu, která je interně využívána všemi webovými službami, komponentami datového rozhraní INT a dalšími aplikacemi systému.

Webové služby rozhraní XRG - kategorizovaná sada webových metod umožňujících integrovaným aplikacím ustavit vzájemnou komunikaci probíhající v reálném čase metodou dotaz-odpověď. Jednotlivé metody jsou cíleně orientovány na poskytování služeb pro externí systémy tak, aby toto rozhraní bylo slučitelné s koncepty SOA.

Datově orientované rozhraní INT - je určeno pro datovou komunikaci s externími systémy přes import a export asynchronně zpracovávaných datových dávek. Tento způsob integrace je primárně vhodný pro velmi velké objemy přenášených dat.

Nástroje pro komunikaci se specializovanými rozhraními třetích stran - jedná se o řešení pro přístup k obecně vyhlášeným nebo dlouhodobě provozovaným systémům. Namátkou lze zmínit podporu obousměrné komunikace s portálem veřejné správy nebo implementaci rozhraní pro elektronickou komunikaci s různými komerčními bankami.

Portál pro sdílení a řízenou distribuci technologických a provozních informací - sjednocuje informace o různých integračních projektech a aplikacích do jediného webového zdroje. Plní rovněž funkci komunitního portálu pro osoby zainteresované na realizaci konkrétního integračního řešení.

Centrální řízení přístupů a zabezpečení systému - realizováno pomocí aplikace Autorizační služba pro GINIS, která se jak služba operačního systému instaluje přímo na aplikační server. Jejím primární funkcí je zabezpečení centrální správa profilů pro přístup do systému a optimalizace vyhodnocení předané sady uživatelských oprávnění za pomoci vstupenek.

Aktivní integrace na základě vzniku systémových událostí - doplňuje možnost jednotlivých komponent integrační platformy GINIS vystupovat v roli aktivního členu v rámci daného integračního řešení a nahrazovat tak významnou část funkcionality integračního brokeru v situacích, kdy není nasazen.

Technologické aspekty integrační platformy GINIS

Integrační platforma GINIS je založena na využití celé řady nejmodernějších informačních technologií a plně respektuje nejdůležitější mezinárodně akceptované průmyslové standardy vydané v oblasti Enterprise Application Integration (EAI) a B2B (Business-to-Business) komunikace. Níže uvedený přehled shrnuje nejdůležitější z těchto technologických aspektů a uvádí stručné objasnění významu jejich uplatnění v heterogenních integračních scénářích.

.NET - aplikační komponenty řazené mezi součásti integrační platformy GINIS jsou z valné většiny implementovány v progresivní technologii Microsoft .NET. Díky tomu požívají výhod plynoucích z transparentně vyřešeného propojení na ostatní hlavní aplikační platformy jako je COM/DCOM, J2EE, Linux apod. Další neméně důležitým rysem je zakomponování komplexní množiny bezpečnostních zásad, a to již na systémové úrovni běhového prostředí .NET Framework, které se striktně a automaticky promítají i do aplikací vytvořených pro toto prostředí.

XML - XML je zkratkou pro Extensible Markup Language, což doslovně přeloženo znamená rozšiřitelný značkovací jazyk. Jeho hlavní předností je schopnost poskytnout pružný, platformově nezávislý a standardizovaný způsob reprezentace dat přenášených mezi heterogenními počítačovými systémy. A právě důsledné využití schopnosti XML přenášet samopopisná data na platformově neutrálním základě zaručuje komponentám integrační platformy GINIS otevřenost a konzistentnost datových přenosů.

Webové služby - webová služba je softwarová komponenta, která dohodnutým způsobem zpřístupňuje své vlastnosti v rámci internetu případně prostřednictvím lokální sítě organizace. Vzhledem k otevřeným a platformově neutrálním standardům, na nichž jsou webové služby postaveny, je jejich programový model zcela nezávislý na některé konkrétní hardwarové architektuře. Webové služby jsou navíc ze své definice volně vázané. Znamená to, že lze změnit jejich implementaci na libovolném z konců spojení bez ovlivnění druhého. Díky tomu jsou webové služby ideální pro nasazení v heterogenních prostředích, kde spolu komunikuje řada aplikací od různých dodavatelů.

SOAP - mezinárodní standard pro definici formátu zpráv určených ke vzájemné komunikaci mezi procesy pomocí jazyka XML. Tento standard je spravován konsorciem W3C a na úrovni protokolu poskytuje základní infrastrukturu pro implementaci dalších specializovaných norem zastřešujících řešení konkrétních komunikačních a přenosových potřeb. Aplikace integrační platformy GINIS protokolu SOAP využívají nejen ve scénářích založených na webových službách, ale i při konstrukci datových dávek rozhraní INT v řešeních postavených na modelu předávání zpráv (Message Passing).

WS-Security - je rozšíření webových služeb společně oznámené firmami Microsoft, IBM a BEA, které bylo standardizováno organizací OASIS (Organization for the Advancement of Structure Information Standards). Tento standard dovoluje transparentním způsobem zabezpečit veškerou komunikaci webových služeb, používat ve spojení s nimi digitální podpisy a v neposlední řadě i chránit přenášená data pomocí osvědčených kryptografických mechanismů. Existujících komponenty náležející k integrační platformě GINIS mají zakomponovánu kompletní podporu WS-Security díky internímu zapracování výkonné vrstvy Web Service Enhancements (WSE).

Digitální podpisy a certifikáty - důležitou vlastností integračních řešení je požadavek garance věrohodnosti původu neboli autenticita předávaných informací a dále též záruka nezměnitelnosti obsahu neboli integrita zpracovávaných dat. Požadavek autenticity a integrity je v rámci integrační platformy GINIS zpravidla realizován připojením elektronického podpisu nebo značky, a to v souladu s platnou legislativou, zejména zákonem 227/2000 Sb. o elektronickém podpisu.

Integrace s použitím integračního brokeru

Každé integrační řešení lze z tradičního pohledu chápat ve dvou rovinách. První z nich, odborně nazývaná Enterprise Application Integration (EAI), spočívá v propojování informačních systémů uvnitř jedné organizace. Druhá rovina, často označovaná termínem B2B (Business-to-Business), se naproti tomu obecně zabývá propojením aplikací navenek přes hranice jednotlivých organizací. Současným trendem v oblasti IT je však sloučení obou těchto sfér do jednoho centrálně řízeného a spravovaného procesu. Tento způsob integračního řešení je pak běžně znám pod zkratkou A2A (Any-to-Any).

Realizace uvedeného přístupu má své nesporné výhody, a to zejména u velkých a teritoriálně decentralizovaných subjektů. Bohužel s sebou nese také výrazně větší komplexitu při implementaci konkrétních integračních scénářů. A právě v této situaci najde uplatnění tzv. integrační broker. Pod tímto termínem se skrývá speciální softwarová aplikace, jejímž hlavním účelem je umožnit centrální návrh, řízení, správu a monitorování všech integračních procesů v organizaci.

Integrační platforma GINIS je díky své otevřenosti a důrazu na dodržování obecně akceptovaných průmyslových standardů plně připravena na spolupráci s celou řadou integračních brokerů od různých dodavatelů. Nicméně doporučovaným řešením pro tyto situace je nasazení Microsoft BizTalk Serveru, se kterým je naše řešení zcela kompatibilní a shoduje se i na úrovni používané aplikační platformy. Náš zákazník tak získá již okamžikem implementace naprosto jednoznačnou záruku kontinuity vývoje pro případ eventuelní budoucí potřeby inovace své IT infrastruktury.

Integrace na základě zpracování událostí systému GINIS

Integrační platforma GINIS je koncipována i pro převzetí role aktivního prvku při výměně zpráv mezi integrovanými informačními systémy. Tato vlastnost se uplatní zejména ve scénářích, kde není z jakýchkoli důvodů nasazen integrační broker. Provozující subjekt tak přímo získává možnost aktivně realizovat svoje administrativní procesy jak propojováním vnitřních aplikací, tak i integrací přes hranice organizace.

Klíčovou komponentou pro toto řešení je událostní systém GINIS. Jakákoliv aplikační komponenta má díky němu možnost vyslat zprávu do fronty událostí. Tato fronta je periodicky monitorována speciální službou jádra systému GINIS a na základě administrátorem stanovených pravidel je v odezvu ni vyvolána sada odpovídajících akcí. Aplikováno do integračního scénáře to v podstatě znamená, že po splnění definovaných podmínek je automaticky spuštěna příslušná aplikační rutina, která zpravidla iniciuje pasivní rozhraní systému třetí strany.

Nasazení událostního systému GINIS v rámci integračního řešení organizace představuje snadnou možnost přechodu od běžně aplikované praxe proprietárních rozhraní pracujících způsobem každý s každým k mnohem efektivnějšímu modelu s centrální správou. To vše bez zvyšování komplexity řešení a dodatečných nákladů na IT middleware.

Bezpečnostní principy integrační platformy GINIS

Bezpečností architektura integrační platformy GINIS přináší důslednou implementaci bezpečnostních prvků hned na několika aplikačních úrovních zároveň. Cílem této koncepce je zaručit vysokou míru bezpečnosti celého řešení, a to zejména ochranu před neoprávněným přístupem, zneužitím a znehodnocením dat. Víceúrovňové zabezpečení integrační platformy GINIS je přitom charakteristické důslednou aplikací následujících principů :

Bezpečnost kódu – Díky skutečnosti, že je převážná většina aplikačních komponent integrační platformy GINIS určena pro provoz v řízeném běhovém prostředí .NET Framework, je s využitím standardních bezpečnostních prvků tohoto prostředí ( silná jména, prokazování identity, apod. ) minimalizována možnost zneužití kódu jednotlivých rozhraní nepřátelskými aplikacemi.

Zabezpečení komunikace – Tato úroveň zabezpečení řeší způsoby zajištění důvěrnosti, integrity a nepopiratelnosti dat přenášených mezi jednotlivými rozhraními propojovaných informačních systémů. Integrační platforma GINIS se v této oblasti opírá o komplexní využití standardních bezpečnostních mechanismů a to jak na úrovni přenosového protokolu ( SSL a IPSec ), tak na úrovni jednotlivých datových zpráv ( WS-Security ).

Zabezpečení přístupu – Princip spočívá v podmínění jakéhokoliv využití zdrojů integrační platformy GINIS provedením autentizace a autorizace do systému. Jedná se v podstatě o kontrolu, že žadatel o službu je opravdu tím za koho se vydává a dále o kontrolu, že má právo ten který zdroj použít. Bezpečnostní procedura spojená s autentizací a autorizací je v rámci integrační platformy GINIS důsledně centralizována pomocí speciální aplikace s názvem Autorizační služba pro GINIS a optimalizována zavedením institutu vstupenky do systému.

Evidence činnosti – Integrované zaznamenávání činnosti všech komponent integrační platformy GINIS prováděné na různých vrstvách systému je vhodným doplňkem k výše uvedeným prostředkům zabezpečení a zvyšuje jejich účinnost. Umožňuje mimo jiné zpětnou dohledatelnost původce změn v datech, analýzu záznamů daného typu, hledání podezřelých případů chování, či vysledování případných průniků do systému.

Související informace :

XML rozhraní informačního systému GINIS

Aplikační základ integrační platformy GINIS tvoří XML rozhraní GINIS, které je rovněž známo pod zkratkou XRG. Pod tímto termínem je zahrnuto široké spektrum dodávaných komponent počínaje obsáhlou sadou kategorizovaných webových služeb pro on-line přístup k datům, doplněnou o znalostní bázi a přístup k portálu pro sdílení technologických a provozních informací a konče softwarovými nástroji pro automatizaci rozličných úloh v oblasti veřejné správy, datových komunikací a zabezpečení předávaných informací.

Rozhraní XRG nicméně v žádném případě nepředstavuje uzavřenou sadu funkcionality, ale spíše otevřenou aplikační platformu, kterou lze do finální formy sestavit až na základě specifických potřeb každého zákazníka. Tento rys spolu s důrazem kladeným na využití nejmodernějších technologií a robustnost celého systému umožňuje konfigurovat každé integrační řešení tak, aby zabezpečilo splnění i těch nejpřísnějších kritérií a vyhovělo nárokům širokého spektra cílových prostředí.

Jak již název rozhraní XRG napovídá, koncepce jeho řešení je založena na zpracování dat distribuovaných ve standardizovaném formátu XML. Mezi hlavní deklarované a reálnou praxí mnohokrát ověřené přednosti tohoto formátu patří schopnost poskytnout otevřený, pružný a platformově nezávislý způsob reprezentace dat přenášených mezi rozličnými počítačovými systémy.

V rámci integrační platformy GINIS je těchto obecných rysů XML využito hned dvojím způsobem. Použití formátu XML jednak už ze své podstaty předpokládají všechny webové služby rozhraní XRG, a dále jsou jeho prostřednictvím předávána taktéž data určená pro dávkové zpracování pomocí rozhraní INT. Integrace založená na v reálném čase vykonávaných webových službách XRG je přitom určena převážně pro propojení aplikací vyžadujících okamžitou zpětnou vazbu a nebo provádějících přímou interakci s uživatelem. Naproti tomu asynchronně zpracovávané dávky ve formátu XML se hodí zpravidla pro použití u jednorázově distribuovaných velmi velkých objemů dat.

Webové služby rozhraní XRG

Integrační platforma GINIS disponuje desítkami hotových webových služeb, které jsou kategorizovány a dodávány ve skupinách podle okruhu zaměření jejich činnosti. Tímto okruhem se zpravidla rozumí vazba rozhraní na konkrétní agendu informačního systému GINIS. I zde ovšem platí, že prezentovaný výčet kategorií webových služeb XRG, jakož i jím reprezentované penzum funkčnosti umístěné v jednotlivých interně zakomponovaných webových metodách, jsou neustále aktualizovány a rozšiřovány tak, aby reagovaly na okamžité požadavky měnících se integračních potřeb provozující organizace.

Webové služby rozhraní XRG jsou v drtivé většině navrhovány jako dokumentově orientované. To znamená, že na svém vstupu zpravidla očekávají právě jeden parametr typu XML dokument, a pakliže vracejí výstupní data, rovněž tato jsou předávána ve formě XML dokumentu. Uvedený přístup je výhodný zejména s ohledem na potencionální možnost do budoucna dle potřeby přidávat další datové položky na vstup a nebo výstup takových webových služeb bez explicitní nutnosti měnit jejich stávající klienty.

Každý typ XML dokumentu, který je určen jako vstupní nebo výstupní parametr webových služeb XRG, je unikátně identifikovatelný prostřednictvím jmenného prostoru, do nějž náleží jeho položky. K tomuto jmennému prostoru se dále váže speciální XML schéma, které slouží jednak pro popis syntaxe a sémantiky vstupních eventuelně výstupních parametrů, a jednak pro validaci vstupních dat za běhu webových služeb. Všechna XML schémata webových služeb XRG jsou pečlivě zdokumentovaná a přístupná na komunitním webovém portálu.

Životaschopnost a efektivita této koncepce rozhraní byla ověřena v řadě integračních projektů při propojení systému GINIS s dalšími informačními systémy jiných dodavatelů. Webové služby XRG prokázaly, že výraznou měrou usnadňují sdílení dat mezi uživateli i integraci informačních procesů v organizacích, a to skutečně bez ohledu na jejich topologické uspořádání nebo existující technologická omezení.

Datově orientované rozhraní INT

Ačkoliv by se v záplavě informací o moderních rozhraních dalších generací mohlo zdát, že tradičním datovým rozhraním je již odzvoněno, opak je pravdou. V integračních scénářích existuje množství situací, kdy je naopak jeho nasazení nejjednodušším a nejlevnějším řešením. Příkladem může být nepravidelná potřeba distribuce velmi velkých objemů dat nebo nahodilé spuštění dlouho trvajícího transakčního zpracování, které samozřejmě není vhodné provádět v čase reálného provozu uživatelů. Integrační platforma GINIS je i na takové eventuality dobře připravena a ve své výbavě obsahuje rovněž datově orientované rozhraní INT pracující v asynchronním režimu.

Rozhraní INT je určeno pro komunikaci s externími systémy pomocí datových dávek a to buď ve formátu XML nebo ve formě strukturovaného textu. S přihlédnutím k dlouhodobému kontinuálnímu vývoji tohoto rozhraní v současné době existuje několik stovek rozličných typů těchto dávek. Tento okamžitě dostupný obsah dramaticky zkracuje potřebnou dobu implementace rozhraní a v konečném důsledku tím i pozitivně ovlivňuje míru návratnosti investice do integrační technologie.

V rámci integrační platformy GINIS je toto rozhraní aplikačně podpořeno speciálním modulem INT. Modul INT pracuje zpravidla v automatizovaném režimu, je však možné jej používat i interaktivně, a to současně na více paralelně kooperujících instalacích. Tato vlastnost je užitečná zejména pro zpracování takových typů datových dávek, které vyžadují kontrolu protokolu a následnou akceptaci importovaných dat. Činnost prováděná modulem INT je parametricky nastavitelná, a to hned na několika úrovních současně. Široce konfigurovatelná je jednak vlastní definice jednotlivých dávek, která má zcela zásadní vliv na průběh jejich importu a exportu. Další možností konfigurace je možnost měnit hodnoty parametrů konkrétních dávek a definovat zvláštní hodnoty pro každý externí systém separátně. Samozřejmostí je pochopitelně i definice zabezpečení a řízení přístupu k modulu INT.

Právě parametričnost datově orientovaného rozhraní INT dále výraznou měrou přispívá k flexibilitě a snadné rozšiřitelnosti na něm vystavěných úloh v různých integračních řešeních. Přidanou hodnotu tohoto rozhraní rovněž znatelně zvyšuje dlouhodobou praxí ověřená robustnost a spolehlivost všech jeho komponent.

XML dávky modulu INT

Informační systém GINIS umožňuje ve vztahu k externím aplikacím rovněž komunikaci založenou na dávkově orientovaném rozhraní. Podstatou této komunikace je distribuce a zpracování datových dávek. Datové dávky lze krátce definovat jako autonomní soubory údajů uložené v určitém známém formátu. Tyto soubory je přitom možno mezi jednotlivými uzlovými body komunikace přenášet pomocí různých přenosových kanálů. Namátkou lze uvést např. přenos pomocí různých datových médií, zasílání elektronickou poštou, či distribuci dávek s využitím speciálních webových služeb. Vlastní zpracování v dávkách obsažených údajů však probíhá odděleně od jejich přenosu a je prováděno v režii k tomuto účelu speciálně navrženého modulu INT. Dokumentace k modulu INT také obsahuje podrobné informace o tomto typu rozhraní a o struktuře jednotlivých datových dávek.

Komunikace se specializovanými rozhraními dalších subjektů

Zaměření integrační platformy GINIS se nevyhýbá ani reálné potřebě komunikace se specializovanými rozhraními dalších subjektů. Jedná se o různá obecně vyhlášená nebo tradiční rozhraní počítačových systémů různých institucí. Podpora pro tato rozhraní je vyřešena na obecné aplikační úrovni přímo v rámci integrační platformy GINIS a je distribuována buď jako integrální součást jednotlivých aplikací nebo podle jejich povahy i v podobě univerzálních nástrojů a komponent systému.

Zvláštní pozornost si v této souvislosti zasluhuje komplexní řešení komunikace se systémem základních registrů a státní pokladny, a to současně na datové i funkční úrovni. Dále sem spadá plně integrované řešení vazby na registr živnostenského podnikání, insolvenční rejstřík, digitální archiv a v neposlední řadě rovněž kompletní aplikační podpora pro odesílání i příjem zpráv prostřednictvím systému datových schránek.

Za další specializovaná rozhraní externích subjektů nativně podporovaná na úrovni integrační platformy GINIS lze namátkou jmenovat spolehlivě vyřešenou datovou komunikaci s Českou národní bankou a řadou dalších komerčních bank, Českou poštou, Českou správou sociálního zabezpečení, Finančními úřady a početnou skupinou jiných subjektů.

Podmínky pro provozování rozhraní XRG - důležité upozornění :

Webové služby rozhraní XRG je možné implementovat pouze u organizací provozujících informační systém GINIS®. Instalace a provoz rozhraní XRG u těchto subjektů je vázána na získání příslušné licence, a to podle aktuálních obchodních podmínek společnosti GORDIC® spol. s r. o. Komunikace softwarové aplikace jiného dodavatele se systémem GINIS® prostřednictvím rozhraní XRG je dále podmíněna předchozí registrací řešení u společnosti GORDIC® spol. s r. o. Společnost GORDIC® spol. s r. o. si přitom vyhrazuje právo rozhodovat o poskytnutí licence k provozování rozhraní XRG, právo přidělovat v souvislosti s využíváním rozhraní XRG registraci řešení pro softwarové aplikace jiných dodavatelů, jakož i právo měnit výše uvedené podmínky.

Odkazy související s technologií XML :

Datový prvek ISVS

Tento datový prvek je zakotven ve standardech pro ISVS spravovaných Ministerstvem vnitra České republiky.

Jeho popis je součástí katalogu datových prvků Pro získání popisu datového prvku, prosím, použijte výše uvedený odkaz

Webové služby pro testování

Následující seznam obsahuje informace o URL adresách, kde jsou nainstalovány webové služby XRG jednotlivých rozhraní určené pro testování pracovníkům externích firem. Z důvodu, že chování jednotlivých webových služeb zejména v oblasti zabezpečení vsupních a výstupních dat, je silně ovlivněno konfiguračním nastavením, jsou v tomto seznamu uvedeny pouze adresy na testovací instalace, které již byly v minulosti vyžádány. Vznikne-li proto potřeba testovat webové služby v konfiguraci, která aktuálně není dostupná, nebo v případě potřeby zřízení nového přístupu do stávajícího testovacího prostředí, kontaktujte prosím pracovníky podpory na této adrese. Popis očekávané formy zabezpečení vstupních dat testovací webové služby je vždy uveden v poznámce u každé URL adresy v seznamu a má následující význam:

  • Digest autentizace - je očekáváno zabezpečení vstupních dat dle specifikace WS-Security, a to pomocí bezpečnostní známky typu UserNameToken s heslem předávaným metodou send-hashed, přičemž stejnou metodou jsou zabezpečena rovněž výstupní data. Tento způsob zabezpečení je na implementaci v rámci klientské aplikace poměrně silně komplikovaný, a proto je doporučeno ho zásadně používat společně s klientským API pro volaní webových služeb XRG.

    Příklad vstupních a výstupních dat pro webovou službu s digest autentizací lze získat zde.

  • Plain-text autentizace - je očekáváno zabezpečení vstupních dat dle specifikace WS-Security, a to pomocí bezpečnostní známky typu UserNameToken s heslem předávaným metodou send-text. Tato metoda je na implementaci v rámci klientské aplikace výrazně jednodušší než dříve popsaná metoda digest autentizace, nicméně předpokládá při ostrém provozu další zabezpečení na úrovni přenosového kanálu, zpravidla použitím protokolu HTTPS.

    Příklad vstupních a výstupních dat pro webovou službu s plain-text autentizací lze získat zde.

  • Anonymní autentizace - u vstupních dat webové služby není očekáváno explicitní zabezpečení a totéž platí o výstupních datech vracených webovou službou.

    Příklad vstupních a výstupních dat pro webovou službu s plainanonymní autentizací lze získat zde.

Definice webových služeb

Webová služba je softwarová komponenta, která dohodnutým způsobem zpřístupňuje své vlastnosti v rámci internetu případně prostřednictvím lokální sítě organizace. Vzhledem k otevřeným a platformově neutrálním standardům, na nichž jsou webové služby postaveny, je jejich programový model zcela nezávislý na některé konkrétní hardwarové architektuře. Webové služby jsou navíc ze své definice volně vázáné. Znamená to, že lze změnit jejich implementaci na libovolném z konců spojení bez ovlivnění druhého. Díky tomu jsou webové služby ideální pro nasazení v heterogenních prostředích, kde spolu komunikuje řada aplikací od různých dodavatelů.

Komunikace prostřednictvím webových služeb XRG

Komunikace s informačním systémem GINIS® prostřednictvím webových služeb poskytovaných vrstvou XRG probíhá metodou dotaz - odpověď. Znamená to, že na konkrétní požadavek ve formě XML vstupních dat, je uživateli bezprostředně po vykonání specifické funkčnosti webové služby poskytnuta příslušná odpověď, rovněž ve formátu XML. Jedná se zde o tzv. on-line přístup. Vrstva XRG přitom poskytuje celou řadu webových služeb, které navenek zpřístupňují vybrané vlastnosti systému GINIS® z nejrůznějších oblastí jím zpracovávané problematiky.

Podmínky provozování webových služeb XRG

Webové služby rozhraní XRG je možné implementovat pouze u organizací provozujících informační systém GINIS®. Instalace a provoz rozhraní XRG u těchto subjektů je vázána na získání příslušné licence, a to podle aktuálních obchodních podmínek společnosti GORDIC spol. s r. o. Komunikace softwarové aplikace jiného dodavatele se systémem GINIS® prostřednictvím rozhraní XRG je dále podmíněna předchozí registrací řešení u společnosti GORDIC spol. s r. o. Společnost GORDIC spol. s r. o. si přitom vyhrazuje právo rozhodovat o poskytnutí licence k provozování rozhraní XRG, právo přidělovat v souvislosti s využíváním rozhraní XRG registraci řešení pro softwarové aplikace jiných dodavatelů, jakož i právo měnit výše uvedené podmínky.

Parametry webových služeb XRG

Webové služby vrstvy XRG jsou v převážné většině navrhovány jako dokumentově orientované. To znamená, že na svém vstupu zpravidla očekávají právě jeden parametr typu XML dokument, a pakliže vracejí výstupní data, rovněž tato jsou předávána ve formě XML dokumentu. Uvedený přístup je výhodný zejména s ohledem na potencionální možnost v budoucnu dle potřeby přidávat další datové položky na vstup a nebo výstup takových webových služeb bez explicitní nutnosti měnit jejich stávající klienty.

Každý typ XML dokumentu, který je určen jako vstupní nebo výstupní parametr webových služeb XRG, je unikátně identifikovatelný prostřednictvím jmenného prostoru, do nějž náleží jeho položky. K tomuto jmennému prostoru se dále váže speciální XML schéma, které slouží jednak pro popis syntaxe a sémantiky vstupních eventuelně výstupních parametrů, a jednak pro validaci vstupních dat za běhu webových služeb. Odkaz na příslušné XML schéma vstupního nebo výstupního parametru je uveden vždy na stránce s popisem konkrétní webové metody.

Jak již bylo uvedeno, hlavním přínosem XML schémat je to, že konkrétní XML dokument s daty je možno proti XML schématu zkontrolovat a ověřit tak jeho platnost. Tím je možno již před zahájením vlastního zpracování rozpoznat, zda dokument obsahuje dostatek relevantních údajů a zda je vůbec možno ho zpracovat. Druhým přínosem využití XML schémat, je možnost jednoznačně a standardizovaným způsobem zjevit okolí, jaké datové struktury jsou pro danou aplikaci akceptovatelné.

Z hlediska původu lze XML schémata rozdělit do dvou kategorií, a sice na schémata veřejná, která vytvářejí různé standardizační skupiny. Namátkou lze jmenovat již zmíněné W3C, nebo sdružení OASIS, u nás pak Ministerstvo informatiky ČR. Druhou skupinou XML schémat jsou potom schémata speciální pro daný informační systém. Jejich použití je nutné zejména v případech, kdy pro danou množinu dat standardizované XML schéma buď neexistuje, nebo nevyhovuje všem nárokům na něj kladeným. Informační systém GINIS® pro svou externí komunikaci s využitím XML disponuje rovněž sadou vlastních XML schémat, která byla původně vyvinuta společností GORDIC. Hlavním motivem jejich vytvoření bylo vytvoření konzistentního datového modelu pro zpřístupnění vybrané funkčnosti systému navenek.

XML schéma v podstatě definuje uspořádanou množinu datových položek nazývaných též datové prvky. Datové prvky mohou být v zásadě dvojího druhu, a to buď jednoduché nebo složené. Jednoduché datové prvky jsou zpravidla vymezeny základním typem obsažených dat, přičemž jejich začleněním do většího celku vznikají složené datové prvky. Pro usnadnění opakovaného použití a normalizaci práce s nimi jsou většině datových prvků přiřazeny unikátní identifikátory. Soubor definic takto specifikovaných položek je obvykle označován jako katalog datových prvků. Popis datových položek nacházejících se v XML schématech pro parametry webových služeb vrstvy XRG přitom může být uveden v některém z následujících katalogů datových prvků, které nalezenete po přihlášení.

Zabezpečení webových služeb XRG

Úkolem zabezpečení komunikace prostřednictvím webových služeb je zejména jednoznačně identifikovat uživatele zasílajícího požadavek na vykonání určité funkčnosti prostřednictvím webové služby, ověřit oprávnění uživatele provést požadovanou operaci na úrovni administračních dat informačního systému GINIS® a v neposlední řadě rovněž zkontrolovat věrohodnost příchozí zprávy a předcházet tak neoprávněné manipulaci s vstupními daty během jejich přenosu transportní vrstvou. V této souvislosti rozlišujeme pojmy autentizace a autorizace uživatele webové služby.

Autentizace uživatele v obecné rovině zajišťuje, že uživatel je skutečně tím, za koho se vydává. V počítačových systémech se k tomu zpravidla využívá kontrola uživatelského jména a hesla. Nejinak je tomu i v případě webových služeb XRG, které za tímto účelem využívají přístup specifikovaný v rámci SOAP rozšíření WS-Security. WS-Security je rozšíření webových služeb společně oznámené firmami Microsoft, IBM a BEA a postoupené ke standardizaci organizaci OASIS (Organization for the Advancement of Structure Information Standards). Tento standard dovoluje zabezpečit webové služby, používat digitální podpis a šifrovat SOAP zprávy.

Princip autentizace webových služeb XRG v duchu WS-Security spočívá v ověření digitálního XML podpisu příchozí zprávy zkonstruovaného z kombinace uživatelského jména, hash hodnoty hesla a unikátní hodnoty označované jako tzv. nonce. Protože uživatelské heslo v tomto případě není součástí příchozí SOAP zprávy, je nutné zabezpečit, aby bylo známé aplikaci jak na straně odesílatele, tak na straně příjemce. Vydání hesla pro komunikaci s webovými službami XRG externímu uživateli je přitom realizováno na základě adresného požadavku zaslaného společnosti GORDIC a jeho doručení příjemci je provedeno pomocí bezpečného přenosového kanálu.

Autorizace uživatele zjišťuje, zda daný uživatel má přiřazeno oprávnění k provedení požadovaného zpracování pomocí webové služby. Toto oprávnění přiděluje administrátor systému GINIS® a na formát příchozích ani výstupních dat nemá sám o sobě žádný vliv. Nicméně vzhledem k relativní náročnosti procesu autorizace na systémové prostředky a nutnosti některých aplikací udržovat serverový kontext mezi jednotlivými voláními webových služeb byl zaveden institut vstupenky do systému GINIS®.

Vstupenka do systému GINIS® je jednoduchým rozšířením hlavičky SOAP. Je vydána systémem GINIS® při prvním přístupu uživatele k webové službě, případně prostřednictvím k tomu určené speciální webové služby. Takto vydaná vstupenka do systému je potom součástí všech dalších SOAP dotazů a odpovědí při opakovaném volání webových služeb. Vstupenka musí být vždy zahrnuta jako součást digitálního XML podpisu SOAP zprávy. Vstupenka do systému GINIS® je platná až do ukončení autorizované relace, které nastává buď explicitním vyvoláním příslušné webové služby nebo vypršením časového limitu nečinnosti relace.

Příklad vstupenky do systému GINIS® :

<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header>
        ...
        <xrg:Ticket xmlns:xrg="http://www.gordic.cz/xrg/ticket/v_1.0.0">
          <xrg:Licence>DEMO</xrg:Licence>
          <xrg:Id-relace>1</xrg:Id-relace>
          <xrg:Datum-prihlaseni>2003-01-01T00:00:00</xrg:Datum-prihlaseni>
        </xrg:Ticket>
    </soap:Header>
    <soap:Body>
        ...
    </soap:Body>
</soap:Envelope>

Institut vstupenky do systému GINIS® je navržen pro zefektivnění provozu webových služeb při jejich opakované autorizaci do systému. Mimo to, vstupenky do systému rovněž umožňují pro aplikace založené na webových službách udržovat instanční data vázaná na identifikátor autorizované relace v případech, kdy je zapotřebí tato data zachovat mezi jednotlivými voláními webových služeb sdružených do jedné relace.

Princip vstupenky do systému GINIS® spočívá v tom, že při prvním volání webové služby iniciující autorizovanou relaci, jsou společně s jejími výstupními daty předána zpět klientské aplikaci i doplňková data představující vstupenku do systému. Tato jsou předávána ve formě jednoduchého rozšíření hlavičky výstupní SOAP zprávy webové služby. Vstupenka v uvedené formě je pak předávána jako součást i u každého následujícího dotazu a odpovědi dalších webových služeb, vztahujících se k dané relaci. Práci se vstupenkou do systému GINIS® lze rozdělit do následujících tří kroků :

1. Inicializace autorizované relace při prvním volání webové služby

2. Další volání webových služeb v rámci autorizované relace

3. Ukončení autorizované relace

Obsluha běhových výjimek ve webových službách XRG

Webové služby, pomineme-li případy služeb bez výstupu, při úspěšném provedení své funkčnosti vracejí výstupní data ve formě XML dokumentu. Tato data jsou přenášena zpět na klienta a jsou obsažena standardně v těle SOAP zprávy. Výstupní data webových služeb jsou podobně jako u vstupních zabezpečena aplikací digitálního XML podpisu s využitím SOAP rozšíření WS-Security. XML digitální podpis je vytvořen stejným postupem a s využitím stejného uživatelského jména a hesla, které bylo již součástí iniciačního požadavku na webovou službu.

Ovšem v případech, kdy požadované zpracování nelze z důvodu konzistence dat provést, nebo dojde-li k jinému neočekávanému stavu při zpracování, je vyvolána běhová výjimka. Z definice SOAP vyplývá, že výjimky jsou předávány zapouzdřené ve speciálním elementu Fault. Jeho povinné položky popisující výjimku mohou být dále volitelně doplněny o podrobný popis, obsažený v podřízeném elementu detail. Této vlastnosti využívají rovněž webové služby XRG, které mohou vracet podrobný popis výjimky ve formátu popsaném v níže uvedeném příkladu. SOAP zpráva, obsahující ve svém těle výjimku, nebude narozdíl od běžně přenášených zpráv podepsána a nebude ani obsahovat případnou vstupenku do systému GINIS®.

Příklad SOAP zprávy obsahující detailní popis výjimky :

<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header>
        ...
    </soap:Header>
    <soap:Body>
        ...
        <soap:Fault>
            <faultcode>soap:Server</faultcode>
            <faultstring>text běhové výjimky vyvolané webovou službou</faultstring>
            <faultactor>URL webové služby</faultactor>
            <detail>
              </xrg:Chyba xmlns:xrg="http://www.gordic.cz/xrg/fault/v_1.0.0.0">
                  <xrg:Typ>jedna z hodnot: aplikacni-chyba, technologicka-chyba nebo jina-chyba</xrg:Typ>
                  <xrg:Kod>kód výjimky</xrg:Kod>
                  <xrg:Rozsireny-kod>upřesňující chybový kód</xrg:Rozsireny-kod>
                  <xrg:Text>text technicky popisující vzniklou výjimku</xrg:Text>
                  <xrg:Uzivatelsky-text>text uživatelsky popisující vzniklou výjimku</xrg:Uzivatelsky-text>
              </xrg:Chyba>
            </detail>
        </soap:Fault>
    </soap:Body>
</soap:Envelope>

Obsluha výjimek vzniklých za běhu webových služeb

Webové služby, pomineme-li případy služeb bez výstupu, při úspěšném provedení své funkčnosti vracejí výstupní data ve formě XML dokumentu. Tato data jsou přenášena zpět na klienta a jsou obsažena standardně v těle SOAP zprávy. Výstupní data webových služeb jsou podobně jako u vstupních zabezpečena aplikací digitálního XML podpisu s využitím SOAP rozšíření WS Security. XML digitální podpis je vytvořen stejným postupem a s využitím stejného uživatelského jména a hesla, které bylo již součástí iniciačního požadavku na webovou službu.

Ovšem v případech, kdy požadované zpracování nelze z důvodu konzistence dat provést, nebo dojde-li k jinému neočekávanému stavu při zpracování, je vyvolána běhová výjimka. Z definice SOAP vyplývá, že výjimky jsou předávány zapouzdřené ve speciálním elementu Fault. Jeho povinné položky popisující výjimku mohou být dále volitelně doplněny o podrobný popis, obsažený v podřízeném elementu detail. Této vlastnosti využívají rovněž webové služby XRG, které mohou vracet podrobný popis výjimky ve formátu popsaném v níže uvedeném příkladu. SOAP zpráva, obsahující ve svém těle výjimku, nebude narozdíl od běžně přenášených zpráv podepsána a nebude ani obsahovat případnou vstupenku do systému GINIS®.

Příklad SOAP zprávy obsahující detailní popis výjimky :
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header>
        ...
    </soap:Header>
    <soap:Body>
        ...
        <soap:Fault>
            <faultcode>soap:Server</faultcode>
            <faultstring>text běhové výjimky vyvolané webovou službou</faultstring>
            <faultactor>URL webové služby</faultactor>
            <detail>
                <xrg:Chyba xmlns:xrg="http://www.gordic.cz/xrg/fault/v_1.0.0.0">
                    <xrg:Typ>jedna z hodnot: aplikacni-chyba, technologicka-chyba nebo jina-chyba</xrg:Typ>
                    <xrg:Kod>kód výjimky</xrg:Kod>
                    <xrg:Rozsireny-kod>upřesňující chybový kód</xrg:Rozsireny-kod>
                    <xrg:Text>text technicky popisující vzniklou výjimku</xrg:Text>
                    <xrg:Uzivatelsky-text>text uživatelsky popisující vzniklou výjimku</xrg:Uzivatelsky-text>
                </xrg:Chyba>
            </detail>
        </soap:Fault>
    </soap:Body>
</soap:Envelope>

XML schémata používaná vrstvou XRG

Specifikace jazyka XML řeší výhradně obecná syntaktická pravidla a sémantiku obsahu ponechává na aplikaci, která provádí jejich zpracování. V této souvislosti XML rozeznává dvě třídy dokumentů, a sice správně strukturované a platné. Správně strukturované dokumenty splňují pouze syntaktická pravidla jazyka XML, kdežto platné kromě toho ještě musí vyhovovat určitému popisu obsahové struktury, která se obecně nazývá XML schéma. XML schéma je ve své podstatě soubor nebo souborová hierarchie obsahující sadu sémantických pravidel pro zápis dat ve formátu XML. Tento soubor je opět zapsán ve formě platného XML dokumentu, tzn. že tento dokument opět splňuje určitou specifikaci obsahu. Jinými slovy, XML schéma představuje souhrn gramatických pravidel pro konkrétní typ XML dokumentu.

Specifikace XML schémat :

Hlavním přínosem XML schémat je to, že konkrétní XML dokument s daty je možno proti XML schématu zkontrolovat a ověřit tak jeho platnost. Tím je možno již před zahájením vlastního zpracování rozpoznat, zda dokument obsahuje dostatek relevantních údajů a zda je vůbec možno ho zpracovat. Druhým přínosem využití XML schémat, je možnost jednoznačně a standardizovaným způsobem zjevit okolí, jaké datové struktury jsou pro danou aplikaci akceptovatelné.

Z hlediska původu lze XML schémata rozdělit do dvou kategorií, a sice na schémata veřejná, která vytvářejí různé standardizační skupiny. Namátkou lze jmenovat již zmíněné W3C, nebo BizTalk.org, u nás pak Ministerstvo informatiky ČR. Druhou skupinou XML schémat jsou potom schémata speciální pro daný informační systém. Jejich použití je nutné zejména v případech, kdy pro danou množinu dat standardizované XML schéma buď neexistuje, nebo nevyhovuje všem nárokům na něj kladeným. Informační systém GINIS® pro svou externí komunikaci s využitím XML disponuje rovněž sadou vlastních XML schémat, která byla původně vyvinuta společností Gordic. Hlavním motivem jejich vytvoření bylo vytvoření konzistentního datového modelu pro zpřístupnění vybrané funkčnosti systému navenek.