Web サービス・オペレーションのパスワード保護

その Web サービス・オペレーションと一致するメソッドを持つエンタープライズ Bean を作成してから、WebSphere® Application Server の認証メカニズムをそのエンタープライズ Bean に適用することによって Web サービス内の個々のオペレーション (メソッド) をパスワード保護し、Web サービス・オペレーションが呼び出される前に許可のための EJB メソッド呼び出しが行われるようにします。

始める前に

このトピックで説明する Web サービス・オペレーションのパスワード保護のほかに、 サービスをインバウンド・サービスまたはアウトバウンド・サービスとして構成し、 「操作レベル・セキュリティーの使用可能化」 オプションを選択する必要もあります。 詳しくは、既存のインバウンド・サービス構成の変更既存のアウトバウンド・サービス構成の変更に記載されています。

サービス統合バスにデプロイされたアプリケーションでオペレーション・レベルのセキュリティーを使用するには、アプリケーション・サーバーのクラス・ローダーのポリシーを "single" に設定する必要があります。これについては、サーバーのクラス・ローダーの構成に記載されています。

このタスクについて

オペレーション・レベル許可の場合、 Web サービス・オペレーションと一致するメソッドを用いて エンタープライズ Bean を作成します。 これらの EJB メソッドは、オペレーションを実行せず、セキュリティーを適用するためのエンティティーにすぎません。 その後、WebSphere Application Server の既存の認証メカニズムを、Enterprise Bean に適用します。 Web サービス・オペレーションが呼び出される前に、呼び出しが EJB メソッドに対して行われます。 許可が与えられると、Web サービスが呼び出されます。

ターゲット Web サービスは、それを EAR ファイル (your_webservice.ear) でラップし、 その EAR ファイルにロール・ベースの許可を適用することによって保護されます。 このプロセスは、オペレーション・レベルのセキュリティー - ロール・ベースの許可で概説されています。your_webservice.ear ファイルは、次に sibwsauthbean.ear ファイルにインポートされ、sibwsauthbean.ear ファイルは、ロールを設定してそれらをメソッドに割り当てるように変更されます。さらに、変更された sibwsauthbean.ear ファイルは、WebSphere Application Server にデプロイされ、ユーザーが、事前定義されたロールに割り当てられます。

sibwsauthbean.ear ファイルのインストール・バージョンは、app_server_root/installableApps ディレクトリーにあります。app_server_rootWebSphere Application Server のインストール用のルート・ディレクトリーです。

sibwsauthbean.ear ファイルには、保護する各 Web サービスの EAR ファイルが含まれています。オペレーション・レベル許可を使用して保護する最初の Web サービス は、インストール・バージョンの sibwsauthbean.ear ファイルをコピーして、 アプリケーション・サーバー・ファイル・システム外に保管します。 以後は、Web サービスを保護するたびに、 sibwsauthbean.ear ファイルの同じコピーをさらに変更します。

[z/OS]オペレーション・レベル許可を使用可能にするには、 sibwsAuthGen コマンドと、 アセンブリー・ツールを使用します。これらのツールは Windows システムでしか使用できないため、 このタスクに必要なすべてのファイルを Windows システムに (バイナリーで) コピーし、 Windows システム上で EAR ファイルを作成および変更して、 変更した sibwsauthbean.ear ファイルを z/OS® システムに再び (バイナリーで) コピーする必要があります。

Web サービス・オペレーションをパスワードで保護するには、保護する Web サービスごとに以下のステップを実行します。

