Cours No 10 - Conclusion et perspectives



Documents pareils
Programmation Web Avancée Introduction aux services Web

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

4. SERVICES WEB REST 46

Architectures d'intégration de données

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

Introduction aux «Services Web»

Messagerie asynchrone et Services Web

Les nouvelles architectures des SI : Etat de l Art

Description du programme du Master M2 MIAGE SIIN (1)

Bases de données Cours 1 : Généralités sur les bases de données

Urbanisme du Système d Information et EAI

Problématiques de recherche. Figure Research Agenda for service-oriented computing

Introduction à la conception de systèmes d information

Programmation Web. Madalina Croitoru IUT Montpellier

Architectures Web Services RESTful

Module BD et sites WEB

UE 8 Systèmes d information de gestion Le programme

Bien architecturer une application REST

Groupe Eyrolles, 2004, ISBN :

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Urbanisation des SI. Des composants technologiques disponibles. Urbanisation des Systèmes d'information Henry Boccon Gibod 1

Présentation Alfresco

Les Architectures Orientées Services (SOA)

Introduction aux applications réparties

Sécurité des Web Services (SOAP vs REST)

Classification : public 1/59

PROJET 1 : BASE DE DONNÉES REPARTIES

PloneLabs un gestionnaire de contenu pour les laboratoires

La sécurité des processus métiers et des transactions. Stéphane Marcassin Bull Services Sécurité

Chapitre 1 Windows Server

Systèmes d'informations historique et mutations

Urbanisation des SI-NFE107

Les Entrepôts de Données

COMPRENDRE L ARCHITECTURE DES WEB SERVICES REST. Amosse EDOUARD, Doctorant

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

OPEN DATA : CHALLENGES ET PERSPECTIVES D ENTREPOSAGE

SOAP Concepts Application à Glassfish

Volet Synchrone pour Client Lourd

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

WEBSERVICES. Michael Fortier. Master Informatique 2ème année. A308, Université de Paris 13

25 septembre Migration des accès au Registre national en protocole X.25 vers le protocole TCP/IP, pour les utilisateurs du Registre national

Architecture Orientée Service, JSON et API REST

MYXTRACTION La Business Intelligence en temps réel

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

Approche Contract First

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Présentation du cadre technique de mise en œuvre d un Service d Archivage Electronique

CQP Développeur Nouvelles Technologies (DNT)

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Vulnérabilités et sécurisation des applications Web

Le Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan

Oracle Maximum Availability Architecture

les GDT dans le Système d Information informatisé Muriel Pinel Laurent Tabourot

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Intégration de données hétérogènes et réparties. Anne Doucet

Architecture SOA Un Système d'information agile au service des entreprises et administrations

Plateforme PAYZEN. Définition de Web-services

Hébergement de site web Damien Nouvel

Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework

//////////////////////////////////////////////////////////////////// Administration bases de données

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

Hébergement de sites Web

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

Définition des Webservices Ordre de paiement par . Version 1.0

Workflow/DataWarehouse/DataMining LORIA - Université d automne Informatique décisionnelle - L. Mirtain 1

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

Business Process Execution Language

Plan 1/9/2013. Génération et exploitation de données. CEP et applications. Flux de données et notifications. Traitement des flux Implémentation

CONCOURS DE L AGRÉGATION INTERNE «ÉCONOMIE ET GESTION» SESSION 2015 SECONDE ÉPREUVE

L3 informatique TP n o 2 : Les applications réseau

Urbanisation des Systèmes d'information

Mise en œuvre des serveurs d application

Fiche Produit MediaSense Extensions

PHP 5.4 Développez un site web dynamique et interactif

Migration et import de données

Sécurité des entrepôts de données dans le Cloud Un SaaS pour le cryptage des données issues d un ETL

Besoins cliniques et tendances en informatisation des services de santé. Fabien de Lorenzi Directeur principal, Orientation produits

Annexe 5. Kaspersky Security For SharePoint Servers. Consulting Team

Cours Bases de données

État de l art sur la contractualisation et la composition

SQL SERVER 2008, BUSINESS INTELLIGENCE

ANNEXE 2 DESCRIPTION DU CONTENU DE L OFFRE BUSINESS INFORMATION AND ANALYSIS PACKAGE

