HP IceWall SSO

HP IceWall技術レポート:ここが知りたい!8.0 の新機能特集 3
コンテンツに進む
オリジナルURL 対応機能特集3:SAP EPとの連携

本記事の内容は、最新版のHP IceWall SSOで新しく検証し、再度レポートいたしております。(2008/07/01)
≫ 最新の検証記事はこちら
オリジナル URL 方式でアクセスするために
自動フォーム認証機能で EP にログインするために

今回は、人・情報・ビジネスプロセスの統合を実現するアプリケーション・プラットフォームである SAP 社の SAP NetWeaver の一部で、ポータルとして使用される SAP Enterprise Portal( 以後、 EP) と HP IceWall SSO( 以後、 IceWall) との認証連携に必要な情報をご紹介いたします。
連携検証を実施した環境は以下の通りです。
【 IceWall サーバ 】
サーバ: HP9000 A500
OS :  HP-UX 11i v1
Web サーバ: Apache/2.0.52 HP-UX_Apache-based_Web_Server (Unix)
HP IceWall SSO : Ver. 7.0 sp2

【 EP サーバ 】
OS :  Windows Server 2003 SE  英語版
SAP Enterprise Portal :  6.0 SR1 ( J2EEEngine : 6.40SP12 )
Oracle DB : 9.2.0.6

今回の検証では、
  • IceWall と EP の認証連携を行い、
  • オリジナル URL 方式を使用し、ユーザが IceWall を経由して EP へアクセスすること
を目的としました。

検証で行った設定内容の概要を、

  1. オリジナル URL でユーザがアクセス可能になる設定
  2. IceWall の自動フォーム認証機能を使用し、 EP へのログインを IceWall で自動的に行う設定
の順に説明いたします。

オリジナル URL 方式でアクセスするために

本検証では HP IceWall SSO Ver.7.0 sp2 を使用したため、 Ver.8.0 から新設された、ホスト設定ファイルの「 UNCONV_HEADER 」を使用しませんでした。そのため、ほぼ同機能を持つフォワーダのユーザ Exit ルーチンを開発しました。このユーザ Exit ルーチンでは、 IceWall 自身が出す Location ヘッダもオリジナル URL に変換する設計としたため、 8.0 では dfw.conf に設定が必要となるキーワード変換が不要でした。
「 UNCONV_HEADER 」の設定以外は、「オリジナル URL 対応機能特集 1 :基本編」の「オリジナル URL 対応の仕組み - 基本編 - 」の内容通りに設定を行いました。

なお、特集 1 では触れていませんが、 IceWall サーバ内部で、「オリジナル URL 」が指すサーバ は、 EP サーバであることにご注意下さい。

以上の設定により、 IceWall 経由で EPにアクセスし、EP のユーザ登録等のオペレーションが問題なく実行できることを確認しました。

自動フォーム認証機能で EP にログインするために

IceWall の自動フォーム認証機能を設定するには、接続する Web システムから送信されるログインフォームページのテキストコンテンツから、ログイン用ページであることを特定できるキーワードを抽出する必要があります。

今回の検証当初、 EP のフォーム認証用ログイン画面を表示させたブラウザの「ページのソース」メニューによる情報から抽出したキーワードで、自動フォーム認証設定を行いましたが、正しく動作しませんでした。原因を調査した結果、ブラウザから ” Accept-Encoding: gzip, deflate” ヘッダを含んだリクエストが送信されているため、 EP が圧縮したログインコンテンツを返却していることがわかりました。 IceWall の自動フォーム認証機能は、 ” Content-Encoding: gzip” ヘッダが付加された圧縮コンテンツに対して動作しません。

そこで、ブラウザから受信した ” Accept-Encoding” ヘッダを EP へ送信しないようにする追加設定( EP 用ホスト設定ファイルの「 HEADER 」項目)を行いました。  

EP 用ホスト設定ファイルへの設定例

HEADER=HTTP_ACCEPT_ENCODING,NOTSEND

HEADER 項目が設定されていない場合

HEADER 項目が設定されている場合

この設定により、 EP がログイン画面のコンテンツを圧縮せずに IceWall へ返却し、 IceWall がコンテンツの解析を行えるようになったため、自動フォーム認証機能が正しく動作するようになりました。
ただし、コンテンツ圧縮せずに通信するため、ブラウザと EP が直接通信する場合より、下りのデータ量が多くなり、より大きな帯域を必要とする恐れがあります。

ログアウト時の動作には多少の工夫が必要です。 EP の右上部にある「ログオフ」をクリックしてログオフが完了すると、 EP のセッション Cookie がない状態で EP 自体にリダイレクトされ、ログイン画面が返却されるフローとなっています。それを IceWall の自動フォーム認証機能が検出して自動認証を行い、 EP への再ログインが実行されてしまいます。
一方、 IceWall 側のログアウト処理を行う( IceWall のログアウト用 URL を指定してアクセスする)と、 EP のログオフは行われず、ブラウザには EP のセッション Cookie が残されます。

この現象を解決するには、ユーザ Exit ルーチンを使用して、 IceWall でログアウト処理を行うタイミングに、 EP に対してログオフの POST 電文を送信する等の対策が考えられます。(今回は未検証)

この現象は EP 特有のものではなく、自動フォーム認証機能を使用する場合に多く発生するケースであり、同様の対策によって、 IceWall ・バックエンドアプリケーション双方でログアウトを実施することが可能となります。

今回の検証では、フォーム認証を使って EP へのログインを行いました。 EP はヘッダ認証を使ったログインも可能とのことですので、その場合には、自動フォーム認証機能ではなく情報継承機能で IceWall と EP の認証連携も可能と考えられます。

2006.03.23. 日本ヒューレット・パッカード コンサルティング・インテグレーション統括本部 テクニカルコンサルタント 林 理絵
●関連技術レポート
≫ ここが知りたい!8.0 の新機能特集(1) - オリジナルURL対応機能特集1: 基本編
≫ ここが知りたい!8.0 の新機能特集(2) - オリジナルURL対応機能特集2: ERPパッケージへの適用
≫ ここが知りたい!8.0 の新機能特集(3) - オリジナルURL対応機能特集3: SAP EPとの連携(本トピックス)
≫ ここが知りたい!8.0 の新機能特集(4) - オリジナルURL対応機能特集4: SAP EPとの連携(更新版)