ステップ2 IBM i Webサーバー構成を更新する

IBM i LANSA

ステップ2. IBM i Webサーバー構成を更新する

*ADMINインスタンスを開始して、IBM Web Administration for i5/OSを使用し、サーバーを構成します。

次に、このライブラリのWebサーバーの別名を作成する必要があります。デフォルトでは、LANSA for the Webは別名をAUTHLIBとして割り当てます。別名AUTHLIBがセットアップされた後は、ユーザー認証が必要となるようにLANSA通信ライブラリであるDCXCOMLIBを構成します。つまり、CGI-BINライブラリではユーザー認証は要求しませんが、プロセスで認証が必要な場合は、その要求は確認のため必ずAUTHLIB URLパスに転送されます。

認証用のWebサーバーの別名を作成します。

Web Administration for IBM iを使用して、[サーバー・プロパティ]メニュー・ツリーを展開します。

1.   URL マッピングメニュー項目をクリックします。

2.   別名タブの[追加]をクリックします。

3.   [スクリプト別名マッチング]を選択します。

4.   LANSAWEB CGIプログラムのURLパスを^/authlib/lansaweb(.*)に設定します。

5.   ホスト・ディレクトリまたはファイルを/QSYS.LIB/DCXCOMLIB.LIB/LANSAWEB.PGM$1に設定します。

6.   スクリプト別名マッチングディレクティブを、ホスト・ファイル/QSYS.LIB/DCXCOMLIB.LIB/LANSAXML.PGM$1のURLパス^/authlib/lansaxml(.*)に設定するまでステップ1 - 5を繰り返します。

7.  [ 適用]ボタンをクリックします。

      これで、構成に以下の行が追加されました。

ScriptAliasMatch ^/authlib/lansaweb(.*) /QSYS.LIB/DCXCOMLIB.LIB/LANSAWEB.PGM$1 

ScriptAliasMatch ^/authlib/lansaxml(.*) /QSYS.LIB/DCXCOMLIB.LIB/LANSAXML.PGM$1

 

認証のためのロケーション・パスを定義します。

1.    コンテナー管理で、サーバー・エリアがGlobal構成であることを確認します。 

2.   [ロケーション]タブを選択します。

3.   /authlib URLパスにロケーション・タイプを追加します。

4.   [適用]ボタンをクリックします。

保護範囲を定義してセキュリティを設定します。

1.   セキュリティから、サーバー・エリアにロケーション:/authlibがセットされていることを確認

2.   セキュリティメニュー項目で、[認証]タブを選択します。

3.   妥当性検証リストで[インターネット・ユーザー]を選択します。

4.   選択した認証名/領域を入力します。

5.   [追加]をクリックして、IBM i上の妥当性検証リストのロケーションを指定します。

6.   [適用]ボタンをクリックします。

    これで、構成に以下の行が追加されました。

<Location /authlib> 

  PasswdFile QGPL/USERLIST 

  AuthType Basic 

  AuthName "My Auth Realm" 

  Require valid-user 

</Location>

 

(Apacheを備える)IBM HTTPサーバー構成のサンプル

以下は、V5R3以降で実行され、標準認証用に構成されているIBM HTTPサーバー・インスタンスのサンプルです。

このインスタンスはポート80上で実行されます。

CGIライブラリはDCXCOMLIBです。

認証済みのライブラリはDCXCOMLIBです。

使用する妥当性検証リストはQGPLのUSERLISTです。

Web アドミニストレータを使用してLANSA for the Webプロセスがプロセス認証用に構成されたら、以下のIBM HTTPサーバー構成では、ユーザーIDとパスワードの入力を求めるプロンプトが表示されます。QGPLのUSERLIST妥当性検証リストに対する検証を行います。

# LANSA for the Web Apache HTTP Configuration File 

Alias /images /LANSAIMG/ 

ScriptAliasMatch ^/cgi-bin/jsmdirect(.*) /QSYS.LIB/JSMLIB.LIB/JSMDIRECT.PGM$1 

ScriptAliasMatch ^/cgi-bin/lansaweb(.*) /QSYS.LIB/DCXCOMLIB.LIB/LANSAWEB.PGM$1 

ScriptAliasMatch ^/cgi-bin/lansaxml(.*) /QSYS.LIB/DCXCOMLIB.LIB/LANSAXML.PGM$1 

ScriptAliasMatch ^/authlib/lansaweb(.*) /QSYS.LIB/DCXCOMLIB.LIB/LANSAWEB.PGM$1 

ScriptAliasMatch ^/authlib/lansaxml(.*) /QSYS.LIB/DCXCOMLIB.LIB/LANSAXML.PGM$1 

Listen *:80 

DocumentRoot /www/dcxpgmlib/htdocs 

# DirectoryIndex /index.html  

ServerRoot /www/dcxpgmlib 

Options -ExecCGI -FollowSymLinks -SymLinksIfOwnerMatch -Includes -IncludesNoExec -Indexes -MultiViews 

DefaultFsCCSID 37 

DefaultNetCCSID 819 

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 

LogFormat "%{Cookie}n \"%r\" %t" cookie 

LogFormat "%{User-agent}i" agent 

LogFormat "%{Referer}i -> %U" referer 

LogFormat "%h %l %u %t \"%r\" %>s %b" common 

CustomLog logs/access_log combined 

SetEnvIf "User-Agent" "Mozilla/2" nokeepalive 

SetEnvIf "User-Agent" "JDK/1\.0" force-response-1.0 

SetEnvIf "User-Agent" "Java/1\.0" force-response-1.0 

SetEnvIf "User-Agent" "RealPlayer 4\.0" force-response-1.0 

SetEnvIf "User-Agent" "MSIE 4\.0b2;" nokeepalive 

SetEnvIf "User-Agent" "MSIE 4\.0b2;" force-response-1.0 

SetEnvIf "User-Agent" ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0 

ServerUserID DCXPGMLIB 

<Directory /> 

   Order Deny,Allow 

   Deny From all 

</Directory> 

<Directory /QSYS.LIB/JSMLIB.LIB> 

   Order Allow,Deny 

   Allow From all 

</Directory> 

<Directory /QSYS.LIB/DCXCOMLIB.LIB> 

   Order Allow,Deny 

   Allow From all 

</Directory> 

<Directory /LANSAIMG> 

   Order Allow,Deny 

   Allow From all 

</Directory> 

<Directory /www/dcxpgmlib/htdocs> 

   Order Allow,Deny 

   Allow From all 

</Directory> 

<Location /authlib> 

  PasswdFile QGPL/USERLIST 

  AuthType Basic 

  AuthName "My Auth Realm" 

  Require valid-user 

</Location>

 

GETメソッドおよびPOSTメソッドを使用可能にする必要があります。

LANSA Webサイトwww.LANSA.com/support上で「Configuration of IBM HTTP Server using CGI」の「Example IBM HTTP Server Configuration」にある「Important Notes for IBM HTTP Server Configuration」を確認してください。

「ステップ3. アドミニストレータを実行して、プロセス認証を定義する」に進む