Présentation généraledes Web Services
Vue GlobaleType darchitecture reposant sur les standards de lInternetAlternative aux architectures classiques :Client/serv...
Architecture web-servicesWeb-services : logiciel qui interagit avec dautres au moyende protocoles & langages universels (h...
Architecture web-servicesUDDI : Universal Desciption, Discovery and Integration peutêtre vu comme les pages blanches (ou j...
InteropérabilitéCapacité des services Web à faire converser des applications &des composants hétérogènesExemple :Réalisati...
Fonctionnement - SOAPUn protocole standard de communication : SOAP (SimpleObject Access Protocol)Ecrit en XMLStandardisé p...
Fonctionnement - XSDUn format standard de représentation des données : XSD(schéma XML)Standardisé par le W3CAssure la comp...
Fonctionnement - WSDLUn langage de description standard : WSDL (Web ServiceDescription Language)Interface présentée aux ut...
Fonctionnement - WSDLWSDL définit :Les Types : un système de types applicable à desdonnées. Utilisation de XML Schema pour...
Fonctionnement - WSDLWSDL définit :La Liaison (binding) : définit le format des messages (parexemple soap:body spécifie qu...
Fonctionnement - UDDIUn mécanisme de découverte : UDDI (Universal DescriptionDiscovery and Integration)Mécanisme permettan...
Fonctionnement - CouchesToutes ces technologies sont disposées en couches etconstitue larchitecture services Web
Exemple : Java & les web-servicesJava dispose de nombreuses API utiles aux services-web :API pour le traitement XML : JAXP...
Fonctionnement - Exempleservice StockQuoteService :Il retourne le cours dune action en bourse, à partir de soncode de cota...
Fonctionnement - ExempleUn utilisateur désire consulter le cours de laction IBM au moyen dunservice Web.1. Pour cela, il i...
Fonctionnement - Exemple2. Il récupère ensuite une interface WSDL , accessible depuis lURL, qui lui permet desavoir commen...
Fonctionnement - Exemple3. À cet instant, le stub va représenter lappel de méthode distante sous la formedune requête SOAP...
Fonctionnement - Exemple4. Sur la machine hébergeant le service, la requête est réceptionnée puis ouverte parun Tie.5. Le ...
SécuritéLes services Web disposent dune norme standard de sécurité quipermet d’assurer la confidentialité des opérations :...
Prochain SlideShare
Chargement dans…5
×

2 20 presentations_generales_des_web_services

457 vues

Publié le

Publié dans : Formation
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
457
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3
Actions
Partages
0
Téléchargements
28
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

2 20 presentations_generales_des_web_services

  1. 1. Présentation généraledes Web Services
  2. 2. Vue GlobaleType darchitecture reposant sur les standards de lInternetAlternative aux architectures classiques :Client/serveurn/tiersOrientée services permettant à des applications decommuniquer sans préoccupation des technologiesdimplantations utilisées de part et dautrePriorité : InteropérabilitéNée fin 90 (Microsoft, IBM, SAP)Basée sur les technologies XML
  3. 3. Architecture web-servicesWeb-services : logiciel qui interagit avec dautres au moyende protocoles & langages universels (http, xml …)Deux formes de services-web : SOAP & XML-RPCPrésentent 2 caractéristiques :Enregistrement (facultatif) auprès dun service derecherche (UDDI)Interface publique avec laquelle le client invoque le serviceWeb (WSDL)
  4. 4. Architecture web-servicesUDDI : Universal Desciption, Discovery and Integration peutêtre vu comme les pages blanches (ou jaunes) des services-web.Cest un annuaire permettant à des fournisseurs de présenterleurs services à des clients.WSDL : Web Service Description Language est un langagereposant sur XML dont on se sert pour décrire les services-web.Il est indispensable à UDDI pour permettre aux clients de trouverles méthodes leur permettant dinvoquer les services web.SOAP : Simple Object Access Protocol est un protocole basésur XML et qui définit les mécanismes déchangesdinformation entre les clients et les fournisseurs de service-web.Les messages SOAP sont susceptibles dêtre transportés en HTTP,SMTP, FTP...XML-RPC : protocole RPC (Remote Procedure Call) basé surXML. Permet donc linvocation de procédure distante surinternet.
  5. 5. InteropérabilitéCapacité des services Web à faire converser des applications &des composants hétérogènesExemple :Réalisation dun service Web permettant de donner lecours dune action en bourse, fonctionnant sous Linux enJavaEt linterroger depuis une page Web Asp.net en mêmetemps que depuis une application PERL ou PHP
  6. 6. Fonctionnement - SOAPUn protocole standard de communication : SOAP (SimpleObject Access Protocol)Ecrit en XMLStandardisé par le W3CPrésentation :Enveloppe pouvant contenir des données ou des piècesjointesCircule sur le protocole HTTPPermet deffectuer des appels à des méthodes distantes
  7. 7. Fonctionnement - XSDUn format standard de représentation des données : XSD(schéma XML)Standardisé par le W3CAssure la compatibilité des données, même sur des plates-formes différentes
  8. 8. Fonctionnement - WSDLUn langage de description standard : WSDL (Web ServiceDescription Language)Interface présentée aux utilisateursDécrit comment utiliser le service et interagir avec luiDescription XML, standardisée W3CAccessible depuis une URL distante
  9. 9. Fonctionnement - WSDLWSDL définit :Les Types : un système de types applicable à desdonnées. Utilisation de XML Schema pour définir les typesde données.Le Message : décrit les données échangées entre servicesweb. Peut-être comparé aux paramètres dun appel deprocédure.Le Type de Port (portType): définit les opérations duservice web et les messages impliqués (de type input,output ou fault). Peut être comparé à une interface Java.
  10. 10. Fonctionnement - WSDLWSDL définit :La Liaison (binding) : définit le format des messages (parexemple soap:body spécifie que le le message considérésera transmis dans la partie body du message soap) et leprotocole utilisé par chaque type de port. Cestlimplémentation de linterface.Le Port : un point de terminaison identifié de manièreunique par la combinaison dune adresse internet et duneliaisonUn Service Web (service) : associe des liaisons à desprocess concrets de mise en oeuvre des opérations quellesdécrivent (typiquement une URL dans le cas dune liaisonmettant en oeuvre SOAP sur HTTP)
  11. 11. Fonctionnement - UDDIUn mécanisme de découverte : UDDI (Universal DescriptionDiscovery and Integration)Mécanisme permettant aux utilisateurs de découvrir quelssont les services qui correspondent à leurs besoinsCes descriptions de services sont centralisées sur un serveurpublic ou privéSemblable à un annuaire
  12. 12. Fonctionnement - CouchesToutes ces technologies sont disposées en couches etconstitue larchitecture services Web
  13. 13. Exemple : Java & les web-servicesJava dispose de nombreuses API utiles aux services-web :API pour le traitement XML : JAXPAPI pour RPC-XML : JAX-RPCAPI pour léchange de données XML : JAXMAPI pour les annuaires XML : JAXRMais il existe surtout des librairies prêtes à lemploi simplifiantgrandement la conception et la consommation de servicesweb :AXIS : cest une implémentation Java de SOAP offerte parlApache Software Foundation qui couvre aussi bien la conceptionque la consommation des services-web.Apache propose aussi une implémentation de XML-RPCApache, propose un framework dédié à linvocation des services-web : WSIF (Web Service Invocation Framework).
  14. 14. Fonctionnement - Exempleservice StockQuoteService :Il retourne le cours dune action en bourse, à partir de soncode de cotation
  15. 15. Fonctionnement - ExempleUn utilisateur désire consulter le cours de laction IBM au moyen dunservice Web.1. Pour cela, il interroge un serveur UDDI dontil connaît ladresse , afin de savoir quels sontles services disponibles correspondant à sesbesoins.Le serveur lui retourne la liste des possibilitésparmi lesquelles il en sélectionne une.À ce stade, lutilisateur ne possède quune URLpointant vers le service sélectionné.
  16. 16. Fonctionnement - Exemple2. Il récupère ensuite une interface WSDL , accessible depuis lURL, qui lui permet desavoir comment utiliser le service.À partir de cette interface, lutilisateur va automatiquement générer les stubs duservice.Stubs :objets locaux disposant des mêmes fonctions que le service distant et quipermettront à lutilisateur daccéder au service distant en toute transparence.Les stubs sont créés grâce à un outil et peuvent être générés dans un grand nombrede langages de programmation différents
  17. 17. Fonctionnement - Exemple3. À cet instant, le stub va représenter lappel de méthode distante sous la formedune requête SOAP dans laquelle seront inclus les paramètres fournis par lutilisateur.Ces paramètres seront empaquetés grâce à la méthode standard de représentationdes données, ce qui permet dassurer la compatibilité inter machines (PC, Mac, etc.).Cette requête est ensuite émise vers lURL désignant le service Web.
  18. 18. Fonctionnement - Exemple4. Sur la machine hébergeant le service, la requête est réceptionnée puis ouverte parun Tie.5. Le service Web, une fois la requête comprise, interroge sa base de données etrécupère le cours de laction IBM .6. Une réponse SOAP est construite puis est émise en direction de lexpéditeur initial.Le stub réceptionne ensuite la réponse, louvre et en extrait le cours delaction IBM quil retourne finalement à lutilisateur
  19. 19. SécuritéLes services Web disposent dune norme standard de sécurité quipermet d’assurer la confidentialité des opérations : WS-Security.Confidentialité (la communication est privée) : assurée parl’utilisation d’une connexion SSL pour le transfert des requêtes SOAPentre le client, d’éventuels intermédiaires et le serveur final.Intégrité (la requête n’est pas modifiée) : elle est assurée soit parl’utilisation d’une connexion SSL ou par l’encodage de la requête àl’aide d’un certificat X.509.Authentification (le message provient bien de la personne qui leprétend) : elle est assurée par l’ajout d’un mot de passe ou d’uncertificat X.509 dans l’entête de la requête.Autorisation (la personne émettrice de la requête peut accéder auxdonnées) : cet aspect de la sécurité est délégué au serveur recevantla requête.

×