UNIVERSITÀ DEGLI STUDI DI CAMERINO

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "UNIVERSITÀ DEGLI STUDI DI CAMERINO"

Transcript

1 UNIVERSITÀ DEGLI STUDI DI CAMERINO FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA DIPARTIMENTO DI MATEMATICA E INFORMATICA MECCANISMI AFFIDABILI ED OMOGENEI PER L'INTEROPERABILITÀ TRA WEB SERVICE SU PIATTAFORME ED APPLICAZIONI DIFFERENTI LAUREANDO: Ginobili Stefano RELATORE: Ing. Polzonetti Alberto CORRELATORE: Dott. Tossici Amedeo Anno Accademico

2

3 INDICE GENERALE Introduzione... 6 CAPITOLO 1 INTRODUZIONE AI WEB SERVICE Verso A2A Definizione di web service Prima dei web service CORBA/IIOP EDI DCOM Il nuovo sistema: i web service I ruoli Service requestor Service provider Service broker Perché i web service? Coupling e Decoupling Definizione con metadati Sicurezza CAPITOLO 2 MECCANISMI AFFIDABILI ED OMOGENEI XML Le origini Gli obiettivi La sintassi I namespace Validazione di documenti XML DTD (Document Type Definition) XSD (Xml Schema Definition) SOAP Storia Da XML-RPC a SOAP Architettura WSDL UDDI Protocollo UDDI Utilizzo Informazioni contenute Operare con UDDI Inquiry API Publishing API Replication API DISCO

4 CAPITOLO 3 SIMPLE OBJECT ACCESS PROTOCOL Costruzione di messaggi SOAP Elemento SOAP Envelope Attributo encodingstyle Elemento SOAP Header Attributo role Attributo mustunderstand Attributo relay Elemento SOAP Body Elemento SOAP Fault Elemento Upgrade Estensibilità di SOAP SOAP Message Exchange Pattern Binding HTTP HTTP GET HTTP POST Compatibilità con l architettura web Binding SMTP CAPITOLO 4 WEB SERVICE DESCRIPTION LANGUAGE Elemento definitions Elemento types Elemento message Elemento part Elemento interface Elemento operation (figlio di wsdl:interface) Tipi di operazioni Elemento feature Elemento property Elemento binding Elemento operation (figlio di wsdl:binding) Elemento service Elemento endpoint Binding SOAP Elemento binding (figlio di wsdl:binding) Elemento module (figlio di wsdl:binding) Elemento propertyconstraint (figlio di soap:module) Elemento operation (figlio di wsdl:operation) Elemento body (figlio di wsdl:input o wsdl:output) Elemento header (figlio di wsdl:input o wsdl:output) Elemento address (figlio di wsdl:endpoint) Elementi headerfault e fault Binding HTTP Elemento binding (figlio di wsdl:binding) Elemento operation (figlio di wsdl:operation) Elemento address (figlio di wsdl:endpoint)

5 CAPITOLO 5 LA SICUREZZA NELLA COMUNICAZIONE SSL Funzionamento L handshake TLS Crittografia a chiave privata e pubblica Firme digitali XML-DSIG e XML encrypted CAPITOLO 6 IMPLEMENTARE I WEB SERVICE Microsoft.NET: installazione IIS Microsoft.NET Framework Microsoft.NET: aggiungere i servizi Servizi non compilati Aspetti di sicurezza in.net Authentication Impersonation e delegation IIS SSL Java Web Service (Windows) Preparazione della piattaforma Java Web Service (Linux) JSSE CAPITOLO 7 UTILIZZARE I WEB SERVICE Il server Il client CAPITOLO 8 ETHEATRE, UN APPLICATIVO CON I WEB SERVICE Perché Web Service? Ambiente di sviluppo Moduli Sicurezza Sviluppi futuri

6 INDICE DELLE FIGURE Figura 1.1 Architettura CORBA/IIOP...14 Figura 1.2 Architettura DCOM...18 Figura 1.3 Ruoli nei web service...20 Figura 1.4 Schermata di protezione tramite servizi web...23 Figura 2.1 Struttura di un documento XML...28 Figura 2.2 Documento XML well-formed (MSIE 6.0)...29 Figura 2.3 Documento XML non well-formed (MSIE 6.0)...29 Figura 2.4 XML validato (XMLSPY Enterprise 2004)...35 Figura 2.5 XML non validato (XMLSPY Enterprise 2004)...36 Figura 2.6 XML non valido visualizzato in MSIE Figura 2.7 XSD built-in data types...38 Figura 2.8 Struttura di SOAP...43 Figura 2.9 Posizionamento del protocollo UDDI...45 Figura 2.10 Mondo UDDI...46 Figura 2.11 Discovery protocol...51 Figura 3.1 Struttura di un messaggio SOAP...54 Figura 3.2 Struttura di un SOAP Header...56 Figura 3.3 Trasmissione di un messaggio SOAP tramite proxy...59 Figura 3.4 Cattura di pacchetti HTTP/SOAP (Ethereal)...70 Figura 3.5 TCP stream della comunicazione SOAP (richiesta/risposta)...71 Figura 4.1 Operazione one-way...82 Figura 4.2 Operazione request/response...83 Figura 4.3 Operazione notification...83 Figura 4.4 Operazione solicit/response...84 Figura 4.5 Rappresentazione di un documento WSDL (XMLSPY Enterpise 2004) Figura 4.6 Rappresentazione di un documento WSDL (Microsoft VS.NET 2003) Figura 5.1 Inserimento di SSL nell'architettura SOAP Figura 5.2 SSL attivo in una pagina web (MSIE 6.0) Figura 5.3 Handshake SSL Figura 5.4 XML Digital Signature Figura 6.1 Installazione componente IIS (Windows XP Professional) Figura 6.2 IIS V5.1 snap-in Figura 6.3 Installazione di Microsoft.NET Framework Figura 6.4 Mapping delle estensioni di IIS Figura 6.5 Architettura ASP.NET Figura 6.6 Finestra dell'installer del servizio MathService Figura 6.7 Creazione dell'applicazione in IIS Figura 6.8 Presentazione del servizio web MathService (MSIE 6.0) Figura 6.9 Procedura di accesso ad un servizio ASP.NET Figura 6.10 Impostazioni SSL per MathService Figura 6.11 Richiesta di connessione sicura Figura 6.12 Logo dell installazione di Java 2 SDK Figura 6.13 Servizio ApacheTomcat Figura 6.14 Server Tomcat avviato Figura 6.15 AXIS validation page Figura 6.16 Servizio web ClassServizioJava visualizzato in MSIE Figura 6.17 Applet SOAP monitor di AXIS Figura 6.18 Installazione j2sdk per Linux Figura 7.1 Network per test interoperabilità

7 Figura 7.2 Comando CHOWN per i diritti di accesso Figura 7.3 Modifiche a /etc/profile Figura 7.4 File server.xml modificato Figura 7.5 Creazione della coppia di chiavi Figura 7.6 Certificato creato Figura 7.7 Avvio del server Tomcat Figura 7.8 Aggiungi riferimento web Figura 7.9 Riferimenti del progetto Figura 7.10 Avviso di protezione Figura 7.11 Codice sorgente del client Figura 7.12 WebService Client Figura 7.13 Ethereal sniffing (SSL) Figura 7.14 Ethereal TCP streaming (SSL) Figura 7.15 Ethereal sniffing Figura 7.16 Ethereal TCP streaming Figura 8.1 Menu dell'applicazione etheatre Figura 8.2 Architettura etheatre Figura 8.3 Maschera impostazioni Figura 8.4 Emissione biglietti Figura 8.5 Smart card test SIAE Figura 8.6 Gestione Figura 8.7 Schema di funzionamento di etheatre client Figura 8.8 Servizio etheatre Figura 8.9 etheatre WebService Admin Figura 8.10 Informazioni memorizzate nel registro di sistema Figura 8.11 Gestione della protezione di SQL Server Figura 8.12 Gestione delle relazioni in SQL Server