Formation Cloudera Data Analyst Utiliser Pig, Hive et Impala avec Hadoop

Table des matières Avant-propos... V Scripting Windows, pour quoi faire?... 1 Dans quel contexte?

BPEL Orchestration de Web Services

des besoins de contenu des besoins de forme !"#$%&'($)$*"+,$-.*"#$*"$/.0#12+/13.0#

Exchange 2007 : Améliorations et nouvelles fonctionnalités Atelier 136. Société GRICS

Introduction à LDAP et à Active Directory Étude de cas... 37

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

UFR d Informatique. FORMATION MASTER Domaine SCIENCES, TECHNOLOGIE, SANTE Mention INFORMATIQUE

Exchange Server 2010 Exploitation d'une plateforme de messagerie

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

Introduction aux bases de données Cours 1 : Généralités sur les bases de données

Supplément de renseignements : Examens d applications et pare-feux d applications web clarifiés Normes : Normes en matière de sécurité des données de

L intégration d applications unifiée par les Services Web et XML Réconcilier J2EE.NET EIS et mainframes

Transcription:

B. Amann - Cours No 10 - Conclusion et perspectives 1 Slide 1 Cours No 10 - Conclusion et perspectives Gestion de contenus Web La gestion de contenus Web est possible grâce à des technologies complémentaires pour le traitement de données et de connaissances. Slide 2 Deux piliers : XML = modèles de données : transformation, échange, stockage, interrogation, import/export RDF = modèle de connaissances : description, intégration, raisonnement

B. Amann - Cours No 10 - Conclusion et perspectives 2 Services pour la Gestion de Contenus Web La gestion de contenus Web nécessite le rapprochement de différentes technologies complémentaires : Slide 3 Bases de données : stockage, gestion et interrogation de données XML et de métadonnées RDF intégration de données transactions, cohérence Recherche d information : indexation de texte moteurs de recherche Intelligence artificielle : représentation de connaissances classification de données extraction de métadonnées/connaissances Slide 4 Entrepôts de données : datamining OLAP Traitement de langues naturelles : marquage sémantique de textes non-structurés (XMLisation) Interface utilisateurs : espace d information partagé gestion de communautés virtuels personnalisation (profils utilisateurs)

B. Amann - Un nouveau type de ressources : Les Services Web 3 communication Slide 5 Authorisation et Sécurité : utilisateurs et groupes sessions privilèges transactions sécurisées Slide 6 Un nouveau type de ressources : Les Services Web

B. Amann - Un nouveau type de ressources : Les Services Web 4 Ressources Web Actives Ressource dynamique = géneration dynamique de pages HTML Ressource active = déclenchement de tâches Slide 7 HTML+HTTP+scripts : format d échange : HTML paramètres de type texte interface informel utilisation manuel Services Web Formalisation de la notion de ressource active. XML+SOAP+code : Slide 8 format d échange : XML paramètres de type XML Schéma interface formel : WSDL utilisation automatique

B. Amann - Un nouveau type de ressources : Les Services Web 5 Propriétés des Services Web Indépendance du protocole : SOAP/WSDL Slide 9 des données : XML du code : binding de la localisation : Web Un peut être appelé de partout sur le Web. SOAP : Principes Slide 10 SOAP (Simple Object Access Protocol) est un protocole pour l échange de messages structurés dans un environnement distribué, décentralisé et hétérogène (comme par exemple le Web). Principes : indépendance du protocole sous-jacent (HTTP POST/GET, SMTP, RPC,...) messages autodescriptifs : chaque message décrit l encodage des données (XML, MIME) les types des données XML (XML Schema) des directives de traitement du message à effectuer règles de sérialisation de données structurées traitement d erreurs standardisé

B. Amann - Un nouveau type de ressources : Les Services Web 6 Traitement d un message SOAP Chaque message à un émetteur et suit un chemin à travers une séquence de noeuds. Slide 11 Chaque noeud sur le chemin doit traiter le message : identifier les fragments du message qui le concernent vérifier si toutes les fragments obligatoires sont supportés et les traiter si le noeud n est pas le récepteur final, enlever les fragments du message qui le concernent et renvoyer le message au noeud suivant Structure d un message SOAP Head : fragments à traiter par les s intérmédiaires Body : fragment à traiter par le recepteur final Slide 12

