クライアント・サイド要求送信側 (ibm-webservicesclient-bnd.xmi ファイル) またはサーバー・サイド要求受信側 (ibm-webservices-bnd.xmi ファイル) は、WebSphere Application Server 管理コンソールを使用して構成できます。
始める前に
重要: バージョン 5.x とバージョン 6 以降のアプリケーションとの間には重要な相違点があります。
この資料の情報は、WebSphere Application Server バージョン 6.0.x 以降で使用されるバージョン 5.x アプリケーションのみをサポートしています。この情報はバージョン 6.0.x 以降のアプリケーションには適用されません。
以下のステップを実行するには、
Java 2 Platform, Enterprise Edition (J2EE) 仕様に基づいて Web サービスが作成済みであることが前提になります。
サーバーの Web サービス・セキュリティー・バインディング情報を管理する方法の概要については、以下のいずれかのトピックを参照してください。
このタスクについて
この資料では、要求送信側 (
ibm-webservicesclient-ext.xmi および
ibm-webservicesclient-bnd.xmi ファイル) と要求受信側 (
ibm-webservices-ext.xmi および
ibm-webservices-bnd.xmi ファイル) にプラグ可能トークンを構成する方法について説明します。
重要: 要求送信側と要求受信側はペアになっているので、その両方にプラグ可能トークンが必要です。
受信側が要求を受け入れるためには、要求送信側と要求受信側が正しいペアになっている必要があります。
これらのステップを実行するには、Web サービス対応のエンタープライズ・アプリケーションを WebSphere Application Server にデプロイ済みであることが前提になります。
以下のステップに従って、クライアント・サイド要求送信側 (
ibm-webservicesclient-bnd.xmi ファイル) またはサーバー・サイド要求受信側 (
ibm-webservices-bnd.xmi ファイル) を、WebSphere Application Server 管理コンソールを使用して構成します。
- 「アプリケーション」>「エンタープライズ・アプリケーション」>「enterprise_application」とクリックします。
- 「関連項目」の下で「EJB モジュール」または「Web モジュール」
>「URI」とクリックします。URI は、Web サービス対応のモジュールです。
- Web サービスがクライアントとして動作している場合は、「追加プロパティー」の下の「Web サービス:
クライアント・セキュリティーのバインディング」をクリックして、応答送信側のバインディング情報を編集します。
- 「応答送信側のバインディング」の下の「編集」をクリックします。
- 「追加プロパティー」の下の「ログイン・バインディング」をクリックします。
- 新規のログイン・バインディングを定義するには、「Dedicated login binding」を選択します。
- 認証メソッドを入力します。入力する認証メソッドは、IBM 拡張デプロイメント記述子に定義された認証メソッドに一致している必要があります。
この認証メソッドは、バインディング・ファイル内で固有である必要があります。
- JAAS javax.security.auth.callback.CallbackHandler インターフェースのインプリメンテーションを入力します。
- 基本認証情報 (ユーザー ID とパスワード) を入力すると、入力した基本認証情報は CallbackHandler のインプリメンテーションの構成体に渡されます。
基本認証情報の使用法は CallbackHandler のインプリメンテーションによって異なります。
- トークン値タイプを入力します。トークン値タイプは、BasicAuth、Signature および IDAssertion 認証メソッドではオプションですが、その他の認証メソッドでは必須です。
トークン値タイプは、バイナリー・セキュリティー・トークンの <wsse:BinarySecurityToken>@ValueType に挿入され、XML ベースのトークンのネーム・スペースとして使用されます。
- 「プロパティー」をクリックします。プロパティーは名前と値のペアとして定義します。
定義したペアは、java.util.Map として CallbackHandler のインプリメンテーションの構成体に渡されます。
ログイン・バインディングを選択解除するには、「なし」を選択します。
- 「追加プロパティー」の下の「Web サービス: サーバー・セキュリティーのバインディング」をクリックして、要求受信側のバインディング情報を編集します。
- 「要求受信側のバインディング」の下の「編集」をクリックします。
- 「追加プロパティー」の下の「Login mappings」をクリックします。
- 新規のログイン・マッピングを作成するには、「新規」をクリックします。
- 認証メソッドを入力します。入力する認証メソッドは、IBM 拡張デプロイメント記述子に定義された認証メソッドに一致している必要があります。
この認証メソッドは、バインディング・ファイルのログイン・マッピング・コレクション内で固有である必要があります。
- JAAS ログイン構成名を入力します。JAAS ログイン構成は、「セキュリティー」>「グローバル・セキュリティー」で定義する必要があります。
「認証」の下で「JAAS 構成」>「アプリケーション・ログイン」とクリックします。
詳しくは、Java Authentication and Authorization Service のプログラマチック・ログインの構成
を参照してください。
- com.ibm.wsspi.wssecurity.auth.callback.CallbackHandlerFactory インターフェースのインプリメンテーションを入力します。
これは必須フィールドです。
- トークン値タイプを入力します。トークン値タイプは、BasicAuth、Signature および IDAssertion 認証メソッドではオプションですが、その他の認証メソッドでは必須です。
トークン値タイプは、バイナリー・セキュリティー・トークンの <wsse:BinarySecurityToken>@ValueType に対して、および XML ベースのトークンのネーム・スペースに対する検証で使用されます。
- 「プロパティー」をクリックして、「Login Mapping Property」の名前と値のペアを入力します。
入力した名前と値のペアは、1 つ以上の JAAS ログイン・モジュールから com.ibm.wsspi.wssecurity.auth.callback.PropertyCallback JAAS コールバックによって使用可能です。注: これは、既存のログイン・マッピングを編集する場合には当てはまりますが、新規のログイン・マッピングを作成する場合には当てはまりません。
- 「Callback Handler Factory Property」の名前と値のペアを入力します。入力した名前と値のペアは、java.util.Map として com.ibm.wsspi.wssecurity.auth.callback.CallbackHandlerFactory.init() メソッドに渡されます。名前と値のペアの使用法は、CallbackHandlerFactory インプリメンテーションによって異なります。
- 選択したログイン・マッピングを編集するには、認証メソッド・リンクをクリックします。
- 選択した 1 つ以上のログイン・マッピングを除去するには、「除去」をクリックします。
- 「保管」をクリックします。
結果
上記のステップでは、SOAP メッセージでセキュリティー・トークンを作成するように要求送信側を構成し、着信 SOAP メッセージ内で検出されたセキュリティー・トークンを検証するように要求受信側を構成する方法を定義しています。
WebSphere Application Server は、プラグ可能セキュリティー・トークンをサポートしています。
ログイン・バインディングおよびログイン・マッピングに定義されている認証メソッドを使用して、要求送信側でセキュリティー・トークンを生成し、要求受信側でセキュリティー・トークンを検証できます。
次の作業
プラグ可能トークンを構成したら、クライアントおよびサーバーの両方を、プラグ可能トークンをサポートするように構成する必要があります。
クライアントおよびサーバーを構成するには、以下のトピックを参照してください。