LeonciniJBoss ESB
Transcript
LeonciniJBoss ESB
JBoss ESB Un caso d'uso italiano: La Porta di Dominio per la Cooperazione Applicativa Andrea Leoncini – JBoss Stefano Linguerri - Pro-netics [email protected] – JBoss [email protected] - Pro-netics Agenda ✔ JBoss ESB le SOA e la Porta di Dominio ✔ Le specifiche CNIPA per la Porta di Dominio ✔ Focus sulla Busta di eGov [email protected] – JBoss [email protected] - Pro-netics SOA – Scegliamo una definizione Service Oriented Architecture (SOA) is an architectural style for implementing business processes as a set of loosely-coupled services. Servizi Macro funzioni Basso accoppiamento Collaborano tramite messaggi Messaggi Perche' non c'e' bisogno che entrambi i sistemi siano attivi Perche' i messaggi si possono trasformare Perche' si puo' ottenere un throughput relativamente maggiore Perche' si puo' garantire il delivery Enterprise Service Bus [email protected] – JBoss [email protected] - Pro-netics JBoss ESB ✔ Message delivery ✔ JMS (JBossMQ, JBoss Messaging, ActiveMQ, MQSeries, Oracle AQ) ✔ ✔ ✔ Transformation ✔ Smooks, XSLT, Java, Groovy, StringTemplate Registry ✔ JAX-R (Scout) ✔ ✔ ✔ Recipient List/Static routing Orchestration ✔ Business Process Management (jPDL) ✔ ✔ UDDI (jUDDI) Routing ✔ Content-based routing ✔ ✔ FTP, SOAP, HTTP, email, database, shared file system Web Services Orchestration (WS-BPEL) Web services Rules services [email protected] – JBoss [email protected] - Pro-netics La Porta di Dominio ✔ Ci sono casi in cui, nella Pubblica Amministrazione, alcuni sistemi con cui vengono gestite le istruttorie di alcune pratiche hanno necessita' di interagire con i sistemi di altre Aziende o Istituti pubblici. ASL YJK ASys Ist. XYZ SysB [email protected] – JBoss [email protected] - Pro-netics La Porta di Dominio ✔ ✔ Tuttavia questi sistemi possono essere di varia natura e si pone il problema di far interagire i sistemi secondo un protocollo comune Le Aziende o Istituti della Pubblica Amministrazione che decidono di integrare i sistemi possono sottoscrivere un accordo di servizio secondo le specifiche CNIPA per la Cooperazione Applicativa. ASL YJK ASys Ist. XYZ Diff. Sistemi e protocolli SysB [email protected] – JBoss [email protected] - Pro-netics La Porta di Dominio PdD Inbusta messaggio ASL YJK msg ASys PdD Egov over HTTP/s sbusta messaggio Ist. XYZ msg SysB [email protected] – JBoss [email protected] - Pro-netics La Porta di Dominio PdD PdD Egov over HTTP/s Inbusta messaggio ASL YJK sbusta messaggio Ist. XYZ msg msg msg msg CSys ESys msg msg ASys DSys FSys BSys msg SysB [email protected] – JBoss [email protected] - Pro-netics PdD, SOA e JBoss ESB PdD Receiver – http/s Esterno: Infrastruttura Pubblica Altri Enti Sender – http/s JBoss ESB msg ESB ESB Service Service ESB Service ESB Service ESB Service msg msg ESB Service ESB Service ESB Service Sistemi Legacy Web Apps ERP Mail WS/Soap [email protected] – JBoss [email protected] - Pro-netics Busta egov Il trasporto delle informazioni applicative Le specifiche della busta di e-gov [email protected] – JBoss [email protected] - Pro-netics Busta di egov I messaggi scambiati tra Enti e PA sono racchiusi in una mesaggio e-Gov Le specifiche riguardano esclusivamente la definizione degli elementi di carattere infrastrutturale. Gli enti o le PA in gioco nello scambio sono totalemente autonome nella definizione del contenuto. [email protected] – JBoss [email protected] - Pro-netics Busta di egov: pdd Il messaggio contiene i dati necessari alle Porte di Dominio per le funzioni di gestione del messaggio: Affidabilità Sicurezza Tracciamento Erogazione servizi ecc. [email protected] – JBoss [email protected] - Pro-netics Busta di egov: pdd Sicurezza nelle interazioni tra le Porte di Dominio: Identificazione Autenticazione Autorizzazione Confidenzialità Non ripudio Indirizzamento delle richieste Logging ed auditing delle interazioni Affidabilità Trasparenza temporale [email protected] – JBoss [email protected] - Pro-netics Busta di egov: firma Tutti i meccanismi di gestione della sicurezza devono essere implementati in accordo alle raccomandazioni WSI Basic Security Profile la firma garantisce la fonte di provenienza presente nel messaggio Il messaggio mantiene il suo valore anche quando attraversa più server intermedi o nelle trasmissioni multiple. [email protected] – JBoss [email protected] - Pro-netics Busta egov: struttura La busta di egov è costituita dall'uso della specifica SOAP 1.1 con estensioni Il messaggio è rappresentato da una struttura SOAP composta da due parti. Header Body o Corpo Attachment opzionali [email protected] – JBoss [email protected] - Pro-netics Busta di egov: struttura Nell'Header devono essere contenuti i set di informazioni minime della specifica egov. è prevista la possibilità di inserire una o più firme digitali (una per ogni elemento firmato) Nel Body ci sono i riferimenti agli altri blocchi dati o i dati applicativi inclusi. [email protected] – JBoss [email protected] - Pro-netics Busta egov: schema SOAP:Envelope SOAP:Envelope SOAP:Header SOAP:Header Intestazione XML egov Intestazione XML egov WSSE security WSSE security SOAP:Body Contenuto applicativo XML SOAP:Body Descrizione XML Contenuto applicativo in attach [email protected] – JBoss [email protected] - Pro-netics Busta egov: ProfiloCollaborazione L'elemento ProfiloCollaborazione definisce la modalità di comunicazione per la richiesta del servizio: EGOV_IT_MessaggioSingolo: (OneWay) richiesta di servizio senza attendere alcuna risposta. EGOV_IT_ServizioSincrono: il chiamante invia la richiesta e rimane in attesa della risposta. EGOV_IT_ServizioAsincronoSimmetrico: il chiamante invia la richiesta, la risposta può essere inviata in un tempo successivo dal pdd che espleta il servizio. EGOV_IT_ServizioAsincronoAsimmetrico: richiesto il servizio, in un tempo successivo il richiedente richiede lo stato di esecuzione della propria richiesta alla pdd erogante (polling). [email protected] – JBoss [email protected] - Pro-netics ServizioSincrono Richiesta e-gov Risposta e-gov Porta Di Dominio [email protected] – JBoss [email protected] - Pro-netics ServizioAsincronoSimmetrico Richiesta e-gov Porta Di Dominio Destinataria Porta Di Dominio Mittente Servizio Ricezione Risposte Risposta e-gov Elaborazione asincrona [email protected] – JBoss [email protected] - Pro-netics ServizioAsincronoAsimmetrico Richiesta e-gov Porta Di Dominio Destinataria Richiesta stato e-gov Porta Di Dominio Mittente Risposta e-gov Elaborazione asincrona [email protected] – JBoss [email protected] - Pro-netics MessaggioSingolo Porta Di Dominio Richiesta e-gov HTTP 200 ok Modalità one-way [email protected] – JBoss [email protected] - Pro-netics JBoss ESB – Un caso d'uso italiano La Porta di Dominio per la Cooperazione Applicativa GRAZIE! [email protected] – JBoss [email protected] - Pro-netics