8 Introduzione Sempre più spesso si sente parlare di web service, una tecnologia nuova che cambierà il modo di vedere, ma soprattutto di usare, internet; molte aziende di prestigio nel settore informatico stanno investendo gran parte delle loro risorse nello studio di queste tecnologie cercando di ottenere il meglio in minor tempo e al minor costo possibile. Quando si parla di web service non si sta parlando di una tecnologia ma di un modo di scambiare dati e informazioni attraverso internet. Di modi per implementare i servizi web ne esistono a decine ed ogni azienda potrebbe proporre il suo cercando di offrire soluzioni sempre più rapide ed economiche in modo da adeguare i sistemi informativi alle esigenze che richiede il mercato in quel particolare momento. Attualmente si possono avere grandi profitti solo se si riesce a stare al passo con i tempi ottenendo dalla propria azienda la maggior elasticità possibile per adeguarsi al meglio al mercato; avere un sistema informativo elastico può essere un punto chiave per il successo. Appunto questo è l obiettivo di chi implementa i web service. Per usare una definizione che rende l idea si possono definire i web service come lo strumento che mette a disposizione della rete l intelligenza dei suoi nodi. In questo lavoro sono esaminate le tecnologie principali che compongono l architettura dei servizi web facendo riferimento ai protocolli standard descritti dal World Wide Web Consortium, un organizzazione composta dalle maggiori società di settore che si pone l obiettivo di creare e definire gli standard da utilizzare in internet attraverso l emanazione di raccomandazioni. La base di questi protocolli, ossia XML, è un protocollo che esiste da parecchio tempo e la sua fusione con l HTTP rappresenta l affidabilità del sistema. I punti cardine dell interoperabilità invece sono rappresentati semplicemente da due 6

9 Introduzione grammatiche dell XML: SOAP e WSDL, già operanti entrambi nella versione 1.1 ma in continuo sviluppo da parte dei membri del gruppo di lavoro del W3C. Il concetto che è alla base della progettazione di questi protocolli è semplicemente l uomo è al centro di tutto ; realizzare protocolli di comunicazione che oltre ad essere comprensibili alle macchine siano comprensibili anche all utente permette di creare sistemi con alti livelli di interoperabilità. Non bisogna dimenticare che le applicazioni sono progettate dall uomo e se quest ultimo riesce a comprendere le informazioni trasmesse non gli sarà difficile istruire il suo programma a comprendere le stesse informazioni. Ciò di cui si ha bisogno quindi è la realizzazione un standard con cui si definisce la struttura del messaggio e il messaggio stesso in modo da eliminare il più possibile casi di ambiguità e allo stesso tempo vincolando il meno possibile il tipo di informazione da trasmettere. Lo standard per eccellenza, non proprietario, lo definisce il W3C con le sue raccomandazioni: SOAP per standardizzare i messaggi, WSDL per standardizzare la struttura dei messaggi, XML come piattaforma comune alla comunicazione e HTTP come mezzo di trasmissione (non l unico ma sicuramente il più usato). Viene infine presentata una implementazione che applica e verifica i principi esposti. 7

10

11 Introduzione ai Web Service Capitolo 1 Introduzione ai Web Service Nell era di internet in cui tutto è connesso si sente il bisogno di dotare le proprie applicazioni web di meccanismi in grado di scambiare dati tra sistemi eterogenei. In un futuro non molto lontano le periferiche collegate alla rete saranno di svariato tipo, dai comuni PC agli elettrodomestici di casa. Tra alcuni anni infatti frigoriferi, lavatrici, videoregistratori, condizionatori, ecc. avranno al loro interno un piccolo web server in grado di permettere funzionalità come manutenzione, controllo e sincronizzazione a distanza. Stabilire uno standard in grado di astrarre principi e funzioni diventa quindi importante al fine di garantire a dispositivi di natura differente l accesso a dati di natura differente. Aziende del calibro di Microsoft (con.net), Sun (con SunONE), Oracle (con Oracle9i) e IBM stanno investendo parecchi fondi propri nello studio di queste tecnologie il che ne indica un probabile gran successo. Le soluzioni presenti in mercato sono molteplici e non è semplice effettuare una scelta; attualmente c è una grande battaglia di numeri, benchmark e test. I web service sono già presenti su molte piattaforme e sfruttano tecnologie già esistenti da tempo; i dati vengono rappresentati su XML/SOAP per poi essere trasportati tramite l HTTP, il più diffuso tra i protocolli del TCP/IP. Bassi costi di realizzazione e semplicità di sviluppo sono quindi tra i punti di forza maggiori di tale tecnologia. 9

12 Capitolo 1 I nuovi tool della rete hanno tutte le carte in regola per grandi prospettive d impiego nei settori commerciali [Pia02] ma le aziende devono ancora operare alla luce di un ambiente d utenza non pronto da questo punto di vista. Si può affermare che i web service si trovano ancora in una fase di studio per iniziare ad avere un impiego su larga scala nel biennio quando inizieranno ad affermarsi degli standard di sviluppo e di uso. Il mondo della progettazione dei software è destinato a cambiare: gli applicativi attuali vengono ideati fin dall inizio per poter lavorare insieme e per essere integrati. Tale mentalità verrà eliminata dai web service che renderanno i link tra web application del tutto imprevedibili e dinamici orientandosi sempre più verso richieste di servizi ondemand. Le infrastrutture IT (Information Technology) attuali delle aziende purtroppo non sono in grado di gestire una tale dinamicità e questo implica la necessità di profondi cambiamenti per implementare un ambiente idoneo. La nuova tecnologia porterà grandi cambiamenti anche nel modo di fare business. Da una gestione incentrata sulle infrastrutture si sta passando ad una mirata alle singole transazioni; ciò spiega il fatto che molte organizzazioni stanno investendo denaro nel transaction monitoring, area che sta crescendo anche a causa della sempre maggiore necessità di dimostrare le performance dei servizi web. Ciò implica non solo un grande cambiamento delle infrastrutture IT delle aziende ma anche grandi mutamenti degli standard gestionali. La storia insegna che quando ci sono dei grandi mutamenti alla base delle applicazioni purtroppo la parte gestionale è molto lenta ad adattarsi. In conclusione si prevede un uso di web service complessi (web service full-scale) solo intorno al 2005 cioè quando le applicazioni complesse saranno standardizzate. 1.1 Verso A2A L area di sviluppo maggiormente interessata però [AutVar02] è sicuramente quella che ruota intorno al mondo del commercio e intorno al mondo della comunicazione B2B (Business to Business). Ogni giorno infatti milioni di imprese eseguono operazioni on-line con le banche, i clienti pagano i loro fornitori con moneta elettronica o semplicemente con giroconti bancari; gli ordini ai fornitori vengono sempre più fatti tramite internet e anche nel settore della logistica è sempre più presente il mondo del web con la possibilità per i fornitori di seguire il tracking delle proprie spedizioni in tempo reale. Una quantità 10

