soap

22
Le protocole SOAP Les Services Web Driss BOUNOUAR Ismail AZHARI Khalid ATIAB EL IDRISSI Faiçal Ahmed ABOULAIT Présentent:

Upload: driss-bounouar

Post on 13-May-2015

725 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Soap

Le protocole SOAP

Les Services Web

Driss BOUNOUARIsmail AZHARI

Khalid ATIAB EL IDRISSIFaiçal Ahmed ABOULAIT

Présentent:

Page 2: Soap

• Introduction Web services– C'est quoi un service web– L'architecture du services web– Messagerie XML (xml-rpc , SOAP)– C'est quoi un WSDL

• Protocole SOAP– Définition– Problémes

• Apache Axis– Framework Apache Axis– Securité Apache Axis– Simulation

Plan:

Page 3: Soap

INTRODUCTION WEB SERVICES

Page 4: Soap

Un service web c'est tout service :– Disturbié sur le web– Utilise les messages XML ( format text

simple)– Independant de la plate-forme ou du

langage utilisé.– Sans intervention humaine, et de

manière synchrone

C'est quoi un service web

Page 5: Soap

Il y a deux façon dont on peut voir l'architecture des services web:

Web Service Roles

Web Service Protocol Stack

L'architecture du services web

Page 6: Soap

Web Service Roles

Page 7: Soap

Web Service Protocol Stack

Discovery UDDI

Description WSDL

XML Messaging XML-RPC,SOAP,XML

Transport HTTP,SMTP,FTP,BEEP

permet de localiser sur le réseau le service Web recherché.

Responsible du transport du message

comment communiquer pour utiliser le service 

Responsible de l’encodage des messages en format XML standard

Page 8: Soap

XML-RPC:

• Un simple protocole RPC• Permet à des processus s'exécutant  dans

des environnements différents de communiquer

• Pas restriction de système ou de langage.

Messagerie XML (xml-rpc , SOAP)

Page 9: Soap

• Web Services Description Language• Fichier en format XML• Sert à décrire l'interface publique d'accés au

service • À 6 élements principales:

1. definitions – définit le nom du web service2. types – decrit les paramétres et variables qui

seront transmit 3. message – définit le nom du message transmit4. portType – définit les operations à invoquer5. binding – définit le protocole à utiliser pour

invoquer le service web6. service – décrit un ensemble de points finaux

du réseau

C’est quoi un WSDL

Page 10: Soap

Présentation SOAP

Page 11: Soap

SOAP est un protocole d’invocation de méthodes sur des services distants, Basé sur XML.

SOAP est un format de communication pour assurer la communication entre machines.

Le protocole permet d’appeler une méthode RPC et d’envoyer des messages aux machines distantes via HTTP(STMP,…).

Très bien adapté à l’utilisation des services web.

SOAP (Simple Object Access Protocol) :

Page 12: Soap

Ces problèmes concernent principalement l’interopérabilité des messages SOAP de type RPC.

Ils peuvent être divisés en trois catégories :

a) problèmes http b) problèmes XML C) problèmes liés au protocole SOAP

Problèmes posés par SOAP

Page 13: Soap

HTTP est utilisé pour le transport des messages SOAP en XML.

Or certaines balises spécifiques à SOAP ne vont pas être bien interprétées par tous les clients HTTP. Cela va dépendre du client et ne pas fonctionner dans certains cas.

Exemple de la fonction SOAPAction : la valeur de SOAPAction doit être en guillemets sauf s’il s’agit d’une valeur nulle.

a) problèmes http

Page 14: Soap

Les problèmes d’interopérabilité XML concernent l’analyse du langage XML.

SOAP repose sur l’utilisation de ce langage, donc si XML pose des problèmes d’implémentations, ceux-ci vont poser des problèmes sur SOAP.

b) Problèmes XML

Page 15: Soap

Il existe un certain nombre de problèmes d’interopérabilité comme par exemple le problème lié à l’implémentation de l’attribut «ustUnderstand ». Les spécifications de SOAP indiquent que si cet attribut est défini sur la valeur « 1 », il devra être traité. Pourtant certaines implémentations de SOAP ne le font pas (principalement les premières à avoir été développées).

c) Problèmes liés à SOAP

Page 16: Soap

APACHE AXIS

Page 17: Soap

• C'est serveur et client SOAP open source• une API pour développer des services

web SOAP RPC ou à base de messages SOAP

• La sérialisation/désérialisation automatique d'objets Java dans des messages SOAP

• Des outils pour créer automatiquement les WSDL correspondant à des classes Java ou inversement 

• Des outils pour déployer, tester et monitorer des web-services

Apache Axis?

Page 18: Soap

Failles de sécurtés attendues:• Refuser à un service d'acceder au service • L'interception et la manipulation des

messages • Requête client faussé • Reponse serveur faussé• Tenter de lire et modifier les fichiers du

serveur • Special XML attacks• Session Theft, DOS attacks via load-

intensive operations, Parameter Attacks, Cross Site Scripting

Securité Apache Axis

Page 19: Soap

Solution :• Utiliser le mécanisme d'authentification du

protocole HTTP(HTTP basic authentication)• Utiliser les certificats • Sécurisé la session par la géneration de

session Ids difficile • Validé les parametre contenu dans les

messages SOAP• Déguisement, Modifier Axis, Renomer les

services• Arrêter la géneration automatique de

WSDL.

Securité Apache Axis

Page 20: Soap

Simulation

Créer les fichiers java pour le serveur et le

client

Génerer Le WSDL par le biais de Apache Axis

Ajouter le WSDL au serveur apache qui

supporte SOAP

Page 22: Soap

Merci d'avoir suivi