Tömeges elektronikus aláírás

Ügyfélprobléma

Az ügyfél szolgáltató cég, aki havonta több, mint egymillió számlát küld ki saját ügyfelei felé. A számla másodpéldány archiválása, valamint az elektronikus számla kibocsátása azt kívánja, hogy minden egyes számla elektronikus formátuma legyen elektronikusan aláírva és időpecsételve.

Az elektronikus aláíró alkalmazás/gép (appliance) fokozott elektronikus aláírás készítésére képes, és proprietary http protokoll felett képes kommunikálni. Párhuzamosan 10 aláírás készítését végzi, minden további kapcsolatot elutasít.

A számla generáló alkalmazás felülete fájl alapú, és egyáltalán nincs tekintettel az elektronikus aláíró alkalmazás sebességére. A számla fájlok egy könyvtárba kerülnek amint elkészültek, egyszerre akár 100,000 számla fájl, gyakorlatilag egy időben.

Szükség volt egy olyan integrációs alkalmazásra, amelyik képes fogadni a nagy tömegben, egyszerre elkészülő számlákat, és azokat a megfelelő sebességgel egymás után elküldi az aláíró rendszernek.

Mindezt megbízhatóan (nem veszhet el számla fájl), nagy rendelkezésre állás mellett (cluster környezetben) és skálázhatóan.

Javasolt architektúra

A Verhás & Verhás Szoftver Manufaktúra (VVSC) által javasolt megoldás a VVSC MTRACK alkalmazása. Ez egy Java Message Services (JMS) szolgáltatásra és adatbázisra épülő alkalmazás, amelyik a bejövő JMS üzeneteket azok tartalma alapján definiált munkafolyamatnak megfelelően továbbítja kimenő JMS sorokba.

A bemenő és a kimenő JMS sorokba/ból a dokumentumokat úgynevezett proxy-k helyezik el/olvassák ki. Így a file2jms_proxy olvassa be a számlázó rendszer által elkészített fájlokat, a jms2file_proxy helyezi el a kimenő könyvtárba az aláírt számla fájlokat, és a jms2netlock_proxy küldi el szinkron módon aláírásra az egyes dokumentumokat, amelyeket az MTRACK kimenő soraiból vesz, és aláírás után a http válaszban visszakapott aláírt fájlt helyezi el a vissza haladó bemenő sorba.

A beépített munkafolyamat motor azt is lehetővé teszi, hogy ha az aláírás és az időpecsételés nem sikerül egyszerre, akkor a csak aláírt dokumentumot a rendszer később ismét beküldhesse időpecsételésre (amennyiben az adatformátum lehetővé teszi a külön aláírást és időpecsételést).

Lehetőség van a rendszerben csomagok kezelésére is, amikor a rendszer minden dokumentumhoz nyilvántartja,hogy melyik csomaghoz (batch) tartozik, és figyeli, hogy mikor készül el egy csomag, és erről értesíti a feladót egy batch lezáró riport fájllal szintén JMS-en keresztül.

Megvalósítás

A szoftver első verziója 2005 őszén került szállításra Sun Java System Message Queue Server (későbbi OpenMQ) és ORACLE adatbázissal cluster környezetben. A futtató környezet SUN hardveren lett kialakítva, két alkalmazás szerver és két adatbázis szerverrel.

A rendszer konfigurációja adatbázis táblákon keresztül történik. Az üzemeltetést segíti, hogy az alkalmazás minden fontosabb üzemeltetési eseményről SNMP trap-pet küld az üzemeltető HP Openview rendszerébe.

Továbbfejlesztések

A rendszert az ügyfél kérésének megfelelően 2006 végén és 2007 első negyedévében továbbfejlesztettük, webes konfigurációs, statisztikai és JMX menedzsment felülettel.

2008-ban az ügyfél összeolvadt anyavállalatával és igényként jelentkezett, hogy a másik üzletágban IBM WebSphere MessageQueue felületen megjelenő számlák is kerüljenek be az aláíró rendszerbe. Ezt az MTRACK módosítása nélkül, egy új proxy kifejlesztésével oldottuk meg.

Jelenleg (2009 első negyedév) az elektronikus aláírás kiterjesztésének megvalósítása folyik. Ennek során az időpecsételt és elektronikusan aláírt dokumentumot várakoztatni kell (ez új MTRACK funkció), és a kivárási idő után visszaküldeni az aláíró rendszernek, hogy az csatolhassa az aláírási időpontra vonatkozó, csak utólag rendelkezésre álló hiteles visszavonási listát.

Ugyancsak 2009 elején az ügyfél saját fejlesztéseként valósítja meg az egyedileg készített számlák másodpéldányának archiválását. Ehhez közvetlenül a szabványos JMS interfészen keresztül, az MTRACK módosítása nélkül, küldi be a másodpéldányt szinkron módon aláírásra saját Java programjából, proxy használata nélkül.

További ügyfelek

Az MTRACK rendszert 2009 nyarán újabb ügyfélhez telepítettük. Itt a megrendelő kívánságának megfelelően nem cluster környezetben, hanem egy gépen, Linux operációs rendszer alatt Postgresql adatbázis kezelővel működik a rendszer.

Ügyfélelőnyök

Az ügyfél egy olyan rendszert kapott, amelyik nem csak az eredeti igényeket elégítette ki, hanem az újonnan megjelenő igényeknek is folyamatosan meg tudott felelni. Az aláírásra küldött dokumentumok a rendszerben megbízhatóan kerülnek továbbításra, minden egyes dokumentum nyomon követhető, és kezelhető.

Bookmark and Share
Friss hírek

2011. szerpember 9.

Kibocsátottuk a Pegamento TR, soapUI modult, amelyiklehetővé teszi, hogy soap szervizeket úgy teszteljünk, hogy közben nem kell helyességellenőrző kódot írni. A modul minden teszt futtatást adatbázisban tárol és az egyes futások eredményei összehasonlíthatóak, és minden lényeges eltérés a futási eredmények között automatikusan felderíthető.

Olvassa régebbi híreinket is!