Lucia Melotti 1/14 Bologna, 7 luglio 2004 Aspetti di sicurezza nello scambio di messaggi XML tra un partner ebXML ed un Web Service di Lucia Melotti Relatore: Correlatori: Prof. Fabio Vitali Ing. Piero De Sabbata Dott. Nicola Gessa
Introduzione Lo scopo del mio lavoro di tesi è stato creare una applicazione Client - Web Service in grado di far comunicare in maniera sicura un client ebXML con un Web Service. La sicurezza della comunicazione è data dall’applicazione della firma digitale e della crittografia ai messaggi scambiati. Lucia Melotti 2/14 Bologna, 7 luglio 2004
E’ un progetto che definisce un modello comune di scambio di informazioni di business tra aziende della filiera del Tessile/Abbigliamento. Offre alle imprese di questo settore sia un linguaggio comune basato su XML per la descrizione dei dati di business sia prototipi software che implementano i meccanismi di scambio dei dati. Utilizza XML come linguaggio comune per permettere alle aziende che utilizzano sistemi informativi non interoperabili di scambiarsi dati. Lucia Melotti 3/14 Bologna, 7 luglio 2004 MODA-ML (Middleware tOols and Documents to enhAnce the textile/clothing supply chain through XML)
Tecnologie Lucia Melotti 4/14 Bologna, 7 luglio 2004 SOAP: protocollo per lo scambio di informazioni in un ambiente distribuito o decentralizzato che utilizza HTTP. Avvalendosi di XML e HTTP garantisce una comunicazione semplice e leggera. ebXML: standard OASIS e UN/CEFACT basato su XML che definisce un modello per lo scambio di messaggi di e-business. Web Service: E’ un’interfaccia che descrive e fornisce servizi via rete, permettendo l’utilizzo di applicazioni distribuite attraverso uno scambio di messaggi basati su SOAP. XML Signature: standard W3C che consente di apporre firme digitali definendo una sintassi per la loro rappresentazione. XML Encryption: standard W3C che fornisce un metodo per cifrare/decifrare dati ed una sintassi per rappresentare il contenuto cifrato.
Introduzione al mio contributo Lucia Melotti 5/14 Bologna, 7 luglio 2004 Comunicazione e sicurezza in MODA-ML Ieri Scambio di messaggi tramite l’MSH: POSTA ELETTRONICA (SMTP) Sicurezza garantita da: FIRMA DIGITALE CRITTOGRAFIA Oggi Scambio di messaggi tramite: POSTA ELETTRONICA (SMTP) Sicurezza garantita da: FIRMA DIGITALE E CRITTOGRAFIA Scambio di messaggi tramite: WEB SERVICE (HTTP) Sicurezza garantita da: FIRMA DIGITALE E CRITTOGRAFIA
ebXML vs Web Service Security La comunicazione tra un Client MODA-ML ed un Web Service è ostacolata dall’incompatibilità del formato dei messaggi: Messaggi MODA-ML ebXML Message Service (std. OASIS/ISO 15000) Messaggi Web Service Web Service (W3C) + Web Service Security (std.OASIS) + Web Service Reliability (Draft) Necessità di un confronto tra le due specifiche per verificare: La possibilità di trasformare un messaggio ebXML in uno Web Service senza perdere informazioni La possibilità di applicare ai messaggi Web Service lo stesso grado di sicurezza presente nei messaggi MODA-ML (ebXML). Lucia Melotti 6/14 Bologna, 7 luglio 2004
Struttura del messaggio Web Service Lucia Melotti 7/14 Bologna, 7 luglio 2004 Il confronto tra le specifiche ha evidenziato la possibilità di trasformare i messaggi in diversi modi. Tra quelli possibili ho scelto quello più vantaggioso. Del messaggio ebXML viene mantenuto solo il payload che viene inserito nel boby come parametro. La nuova busta Web Service viene creata con le informazioni della busta ebXML. MODA-ML Busta ebXML Payload Web Service Busta WS Body Payload
Lucia Melotti 8/14 Bologna, 7 luglio 2004 MODA-WAS ( MODA -ML W eb Service A pplication S ecurity) Il contributo che ho dato al progetto MODA-ML, MODA-WAS, è costituito da tre parti: Un’applicazione dimostrativa stand-alone in grado di fungere da Client in una comunicazione con un Web Service. Un Web Service molto semplice che riceve richieste ed invia risposte compatibili con i file di documento MODA-ML. Una libreria disponibile sia al Client che al Web Service che permette di scambiare messaggi in maniera sicura. Azienda A ASPAzienda B ebXML WS
Lucia Melotti 9/14 Bologna, 7 luglio 2004 WS CLIENTWEB SERVICE WS Risposta Funzionamento di MODA-WAS ebXML Esempio di scambio sicuro di messaggi tra un Client MODA-ML ed un Web Service
Lucia Melotti 10/14 Bologna, 7 luglio 2004 Sicurezza e affidabilità Lo scambio di messaggi tra un Client Moda-ML ed un Web Service è reso sicuro dall’applicazione di firma digitale e crittografia, che garantiscono: Autenticazione Integrità Riservatezza Per rendere ancora più sicuro questo canale di comunicazione ho implementato anche due aspetti di affidabilità presenti in ebXML: Richiesta di acknowledgment Non ripudio
Interfaccia Lucia Melotti 11/14 Bologna, 7 luglio 2004
Valutazioni Vantaggi tecnici apportati da MODA-WAS: Offre la possibilità di far comunicare in maniera sicura due partner commerciali che utilizzano tecnologie differenti. MODA-WAS essendo un intermediario che opera da traduttore, consente ad ogni partner di continuare ad utilizzare esclusivamente la tecnologia che già conosce. Lo scambio di messaggi tramite Web Service permette a MODA-ML la comunicazione sincrona, cosa che non era possibile ottenere mediante l’utilizzo della posta elettronica. Il nuovo canale di comunicazione non è sostitutivo, ma è parallelo a quello basato sul protocollo SMTP fino ad ora in uso. Lucia Melotti 12/14 Bologna, 7 luglio 2004
Conclusioni Lucia Melotti 13/14 Bologna, 7 luglio 2004 MODA-WAS permette di passare da ebXML a Web Service senza perdere informazioni o diminuire il grado di sicurezza. Il nuovo canale di comunicazione, che ha come destinatari i Web Service, porta MODA-ML ad essere più interoperabile e aumenta notevolmente il numero dei suoi potenziali utilizzatori. La possibilità di veicolare i messaggi tramite un intermediario permette di comunicare con aziende che adottano i Web Service come interfaccia di comunicazione e di interagire con centri di servizi o con portali Web Service. Tutto questo facilita la creazione di reti interaziendali per il B2B che integrano tra loro sistemi completamente indipendenti.
Sviluppi futuri Estensione dell’applicazione MODA-WAS in modo tale che sia in grado di prendere in input anche messaggi ebXML già firmati e cifrati. Possibilità per gli utenti MODA-ML di ricevere messaggi di richiesta dai Web Service. Questa modifica renderà completamente bidirezionale la comunicazione tra i client MODA-ML ed i Web Service. Lucia Melotti 14/14 Bologna, 7 luglio 2004
Struttura del messaggio Web Service L’applicazione prende il messaggio così com’è e lo inserisce tutto in un messaggio di tipo Web Service, più precisamente viene inserito nel body come parametro, sotto forma di stringa. Lucia Melotti 15/14 Bologna, 7 luglio 2004 Web ServiceMODA-ML Busta ebXML Payload Busta WS Body MODA- ML Web Service Busta WS MODA-ML Busta ebXML Payload MODA-ML intero In questo caso il messaggio ebXML viene aggiunto al messaggio Web Service come attachment, cioè come parte MIME e quindi esternamente alla busta. Web Service Busta WS Body Payload MODA-ML Busta ebXML Payload Del messaggio ebXML viene mantenuto solo il payload che viene inserito nel boby come parametro. Viene creata una nuova busta Web Service con le informazioni della busta ebXML.