13 Introduzione ai Web Service innumerevole di applicazioni si scambiano dati attraverso il web spostando il concetto di B2B sempre più verso l A2A (Application to Application). Molti credono che lavorare in internet significhi esclusivamente mettere dei dati a disposizione di tutti, ma non è così; molto tempo fa i programmatori già realizzavano software di tipo screen scrapers (letteralmente raschiatori di videate ) che erano in grado di estrarre informazioni da documenti HTML. Altri sfruttavano siti FTP per ottenere i dati richiesti mentre i più abili realizzavano protocolli proprietari per la realizzazione di un mezzo di trasporto per le proprie applicazioni. Gestire un sistema del genere era però molto oneroso; basta pensare alle difficoltà di adattamento alle modifiche che potevano richiedere le esigenze dell azienda. Gli sviluppatori di applicazioni EDI (Electronic Data Interchange) già allora sentivano la necessità di uno standard per i protocolli di comunicazione tra applicazioni. I web service portano le funzionalità dei software EDI su internet creando un sistema già definito da molti l HTML delle applicazioni. 1.2 Definizione di web service Di fronte a questi nuovi servizi la domanda che ci si pone più comunemente è: cos è un web service? La risposta è molto semplice ma allo stesso tempo è molto complessa e articolata. Ponendo la stessa domanda a 10 esperti sicuramente otterremo almeno 8 risposte diverse. La diversità delle opinioni non è da attribuire alla complessità del concetto ma al fatto che la definizione di web service varia a seconda del caso in questione. Ciò ci può far rendere conto di quanti aspetti e quanti settori può interessare la capacità applicativa di un web service. Dare un definizione quindi per il servizio che offrono è un impresa vasta; proviamo ad analizzare quindi il nome WEB SERVICE. Il termine web ha un duplice significato. Il primo è da associare al settore economico; fu coniato infatti a metà del periodo in cui tutte le aziende puntavano a lavorare in internet come dot com e la nuova tecnologia non poteva che operare nello stesso settore. Il secondo significato è da associare al funzionamento della tecnologia; James Gosling 1 ha detto che essa ha come supporto HTTP, il protocollo simbolo del web. Quando si parla di internet in effetti è difficile non pensare a questo 1 JAMES GOSLING è l inventore e principale sviluppatore del linguaggio Java nonché vicepresidente della Sun Microsystems. 11

14 Capitolo 1 protocollo a cui si appoggiano tutti i servizi; la scelta di HTTP viene giustificata dalla sua notorietà, dalla sua sicurezza e dal fatto che è firewall-friendly. Sviluppare servizi web non comporta grandi costi aggiuntivi per l azienda: la tecnologia c è già. Il termine service ha un significato affine a quello ricoperto dalla lettera s nell acronimo ASP (Application Service Provider). In altre parole viene espresso il concetto di fornire un servizio senza dover installare software sulla propria macchina. In questo caso si parla di servizi offerti agli sviluppatori e alle loro applicazioni ottenendo dati dal web tramite HTTP ma senza l uso di un browser. Dopo questa piccola analisi possiamo quindi arrivare alla semplice definizione: i servizi web sono una soluzione che garantisce la comunicazione tra due applicazioni attraverso internet. Scendendo nei dettagli possiamo ampliare la definizione dicendo che i web service sono un servizio offerto dalla combinazione di standard e tecnologie già affermate. La componente più importante è senza dubbio l XML che è anche il vero punto di forza del nuovo strumento. Si può affermare con certezza che un documento XML è indipendente dal linguaggio di programmazione usato e che è comprensibile da tutti visto che si tratta di un semplice file di testo. La tecnica usata è simile a quella dell HTML; la differenza risiede nella ricchezza, stratificazione, portabilità e leggibilità intrinseche in una struttura XML. I servizi web si limitano ad estendere il campo delle applicazione verso la rete garantendo un sistema semplice e portabile che di norma era attribuito a RPC (Remote Procedure Call) più onerose come CORBA (Common Object Request Broker Architecture), DCOM e EDI Prima dei web service L idea di base dei web service è quella di creare un linguaggio comune ed una piattaforma per lo scambio dei messaggi uniforme ed interpretabile da sistemi eterogenei. Questa concezione però è identica a quella passata. 2 CORBA, DCOM e EDI sono dei middleware, cioè protocolli ed architetture atti alla creazione di sistemi distribuiti in rete col compito di garantire trasparenza ed eterogeneità ai sistemi coinvolti. 12

15 Introduzione ai Web Service CORBA/IIOP In precedenza lo standard per lo scambio di informazioni su internet era IIOP (Internet Inter-Orb Protocol) della OMG 3 ; ha le stesse funzioni del CORBA originario che era considerato il sistema migliore per la comunicazione tra applicazioni su vasta scala. Il sistema però non ebbe il risultato che OMG aveva sperato. Vediamo alcuni elementi fondamentali di questa architettura [Omg03]. Il motore principale su cui si basa il sistema è l ORB che in inglese significa globo ed è l acronimo di Object Request Broker cioè un agente di scambio di messaggi tra oggetti. Il suo compito è quello di gestire la comunicazione tra stub e skeleton; inoltre nasconde al client la vera localizzazione della macchina dove gira l oggetto remoto. Si serve di IIOP come protocollo di trasporto. RMI (Javasoft) e DCOM (Microsoft) sono ORB non compatibili con lo standard CORBA. Stub e skeleton sono degli strati software aggiuntivi necessari per agganciare gli oggetti all ORB e più precisamente, STUB è il proxy lato client e SKELETON è il proxy lato server. RMI e RMI/IIOP generano automaticamente questo strato. Un caso generico del funzionamento di CORBA potrebbe essere il seguente: 1. Viene attivato il Naming Server. Questa operazione avvia un servizio (Naming Service) che permette al client di rintracciare gli oggetti tramite il loro nome logico. Quando si avvia un server di nomi bisogna come prima cosa registrare tutti gli oggetti che tale server deve gestire; il suo compito è quello di accettare in input il nome logico di un oggetto (stabilito in fase di registrazione) e di dare in output il riferimento all oggetto stesso. Ogni nome deve essere unico all interno di un contesto (Naming Context). 2. Appena avviato il server esegue l operazione di BIND associando cioè i nomi logici al riferimento del rispettivo oggetto remoto descritto. 3. L applicazione client invoca un metodo di un oggetto remoto. 4. Lo stub localizza l oggetto richiesto tramite nome logico e ottiene il riferimento e la definizione della sua interfaccia (operazione di LOOKUP). 5. Utilizzando IDL (Interface Description Language) per CORBA o RMI (Remote Method Invocation) per Java la descrizione dei parametri di input del metodo viene 3 OBJECT MANAGEMENT GROUP: fondata nell aprile del 1989 da undici società. Tra le sue architetture principali CORBA e CORBA/IIOP. 13

16 Capitolo 1 convertita in un formato standard che il client potrà interpretare per creare il messaggio di request. 6. Il messaggio viene consegnato all ORB che provvede a consegnarlo al nodo di rete che implementa l oggetto richiesto. Figura 1.1 Architettura CORBA/IIOP 7. L OA (Object Adapter) decodifica i dati convertendoli dal formato standard al formato locale e li consegna allo skeleton e di conseguenza all oggetto richiamato. 8. L oggetto remoto esegue il metodo indicato e genera un reply che ripercorrerà lo stesso percorso della request (codifica invio decodifica). 9. La risposta arriva al client che continua la sua elaborazione. I problemi fondamentali per cui CORBA/IIOP non ebbe un gran successo furono: 14

