第10章 WS-Security

WS-Security を使用すると、HTTPS などのトランスポートレベルプロトコルを超えたサービスをセキュアにできます。XML-Encryption や WS-Security 標準で定義されたヘッダなどの標準を介して、以下のことを行えます。
  • サービス間で認証トークンを受け渡します。
  • メッセージまたはメッセージの一部を暗号化します。
  • メッセージを署名します。
  • メッセージをタイムスタンプします。
現在、CXF は WSS4J を統合して WS-Security を実装します。統合を使用するには、これらのインターセプタを設定し、サービスまたはクライアントにそれぞれ追加する必要があります。

10.1. 暗号化と署名の概要

WS-Security ではパブリックおよびプライベートキー暗号化を頻繁に使用します。WS-Security の設定方法をよく理解するにはこれらの基本を理解することが役に立ちます。これらは大きいプライム番号およびキー機能を使用して生成されます。
キーは数学的に関連しますが、お互いから派生することはできません。これらのキーを使用すると、メッセージを暗号化できます。たとえば、Bob が Alice にメッセージを送信する場合、Bob は Alice のパブリックキーを使用してメッセージを暗号化できます。Alice は自分のプライベートキーを使用してこのメッセージを復号化できます。Alice のみがプライベートキーを持っているため、このメッセージを復号化できるのは Alice だけです。
また、メッセージは署名することもできます。これにより、メッセージの信憑性が確認されます。Alice がメッセージを Bob に送信し、Bob がそのメッセージが Alice から送信されたことを確認する場合、Alice はプライベートキーを使用してメッセージを署名できます。Bob はパブリックキーを使用してメッセージが Alice から送信されたことを確認できます。