B. Amann - Un nouveau type de ressources : Les Services Web 7 Message SOAP : Exemple Slide 13 <?xml version= 1.0?> <env:envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope"> <env:header> <m:reservation xmlns:m="http://travelcompany.example.org/reservation" env:actor="http://www.w3.org/2001/12/soap-envelope/actor/next" env:mustunderstand="true"> <m:reference>uuid:093a2da1-q345-739r-ba5d-pqff98fe8j7d</reference> <m:dateandtime>2001-11-29t13:20:00.000-05:00</m:dateandtime> </m:reservation> <n:passenger xmlns:n="http://mycompany.example.com/employees" env:actor="http://www.w3.org/2001/12/soap-envelope/actor/next" env:mustunderstand="true"> <n:name>john Q. Public</n:name> </n:passenger> <z:travelpolicy xmlns:z="http://mycompany.example.com/policies" env:mustunderstand="true"> <z:class>economy</z:class> <z:farebasis>non-refundable<z:farebasis> <z:exceptions>none</z:exceptions> </z:travelpolicy> </env:header> Message SOAP : Exemple (bis) Slide 14 <env:body> <p:itinerary xmlns:p="http://travelcompany.example.org/reservation/travel"> <p:departure> <p:departing>new York</p:departing> <p:arriving>los Angeles</p:arriving> <p:departuredate>2001-12-14</p:departuredate> <p:departuretime>late afternoon</p:departuretime> <p:seatpreference>aisle</p:seatpreference> </p:departure> <p:return> <p:departing>los Angeles</p:departing> <p:arriving>new York</p:arriving> <p:departuredate>2001-12-20</p:departuredate> <p:departuretime>mid morning</p:departuretime> <p:seatpreference/> </p:return> </p:itinerary> <q:lodging xmlns:q="http://travelcompany.example.org/reservation/hotels"> <q:preference>none</q:preference> </q:lodging> </env:body> </env:envelope>

B. Amann - Un nouveau type de ressources : Les Services Web 8 Composants d une description WSDL Slide 15 SOAP est un protocole pour l échange de messages, mais ne décrit pas les s Web qui les traitent. WSDL : Langage pour la description de s Web. Description de l interface du : Types : description des données (de paramètres) utilisées dans les messages Messages : description structurée des données échangées Opérations : description abstraite des actions supportées par un. Type de port : ensemble d opérations abstraites supportées par un ou plusieurs s Web Binding : un protocole concret et une spécification de format de données pour un type de port particulier. Description de l implantation du : Port : un point d accès unique défini sous forme d un binding et d une adresse réseau Slide 16 Service Web : un ensemble de ports

B. Amann - Un nouveau type de ressources : Les Services Web 9 Types d opérations Une opération est composée d un message de type input et d un message de type output. Les deux types de messages sont optionnelles et leur ordre désigne le type de l opération : Slide 17 One-way : input sans output Request-response : input suivi de output Solicit-response : output suivi de input Notification : output sans input Services = Ressource Web Un est une ressource Web : N importe qui n importe où peut publier un. Slide 18 On a les mêmes besoins que pour les ressources Web passives : On veut chercher, composer, décrire,... des s.

B. Amann - Services et Données 10 Exemple : Découverte et composition de Services Je veux aller de Paris à Marseille le 1 Juillet et rester 3 jours dans un hôtel. Slide 19 Quels sont les s disponibles? Comment choisir les s? Comment les composer? Est-ce qu il est possible de les composer automatiquement/dynamiquement? Standards et Recherche Il existe un certain nombre de standards pour définir un : WSDL Slide 20 appeler un : SOAP décrire un : UDDI Mais beaucoup de questions restent encore ouvertes : workflow, transactions distribués, qualité de,...

B. Amann - Services et Données 11 Slide 21 Services et Données Le Web Passif XML facilite l échange de donnée entre applications, mais les ressources restent passives! Informations Slide 22 Applications XML Applications Informations

B. Amann - Services et Données 12 Le Web Actif Les s Web donnent la possibilité de manipuler des données gérées localement par des applications indépendantes. Informations Slide 23 Applications Services Web XML Services Web Applications Informations Services et Données Les s Web permettent une autre conception de la gestion d informations (de données) sur le Web. Slide 24 Architecture pair-à-pair (P2P) : plus de distinction entre clients et serveurs de données Avantages : Performance : pas de serveur centralisé Autonomie : chaque pair a le contrôle sur ses données Passage à l échelle : distribution de la charge; replication des données Dynamicité : système ouvert (gestion dynamique des pairs)

