はじめに: ポリシー・セットおよびデフォルト・バインディングを使用したメッセージの署名と暗号化

この手順では、カスタム・ポリシー・セットおよびデフォルト・バインディングを使用する SOAP メッセージの署名と暗号化のために、メッセージ・レベルの WS-Security ポリシー・セットおよびバインディングを構成する方法について説明します。このタスクは、 JAX-WS アプリケーションにWS-Security 制約を追加する方法を分かりやすく説明することを目的としています。

始める前に

このタスクでは、構成しているサービス・プロバイダーとクライアントが、JaxWSServicesSamples アプリケーション内にあることを想定しています。このアプリケーションの取得とインストールの方法について詳しくは、『サンプルへのアクセス』を参照してください。

サーバーで以下のトレース仕様を使用します。これらの仕様を使用することによって、今後発生する可能性がある構成の問題をデバッグできます。
*=info:com.ibm.wsspi.wssecurity.*=all:com.ibm.ws.webservices.wssecurity.*=all: 
    com.ibm.ws.wssecurity.*=all: com.ibm.xml.soapsec.*=all: com.ibm.ws.webservices.trace.*=all: 
    com.ibm.ws.websvcs.trace.*=all:com.ibm.ws.wssecurity.platform.audit.*=off:

このタスクについて

この手順では、非対称 XML デジタル署名および暗号化の WS-Security 制約を使用するように、WS-Security ポリシー・セットを構成するために必要な操作について説明します。この手順ではバインディングを割り当てることはないため、クライアントとプロバイダーの両方でデフォルト・バインディングが使用されます。

このアプリケーションにポリシー・セットおよびバインディングを適用するには、 管理コンソールで「アプリケーション」 >「アプリケーション・タイプ」 > 「WebSphere エンタープライズ・アプリケーション」 > 「JaxWSServicesSamples」とクリックします。独自のアプリケーションを使用する場合は、以下のパスを代替手段として使用して、ポリシー・セットおよびバインディングの関連付けの対象となるプロバイダーおよびクライアントにアクセスできます。
  • 「サービス」 > 「サービス・プロバイダー」 > AppName
  • 「サービス」 > 「サービス・クライアント」 > AppName

手順

  1. カスタム・ポリシー・セットを作成します。
    1. 管理コンソールで、「サービス」 > 「ポリシー・セット」 > 「アプリケーション・ポリシー・セット」とクリックします。
    2. 「新規」をクリックします。
    3. Name=SimpleSignEncPolicy と指定します。
    4. 適用」をクリックします。
    5. 「ポリシー」の下で、「追加」>「WS-Security」とクリックします。
    デフォルトでは、ポリシーの構成は以下のようになります。
    • アウトバウンド・メッセージでタイム・スタンプが送信される
    • インバウンド・メッセージでタイム・スタンプが要求される
    • 要求と応答 (本文、WS-Addressing ヘッダー、タイム・スタンプ) に署名する
    • 要求と応答 (本文、および SOAP セキュリティー・ヘッダー内のシグニチャー・エレメント) を暗号化する
  2. 保存」をクリックして、構成変更を保存します。
  3. SimpleSignEncPolicy ポリシー・セットを使用するようにクライアントを構成します。
    1. 管理コンソールで、「アプリケーション」>「アプリケーション・タイプ」>「WebSphere エンタープライズ・アプリケーション」>「JaxWSServicesSamples」>「サービス・クライアントのポリシー・セットおよびバインディング」とクリックします。
    2. Web サービス・クライアント・リソース (JaxWSServicesSamples) を選択します。
    3. 「ポリシー・セットの関連付け」をクリックします。
    4. 「SimpleSignEncPolicy」を選択します。
  4. SimpleSignEncPolicy ポリシー・セットを使用するようにプロバイダーを構成します。
    1. 管理コンソールで、「アプリケーション」>「アプリケーション・タイプ」>「WebSphere エンタープライズ・アプリケーション」>「JaxWSServicesSamples」>「サービス・プロバイダーのポリシー・セットおよびバインディング」とクリックします。
    2. Web サービス・プロバイダー・リソース (JaxWSServicesSamples) を選択します。
    3. 「ポリシー・セットの関連付け」をクリックします。
    4. 「SimpleSignEncPolicy」を選択します。
  5. 保存」をクリックして、構成変更を保存します。
  6. クライアントとプロバイダーを再始動します。
    1. クライアントとプロバイダーを停止します。
    2. クライアントとプロバイダーを再始動します。
  7. サービスをテストします。
    1. Web ブラウザーで JAXWSServicesSamples (http://localhost:9080/wssamplesei/demo) にアクセスします。
      トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): プロバイダーが同じマシン上にない場合、またはポートが 9080 でない場合は、必ず正しいホスト名とポートを指定してください。gotcha
    2. 「Message Type Synchronous Echo」を選択します。
    3. 「SOAP 1.2 の使用 (Use SOAP 1.2)」が選択されていないことを確認します。
    4. メッセージを入力し、「メッセージの送信 (Send Message)」をクリックします。
    サンプル・アプリケーションが JAXWS==>Message で応答するはずです。

タスクの結果

非対称 XML デジタル署名および暗号化を使用して、クライアントおよびプロバイダーのデフォルト汎用バインディングを使用する SOAP 要求および応答を保護するように、JaxWSServicesSamples Web サービス・アプリケーションが構成されました。

次のタスク

このタスクを完了した後、もっと複雑な以下のような構成に進むことができます。
  • クライアントおよびプロバイダーの汎用バインディングを使用した、非対称 XML デジタル署名/XML 暗号化用のポリシー・セットおよびバインディングの構成
  • クライアントおよびプロバイダーのアプリケーション固有バインディングを使用した、非対称 XML デジタル署名/XML 暗号化用のポリシー・セットおよびバインディングの構成
  • クライアントおよびプロバイダーのアプリケーション固有バインディングを使用した、XML デジタル署名用のポリシー・セットおよびバインディングの構成

トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_getstart_policyset
ファイル名:twbs_getstart_policyset.html