17 Introduzione ai Web Service COSTI ELEVATI: il sistema era troppo vasto e complesso e non c era un adeguato ritorno economico per le aziende che decidevano di implementarlo. Alti prezzi per le licenze d uso dell ORB, fondamentale per il corretto funzionamento di CORBA. SCARSA INTEROPERABILITÀ ED ESTENSIBILITÀ: nonostante che si era cercato di costruire una piattaforma unica per gli ambienti di sviluppo IIOP trovava difficoltà di installazione in alcuni sistemi. DIFFICOLTÀ DI IMPLEMENTAZIONE: IIOP mancava di protocolli descrittivi del servizio e di raggruppamenti dei servizi al di sotto di namespace propri dell XML (anche se questo problema era risolto dall IDL e dai Name Server). Nonostante la sua incompletezza comunque IIOP è usato ancora oggi ed è implementato da sistemi di comunicazione interpiattaforma come ad esempio CORBA e J2EE/Enterprise JavaBeans (RMI/IIOP) [Ros00] EDI L Electronic Data Interchange (letteralmente, scambio di dati elettronico) ha come obiettivo quello di migliorare il flusso di informazioni tra le aziende; a differenza dell XML però questa struttura è nata per lavorare sulle reti private difettando quindi di concetti necessari alla diffusione sulla rete pubblica (namespace e descrizione). Nonostante ciò EDI ha circa vent anni d esperienza e merita di essere preso come punto di riferimento per lo sviluppo degli attuali servizi web. Va detto però che l ampiezza di linguaggio di EDI renderebbe possibile un implementazione di descrittori di servizio e di namespace senza grandi difficoltà; l operazione però è troppo lunga e rigorosa per le aziende che devono adattarsi velocemente per stare al passo con l e-commerce. Il progetto è stato sviluppato per operare in sicurezza con un gran numero di transazioni; purtroppo la sua implementazione è complessa [AutVar02] e costosa e ciò ha contribuito a renderlo poco popolare. Inoltre EDI non dispone della flessibilità e della semplicità d uso necessaria allo sviluppo nell e-commerce il che lascia preferire le nuove tecnologie per web application all esperienza di un sistema collaudato. L obiettivo principale di EDI è risparmiare sui costi. Il suo scopo infatti è quello di ridurre il più possibile le transazioni per via cartacea velocizzando di molto il passaggio di informazioni e liberando risorse all azienda. Si può pensare quindi ad una gestione 15

18 Capitolo 1 migliore di tutta l organizzazione riducendo i gap tra le commissioni e la loro esecuzione (verso il Just In Time). La capacità di EDI infatti è quella di trasportare i documenti commerciali (fatture, ordini, ricevute, ) attraverso la rete; [Tec03] per fare ciò i file da inviare vengono convertiti in un formato proprietario gestito internamente, vengono spediti alla casella elettronica del destinatario dove vengono ripristinati al loro formato originale. I mezzi di trasporto usati sono quelli già esistenti come la posta elettronica o FTP. I servizi principali offerti dal sistema sono: non ripudio dell originale; non ripudio della ricezione; autenticazione del messaggio; confidenzialità. Va detto però che EDI non è una piattaforma sulla quale interfacciarsi per lo scambio di messaggi ma un sistema a se stante che necessita di un software dedicato (chiamato traduttore EDI ) per la gestione. Tuttavia esistono delle specifiche di I/O che permettono lo sviluppo di applicazioni in grado di interagire con il traduttore. Dall esperienza di EDI si devono trarre due lezioni fondamentali [AutVar02]: è importante documentare l applicazione per ottenere un corretto uso; ciò è ancora più essenziale quando l applicazione dovrà essere usata dalle IT di più aziende; l applicazione deve essere utile a tutti; in altre parole più utenti usano un servizio web e più esso avrà valore. Distribuire servizi tramite web a bassi costi è un fattore fondamentale per riuscire nell obiettivo. Il sistema però si sta evolvendo verso le nuove necessità del mercato integrando sempre più le nuove tecnologie. Ora EDI infatti integra anche XML, SOAP e HTTP come protocolli di trasporto prendendo la definizione web-based EDI. La vera evoluzione però va vista nell ebxml (Electronic Business XML) che pur conservando tutti i dogmi dell architettura passata ha l elasticità di XML con qualche accorgimento in più per evitare ambiguità nei rapporti commerciali. Se ad esempio un azienda sta cercando un fornitore che consegni entro le 24 ore serve un parametro che indichi questa opzione sia al cliente che al provider. In altre parole le parti devono stipulare un binding agreement, cioè devono mettersi d accordo sui requisiti prima di effettuare una transazione; tali ricerche richiedono 16

19 Introduzione ai Web Service un alto livello di precisione. Il procedimento non è diverso da quello della vita reale dove viene stipulato il contratto prima dell effettiva transazione e i servizi web integrano queste funzionalità con ebxml DCOM Microsoft Distibuted Component Object Model espande il vecchio COM alla comunicazione tra oggetti distribuiti su più macchine all interno di una LAN, in una WAN fino ad Internet. Essendone l evoluzione, le applicazioni precedentemente sviluppate sulla tecnologia COM non trovano difficoltà ad essere adattate al nuovo middleware [Msd03a]. Uno degli aspetti centrali di COM è il meccanismo per connettere due oggetti tramite la creazione di nuove istanze; questa tecnica viene chiamata normalmente meccanismo di attivazione. Nel mondo COM le classi di oggetti vengono chiamate tramite GUID (Globally Unique IDentifier) che appena assegnato prende il nome Class ID. I Class ID non sono altro che numeri interi molto grandi (128 bit) che garantiscono l assenza di conflitti di nomi in assenza di namespace centralizzati. Le librerie COM sono memorizzate nel registro di sistema di Windows e contengono i riferimenti ai rispettivi binari (DLL o eseguibili). In DCOM il concetto è lo stesso ma espanso all idea che l oggetto può essere installato su un altra macchina; oltre al Class ID (CLSID) quindi è necessario sapere anche il nome dell host in cui è installato l oggetto. Appena tutti i riferimenti sono noti, una parte di COM, chiamata SCM (Service Control Manager), presente sul client si connette con la SCM presente sul server che elabora la richiesta dell oggetto corrispondente al CLSID specificato. In tutto questo processo il client non si rende conto se l oggetto richiamato si trova in locale o in remoto, tutto quello di cui si deve preoccupare è il CLSID; le librerie COM penseranno a comunicare con il server nel caso in cui l oggetto sia remoto. Analogamente a CORBA, in DCOM esiste un IDL per descrivere l oggetto al client e si creano un proxy lato client ed uno stub lato server per interfacciare il sistema alle applicazioni; eseguono le operazioni di marshaling 4 e unmarshaling per il trasporto della chiamate su network. Dal punto di vista del client tutti gli oggetti devono essere accessibili tramite un puntatore di interfaccia ; i puntatori devono essere in-process e di conseguenza ogni chiamata, prima, raggiunge sempre un pezzo di codice in-process. Se il componente è locale la chiamata gli viene consegnata direttamente altrimenti essa dovrà passare per il 4 Operazione che trasforma un dato con formato proprio in un formato convenuto. 17

