サポート > 運用ガイド > ログオンアカウント情報の一括登録方法
Wagby が管理するログオンアカウント情報は "juser" というテーブルに格納されています。ここで紹介するツールを用いることで、権限およびグループ情報を含めたログオンアカウントの一括登録を行うことができます。
概要
Wagby におけるログオンアカウント情報は、次の 3 つから構成されています。
- ログオンアカウントとパスワード ("juser")
- 権限 ("jprincipal")
- グループ ("jgroup")
これらの情報は管理者 (admin) でログオン後、「管理処理」メニューから操作することができます。 しかし大量のログオンアカウントを登録する場合は、操作が面倒であるという問題がありました。
ここで紹介する「csvimport」ツールを使うことで、Excel でログオンアカウントを用意し、Wagby へ一括登録を行うことができます。
準備
csvimport ツールをインストールする前に、次の準備を行ってください。
- お使いの PC に別途、Java をインストールしてください。
- お使いの PC に別途、Ant をインストールしてください。
- ビルドした Web アプリケーションに管理者でログオンし、必要となる「グループ」を事前に作成しておいてください。 なお、「権限」については開発の段階で、Wagby 定義ファイルに記述されているものが利用できます。
- Web アプリケーションを停止します。
- 現在のデータ一式をエクスポートします。ここではコマンドライン操作によるエクスポートを行うものとします。
> cd C:\Wagby-6.0.0\wagbyapp\bin > export_db.bat ..\..\export\data_20070901
(*) エクスポートフォルダ名は「data_」を接頭語に、年月日を続けてください。なお、コマンドライン操作によるエクスポート方法の詳細は、「インポートとエクスポート機能活用ガイド」をお読みください。
入手とインストール
csvimport ツールは Wagby に同梱されていません。ここからダウンロードしてください。
- csvimport.zip [2007.9.20 版] (2.1Mbyte)
ダウンロード後は ZIP アーカイブを展開し、$(DEVHOME) の直下に配置してください。
使い方
- コンソールを開き、$(DEVHOME) フォルダに移動します。
> cd C:\Wagby-6.0.0
- 次のコマンドを実行します。
> ant -f csvimport/build.xml prepare
$(DEVHOME) フォルダ以下に jgroup.csv および jprincipal.csv が作成されます。 これはテキストファイルなので、エディタで内容を参照することができます。
このファイルに含まれる内容は、「準備」の段階でエクスポートされた最新のフォルダを参照して生成されます。データベース(テーブル)を直接、読み込んだものではありません。 - Excel またはテキストエディタを用いて、一括登録するための "juser.csv" を作成します。
ここで指定できるグループ名、権限名は、先に作成した jgroup.csv および jprincipal.csv の内容と一致させてください。
- juser.csv 作成後、次のコマンドを実行します。
> ant -f csvimport/build.xml -Djusercsv=juser.csv convert
この操作で、$(DEVHOME)\export\data_csvimport\juser フォルダが作成されます。ここに含まれる拡張子 .xml のファイルが、一括登録用データとなります。 - ログオンアカウント情報を Web アプリケーションへインポートします。
> cd wagbyapp\bin > java -XX:MaxPermSize=64m -Dcatalina.home=".." -jar InitLoader.jar import -t juser -c ../webapps/wagby/WEB-INF/export/conf/initdb.xml -d ../../export/data_csvimport
(*) java コマンド以下の部分は、実際には一行です。(途中改行は含めません。)
(*) 「-c」オプションに続くフォルダ名「wagby」部分は、実際の「プロジェクト名(英語)」に置き換えてください。
(*) 開発したデータベースの規模が大きい場合は、MaxPermSize=64m の数値を上げてみてください。 - Web アプリケーションを起動します。
- メニューの「管理処理」にある「アカウント一覧表示」を使って、一括登録したログオンアカウントが含まれていることを確認します。
注意点
暗号化パスワードでの運用
パスワードの暗号化をお使いの場合、「パスワード」欄には暗号化された情報そのものを設定する必要があります。 そこで、次のような運用方法を提案します。
- 事前に共通のパスワード(例:"apple")を決めておき、任意のユーザに設定したあと、データベースの juser テーブルを直接参照して、その暗号化された文字列を入手します。
- 「パスワード」欄にはその暗号化文字列を設定するとともに、「パスワード強制変更」列になんらかの文字(例:"on")を設定します。
- 利用者には共通パスワードを通知するとともに、最初にログオンした際に、パスワード変更を行うように依頼します。
- 各利用者が、自らパスワードを設定します。ここで暗号化されたパスワードは、管理者であっても解読することはできません。