手順

  1. [IBM i][AIX Solaris HP-UX Linux Windows]初めて Web サービスを保護する場合は、 アプリケーション・サーバー・ファイル・システム外の任意の場所に、app_server_root/installableApps/SIBWSauthbean.ear ファイルをコピーします。
  2. [z/OS]保護する最初の Web サービスの場合は、以下のステップを実行します。
    1. アプリケーション・サーバー・ファイル・システム外の任意の場所に、app_server_root/installableApps/SIBWSauthbean.ear ファイルをコピーします。
    2. Windows システムに、アセンブリー・ツールをインストールします。
    3. Windows システム上に、任意の名前 (/your_dir など) を付けたディレクトリーを作成し、 このディレクトリーにサブディレクトリー lib を作成します。
    4. File Transport Protocol (FTP) を使用して、z/OS のターゲット・アプリケーション・サーバーから以下のファイルを Windows システムにコピー (バイナリーで) します。
      新規ディレクトリー (/your_dir など) に以下のファイルをコピーします。
      • app_server_root/util/SIBWSAuthGen.bat
      新規サブディレクトリー lib (/your_dir/lib など) に以下のファイルをコピーします。
      • app_server_root/lib/commons-logging-api.jar
      • app_server_root/lib/qname.jar
      • app_server_root/lib/wsdl4j.jar
      • app_server_root/lib/wsif.jar
      • app_server_root/lib/xerces.jar
  3. [z/OS]File Transport Protocol (FTP) を使用して、 z/OS システムの sibwsauthbean.ear ファイルのコピーを、 Windows システムのディレクトリー (/your_dir など) に (バイナリーで) 作成します。
  4. your_webservice.ear ファイルを作成するには、以下のステップを実行します。
    1. [IBM i][AIX Solaris HP-UX Linux Windows]コマンド・プロンプトを開きます。
    2. [IBM i][AIX Solaris HP-UX Linux Windows]app_server_root/util ディレクトリーに移動します。
    3. [z/OS]Windows システムでコマンド・プロンプトを開きます。
    4. [z/OS]ユーザーが作成したディレクトリー (your_dir など) に移動します。
    5. [z/OS]以下のいずれかのコマンドを入力して、 新規ディレクトリーを指すように WAS_HOME 環境変数を設定します。
      set WAS_HOME=path_to_new_directory
      または
      set WAS_HOME=
      ここで、path_to_new_directory は、新規ディレクトリーの絶対パスです。
    6. [z/OS]アセンブリー・ツールが提供される Java 仮想マシンを指すパスを設定します。
    7. [z/OS]以下のコマンドを入力して、クラス・パスを更新します。
      set classpath=lib¥commons-logging-api.jar;lib¥j2ee.jar;lib¥qname.jar;lib¥wsdl4j.jar;lib¥wsif.jar;lib¥xerces.jar;
    8. 次のコマンドを入力します。
      sibwsAuthGen location your_webservice_name
      各部の意味は、次のとおりです。
      • location は、サービス WSDL ロケーションです。アウトバウンド・サービスの場合、外部 Web アドレスにあるターゲット WSDL ファイルが必要です。インバウンド・サービスの場合、サービスのエンドポイントのエンドポイント・リスナーにあるテンプレート WSDL ファイルが必要です。
      • your_webservice_name は、WSDL ファイルのロケーション・フィールドで定義されている保護するサービスの名前です。これには大/小文字の区別があります。
      注: 特定のインバウンド・サービス WSDL ファイルのロケーションの詳細については、既存インバウンド・サービス構成の変更に記載されているように、WSDL ファイルを圧縮ファイルとして発行して、エクスポートした WSDL ファイル内でロケーションを検索します。あるいは、以下の標準 Web サービス・クエリーを使用して、インバウンド・サービス WSDL ファイルを取得することができます。
      http://host_name:port_number/epl_context_root/soaphttpengine/bus_name/inbound_service_name/inbound_port_name?wsdl
      ここで、host_name および port_number は、このアプリケーション・サーバーのホスト名と ポート番号です。 epl_context_root は、エンドポイント・リスナー・アプリケーションのコンテキスト・ルートです。 これについては、既存のエンドポイント・リスナー構成の変更に記載されています。

      sibwsAuthGen コマンドの使用例:

      (アウトバウンド・サービス):
      sibwsAuthGen http://www.somecompany.com/targetservice/wsdl/targetservice.wsdl targetServiceName
      (インバウンド・サービス):
      sibwsAuthGen http://your.server.name:9080/wsgwsoaphttp1/soaphttpengine/yourbus/yourservice/inboundport1?wsdl yourservicename
    your_webservice.ear ファイルは、 現行ディレクトリーに作成されます。一時ディレクトリー current_directory/ejb もありますが、 これは削除してもかまいません。
  5. ロールの割り当てとメソッドの保護を終了するには、アセンブリー・ツールによる Web サービス・オペレーションのパスワード保護のトピックに記載されているステップを実行します。
  6. sibwsauthbean.ear ファイルの変更済みコピーをインストールするには、以下のステップを実行します。
    1. [IBM i][AIX Solaris HP-UX Linux Windows]変更した sibwsauthbean.ear ファイルが、 ステップ 1 で選択したアプリケーション・サーバー・ファイル・システム外の任意の場所に保管されていることを確認します。 変更した sibwsauthbean.ear ファイルは、以後の再利用や変更のために、この場所に保持します。
    2. [z/OS]FTP を使用して、変更した sibwsauthbean.ear ファイルを、 ステップ 1 で選択した z/OS システムの任意の場所に (バイナリーで) コピーします。 変更した sibwsauthbean.ear ファイルは、以後の再利用や変更のために、このロケーションに保管します。
    3. WebSphere Application Server 管理コンソールを開始します。
    4. ナビゲーション・ペインで、「アプリケーション ->「新規アプリケーション」」をクリックします。
    5. 新規エンタープライズ・アプリケーション」オプションを使用して、sibwsauthbean.ear ファイルの変更済みコピーをインストールします。 プロンプトが出されたら、ロールに割り当てるユーザーまたはグループを選択します。

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



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