20 Capitolo 1 proxy creato dalle librerie DCOM che provvederà ad inoltrarla all altra macchina tramite DCE RPC (Distributed Computing Environment Remote Procedure Call). Analogamente, dal punto di vista del server, l oggetto deve ricevere la chiamata tramite il suo interface pointer il che è possibile solo localmente. L architettura DCOM risolve il problema con lo stub il quale riceve le invocazioni dal proxy e provvede ad inoltrarla all oggetto che per lui è in-process. Figura 1.2 Architettura DCOM Anche DCOM ha fatto i suoi passi verso l evoluzione di internet con l uso di un nuovo protocollo di trasporto gestito dal CIS (COM Internet Service) ; il suo nome è Tunnelling TCP e lavora appunto tramite TCP sulla porta 80. Ciò permette la comunicazione attraverso proxy e firewall creando un nuovo tipo di librerie COM internet-based. Praticamente però le cose non migliorano di molto; la novità consiste solo in un handshake iniziale sulla porta 80 in HTTP tra client e server dopodiché il filo di collegamento rimane il classico DCOM su TCP. I problemi principali quindi rimangono: Necessità di IIS (Internet Information Services) 4.0 o maggiore con librerie CIS lato server. Esistono però anche versioni di COM e DCOM per Unix e MacOS visto che il progetto non è totalmente proprietà della Microsoft ma è gestito dall ActiveX Consortium. 18

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO Standard tecnici Gli standard tecnici di riferimento adottati sono conformi alle specifiche e alle raccomandazioni emanate dai principali

Dettagli

Appendice D. D. Web Services

Appendice D. D. Web Services D. D.1 : cosa sono I cosiddetti sono diventati uno degli argomenti più attuali nel panorama dello sviluppo in ambiente Internet. Posti al centro delle più recenti strategie di aziende del calibro di IBM,

Dettagli

Seminario di Sistemi Distribuiti: RPC su SOAP

Seminario di Sistemi Distribuiti: RPC su SOAP Corso di Sistemi Distribuiti Prof. S. Balsamo Seminario di Sistemi Distribuiti: RPC su SOAP [ 777775] 1 INTRODUZIONE 3 2 RPC 3 3 SOAP (SIMPLE OBJECT ACCESS PROTOCOL) 3 4 UTILIZZO DI SOAP COME PROTOCOLLO

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

CORBA ( Common Object Request Broker Architecture ) Le specifiche più conosciute sono UML e CORBA

CORBA ( Common Object Request Broker Architecture ) Le specifiche più conosciute sono UML e CORBA CORBA ( Common Object Request Broker Architecture ) consiste in un insieme di specifiche promosse e curate da OMG (Object Management Group). L OMG è un consorzio internazionale no-profit di industrie nel

Dettagli

Contenuti. Applicazioni di rete e protocolli applicativi

Contenuti. Applicazioni di rete e protocolli applicativi Contenuti Architettura di Internet Principi di interconnessione e trasmissione World Wide Web Posta elettronica Motori di ricerca Tecnologie delle reti di calcolatori Servizi Internet (come funzionano

Dettagli

Ministero del Lavoro e delle Politiche Sociali

Ministero del Lavoro e delle Politiche Sociali Ministero del Lavoro e delle Politiche Sociali Prospetto Informativo on-line Standard tecnici del sistema informativo per l invio telematico del Prospetto Informativo Documento: UNIPI.StandardTecnici Revisione

Dettagli

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Dettagli

Concetti base. Impianti Informatici. Web application

Concetti base. Impianti Informatici. Web application Concetti base Web application La diffusione del World Wide Web 2 Supporto ai ricercatori Organizzazione documentazione Condivisione informazioni Scambio di informazioni di qualsiasi natura Chat Forum Intranet

Dettagli

Laboratorio di RETI DI CALCOLATORI

Laboratorio di RETI DI CALCOLATORI Laboratorio di RETI DI CALCOLATORI A.A. 2009-2010 I WEB SERVICES Carlo Mastroianni Laboratorio di Reti di Calcolatori - Orario lunedì, 11:30-13:30, aula 40B mercoledì, 10:00-11:30, laboratorio settimo

Dettagli

Internet Architettura del www

Internet Architettura del www Internet Architettura del www Internet è una rete di computer. Il World Wide Web è l insieme di servizi che si basa sull architettura di internet. In una rete, ogni nodo (detto host) è connesso a tutti

Dettagli

b) Dinamicità delle pagine e interattività d) Separazione del contenuto dalla forma di visualizzazione

b) Dinamicità delle pagine e interattività d) Separazione del contenuto dalla forma di visualizzazione Evoluzione del Web Direzioni di sviluppo del web a) Multimedialità b) Dinamicità delle pagine e interattività c) Accessibilità d) Separazione del contenuto dalla forma di visualizzazione e) Web semantico

Dettagli

Appl. di emissione PKCS#11. API (Metacomandi) Resource Manager Windows. Drivers PC/SC dei lettori

Appl. di emissione PKCS#11. API (Metacomandi) Resource Manager Windows. Drivers PC/SC dei lettori Roma, 30 gennaio 2003 La realtà della carta di identità elettronica (nel seguito CIE) e della carta nazionale dei servizi (nel seguito CNS) rende ineluttabile l individuazione di servizi da erogare in

Dettagli

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4) Architettura del WWW World Wide Web Sintesi dei livelli di rete Livelli di trasporto e inferiori (Livelli 1-4) - Connessione fisica - Trasmissione dei pacchetti ( IP ) - Affidabilità della comunicazione

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica CL3 - Biotecnologie Orientarsi nel Web Prof. Mauro Giacomini Dott. Josiane Tcheuko Informatica - 2006-2007 1 Obiettivi Internet e WWW Usare ed impostare il browser Navigare in internet

Dettagli

Manuale di Integrazione IdM-RAS

Manuale di Integrazione IdM-RAS IdM-RAS Data: 30/11/09 File: Manuale di integrazione IdM-RAS.doc Versione: Redazione: Sardegna IT IdM-RAS Sommario 1 Introduzione... 3 2 Architettura del sistema... 4 2.1 Service Provider... 4 2.2 Local

Dettagli

1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org

1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org 1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org Prefazione. Da Hello World a Hello World Wide Web. Hello World è la prima frase stampata a video dal primo programma di esempio scritto

Dettagli

Introduzione ai Web Services Alberto Polzonetti

Introduzione ai Web Services Alberto Polzonetti PROGRAMMAZIONE di RETE A.A. 2003-2004 Corso di laurea in INFORMATICA Introduzione ai Web Services alberto.polzonetti@unicam.it Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema

Dettagli

CdL MAGISTRALE in INFORMATICA

CdL MAGISTRALE in INFORMATICA 05/11/14 CdL MAGISTRALE in INFORMATICA A.A. 2014-2015 corso di SISTEMI DISTRIBUITI 7. I processi : il naming Prof. S.Pizzutilo Il naming dei processi Nome = stringa di bit o di caratteri utilizzata per

Dettagli

Laboratorio Matematico Informatico 2

Laboratorio Matematico Informatico 2 Laboratorio Matematico Informatico 2 (Matematica specialistica) A.A. 2006/07 Pierluigi Amodio Dipartimento di Matematica Università di Bari Laboratorio Matematico Informatico 2 p. 1/1 Informazioni Orario

Dettagli

CONCETTI DI NAVIGAZIONE IN RETE

CONCETTI DI NAVIGAZIONE IN RETE CONCETTI DI NAVIGAZIONE IN RETE Internet (La rete delle reti) è l insieme dei canali (linee in rame, fibre ottiche, canali radio, reti satellitari, ecc.) attraverso cui passano le informazioni quando vengono

Dettagli

Web Service Architecture

