Közigazgatási pilot példa SOA alkalmazásra 2008. április 29.
A Szoftver és Szolgáltatások Nemzeti Technológiai Platform (NESSI Hungary)
2
Program • Cél – Szakmai konszenzus kialakítása az e-közigazgatás fejlesztésében alkalmazandó technológiák, eszközök és módszerek tekintetében
• Napirend – Bevezető (Kondorosi Károly) • Feladatok, technológiák, eszközök és módszerek
– Bemutató (László Zoltán) • • • •
Életszerű, de kitalált feladat Heterogén platformok Több nagy szállító rendszerének együttműködése Megoldás-minták
– Műhelybeszélgetés (Risztics Péter) • Kérdések, válaszok, vélemények 3
BEVEZETŐ Tartalom – E-közigazgatás: fejlesztési és koordinációs feladatok – Integráció SOA alapokon – Vízió: Magyar Közigazgatási SOA • szolgáltatás-szemlélet • közigazgatási szolgáltatási sín
– A kísérleti fejlesztés • célja • terjedelme • eredményei 4
E-közigazgatás fejlesztése • Folyamatos feladat • Lehetőség: ÚMFT => EKOP ÁROP • Induló projektek – Összeállnak-e rendszerré? – Érvényre jut-e a szolgáltatás-szemlélet?
5
Aktuális feladatok • Szolgáltató kormányzat • Integrált backoffice kialakítása – Szigetek összekapcsolása – Alapfunkciók (üzenetközvetítés, azonosítás, e-fizetés, ...) – Szigeteken átívelő folyamatok (EU 20-25, ...) – Továbbfejleszthetőség • EU, régiók, önkormányzatok
– Minőségi, biztonsági követelmények – Alkalmazkodóképesség • Jogszabályi környezet (párhuzamos ÁROP, KET, adatvédelem)
– Folyamatos működés – Átlátható lépések eredményekkel, fokozatosság
6
Integráció 1 • Páros kapcsolatok – Eseti megoldások a résztvevők egyezsége alapján – Kevés szereplő (sziget) esetén működhet Hány szereplő lesz? (Régiók, önkormányzatok, ...) – Bővítés? Módosítás? – Látszólag a legegyszerűbb megoldás de nem skálázható Szereplők száma
5
10
100
1000
Kapcsolatok száma
10
45
4950
499500
7
Integráció 2 • Okos központ – Mindenkiről mindent tud és közvetít – Hány szereplő lesz? – Bővítés? Módosítás?
• Lehetőség: – Lazább csatolás (a szereplők minél kevesebbet tudjanak egymásról) – Műveletek (szolgáltatások) és paraméterek (adattípusok, formátumok) – Köztes formátum (n2 helyett n konverzió)
8
Integráció 3 • SOA: Service Oriented Architecture ESB: Enterprise Service Bus Szolgáltatás Interfész
Felügyelet
Szolgáltatási sín
Alrendszer
Alrendszer
Alrendszer
Szolgáltatás adatbázis
9
SOA jellemzők • • • • • • • •
Integrációs, architektúra-tervezési paradigma Szabványokra épül (W3C, OASIS) Nagy szállítók termékcsaládjai támogatják Megalapozott fejlesztési módszertanok (SOA Roadmap) Alrendszerek önállósága, függetlensége megmarad (heterogén alrendszerek) Magasszintű szolgáltatási (igazgatási) folyamatok kezelése, menedzsmentje támogatott (BPEL, BPMN) Folyamatos, fokozatos fejlesztés, kezelhető lépésekben Referencia-projektek
10
Szolgáltatás-sín SOAP hívás
Meglévő alkalmazás
Üzleti, szolgáltatási folyamatok
Felügyeleti rendszer
Szolgáltatási sín
Adatbázis
Web-portál
Külső rendszer
Szolgáltatás adatbázis
11
Vízió • Szolgáltatási szemlélettel integrált e-közigazgatási rendszer • Rugalmasan követi a jogi és szervezeti változásokat • Önálló, az interfészeket, szabványokat betartó szakrendszerek • Egyszerű csatlakoztatás az EU rendszereihez • Bővülő szereplői kör A kulcs: közigazgatási szolgáltatási sín (közigazgatási ESB)
12
Amit szeretnénk
13
Hogyan érhetjük el? • Több éves folyamat – Fokozatos fejlesztés – A sínt (ESB-t) és annak működtetési rendszerét nekünk kell kitalálnunk és megcsinálnunk a szabványok alapján – Eszközökkel támogatott, de ezek egymással való összekapcsolása megoldandó feladat
• A szereplők koordinált, együttes munkájával • Alapvető szakmai egyetértés alapján (ERRE VAN ELŐRE...) • Ennek jegyében indítottunk kísérleti fejlesztést
14
A kísérleti fejlesztés A vizsgált rendszerek – Microsoft: Visual Studio + .NET 3.0 (Windows Communication Foundation) + IIS – Sun: NetBeans + OpenESB – Oracle: JDeveloper + Oracle Application Server – BEA: WebLogic – IBM: Rational Application Developer + WebSphere – JBoss: Eclipse + JBoss Application Server – Apache Axis2: Eclipse + Tomcat
Továbbá – Sonic – Intalio
Közülük több nyílt forráskódú 15
A kísérleti fejlesztés célja • A szolgáltatások felderítése • Alapvető interoperabilitási vizsgálat (tudnak-e együttműködni, és hogyan) • Megfelelnek-e a szabványoknak (web-service) • A lehetséges kapcsolódási felületek megtalálása a különböző gyártók rendszerei között • Nemfunkcionális követelmények kezelhetősége (biztonság, minőség) • Alapszolgáltatások (core services) megvalósíthatósága (pl. azonosítás, hitelesség, képviselet) • Tapasztalatszerzés a folyamatleírás és -menedzsment terén (BPEL) 16
Eredmények • Együttműködés alapjai – http(s) és web-service szabványok (szilárd, jó alap, elterjedt) – üzenetek (JMS)
• Biztonsági követelmények kezelhetők – token (időben korlátozott felhatalmazás, hiteles, titkosított, letagadhatatlan, sértetlen adatokkal) – adatvédelmileg védhető
• Folyamatleírás standard BPEL esetén hordozható • Hiányzó szolgáltatások megvalósíthatók – biztonságos levelezés – címtár
• Koordinációs módszertannal biztosítható a fejlesztések konvergenciája – kooperatív alapállással – szervezetközi szakmai tervező team működtetésével – központi felügyelet működtetésével
17
Mi mennyire bonyolult/egyszerű • Tanulás • Know-how kialakítása (eddig ~ 6 hónap) • (Miért nem működik, és mitől működik?)
• Ennek alapján az ismert rendszeren: – Új szolgáltatás kialakítása – Új üzleti folyamat létrehozása (néhány nap)
• Nem a technikai problémák jelentik a szűk keresztmetszetet... 18
Bemutató • • • • •
Feladat Szereplők Architektúra Biztonság Működés
19
Feladat • Egyéni vállalkozó EVÁ-ra való áttérési igényének végrehajtása • Bizonyos jogszabályi feltételeknek kell eleget tennie a vállalkozásnak, ezeket ellenőrizni kell • Több szereplő, különböző platformok, technológiák • Az áttérési folyamat végrehajtása a szereplők közreműködésével • Biztonságosan • Csak élő személy (ügyintéző) hagyhat jóvá, robot nem
20
Szereplők • Ügyfél: a vállalkozó, aki a kérelmet benyújtja • Ügyintéző: aki a kérelmet jóváhagyja • Ügyfélkapu: egységes weboldal a közigazgatás eléréséhez • Központ: végrehajtja az áttérési folyamatot; buszfelügyelet • Cégbíróság: a vállalkozások formáját tárolja • Apeh: a vállalkozás bevételeit, adótartozását tárolja • Igazságügy: egy személy büntetettségét tárolja
21
Architektúra (1) SQL Server
SQL Server
Oracle DB
Központ
Ügyfél, Ügyintéző
Ügyfélkapu
Böngésző
ASP.NET, WCF
HTTPS
Oracle BPEL
WCF
SQL Server
My SQL
My SQL
Cégbíró‐ ság
Apeh
Igazság‐ ügy
WCF
OpenESB
IBM
HTTP(S)
22
Architektúra (2) Ügyfél
Igazságügy
Ügyintéző
Ügyfélkapu
Cégbíróság
KÖZPON KÖZPONT Ügyfélka T pu
APEH
23
Ügyfél
Igazságügy
Ügyintéző Ügyfél
•Windows XP Pro SP2 •E-Szignó kliens + kártyaolvasó •Internet Explorer 7 Ügyfélkapu
Cégbíróság
KÖZPON KÖZPONT Ügyfélka T pu
APEH
24
Ügyfél
Igazságügy
Ügyintéző Ügyintéző
•Windows XP Pro SP2 •E-Szignó kliens + kártyaolvasó •Mozilla Firefox 2
Ügyfélkapu
Cégbíróság
KÖZPON KÖZPONT Ügyfélka T pu
APEH
25
Ügyfél
Igazságügy
Ügyintéző
Ügyfélkapu
• OS: Windows Server 2003 SP2 Ügyfélkapu KÖZPON • Szerver: Internet Information Services 6.0 KÖZPONT Ügyfélka T
– Web: ASP.NET (.NET 2.0)pu – E-Szignó szerver – Web-service: Windows Communication Foundation (.NET 3.0) Cégbíróság APEH – Protokoll: HTTPS
• Adatbázis: SQL Server 2005 Express • Fejlesztőeszköz: Visual Studio 2008 26
Ügyfél
Igazságügy
Ügyintéző
Központ
• OS: Windows XP Pro SP2 • Szerver: Ügyfélkapu KÖZPON – Internet Information Services 5.1 KÖZPONT Ügyfélka
T • Web-service: Windows Communication Foundation (.NET pu 3.0)
– Oracle Application Server • Business Process Execution Language (BPEL)
– Protokoll: mindig az adott hivatalnak megfelelő Cégbíróság APEH • Adatbázis: SQL Server 2005 Express • Fejlesztőeszköz: – Visual Studio 2008 – Oracle JDeveloper 10g
27
Cégbíróság
Igazságügy Ügyintéző XP Pro SP2 •Ügyfél OS: Windows • Szerver: Internet Information Services 5.1
– Web-service: Windows Communication Foundation (.NET 3.0) Ügyfélkapu – Protokoll: HTTP, WS-ReliableMessaging, WSKÖZPON KÖZPONT Ügyfélka SecureConversation, WS-Trust T pu
• Adatbázis: SQL Server 2005 Express • Fejlesztőeszköz: Visual Studio 2008 Cégbíróság
APEH
28
Ügyfél
Igazságügy
Ügyintéző APEH
• OS: OpenSuSE Linux 10.3 • Szerver: Glassfish 2 Ügyfélkapu
KÖZPON – Web-service: OpenESB (Sun) KÖZPONT Ügyfélka T – Protokoll: HTTP pu
• Adatbázis: MySQL 5.0 • Fejlesztőeszköz: NetBeans 6.1 Cégbíróság
APEH
29
Ügyfél
Igazságügy
Ügyintéző Igazságügy
• OS: Windows XP Pro SP2 • Szerver: IBM WebSphere 6 Ügyfélkapu KÖZPON – Protokoll: HTTP
KÖZPONT Ügyfélka T pu
• Adatbázis: MySQL 5.0 • Fejlesztőeszköz: IBM Rational Application Developer Cégbíróság
APEH
30
Biztonság Kapcsolat
Hitelesítés Authentication
Azonosítás Identification
Felhatalmazás Authorization
Sértetlenség Integrity
Letagadhatatlanság Nonrepudiation
Bizalmasság Confidentiality
ÜGYF-ÜK
tanúsítvány SSL
ASP.NET role
SSL
SSL
E-Szignó
ÜGYI-ÜK
tanúsítvány SSL
ASP.NET role
SSL
SSL
E-Szignó
ÜK-KR
tanúsítvány SSL
Automatikus SSL
SSL
-
KR-CÉGB tanúsítvány WSSecurity
WS-Trust (STS)
WSSecurity
WSSecurity
WSSecurity
KR-APEH
tanúsítvány WSSecurity
Automatikus WSSecurity
WSSecurity
WSSecurity
KR-IÜGY
-
-
-
-
-
-
31
Bemutató • Mit fogunk látni – Szakhatóságok soros elérése – BPEL folyamat párhuzamosítása – Szakhatóságok párhuzamos elérése
32
Ügyfél
1: belép 2: kérelmet feltölt
Ügyfélkapu
33
Ügyfél
1: belép 2: kérelmet feltölt
Ügyfélkapu
KÖZPONT
34
3: kérés Ügyfélkapu
KÖZPONT
35
3: kérés Ügyfélkapu
KÖZPONT
Cégbíróság 36
9: Nem
4: Gazdálkodási forma?
KÖZPONT
Igazságügy
8: Büntetett?
7: Nincs
APEH Cégbíróság
5: Egyéni vállalkozó
6: Adótartozása van? 37
9: Nem
4: Gazdálkodási forma?
KÖZPONT
Igazságügy
8: Büntetett?
7: Nincs
APEH Cégbíróság
5: Egyéni vállalkozó
6: Adótartozása van? 38
Ügyintéző
11: belépés
12: jóváhagyás 10: jóváhagyás? KÖZPONT
Ügyfélkapu
13: OK
16: EV-EVA vált 15: OK Cégbíróság 14: EVA váltás
39
Ügyintéző Ügyfél 11: belépés
12: jóváhagyás 10: jóváhagyás? KÖZPONT
Ügyfélkapu
13: OK
16: EV-EVA vált 15: OK Cégbíróság 14: EVA váltás
40
Ügyfél
17: Ellenőrzés
Ügyfélkapu
41
Statisztikai adatok • A mintarendszerünk Szakrendszer
Web-szolgáltatások száma
Adatbázis-táblák száma
Ügyfélkapu
2
4 + ASP.NET által generált
Központ
9
4 + Oracle által generált
Apeh
1
1
Cégbíróság
3
2
Igazságügy
1
1
42
Architektúra (1) SQL Server
SQL Server
Oracle DB
Központ
Ügyfél, Ügyintéző
Ügyfélkapu
Böngésző
ASP.NET, WCF
HTTPS
Oracle BPEL
WCF
SQL Server
My SQL
My SQL
Cégbíró‐ ság
Apeh
Igazság‐ ügy
WCF
OpenESB
IBM
HTTP(S)
43
Üzenetek • • • • • •
A SOA-ESB technológiára alapozva a közigazgatási alrendszerek integrálhatóak Van-e más megoldás? Az alrendszerek autonómiája megmarad (lazán csatolt alrendszerek és szervezetek alakulnak ki) A kooperáció és koordináció elengedhetetlen Tudástranszfer, módszertani, technikai támogatás Ha a szakmai egyetértés megvan, ne késlekedjünk... 44
Közigazgatási pilot példa SOA alkalmazásra Köszönjük a figyelmet! ? Kérdések, vélemények ! 45