Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Tvorba aplikací pro transakční část Portálu veřejné správy
Obsah: Úvod Agenda RELDP Představení transakční části PVS Registrace ke službám ČSSZ Tvorba aplikací pro PVS Zasílání dokumentů RELDP přes PVS Další rozvoj transakční části PVS Závěr Mladá Boleslav
2
Evidenční listy důchodového pojištění Vladimír Fanta vrchní ředitel úseku aplikační a projektové podpory ČSSZ
3
Jednoroční evidenční listy - RELDP
zákon č. 424/2003 Sb., (technická novela zákona č. 582/1991 Sb.) účinnost od
4
Změny v provádění ELDP se vyhotovují každý rok
3 vyhotovení (1x ČSSZ, stejnopis organizace a stejnopis zaměstnanec je přípustný elektronický přenos dat ve vyhotovení pro ČSSZ není třeba podpis zaměstnance
5
Dopady na organizace každý rok vyhotovovat ELDP
průběžně vyhotovovat ELDP u zaměstnanců končících pracovní činnost - zajišťovat stejnopis pro zaměstnance (není předmětem řešení ELDP v ČSSZ) archivovat stejnopis v organizaci (není předmětem řešení ELDP v ČSSZ)
6
Dopady na ČSSZ získat průběžně informace o pojištěních (nejen o pracovní činnosti, ale i adresní údaje apod.) může zpřístupnit veškeré informace klientům – IKP nově ročně zpracovávat přes 4 mil. dokladů změna kontrolní činnosti
7
preferovat elektronický přenos datových vět
Řešení preferovat elektronický přenos datových vět
8
ČSSZ preferuje elektronický přenos datového souboru
tisk do klasických tiskopisů RELDP, které zajišťuje
9
Předávání datových souborů RELDP
přes transakční část Portálu veřejné správy na médiích: - disketa - CD
10
Proč přes PVS? PVS je bránou pro všechny státní instituce
PVS řeší přenos mezi organizací a „místem podání v ČSSZ“ PVS je bezpečný PVS je perspektivní a budují ho i jiné státy PVS = standard
11
Přístup ČSSZ k řešení úzká spolupráce s MI ČR • organizační stránka
• používání kvalifikovaných certifikátů • používání podpisových klíčů ČSSZ
12
Přístup ČSSZ k řešení úzká spolupráce s MICROSOFT a
Siemens Business Services • technické řešení • softwarová podpora
13
Přístup ČSSZ k řešení průběžné zveřejňování podmínek a aktuálních informací na webu ČSSZ školení interních pracovníků kontakt s organizacemi kontakt a školení tvůrců mzdových systémů
14
Cíl do konce letošního roku odzkoušet přenos u 60 % organizací
za rok 2004 (duben 2005) převzít elektronicky min. 60 % RELDP z organizací
15
Portál veřejné správy Představení aplikace Elektronická podání Robert Hernady Senior Systems Engineer Microsoft s.r.o.
16
Agenda Vysvětlení pojmů a zkratek Základní architektura
Registrace a přihlášení ke službám Jaké údaje požaduje portál? Přihlašování k transakční části Správa účtů
17
Seznam zkratek EP – aplikace Elektronická podání
Transakční část Portálu veřejné správy PVS – Portál veřejné správy TxE – Transakční jádro PVS Transaction Engine R&E – Registrační modul aplikace EP Registration & Enrolment DIS – Server rozhraní resortu Deparment Interface Server
18
Základní architektura
Agentury Obyvatelé Organizace Internet 3 základní moduly Registrace a zápis (R&E) Transakční jádro (TxE) Server rozhraní resortu (DIS) Všechny služby jsou dostupné z libovolného portálu. Všechny systémy úřadů jsou podporovány Portál veřejné správy Toky informací Webové stránky a Transakce portály Elektronická Podání Ověřování identity Směrování dokumentů Registrace Přiřazení práv Komunikační infrastruktura Systémy veřejné správy
19
Základní funkce aplikace
Transakční jádro pro zpracování elektronických podání Registrace uživatelů Doručování podání příslušným úřadům veřejné správy
20
Transakční jádro (TxE)
Poskytuje jednotné rozhraní pro veškeré typy podání Přijímá elektronická podání Kontroluje identitu odesílatele Předává podání úřadu veřejné správy Zasílá potvrzení uživateli
21
Server rozhraní resortu (DIS)
Department Interface Server (DIS) DIS je rozhraní mezi aplikací EP a jakýmkoli množstvím aplikačních serverů na straně resortu nebo úřadu. Poskytuje propojení a zjednodušuje obousměrnou komunikaci. Zaručuje jedno a právě jedno doručení všech XML transakcí, které byly podány v aplikaci EP. Provádí transformaci datových formátů. Prostřednictvím TxE vrací aplikacím informaci o zpracování podání
22
Registrace a zápis (R&E)
R&E (Registration & Enrolment) obsluhuje: registraci uživatelů, kteří se přihlašují ke službám ověřování uživatelů ve všech budoucích transakcích R&E proto spravuje: registraci uživatelských pověření k aplikaci EP kontrolní mechanismus pro ověření informací proti „části známých údajů “ zapisování ověřených uživatelů k požadovaným službám R&E ověřuje integritu každé podepsané transakce Umožňuje programový přístup s pomocí bezpečného SOAP API R&E obsluhuje: registraci uživatelů, kteří se přihlašují ke službám ověřování uživatelů ve všech budoucích transakcích R&E proto spravuje: registraci uživatelských pověření ke GG kontrolní mechanismus pro ověření informací proti „části známých údajů “ přihlašování ověřených uživatelů k požadovaným službám R&E ověřuje integritu každé podepsané transakce S pomocí registračních informací ověří identitu uživatele provede kontrolu zda uživatel je oprávněn přistupovat ke konkrétní službě Umožňuje programový přístup s pomocí bezpečného SOAP API
23
Registrace uživatelů Slouží k vytvoření jednotné digitální identity
Tři typy registrací Občané Organizace Zástupci Správa uživatelů, asistentů a zástupců
24
Registrace a vazby I Občan Organizace Zástupci Uživatel1 Uživatel2
Asistent1 Asistent2 Asistent1 Asistent2 Asistent3
25
Registrace a vazby II Organizace B Zástupce A Občan Organizace A
Zástupce B
26
Role - uživatel je osoba, která zákonným způsobem reprezentuje organizaci nebo zástupce. má v aplikaci EP nejvyšší práva. V praxi to znamená, že uživatel může: vytvářet asistenty, asistentům přiřazovat služby, mazat asistenty, odebírat asistentům služby, vytvářet nové uživatele, přihlásit organizaci k dalším elektronickým službám, odhlásit organizaci od elektronických služeb, zasílat elektronická podání k přihlášeným elektronickým službám
27
Role - asistent Asistent je obdobně jako uživatel osoba, která reprezentuje organizaci nebo zástupce Asistent v rámci aplikace EP může: odesílat elektronické dokumenty pro služby, které jsou mu přiřazeny uživatelem Rozdělení na uživatele a asistenty je plně v kompetenci organizace
28
Registrace a zápis Registrace Zápis („přihlášení“) ke službě
Slouží k vytvoření uživatelského účtu v aplikaci EP Kombinace Uživatelský identifikátor / heslo Certifikát Zápis („přihlášení“) ke službě Výběr služby, kterou bude uživatel využívat Vyžaduje zadání známých údajů K dokončení registrace je nutné se zapsat alespoň k jedné službě
29
Registrace k aplikaci EP
30
Jaké údaje aplikace EP požaduje?
Ferda Mravenec ******** ********
32
AA00-BB4465
33
Známé údaje sada identifikátorů, které mají za úkol rozpoznat občana, organizaci nebo zástupce v okamžiku, kdy se zapisuje k elektronickým službám Obvykle vyžadovány jako kombinace údajů Příklad: ČSSZ Variabilní symbol + registrační číslo
35
Podpora prohlížečů modulem R&E
Modul R&E byl testován s celou řadou platforem a prohlížečů Win 95 Win 98 WinNT4 Win2000 Win XP Linux 7.1 MAC OS IE 4.01 Y IE 4.2 IE 5.0 IE 5.1 (Mac) IE 5.5 IE 6.0 Netscape 4.6 N Netscape 4.7 Netscape 6.1 Mozilla 0.9.1 Opera 6
36
Rozdíl mezi přihlášením a podepsáním
Přihlášení k aplikaci EP umožňuje: Spravovat svůj účet Zapsat/Odhlásit se k elektronickým službám Zasílat podání prostřednictvím PVS Podepisování el. podpisem Slouží k podepsání datové věty Je oddělené od přihlašování
37
Správa účtu Je nutné se přihlásit k aplikaci EP 995F1Q8BW2 **********
39
Výhody – Občan/Organizace
Jedna identita Snížení provozních nákladů Zprostředkovatelské firmy - zástupci Nové služby jsou rychleji dostupné Obousměrná bezpečná elektronická komunikace Spolehlivá služba je „stále přítomna“ 24x7 Standardní rozhraní
40
Shrnutí R&E poskytuje služby ověřování a autorizace na národní úrovni
TxE je rychlá, bezpečná, spolehlivá služba, která doručuje zprávy k vlastníkům služeb. DIS zjednodušuje poskytovatelům služeb komunikaci s aplikací Elektronická podání Aplikace Elektronická podání zjednodušuje veřejné správě poskytování elektronických služeb
41
Registrace ke službám ČSSZ
Jan Hříbal
42
Úvod – služby ČSSZ Základní pojmy Služba Transakce Pověřený pracovník
Česká správa sociálního zabezpečení – nemocenské pojištění Přehled o vyměřovacích základech a pojistném malé organizace Česká správa sociálního zabezpečení – důchodové pojištění RELDP
43
Postup registrace Získání základních informací
Postup organizace/zástupce před návštěvou okresní správy Registrace na okresní správě Registrace na PVS
44
Získání informací Internetové stránky ČSSZ Kontaktní pracovník
Kontaktní pracovník
45
Postup organizace/zástupce před návštěvou okresní správy
Pověřený pracovník připraví: Oznámení o pověření pracovníka Žádost o podpisový klíč, pokud osoba dosud není registrována. Vlastní-li osoba kvalifikovaný certifikát, jeho veřejnou část (sériové číslo, vystavitel) Občanský průkaz / pas pro ověření Oznámení o pověření – k dispozici na webových stránkách ČSSZ Zástupce si může opatřit "Oznámení o pověření" od všech zákazníků
46
Generování žádosti o podpisový klíč
Aplikace pro generování žádosti certReq Údaje v žádosti jméno a příjmení ová adresa Uložení žádosti disketa 3,5“, 1,44MB
47
Návštěva okresní správy
Kontaktní pracovníci pro elektronické předávání RELDP Organizace místní příslušnost organizace k okresní správě Zástupce místní příslušnost zástupce k okresní správě
48
Postup okresní správy Registrace na okresní správě
Zpracování podkladů od organizace/zástupce ová adresa Vygenerování podpisového klíče ČSSZ Vygenerování známých údajů Registrační číslo ČSSZ Variabilní symbol
49
Použití známých údajů Registrace na PVS registrační číslo ČSSZ
variabilní symbol Elektronická podání
50
Variabilní symbol Osmimístný
Devítimístný – pouze pro elektronická podání Praha - Jihozápadní město xxxxxx Praha - Modřany xxxxxx Praha - Jižní město xxxxxx Jeseník xxxxxx Fiktivní - testování 99xxxxxxxx
51
Registrace na PVS Registrace na PVS může být prováděna ve spolupráci zaměstnanců okresních správ (
52
Registrace na PVS Příklad použití: Registrace zástupce
Registrace organizace Zplnomocnění zástupce
53
Registrace zástupce na PVS
Podmínky k registraci: přiděleny známé údaje pro požadovanou službu
54
Registrace zástupce na PVS
výběr odkazu "zástupci"
55
Registrace zástupce na PVS
Zaregistrování se pomocí uživatelského identifikátoru
56
Registrace zástupce na PVS
Vložení informací hlavního uživatele zástupce
57
Registrace zástupce na PVS
volba služby –> "ČSSZ – Důchodové pojištění"
58
Registrace zástupce na PVS
zadání známých údajů přidělených na okresní správě
59
Registrace zástupce na PVS
získání "identifikačního čísla zástupce" Identifikační číslo zástupce – veřejný údaj, který se předává zákazníkům. Na jeho základě dochází k zplnomocnění zástupce. Předávají se obě části identifikačního čísla.
60
Registrace zástupce na PVS
přidělení portálového uživatelského identifikátoru
61
Účet zástupce na PVS zadání portálového uživatelského identifikátoru zástupce
62
Účet zástupce na PVS účet hlavního uživatele zástupce
63
Výsledek registrace zástupce - rekapitulace
účet hlavního uživatele portálový uživatelský identifikátor heslo veřejný identifikátor zástupce předání zákazníkům navazování vazeb na PVS Použití při každém podání při správě účtu
64
Uživatelé, Asistenti Registrace dalších uživatelů, asistentů
Založení uživatele nebo asistenta na PVS vlastní portálový uživatelský identifikátor a heslo shodný variabilní symbol pro podávání Předání informací o novém uživateli nebo asistentovi okresní správě iniciály + údaje z kvalifikované certifikátu vystavení podpisového klíče
65
Registrace organizace na PVS
Podmínky k registrace: přidělené známé údaje pro požadovanou službu
66
Registrace organizace na PVS
výběr odkazu "Organizace"
67
Registrace organizace na PVS
Zaregistrování se pomocí uživatelského identifikátoru
68
Registrace organizace na PVS
Vložení informací hlavního uživatele organizace
69
Registrace organizace na PVS
volba služby –> "ČSSZ – Důchodové pojištění"
70
Registrace organizace na PVS
zadání známých údajů přidělených na okresní správě
71
Registrace organizace na PVS
přidělení portálového uživatelského identifikátoru
72
Výsledek registrace organizace - rekapitulace
účet hlavního uživatele portálový uživatelský identifikátor heslo použití správa portálového účtu elektronické podání přes PVS
73
Uživatelé, Asistenti Registrace dalších uživatelů, asistentů
Založení uživatele nebo asistenta na PVS vlastní portálový uživatelský identifikátor a heslo shodný variabilní symbol pro podávání Předání informací o novém uživateli nebo asistentovi okresní správě iniciály + údaje z kvalifikované certifikátu vystavení podpisového klíče
74
Zplnomocnění zástupce
Provádí organizace (uživatel) Podmínky k zplnomocnění: účet hlavního uživatele veřejný identifikátor zástupce
75
Účet organizace na PVS zadání portálového uživatelského identifikátoru organizace
76
Účet organizace na PVS předání služby zástupci
77
Účet organizace na PVS vložení veřejného "identifikátoru zástupce"
78
Účet organizace na PVS potvrzení předání služby zadáním portálového identifikátoru hlavního uživatele
79
Účet organizace na PVS zobrazení informací o předané službě
80
Změna variabilního symbolu
Postup na OSSZ Přidělení nového variabilního symbolu Přidělení nových známých údajů Postup organizace Přihlášení k PVS pod účtem hlavního uživatele Přeregistrace služby Odhlášení služby Přihlášení s novými známými údaji
81
Registrace SW firmy Způsob registrace Konference ČSSZ
získání ové adresy známé údaje, podpisový klíč ČSSZ podle pokynů na webových stránkách ČSSZ na principu ové komunikace
82
Testování SW firem Fiktivní variabilní symbol Testovací prostředí
Ostré prostředí
83
Testování SW firem Fiktivní variabilní symbol 99xxxxxxxx
84
Testování SW firem Testovací prostředí
Získání fiktivních známých údajů a registrace (konference, ČSSZ) Registrace na testovacím PVS Zasílání elektronických podání Výsledek zpracování PVS ová zpráva (XML protokol)
85
Testování SW firem – ostrá větev
SW firma zpravidla sama podává Registrace pro ostrou větev na okresní správě i PVS Varianta a) SW firma zašle skutečný RELDP Varianta b) SW firma provede podání pod neregistrovaným uživatelem / asistentem na ČSSZ
86
Testování SW firem – varianta a)
má-li SW firma k dispozici RELDP, který musí předat ČSSZ provedení skutečného elektronického podání
87
Testování SW firem – varianta b)
Vytvoření fiktivního uživatele nebo asistenta na PVS, jehož údaje nejsou předány okresní správě Provedení testovacího podání v ostré větvi Známým údajem skutečný variabilní symbol Datová věta má fiktivní variabilní symbol Podání musí projít přes PVS Systém ČSSZ vrací chybu o neautorizovaném přístupu -> důkaz doručení ostrou větví
88
Portál veřejné správy Tvorba aplikací pro transakční část PVS Robert Hernady Senior Systems Engineer Microsoft s.r.o.
89
Před tím než začneme Ukázky kódu budou ve VB.NET nebo v C#
Přesto platí, že nezáleží na programovacím jazyku a platformě Komunikace s aplikací EP je založena na internetových standardech Příklady XML dokumentů jsou zkráceny. Nelze je přímo použít pro vývoj. Používejte dokumentaci s podrobným popisem XML dokumentů
90
Aplikace pro zasílání dat
Libovolná aplikace Webový formulář jakýkoliv portál na internetu Klientská aplikace Microsoft Excel, 602XML, FormFiler …. Účetní systém atd.
91
Aplikace pro zasílání dat
musí generovat požadavky v HTTP 1.1 POST musí zpracovávat odpovědi taktéž jako HTTP 1.1 musí kódovat veškerou komunikaci podle standardu UTF-8 musí navazovat 128-bitovou SSL komunikaci musí být schopna šifrovat a podepisovat XML data podle standardů
92
Podávání dokumentu Aby uživatel mohl podat dokument prostřednictvím aplikace EP je nutné splnit několik kroků: Uživatel musí být registrován a přihlášen ke službě Portál/aplikace musí získat uživatelovy identifikátory z R&E Portál/aplikace vytvoří GovTalk obálku.. …vloží data a odešle do aplikace EP Portál/aplikace musí pravidelně kontrolovat stav v aplikaci EP
93
Bezpečné podávání dokumentů
1. Sběr dat od uživalele 3. Uživatel podepíše XML dokument Portál nebo aplikace <XML> 2. Příprava XML dokumentu pro podepsání Aplikace EP 4. Aplikace EP zkontroluje GovTalk obálku… … a odešle dokument vlastníkovi služby ČSSZ Systémy …
94
Internet Information Server 5.0
Interní zpracování IVS DIS Server Dokument Internet SQL Server 2000 ISA Server 2000 BizTalk Server 2002 Processing Internet Information Server 5.0 BizTalk Server 2002 Receiver
95
Komunikace s aplikací EP
Komunikace založena na specifikaci schématu GovTalk GovTalk schéma XML struktura, která definuje elementy nutné pro komunikaci s aplikací EP Definovaný komunikační protokol HTTP, XML a předepsané sekvence volání
96
Submission & query protokol
Dále uvedené informace jsou popsány v dokumentu Document Submission Protocol(1.1).doc Je k dispozici na webových stránkách technického administrátora
98
Typy komunikací s jádrem
Synchronní Při podávání získání odpovědi při prvním podání Asynchronní dotazování na stav podání
99
GovTalk obálka XML struktura
Obsahuje informace pro komunikaci s aplikací EP Obsahuje vlastní data, která se předávají úřadu <GovTalkMessage xmlns=” > <EnvelopeVersion/> <Header> <MessageDetails> <Class/> <Qualifier/> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
100
Základní kroky při zpracování
Příjem dokumentu aplikací EP Je zkontrolována GovTalk obálka zda obsahuje povinná data Z obálky jsou vybrány přihlašovací informace pro příslušnou službu Pokud jsou v obálce chyby je klientovi vrácena chybová zpráva Je-li vše OK je klientovi vráceno Correlation ID
101
Základní kroky při zpracování
Dokument je doručen na příslušný DIS s využitím SOAP zabezpečeného protokolu Interní informační systém vygeneruje vhodnou odpověď Jádro uloží odpověď Jádro na požádání zašle odpověď klientovi Jádro smaže záznamy na základě žádosti klienta
102
Typy zpráv 4 zprávy generované klientskou aplikací SUBMISSION_REQUEST
SUBMISSION_POLL, DATA_REQUEST DELETE_REQUEST
103
Typy zpráv 6 zpráv generovaných jádrem SUBMISSION_ACKNOWLEDGEMENT
SUBMISSION_ERROR SUBMISSION_RESPONSE DATA_RESPONSE DELETE_ACKNOWLEDGEMENT DELETE_RESPONSE
104
GovTalk obálka <GovTalkMessage xmlns=” > <EnvelopeVersion/> <Header> <MessageDetails> <Class/> <Qualifier/> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
105
GovTalk namespace GovTalk obálka musí použít základní namespace Body musí obsahovat jeden kořenový element s vlastním namespace a v něm jsou uložena přenášená data Namespace v body musí být odlišné od základního namespace
106
Příklad komunikace klienta
Sekvence příkazů Krok za krokem vytvoření GovTalk obálky Odeslání dokumentu Zjišťování stavu podání
107
Příklad komunikace klienta
<GovTalkMessage xmlns=" <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <Function>submit</Function> <TransactionID/> <AuditID/> <CorrelationID/> <ResponseEndPoint/> <Transformation>XML</Transformation> </MessageDetails> … </GovTalkMessage> <MessageDetails> <Class>MALORG</Class> <Qualifier>poll</Qualifier> <Function>submit</Function> <CorrelationID>XXXX</CorrelationID> </MessageDetails> Aplikace aplikace EP Submission_Request Submission_Poll Delete_Request Submission_Acknowledgement Submission_Response Delete_Acknowledge Delete_Response Krok 1 Krok 3 Krok 5 Krok 7 Krok 9 Krok 2 Krok 4 Krok 6 Krok 8 Krok 10 Odeslání dokumentu a první odpověď CorrelationID Zjišťování stavu podání „Smazání“ transakce po doručení
108
Postup při tvorbě zprávy SUBMISSION_REQUEST
<GovTalkMessage xmlns=” > <EnvelopeVersion/> <Header> <MessageDetails> <Class/> <Qualifier/> <Function/> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
109
Postup při tvorbě zprávy SUBMISSION_REQUEST
<GovTalkMessage xmlns=” > <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class/> <Qualifier/> <Function/> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
110
Postup při tvorbě zprávy SUBMISSION_REQUEST
<GovTalkMessage xmlns=” > <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier/> <Function/> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
111
Postup při tvorbě zprávy SUBMISSION_REQUEST
<GovTalkMessage xmlns=” > <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <Function>submit<Function/> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
112
Postup při tvorbě zprávy SUBMISSION_REQUEST
<GovTalkMessage xmlns=” > <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <Function>submit</Function> <TransactionID/> <AuditID/> <CorrelationID/> <ResponseEndPoint/> <Transformation>XML</Transformation> <GatewayTest>0</GatewayTest> <GatewayTimestamp/> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
113
Postup při tvorbě zprávy SUBMISSION_REQUEST
<GovTalkMessage xmlns=” > <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <Function>submit</Function> <TransactionID/> <AuditID/> <CorrelationID/> <ResponseEndPoint/> <Transformation>XML</Transformation> <GatewayTest>0</GatewayTest> <GatewayTimestamp/> </MessageDetails> <SenderDetails> <IDAuthentication> <SenderID>H425157F3XLC</SenderID> <Authentication> <Method>clear</Method> <Role></Role> <Value>testing123</Value> </Authentication> </IDAuthentication> </SenderDetails> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
114
Postup při tvorbě zprávy SUBMISSION_REQUEST
<GovTalkMessage xmlns=” > <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <TransactionID/> <AuditID/> <CorrelationID/> <ResponseEndPoint/> <Transformation>XML</Transformation> <GatewayTest>0</GatewayTest> <GatewayTimestamp/> </MessageDetails> <SenderDetails> <IDAuthentication> <SenderID>H425157F3XLC</SenderID> <Authentication> <Method>clear</Method> <Role></Role> <Value>testing123</Value> </Authentication> </IDAuthentication> </SenderDetails> </Header> <GovTalkDetails> <Keys> <Key Type="vars"> </Key> </Keys> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> …… </Payload> </Body> </GovTalkMessage>
115
Postup při tvorbě zprávy SUBMISSION_REQUEST
<GovTalkMessage xmlns=” > <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <TransactionID/> <AuditID/> <CorrelationID/> <ResponseEndPoint/> <Transformation>XML</Transformation> <GatewayTest>0</GatewayTest> <GatewayTimestamp/> </MessageDetails> <SenderDetails> <IDAuthentication> <SenderID>H425157F3XLC</SenderID> <Authentication> <Method>clear</Method> <Role></Role> <Value>testing123</Value> </Authentication> </IDAuthentication> </SenderDetails> </Header> <GovTalkDetails> <Keys> <Key Type="vars"> </Key> </Keys> </GovTalkDetails> <Body> <Payload xmlns=”abc:namespace:xyz”> Vlastní struktura přenášených dat </Payload> </Body> </GovTalkMessage>
116
Odeslání dokumentu HTTP 1.1 POST na adresu
nebo
117
Odeslání dokumentu
118
Odpověď po odeslání SUBMISSION_ACKNOWLEDGMENT
<?xml version="1.0"?> <GovTalkMessage xmlns=" <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>acknowledgment</Qualifier> <Function>response</Function> <TransactionID></TransactionID> <CorrelationID>195B6583A561D8B54EC1DB42F </CorrelationID> <ResponseEndPoint PollInterval="10"> <GatewayTimestamp> T09:51:56.257</GatewayTimestamp> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> </Body> </GovTalkMessage>
119
Dotazování na stav podání
Submission_Acknowledgment vrátí důležité údaje: CorrelationID identifikátor podání ResponseEndPoint URL adresa pro dotazování stavu PollInterval čas v sekundách pro opakování dotazu zvolte si algoritmus jak interval prodlužovat až do doby, kdy získáte Submission_Response GatewayTimestamp čas podání – první Submission_Acknowledgment
120
Dotazování na stav podání SUBMISSION_POLL
<?xml version="1.0"?> <GovTalkMessage xmlns=" <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>poll</Qualifier> <Function>submit</Function> <TransactionID></TransactionID> <AuditID></AuditID> <CorrelationID>195B6583A561D8B54EC1DB</CorrelationID> <ResponseEndPoint/> <Transformation>XML</Transformation> <GatewayTimestamp/> </MessageDetails> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> </Body> </GovTalkMessage>
121
Dotazování na stav podání SUBMISSION_RESPONSE
<GovTalkMessage xmlns=" <EnvelopeVersion>1.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>response</Qualifier> <Function>submit</Function> <TransactionID/> <CorrelationID>1DF257B5CD23F4A5B6C7D8E</CorrelationID> <ResponseEndPoint PollInterval=”2”> </ResponseEndPoint> <GatewayTimestamp> T10:20:18.345</GatewayTimestamp> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <DepartmentDocument xmlns=" <Data> ABC </Data> </DepartmentDocument > </Body> </GovTalkMessage>
122
Zasílání velikých dokumentů
Doporučujeme veliké dokumenty rozdělit na několik menších – pokud je to možné Co je to veliký dokument? více jak 4 MB Rizika při zasílání velkých dokumentů Dlouhé zpracování při přenosu Time Out HTTP relace Aplikace EP je přesto schopna zpracovat veliké dokumenty
123
Doplňkové dotazování Po přenosu dat se může vrátit chybový stav
např. Session Time Out Jak zjistit zda byla data přenesena? Přehled podání za určité období DATA_REQUEST
124
Dotazování na stav podání DATA_REQUEST
<GovTalkMessage xmlns=" <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <Function>list</Function> … </MessageDetails> <SenderDetails> <IDAuthentication> <SenderID>995F1Q8BW2</SenderID> <Authentication> <Method>clear</Method> <Value>testing123</Value> </Authentication> </IDAuthentication> </SenderDetails> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> <StartDate>06/15/2004</StartDate> <EndDate>06/16/2004</EndDate> <StartTime>05:02:44</StartTime> <EndTime>12:02:44</EndTime> </Body> </GovTalkMessage>
125
Dotazování na stav podání DATA_RESPONSE
… <MessageDetails> <Class>MALORG</Class> <Qualifier>response</Qualifier> <Function>list</Function> </MessageDetails> <Body> <StatusReport> <SenderID></SenderID> <StartTimeStamp> :02:44</StartTimeStamp> <EndTimeStamp> :02:44</EndTimeStamp> <StatusRecord> <TimeStamp> :08:04</TimeStamp> <CorrelationID>9F448F27A61D7DA558E74B08C </CorrelationID> <Status>SUBMISSION_ACKNOWLEDGE</Status> </StatusRecord> <TimeStamp> :18:18</TimeStamp> <CorrelationID>66C8EE DF1C F5E3FF00</CorrelationID> </StatusReport> </Body>
126
Dokončení cyklu podání
Delete_Request „smaže“ všechny související zprávy svázané s podáním
127
Dokončení cyklu podání DELETE_REQUEST
<GovTalkMessage xmlns=" <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <Function>delete</Function> <CorrelationID>1DF257B5CD23F4A5B6C7D8</CorrelationID> … </MessageDetails> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body/> </GovTalkMessage>
128
Dokončení cyklu podání DELETE_RESPONSE
<GovTalkMessage xmlns=" <EnvelopeVersion>1.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MAFF-IACS-AAPS2001</Class> <Qualifier>response</Qualifier> <Function>delete</Function> <TransactionID/> <CorrelationID>1DF257B5CD23F4A5B6C7D8E9F102932</CorrelationID> <ResponseEndPoint PollInterval=”2”> </ResponseEndPoint> <GatewayTimestamp> T16:32:18.795</GatewayTimestamp> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> </GovTalkDetails> <Body> </Body> </GovTalkMessage>
129
Dokončení cyklu podání
Co se stane když aplikace neprovede Delete_Request? Aplikace Elektronická podání po 60 dnech provede Delete_Request Musíme tedy posílat Delete_Request? Ano. Zlepšíte si komunikaci s pomocí Data_Request.
130
Chybové stavy SUBMISSION_ERROR
<GovTalkMessage xmlns=" <EnvelopeVersion>1.0</EnvelopeVersion> <Header> <MessageDetails> <Class>MALORG</Class> <Qualifier>error</Qualifier> <Function>submit</Function> <TransactionID/> <CorrelationID>1DF257B5CD23F4A5B6C7D8E9F102932</CorrelationID> <ResponseEndPoint PollInterval=”2”> </ResponseEndPoint> <GatewayTimestamp> T10:20:18.345</GatewayTimestamp> </MessageDetails> <SenderDetails/> </Header> <GovTalkDetails> <Keys/> <GovTalkErrors> <Error> <RaisedBy>Gateway</RaisedBy> <Number>1020</Number> <Type>fatal</Type> <Text>Text popisující chybu</Text> <Location></Location> </Error> </GovTalkErrors> </GovTalkDetails> <Body/> </GovTalkMessage>
131
Praktická realizace Od informace o RELDP a PVS na stránkách ČSSZ
132
Praktická realizace
133
Praktická realizace
134
Vývojové prostředí Slouží pro vývojářské firmy pro testování aplikací
Není v režimu 24x7 Před nasazením služby se provádějí testy v tomto prostředí Pro registraci platí stejná pravidla jako pro ostré prostředí Může procházet rekonfiguracemi URL
135
Certifikáty pro SSL Ostré prostředí Vývojové prostředí
Platný certifikát společnosti Verisign skončila platnost kořenového certifikátu Verisign Je nutné nainstalovat nový certifikát Vývojové prostředí Platný certifikát společnosti Omnicom K dispozici na stránkách Siemens Business Services
136
Certifikáty pro SSL II. Musí být k dispozici v kontextu uživatele nebo služby, která navazuje SSL spojení URL adresy pro podávání
137
Tipy a triky I Prázdné elementy GovTalk obálky
Používejte tuto syntaxi Nikoliv tuto <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <Function>submit</Function> <TransactionID/> <AuditID/> <CorrelationID/> </MessageDetails> Velká pravděpodobnost pro chyby v prázdných elementech CHR(13), CHR(10), CHR(32) <MessageDetails> <Class>MALORG</Class> <Qualifier>request</Qualifier> <Function>submit</Function> <TransactionID> </TransactionID> <AuditID></AuditID> <CorrelationID> </CorrelationID> </MessageDetails>
138
Tipy a triky II HTTP Headers
Podání se provádí protokolem HTTP metodou POST HTTP hlavička musí být nastavena na: http.ContentType = "text/xml" Nastavte delší TimeOut např. http.Timeout = 90000
139
Tipy a triky III Chyba dat v elementech
Chybové hlášení Proveďte kontrolu elementu Obvykle obsahuje skryté znaky CHR(13) CHR(10) Neodpovídá předepsané struktuře Parsing Error : Pattern constraint failed. The element: 'element name' has an invalid value according to its data type
140
Tipy a triky IV Rozsah GovTalk obálky
Vkládejte do obálky pouze povinné údaje Pokud vkládáte volitelné elementy dbejte na to, aby obsahovaly správné hodnoty velmi často se nepodaří podat právě proto, že volitelný element má špatnou hodnotu a protože je volitelný nevěnujeme mu pozornost
141
Tipy a triky V Návratové hodnoty HTTP komunikace
Pokud je vše v pořádku vrátí se GovTalk obálka ve formátu XML, ale je nutné počítat s tím, že se vrátí HTML např. error 404 / 12028, v případě, že bude problém se službou v tom případě XML.Load(...) havaruje
142
Další funkce aplikace EP
Webové služby pro správu uživatelských účtů Ověřovací služby pro aplikace třetích stran Authentication & Authorisation web services
143
Ověřovací služba portálu
4. Uživatel podepíše a vrátí XML dokument 1. Uživatel navštíví portál Portál 7. Portál má nyní k dispozici identifikátory pro tohoto uživatele a může je vložit do GovTalk dokumentu v momentě podání 2. Portál odešle žádost o ověření 6. … a vrátí uživatelovy identifikátory, seznam služeb atd. R&E <XML> TxE 3. R&E připraví XML dokument k podpisu 5. R&E ověří podpis, zkontroluje uživatelskou registrace a přihlášení služeb …
144
Shrnutí Základním principem komunikace s transakční části PVS je GovTalk schéma Vše probíhá podle internetových standardů Aplikace pro transakční část lze tvořit v libovolném programovacím jazyce a na libovolné platformě
145
Zasílání dokumentů RELDP přes PVS
Jan Hříbal
146
Elektronická podání Podmínky použití
SW s podporou elektronických podání šifrovací certifikát podpisový klíč ČSSZ kvalifikovaný certifikát Účet na PVS portálový identifikátor uživatele, heslo portálový identifikátor asistenta, heslo Známé údaje variabilní symbol
147
Elektronické podání - struktura
Obálka PVS Název transakce Známé údaje Tělo zprávy Obálka RELDP Vlastní datová věta
148
Obálka PVS <?xml version="1.0"?>
<GovTalkMessage xmlns=" <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>CSSZ_RELDP</Class> <Qualifier>request</Qualifier> <Function>submit</Function> ... </MessageDetails> <SenderDetails> <IDAuthentication> <SenderID>SA29H98CS2HX</SenderID> <Authentication> <Method>clear</Method> <Value>passwd</Value> </Authentication> </IDAuthentication> </SenderDetails> </Header> <GovTalkDetails> <Keys> <Key Type="vars"> </Key> </Keys> </GovTalkDetails> <Body> zpráva pro ČSSZ</Body> </GovTalkMessage>
149
Obálka PVS - zástupce <?xml version="1.0"?>
<GovTalkMessage xmlns=" <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>CSSZ_RELDP</Class> <Qualifier>request</Qualifier> <Function>submit</Function> ..... </MessageDetails> <SenderDetails> <IDAuthentication> <SenderID>KD29H58LSH2X</SenderID> <Authentication> <Method>clear</Method> <Value>passwd</Value> </Authentication> </IDAuthentication> </SenderDetails> </Header> <GovTalkDetails> <Keys> <Key Type="vars"> </Key> </Keys> </GovTalkDetails> <Body>zpráva pro ČSSZ</Body> </GovTalkMessage>
150
Tělo zprávy Struktura: RELDPMessage EvnelopeVersion Header
Signature Vendor Body RELDPMessage - Identifikace dokumentu v rámci ČSSZ (obálka RELDP) EnvelopeVersion - Verze obálky a struktury datové věty určené pro ČSSZ. Nastavte na hodnotu 1.0. Hodnota popisuje použitou strukturu obálky i datové věty RELDP. Header - Hlavička obálky RELDP. - Identifikace způsobu zašifrování dat pro ČSSZ. Nastavte na 1.0 Signature - podpis nezašifrovaného těla dokumentu v elementu RELDPMessage. Podepisuje se vlastní datová věta s RELDP (následující element Body). Podpis musí být ve formátu base64. Vendor - Informace o produktu, který dokument vygeneroval. Hodnoty jsou uvedeny v atributech: productName="název produktu", version="verze produktu" Body - Vlastní podepsaná a následně zašifrovaná data uložená ve formátu base64
151
Tělo zprávy - příklad <RELDPMessage xmlns=" <EnvelopeVersion>1.0</EnvelopeVersion> <Header> <Encryption version="1.0"/> <Signature version="1.0" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64">elektronický podpis</Signature> <Vendor productName="RELDP" version="1.0"/> </Header> <Body xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64">zašifrovaná datová věta</Body> </RELDPMessage>
152
Vlastní datová věta RELDP - Základní identifikace zaměstnavatele (odesilatele), za kterého jsou posílány jednotlivé RELDP. Uváděno pro kontrolní účely. reldp – Vlastní datová věta RELDP odpovídající stejnopisu RELDP. Výskyt 1-n. client – Identifikace pojištěnce name – Jméno pojištěnce adr – Adresa pojištěnce birth - Datum narození pojištěnce items – Údaje o průběhu zaměstnání t1 – Průběh pojištění v jednom roce t2 - Doba účasti na pojištění, po kterou trval výkon vojenské, civilní služby a doba mateřské dovolené. comp- Údaje o zaměstnavateli adr - Adresa zaměstnavatele
153
ELDP
154
Vlastní datová věta <?xml version="1.0" ?>
<RELDP id="89" vs="90" nam="88" cit="94" str="91" num="92" pnu="95"> <reldp yer="1" typ="2" dre="3"> <client bno="8"> <name sur="4" fir="5" tit="6" /> <adr cit="12" str="9" num="10" pos="13" pnu="14" /> <birth dat="7" nam="11" cit="15" /> </client> <items coun="počet t1 a t2" sdex="85" sinc="86" sdar="87"> <t1 row="pořadí řádku t1" cod="16,37,58" fro="17,38,59" to="18,39,60" din="19,40,61" m1="20,41,62" m2="21,42,63" m3="22,43,64" m4="23,44,65" m5="24,45,66" m6="25,46,67" m7="26,47,68" m8="27,48,69" m9="28,49,70" m10="29,50,71" m11="30,51,72" m12="31,52,73" m13="32,53,74" inc="35,56,77" dex="33,54,75" dar="34,55,76" /> .... <t2 row="pořadí řádku t2" cod="79,82" fro="80,83" to="81,84" /> </items> <comp nam="88" id="89" vs="90" cre="96" fro="93"> <adr cit="94" str="91" num="92" pnu="95" /> </comp> </reldp> </RELDP>
155
Vlastní datová věta – logické testy
Doporučené kontroly jsou vystaveny na webových stránkách ČSSZ Obdoba kontrol pro tiskopisy
156
Předávání chybových zpráv
Submission_error ová zpráva z ČSSZ
157
Předávání chybových zpráv
Tělo zprávy "Submission_error" BODY ErrorResponse Application Error RaisedBy Number Text Protocol ErrorResponse - použitý namespace: Application Error RaisedBy - název systémové komponenty, kde došlo k chybě Number - číslo chyby Text - Stručný popis chyby Protocol - Přesný protokol s vyhodnocením chyby. Obsahuje atributy: @type - Typ protokolu. Nastaveno na RELDP @version – Verze protokolu. Nastaveno na 1.0
158
Předávání chybových zpráv
Tělo zprávy "Submission_error", struktura protokolu error head rec error základní údaje o chybě zdroj chyby. Pro transakci ročních evidenčních listů: RELDP celkový výsledek protokolu OK|WARNING|EOF OK – všechny reld jsou v pořádku zpracovány WARNING – chyba při zpracování RELDP. (Př. alespoň jedno reldp obsahuje chybu, nepodařilo se dešifrovat, neutorizovaný přístup apod.) EOF – nejsou data ke zpracování číslo chyby popis chyby celkový počet zpacovaných reldp (zpracovaných údajů o zaměstnancích) počet reldp, jejichž zpracování skončilo systémovou chybou. Klientovi se tyto údaje nepředávají. Vyplněno null nebo neuvedení atributu počet reldp, jejichž zpracování skončilo logickou chybou způsobenou klientem. Doplňující informace. Např. do kdy má dojít k opravnému podání. head Hlavička protokolu, která uvádí názvy sloupců, jak mahou být zobrazeny v sestavě. Transakce RELDP -> Rodné číslo, Výsledek zpracování, Chyba rec každý element odpovídá jedné reldp neboli jednomu zaměstnanci, za kterého bylo provedeno podání např OK Chybný vyměřovací základ
159
Tisk ročních ELDP Tisk stejnopisu ELDP zaměstnanec organizace
archiv v organizaci
160
Jiné možnosti předávání ELDP
Paměťové médium typ CD disketa 3,5" 1,44 MB shodná struktura datové věty elektronický podpis Předepsaný tiskopis
161
Implementace podpory systému EP
Jiří Holaň Neurodot s.r.o.
162
Šifrování a podepisování
Microsoft Windows CryptoAPI ( CAPICOM ( .NET Framework … v budoucnu Unixové systémy PGPi ( GNUPG (
163
Komunikační principy Podepsání (MD2, MD4, MD5, SHA1)
Šifrování (AES, DES, 3DES, RC2, RC4) Odeslání HTTPS protokolem .NET Microsoft XMLDOM OpenSSL Přijmutí odpovědi (synchronní) => CorrelationID DataRequest, Poll – dotazování na stavy zpráv Mazání zpráv z pracovních front
164
Předpoklady pro komunikaci
Připojení k internetu (port 443) Platný podpisový klíč nebo kvalifikovaný certifikát Platný certifikát pro šifrování Znalost struktury GovTalk obálky Přihlašovací údaje z registrace na PVS Funkční aplikace
165
GovTalk obálka <GovTalkMessage xmlns=" <EnvelopeVersion>2.0</EnvelopeVersion> <Header> <MessageDetails> <Class>CSSZ_RELDP</Class> <Qualifier>request</Qualifier> ……………… </SenderDetails> </Header> <GovTalkDetails> <Keys> <Key Type="vars"> </Key> </Keys> </GovTalkDetails> <Body /> </GovTalkMessage>
166
Podepisování RELDP <RELDPMessage xmlns=" <EnvelopeVersion>1.0</EnvelopeVersion> <Header> <Encryption version="1.0"/> <Signature version="1.0" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64">MIIDigYJKoZIhvcNAQcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3c….</Signature> <Vendor productName="RELDP" version="1.0"/> </Header> <Body xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64"> MIIIgAYJKoZIhvcNAQcDoIIIcTCCCG0CAQAxgcYwgcMCAQAwbTBfMQswCQYDVQQGEwJDWjEPMA0GA1UEBxMGUHJhZ3VlMQ0wCwYDVQQKEwRNSUNSMQ0wCwYDVQQLEwRN… </Body> </RELDPMessage>
167
Podepisování RELDP CryptoAPI (C++) // otevření úložiště certifikátů
hSystemStoreHandle = CertOpenStore(CERT_STORE_PROV_SYSTEM, 0, NULL, CERT_SYSTEM_STORE_CURRENT_USER, CERTIFICATE_STORE_NAME); // nalezení podpisového certifikátu pSignerCert = CertFindCertificateInStore(hSystemStoreHandle, PKCS_7_ASN_ENCODING | X509_ASN_ENCODING, 0, CERT_FIND_SUBJECT_STR, CERT_SUBJECT_NAME, NULL); // inicializace parametrické struktury memset(&SignMessagePara, 0, sizeof(CRYPT_SIGN_MESSAGE_PARA)); SignMessagePara.cbSize = sizeof(CRYPT_SIGN_MESSAGE_PARA); SignMessagePara.HashAlgorithm.pszObjId = szOID_RSA_MD2; SignMessagePara.pSigningCert = pSignerCert; SignMessagePara.dwMsgEncodingType = PKCS_7_ASN_ENCODING | X509_ASN_ENCODING; SignMessagePara.cMsgCert = 1; SignMessagePara.rgpMsgCert = &pSignerCert; // podepsání zprávy CryptSignMessage(&SignMessagePara,FALSE, 1, rgpbToBeSigned, rgcbToBeSigned, NULL, &cbEncodedBlob)
168
Podepisování RELDP CAPICOM (VB6) // otevření úložiště certifikátů
Dim myStore As New CAPICOM.Store Dim myCert As CAPICOM.Certificate Dim signature As String Set signData = New CAPICOM.SignedData Set signer = New CAPICOM.signer // otevření úložiště certifikátů myStore.Open // nalezení podpisového certifikátu For Each myCert In myStore.Certificates …. Next Set signer.Certificate = myCert signData.Content = xRELPDMsg.xml // podepsání zprávy signature = signData.Sign(signer, True)
169
Šifrování RELDP <RELDPMessage xmlns=" <EnvelopeVersion>1.0</EnvelopeVersion> <Header> <Encryption version="1.0"/> <Signature version="1.0" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64">MIIDigYJKoZIhvcNAQcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3QcCoIIDezCCA3c…. </Signature> <Vendor productName="RELDP" version="1.0"/> </Header> <Body xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="bin.base64"> MIIIgAYJKoZIhvcNAQcDoIIIcTCCCG0CAQAxgcYwgcMCAQAwbTBfMQswCQYDVQQGEwJDWjEPMA0GA1UEBxMGUHJhZ3VlMQ0wCwYDVQQKEwRNSUNSMQ0wCwYDVQQLEwRN… </Body> </RELDPMessage>
170
Šifrování RELDP CryptoAPI (C++)
// otevření úložiště certifikátů hSystemStoreHandle = CertOpenStore(CERT_STORE_PROV_SYSTEM, 0, NULL, CERT_SYSTEM_STORE_CURRENT_USER, CERTIFICATE_STORE_NAME); // nalezení šifrovacího certifikátu pCertificate = CertFindCertificateInStore(hSystemStoreHandle, PKCS_7_ASN_ENCODING | X509_ASN_ENCODING, 0, CERT_FIND_SUBJECT_STR, CERT_SUBJECT_NAME, NULL); ZeroMemory(&EncryptAlgorithm, sizeof(CRYPT_ALGORITHM_IDENTIFIER)); EncryptAlgorithm.pszObjId = szOID_RSA_RC4; ZeroMemory(&EncryptParams, sizeof(CRYPT_ENCRYPT_MESSAGE_PARA)); EncryptParams.cbSize = sizeof(CRYPT_ENCRYPT_MESSAGE_PARA); EncryptParams.dwMsgEncodingType = X509_ASN_ENCODING | PKCS_7_ASN_ENCODING; EncryptParams.hCryptProv = hCryptProv; EncryptParams.ContentEncryptionAlgorithm = EncryptAlgorithm; // podepsání zprávy CryptEncryptMessage(&EncryptParams, 1, (const CERT_CONTEXT**) &pCertificate, dataStream, dataLength, *encData, &blobSize);
171
Šifrování RELDP CAPICOM (VB6)
Set cryptCert = SelectEncryptingCertificate() Set encData = New CAPICOM.EnvelopedData encData.Algorithm.KeyLength = CAPICOM. CAPICOM_ENCRYPTION_KEY_LENGTH. CAPICOM_ENCRYPTION_KEY_LENGTH_MAXIMUM encData.Algorithm.Name = CAPICOM. CAPICOM_ENCRYPTION_ALGORITHM. CAPICOM_ENCRYPTION_ALGORITHM_3DES encData.Content = xRELPDMsg.xml encData.Recipients.Add cryptCert encryption = encData.Encrypt()
172
Vkládání do obálky Microsoft XML Parser (Implementace .NET Framework)
// načtení tabulky jmenných prostorů xNtMan = new XmlNamespaceManager(xToGG.NameTable); xNtMan.AddNamespace("gtm", " xNtMan.AddNamespace("mgm", " // získání uzlu Signature xSignature = xFromGG.SelectSingleNode("/gtm:GovTalkMessage/gtm:Body/mgm:RELDPMessage/mgm:Header/mgm:Signature", xNtMan); // získání uzlu Body xBody = xFromGG.SelectSingleNode("/gtm:GovTalkMessage/gtm:Body/mgm:RELDPMessage/mgm:Body", xNtMan);
173
Vkládání do obálky Microsoft XML Parser (Implementace XMLDOM)
// nastavení tabulky jmenných prostorů xFromGG.setProperty "SelectionNamespaces", "xmlns:gtm=‘ xmlns:mgm=‘ // získání uzlu Signature xSignature = xFromGG.SelectSingleNode("/gtm:GovTalkMessage/gtm:Body/mgm:RELDPMessage/mgm:Header/mgm:Signature") // získání uzlu Body xBody = xFromGG.SelectSingleNode("/gtm:GovTalkMessage/gtm:Body/mgm:RELDPMessage/mgm:Body")
174
Komunikační principy Zpracování podání na ČSSZ
175
Struktura odpovědí z DIS serveru
zpráva typu SUBMISSION_ERROR <Body> <ErrorResponse xmlns=" <Application> <Error> <RaisedBy>název komponenty</RaisedBy> <Number>číslo chyby</Number> <Text>popis chyby</Text> </Error> [<Protocol type="RELDP" version="1.0"> <error typ="RELDP" result="OK|WARNING|EOF“> </error> </Protocol>] </Application> </ErrorResponse> </Body>
176
Portál veřejné správy Další rozvoj aplikace Elektronická podání Robert Hernady Senior Systems Engineer Microsoft s.r.o. Mladá Boleslav
177
Příprava dalších služeb ČSSZ Přehled o vyměřovacích základech a pojistném malé organizace
Služba určena pro malé organizace do 25 zaměstnanců Služba je v pilotním provozu Přechod do ostrého provozu ve 2. polovině letošního roku Zatím je k dispozici aplikace napsaná v Microsoft Excelu Budou zveřejněny specifikace stejně jako u RELDP.
182
Příprava dalších služeb ČSSZ Přihlášky a odhlášky zaměstnanců organizací
Služba určena pro všechny organizace Přihlašování a odhlašování zaměstnanců při nástupu nebo opuštění zaměstnání Spouštění služby začne v 1. polovině roku 2005 Specifikace budou uvedeny na stránkách ČSSZ
183
Služby Ministerstva financí
Zahájeno jednání o připojení daňové správy na aplikaci elektronická podání V současné době již existují specifikace datových vět pro některé typy daňových přiznání DPH Silniční daň Daň z nemovitostí Zatím je možné podávat mimo PVS
184
Ostatní aktivity Příprava připojení
Ministerstva práce a sociálních věcí SSP Krajského úřadu Středočeského kraje Odvolací řízení
185
Přihlašování certifikátem
Další způsob přihlašování k PVS Místo kombinace uživatelský identifikátor/heslo Uživatel používá certifikát 2x pro přihlášení pro podepisování datových vět
186
Shrnutí RELDP jsou zásadní službou z pohledu ČSSZ a transakční částí PVS Další rozvoj transakční části umožní zjednodušit elektronickou komunikaci s veřejnou správou
187
Tvorba aplikací pro transakční část Portálu veřejné správy
Děkujeme za pozornost
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.