Web Service Architecture Giuseppe Della Penna Università degli Studi di L Aquila dellapenna@di.univaq.it http://dellapenna.univaq.it Engineering IgTechnology Info92 Maggioli Informatica Micron Technology Neta Nous Informatica

Dettagli

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet Indirizzi Internet e Protocolli I livelli di trasporto delle informazioni Comunicazione e naming in Internet Tre nuovi standard Sistema di indirizzamento delle risorse (URL) Linguaggio HTML Protocollo

Dettagli

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1)

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1) Pagina 1 di 10 Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1) Nel corso della lezione precedente abbiamo analizzato le caratteristiche dell'architettura CGI.

Dettagli

Internet e Tecnologia Web

Internet e Tecnologia Web INTERNET E TECNOLOGIA WEB Corso WebGis per Master in Sistemi Informativi Territoriali AA 2005/2006 ISTI- CNR c.renso@isti.cnr.it Internet e Tecnologia Web...1 TCP/IP...2 Architettura Client-Server...6

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

Corso basi di dati Introduzione alle ASP

Corso basi di dati Introduzione alle ASP Corso basi di dati Introduzione alle ASP Gianluca Di Tomassi Email: ditomass@dia.uniroma3.it Università di Roma Tre Web statico e Web interattivo In principio il Web era una semplice collezione di pagine

Dettagli

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML Master Universitario di II livello in Interoperabilità Per la Pubblica Amministrazione e Le Imprese Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security

Dettagli

Programmazione di sistemi distribuiti

Programmazione di sistemi distribuiti Programmazione di sistemi distribuiti I Sistemi Distribuiti, per loro natura, prevedono che computazioni differenti possano essere eseguite su VM differenti, possibilmente su host differenti, comunicanti

Dettagli

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Dettagli

Architetture Web Protocolli di Comunicazione

Architetture Web Protocolli di Comunicazione Architetture Web Protocolli di Comunicazione Alessandro Martinelli alessandro.martinelli@unipv.it 10 Maggio 2011 Architetture Web Architetture Web Protocolli di Comunicazione Il Client Side Il Server Side

Dettagli

Presentazione di Cedac Software

Presentazione di Cedac Software Agenda Presentazione di Cedac Software SOA ed ESB Analisi di un caso studio Esempi Q&A Presentazione di Cedac Software 1 2 Presentazione di Cedac Software S.r.l. Divisione Software Azienda nata nel 1994

Dettagli

Introduzione. Il software e l ingegneria del software. Marina Mongiello Ingegneria del software 1

Introduzione. Il software e l ingegneria del software. Marina Mongiello Ingegneria del software 1 Introduzione Il software e l ingegneria del software Marina Mongiello Ingegneria del software 1 Sommario Il software L ingegneria del software Fasi del ciclo di vita del software Pianificazione di sistema

Dettagli

Architetture Web. parte 1. Programmazione in Ambienti Distribuiti A.A. 2003-04

Architetture Web. parte 1. Programmazione in Ambienti Distribuiti A.A. 2003-04 Architetture Web parte 1 Programmazione in Ambienti Distribuiti A.A. 2003-04 Architetture Web (1) Modello a tre livelli in cui le interazioni tra livello presentazione e livello applicazione sono mediate

Dettagli

Internet e World Wide Web

Internet e World Wide Web Alfonso Miola Internet e World Wide Web Dispensa C-02 Settembre 2005 1 Nota bene Il presente materiale didattico è derivato dalla dispensa prodotta da Luca Cabibbo Dip. Informatica e Automazione Università

Dettagli

WEBsfa: l automazione della forza vendita via Web

WEBsfa: l automazione della forza vendita via Web WEBsfa: l automazione della forza vendita via Web White Paper 1 Gennaio 2005 White Paper Pag. 1 1/1/2005 L automazione della Forza Vendita Le aziende commerciali che che sviluppano e alimentano il proprio

Dettagli

Applicazioni web centrati sui dati (Data-centric web applications)

Applicazioni web centrati sui dati (Data-centric web applications) Applicazioni web centrati sui dati (Data-centric web applications) 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente lo strumento di riferimento

Dettagli

La Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica.

La Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica. Sistemi e tecnologie per la multimedialità e telematica Fabio Burroni Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena burronif@unisi unisi.itit La Sicurezza delle Reti La presentazione

Dettagli

ICT (Information and Communication Technology): ELEMENTI DI TECNOLOGIA

ICT (Information and Communication Technology): ELEMENTI DI TECNOLOGIA ICT (Information and Communication Technology): ELEMENTI DI TECNOLOGIA Obiettivo Richiamare quello che non si può non sapere Fare alcune precisazioni terminologiche IL COMPUTER La struttura, i componenti

Dettagli

Sistemi Informativi e WWW

Sistemi Informativi e WWW Premesse Sistemi Informativi e WWW WWW: introduce un nuovo paradigma di diffusione (per i fornitori) e acquisizione (per gli utilizzatori) delle informazioni, con facilità d uso, flessibilità ed economicità

Dettagli

8. Sistemi Distribuiti e Middleware

8. Sistemi Distribuiti e Middleware 8. Sistemi Distribuiti e Middleware Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 8. Sistemi distribuiti e Middleware 1 / 32 Sommario 1 Sistemi distribuiti

Dettagli

Reti basate sulla stack di protocolli TCP/IP

Reti basate sulla stack di protocolli TCP/IP Reti basate sulla stack di protocolli TCP/IP Classe V sez. E ITC Pacioli Catanzaro lido 1 Stack TCP/IP Modello TCP/IP e modello OSI Il livello internet corrisponde al livello rete del modello OSI, il suo

Dettagli

Progettazione: Tecnologie e ambienti di sviluppo

Progettazione: Tecnologie e ambienti di sviluppo Contratto per l acquisizione di servizi di Assistenza specialistica per la gestione e l evoluzione del patrimonio software della Regione Basilicata. Repertorio n. 11016 del 25/09/2009 Progettazione: Tecnologie

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 Questi lucidi sono stati prodotti sulla

Dettagli

Web Services Dogane LINEE GUIDA

Web Services Dogane LINEE GUIDA Web Services Dogane LINEE GUIDA Pagina 1 di 17 Indice Indice... 2 1. INTRODUZIONE... 3 2. TEST FUNZIONALI SUI WEB SERVICES... 8 3. SICUREZZA... 14 4. FIRMA... 14 5. TRASFORMAZIONE CERTIFICATO DI FIRMA...

Dettagli

Java Remote Method Invocation

Java Remote Method Invocation Java Remote Method Invocation Programmazione in Rete e Laboratorio Comunicazione distribuita Port1 Java VM1 Java VM2 Port 2 Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino

Dettagli

automation using workflow technology and web services Vassilacopoulos Med. Inform. (September 2003) vol. 28, no. 3,

automation using workflow technology and web services Vassilacopoulos Med. Inform. (September 2003) vol. 28, no. 3, Emergency healthcare process automation using workflow technology and web services M. Poulymenopoulou, F. Malamateniou, G. Vassilacopoulos Med. Inform. (September 2003) vol. 28, no. 3, 195 207 Processo

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

Sistemi Operativi (modulo di Informatica II)

Sistemi Operativi (modulo di Informatica II) Sistemi Operativi (modulo di Informatica II) La comunicazione tra processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Processi cooperanti La comunicazione tra processi Necessità

Dettagli

D3.2 Documento illustrante l architettura 3D Cloud per la realizzazione di servizi in modalità SaaS

