(57)【要約】【課題】シンクライアントへのデバイスドライバのインストールが不要なシンクライアントサーバシステムを提供する。【解決手段】デバイス制御データ転送部１４は、シンクライアント２のデバイス制御データ転送制御部２２に、制御ＩＤ、デバイスＩＤならびにデバイス制御データを送信する（Ｓ６７）。デバイス制御データ転送制御部２２は、そのデバイスＩＤを含むポートＩＤレコードを検索し（Ｓ７１）、そのポートＩＤレコードに含まれたポートＩＤのポートに対応するポートドライバ２４に、そのポートＩＤとデバイス制御データを送信する（Ｓ７３）。【選択図】図９
2007102308.tif 000002
【特許請求の範囲】
【請求項１】
１以上のシンクライアントと、該シンクライアントとともに用いられるサーバとを備え、
サーバは、
シンクライアントに接続されるデバイスのデバイスドライバがインストールされ、
シンクライアントからの要求によりアプリケーション実行プロセスを生成し、当該シンクライアントの操作入力装置への操作内容が通知されたときに、その操作内容に応じた処理要求を当該アプリケーション実行プロセスに送信し、その処理結果に応じた画面情報を当該シンクライアントに送信する制御手段と、
接続されたデバイスのデバイスＩＤと当該デバイスが接続されたシンクライアントのシンクライアントＩＤと当該デバイスが接続されたシンクライアントからの要求により生成されたアプリケーション実行プロセスのプロセスＩＤとを含むデバイスＩＤレコードが記憶されるデバイスＩＤデータベースと、
アプリケーション実行プロセスからデバイスドライバを介して送信されるデバイスＩＤと当該アプリケーション実行プロセスのプロセスＩＤとを含むデバイスＩＤレコードを検索し、該当のデバイスＩＤレコードに含まれるシンクライアントＩＤのシンクライアントに、当該デバイスＩＤと、当該アプリケーション実行プロセスから当該デバイスドライバへ通知される制御内容に基づいて当該デバイスドライバから送信されるデバイス制御データと、を送信するデバイス制御データ転送手段と
を備え、
各シンクライアントは、
ポートＩＤとともに送信されるデバイス制御データを当該ポートＩＤのポートへ送出するポートドライバがインストールされ、
サーバから送信される画面情報を表示させるシンクライアント制御手段と、
デバイスが接続されたポートのポートＩＤと当該デバイスのデバイスＩＤとを含むポートＩＤレコードが記憶されるポートＩＤデータベースと、
サーバからデバイス制御データとともに送信されるデバイスＩＤを含むポートＩＤレコードを検索し、当該ポートＩＤレコードに含まれるポートＩＤのポートに対応するポートドライバに当該ポートＩＤおよび当該デバイス制御データを送信するデバイス制御データ転送制御手段とを備える
ことを特徴とするシンクライアントサーバシステム。
【請求項２】
１以上のシンクライアントの各シンクライアントは、ポートＩＤとともに送信されるデバイス制御データを当該ポートＩＤのポートへ送出するポートドライバがインストールされ、サーバから送信される画面情報を表示させるシンクライアント制御手段と、デバイスが接続されたポートのポートＩＤと当該デバイスのデバイスＩＤとを含むポートＩＤレコードが記憶されるポートＩＤデータベースと、デバイス制御データとともに送信されるデバイスＩＤを含むポートＩＤレコードを検索し、当該ポートＩＤレコードに含まれるポートＩＤのポートに対応するポートドライバに当該ポートＩＤおよび当該デバイス制御データを送信するデバイス制御データ転送制御手段とを備えるときのサーバであって、
シンクライアントに接続されるデバイスのデバイスドライバがインストールされ、
シンクライアントからの要求によりアプリケーション実行プロセスを生成し、当該シンクライアントの操作入力装置への操作内容が通知されたときに、その操作内容に応じた処理要求を当該アプリケーション実行プロセスに送信し、その処理結果に応じた画面情報を当該シンクライアントに送信する制御手段と、
接続されたデバイスのデバイスＩＤと当該デバイスが接続されたシンクライアントのシンクライアントＩＤと当該デバイスが接続されたシンクライアントからの要求により生成されたアプリケーション実行プロセスのプロセスＩＤとを含むデバイスＩＤレコードが記憶されるデバイスＩＤデータベースと、
アプリケーション実行プロセスからデバイスドライバを介して送信されるデバイスＩＤと当該アプリケーション実行プロセスのプロセスＩＤとを含むデバイスＩＤレコードを検索し、該当のデバイスＩＤレコードに含まれるシンクライアントＩＤのシンクライアントに、当該デバイスＩＤと、当該アプリケーション実行プロセスから当該デバイスドライバへ通知される制御内容に基づいて当該デバイスドライバから送信されるデバイス制御データと、を送信するデバイス制御データ転送手段と
を備えることを特徴とするサーバ。
【請求項３】
請求項２記載のサーバであって、
デバイスＩＤレコードは、接続されたシンクライアントを使用するユーザのユーザＩＤを含み、
特定のユーザによるデバイス制御を禁止または許可したいときの当該ユーザのユーザＩＤ、または、特定のシンクライアントによるデバイス制御を禁止または許可したいときの当該シンクライアントのシンクライアントＩＤを含むデバイス制御レコードが記憶されるデバイス制御データベースを備え、
デバイス制御データ転送手段は、
検索したデバイスＩＤレコードに含まれるユーザＩＤまたはシンクライアントＩＤを含むデバイス制御レコードを検索し、該当のデバイス制御レコードの有無により、デバイス制御データの転送を実行または抑制する
ことを特徴とするサーバ。
【請求項４】
請求項２または３記載のサーバであって、
デバイスＩＤレコードは、デバイスが接続されたシンクライアントを使用するユーザのユーザＩＤと当該デバイスの情報とを含み、
特定のユーザによるデバイスの情報の表示を許可したいときの当該ユーザのユーザＩＤ、または、特定のシンクライアントによるデバイスの情報の表示を許可したいときの当該シンクライアントのシンクライアントＩＤを含むデバイス制御レコードが記憶されるデバイス制御データベースを備え、
制御手段は、アプリケーション実行プロセスから送信されるデバイスの情報に応じた画面情報を当該シンクライアントに送信するものであり、
デバイス制御データ転送手段は、
アプリケーション実行プロセスから送信される当該アプリケーション実行プロセスのプロセスＩＤを含むデバイスＩＤレコードを検索し、該当のデバイスＩＤレコードに含まれたデバイスの情報を当該アプリケーション実行プロセスに送信するものであり、
かつ、検索したデバイスＩＤレコードに含まれるユーザＩＤまたはシンクライアントＩＤを含むデバイス制御レコードを検索し、該当のデバイス制御レコードの有無により、アプリケーション実行プロセスへのデバイスの情報の送信を実行または抑制する
ことを特徴とするサーバ。
【請求項５】
請求項２乃至４のいずれかに記載のサーバであって、
デバイス制御データ転送制御手段は、
新たにデバイスが接続されたポートに対応するポートドライバにより当該デバイスから取得され送信されるデバイス構成情報をサーバに転送し、当該ポートのポートＩＤと、サーバから送信されるデバイスＩＤとを含むポートＩＤレコードを記憶させ、デバイスが取り外されたポートに対応するポートドライバにより送信される当該ポートのポートＩＤを含むポートＩＤレコードを検索し、当該ポートＩＤレコードに含まれるデバイスＩＤをサーバに送信し、当該ポートＩＤレコードを削除し、
デバイス制御データ転送手段は、
シンクライアントから送信される構成情報をもつデバイスのデバイスＩＤと当該構成情報を送信したシンクライアントのシンクライアントＩＤとを含むデバイスＩＤレコードを記憶させ、当該デバイスＩＤを当該シンクライアントに送信し、シンクライアントから送信されるデバイスＩＤを含むデバイスＩＤレコードを削除する
ことを特徴とするサーバ。
【請求項６】
請求項２乃至５のいずれかに記載のサーバであって、
デバイスＩＤレコードは、接続されたデバイスの種類を示すデバイス種類情報と、接続されたシンクライアントを使用するユーザのユーザＩＤとを含み、
特定の種類のデバイスのデバイス制御を禁止または許可したいときの当該種類を示すデバイス種類情報、特定のシンクライアントによるデバイス制御を禁止または許可したいときの当該シンクライアントのシンクライアントＩＤ、特定のユーザによるデバイス制御を禁止または許可したいときの当該ユーザのユーザＩＤ、デバイスへの書き込みと読み出しのいずれかの制御方法によるデバイス制御を禁止または許可したいときの当該制御方法を示す制御方法ＩＤ、の中の当該制御方法ＩＤを少なくとも含むデバイス制御レコードが記憶されるデバイス制御データベースとを備え、
デバイス制御データ転送手段は、
検索したデバイスＩＤレコードに含まれるデバイス種類情報、当該デバイスＩＤレコードに含まれるシンクライアントＩＤ、当該デバイスＩＤレコードに含まれるユーザＩＤ、デバイスドライバから送信される制御方法ＩＤ、の中の当該制御方法ＩＤを少なくとも含むデバイス制御レコードを検索し、該当のデバイス制御レコードの有無により、デバイス制御データの転送を実行または抑制する
ことを特徴とするサーバ。
【請求項７】
請求項２乃至６のいずれかに記載のサーバであって、
シンクライアントに接続されたまたは取り外されたデバイスの情報、当該シンクライアントのシンクライアントＩＤ、当該シンクライアントを使用するユーザのユーザＩＤ、その接続または取り外しの日時、の少なくとも１つを含む履歴レコードが記憶される履歴データベースとを備え、
デバイス制御データ転送手段は、
デバイスが接続されたまたは取り外されたシンクライアントから当該デバイスの構成情報またはデバイスＩＤが送信されたとき、当該デバイスの情報、当該シンクライアントのシンクライアントＩＤ、当該シンクライアントを使用するユーザのユーザＩＤ、そのときの日時、の少なくとも１つを含む履歴レコードを記憶させる
ことを特徴とするサーバ。
【請求項８】
シンクライアントに接続されるデバイスのデバイスドライバがインストールされたサーバが、シンクライアントからの要求によりアプリケーション実行プロセスを生成し、当該シンクライアントの操作入力装置への操作内容が通知されたときに、その操作内容に応じた処理要求を当該アプリケーション実行プロセスに送信し、その処理結果に応じた画面情報を当該シンクライアントに送信する制御手段と、接続されたデバイスのデバイスＩＤと当該デバイスが接続されたシンクライアントのシンクライアントＩＤと当該デバイスが接続されたシンクライアントからの要求により生成されたアプリケーション実行プロセスのプロセスＩＤとを含むデバイスＩＤレコードが記憶されるデバイスＩＤデータベースと、アプリケーション実行プロセスからデバイスドライバを介して送信されるデバイスＩＤと当該アプリケーション実行プロセスのプロセスＩＤとを含むデバイスＩＤレコードを検索し、該当のデバイスＩＤレコードに含まれるシンクライアントＩＤのシンクライアントに、当該デバイスＩＤと、当該アプリケーション実行プロセスから当該デバイスドライバへ通知される制御内容に基づいて当該デバイスドライバから送信されるデバイス制御データと、を送信するデバイス制御データ転送手段とを備えるときのシンクライアントであって、
ポートＩＤとともに送信されるデバイス制御データを当該ポートＩＤのポートへ送出するポートドライバがインストールされ、
サーバから送信される画面情報を表示させるシンクライアント制御手段と、
デバイスが接続されたポートのポートＩＤと当該デバイスのデバイスＩＤとを含むポートＩＤレコードが記憶されるポートＩＤデータベースと、
サーバからデバイス制御データとともに送信されるデバイスＩＤを含むポートＩＤレコードを検索し、当該ポートＩＤレコードに含まれるポートＩＤのポートに対応するポートドライバに当該ポートＩＤおよび当該デバイス制御データを送信するデバイス制御データ転送制御手段とを備える
ことを特徴とするシンクライアント。
【請求項９】
請求項８記載のシンクライアントであって、
デバイス制御データ転送手段は、
シンクライアントから送信される構成情報をもつデバイスのデバイスＩＤと当該構成情報を送信したシンクライアントのシンクライアントＩＤとを含むデバイスＩＤレコードを記憶させ、当該デバイスＩＤを当該シンクライアントに送信し、シンクライアントから送信されるデバイスＩＤを含むデバイスＩＤレコードを削除し、
デバイス制御データ転送制御手段は、
新たにデバイスが接続されたポートに対応するポートドライバにより当該デバイスから取得され送信されるデバイス構成情報をサーバに転送し、当該ポートのポートＩＤと、サーバから送信されるデバイスＩＤとを含むポートＩＤレコードを記憶させ、デバイスが取り外されたポートに対応するポートドライバにより送信される当該ポートのポートＩＤを含むポートＩＤレコードを検索し、当該ポートＩＤレコードに含まれるデバイスＩＤをサーバに送信し、当該ポートＩＤレコードを削除する
ことを特徴とするシンクライアント。
【請求項１０】
請求項２乃至７のいずれかに記載のサーバをコンピュータで実現させるコンピュータプログラム。
【請求項１１】
請求項８または９記載のシンクライアントをコンピュータで実現させるコンピュータプログラム。
【請求項１２】
請求項１０または１１記載のコンピュータプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シンクライアントへのデバイスドライバのインストールが不要なシンクライアントサーバシステムに関するものである。
【背景技術】
【０００２】
シンクライアントサーバシステムにあって、シンクライアントは、マウスやキーボードなどへの操作内容を処理および保存しないで操作内容のままサーバに通知し、サーバはその操作内容に応じた処理を行い、その処理結果に応じた画面情報をシンクライアントに送信し、シンクライアントは画面情報を処理および保存しないで画面情報のまま表示装置に表示させる。
【０００３】
このようにシンクライアントは、クライアントとしての最低限の機能しか持たないので、機能更新などの作業がほとんど不要であり、よって管理が容易である。また、送受信されるのが操作内容および画面情報なので、これにより、情報漏洩の防止を図ることができる。
【非特許文献１】USB/IP Project、［online］、［平成１７年９月１５日検索］、インターネット＜URL：http://usbip.naist.jp/＞
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このようにシンクライアントは、最低限の機能しか持たなくてよいので、プリンタなどのデバイスが接続されることも少ない。
【０００５】
もしデバイスを接続して使用する場合は、シンクライアントが外部記憶装置を備えないことが多いから、そのデバイスドライバは、例えば、リードオンリーメモリにインストールされる。よって、シンクライアントに新たなデバイスを接続して使用するためには、リードオンリーメモリの交換作業が必要となる。また、交換作業は、そのデバイスが接続されて使用される全てのシンクライアントにおいて必要となる。したがって、必要に応じて、デバイスを接続あるいは取り外すといったことが行えなかった。つまり、シンクライアントサーバシステムは、その運用に柔軟性を欠くという問題点を有している。
【０００６】
本発明は、上記の課題に鑑みてなされたものであり、その目的とするところは、シンクライアントへのデバイスドライバのインストールが不要なシンクライアントサーバシステムを提供することにある。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明のシンクライアントサーバシステムにあっては、サーバは、シンクライアントに接続されるデバイスのデバイスドライバがインストールされ、シンクライアントからの要求によりアプリケーション実行プロセスを生成し、当該シンクライアントの操作入力装置への操作内容が通知されたときに、その操作内容に応じた処理要求を当該アプリケーション実行プロセスに送信し、その処理結果に応じた画面情報を当該シンクライアントに送信する制御手段と、接続されたデバイスのデバイスＩＤと当該デバイスが接続されたシンクライアントのシンクライアントＩＤと当該デバイスが接続されたシンクライアントからの要求により生成されたアプリケーション実行プロセスのプロセスＩＤとを含むデバイスＩＤレコードが記憶されるデバイスＩＤデータベースと、アプリケーション実行プロセスからデバイスドライバを介して送信されるデバイスＩＤと当該アプリケーション実行プロセスのプロセスＩＤとを含むデバイスＩＤレコードを検索し、該当のデバイスＩＤレコードに含まれるシンクライアントＩＤのシンクライアントに、当該デバイスＩＤと、当該アプリケーション実行プロセスから当該デバイスドライバへ通知される制御内容に基づいて当該デバイスドライバから送信されるデバイス制御データと、を送信するデバイス制御データ転送手段とを備え、各シンクライアントは、ポートＩＤとともに送信されるデバイス制御データを当該ポートＩＤのポートへ送出するポートドライバがインストールされ、デバイスが接続されたポートのポートＩＤと当該デバイスのデバイスＩＤとを含むポートＩＤレコードが記憶されるポートＩＤデータベースと、サーバからデバイス制御データとともに送信されるデバイスＩＤを含むポートＩＤレコードを検索し、当該ポートＩＤレコードに含まれるポートＩＤのポートに対応するポートドライバに当該ポートＩＤおよび当該デバイス制御データを送信するデバイス制御データ転送制御手段とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、デバイスドライバを逐一シンクライアントにインストールすることなくデバイスを制御することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施の形態を図面を参照して説明する。
【００１０】
図１は、本実施の形態に係るシンクライアントサーバシステムの構成図である。
【００１１】
シンクライアントサーバシステム１Ａにあっては、サーバ１と、１以上のしかも互いに同様の構成を有するシンクライアント２（図１では、その１つのみを示している。）とがネットワーク３を介して接続される。
【００１２】
シンクライアント２には、液晶や陰極管などを用いた表示装置４Ａと、マウスやキーボードなどの操作入力装置４Ｂとが接続される。
【００１３】
また、シンクライアント２は、複数のポート（ユニバーサルシリアルバス（ＵＳＢ）ポートなど）を有し、各ポートには、必要なときは、デバイス４Ｃ（プリンタやいわゆるＵＳＢメモリなど）が接続され、それが不要になれば取り外される。
【００１４】
サーバ１は、複数のユーザＩＤをパスワードとともに記憶しており、いずれかのユーザＩＤをもつユーザが所望のシンクライアント２を選択して自身のユーザＩＤとパスワードを入力し、それによりユーザ認証が成功することで、その所望のシンクライアント２とサーバ１を使用できるようになっている。
【００１５】
サーバ１は、アプリケーションプログラムが記憶されたアプリケーションプログラム記憶部１１を備える。多くの場合、アプリケーションプログラム記憶部１１には、複数のアプリケーションプログラムが記憶されている。
【００１６】
例えば、アプリケーションプログラム記憶部１１には、文書作成のアプリケーションプログラム、表計算のアプリケーションプログラムなどがインストールされている。
【００１７】
また、サーバ１は、シンクライアント２から開始要求されたアプリケーションに応じたアプリケーションプログラムを読み出し実行して、そのアプリケーションプログラムに応じたアプリケーション実行プロセス１１Ｐを生成し、操作入力装置４Ｂへの操作内容がシンクライアント２から通知されたときに、その操作内容に応じた処理要求をアプリケーション実行プロセス１１Ｐに送信し、そのアプリケーション実行プロセス１１Ｐによる処理結果に応じた画面情報をシンクライアント２に送信する制御部１２を備える。制御部１２は、制御手段に相当するものである。
【００１８】
サーバ１では、複数のアプリケーション実行プロセス１１Ｐによる並列処理が可能となっているが、図１では、そのアプリケーション実行プロセス１１Ｐの１つのみを示している。
【００１９】
また、サーバ１では、シンクライアント２のいずれかに接続されるであろうと想定されたデバイス４Ｃに応じたデバイスドライバ１３が、サーバ１が備えた外部記憶装置などに予めインストールされている。多くの場合、複数のデバイス４Ｃが想定され、それぞれに応じたデバイスドライバ１３が予めインストールされている。
【００２０】
その中には、例えば、デバイス４Ｃのメーカにより提供されたプログラムを実行することによりインストールされたものや、メーカによらない汎用プログラムを実行することによりインストールされたものなどがあるが、図１では、１つのみを示している。
【００２１】
かかるデバイスドライバ１３は、サーバ１が備えた外部記憶装置に追加インストールすることができる。
【００２２】
また、サーバ１は、デバイスドライバ１３から送信されるデバイス制御データをシンクライアント２に転送するデバイス制御データ転送部１４を備える。デバイス制御データ転送部１４は、デバイス制御データ転送手段に相当するものである。
【００２３】
また、サーバ１は、シンクライアント２に接続されたデバイス４Ｃを示すデバイスＩＤを含むデバイスＩＤレコードが記憶されるデバイスＩＤデータベース１５を備える。
【００２４】
また、サーバ１は、デバイス４Ｃの接続および取り外しの履歴に関する履歴レコードが記憶される履歴データベース１６を備える。
【００２５】
また、サーバ１は、特定の種類のデバイス４Ｃの制御や特定のシンクライアント２による制御を禁止または許可するためのデバイス制御レコードが記憶されるデバイス制御データベース１７を備える。
【００２６】
シンクライアント２は、操作入力装置４Ｂへの操作内容を制御部１２に通知し、制御部１２から送信される画面情報を表示装置４Ａに表示させるシンクライアント制御部２１を備える。シンクライアント制御部２１は、シンクライアント制御手段に相当するものである。
【００２７】
また、シンクライアント２は、デバイス制御データ転送部１４から転送されるデバイス制御データを後述するポートドライバ２４に転送するデバイス制御データ転送制御部２２を備える。デバイス制御データ転送制御部２２は、デバイス制御データ転送制御手段に相当するものである。
【００２８】
また、シンクライアント２は、デバイス４Ｃが接続されたポートを示すポートＩＤを含むポートＩＤレコードが記憶されるポートＩＤデータベース２３を備える。
【００２９】
また、シンクライアント２には、デバイス４Ｃが接続されるポートにデバイス制御データを送出するポートドライバ２４がインストールされている。
【００３０】
例えば、ＵＳＢポートとＩＥＥＥ(Institute of Electrical and Electronic Engineers)１３９４ポートを備えるシンクライアント２には、ＵＳＢプロトコル用のポートドライバ２４と、ＩＥＥＥ１３９４プロトコル用のポートドライバ２４とがインストールされている。これらのポートドライバ２４は、シンクライアント２が備えたリードオンリーメモリなどにインストールされている。
【００３１】
シンクライアント２は外部記憶装置を備えず、よって、容易にはデバイスドライバ１３をインストールできないようになっている。
【００３２】
図２は、デバイスＩＤデータベース１５に記憶されるデバイスＩＤレコードを示す図である。
【００３３】
デバイスＩＤデータベース１５には、シンクライアント２にデバイス４Ｃが接続されたときに、（１）そのデバイス４Ｃを示すデバイスＩＤと、（２）そのデバイス４Ｃの型名などの、デバイスの情報と、（３）そのシンクライアント２のＩＰアドレスやＭＡＣアドレスといったシンクライアントＩＤと、（４）そのシンクライアント２を使用するユーザのユーザＩＤと、（５）そのアプリケーション実行プロセス１１ＰのプロセスＩＤを含むデバイスＩＤレコードが記憶され、このデバイスＩＤレコードはそのデバイスが取り外されたときに削除される。
【００３４】
図３は、履歴データベース１６に記憶される履歴レコードを示す図である。
【００３５】
履歴データベース１６には、シンクライアント２にデバイス４Ｃが接続されたときまたは取り外されたとき、（１）そのデバイス４Ｃの型名などの、デバイスの情報と、（２）そのシンクライアント２のシンクライアントＩＤと、（３）そのシンクライアント２を使用するユーザのユーザＩＤと、（４）その接続または取り外しの日時と、（５）接続されたことを示す情報または取り外されたことを示す情報、を含む履歴レコードが記憶される。
【００３６】
図４は、デバイス制御データベース１７に記憶されるデバイス制御レコードを示す図である。
【００３７】
デバイス制御データベース１７には、（１）特定の種類のデバイス４Ｃの制御を禁止または許可したいときの当該種類を示すデバイス種類情報、（２）特定のシンクライアント２によるデバイス制御を禁止または許可したいときの当該シンクライアント２のシンクライアントＩＤ、（３）特定のユーザによるデバイス制御を禁止または許可したいときの当該ユーザのユーザＩＤ、（４）デバイス４Ｃへの書き込みと読み出しのいずれかの制御方法によるデバイス制御を禁止または許可したいときの当該制御方法を示す制御方法ＩＤ、の中の（４）制御方法ＩＤを少なくとも含むデバイス制御レコードが記憶される。
【００３８】
例えば、鍵のかからない部屋に設置されたシンクライアント２に対し、デバイス４ＣであるＵＳＢメモリが悪意のユーザによって接続され、サーバ１に記憶されたファイルデータがＵＳＢメモリに書き込まれ、そのＵＳＢメモリがシンクライアント２から外され、持ち去られてしまうという情報盗難の防止したく、しかも、その悪意のユーザが特には想定されていない場合には、デバイス制御データベース１７に、（１）ＵＳＢメモリという種類を示すデバイス種類情報と、（２）そのシンクライアント２のシンクライアントＩＤと、（４）書き込みという制御方法を示す制御方法ＩＤと、を含み、（３）ユーザＩＤを含まないデバイス制御レコードが記憶される。
【００３９】
一方、鍵のかからない部屋に設置されたシンクライアント２に対し、デバイス４ＣであるＵＳＢメモリが悪意のユーザによって接続され、そのＵＳＢメモリに記憶された悪意のファイルデータがサーバ１に書き込まれ、そのファイルデータにより、サーバ１内の善意のファイルデータが改ざんされてしまうという情報改ざんを防止したく、しかも、その悪意のユーザが特には想定されていない場合には、デバイス制御データベース１７に、（１）ＵＳＢメモリという種類を示すデバイス種類情報と、（２）そのシンクライアント２のシンクライアントＩＤと、（４）読み出しという制御方法を示す制御方法ＩＤと、を含み、（３）ユーザＩＤを含まないデバイス制御レコードが記憶される。
【００４０】
また、例えば、職場の上長などのユーザによる制御のみを許可したく、その他については任意である場合には、デバイス制御データベース１７に、そのユーザのユーザＩＤのみを含むデバイス制御レコードが記憶される。
【００４１】
また、例えば、鍵のかかる部屋に設置されたシンクライアント２による制御を許可したく、その他については任意である場合には、デバイス制御データベース１７に、そのシンクライアント２のシンクライアントＩＤのみを含むデバイス制御レコードが記憶される。
【００４２】
図５は、ポートＩＤデータベース２３に記憶されるポートＩＤレコードを示す図である。
【００４３】
シンクライアント２にデバイス４Ｃが接続されたときに、ポートＩＤデータベース２３には、そのデバイス４Ｃを示すデバイスＩＤと、そのデバイス４Ｃが接続されたポートを示すポートＩＤとを含むポートＩＤレコードが記憶され、このポートＩＤレコードはそのデバイス４Ｃが取り外されたときに削除される。
【００４４】
（本実施の形態の動作）
シンクライアントサーバシステム１Ａでは、サーバ１から１つシンクライアント２への情報送信は、サーバ１が、その情報を含むパケットのヘッダにシンクライアント２のＩＰアドレス（送信先ＩＰアドレス）を含ませて、そのパケットをネットワーク３に送出し、ネットワーク３がこの送信先ＩＰアドレスをもつシンクライアント２にパケットを送信することによってなされ、１つのシンクライアント２からサーバ１への情報送信も同様に行われるようになっている。
【００４５】
図６は、アプリケーション実行プロセス１１Ｐが生成されるまでのシーケンス図である。
【００４６】
例えば、シンクライアント２に接続された操作入力装置４Ｂに対し、ユーザＩＤやパスワードの入力操作が行われた場合、シンクライアント制御部２１が、その操作情報つまりユーザＩＤなどを制御部１２に送信する（Ｓ１）。
【００４７】
制御部１２は、そのユーザＩＤなどと予め記憶したユーザＩＤなどとを照合して、ユーザ認証を行う（Ｓ３）。ここでは、そのユーザ認証が成功したこととする。
【００４８】
その後、操作入力装置４Ｂに対して、あるアプリケーションの開始要求のための入力操作が行われた場合、シンクライアント制御部２１が、そのアプリケーションの開始要求を制御部１２に送信する（Ｓ５）。
【００４９】
制御部１２は、その開始要求されたアプリケーションに対応するアプリケーションプログラムをアプリケーションプログラム記憶部１１から読み出し実行することで、アプリケーション実行プロセス１１Ｐを生成する（Ｓ７）。
【００５０】
図７は、その後に操作入力装置４Ｂへの入力操作が行われたときのシーケンス図である。
【００５１】
その後、操作入力装置４Ｂに対し、例えば、文字列の入力操作が行われた場合、シンクライアント制御部２１が、その操作内容を処理および保存しないで制御部１２に送信する（Ｓ１１）。
【００５２】
制御部１２は、その操作内容に応じた処理要求をアプリケーション実行プロセス１１Ｐに送信し（Ｓ１３）、アプリケーション実行プロセス１１Ｐは、その処理要求に応じた処理を行い（Ｓ１５）、その処理結果を制御部１２に送信する（Ｓ１７）。
【００５３】
制御部１２は、その処理結果に応じた画面情報を生成し、それをシンクライアント制御部２１に送信する（Ｓ１９）。例えば、入力操作が行われた文字列とその表示位置を示す情報と背景の色などを示す情報を含む画面情報が送信される。
【００５４】
シンクライアント制御部２１は、その画面情報を処理および保存しないで表示装置４Ａに表示させる（Ｓ２１）。例えば、指定された色などで背景が表示され、指定された位置に文字列が表示される。
【００５５】
図８は、その後にデバイス４Ｃが接続されたときのシーケンス図である。
【００５６】
シンクライアント２にデバイス４Ｃが接続された場合、ポートドライバ２４はデバイス４Ｃから、そのデバイス構成情報を取得し（Ｓ３１）、このデバイス構成情報を、接続されたポートのポートＩＤとともに、デバイス制御データ転送制御部２２へ送信する（Ｓ３３）。デバイス構成情報には、そのデバイス４Ｃの種類を示すデバイス種類情報ならびに型名やメーカ名などが含まれる。
【００５７】
デバイス制御データ転送制御部２２は、そのデバイス構成情報をデバイス制御データ転送部１４へ送信する（Ｓ３５）。
【００５８】
このデバイス構成情報が、想定外のデバイス４Ｃから取得されたものである場合には、サーバ１には、対応するデバイスドライバ１３がインストールされていないのだが、そのデバイスドライバのプログラムをサーバ１が備えている場合は、ここで制御部１２が当該プログラムを実行して、そのデバイスドライバをインストールする。
【００５９】
デバイス制御データ転送部１４は、そのデバイス構成情報が送信されると、新たなデバイスＩＤつまりそのデバイス構成情報をもつデバイス４Ｃを示すものとしてのデバイスＩＤを生成し、デバイスＩＤデータベース１５に、（１）そのデバイスＩＤと、（２）そのデバイス構成情報に含まれる型名などの、デバイスの情報と、（３）送信元のシンクライアント２のシンクライアントＩＤと、（４）そのシンクライアント２を使用するユーザのユーザＩＤと、（５）そのシンクライアント２からの要求により生成されたアプリケーション実行プロセス１１Ｐを示すプロセスＩＤと、を含むデバイスＩＤレコードを記憶させる（Ｓ３７）。
【００６０】
なお、デバイス４Ｃが接続されたときには、まだアプリケーション実行プロセス１１Ｐが生成されていない場合がある。そのときは、（５）のプロセスＩＤを含まないデバイスＩＤレコードが記憶され、その後、アプリケーション実行プロセス１１Ｐが生成されたときに、（５）のプロセスＩＤが追加される。
【００６１】
さて、デバイス制御データ転送部１４は、さらに履歴データベース１６に、（１）そのデバイス構成情報に含まれる型名などの、デバイスの情報と、（２）そのシンクライアントＩＤと、（３）そのユーザＩＤと、（４）そのときの日時つまり接続日時と、（５）接続されたことを示す情報と、を含む履歴レコードを記憶させる（Ｓ３９）。
【００６２】
また、デバイス制御データ転送部１４は、そのデバイスＩＤをデバイス制御データ転送制御部２２に送信する（Ｓ４１）。
【００６３】
デバイス制御データ転送制御部２２は、ポートＩＤデータベース２３に、そのデバイスＩＤと、Ｓ３３で送信されたポートＩＤとを含むポートＩＤレコードを記憶させる（Ｓ４３）。
【００６４】
図９は、デバイス４Ｃを制御するときのシーケンス図である。
【００６５】
新たに生成されたアプリケーション実行プロセス１１Ｐは、操作入力装置４Ｂへの操作内容に応じた制御部１２からの処理要求により処理を行う中にあって、デバイス４Ｃを制御するときは、まず、デバイス制御データ転送部１４に自身のプロセスＩＤを送信する（Ｓ５１）。
【００６６】
デバイス制御データ転送部１４は、デバイスＩＤデータベース１５から、そのプロセスＩＤを含むデバイスＩＤレコードを検索する（Ｓ５３）。該当のデバイスＩＤレコードがなかった場合、以下の処理が省略される。
【００６７】
一方、該当のデバイスＩＤレコードがあった場合、デバイス制御データ転送部１４は、そのデバイスＩＤレコードに含まれたデバイスＩＤをアプリケーション実行プロセス１１Ｐに送信する（Ｓ５５）。
【００６８】
アプリケーション実行プロセス１１Ｐは、そのデバイスＩＤから、制御対象であるデバイス４ＣのデバイスＩＤを選択し、そのデバイス４Ｃに対応するデバイスドライバ１３を起動し、そのデバイスドライバ１３への制御指示において、自身のプロセスＩＤと、そのデバイスＩＤと、制御内容を通知する（Ｓ５７）。
【００６９】
デバイスドライバ１３は、例えばプリンタにプリントデータを送信するというように、書き込みという制御方法でデバイス４Ｃを制御するときは、そのプロセスＩＤと、書き込みという制御方法を示す制御方法ＩＤと、その制御指示を示す制御ＩＤと、その制御内容に応じたデバイス制御データと、そのデバイスＩＤと、をデバイス制御データ転送部１４へ送信する（Ｓ５９）。
【００７０】
なお、ＵＳＢメモリからファイルデータを読み出すというように、読み出しという制御方法でデバイス４Ｃを制御するときは、書き込みという制御方法を示す制御方法ＩＤに代えて、読み出しという制御方法を示す制御方法ＩＤが送信される。
【００７１】
デバイス制御データ転送部１４は、デバイスＩＤデータベース１５から、そのデバイスＩＤとプロセスＩＤを含むデバイスＩＤレコードを検索する（Ｓ６１）。
【００７２】
そして、デバイス制御データ転送部１４は、（１）検索されたデバイスＩＤレコードのデバイス構成情報に含まれるデバイス種類情報、（２）検索されたデバイスＩＤレコードに含まれるシンクライアントＩＤ、（３）検索されたデバイスＩＤレコードに含まれるユーザＩＤ、（４）その送信された制御方法ＩＤ、の中の当該制御方法ＩＤを少なくとも含むデバイス制御レコードを検索する（Ｓ６３）。デバイス制御レコードがデバイス制御を禁止するためのもので、かつ該当のデバイス制御レコードがあった場合、以下の処理が省略される。一方、デバイス制御レコードがデバイス制御を許可するためのもので、かつ該当のデバイス制御レコードがなかった場合、以下の処理が省略される。
【００７３】
省略されない場合、デバイス制御データ転送部１４は、そのデバイス制御データを暗号化し（Ｓ６５）、そのデバイスＩＤレコードに含まれたシンクライアントＩＤのシンクライアント２のデバイス制御データ転送制御部２２に、その制御ＩＤ、そのデバイスＩＤならびに暗号化したデバイス制御データを送信する（Ｓ６７）。なお、ここで送信されるもの全てを暗号化して送信してもよい。
【００７４】
デバイス制御データ転送制御部２２は、暗号化されて送信されたものを復号化し（Ｓ６９）、送信されあるいはその後に復号化されたデバイスＩＤを含むポートＩＤレコードをポートＩＤデータベース２３から検索し（Ｓ７１）、そのポートＩＤレコードに含まれたポートＩＤのポートに対応するポートドライバ２４に、そのポートＩＤと、復号化したデバイス制御データを送信する（Ｓ７３）。
【００７５】
ポートドライバ２４は、そのデバイス制御データを、そのポートＩＤのポートに対し、そのポートに対応するプロトコルにしたがって送出する（Ｓ７５）。
【００７６】
これにより、そのポートに接続されたデバイス４Ｃが、そのデバイス制御データに応じた処理を行う（Ｓ７７）。例えば、プリンタがプリントデータをプリントする。
【００７７】
図１０は、デバイス４Ｃが応答したときのシーケンス図である。
【００７８】
デバイス４Ｃは、例えばプリントが正常に終了したことを応答するときは、そのような応答内容をポートドライバ２４に送信する（Ｓ８１）。
【００７９】
ポートドライバ２４は、その応答内容をデバイス制御データ転送制御部２２に送信する（Ｓ８３）。
【００８０】
デバイス制御データ転送制御部２２は、その応答内容を暗号化し（Ｓ８５）、Ｓ６７で送信された制御ＩＤと、暗号化した応答内容をデバイス制御データ転送部１４に送信する（Ｓ８７）。なお、ここで送信されるもの全てを暗号化して送信してもよい。
【００８１】
デバイス制御データ転送部１４は、暗号化されて送信されたものを復号化し（Ｓ８９）、送信あるいはその後に復号化された制御ＩＤと、復号化された応答内容をデバイスドライバ１３へ送信する（Ｓ９１）。
【００８２】
デバイスドライバ１３は、その制御ＩＤと応答内容をアプリケーション実行プロセス１１Ｐに送信する（Ｓ９３）。
【００８３】
これにより、アプリケーション実行プロセス１１Ｐは、その応答内容に応じた情報を制御部１２に送信する（Ｓ９５）。
【００８４】
制御部１２は、その情報に応じた画面情報を生成し、それをシンクライアント制御部２１に送信する（Ｓ９７）。例えば、プリントが正常に終了したことを示す文字列とその表示位置を示す情報と背景の色などを示す情報を含む画面情報が送信される。
【００８５】
シンクライアント制御部２１は、その画面情報を表示装置４Ａに表示させる（Ｓ９９）。例えば、指定された色などで背景が表示され、指定された位置にプリントが正常に終了したことを示す文字列が表示される。
【００８６】
図１１は、デバイスＩＤレコードに含まれるデバイスの情報を表示させるときのシーケンス図である。
【００８７】
また、アプリケーション実行プロセス１１Ｐは、操作入力装置４Ｂへの操作内容に応じた制御部１２からの処理要求により処理を行う中にあって、デバイスＩＤレコードに含まれるデバイスの情報を表示させるときは、デバイス制御データ転送部１４に自身のプロセスＩＤを送信する（Ｓ１０１）。
【００８８】
デバイス制御データ転送部１４は、デバイスＩＤデータベース１５から、そのプロセスＩＤを含むデバイスＩＤレコードを検索する（Ｓ１０３）。
【００８９】
そして、デバイス制御データ転送部１４は、検索されたデバイスＩＤレコードに含まれるシンクライアントＩＤ、または、検索されたデバイスＩＤレコードに含まれるユーザＩＤを含むデバイス制御レコードを検索する（Ｓ１０５）。デバイス制御レコードがデバイス制御を禁止するためのもので、かつ該当のデバイス制御レコードがあった場合、以下の処理が省略される。一方、デバイス制御レコードがデバイス制御を許可するためのもので、かつ該当のデバイス制御レコードがなかった場合、以下の処理が省略される。
【００９０】
省略されない場合、デバイス制御データ転送部１４は、該当のデバイスＩＤレコードに含まれる型名などのデバイスの情報をアプリケーション実行プロセス１１Ｐに送信する（Ｓ１０７）。
【００９１】
アプリケーション実行プロセス１１Ｐは、そのデバイスの情報を制御部１２に送信する（Ｓ１０９）。
【００９２】
制御部１２は、そのデバイスの情報を一覧できる画面情報を生成し、それをシンクライアント制御部２１に送信する（Ｓ１１１）。
【００９３】
シンクライアント制御部２１は、その画面情報を表示装置４Ａに表示させる（Ｓ１２０）。
【００９４】
図１２は、デバイス４Ｃが取り外されたときのシーケンス図である。
【００９５】
シンクライアント２からデバイス４Ｃが取り外された場合、ポートドライバ２４は、デバイス４Ｃが取り外されたポートのポートＩＤをデバイス制御データ転送制御部２２へ送信する（Ｓ１２１）。
【００９６】
デバイス制御データ転送制御部２２は、そのポートＩＤを含むポートＩＤレコードをポートＩＤデータベース２３から検索し（Ｓ１２３）、そのポートＩＤレコードに含まれるデバイスＩＤをデバイス制御データ転送部１４へ送信し（Ｓ１２５）、そのポートＩＤレコードを削除する（Ｓ１２７）。
【００９７】
デバイス制御データ転送部１４は、そのデバイスＩＤを含むデバイスＩＤレコードをデバイスＩＤデータベース１５から検索し（Ｓ１３１）、履歴データベース１６に、（１）検索されたデバイスＩＤレコードに含まれたデバイスの情報と、（２）検索されたデバイスＩＤレコードに含まれたシンクライアントＩＤと、（３）検索されたデバイスＩＤレコードに含まれたユーザＩＤと、（４）そのときの日時つまり取り外し日時と、（５）取り外されたことを示す情報と、を含む履歴レコードを記憶させる（Ｓ１３３）。
【００９８】
また、デバイス制御データ転送部１４は、その検索されたデバイスＩＤレコードをデバイスＩＤデータベース１５から削除する（Ｓ１３５）。
【００９９】
以上説明したように、本実施の形態によれば、デバイスドライバ１３を逐一シンクライアント２にインストールすることなくデバイス４Ｃを制御することができる。
【０１００】
これにより、シンクライアント２にデバイス４Ｃであるスキャナを接続した場合、そのスキャナのデバイスドライバ１３を逐一シンクライアント２にインストールすることなく、当該スキャナで読み取った画像をサーバ１に記録することができる。
【０１０１】
また、シンクライアント２にデバイス４Ｃであるカメラを接続した場合、そのカメラのデバイスドライバ１３を逐一シンクライアント２にインストールすることなく、そのカメラでユーザの顔画像を撮像し、その顔画像をユーザ認証に使用することができる。
【０１０２】
また、かかる顔画像によるユーザ認証を例えば一定時間ごとに行うことで、善意のユーザが離席したときに、悪意のユーザによりシンクライアント２が使用されてしまうということを防止することができる。
【０１０３】
また、シンクライアント２にデバイス４ＣであるＩＣカードリーダを接続した場合、そのＩＣカードリーダのデバイスドライバ１３を逐一シンクライアント２にインストールすることなく、そのＩＣカードリーダでユーザのＩＣカード内のデータを読み込み、そのデータをユーザ認証に使用することができる。
【０１０４】
なお、本実施の形態のサーバ１またはシンクライアント２を、コンピュータプログラムで動作する１以上のコンピュータ（演算装置を用いたもの）で構成（実現）し、このコンピュータが本実施の形態の方法（本方法）を実行するようにしてもよい。つまり、コンピュータが、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどの記録媒体に記録されたコンピュータプログラムを読み取り、あるいは、通信回線（場合によってはインターネットに使用されるもの）を介して送信されたコンピュータプログラムを受信し、こうして取得したコンピュータプログラムを、このコンピュータが主記憶装置に記憶させ演算装置が実行することで、このコンピュータが本装置の機能を具備し、本方法が（場合によっては操作により）実行されるようにしてもよい。また、このコンピュータプログラムが記録された記録媒体を配送および陳列などして流通させてもよい。
【図面の簡単な説明】
【０１０５】
【図１】本実施の形態に係るシンクライアントサーバシステムの構成図である。
【図２】デバイスＩＤレコードを示す図である。
【図３】履歴レコードを示す図である。
【図４】デバイス制御レコードを示す図である。
【図５】ポートＩＤレコードを示す図である。
【図６】アプリケーション実行プロセス１１Ｐが生成されるまでのシーケンス図である。
【図７】操作入力装置４Ｂへの入力操作が行われたときのシーケンス図である。
【図８】デバイス４Ｃが接続されたときのシーケンス図である。
【図９】デバイス４Ｃを制御するときのシーケンス図である。
【図１０】デバイス４Ｃが応答したときのシーケンス図である。
【図１１】デバイスの情報を表示させるときのシーケンス図である。
【図１２】デバイス４Ｃが取り外されたときのシーケンス図である。
【符号の説明】
【０１０６】
１…サーバ
１Ａ…シンクライアントサーバシステム
２…シンクライアント
３…ネットワーク
４Ａ…表示装置
４Ｂ…操作入力装置
４Ｃ…デバイス
１１…アプリケーションプログラム記憶部
１１Ｐ…アプリケーション実行プロセス
１２…制御部
１３…デバイスドライバ
１４…デバイス制御データ転送部
１５…デバイスＩＤデータベース
１６…履歴データベース
１７…デバイス制御データベース
２１…シンクライアント制御部
２２…デバイス制御データ転送制御部
２３…データベース
２４…ポートドライバ
【図１】
2007102308.tif 000003
【図２】
2007102308.tif 000004
【図３】
2007102308.tif 000005
【図４】
2007102308.tif 000006
【図５】
2007102308.tif 000007
【図６】
2007102308.tif 000008
【図７】
2007102308.tif 000009
【図８】
2007102308.tif 000010
【図９】
2007102308.tif 000011
【図１０】
2007102308.tif 000012
【図１１】
2007102308.tif 000013
【図１２】
2007102308.tif 000014