B. Amann - ActiveXML 13 Inconvénients : Coût de communication Cohérence des données Qualité des données difficile à maîtriser Slide 25 Slide 26 ActiveXML

B. Amann - ActiveXML 14 ActiveXML Système distribué pour le partage de données et de s Web. Slide 27 En cours de développement au projet Gémo, INRIA-Futurs Principe : Document XML intensionnel Environnement ActiveXML Pair AXML Entrepot AXML Pair AXML Entrepot AXML Document AXML Document AXML Document AXML Slide 28 Pair AXML Entrepot AXML Document AXML Document AXML

B. Amann - ActiveXML 15 Documents Intensionnel Service Web : foot.com Opération : getmatch Paramètres : code de l équipe, code du tournoi Slide 29 <worldcup year="2002"> <sc>foot.com/getmatch("fra","mondial02")</sc> </worldcup> Evaluation Slide 30 <worldcup year="2002"> <sc>foot.com/getmatch("fra", "MONDIAL02")</sc> <match id="1" location="séoul" date="31 May"> <equipe id="fra" score="0"/> <equipe id="sen" score="1"/> </match> <match id="18" location="busan" date="06 Jun"> <equipe id="fra" score="0"/> <equipe id="uru" score="0"/> </match> </worldcup>

B. Amann - ActiveXML 16 Service ActiveXML Slide 31 Requête XML (XOQL) sur des documents ActiveXML : let Resultats($pays) be for $match in document("worldcup.xml")/worldcup/match, $equipe1 in $match/equipe, $equipe2 in $match/equipe where $equipe1/@id=$pays and not($equipe2/@id=$pays) return if ($equipe1/@score < $equipe2/@score) then concat("perdu contre ", string($equipe2/@id)) else if ($equipe1/@score > $equipe2/@score) then concat("gagné contre ", string($equipe2/@id)) else concat("match nul contre ", string($equipe2/@id)) Appel de : http://www.foot.org/resultats("fra") Résultat : Perdu contre SEN, Match nul contre URU Paramètres d un appel de Durée de validité d un résultat Fréquence de rafraichissement d un appel de Slide 32 Mode d évaluation : paresseux immédiat Permet de s adapter à différents style d intégration de données Mediateur (mode=lazy, valid=0) Mediateur avec cache (mode=lazy, valid > 0) Entrepôt (mode=immediate, valid > frequency)

B. Amann - ActiveXML 17 Comment ça marche? Pair AXML Pair AXML Slide 33 Evaluateur Interface SOAP/WSDL Interface SOAP/WSDL documents AXML s AXML Seervice SOAP Client SOAP Typage de documents Active XML Types de noeuds d un document Active XML: éléments, attributs,... Slide 34 appels de : nom + types de paramètres et type du résultat Extension de XML Schéma avec un nouveau type ServiceCall : XMLSchema int

B. Amann - ActiveXML 18 Validation Validation : Slide 35 Les paramètres d un peuvent être validés avant l appel du. Il est possible de contrôler la présence des appels de s dans un document. Validation et sécurité La validation permet de restreindre les appels de s pouvant être utilisés dans un document. Slide 36 Attaque client serveur <sc>qod.com/quoteofday(<sc>buy.com/buycar("bmw Z3")</sc>)</sc> Attaque serveur client (cheval de Troie) <sc>buy.com/buycar("bmw Z3")</sc> Avec validation : Appels de s autorisés dans un paramètre d un appel de (pas d attaque client vers serveur) Vérification du typage du résultat d un appel de (pas d attaque serveur vers client)

B. Amann - Merci pour votre attention! 19 Adaptation par matérialisation On peut adapter automatiquement le degré de matérialisation d un document : Slide 37 Etant donnée un document et un schéma, chercher une séquence de matérialisations (remplacements d un appel de par le type de son résultat) telle que le document est une instance du schéma. Applications : Sécurité : le pair récepteur ne veut pas effectuer certains appels de Performance : diminuer la taille de données échangées (taille(appel) < taille(résultat)) Slide 38 Merci pour votre attention!