D3.2 Documento illustrante l architettura 3D Cloud per la realizzazione di servizi in modalità SaaS D3.2 Documento illustrante l architettura 3D Cloud per la realizzazione di servizi in modalità SaaS Il modello SaaS Architettura 3D Cloud Il protocollo DCV Benefici Il portale Web EnginFrame EnginFrame

Dettagli

Internet e protocollo TCP/IP

Internet e protocollo TCP/IP Internet e protocollo TCP/IP Internet Nata dalla fusione di reti di agenzie governative americane (ARPANET) e reti di università E una rete di reti, di scala planetaria, pubblica, a commutazione di pacchetto

Dettagli

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in Ingegneria dei Requisiti Il processo che stabilisce i servizi che il cliente richiede I requisiti sono la descrizione dei servizi del sistema Funzionalità astratte che il sistema deve fornire Le proprietà

Dettagli

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer Tecnologie per il Web Il web: architettura e tecnologie principali Una analisi delle principali tecnologie per il web Tecnologie di base http, ssl, browser, server, firewall e proxy Tecnologie lato client

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2010/2011 Questi lucidi sono stati prodotti sulla

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

Dettagli

Internet Terminologia essenziale

Internet Terminologia essenziale Internet Terminologia essenziale Che cos è Internet? Internet = grande insieme di reti di computer collegate tra loro. Rete di calcolatori = insieme di computer collegati tra loro, tramite cavo UTP cavo

Dettagli

Seminari Eucip, Esercizio e Supporto di Sistemi Informativi

Seminari Eucip, Esercizio e Supporto di Sistemi Informativi Seminari Eucip, Esercizio e Supporto di Sistemi Informativi Servizi di Dipartimento di Informtica e Sistemistica Università di Roma La Sapienza Sicurezza su Sicurezza della La Globale La rete è inerentemente

Dettagli

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione Comunicazioni sicure su Internet: https e SSL Fisica dell Informazione Il servizio World Wide Web (WWW) Come funziona nel dettaglio il Web? tre insiemi di regole: Uniform Resource Locator (URL) Hyper Text

Dettagli

Corso di Laurea in Informatica Reti e Sicurezza Informatica

Corso di Laurea in Informatica Reti e Sicurezza Informatica Corso di Laurea in Informatica Reti e Sicurezza Informatica Esercitazione 6 Autenticazione in Tomcat per lo sviluppo di Web Service. In questo documento si presentano i meccanismi fondamentali che consentono

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Gli XML Web Service. Prof. Mauro Giacomini. Complementi di Informatica Medica 2008/2009 1

Gli XML Web Service. Prof. Mauro Giacomini. Complementi di Informatica Medica 2008/2009 1 Gli XML Web Service Prof. Mauro Giacomini Medica 2008/2009 1 Definizioni i i i Componente.NET che risponde a richieste HTTP formattate tramite la sintassi SOAP. Gestori HTTP che intercettano richieste

Dettagli

INDICE. Indice. Introduzione

INDICE. Indice. Introduzione V Indice Introduzione XIII Capitolo 1 La programmazione multithread 1 1.1 Cosa sono i thread 2 Utilizzare i thread per dare una possibilità ad altri task 9 Avvio ed esecuzione dei thread 10 Esecuzione

Dettagli

Corso di Web Programming

Corso di Web Programming Corso di Web Programming 1. Introduzione a Internet e al WWW Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Informatica

Dettagli

Progetto interregionale ICAR Interoperabilità e Cooperazione Applicativa tra le Regioni.

Progetto interregionale ICAR Interoperabilità e Cooperazione Applicativa tra le Regioni. <Task AP3> Progetto interregionale ICAR Interoperabilità e Cooperazione Applicativa tra le Regioni AP3-Documento Descrittivo degli Accordi di Servizio Versione AP3-specificaADSv1.2.1.doc Pag. 1

Dettagli

UBIQUITY 6 e Server. Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity.

UBIQUITY 6 e Server. Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity. UBIQUITY 6 e Server Privato Introduzione Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity. Versione Descrizione Data 1 Prima emissione 21/06/2015 Disclaimer

Dettagli

Dal protocollo IP ai livelli superiori

Dal protocollo IP ai livelli superiori Dal protocollo IP ai livelli superiori Prof. Enrico Terrone A. S: 2008/09 Protocollo IP Abbiamo visto che il protocollo IP opera al livello di rete definendo indirizzi a 32 bit detti indirizzi IP che permettono

Dettagli

Ministero della Giustizia

Ministero della Giustizia Ministero della Giustizia DIPARTIMENTO DELL ORGANIZZAZIONE GIUDIZIARIA, DEL PERSONALE E DEI SERVIZI DIREZIONE GENERALE PER I SISTEMI INFORMATIVI AUTOMATIZZATI AREA CIVILE POLISWEB Piano delle verifiche

Dettagli

Gli indirizzi dell Internet Protocol. IP Address

Gli indirizzi dell Internet Protocol. IP Address Gli indirizzi dell Internet Protocol IP Address Il protocollo IP Prevalente è ormai diventato nell implementazione di reti di computer la tecnologia sintetizzata nei protocolli TCP- Ip IP è un protocollo

Dettagli

Sommario. Settimana - Gli elementi fondamentali... 1. Introduzione...xv. Giorno 1 - I linguaggi di markup...3

Sommario. Settimana - Gli elementi fondamentali... 1. Introduzione...xv. Giorno 1 - I linguaggi di markup...3 000B-XML-Somm.fm Page iii Wednesday, June 12, 2002 9:25 AM Sommario Introduzione...xv A chi si rivolge questo libro...xvi Convenzioni usate in questo libro...xvi Settimana - Gli elementi fondamentali...

Dettagli

Informatica Documentale

Informatica Documentale Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,

Dettagli

Livello Applicazione. Davide Quaglia. Motivazione

Livello Applicazione. Davide Quaglia. Motivazione Livello Applicazione Davide Quaglia 1 Motivazione Nell'architettura ibrida TCP/IP sopra il livello trasporto esiste un unico livello che si occupa di: Gestire il concetto di sessione di lavoro Autenticazione

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

ARCHIVIA PLUS: ARCHIPROTO PEC

ARCHIVIA PLUS: ARCHIPROTO PEC ARCHIVIA PLUS: ARCHIPROTO PEC Istruzioni per la configurazione e l utilizzo del modulo di protocollazione PEC Versione n. 2012.05.25 Data : 25/05/2012 Redatto da: Veronica Gimignani Luca Mattioli Approvato

Dettagli

POSTA ELETTRONICA (TRADIZIONALE e CERTIFICATA) FIRMA DIGITALE PROTOCOLLO INFORMATICO. Maurizio Gaffuri 11 ottobre 2007

POSTA ELETTRONICA (TRADIZIONALE e CERTIFICATA) FIRMA DIGITALE PROTOCOLLO INFORMATICO. Maurizio Gaffuri 11 ottobre 2007 POSTA ELETTRONICA (TRADIZIONALE e CERTIFICATA) FIRMA DIGITALE PROTOCOLLO INFORMATICO Maurizio Gaffuri 11 ottobre 2007 1 POSTA ELETTRONICA TRADIZIONALE e POSTA ELETTRONICA CERTIFICATA 2 POSTA ELETTRONICA

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Programmazione L attività con cui si predispone l elaboratore ad eseguire un particolare insieme di azioni su particolari dati, allo scopo di risolvere un problema Dati Input

Dettagli

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA Elaborato di Tecnologie del Software per Internet JMSWEB 2 SISTEMA PER LO SCAMBIO DI MESSAGGI TRA APPLICAZIONI

