10.3.5 WebPasswordJDBCLoginModule

WebPasswordJDBCLoginModuleは,すでにデータベースを用いてユーザ管理をしている場合に使用するログインモジュールです。

入力されたユーザIDとパスワードを使って,データベース内に格納されているユーザ情報からパスワードを取得して認証します。

ua.conf(統合ユーザ管理のコンフィグレーションファイル)では,データベースに接続するための情報定義やエントリを検索する際に使用するSQL(SELECT文)を指定します。

WebPasswordJDBCLoginModuleではその内容を読み取り,HttpServletRequestからユーザIDを取得してJDBCを使ってデータベースにアクセスし,パスワードを取得してパスワード認証をします。WebPasswordJDBCLoginModuleの概要を次の図に示します。

図10-15 WebPasswordJDBCLoginModuleの概要

[図データ]

また,WebPasswordJDBCLoginModuleでは,JDBCドライバのクラスをログインモジュール内で参照します。使用できるJDBCドライバとJDBCドライバの設定手順を次に示します。

●使用できるJDBCドライバ

WebPasswordJDBCLoginModuleで使用できるデータベースとJDBCドライバを次の表に示します。

表10-7 WebPasswordJDBCLoginModuleで使用できるデータベースとJDBCドライバ

データベースJDBCドライバJDBCのJARファイル
HiRDBHiRDB Type4 JDBC Driverpdjdbc2.jar
OracleOracle 10g R2Oracle JDBC Thin Driverojdbc14.jar
Oracle 11gojdbc5.jar(JDK 5.0の場合)
ojdbc6.jar(JDK6の場合)
SQL ServerSQL Server 2005SQL Server 2005 JDBC Driversqljdbc.jar
SQL Server 2008SQL Server JDBC Driver

注※ HiRDB Run Timeを含みます。


JDBCドライバの設定手順

JDBCドライバのクラスをua.conf(統合ユーザ管理のコンフィグレーションファイル)に設定します。また,JDBCドライバを任意のディレクトリに格納し,その場所をJ2EEサーバのクラスパスに追加してください。設定手順を次に示します。

  1. ua.conf(統合ユーザ管理のコンフィグレーションファイル)に,次の内容を設定します。
    • 使用するJDBCドライバに対応するJDBCドライバのクラス名
    • データベースと接続するためのURL
    • 代理で接続するデータベースユーザとそのユーザのパスワード
    データベースごとに設定例を次に示します。なお,太字部分はデータベースの環境に合わせて設定してください。
    HiRDBの場合
    com.cosminexus.admin.auth.jdbc.driver.0=JP.co.Hitachi.soft.HiRDB.JDBC.HiRDBDriver
    com.cosminexus.admin.auth.jdbc.conn.url.0=jdbc:hitachi:hirdb://DBID=22200,DBHOST=hostA
    com.cosminexus.admin.auth.jdbc.conn.user.0=system
    com.cosminexus.admin.auth.jdbc.conn.password.0=userpass
    Oracleの場合
    com.cosminexus.admin.auth.jdbc.driver.0=oracle.jdbc.OracleDriver
    com.cosminexus.admin.auth.jdbc.conn.url.0=jdbc:oracle:thin:@localhost:1521:orcl
    com.cosminexus.admin.auth.jdbc.conn.user.0=system
    com.cosminexus.admin.auth.jdbc.conn.password.0=userpass
    SQL Serverの場合
    com.cosminexus.admin.auth.jdbc.driver.0=com.microsoft.sqlserver.jdbc.SQLServerDriver
    com.cosminexus.admin.auth.jdbc.conn.url.0=jdbc:sqlserver://localhost:1433;DatabaseName=sqlserver
    com.cosminexus.admin.auth.jdbc.conn.user.0=system
    com.cosminexus.admin.auth.jdbc.conn.password.0=userpass
  2. J2EEサーバが稼働するマシンの任意のディレクトリにJDBCドライバのJARファイルを格納します。
  3. J2EEサーバのusrconf.cfg(オプション定義ファイル)に,手順2.で格納したJARファイルのパスを設定します。
    設定例を次に示します。
    add.class.path=<手順2.で格納したディレクトリ>/<JARファイル名>
    なお,JARファイル名は接続するデータベースで異なります。
●注意事項