シンプル オブジェクト アクセス プロトコル (SOAP) とは何ですか?

SOAP (Simple Object Access Protocol) は、 SOA (サービス指向アーキテクチャ) 内で Web サービスを実装するために使用される基本的な XML ベースのアプリケーション プロトコルです。 SOAP は主に HTTP およびミドルウェア メッセージング システム (JMS、MQ シリーズ、MSMQ、Tuxedo、TIBCO RV) を介して転送されますが、SMTP (Simple Mail Transfer Protocol) や FTP (File Transfer Protocol) などの他のプロトコルを介して転送することもできます。

SOAP メッセージは通常、次の要素で構成されます。

  • 封筒: SOAP エンベロープは SOAP メッセージのルート要素であり、必須です。 本質的には、従来の封筒に手紙が入っているのと同じように、封筒には SOAP メッセージが含まれています。
  • ヘッダー: SOAP ヘッダーはオプションであり、存在する場合は、認証、アドレス指定、ルーティングの詳細などのアプリケーション固有の情報が含まれます。
  • 体: SOAP 本文は必須であり、呼び出される特定のリモート操作や交換されるデータ (パラメーター) など、転送される実際のアプリケーション メッセージが含まれます。

SOAP メッセージは、アプリケーションやクライアントがメッセージ内に含まれるデータを解析し、適切なロジックを実行するために必要な情報を含める必要があるため、サイズが大きくなることがよくあります。 メッセージのサイズが大きくなるにつれて、サーバー上で必要な処理も増加し、サーバーのリソースの消費が増加し、全体的な容量が減少します。 サイズが大きくなると、メッセージを転送するためにより多くのネットワーク リソースが必要になるため、SOAP 上に構築されたアプリケーションのパフォーマンスに悪影響を与える可能性もあります。

SOAP は XML ベースであるため、XML に焦点を当てた多数の攻撃や脆弱性に対して脆弱であり、さらに、トランスポート層プロトコル (ほとんどの場合 HTTP) に関連する攻撃に対しても脆弱です。

SOAP に関連するセキュリティとパフォーマンスの問題に対処できる F5 製品: BIG-IPアプリケーション セキュリティ マネージャー