Dettagli

Università Magna Graecia di Catanzaro Facoltà di Medicina e Chirurgia Corso di Laurea in Scienze Infermieristiche Polo Didattico di Reggio Calabria

Università Magna Graecia di Catanzaro Facoltà di Medicina e Chirurgia Corso di Laurea in Scienze Infermieristiche Polo Didattico di Reggio Calabria Università Magna Graecia di Catanzaro Facoltà di Medicina e Chirurgia Corso di Laurea in Scienze Infermieristiche Polo Didattico di Reggio Calabria Corso Integrato di Scienze Fisiche, Informatiche e Statistiche

Dettagli

Introduzione ad Architetture Orientate ai Servizi e Web Service

Introduzione ad Architetture Orientate ai Servizi e Web Service Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Introduzione ad Architetture Orientate ai Servizi e Web Service Corso di Sistemi Distribuiti Stefano Iannucci iannucci@ing.uniroma2.it Anno

Dettagli

Seminario di Sistemi Distribuiti RPC su SOAP

Seminario di Sistemi Distribuiti RPC su SOAP Seminario di Sistemi Distribuiti RPC su SOAP Massimiliano Vivian [777775] Massimiliano Vivian 1 Introduzione La comunicazione delle informazioni è l elemento fondamentale per lo sviluppo dei sistemi. SOAP

Dettagli

ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL

ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL.1. Introduzione Legalmail è il servizio di posta elettronica con valore legale realizzato da InfoCamere. Esso consente al Cliente di disporre di

Dettagli

ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL

ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL ALLEGATO AL CONTRATTO DI FORNITURA DEL SERVIZIO LEGALMAIL.1. Introduzione Legalmail è un servizio di posta elettronica che garantisce un elevato grado di affidabilità e sicurezza. Esso consente al Cliente

Dettagli

Universal Resource Identifier (URI) Autore slide: Fabio Vitali

Universal Resource Identifier (URI) Autore slide: Fabio Vitali Universal Resource Identifier (URI) Autore slide: Fabio Vitali 1 Introduzione Esaminiamo: Gli Universal Resource Identifier (URI) 2 URI Gli URI (Universal Resource Identifier) sono una sintassi usata in

Dettagli

Integrazione di Sistemi Informativi Sanitari attraverso l uso di Middleware Web Services

Integrazione di Sistemi Informativi Sanitari attraverso l uso di Middleware Web Services Consiglio Nazionale delle Ricerche Istituto di Calcolo e Reti ad Alte Prestazioni Integrazione di Sistemi Informativi Sanitari attraverso l uso di Middleware Web Services I. Marra M. Ciampi RT-ICAR-NA-06-04

Dettagli

Identità sulla rete protocolli di trasmissione (TCP-IP) L architettura del sistema. Dal livello A al livello B

Identità sulla rete protocolli di trasmissione (TCP-IP) L architettura del sistema. Dal livello A al livello B Identità sulla rete protocolli di trasmissione (TCP-IP) L architettura del sistema contenuto della comunicazione sistema per la gestione della comunicazione sottosistema C sottosistema B sottosistema A

Dettagli

Reti locati e reti globali. Tecnologie: Reti e Protocolli. Topologia reti. Server e client di rete. Server hardware e server software.

Reti locati e reti globali. Tecnologie: Reti e Protocolli. Topologia reti. Server e client di rete. Server hardware e server software. Reti locati e reti globali Tecnologie: Reti e Protocolli Reti locali (LAN, Local Area Networks) Nodi su aree limitate (ufficio, piano, dipartimento) Reti globali (reti metropolitane, reti geografiche,

Dettagli

Il funzionamento delle reti

Il funzionamento delle reti Il funzionamento delle reti La rete ci cambia la vita L Età dell Informazione ha prodotto profondi cambiamenti nessun luogo è remoto le persone sono interconnesse le relazioni sociali stanno mutando l

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

Single Sign On sul web

Single Sign On sul web Single Sign On sul web Abstract Un Sigle Sign On (SSO) è un sistema di autenticazione centralizzata che consente a un utente di fornire le proprie credenziali una sola volta e di accedere a molteplici

Dettagli

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni Web service Hello world con Visual Studio 2012 Si tratta di un semplice esempio di web service, infatti come tutti I programmi

Dettagli

Punti fondamentali sulla tecnologia del sistema ABScard

Punti fondamentali sulla tecnologia del sistema ABScard Punti fondamentali sulla tecnologia del sistema ABScard Architettura ABSCARD Pagina 1 di 13 INDICE GENERALE 1 Architettura...3 1.1 Introduzione...3 1.1.1 Sicurezza...4 1.1.2 Gestione...5 1.1.3 ABScard

Dettagli

Il Livello delle Applicazioni

Il Livello delle Applicazioni Il Livello delle Applicazioni Il livello Applicazione Nello stack protocollare TCP/IP il livello Applicazione corrisponde agli ultimi tre livelli dello stack OSI. Il livello Applicazione supporta le applicazioni

Dettagli

Brochure prodotto Infrastrutture di ricarica per veicoli elettrici Servizi di connessione ABB

Brochure prodotto Infrastrutture di ricarica per veicoli elettrici Servizi di connessione ABB Brochure prodotto Infrastrutture di ricarica per veicoli elettrici Servizi di connessione ABB Servizi di connessione Prodotti a supporto del business Per sfruttare al meglio una rete di ricarica per veicoli

Dettagli

Protocolli di rete. Vittorio Maniezzo Università di Bologna. Vittorio Maniezzo Università di Bologna 02 Protocolli - 2/30

Protocolli di rete. Vittorio Maniezzo Università di Bologna. Vittorio Maniezzo Università di Bologna 02 Protocolli - 2/30 Protocolli di rete Vittorio Maniezzo Università di Bologna Vittorio Maniezzo Università di Bologna 02 Protocolli - 1/30 Strati di protocolli (Protocol Layers) Le reti sono complesse Molti elementi: host

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

Capitolo 16 I servizi Internet

Capitolo 16 I servizi Internet Capitolo 16 I servizi Internet Storia di Internet Il protocollo TCP/IP Indirizzi IP Intranet e indirizzi privati Nomi di dominio World Wide Web Ipertesti URL e HTTP Motori di ricerca Posta elettronica

Dettagli

Introduzione a Internet e al World Wide Web

Introduzione a Internet e al World Wide Web Introduzione a Internet e al World Wide Web Una rete è costituita da due o più computer, o altri dispositivi, collegati tra loro per comunicare l uno con l altro. La più grande rete esistente al mondo,

Dettagli

Descrizione generale. Architettura del sistema

Descrizione generale. Architettura del sistema Descrizione generale Sister.Net nasce dall esigenza di avere un sistema generale di Cooperazione Applicativa tra Enti nel settore dell Informazione Geografica che consenta la realizzazione progressiva

Dettagli

Service Oriented Architectures (SOA)

Service Oriented Architectures (SOA) Facoltà di Ingegneria dell Informazione Laurea Specialistica in Ingegneria Informatica Facoltà di Ingegneria dei Sistemi Laurea Magistrale in Ingegneria Biomedica Dipartimento di Elettronica e Informazione

Dettagli

Le Reti (gli approfondimenti a lezione)

Le Reti (gli approfondimenti a lezione) Le Reti (gli approfondimenti a lezione) Per migliorare la produttività gli utenti collegano i computer tra di loro formando delle reti al fine di condividere risorse hardware e software. 1 Una rete di

Dettagli