ディレクトリー・ユーティリティーは、Z and I Emulator for Web サーバーまたは LDAP サーバーのいずれかに保管されているユーザー、グループ、またはセッションの構成情報を管理するために使用できる Java アプリケーションです。ディレクトリー・ユーティリティーを使用すれば、多数のユーザー、グループ、またはセッションを、管理クライアントによって個々にではなく、1 つの ASCII ファイルから一度に追加または更新できます。例えば、このユーティリティーを使用して以下を行うことができます。
ディレクトリー・ユーティリティーは、グループ、ユーザー、およびセッションをすべて定義する ASCII ファイルを使用します。このテキスト・ファイルは、拡張子が .xml で、XML 形式になっている必要があります。
ディレクトリー・ユーティリティーの実行 | |
ディレクトリー・ユーティリティー GUI の使用 | |
XML ファイル形式 / エレメントの説明 | |
XML ファイル例 | |
リスト機能による検索 | |
リスト機能の出力の使用 |
ディレクトリー・ユーティリティーは、グラフィカル・ユーザー・インターフェースまたはコマンド行インターフェースのいずれかを使用して実行できます。
グラフィカル・ユーザー・インターフェースを開始するには、以下のようにします。
「ディレクトリー・ユーティリティー」グラフィカル・ユーザー・インターフェースで、以下のフィールドに適宜入力します。
このオプションは、入力 XML ファイル内の add、delete、および update の各アクションについては無視されます。
Windows システムでは、ディレクトリー・ユーティリティーを実行するためのコマンドまたはスクリプト・ファイルとサンプル・ファイルは、C:\Program Files\HCL\ZIEForWeb\lib\samples\DirUtil ディレクトリーに入っています。このコマンド・ファイルは DirUtil.cmd という名前で、 サンプル・テキスト・ファイルは sample.xml という名前です。他のオペレーティング・システム用のコマンドまたはスクリプト・ファイルおよびサンプル・テキスト・ファイルは zieforweb\lib\samples\DirUtilCommandFiles ディレクトリーにあります。サンプル・テキスト・ファイルの名前は Sample.xml です。コマンド・ファイルまたはスクリプト・ファイルの名前は以下のとおりです。
ディレクトリー・ユーティリティーを実行するには、コマンド行で次のように入力してください。
パラメーターの順序は重要です。 |
DirUtil-xxx filename.xml admin password [hostname] [port] [CO |
ディレクトリー・ユーティリティーが Z and I Emulator for Web または LDAP 構成情報を更新するためには、 Z and I Emulator for Web サービス・マネージャーが hostname によって指定されている Z and I Emulator for Web サーバーで実行中でなければなりません。 |
例えば、AIX では次のように実行できます。
DirUtil-AIX file.xml admin password myhostname 8999 CON
ディレクトリー・ユーティリティー GUI は、コマンド行アプリケーションのための GUI インターフェースです。これを使用して、Z and I Emulator for Web サーバーまたは LDAP サーバーに保管されている、ユーザー、グループ、またはセッション構成の情報を管理できます。ディレクトリー・ユーティリティー GUI を使用すれば、多数のユーザー、グループ、またはセッションを、管理クライアントによって個々にではなく、1 つの ASCII ファイルから一度に追加または更新できます。
DirUtil フォルダーには、あらかじめ提供されている sample.xml があります。テキスト・ファイルは、GUI がオプションを認識できるように、.xml 拡張子を持つ XML フォーマットにする必要があります。
Windows 64 ビット OS の場合、ユーティリティーは C:\Program Files\HCL\ZIEForWeb\lib\samples\DirUtil ディレクトリーにある DirUtilGUI.bat を使用して起動できます。
Windows 32 ビット OS の場合、ユーティリティーは C:\Program Files (x86)\HCL\ZIEForWeb\lib\samples\DirUtil ディレクトリーにある DirUtilGUI.bat を使用して起動できます。
Unix/Linux ベース OS の場合、ユーティリティーは、/opt/HCL\ZIEForWeb/lib/samples/DirUtil ディレクトリーにある DirUtilGUI.sh を使用して起動できます。
注: これらは、ZIEWeb がインストールされているデフォルト・ディレクトリーです。ZIEWeb がユーザー定義のディレクトリーにインストールされている場合、ロケーションは <<ZIEWeb_INSTALL_DIRECTORY>>\lib\samples\DirUtil ディレクトリーになります。コマンド・ファイルまたはスクリプト・ファイルの名前は以下のとおりです。
GUI には「ユーザー名」フィールドと「パスワード」フィールドがあり、ここに管理者のユーザー名とパスワードを入力する必要があります。デフォルトでは、admin がユーザー名として、password がパスワードとして設定されています。
ホスト名は localhost に、ポート番号は 8999 に事前定義されています。変更する場合は、必要なホスト名およびポート番号を入力することもできます。
ユーザー、グループ、またはセッションに関する詳細を含む XML ファイルを選択する必要があります。オプションには、「追加」、「更新」、「削除」があります。
チェック・ボックス「「リスト」アクションの対象の HTML ファイルを生成」は、XML ファイル内に定義されているようにユーザーまたはグループのリストを生成する場合に使用します。「HTML ファイル」フィールドは、XML ファイルを選択すると自動的に生成されます。自動的に生成された HTML ファイルは、XML ファイルの名前が付けられ、XML ファイルと同じ場所に置かれます。
HTML ファイルでのユーザーまたはグループのリスト生成は、チェック・ボックス「「リスト」アクションの対象の HTML ファイルを生成」にチェック・マークが付けられ、ユーザーまたはグループのリストがデフォルト HTML ファイル (未変更の場合) にある場合にのみ有効です。
コンソール出力は、「クリア」ボタンをクリックすると消去できます。また、「コピー」ボタンをクリックすると、クリップボードにコピーできます。
「ヘルプ」をクリックすると、DirUtilGUI のヘルプ目次を開くことができます。
以下に、HTML ファイルでのリスト生成アクションの 2 つの例を示します。
<action type = "list"> <userlist> <userid>*</userid> </userlist> </action>
<action type = "list"> <grouplist> <groupid>*</groupid> </grouplist> </action>
以下に述べるエレメントの記述は、ディレクトリー・ユーティリティーが使用する XML ファイルに入れることができる有効な XML エレメントの形式についての説明です。XML についての基本的な知識のあることが前提となっています。「<!--" and end with "-->」で始まる行はコメントとして取り扱われます。エレメントの大文字小文字は区別されます。
XML ファイルを作成または編集するには、有効なユニコード文字を生成する ASCII エディターを使用しなければなりません。ディレクトリー・ユーティリティーで XML ファイルを使用しているときに、「DIR0037 致命的エラー: XML 文字が無効です (DIR0037 Fatal error: Invalid XML Character)」というエラーを受け取った場合は、ASCII エディターが有効なユニコード文字を生成しなかったということを意味します。有効なユニコード文字を生成する別の ASCII エディターを使用してください。
<dirscript>
<action>
<group>
<groupid>
<description>
<parent>
<removeusers>
<user>
<userid>
<groupid>
<description>
<authentication>
<pw>
<nativeid>
<savepref>
<session>
<filename>
<groupid>
<userid>
<description>
<userlist>
<userid>
<groupid>
<filename>
<grouplist>
<userid>
<groupid>
<filename>
他のエレメントがすべて入っていて、 文書をディレクトリー・ユーティリティーによって処理できるものとして識別する XML ファイル中のルート・エレメント。
属性: なし
必須エレメント: <action type=xxx>
オプション・エレメント: なし
<action> エレメントで囲まれているエレメントに対して実行されるアクション。<dirscript> エレメント内には複数の action エレメントを指定できます。XML ファイル中で <dirscript> エレメントまたはこのエレメントの外側にあるエレメントは、 ディレクトリー・ユーティリティーによって無視されます。
値: add、delete、update、または list
必須エレメント:<action> エレメント内には、以下のエレメントの少なくとも 1 つが必要です。
ディレクトリー・ユーティリティーは LDAP の場合は <grouplist> エレメントをサポートしません。 |
グループを囲むエレメント。
属性: なし
必須エレメント:
groupid
はグループの追加時に英大文字に変換されます。LDAP を使用中の場合には、groupid
は大/小文字混合でもかまいません。オプション・エレメント:
ユーザーを囲むエレメント。
属性: なし
必須エレメント:
userid
は小文字に変換されます。LDAP を使用中の場合には、userid
は大/小文字混合でもかまいません。オプション・エレメント:
ユーザーのために使用される認証。ネイティブ認証 (LDAP も使用中に限る) またはパスワード認証のいずれか一方を使用できます。アクション・タイプが add であるときにこのエレメントが指定されていない場合、あるいは native が選択されていて LDAP を使用中でない場合は、認証はユーザーのために構成されません。
属性: pw または native
必須エレメント:
オプション・エレメント:
セッションを囲むエレメント。
属性: なし
必須エレメント:
<session> エレメント内には、次のエレメント・タイプの少なくとも 1 つが必要です。
セッション・エレメント内には複数のユーザーまたは複数グループを指定できますが、同じセッション・エレメント内にユーザーとセッションを両方とも指定することはできません。 |
オプション・エレメント: なし
ユーザー・ベースの検索を囲むエレメント。
属性: なし
必須エレメント: 以下の各エレメントを 1 つだけ使用できます。
<userid> または <groupid> タグが欠落していると、 ディレクトリー・ユーティリティーはエレメントにワイルドカードがあると想定して検索を実行します。 |
オプション・エレメント: このエレメントは以下のファイルを 1 つだけ参照するために一度だけ使用してください。
ファイル名を指定しないと、ディレクトリー・ユーティリティーはデフォルト・ファイルに書き込みます。そのデフォルト・ファイルは zieforweb\lib\samples\DirUtil ディレクトリーにある DirUtilList.xml です。出力ファイルが指定されないと常に、リスト機能は検索結果を DirUtilList.xml に追加します。リスト機能の出力の使用を参照してください。 |
グループ・ベースの検索を囲むエレメント。
ディレクトリー・ユーティリティーは LDAP の場合はこのエレメントをサポートしません。 |
属性: なし
必須エレメント: 以下の各エレメントを 1 つだけ使用できます。
<userid> または <groupid> タグが欠落していると、 ディレクトリー・ユーティリティーはエレメントにワイルドカードがあると想定して検索を実行します。 |
オプション・エレメント: このエレメントは以下のファイルを 1 つだけ参照するために一度だけ使用してください。
ファイル名を指定しないと、ディレクトリー・ユーティリティーはデフォルト・ファイルに書き込みます。そのデフォルト・ファイルは zieforweb\lib\samples\DirUtil ディレクトリーにある DirUtilList.xml です。出力ファイルが指定されないと常に、リスト機能は検索結果を DirUtilList.xml に追加します。リスト機能の出力の使用を参照してください。 |
以下は add および list アクションをデモンストレーションしている XML 例です。以下は、3 つのグループを追加し、ユーザーをグループに追加し、さらにセッションをエクスポートし、コメントを除去する場合は、セッションをユーザーとグループに追加します。(ユーザー、グループ、またはセッションを削除または更新するには、アクション・タイプを delete または update に変更し、それに合うようにエレメントを変更してください。)Windows NT および Windows 2000 ではこの sample.xml と呼ばれるサンプル・ファイルは C:\Program Files\HCL\ZIEForWeb\lib\samples\DirUtil ディレクトリーにあります。その他のオペレーティング・システム用の sample.xml テキスト・ファイルは zieforweb\lib\samples\DirUtilCommandFiles ディレクトリーにあります。
この例は、最も単純なフォームの中で list アクションを使用します。この list アクションはユーザーとグループのリストをすべてディレクトリー・ユーティリティーのデフォルト XML 出力ファイルに送ります。より高度な検索およびその出力の使用方法については、リスト機能による検索を参照してください。 |
<?xml version="1.0" encoding="UTF-8"?> <!-- Begin DTD - The DTD should not be modified.--> <!DOCTYPE dirscript [ <!ELEMENT dirscript (action)+> <!ELEMENT action (group | user | session)+> <!ELEMENT group (groupid, description?, parent?, removeusers?)> <!ELEMENT user (userid, groupid*, description?, authentication?, savepref?, removegroupid?)> <!ELEMENT session (filename?, (groupid | userid)+, description?)> <!ELEMENT groupid (#PCDATA)> <!ELEMENT userid (#PCDATA)> <!ELEMENT description (#PCDATA)> <!ELEMENT userlist (userid+, groupid+, filename+)> <!ELEMENT grouplist (userid+, groupid+, filename+)> <!ELEMENT parent (#PCDATA)> <!ELEMENT removeusers (#PCDATA)> <!ELEMENT removegroupid (#PCDATA)> <!ELEMENT authentication ((pw?, changepw?) | (nativeid))> <!ELEMENT pw (#PCDATA)> <!ELEMENT changepw (#PCDATA)> <!ELEMENT nativeid (#PCDATA)> <!ELEMENT savepref (#PCDATA)> <!ELEMENT filename (#PCDATA)> <!ATTLIST action type (add | delete | update | list) #REQUIRED> <!ATTLIST authentication type (pw | native) #REQUIRED> ]> <!-- End DTD --> <dirscript> <action type="add"> <!-- Add three groups --> <group> <groupid>3270GROUP</groupid> <description>Group with 3270 sessions</description> </group> <group> <groupid>5250GROUP</groupid> <description>Group with 5250 sessions</description> </group> <group> <groupid>mygroup</groupid> <description>Group with parent</description> <!-- the parent element should only be specified if using LDAP --> <!-- <parent>3270GROUP</parent> --> </group> <!-- Add a user to the 3270 group and give them a password. --> <user> <userid>user1</userid> <description>First User</description> <authentication type="pw"> <pw>mypw</pw> <changepw>yes</changepw> </authentication> <groupid>3270GROUP</groupid> </user> <!-- Add a user to the 5250 group and do not allow them to save their session preferences --> <user> <userid>user2</userid> <description>Second User</description> <authentication type="pw"> <pw>mypw</pw> <changepw>yes</changepw> </authentication> <groupid>3270GROUP</groupid> <savepref>no</savepref> </user> <!-- The session elements are commented because the file may not exist. --> <!-- If you would like to add a session, then export a session with the --> <!-- correct file name and remove the comment tags before running DirUtil. --> <!-- Add a session to the 3270 group --> <!-- <session> <description>3270 Display</description> <filename>3270dsp.zie</filename> <groupid>3270GROUP</groupid> </session> --> <!-- Add a session to the 5250 group --> <!-- <session> <description>5250 Display</description> <filename>5250dsp.zie</filename> <groupid>5250GROUP</groupid> </session> --> <!-- Add a session to user1 --> <!-- <session> <description>3270 Printer</description> <filename>3270prt.zie</filename> <userid>user1</userid> </session> --> </action> <!-- List all users and all groups in the system and send output to the default XML output file --> <!-- <action type = "list"> <userlist> <userid>*</userid> </userlist> <grouplist> <userid>*</userid> <groupid>*</groupid> </grouplist> </action> --> </dirscript>
検索の基本 | |
ワイルドカードの使用 | |
検索の例 |
検索の基本
リスト機能をアクション・タイプの値として次のように指定することにより呼び出します: <action type="list">。次に、以下の 2 つの検索タイプのいずれか一方または両方を指定します (既存のユーザーとグループだけに適用されます):
グループ・ベースの検索は LDAP の場合はサポートされません。 |
それぞれの検索タイプごとに、<userid> エレメントと <groupid> エレメントを使用することによってのみ基準を定義できます。しかし、ワイルドカードを検索基準に組み込む柔軟性はあります。ワイルドカードは何個でも使用でき、検索ストリング中のどこへでも入れられるので、好きなだけおおまかな検索を行えます。
デフォルトの基準: <userid> または <groupid> エレメントの 1 つを指定しなかった場合 (または両方のエレメントを指定しなかった場合) には、リスト機能はエレメントのワイルドカードがあるものとみなしてそれをデフォルトとして指定します。したがって、考えられるほとんどのオープン検索が 保証されます。
ディレクトリー・ユーティリティーは検索出力を XML ファイルに書き込みます。
ワイルドカードの使用
ワイルドカード文字はアスタリスク (*) です。
ディレクトリー・ユーティリティーがワイルドカード配置を仮想的にサポートするのは 2 個の検索可能タグ (<groupid> と <userid>) の場合だけです。ワイルドカードは、検索可能エレメントのいずれか一方または両方に使用しても、あるいはいずれのエレメントに使用しなくても構いません。ワイルドカードは、何度使用しても、周りに英数字が散在していても、または単独で使用しても構いません。2 個の ID タグを検索基準から省略すると、ディレクトリー・ユーティリティーはワイルドカード (*) となるエレメントを想定し、デフォルトによりそのタグについてのワイルドカード検索を実行します。
有効なワイルドカード配置の例:
<userid>*</userid> | すべてのユーザー |
<groupid>*</groupid> | すべてのグループ |
<userid>a*</userid> <groupid>*</groupid> |
先頭が「a」の ID を持つ任意グループ内のユーザー |
<userid>a*s</userid> <groupid>zieweb</groupid> |
先頭が「a」で末尾が「s,」の ID を持つグループ zieweb 内のユーザー |
<userid>alhines</userid> <groupid>zieweb</groupid> |
グループ zieweb 内のユーザー「alhines」 |
検索例
リスト機能の中のエレメントのすべてを結合している例:
リスト機能についての一般の要約情報 (実行される検索の数など ) の後には、他のディレクトリー・ユーティリティー要約情報と同じ構成が続いています。リスト・サマリー・データはコンソール、ログ・ファイル、またはその両方に送信できます。 |
リスト機能からの出力はすべて XML ファイルに書き込まれるので、それをディレクトリー・ユーティリティー機能の入力として即時に再利用できます。XML 出力ファイル中では単に、アクション・コマンドを list から add、delete、または modify に変更するだけにしてください。
検索基準を入力するときに (タグ <filename> を使用して) 出力ファイルに名前を付けると、ディレクトリー・ユーティリティーはリスト結果を指定されているディレクトリーおよびファイルに書き込みます。検索の例を参照してください。出力ファイル名を指定しないと、ディレクトリー・ユーティリティーは結果をデフォルト・ファイル DirUtilList.xml (zieforweb\lib\samples\DirUtil ディレクトリーにある) に保管します。検索出力用のファイルが指定されないと常に、リスト機能は結果を DirUtilList.xml に追加します。
存在しないファイル・パスを誤って指定すると、同じ結果になります。つまり、ディレクトリー・ユーティリティーはあらゆる新規検索による内容に追加されるようにデフォルト・ファイルに書き込みます。
Unix 環境の 場合: XML 出力ファイルのパス名がその特定の Unix オペレーティング・システムに 有効であることを確認してください。例えば、オペレーティング・システムがファイルの パス名中のすべての文字を認識しない場合には、不明の文字の変換処理でファイル名が無効と される場合があります。その場合には、出力ファイルを開くことができず、検索結果をリトリーブ することができません。 |
<dirscript> <action type="list"> <userlist> <userid>*</userid> <groupid>*</groupid> </userlist> <grouplist> <userid>*</userid> <groupid>*</groupid> </grouplist> <action> <dirscript>以下の出力がデフォルト XML ファイル (DirUtilList.xml
<!--Searching based on: Userlist --> <!--with: userid= * --> <!-- groupid= * --> <dirscript> <action type="list"> <user> <userid>user1</userid> <groupid>zieweb</groupid> <description></description> <authentication>pw</authentication> </user> <user> <userid>user2</userid> <groupid>group2</groupid> <description></description> <authentication>nativeid</authentication> </user> </action> </dirscript> <!--Searching based on: Grouplist --> <!--with: userid= * --> <!-- groupid= * --> <dirscript> <action type="list"> <group> <groupid>zieweb1</groupid> <description>ZIEWeb Users</description> <parent></parent> </group> <group> <groupid>group2</groupid> <description>Other Users</description> <parent></parent> </group> </action> </dirscript>