Qu’est-ce que le protocole SOAP (Simple Object Access Protocol) ?

SOAP (Simple Object Access Protocol) est le protocole applicatif fondamental basé sur XML utilisé pour mettre en œuvre des services Web au sein d’une SOA (architecture orientée services). SOAP est principalement transporté via HTTP et des systèmes de messagerie middleware (JMS, MQ Series, MSMQ, Tuxedo, TIBCO RV), mais peut également l’être via d’autres protocoles tels que SMTP (Simple Mail Transfer Protocol) et FTP (File Transfer Protocol).

Les messages SOAP comprennent généralement les éléments suivants :

  • Enveloppe : l’enveloppe SOAP est l’élément racine obligatoire d’un message SOAP. En substance, elle contient le message SOAP, tout comme une enveloppe traditionnelle contient une lettre.
  • En-tête : l’en-tête SOAP est facultatif et, lorsqu’il est présent, il contient des informations propres à l’application, telles que des détails sur l’authentification, l’adressage et le routage.
  • Corps : le corps SOAP est obligatoire et contient le message applicatif effectivement transporté, notamment l’opération distante spécifique appelée ainsi que les données (paramètres) échangées.

Les messages SOAP sont souvent volumineux, car ils doivent contenir les informations dont les applications et les clients ont besoin pour analyser les données qu’ils renferment et exécuter la logique appropriée. À mesure que la taille des messages augmente, le traitement requis sur le serveur s’accroît également, ce qui entraîne une hausse de la consommation des ressources du serveur tout en réduisant sa capacité globale. Cette augmentation de taille peut également nuire aux performances des applications reposant sur SOAP, car davantage de ressources réseau sont nécessaires pour transférer les messages.

SOAP reposant sur XML, il est exposé à une multitude d’attaques et de vulnérabilités propres à XML, ainsi qu’aux attaques visant son protocole de couche de transport, le plus souvent HTTP.

Produits F5 permettant de résoudre les problèmes de sécurité et de performances associés à SOAP : BIG-IP Application Security Manager