JP2008004110A - Device management system - Google Patents
Device management system Download PDFInfo
- Publication number
- JP2008004110A JP2008004110A JP2007196886A JP2007196886A JP2008004110A JP 2008004110 A JP2008004110 A JP 2008004110A JP 2007196886 A JP2007196886 A JP 2007196886A JP 2007196886 A JP2007196886 A JP 2007196886A JP 2008004110 A JP2008004110 A JP 2008004110A
- Authority
- JP
- Japan
- Prior art keywords
- server
- client
- driver
- manager
- device management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、ネットワークを介してサーバに接続するデバイスへのアクセスを管理する技
術に関する。特に、デバイスがサーバに直接接続している場合と同様に、当該デバイスを
仮想的に利用可能なシステムにおいて、安全かつ簡便に遠隔操作可能とする技術に関する
。
The present invention relates to a technique for managing access to a device connected to a server via a network. In particular, the present invention relates to a technology that enables remote operation safely and easily in a system that can virtually use the device, as in the case where the device is directly connected to a server.
遠隔地にあるパーソナルコンピュータ(PC)やワークステーションなどのサーバをP
Cやパーソナルデジタルアシスタント(PDA)、携帯電話などの手元の情報端末を用い
てコントロールする手法が、一般的になっている。このような手法は、サーバクライアン
ト方式と呼ばれる。サーバクライアント方式は、大規模なサーバを時分割等の手法でクラ
イアント側の端末である手元の情報端末の間で分け合って利用する。クライアント側の端
末の処理能力が低い場合やクライアント側の端末に一定のセキュリティが確保できない場
合に利用されている。サーバクライアント方式ではサーバとクライアントとの間でインタ
ーネットやイントラネットを介した通信を行う。これらの通信に広帯域低料金のサービス
が提供されるようになったことが、その普及の一因となっている。
Remote servers such as personal computers (PCs) and workstations
A method of performing control using an information terminal such as C, a personal digital assistant (PDA), or a mobile phone has become common. Such a method is called a server client method. In the server client method, a large-scale server is shared between information terminals at hand, which are terminals on the client side, using a method such as time division. It is used when the processing capability of the terminal on the client side is low or when a certain level of security cannot be secured on the client side terminal. In the server client method, communication is performed between the server and the client via the Internet or an intranet. One of the reasons for the widespread use of these services is the provision of broadband low-cost services.
サーバクライアント方式では、遠隔地にあるサーバを手元の情報端末(クライアント端
末)からを制御するために、サーバには、サーバを制御するためのプログラムをサーバに
インストールし、クライアント端末にサーバを制御した結果を表示するためのプログラム
をインストールする。また、サーバとクライアント端末との間の通信路に盗聴改ざんなど
の危険性がある場合は、通信路の暗号化のためにバーチャルプライベートネットワーク(
VPN)を構築するためのプログラムが利用される。サーバを制御する権限が、クライア
ント端末やそのクライアント端末を利用する利用者に与えられているか否かを確認するた
めに、クライアント端末に特定の認証情報を格納したり、クライアント端末に認証情報を
格納したデバイスを接続したり、利用者の生体認証情報をクライアント端末に入力し、ク
ライアント端末やサーバ等で確認を行うことも一般的である。
In the server client method, in order to control a remote server from the information terminal (client terminal) at hand, the server is installed with a program for controlling the server, and the server is controlled by the client terminal. Install a program to display the results. In addition, if there is a risk of eavesdropping or tampering with the communication path between the server and the client terminal, a virtual private network (
A program for constructing VPN) is used. In order to confirm whether the authority to control the server is given to the client terminal or the user who uses the client terminal, specific authentication information is stored in the client terminal or authentication information is stored in the client terminal. It is also common to connect a device that has been connected or to input biometric authentication information of a user into a client terminal and to check the client terminal or server.
サーバ及びクライアント端末を業務で利用する利用者は、オフィス内や自宅や車の中等
のオフィス外の場所でクライアント端末にサーバを遠隔操作した結果を表示させ、サーバ
上のプログラムを用いて業務を遂行する。また、業務以外であっても、例えば家庭内やデ
ータセンタに設置したサーバとクライアント端末とを接続し、サーバ上に表示される画面
をクライアント端末に表示し、サーバ上のプログラムを用いて、情報処理(例えば、電子
メールの読み書きや、ブラウザプログラムを起動しWEB情報を閲覧する等)を行う。一
連の動作の前に、サーバとクライアント端末との間の通信は、必要に応じて例えばIPs
ec VPNやSSL−VPNといった暗号通信手法で保護される。
Users who use the server and client terminal for business use display the results of remote operation of the server on the client terminal in offices, homes, cars, and other places outside the office, and execute the business using the programs on the server To do. Even if it is not for business, for example, a server installed in a home or data center and a client terminal are connected, a screen displayed on the server is displayed on the client terminal, and a program on the server is used to Processing (for example, reading and writing of e-mail, starting a browser program and browsing WEB information, etc.) is performed. Prior to the series of operations, communication between the server and the client terminal can be performed as necessary, for example, IPs.
It is protected by an encryption communication method such as ec VPN or SSL-VPN.
このようにサーバクライアント方式によるクライアント端末によるサーバの利用形態は
、サーバクライアント方式のシステムを用いない場合に比べ、全体の機器コストや危機管
理コストを削減できたり、情報の紛失の確率を低減したり、いつでもどこでも手元の情報
端末の種別を問わずに必要な情報処理を可能にするという簡便さを提供したりするという
特長を持つ。このような手元の情報端末によるサーバ利用形態の一例は、例えば特許文献
1に述べられている。
In this way, the server usage mode by the client terminal by the server client method can reduce the overall equipment cost and crisis management cost, and the probability of information loss compared to the case where the server client system is not used. It has the feature of providing the convenience of enabling necessary information processing regardless of the type of information terminal at hand anytime and anywhere. An example of a server usage mode using such an information terminal is described in
サーバクライアント方式では、サーバは、クライアント端末から物理的に離れた場所に
設置されているケースが大半である。この場合、利用者は、例えばサーバに直接接続され
たCD−ROMドライブなどの、情報機器に接続される周辺機器(以後、本明細書ではデ
バイスと呼ぶ。)をクライアントからサーバを経由して利用することは可能である。しか
し、CD−ROMの取り出しなどの操作は容易ではなく、利用者はこの点に不便さを感じ
る。
In the server client method, the server is mostly installed at a location physically separated from the client terminal. In this case, the user uses a peripheral device (hereinafter referred to as a device in the present specification) connected to the information device such as a CD-ROM drive directly connected to the server from the client via the server. It is possible to do. However, operations such as taking out the CD-ROM are not easy, and the user feels inconvenient in this respect.
これを解決するものとして、例えば、イントラネットなどのネットワーク上にCD−R
OMドライブ等の、ネットワーク上のいずれの情報機器からもアクセス可能な、いわゆる
共有のデバイスを配置し、仮想的にサーバ上でCD−ROMドライブを利用するものがあ
る。例えば特許文献2、特許文献3は、このようなネットワーク上の第一の機器に接続さ
れたデバイスを、ネットワーク上の第一の機器とは異なる第二の機器から利用する利用形
態について開示している。
As a solution to this problem, for example, a CD-R on a network such as an intranet.
Some devices use so-called shared devices that can be accessed from any information device on the network, such as an OM drive, and virtually use a CD-ROM drive on the server. For example,
しかし、特許文献2には、デバイスが接続されているネットワーク上の機器(上記の第
一の機器)からデバイスを利用することは開示されていない。そのため、本文献に開示の
方法によれば、サーバクライアント方式の構成に於けるサーバとクライアント、すなわち
、上記の第一、第二、いずれの機器からでもデバイスを利用できるという構成が実現でき
ない。
However,
また、特許文献3に記載の方法では、サーバクライアント方式の構成に於いて、サーバ
とクライアント両方、すなわち、上記の第一、第二の機器両方から、当該デバイスを利用
することを容易に実現できない。
Further, in the method described in
画面転送型などのシンクライアントシステムにおいては、実際の処理装置はサーバであ
るため、利用者の手元にあるクライアントにデバイスを接続し、接続されたデバイスをサ
ーバから容易に利用できることが望ましい。すなわち、クライアントが行うデバイスの接
続や切り離し処理、および、クライアントが独自に行うデバイスの利用処理と、サーバが
行うデバイスの利用処理と、を切り替えながら行う必要があり、クライアントとデバイス
間の要求と返答の送受信と、サーバとデバイス間の要求と返答の送受信と、が正しく行わ
れるよう、排他的に制御する必要があるとともに、これらの切り替え処理を、利用者の利
便性を損なわないように行う必要がある。
In a thin client system such as a screen transfer type, since an actual processing apparatus is a server, it is desirable that a device is connected to a client at hand of a user and the connected device can be easily used from the server. In other words, it is necessary to switch between the device connection and disconnection processing performed by the client and the device usage processing performed independently by the client and the device usage processing performed by the server. Must be controlled exclusively so that the sending and receiving of data and the sending and receiving of requests and responses between the server and the device are performed correctly, and these switching processes must be performed so as not to impair the convenience of the user. There is.
本発明は、上記事情に鑑みてなされたもので、サーバクライアント方式においてデバイ
スを共有する場合、利用者の利便性を損なわず、システム内のセキュリティを向上させる
。
The present invention has been made in view of the above circumstances. When a device is shared in the server client system, the convenience of the user is not impaired and the security in the system is improved.
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述および添付図面から
明らかになるであろう。
The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
クライアントへデバイスを接続し、さらに、接続された該デバイスにサーバからアクセ
スするにあたり、デバイスを接続するのみで、他の操作なしでサーバ側からクライアント
に接続されたデバイスを使用可能とするために、クライアント側に、クライアントに接続
されたデバイスとクライアントのアプリケーションとの間のデータの送受信と、前記デバ
イスとサーバとの間のデータの送受信と、を排他的に制御するフィルタ手段を設け、サー
バ側に、クライアントとの通信手段とアプリケーションとの間で仮想的にデバイスドライ
バとして機能する擬似バスドライバ手段を設ける。
In order to connect the device to the client, and to access the connected device from the server, only the device is connected, and the device connected to the client from the server side can be used without any other operation. Filter means is provided on the client side for exclusive control of data transmission / reception between the device connected to the client and the client application and data transmission / reception between the device and the server. A pseudo bus driver means that virtually functions as a device driver is provided between the communication means with the client and the application.
具体的には、アプリケーションプログラムを実行するサーバと、前記サーバに前記アプ
リケーションプログラムの実行の指示を与え、当該サーバから実行結果を受け取るクライ
アントと、前記クライアントを認証する認証サーバとがネットワークで接続されたシステ
ムにおいて、前記クライアントに接続されたデバイスを前記サーバから制御するデバイス
管理システムであって、前記クライアントは、当該クライアントに接続しているデバイス
のデバイスドライバとの間でデータを送受信するとともに前記サーバとの間で当該データ
を送受信するデバイス管理手段を備え、前記認証サーバは、当該デバイス管理システム内
の各デバイスの利用権限を管理するデバイス情報保持利用権限管理手段を備え、前記サー
バは、当該サーバ内で動作するアプリケーションと前記デバイス管理手段との間で前記ネ
ットワークを介して行われるデータの送受信を前記デバイス情報保持利用権限管理手段に
保持されている前記利用権限に従って制御する仮想デバイス管理手段を備え、前記デバイ
ス管理手段は、前記デバイスドライバと当該クライアントのアプリケーションとのデータ
の送受信および前記デバイスドライバと前記サーバとのデータの送受信の間で排他制御を
行うフィルタ手段を備えることを特徴とするデバイス管理システムを提供する。
Specifically, a server that executes an application program, a client that gives an instruction to execute the application program to the server, receives an execution result from the server, and an authentication server that authenticates the client are connected via a network. In the system, a device management system for controlling a device connected to the client from the server, wherein the client transmits / receives data to / from a device driver of the device connected to the client and Device management means for transmitting and receiving the data between the devices, the authentication server comprises device information holding and usage rights management means for managing the usage rights of each device in the device management system, and the server Work with Virtual device management means for controlling transmission / reception of data performed between the application and the device management means via the network according to the usage right held in the device information holding / righting management means, The management means includes a filter means for performing exclusive control between data transmission / reception between the device driver and the client application and data transmission / reception between the device driver and the server. To do.
本発明によれば、サーバクライアント方式においてデバイスを共有する場合、利用者の
利便性を損なわず、システム内のセキュリティを向上させることができる。
ADVANTAGE OF THE INVENTION According to this invention, when sharing a device in a server client system, the security in a system can be improved, without impairing a user's convenience.
本発明の実施の形態について、添付図面を参照しながら以下詳細に説明する。なお、図
面中にて同一の参照番号を付したものは、同一の機能を有する構成要素を示し、説明の便
宜上、その詳細な説明は省略する。
Embodiments of the present invention will be described below in detail with reference to the accompanying drawings. In addition, what attached | subjected the same reference number in drawing shows the component which has the same function, The detailed description is abbreviate | omitted for convenience of explanation.
<<第一の実施形態>>
以下図面を用いて、本発明に係るデバイス管理システムの第一の実施形態を説明する。
<< First Embodiment >>
A first embodiment of a device management system according to the present invention will be described below with reference to the drawings.
図1は、本実施形態のデバイス管理システムの詳細なブロック図である。本実施形態の
デバイス管理システムは、認証管理サーバ101、ネットワーク103、ブレードサーバ
106を備える情報センタ102と、当該情報センタのネットワーク103に接続するP
C等のクライアント装置とを備える。
FIG. 1 is a detailed block diagram of the device management system of this embodiment. The device management system of this embodiment includes an information center 102 including an
C and other client devices.
情報センタ102は、情報機器を管理するセンタで通常入退室を制限され、設置する機
器が管理監視されているエリアである。情報センタ102の設置場所は、限定されない。
例えば、利用者がクライアント装置などの端末を利用する場所に設置されても良いし、離
れた場所に設置されていても良い。利用者が端末をオフィスなどで利用する場合、情報セ
ンタ102は利用者を管理する企業団体の建屋内に設置されてもよい。利用者が一般消費
者で自宅やホテル、街頭などからサービス提供企業のサーバを利用する場合、情報センタ
102はインターネットサービスプロバイダやサーバレンタル企業、アプリケーションサ
ービスプロバイダ等の管理する建屋内に設置されていてもよい。また、利用者自宅やオフ
ィスの一角にサーバを集中させたエリアであっても良い。
The information center 102 is an area where the entrance / exit is normally restricted by the center that manages the information equipment, and the equipment to be installed is managed and monitored. The installation location of the information center 102 is not limited.
For example, the user may be installed in a place where a terminal such as a client device is used, or may be installed in a remote place. When a user uses a terminal in an office or the like, the information center 102 may be installed in a building of a business organization that manages the user. When a user is a general consumer and uses a server of a service providing company from home, a hotel, or a street, the information center 102 is installed in a building managed by an Internet service provider, a server rental company, an application service provider, or the like. Also good. In addition, it may be an area where servers are concentrated in a corner of a user's home or office.
認証管理サーバ101は、デバイスや利用者の認証と管理とを行うサーバで、情報セン
タ102の管理者が管理する。認証管理サーバ101がこれらを実現するために保持する
各種のデータについては、後述する。認証管理サーバ101は、通信インタフェース、C
PUおよびメモリを備える情報処理装置で実現され、CPUがメモリに格納されたプログ
ラムを実行することにより、各機能を実現する。なお、各機能を実現するプログラムは、
記憶媒体、または、搬送波、デジタル信号、通信線を含む通信媒体を介して、他の装置か
ら取得してもよい。
The
Each function is realized by an information processing apparatus including a PU and a memory, and the CPU executes a program stored in the memory. The program that realizes each function is
You may acquire from another apparatus via a communication medium including a storage medium or a carrier wave, a digital signal, and a communication line.
ブレードサーバ106は、内部に複数のサーバもしくはPCを有する機器であり、図示
しない電源、内部機器とネットワーク103とを結線するインタフェース機能、管理装置
などを備える。本実施形態では、PC−A110、PC−B111、PC−C112を内
部に備える場合を例にあげて説明する。もちろん、ブレードサーバ106の構成は、これ
に限られず、これら以外のPCやサーバを着脱可能である。
The
ネットワーク103は、認証管理サーバ101、PC−A110、PC−B111、P
C−C112等を相互に接続する。本実施形態では、TCP/IPプロトコルを用いて通
信を行うネットワークとして以下に説明する。もちろん、それ以外のプロトコルに従った
通信を行うものであっても良い。
The
C-C112 and the like are connected to each other. In the present embodiment, a network that performs communication using the TCP / IP protocol will be described below. Of course, communication according to other protocols may be performed.
なお、本実施形態の、PC−A110、PC−B111、PC−C112は、ブレード
サーバ106内部に構成されているが、ブレードサーバ106内部やさらには情報センタ
102内に設置されていなくともネットワーク103上に存在していればよい。PC−A
110、PC−B111、PC−C112は、PCと記述しているが、サーバでもワーク
ステーションでも組み込み機器でも、記憶媒体に格納しているOSやアプリケーションを
メモリとCPU上で実行する情報機器であれば特に限定されない。
The PC-
110, PC-B111, and PC-C112 are described as PCs, but may be servers, workstations, embedded devices, or information devices that execute OS and applications stored in storage media on memory and CPU. If it does not specifically limit.
図13は、PC−A110のハードウェア構成図である。PC−A110は、ハードデ
ィスクドライブやフラッシュメモリなどのストレージ160とCPU110aとメモリ1
10bと通信のためのインタフェースである通信インタフェース110cとを備える。P
C−A110においては、メモリ110bに読み込まれたプログラムがCPU110aに
より実行されることにより、各処理部が実現される。なお、各プログラムは、記憶媒体、
または通信媒体を介して、他の装置から取得することも可能である。なお、通信媒体とは
、搬送波、デジタル信号、通信線を含む。
FIG. 13 is a hardware configuration diagram of the PC-
10b and a
In the
Alternatively, it can be acquired from another device via a communication medium. Note that the communication medium includes a carrier wave, a digital signal, and a communication line.
PC−A110は、利用者の指示に従って、演算を行う。演算結果はPC−A110ま
たはブレードサーバ106に接続された図示しないディスプレィに表示される。ストレー
ジ160には、後述する仮想デバイスマネージャ120が管理者によりインストールされ
ている。PC−A110が起動されるとストレージ160からOSがメモリ110bに読
み込まれ、CPU110aにより実行されて利用可能状態になった後、仮想デバイスマネ
ージャ120がメモリ110bに読み込まれ、CPU110aにより実行されて仮想デバ
イスが利用可能になる。
The PC-
ここで言う仮想デバイスとは、PC−A110にネットワーク103などを介して接続
されているデバイスを、あたかもPC−A110に直接接続されているデバイスであるか
のように利用可能とする仕組みである。本仕組みにより、離れた場所に接続されているデ
バイスが、PC−A110に物理的に接続されているデバイスと同様に利用可能となる。
The virtual device here is a mechanism that makes it possible to use a device connected to the PC-
仮想デバイスマネージャ120は、PC−A110にネットワーク103を介して接続
されているデバイスA151との間でのデータの送受信を行うための制御を行うソフトウ
ェアである。デバイスA151を、仮想的に、サーバに直接接続している場合と同様に使
用可能にする機能を実現するものである。詳細については、後述のデバイス管理マネージ
ャ123の動作とともに後述する。
The
また、ストレージ160には、仮想デバイスマネージャ120が送受信したデータおよ
び仮想デバイスマネージャ120で発生したイベントがログ170として蓄積される。ロ
グ170の詳細については後述する。
The
PC−B111及びPC−C112もPC−A110と同様の構成を備え、それぞれ内
部にストレージ161、162を備えると共に、仮想デバイスマネージャ121、122
がインストールされ、起動後に動作する。以後、特にPC−A110、PC−B111、
PC−C112を区別する必要がない場合、PC−A110を代表として説明する。
The PC-
Is installed and works after startup. Hereinafter, especially PC-A110, PC-B111,
When it is not necessary to distinguish the PC-
なお、ストレージ160〜162は、ブレードサーバ106内に存在せず、ネットワー
ク103上に存在していてもよい。
The
次に、クライアント装置としてネットワーク103に接続されている機器について説明
する。
Next, devices connected to the
本実施形態では、クライアント装置として、PC−D113と、PC−E114と、P
C−F115と、ハブ116と、ファイヤウォール105およびインターネット104を
介して接続するPC−Z117とを備える場合を例に挙げて説明する。また、PC−D1
13にはデバイスA151が、PC−F115にはデバイスB152が、ハブ116には
デバイスC153およびデバイスD154が、PC−Z117にはデバイスZ155が接
続される場合を例にあげて説明する。各クライアント装置およびデバイスの接続構成はこ
れに限られない。
In the present embodiment, PC-
A case where the
An example will be described in which
PC−D113は、利用者の指示に従って演算を行い、必要に応じてデバイスを利用し
、演算結果を利用者に提示する情報処理装置である。ハードウェア構成、各処理部の実現
方法は、上記PC−A110と基本的に同様である。PC−D113は、ネットワーク1
03に図示しないネットワークインタフェースを介して接続している。PC−D113は
、ハードディスクドライブもしくはフラッシュメモリなどストレージ163及び図示しな
いメモリ及びCPUを備え、利用者の指示によって演算を行う。演算結果は、PC−D1
13に接続されている図示しないディスプレィに表示される。利用者からの指示は図示し
ないキーボードやマウスといったユーザインタフェースを介してPC−D113へ送信さ
れる。
The PC-
03 is connected via a network interface (not shown). The PC-
13 is displayed on a display (not shown) connected to 13. An instruction from the user is transmitted to the PC-
また、PC−D113において、ストレージ163には、後述するデバイス管理マネー
ジャ123がインストールされている。PC−D113が起動されるとストレージ163
からOSがメモリに読み込まれ、CPUが実行することにより利用可能状態になった後、
デバイス管理マネージャ123がメモリに読み込まれ、CPUが実行することにより、接
続されたデバイスA151がPC−A110において仮想デバイスとして利用可能となる
。また、ストレージ163には、デバイス管理マネージャ123が送受信したデータ等が
ログ173として蓄積される。ログ173の詳細については後述する。
In the PC-
After the OS is read into the memory and becomes available by being executed by the CPU,
When the
デバイス管理マネージャ123は、PC−D113が、デバイスA151を、ブレード
サーバ106のPC−A110の仮想デバイスとして利用するためのソフトウェアである
。詳細については、仮想デバイスマネージャ120の動作とともに後述する。
The
PC−E114、PC−F115、PC−Z117は基本的にPC−D113と同様の
構成を備え、それぞれ、ストレージ164、165、167を備える。また、デバイス管
理マネージャ124、125、127が実現される。また、各ストレージには、ログ17
4、175、177がそれぞれ格納される。
The PC-
4, 175 and 177 are respectively stored.
さらに、ハブ116は、PC−D113から表示画面などの一般的なPCの機能の一部
が削られたものである。すなわち、図示しないネットワークインタフェースを介してネッ
トワーク103に接続し、ハードディスクドライブもしくはフラッシュメモリなどストレ
ージ166及び図示しないメモリ及びCPUを備え、演算を行う。ハードウェア構成、各
処理部の実現方法は、PC−A110と基本的に同様である。デバイス管理マネージャ1
26を実現するとともに、ストレージ166にはログ176を保持する。以後、特にPC
−D113、PC−E114、PC−F115、PC−Z117、ハブ116を区別する
必要がない場合、PC−D113を代表として説明する。
Further, the
26, and the
When there is no need to distinguish between -D113, PC-E114, PC-F115, PC-Z117, and
デバイスA151は、情報機器に接続される、例えば、CD−ROMやプリンタなどの
周辺機器である。デバイスA151は、PC−D113とデバイス接続用のインタフェー
スを介して接続されている。デバイス接続用のインタフェースは、例えばユニバーサルシ
リアルバス(USB)、ワイヤレスUSB、近距離無線通信インタフェース、赤外線通信
インタフェース、シリアルポートインタフェース、パラレルポートインタフェース、IE
EE1394インタフェース、PS/2インタフェース(登録商標)、オーディオインタ
フェースといったデバイスをPCに接続するためのインタフェースが考えられる。本実施
形態では、インタフェースがUSBである場合を例にあげて説明を行うが、インタフェー
スはこれに限られない。
The
Interfaces for connecting devices such as an EE 1394 interface, a PS / 2 interface (registered trademark), and an audio interface to a PC are conceivable. In the present embodiment, the case where the interface is USB will be described as an example, but the interface is not limited thereto.
また、デバイスA151は、接続されているPC−D113にインストールされている
デバイス管理マネージャ123により、仮想デバイスとして本システムで用いられる。以
後、デバイス管理マネージャ123を、デバイスA151を管理するデバイス管理マネー
ジャと呼ぶ。
The
その他、各PCおよびハブに接続されているデバイスB152、C153、D154も
デバイスA151と同様の周辺機器であり、本実施形態では、一例としてUSBインタフ
ェースを介してPCまたはハブに接続されている。以後、特にデバイスA151、デバイ
スB152、デバイスC153、デバイスD154を区別する必要がない場合、デバイス
A151を代表として説明する。
In addition, the devices B152, C153, and D154 connected to each PC and the hub are peripheral devices similar to the device A151, and in this embodiment, are connected to the PC or the hub via the USB interface as an example. Hereinafter, the device A151 will be described as a representative when it is not necessary to distinguish the device A151, the device B152, the device C153, and the device D154.
次に、PC−A110の仮想デバイスマネージャ120と、PC−D113のデバイス
管理マネージャ123との詳細な構成について説明する。
Next, detailed configurations of the
図8は、デバイス管理マネージャ123及び仮想デバイスマネージャ120とデバイス
ドライバ及びアプリケーションとの関係を説明するための図である。ここでは、PC−A
110とPC−D113とにおいてデバイスA151を利用するために必要となるソフト
ウェアのスタックを中心に説明する。
FIG. 8 is a diagram for explaining the relationship between the
110 and the PC-
PC−D113は、デバイス管理マネージャ123と、物理バスドライバ1515と、
デバイスクラスドライバ1513と、上位ドライバ1512と、アプリケーション151
1とを備える。また、デバイス管理マネージャ123は、フィルタドライバ1514と、
通信プログラム1510と、GUIアプリケーション1509とを備える。なお、各ドラ
イバについて、アプリケーション1511に近い側を上位、PC−D113に接続される
デバイスA151に近い側を下位と呼ぶ。PC−D113では、下位から順に、物理バス
ドライバ1515、フィルタドライバ1514、デバイスクラスドライバ1513、上位
ドライバ1512、の順にスタックされている。
The PC-
1. The
A
PC−A110は、仮想デバイスマネージャ120と、デバイスクラスドライバ150
3と、上位ドライバ1502と、アプリケーション1501と、を備える。仮想デバイス
マネージャ120は、擬似バスドライバ1504と通信プログラム1508とGUIアプ
リケーション1507とを備える。また、擬似バスドライバ1504は、起動用物理デバ
イスオブジェクト1505と、エニュメレータ機能デバイスオブジェクト1506(以下
、エニュメレータ1506と呼ぶ。)とを備える。PC−A110では、下位から順に、
擬似バスドライバ1504、デバイスクラスドライバ1503、上位ドライバ1502の
順にスタックされている。
The PC-
3, a higher-
The
物理バスドライバ1515は、PC−D113に接続された物理バス上に接続されたデ
バイスA151への通信を制御するプログラム(デバイスドライバ)である。バス上のデ
バイスA151の状態、接続、切断を監視する、デバイスA151からの割り込みをOS
および上位のデバイスドライバに通知する、上位に位置するドライバであるデバイス管理
マネージャ123内のフィルタドライバ1514から転送されたデータをデバイスA15
1に送信する、などの処理を行う。なお、ここでは、物理バスはユニバーサルシリアルバ
ス(USB)とする。物理バスドライバ1515は、接続されるデバイスA151毎に用
意される。
The
The data transferred from the
1 and so on. Here, the physical bus is a universal serial bus (USB). A
デバイスクラスドライバ1513は、デバイスA151の種別に対応して設けられてい
るプログラム(デバイスドライバ)である。アプリケーション1511から上位ドライバ
1512を介して送信された要求をデバイスA151が理解できる命令やデータに変換し
てデバイスフィルタドライバ1514および物理バスドライバ1515を介して送信する
。また、デバイスA151から送信された割り込みおよび命令に対するレスポンスをOS
および上位ドライバに送信する。
The
And sent to the host driver.
上位ドライバ1512は、デバイスA151の種別に対応して設けられている1以上の
デバイスクラスドライバ1513をまとめる役割をするプログラム(デバイスドライバ)
である。アプリケーション1511から送られた要求をデバイスクラスドライバ1513
が理解できる命令やデータに変換してデバイスクラスドライバ1513に送信する。また
、デバイスクラスドライバ1513およびその他のデバイスクラスドライバから送信され
た割り込みおよび命令に対するレスポンスをOSおよびアプリケーション1511に送信
する。
The
It is. A request sent from the
Are converted into instructions and data that can be understood by the
フィルタドライバ1514は、デバイスA151がPC−D113上のデバイスとして
有効になった場合、PC−D113のメモリ上にロードされる。物理バスドライバ151
5とデバイスクラスドライバ1513との間に配置され、デバイスクラスドライバ151
3の下位のドライバとして動作する。
The
5 and the
3 operates as a lower level driver.
フィルタドライバ1514は、通信プログラム1510またはデバイスクラスドライバ
1513より送信されるリクエストを物理バスドライバ1515に送信し、物理バスドラ
イバ1515より送信されるレスポンスを通信プログラム1510またはデバイスクラス
ドライバ1513に返信する。また、通信プログラム1510、物理バスドライバ151
5間のリクエスト及びレスポンスと、デバイスクラスドライバ1513、物理バスドライ
バ1515間のリクエスト及びレスポンスのいずれかを有効とし、いずれかを無効とする
。どちらのリクエスト及びレスポンスを有効とするかは、GUIアプリケーション150
7及びGUIアプリケーション1509の指示に従って、または、デバイスA151のプ
ラグイン、プラグアウト、イジェクトのタイミングもしくは、通信プログラム1510の
起動、終了のタイミングで、変更される。ここで、プラグインは、デバイスA151をP
C−D113の物理バスに接続すること、プラグアウトは、デバイスA151とPC−D
113との接続を絶つこと、イジェクトはデバイスA151をPC−D113から取り外
したり、取り外すために動作を停止することをそれぞれ意味する。
The
The request and response between 5 and the request and response between the
7 and the
Connecting to the physical bus of C-D113, plug-out, device A151 and PC-D
The disconnection with the 113 means that the eject means that the
フィルタドライバ1514は、デバイスクラスドライバ1513から物理バスドライバ
1515へのリクエストを無効にする場合は、該当するリクエストがフィルタドライバ1
514に入力されると、無効であるというレスポンスをデバイスクラスドライバ1513
に返信する、または、「デバイスが有効では無い」「デバイスにメディアが挿入されてい
ない」などの予め決められたエラーを含んだレスポンスをデバイスクラスドライバ151
3に返信する。
When the
When it is input to 514, a response indicating invalidity is given to the
Or a response including a predetermined error such as “device is not valid” or “medium is not inserted into the device” as a
Reply to 3.
同様に、フィルタドライバ1514は、通信プログラム1510から物理バスドライバ
1515へのリクエストを無効にする場合は、該当するリクエストがフィルタドライバ1
514に入力されると、無効であることを示すレスポンスを通信プログラム1510に返
信する、あるいは、「デバイスが有効では無い」「デバイスにメディアが挿入されていな
い」などの予め決められたエラーを含んだレスポンスを通信プログラム1510に返信す
る。
Similarly, when the
When it is input to 514, a response indicating invalidity is returned to the
フィルタドライバ1514は、デバイスA151に対応するデバイスクラスドライバ1
513に対応してPC−D113のメモリ上にロードされる。接続されているデバイスA
151が複数の場合、各デバイスA151毎に、または、デバイスA151に対応して設
けられる物理バスドライバ1515毎に、用意される。
The
Corresponding to 513, it is loaded onto the memory of the PC-
In the case where there are a plurality of 151, a device is prepared for each
PC−D113側の通信プログラム1510は、通信プログラム1508及びフィルタ
ドライバ1514と通信を行う機能を持つ。通信プログラム1510は、通信プログラム
1508及びフィルタドライバ1514の状態を常に監視し、フィルタドライバ1514
との通信に異常が発生した場合は、通信プログラム1508に異常信号を送信する。フィ
ルタドライバ1514との通信が予め定められた時間で復活しない場合、通信プログラム
1508にさらに異常信号を送信させ、GUIアプリケーション1509に状態を表示さ
せ、利用者の指示を受け付ける。例えば利用者の指示により、デバイスクラスドライバ1
513からのリクエストを物理バスドライバ1515に送信するように変更を行い、通信
プログラム1510とフィルタドライバ1514との通信を中断する。また、通信プログ
ラム1510は、通信プログラム1508との通信が異常になった場合は、フィルタドラ
イバ1514に異常信号を送信する。通信プログラム1508との通信がある程度の時間
で復帰しない場合、フィルタドライバ1514にさらに異常信号を送信し、GUIアプリ
ケーション1509に状態を表示させ、利用者の指示を受ける。例えば利用者の指示によ
り、すべてのエニュメレータ1506や起動用物理デバイスオブジェクト1505を消滅
させる要求を通信プログラム1508に送信する、通信プログラム1510自身を終了さ
せる、などの処理を行う。通信プログラム1510は、通信プログラム1508と常に通
信を行い、PC−D113に接続されたデバイスからプラグアウト、プラグイン、イジェ
クトの通知を受けるのを待つ。通信プログラム1508はデバイスA151のプラグイン
、プラグアウト、イジェクトの通知を受けると、擬似バスドライバ1504が適切に動作
するように通信プログラム1508に通知を行う。
The
When an abnormality occurs in communication with the
A change is made so that a request from 513 is transmitted to the
擬似バスドライバ1504は、後述するPC−D113上の物理バスドライバ1515
に相当し、デバイスへの通信を制御するプログラム(デバイスドライバ)である。バス上
のデバイスの状態および接続切断を監視し、デバイスからの割り込みをOSおよび上位の
デバイスドライバに通知し、上位のデバイスドライバから転送されたデータをデバイスに
送信する。擬似バスドライバ1504は、PC−A110上で動作するアプリケーション
1501から、PC−D113のバスに接続されたデバイスA151を、PC−A110
のバスに接続されたデバイスと同様に扱わせる。擬似バスドライバ1504は、PC−D
113に接続されたデバイスA151を、PC−A110の擬似バスとしてOSが認識す
るバスに接続されたデバイスとしてPC−A110のOSに認識させる。PC−A110
のOSにとって、擬似バスは前述したPC−D113のバスと同様の機能を持つ。擬似バ
スドライバ1504は、PC−A110のメモリにロードされると、その内部にエニュメ
レータ機能デバイスオブジェクト1506を作成する。
The
It is a program (device driver) that controls communication to the device. The device status on the bus and connection disconnection are monitored, an interrupt from the device is notified to the OS and the upper device driver, and data transferred from the upper device driver is transmitted to the device. The
It is treated like a device connected to the other bus. The
The
For the OS, the pseudo bus has the same function as the PC-
擬似バスドライバ1504は通信プログラム1510を介してデバイスA151がプラ
グインされたことを示す通知を受けると、エニュメレータ機能デバイスオブジェクト15
06に該当するデバイスに対応する起動用物理デバイスオブジェクト1505を生成させ
、PC−A110からデバイスA151を利用できる状態にする。また、擬似バスドライ
バ1504は通信プログラム1510を介してデバイスA151がプラグアウトされたこ
とを示す通知を受けると、エニュメレータ機能デバイスオブジェクト1506にプラグア
ウトの通知をする。擬似バスドライバ1504は、デバイスA151がイジェクトされた
ことを示す通知を受けた場合、エニュメレータ機能デバイスオブジェクト1506にイジ
ェクトの通知をする。
When the
A startup
また、擬似バスドライバ1504は、起動用物理デバイスオブジェクト1505がPC
−A110のメモリからアンロード(以下、削除と略することがある)された場合、通信
プログラム1508及び通信プログラム1510を通じて削除された状態をPC−D11
3に通知する。PC−A110のOSから擬似バスドライバ1504を削除するよう擬似
バスドライバ1504に命令があった場合、すべての起動用物理デバイスオブジェクト1
505を削除した後にエニュメレータ1506及び擬似バスドライバ1504自身を削除
する。上記の各処理中にエラーが発生した場合、擬似バスドライバ1504は、エラーの
内容を通信プログラム1508に送信する。通信プログラム1508への送信を行う際に
通信内容に異常が発生した場合、擬似バスドライバ1504は、すべての起動用物理デバ
イスオブジェクト1505を削除するなどの初期化処理を行い、通信プログラム1508
との通信状態の回復を待つ。
In addition, the
-When unloaded from the memory of A110 (hereinafter sometimes abbreviated as deletion), the state deleted through the
3 is notified. When the
After deleting 505, the
Wait for the communication status to recover.
エニュメレータ機能デバイスオブジェクト1506は、擬似バスドライバ1504の内
部に生成されるデバイスオブジェクトである。後述する起動用物理デバイスオブジェクト
1505の生成、削除等の管理を行う。また、通信プログラム1508と通信を行う。エ
ニュメレータ1506は、PC−D113から通信プログラム1510および通信プログ
ラム1508を介して擬似バスドライバ1504からデバイスA151のプラグインを示
す通知とともにプラグインされたデバイスA151のパラメータを受信すると、受け取っ
たパラメータを用いて、起動用物理デバイスオブジェクト1505を作成する。また、エ
ニュメレータ1506は、PC−D113から通信プログラム1510及び通信プログラ
ム1508を経由して擬似バスドライバ1504からデバイスA151のプラグアウトも
しくはイジェクト通知を受信すると、プラグアウトまたはイジェクト通知を送信したデバ
イスA151に対応づけて生成された起動用物理デバイスオブジェクト1505を削除す
る。
The enumerator
起動用物理デバイスオブジェクト1505は、仮想デバイスドライバ120から仮想的
にデバイスA151を動作させるためのドライバである。通信プログラム1510および
通信プログラム1508を介してデバイスA151がプラグインされた通知をエニュメレ
ータ1506が受ける毎に生成される。すなわち、起動用物理デバイスオブジェクト15
05は、PC−D113に接続されてPC−A110上の擬似バスから制御されるデバイ
ス1つに対し、1つ生成される。従って、起動用物理デバイスオブジェクト1505は、
1以上のオブジェクトからなる。起動用物理デバイスオブジェクト1505は、PC−D
113から後述するデバイスA151のプラグイン操作により送信されるデバイスID、
シリアル番号などを用いて、デバイスと1対1に対応付けられ、エニュメレータ1506
に管理される。
The startup
One 05 is generated for one device connected to the PC-
Consists of one or more objects. The startup
113, a device ID transmitted by a plug-in operation of the
The serial number or the like is used to correspond to the device one-to-one, and the
Managed.
PC−A110側の通信プログラム1508は、通信プログラム1510と擬似バスド
ライバ1504との間の通信を実現する。通信プログラム1508は、通信プログラム1
510および擬似バスドライバ1504の状態を常に監視し、擬似バスドライバ1504
との通信に異常が発生した場合は、通信プログラム1510に異常信号を送信する。擬似
バスドライバ1504との通信が予め定められた時間内に復帰しない場合、通信プログラ
ム1510にさらに異常信号を送信する。異常が発生した場合は、通信プログラム150
8は、GUIアプリケーション1507に状態を表示させ、利用者の指示を受け付ける。
例えば利用者の指示により、すべての起動用物理デバイスオブジェクト1505および擬
似バスドライバ1504を消滅させる命令をOSに送信する、通信プログラム1508自
身を終了させるなどの処理を行う。また、通信プログラム1508は、通信プログラム1
510との通信に異常が発生した場合は、擬似バスドライバ1504に異常信号を送信す
る。通信プログラム1510との通信が予め定められた時間内に復帰しない場合、擬似バ
スドライバ1504にさらに異常信号を送信し、GUIアプリケーション1507に状態
を表示させ利用者の指示を受け付ける。例えば利用者の指示により、すべての起動用物理
デバイスオブジェクト1505や擬似バスドライバ1504を消滅させる命令をPC−A
110のOSに送信する、自身を終了させるなどの処理を行う。通信プログラム1508
は、通信プログラム1510と常に通信を行い、PC−D113に接続されたデバイスか
らプラグアウト、プラグイン、イジェクトの通知を受けるのを待つ。
A
510 and the
When an abnormality occurs in communication with the
8 displays a state on the
For example, in accordance with a user instruction, processing such as sending an instruction to erase all the physical device objects for
When an abnormality occurs in communication with 510, an abnormality signal is transmitted to the
It performs processing such as sending to the
Always communicates with the
デバイスクラスドライバ1503、上位ドライバ1502は、後述するデバイス管理マ
ネージャ123の同名のものと基本的に同様の機能を有する。
The
次に認証管理サーバ101が保持する、ポリシーテーブル1400、デバイス管理テー
ブル200および利用者情報データベース300について説明する。認証管理サーバ10
1は、仮想デバイスマネージャ120とデバイス管理マネージャ123とともに、各デバ
イスへのアクセスを制御する。
Next, the policy table 1400, the device management table 200, and the
1 controls access to each device together with the
ポリシーテーブル1400は、本システム内で管理者が管理するデバイスに関するアク
セスポリシーが登録される。例えば、デバイス毎の利用権限、デバイスが接続されるクラ
イアント装置に応じた利用権限などが登録される。本テーブルは、予め管理者などにより
設定される。ポリシーテーブル1400は、システムの管理者が自由に変更することが可
能である。また、ポリシーテーブル1400を設定しないことにより、自動的にはデバイ
ス情報テーブル200上のルールを変更できず、手動でのみ変更できるようにシステムを
構成することも可能である。管理者は自分の管理するシステムに定めるべきポリシーにし
たがってポリシーテーブル1400を構成する。
In the policy table 1400, an access policy relating to a device managed by an administrator in this system is registered. For example, usage authority for each device, usage authority according to the client device to which the device is connected, and the like are registered. This table is set in advance by an administrator or the like. The policy table 1400 can be freely changed by the system administrator. In addition, by not setting the policy table 1400, it is possible to configure the system so that the rules on the device information table 200 cannot be automatically changed and can only be changed manually. The administrator configures the policy table 1400 according to the policy to be determined for the system managed by the administrator.
図2にポリシーテーブル1400の一例を示す。本図に示すように、ポリシーテーブル
1400は、ポリシー毎に、ポリシー番号1401、デバイス名1402、接続アプリケ
ーションのアドレス1403、接続アプリケーションのネットワークインタフェースID
1404、ベンダID1405、製品ID1406、シリアル番号1407、デバイス種
別1408、排他制御1409、利用可否1410、利用可能ID1411が記録される
。もちろん、その他の項目が記録されていてもよい。
An example of the policy table 1400 is shown in FIG. As shown in this figure, the policy table 1400 includes a
1404,
ポリシー番号1401は、ポリシーテーブル1401に管理者によってポリシーが登録
される際、各ポリシーに自動的に付与される識別番号である。本システム上で利用可能な
機器やデバイスが増減したとき、ポリシーテーブル1400に登録されているポリシーに
従って後述するデバイス情報テーブル200のレコードが生成される。複数のポリシーに
当てはまる機器やデバイスがシステム上に増減したとき、ポリシーは、予め定められた優
先順序で適用される。
The
デバイス名1402、接続アプリケーションのアドレス1403、接続アプリケーショ
ンのネットワークインタフェースID1404、ベンダID1405、製品ID1406
、シリアル番号1407、デバイス種別1408は、後述するデバイス情報テーブル20
0に記載される内容と同様で、機器もしくはデバイスの情報を示している。管理者は各々
のポリシーごとに該当するデバイス名、接続アプリケーションのアドレス、接続アプリケ
ーションのネットワークインタフェースID、ベンダID、製品ID、シリアル番号、デ
バイス種別の条件を設定する。これらの詳細は、デバイス情報テーブル200の説明にお
いて説明する。
,
It is the same as the contents described in “0”, and shows information on the device or device. The administrator sets a device name, a connection application address, a connection application network interface ID, a vendor ID, a product ID, a serial number, and a device type condition for each policy. These details will be described in the description of the device information table 200.
排他制御1409は、デバイスを利用者が利用するとき、他の利用者からの利用を禁止
するか否かを定義する値である。「必須」「可能」「不要」「不問(*)」の設定が可能
である。「不問(*)」の場合、基本的には不要と同様に扱うが、デバイスの種別、クラ
スごとに自動設定されるように構成してもよい。ここで、クラスとは、例えば、キーボー
ド、ストレージ等、同一のデバイスドライバ(クラスドライバ)にて動作するデバイス種
別のことである。
The
利用可否1410は、デバイスの利用許可を行う際の認証管理サーバ101の挙動を示
すもので、「可能」「禁止」「警告」の設定が可能である。「可能」が設定されているポ
リシーは、該当する機器やデバイスを、後述する利用可能ID1411に記載されている
利用者に自動的に利用可能とするポリシーである。「禁止」が設定されているポリシーは
、該当する機器やデバイスを、後述する利用可能ID1411に記載されている利用者に
自動的に利用不可能とするポリシーである。「警告」が設定されているポリシーは、該当
する機器やデバイスを、後述する利用可能ID1411に記載されている利用者に警告表
示後に自動的に利用可能とするポリシーである。警告表示はポリシーごとに設定可能であ
る。
The
なお、図中の*印は不問(定義なし)の意味であり、管理認証サーバ101は記述内容
と実際の情報とのマッチングを行う。
Note that the mark * in the figure means unquestioned (no definition), and the
例えば、図2では、ポリシー番号1401が1のポリシーは、デバイス名1402、接
続アプリケーションのアドレス1403、接続アプリケーションのネットワークインタフ
ェースID1404、シリアル番号1407、デバイス種別1408は不問のポリシーで
ある。すなわち、ベンダID1405が「1001」で、製品ID1406が「1001
」のデバイスについてのポリシーの問い合わせがあった場合、そのデバイス名、接続アプ
リケーションのアドレス、接続アプリケーションのネットワークインタフェースID、シ
リアル番号、デバイス種別に係わらず、排他制御1409は「不要」、利用可否1410
「可能」、利用可能ID1411は20000001、20000010等がデバイス情
報テーブル200に記録される。
For example, in FIG. 2, the policy whose
", The
In the device information table 200, “Possible” and the
また、ポリシー番号1401が2のポリシーは、ベンダIDが「1105」でデバイス
種別が「B Ltd.」より始まるデバイスのみに対し、自動的に排他制御「必須」で利
用可能IDは20000011と設定されるポリシーである。
In addition, the policy with the
そして、ポリシー番号1401が3のポリシーは、接続アプリケーションのアドレス1
403が192.168.1.1で接続アプリケーションのネットワークインタフェース
ID1404が「00:00:00:00:00:01」のクライアント装置に接続され
ているデバイスに対して、自動的に排他制御1409は「不問」で利用可否1410につ
いては「警告」表示をしてすべてのユーザに利用可能と設定されるポリシーである。
The policy whose
The
また、ポリシー番号1401がnのポリシーは、すべてのデバイスについて利用が禁止
される設定のポリシーである。すなわち、ポリシーテーブル1400に未登録のデバイス
についての登録の依頼があった場合、認証管理サーバ101は、ポリシー番号1401が
nの欄を参照し、デバイス情報テーブル200に排他制御1409は「不要」、利用可否
1410は「禁止」と設定する。
Further, the policy with the
次にデバイス情報テーブル200について説明する。デバイス情報テーブル200は、
本システムに接続されている各デバイスのアクセスを管理するために必要な情報を管理す
るものである。登録される各レコードは、デバイス管理マネージャ123から、自身が管
理しているデバイスを本システム内で共有可能にする要求(以後、デバイス接続要求と呼
ぶ。)とともに送信されるデバイスを特定する各種の情報(以後、デバイス情報と呼ぶ。
)に、ポリシーテーブル1400に登録されているポリシーを加えたものに従って生成さ
れる。仮想デバイスマネージャ120は、デバイス情報テーブル200を用いて、各デバ
イスの利用の可否を制御する。
Next, the device information table 200 will be described. The device information table 200 is
It manages information necessary for managing the access of each device connected to this system. Each record to be registered includes various kinds of information for identifying a device transmitted from the
) Plus a policy registered in the policy table 1400. The
デバイス管理マネージャ123からは、デバイスが接続された際、または、取り外され
た際、デバイス情報として、送信元のクライアント装置をネットワーク103上で特定す
る情報(本実施形態では、IPアドレスとMACアドレス)と、当該デバイスを特定する
情報(本実施形態では、ベンダIDと製品IDとシリアル番号)と、接続されたか、また
は、取り外されたかを示す情報とが少なくとも送信される。認証管理サーバ101は、ポ
リシーテーブル1400に従って、レコードを生成し、デバイス情報テーブル200に登
録する。
From the
また、クライアント装置自体がネットワーク103から切り離される場合、当該クライ
アント装置を特定する情報と、切り離されたことを示す情報とが認証管理サーバ101に
送信される。
When the client device itself is disconnected from the
認証管理サーバ101は、例えば、デバイスが増減した時、クライアント装置が切り離
された時、システムを利用する利用者が増減したとき、ネットワークの構成が変更された
ときなどの、認証管理サーバ101が管理するシステムの構成に変更があったとき、ポリ
シーテーブル1400のレコードに変更があったとき、管理者からデバイス情報テーブル
200の更新の指示を受け付けたとき、デバイス情報テーブル200を更新する。また、
後述するように、ステータスについては、所定期間毎に更新される。
The
As will be described later, the status is updated every predetermined period.
図3は、デバイス情報テーブル200の一例を示す図である。本図に示すように、デバ
イス情報テーブル200は、デバイスID201、デバイス名202、接続アプリケーシ
ョンのアドレス203、接続アプリケーションのネットワークインタフェースID204
、ベンダID205、製品ID206、シリアル番号207、デバイス種別208、排他
制御209、ステータス210、利用可能ID211、利用ユーザID212を備える。
FIG. 3 is a diagram illustrating an example of the device information table 200. As shown in the figure, the device information table 200 includes a
,
デバイスID201は、管理する各デバイスを一意に識別するためのもので、新たに登
録の要求がある毎に自動的に作成される。また、認証管理サーバ101やデバイス管理マ
ネージャ123の起動や終了、デバイスの挿抜などのたびに変更される可能性のある一時
的なIDである。
The
デバイス名202は、デバイスを呼び易くするための名称であり、予め管理者または利
用者が設定する。管理者が設定する場合は、ポリシーテーブル1400にデバイス名を登
録しておき、デバイス情報テーブル200のレコードを生成する際にポリシーテーブル1
400から抽出して登録される。一方、利用者が設定する場合は、デバイス情報に含めて
認証管理サーバ101に通知される。
The
400 is extracted and registered. On the other hand, when the user sets, it is notified to the
接続アプリケーションのアドレス203は、デバイスが接続されているクライアント装
置(デバイスA151の例ではPC−D113)のIPアドレスが記録される。これらは
、デバイス情報として通知される。このアドレスは上記クライアント装置がサブネット間
を移動するなどした場合、利用中であっても適宜変更される可能性がある。
The
ネットワークインタフェースID204は、デバイスが接続されているクライアント装
置(デバイスA151の例ではPC−D113)のネットワークインタフェースのIDを
示す番号が記録される。本実施形態のようにネットワークがTCP/IPプロトコルを利
用している場合、ネットワークインタフェースIDとしてMACアドレスが使われる。ネ
ットワークインタフェースID204は、接続アプリケーションのアドレスと異なり、機
器に固有のものであり、機器が変更にならなければ変更されない。
In the network interface ID 204, a number indicating the ID of the network interface of the client apparatus (PC-
ベンダID205、製品ID206、シリアル番号207は、デバイス自体に予め付与
されているデバイスの識別番号で、クライアント装置(デバイスA151の例ではPC−
D113)にデバイスが接続された際、デバイス情報として取得される。これらの情報は
、デバイス情報としてクライアント装置から認証管理サーバ101に送信される。各デバ
イスは、ベンダID、製品ID、シリアル番号の組により識別される。ベンダID及び製
品IDは、ベンダ及び製品ごとに一意に付けられるIDである。また、シリアル番号は、
製品一つ一つに個別に付けられる番号である。
The
D113) is acquired as device information when the device is connected. These pieces of information are transmitted from the client device to the
A number assigned to each product individually.
デバイス種別208は、利用者の理解の為にベンダや管理者が付ける名称である。ベン
ダが付す場合は、デスクリプタのようなデバイス情報から抽出され、デバイス情報に含め
て通知される。一方、管理者が付す場合は、ポリシーデータベース1400に予め登録さ
れる。
The
排他制御209は、デバイスを利用者が利用するとき、他の利用者からの利用を禁止す
るか否かを示す定義情報である。排他制御209が「必須」となっている場合、デバイス
の利用に関して排他制御がなされ、デバイスの利用開始から利用者が利用を終了するまで
、当該デバイスは他の利用者のアクセスから守られる。排他制御209が「可能」となっ
ている場合、デバイスへ情報を送受信している期間のみデバイスは他の利用者の利用から
守られる。排他制御209が「不要」となっている場合は、排他制御は行われない。本情
報は、ポリシーテーブル1400から抽出され、登録される。
The
ステータス210は、デバイスの利用状況を示す情報である。本情報は、認証管理サー
バ101が所定時間毎に各接続クライアント装置にポーリングを行い、取得する。ステー
タス210が「占有中」となっている場合、利用者が排他処理をしながら当該デバイスを
利用している状態を示す。ステータス210が「利用中」となっている場合、利用者が排
他処理は行わずに当該デバイスを利用している状態を示す。ステータス210が「通信中
」となっている場合、利用者が、通信中のみ排他制御を利用し、通信が終了次第速やかに
占有状態を解消する状況を示す。ステータス210が「不明」となっている場合、例えば
、認証管理サーバ101への通知無しにデバイス管理マネージャ123が通信できなくな
った状態を示す。ステータス210が「不明」状態になった場合、一定時間を過ぎると認
証管理サーバ101は、該当するデバイス管理マネージャ123の停止と当該デバイス管
理マネージャ123がインストールされているPC−D113に接続されていたデバイス
A151を停止するよう制御する。ステータス210が「切断」となっている場合、仮想
デバイスマネージャ120は、デバイス管理マネージャ123と通信は出来ているが、デ
バイス管理マネージャ123と当該デバイスA151との間の通信が出来ない状態を示す
。また、ステータス210が「未使用」となっている場合は、どのクライアント装置も使
用していない状態を示す。
The
利用可能ID211は、当該デバイスへ接続が許可される利用者もしくはグループのI
Dが記録される。本情報は、ポリシーテーブル1400から抽出される。複数の利用者も
しくはグループに当該デバイスへの接続が許可されている場合は、全ての許可されている
利用者もしくはグループのIDが登録される。利用可能ID211は、未定義、すなわち
、いずれのIDも登録されていない状態であってもよい。未定義の場合、いずれの利用者
もしくはグループも、接続が許可される。
The
D is recorded. This information is extracted from the policy table 1400. If a plurality of users or groups are permitted to connect to the device, the IDs of all permitted users or groups are registered. The
利用ユーザID212は、現在、当該デバイスを利用している利用者のIDが記録され
る。本情報は、認証管理サーバ101が所定時間毎に各接続機器にポーリングを行い、取
得する。
The
次に、認証管理サーバ101が保持する利用者情報データベース300について説明す
る。本データベース300は、利用者がネットワーク103に接続されている情報センタ
102外の機器から、情報センタ102内の機器への接続を要求した場合、接続を要求す
る利用者が許可可能な利用者権限を保持しているか否かを判定(認証)するために利用さ
れる。本データベースは、予め管理者により登録される。
Next, the
図4は、認証管理サーバ101が保持する利用者情報データベース300の一例である
。本図に示すように、利用者情報データベース300には、利用者ID301、利用者名
302、所属グループ303、証明書304、有効期間305、証明書認証可306、暗
号ハッシュ方式307、パスワード308、パスワード認証可否309の各項目が、ユー
ザごとに登録される。
FIG. 4 is an example of a
利用者ID301は利用者を識別するためのIDであり、利用者ごとに予め付与される
。利用者の利用権利が変更されなければ通常変更はされない。利用者名302は、利用者
の名称を示す文字列である。利用者名302は、利用情報を表示する際に用いられる。所
属グループ303は、利用者の所属するグループを示す情報である。本実施形態では、各
種の利用権限はグループ単位で割り当てられるよう構成されている。所属グループ303
は、各利用者が与えられている権限に該当するグループが示される。一人の利用者が複数
のグループに所属、すなわち、所属グループ303に複数のグループが登録されていても
よい。また、所属グループは未定義であってもよい。未定義の場合、当該利用者には、い
ずれの利用権限が与えられていないこととなる。
A
Indicates a group corresponding to the authority given to each user. One user may belong to a plurality of groups, that is, a plurality of groups may be registered in the belonging
証明書304は、利用者の認証に用いる公開鍵証明書を特定する情報である。証明書3
04として記録されている公開鍵証明書は、その有効性が認証管理サーバにおいて検証可
能になっているものである必要がある。例えば、認証管理サーバ101内に認証局を持ち
、その認証局が発行を行うよう構成してもよい。
The
The public key certificate recorded as 04 needs to be one whose validity can be verified by the authentication management server. For example, the
有効期間305は、利用者が、ブレードサーバ106内のPCやデバイスを利用する権
利を持つ期間である。有効期間305が未定義の場合、利用者はPCを利用する権利がな
い。有効期間は年、月、日などを用いた期間の設定のほかに毎週月曜日、毎日8時45分
から17時15分といった期間の設定も可能である。有効期間305は、証明書304に
示される公開鍵証明書の有効期限とは独立に設定できる。
The
証明書認証可306は、証明書認証を認めるか否かを示す情報である。暗号ハッシュ方
式307は、認める公開鍵インフラストラクチャを利用して認証する場合の暗号ハッシュ
の方式の記載である。暗号ハッシュ方式307が未定義の場合は、認証管理サーバから暗
号ハッシュの方式についての制限はない。この場合であっても、クライアント(利用者が
使用するPC等)等に実装されていない方式では認証は行えない。パスワード308は、
パスワードを利用して認証が行われる場合のパスワードである。パスワード308として
、ハッシュ値や暗号化などが施された情報が記録される。パスワード認証可否309は、
パスワードを利用して認証することが可能か不可能かを示す情報である。
The
This is the password when authentication is performed using a password. As the
This information indicates whether authentication is possible or impossible using a password.
ブレードサーバ106が認証管理サーバ101に認証情報を確認して認証を得るのは、
利用者情報データベース300に基づいたパスワードや公開鍵インフラストラクチャを用
いた認証をへて、利用者がブレードサーバ106内のPCを利用可能な権限を取得した場
合である。
The
This is a case where the user acquires the authority to use the PC in the
本実施形態では、認証は、1)アクセスしてきた利用者が、ブレードサーバ106への
アクセスする権限を有する者であるか否か、そして、2)ブレードサーバ106内のPC
−A110が割り当てられた後、当該PC−A110の資源(プログラムや仮想デバイス
)を利用する権限を有する者であるか否か、の2段階で行われる。いずれの場合も、利用
者は利用者認証用情報を少なくとも含む認証要求をブレードサーバ106またはPC−A
110に送信し、認証要求を受け取ったブレードサーバ106またはPC−A110は、
認証管理サーバ101にアクセスし、利用者情報データベース300に登録されているレ
コードと照合し、認証を行う。ここで、利用者認証用情報とは、利用者IDおよびパスワ
ード、もしくは、利用者毎に登録された公開鍵情報に対応する署名のことを言う。
In this embodiment, authentication is performed by 1) whether or not the accessing user is an authorized person to access the
-After the allocation of A110, the process is performed in two stages: whether or not the user has authority to use resources (programs and virtual devices) of the PC-A110. In any case, the user sends an authentication request including at least user authentication information to the
The
The
次に、情報センタ102内の各PCの利用状況の管理に用いられるPC利用管理テーブ
ル400ついて説明する。図5は、ブレードサーバ106が保持する、PC利用管理テー
ブル400の一例である。
Next, the PC usage management table 400 used for managing the usage status of each PC in the information center 102 will be described. FIG. 5 is an example of the PC usage management table 400 held by the
PC利用管理テーブル400には、情報センタ102内の各PC毎に、PC名401、
ネットワーク名402、IPアドレス403、MACアドレス404、利用元端末405
、利用元ネットワーク名406、利用元IPアドレス407、利用元MACアドレス40
8、利用者ID409、ステータス410、接続開始時刻411、接続終了時刻412、
動作確認時刻413が登録される。
In the PC usage management table 400, for each PC in the information center 102, a
, Use
8,
The
PC名401は、情報センタ102内のPCを識別するPCの名称である。これは、管
理者が重複の無いよう予め定めて登録する。ネットワーク名402は、ネットワーク上で
PCを識別する際に利用される名称である。これは、管理者が重複の無いように予め定め
て登録する。各PCについて、ネットワーク名402とPC名401とは同じ名称が付与
されても異なる名称が付与されてもよい。
The
IPアドレス403は、それぞれのPCに付与されたIPアドレスである。MACアド
レス404は、それぞれのPC上のネットワークインタフェースに一意に定められている
アドレスである。
The
利用元端末405は、現時点でこの情報センタ102内のPCを遠隔操作しているクラ
イアント装置の名称である。この名称も、管理者が重複の無いよう予め定めて登録する。
管理者は名称を自由に設定、変更することができる。当該情報センタ102内のPCがク
ライアント装置によって利用されていない場合、利用元端末405は未定義となる。利用
元ネットワーク名406は、ネットワーク103上で利用元を識別する際に利用される名
称である。管理者が重複の無いよう予め定めて登録する。なお、利用元端末405および
利用元ネットワーク名とは同じ名称であってもよい。
The
The administrator can freely set and change the name. When the PC in the information center 102 is not used by the client device, the
利用元IPアドレス407は、クライアント装置のIPアドレスである。利用元MAC
アドレス408は、クライアント装置のネットワークインタフェースに一意に定められた
アドレスである。
The use
The
利用者ID409は、クライアント装置を利用している利用者の利用者IDである。ク
ライアント装置が使用されていない場合、利用者ID409は未定義となる。
A
ステータス410は、当該PCが稼動中か否かを示す情報である。ステータス410に
記録される情報には、「稼動中」、「確認中」、「待機中」の3種類がある。ステータス
410が「稼動中」であるPCは、利用者ID409に登録されているIDを有する利用
者が利用元端末405に特定されているクライアント装置を介して利用中であることを示
す。ステータス410が「確認中」である場合、認証管理サーバ101においてクライア
ント装置がPCを利用しているか否かを確認中である状態、または、確認が完了していな
い状態であることを示す。ステータス408が「待機中」であるPCは、クライアント装
置がPCの利用を待機している状態、すなわち、クライアント装置がPCを利用していな
い状態であることを示している。
The
接続開始時刻411は、利用者ID409で特定される利用者が利用元端末405で特
定されるクライアント装置を介してPCの操作を開始した時刻を示す。接続終了時刻41
2は、利用者ID409で特定される利用者が利用元端末405で特定されるクライアン
ト装置を介して行うPCの操作を終了した時刻を示す。動作確認時刻413は、仮想デバ
イスマネージャ120から認証管理サーバ101に対してチャネルの生成、消滅等の発生
した際に行われた通信の最終時刻を示す。
The connection start
2 indicates the time when the user specified by the
ブレードサーバ106は、構成する各PCの利用状況に変更がある度に、本データベー
スを更新する。
The
次に、本実施形態のデバイス管理システムにおいて、デバイスを共有可能な状態に設定
し、設定後にデバイスを共有する処理(以後、デバイス共有処理と呼ぶ。)について説明
する。ここでは、利用者がクライアント装置であるPC−D113を利用して情報センタ
102内のブレードサーバ106を構成する機器のうちPC−A110を遠隔操作し、P
C−D113に接続されているデバイスA151を共有可能とする場合を例にあげて説明
する。もちろん、他の利用者端末、他のブレードサーバ106を構成する機器、他のデバ
イスであっても、デバイス共有処理の手順は同様である。
Next, a process of setting a device in a sharable state and sharing the device after setting in the device management system of the present embodiment (hereinafter referred to as device sharing process) will be described. Here, the user remotely operates the PC-
A case where the
ここでデバイス共有処理とは、下記の2つの状態において、デバイスA151を,排他
的に利用可能にする処理である。
Here, the device sharing process is a process for exclusively using the
第1の状態は、デバイスA151がPC−D113から利用可能であるがPC−A11
0からは利用できない状態であり、第2の状態は、デバイスA151がネットワークを介
してPC−A110から利用可能であるが,PC−D110からは利用できない状態であ
る。
In the first state, the
The second state is a state in which the
第1の状態では、PC−A110上で動作するアプリケーションは、デバイスを認識で
きないが、PC−D113上で動作するアプリケーションからデバイスA151へのリク
エストは、デバイスA151に正常に送信され、デバイスA151からレスポンスが返信
される。
In the first state, an application operating on the PC-
第2の状態では、PC−A110上で動作するアプリケーションからデバイスA151
へのリクエストは、デバイスA151に正常に送信され、デバイスA151からレスポン
スが返信される。しかし、PC−D113上で動作するアプリケーションからデバイスA
151へのリクエストは、デバイスに送信されず、デバイス管理マネージャ123からエ
ラーを含んだレスポンスが返信される。
In the second state, an application operating on the PC-
Is normally transmitted to the device A151, and a response is returned from the device A151. However, from the application running on the PC-
The request to 151 is not transmitted to the device, and a response including an error is returned from the
システムが第1の状態で動作するか、第2の状態で動作するかは、利用者の指示により
切り替えられる。また、デバイス管理マネージャ123と仮想デバイスマネージャ120
の通信が切断された場合、デバイス管理マネージャ123は、システムが第1の状態で動
作するよう処理を行う。
Whether the system operates in the first state or the second state is switched according to a user instruction. The
When the communication is disconnected, the
以上に説明したデバイス共有処理により、利用者はPC−A110もしくはPC−D1
13どちらかから独占的(排他的)にデバイスA151を利用することが可能である。上
記のようなリクエストを排他制御する処理を行うことにより、デバイスA151は、アプ
リケーションからのリクエストのシーケンス管理を行っている場合や、デバイスの状態遷
移の管理をデバイスドライバで行っている場合に、デバイスA151がデバイスドライバ
からの要求に誤動作を起さない。
Through the device sharing process described above, the user can use PC-A110 or PC-D1.
The
図6は、上記例におけるデバイス共有処理の処理フローである。 FIG. 6 is a processing flow of device sharing processing in the above example.
利用者はPC−D113に起動指示を行う(501)。利用者からの起動指示を受け付
けたPC−D113は、ストレージ163からOSやアプリケーションをロードし起動す
る(502)。ここで、OSやアプリケーションは、ネットワーク上に存在するストレー
ジからロードしても良い。このとき、デバイス管理マネージャ123も起動される。
The user gives an activation instruction to the PC-D 113 (501). The PC-
ステップ502で起動されたデバイス管理マネージャ123は、PC−D113に接続
されているデバイスA151の情報を取得する(503)。接続されているデバイスの情
報の取得は、起動時に、ホスト(本実施形態では、PC−D113)側からの要求に応え
てデバイス側からホストにデバイス全体の情報に関するデータであるデスクリプタの情報
が送信されることにより行なわれる(504)。デスクリプタには、例えば、デバイスの
種別をあらわすコード、デバイスのクラスのコード、当該デバイスの製造ベンダのID、
製品ID、シリアル番号などが含まれる。PC−D113ではステップ503で取得した
デバイスの情報にデータに基づいてデバイスA151を駆動するデバイスドライバが読み
込まれ、動作する。デバイス管理マネージャ123は、管理するデバイス(ここでは、デ
バイスA151)のドライバもしくはフィルタドライバの機能を実現することにより、本
デバイスを本システム内で共有可能な状態とし、当該デバイスに送受信される情報を制御
する。
The
Product ID, serial number, etc. are included. In the PC-
デバイス管理マネージャ123は、PC−D113に接続されているデバイスA151
の動作を確認した後、デバイス接続要求とともにステップ503において取得したデバイ
スA151のデバイスの情報から抽出したデバイス情報を認証管理サーバ101に送信す
る(504)。認証管理サーバ101では、デバイス接続要求およびデバイス情報を受信
すると、ポリシーテーブル1400内のデータと照合し、デバイス接続要求のあったデバ
イスに関するポリシーをデバイス情報管理テーブル200に登録する(505)。
The
Then, the device information extracted from the device information of the
一方、PC−D113の起動が完了すると、PC−D113は、起動が完了した旨をデ
ィスプレィに表示する(506)。利用者は、起動が完了したことを確認すると、情報セ
ンタ102内のブレードサーバ106を構成するPCの利用を開始するよう指示を行う。
本実施形態では、利用開始の指示は、利用者IDおよびパスワードの入力である。
On the other hand, when the activation of the PC-
In the present embodiment, the use start instruction is input of a user ID and a password.
PC−D113は、利用者から利用開始の指示を受け付ける(507)と、ブレードサ
ーバ106を利用する要求(以後、サーバ利用開始要求と呼ぶ。)として、受け付けた利
用者認証用情報をブレードサーバ106に送信する(508)。
When the PC-
ブレードサーバ106は、サーバ利用開始要求を受け取ると、利用者がブレードサーバ
106の適切な利用権限を持つかどうかの認証を行う(509)。具体的には、ブレード
サーバ106は、利用開始要求に含まれる利用者IDおよびパスワードを認証管理サーバ
101に送信し、認証を依頼する(510)。認証管理サーバ101では、受け取った利
用者認証用情報を利用者情報データベースと照合し、認証を行い、結果をブレードサーバ
106に返信する。ここでは、利用者がブレードサーバ106自体にアクセス権限を有す
る者であるか否かを認証する。
When the
ブレードサーバ106が、認証管理サーバ101から認証成功の返信を受けた場合、ブ
レードサーバ106は、アクセスしてきた利用者がブレードサーバ106の利用を許可さ
れたものと判断し、ブレードサーバ106を構成するPCの中から、当該利用者が利用す
べきPCを決定する。PCは、利用順序に応じて適切に割り当てられるか、予め利用者に
1対1などに割り付けられるか、利用者に割り当てられた何らかの権限に応じて割り付け
られるか、のいずれの形態であってもよい。いずれの形態を取るかは管理者が決定する。
ここでは、ブレードサーバ106が、アクセスしてきた利用者にPC−A110を割り当
てたものとして、説明する。他のPCを割り当てた場合も、処理は同様である。
When the
Here, description will be made assuming that the
ブレードサーバ106は、PC−D113に割り当てるPCをPC−A110と決定す
ると、PC−A110の起動状況の確認を行う(511)。PC−A110が起動してい
ない場合、PC−A110を起動する要求をPC−A110に行う(512)。送信した
要求に従ってPC−A110が起動すると(513)、PC−A110は、起動完了を示
す情報をブレードサーバ106に通知する(514)。なお、PC−A110が既に起動
している場合、例えば、PC−A110がサーバ機能を持ち、複数人が同時に利用できる
環境であり、常時通電されている場合など、ステップ511からのPCの起動操作は不要
である。
When the
なお、PCの稼動状況は、PC利用管理テーブル400にアクセスし、該当するPC名
401のステータス410を確認することにより行う。起動後、割り当てたクライアント
装置を、該当するPC名401の利用元端末405として追記する。
The operating status of the PC is determined by accessing the PC usage management table 400 and confirming the
一方、PC−A110が起動すると、PC−A110内にインストールされている仮想
デバイスマネージャ120は、利用可能なデバイスを確認する(515)。具体的には、
仮想デバイスマネージャ120は、認証管理サーバ101に、仮想デバイスマネージャ1
20が稼動するPC(ここでは、PC−A110)が利用可能なデバイスの調査の要求(
以後、利用可能デバイス調査要求と呼ぶ。)を送信する(516)。
On the other hand, when the PC-
The
A request for investigating a device that can be used by the PC (PC-
Hereinafter, it is called an available device investigation request. ) Is transmitted (516).
利用可能デバイス調査要求を受け取った認証管理サーバ101は、デバイスの調査と確
認とを行う(517)。具体的には、利用可能デバイス調査要求を受け取った認証管理サ
ーバ101は、まず、新規デバイスが新たに登録されているか否かを確認し、既に保持し
ているデバイス情報テーブル200の更新を行う(518)。認証管理サーバ101は、
利用可能デバイス調査要求を受けて、現時点でデバイス情報テーブル200に登録されて
いる各デバイスについて、当該デバイスが接続されているそれぞれのPCまたはハブなど
のクライアント装置のデバイス管理マネージャに向けて、登録されている各デバイスが依
然として利用可能か否かの問い合わせを行う(519)。
The
Upon receipt of the available device investigation request, each device currently registered in the device information table 200 is registered toward the device management manager of the client apparatus such as each PC or hub to which the device is connected. An inquiry is made as to whether each device that is still available is used (519).
認証管理サーバ101から問合せを受けた各クライアント装置のデバイス管理マネージ
ャは、現時点での問合せを受けたデバイスの利用の可否を認証管理サーバ101に返信す
る(520)。なお、各デバイス管理マネージャは、利用の可否を示す情報として、当該
デバイスが既に切断されていた場合は、切断されていることを、接続されている場合は、
各デバイスの「占有中」、「利用中」、「通信中」といった現在のステータスを返信する
。認証管理サーバ101は各デバイス管理マネージャから受け取った情報を用いて、デバ
イス情報テーブル200を更新する。切断されているとの情報を受けた場合は、当該デバ
イスに関するレコードを削除する。
The device management manager of each client device that has received an inquiry from the
Returns the current status of each device, such as “Occupied”, “In Use”, and “Communicating”. The
そして、認証管理サーバ101は、デバイス情報テーブル200に登録されているデバ
イスを現時点での利用可能デバイスとして、問合せ元の仮想デバイスマネージャ120に
送信する(521)。
Then, the
次に、仮想デバイスマネージャ200は、デバイス情報テーブル200の情報に基づき
、デバイスを共有する処理を行う。現時点では、仮想デバイスマネージャ120は、利用
者の認証を行っていない状態なので、利用可能デバイスのチェックを行う際にデバイス情
報テーブルにおいて利用可能IDの制限のあるデバイスについては共有処理を行うことが
できない。従って、仮想デバイスマネージャ200は、デバイス情報テーブル200に登
録されているデバイスであって、利用可能ID211が未定義のデバイスを抽出し、これ
らの利用可能なデバイスとの間で、チャネルを生成するなどの通信準備を行う(522、
523)。なお、認証管理サーバ101は、仮想デバイスマネージャ120から利用可能
デバイス調査要求を受けた場合(516)、各デバイス管理マネージャ123に問い合わ
せを行わず、その時点でデバイス情報テーブル200に登録されているデバイスであって
、利用可能ID211が未定義のデバイスを抽出し、問合せ元の仮想デバイスマネージャ
120に返信するよう構成してもよい(521)。この場合、ステップ517〜520の
処理は行われない。
Next, the
523). When the
なお、チャネルの生成は、仮想デバイスマネージャ120が、ステップ521で利用可
能デバイスとして受け取った各デバイスが接続されているクライアント装置が備えるデバ
イス管理マネージャとの間で、お互いのIPアドレスと認証管理サーバ101から与えら
れた情報とを元に相互認証、鍵交換を行い、暗号通信路を形成することにより行なわれる
(523)。
The channel is generated by the
相互認証の方法の一例として、認証管理サーバ101が、デバイス管理マネージャ12
3についてはデバイス情報送受信時に、また仮想デバイスマネージャ120については利
用デバイス返信時に、それぞれプリシェアードキー(事前共有鍵)を安全に送付しておき
、その事前共有鍵を元に認証を行う方式が挙げられる。相互認証の方式は特に本方法に限
らず、チャネルの生成を行っている相手が、特定のデバイス管理マネージャと仮想デバイ
スマネージャとであることが確認できれば良い。
As an example of the mutual authentication method, the
3 is a method in which a preshared key (pre-shared key) is securely sent when device information is transmitted / received, and when a
相互認証が終了した後、仮想デバイスマネージャ120とデバイス管理マネージャとの
間でID情報およびデータをやり取りするための暗号用の鍵が交換される。以降、ここで
交換された暗号用の鍵を用いてデバイス管理マネージャと仮想デバイスマネージャ120
とが通信を行う。このため、第三者にはID情報およびデータをやり取りする通信は盗聴
不可能になる。この暗号用の鍵は、固定値でもよいが、1回の利用ごともしくは一定の期
間で破棄され、新たな暗号用の鍵が生成されるようにしてもよい。
After the mutual authentication is completed, an encryption key for exchanging ID information and data is exchanged between the
And communicate. For this reason, it is impossible to eavesdrop on communication for exchanging ID information and data with a third party. The encryption key may be a fixed value, but may be discarded every time it is used or after a certain period, and a new encryption key may be generated.
本実施形態では、このように仮想デバイスマネージャ120とデバイス管理マネージャ
123との間でチャネルが生成された場合、当該デバイス管理マネージャ123が管理す
るデバイスが共有可能な状態となったと呼ぶ。このような第三者に盗聴不可能な通信路(
チャネル)により、PC−A110は、PC−A110にデバイスA151が直接接続さ
れた場合と同様に、デバイスA151を制御することができる。
In the present embodiment, when a channel is generated between the
The channel) allows the PC-
すなわち、本実施形態において、「デバイスの共有」とは、PC−A110にデバイス
A151が直接接続された時と同様にPC−A110が処理を行うことができるようPC
−A110が動作することである。例えば、PC−D113に接続されているデバイスA
151について「デバイスの共有」が実現された場合、デバイスA151からデバイス管
理マネージャ123、仮想デバイスマネージャ120を介してPC−A110がデバイス
A151内に設定されている通信方式やデスクリプタを読み出したり、リセットしたりす
ることができる。
In other words, in this embodiment, “device sharing” means that the PC-
-A110 is to operate. For example, the device A connected to the PC-
151, when “device sharing” is realized, the PC-
なお、PC−A110において、デバイスA151を過去に利用したことがない場合、
必要なデバイスドライバをインストールする。一般的には、デバイスの共有が行われた際
、PC−A110上で動作しているオペレーティングシステムが新しく追加されたデバイ
スを自動的に認識し、当該デバイスの動作に必要なデバイスドライバのインストール作業
を行う。このようなインストール作業は、PC−A110において初めて使用するデバイ
スがPC−A110と他の機器との間で共有された際に発生し、過去に使用したデバイス
であれば、既に必要なドライバがPC−A110にインストールされているため、発生し
ない。
In addition, in PC-A110, when the device A151 has not been used in the past,
Install the necessary device drivers. Generally, when a device is shared, the operating system operating on the PC-
なお、PC−A110上で動作しているオペレーティングシステムが上記のような自動
的にデバイスを認識し、必要なデバイスドライバのインストールを行う機能を持たない場
合は、管理者または利用者が手動でデバイスドライバのインストールを行い、デバイスが
利用可能となるようPC−A110の設定を変更する。
Note that if the operating system operating on the PC-
また、複数の利用者がデバイスA151を共有している場合、各利用者がそれぞれ独立
にリセットを指示したり、通信したりする場合がある。このような場合は、デバイス管理
マネージャ123は、リセットを受け付けないような手順に変更したり、すでにデバイス
A151より取得し、デバイス管理マネージャ123内に保存していた情報を代わりに送
信したりするよう構成する。具体的には、仮想デバイスマネージャ120からの特定の通
信に対し、予め定められた応答を行う。
In addition, when a plurality of users share the
なお、ここで生成されたチャネルの情報は、認証管理サーバ101に送信され(591
)、認証管理サーバ101では、受け取った情報を用いてデバイス情報テーブル200を
更新する(592)。
Note that the channel information generated here is transmitted to the authentication management server 101 (591).
The
以上の処理によりPC−A110がPC−D113の利用者により利用可能となる。
With the above processing, the PC-
次に、利用者がPC−D113を介してPC−A110の利用を要求する。すなわち、
PC−D113は利用者からPC−A110を利用する指示を受け付けると、PC−D1
13はPCを利用する要求(以後、PC利用要求と呼ぶ、)を生成し、それをPC−A1
10に送信する(524)。このPC利用要求には、利用者を特定する情報、例えば、利
用者ID、パスワードなどが含まれる。
Next, the user requests use of the PC-
When the PC-
13 generates a request for using the PC (hereinafter referred to as a PC use request), and converts it into PC-A1.
10 (524). This PC use request includes information for identifying the user, such as a user ID and a password.
PC−A110は、PC利用者要求を受け取り、ログイン処理を行う(525)。ログ
イン処理は、まず、PC−A110は、利用者要求に含まれる利用者を特定する情報を認
証管理サーバ101に送信する。認証管理サーバ101は、受け取った利用者を特定する
情報と利用者情報データベース300に格納されている情報とを対比し、利用者の認証を
行い、結果をPC−A110に返信する。なお、予め、利用者情報データベース300の
中の項目のうち、ログイン時の利用者認証に必要な項目のみPC−A110も保持し、ロ
グイン時の認証をPC−A110において行うよう構成してもよい。
The PC-
次に、仮想デバイスマネージャ120は、利用可能デバイスのチェックを行う。ここで
は、仮想デバイスマネージャ120は、ログインした利用者についての利用可能デバイス
を抽出する。利用可能デバイスを抽出する手順は、上記516で説明したものと基本的に
同様である。ログインした利用者のIDも問い合わせ時に認証管理サーバ101に送信し
、当該利用者のIDが利用可能IDとして登録されているもののみの返信を受けてもよい
。
Next, the
認証管理サーバ101は、上述の処理と同様に、デバイス情報テーブル200に登録さ
れているデバイス全てについて、当該デバイスが接続されているクライアント装置のデバ
イス管理マネージャに最新の情報を問い合わせ、返信を受け、デバイス情報テーブル20
0を更新した後、問合せ元の仮想デバイスマネージャ120に返信する(529〜532
)。なお、上述同様、認証管理サーバ101は、利用可能デバイス調査要求に応じ、デバ
イス情報テーブル200を参照し、現時点で当該利用者に利用可能なものとして登録され
ているデバイスを、問合せ元の仮想デバイスマネージャ120に返信するよう構成しても
よい(532)。
Similar to the above-described processing, the
After 0 is updated, it is returned to the inquiring virtual device manager 120 (529-532).
). As described above, the
初回の利用可能デバイスのチェック(516〜521)では、利用者が特定されていな
かったので、利用可能IDが限定されているデバイスについては、共有処理、すなわち、
通信路を設定することができなかった。しかし、利用者のログイン(525)以降は、利
用可能IDの中に利用者のIDもしくは利用者の所属するグループのIDが入っているデ
バイスは利用が可能になる。従って、この時点で新たに利用が可能となったデバイスとの
間で、上述と同様、通信路(チャネル)を開設する(533〜534)。
In the first check of available devices (516 to 521), since the user is not specified, the sharing process, that is, for the device for which the available ID is limited,
The communication channel could not be set. However, after the user login (525), a device whose usable ID contains the user ID or the ID of the group to which the user belongs can be used. Accordingly, a communication path (channel) is established with the device that can be newly used at this time, as described above (533 to 534).
なお、利用可能デバイスとの通信準備(533)の段階で、利用可能デバイスの一覧を
PC−A110の画面、PC−D113、または、情報センタ102内の管理者が確認可
能な画面に表示するよう構成してもよい。この場合、これらの画面には、現在共有されて
いるデバイスと、接続可能なデバイスなどのリストが表示されることとなる。仮想デバイ
スマネージャ120が保持している前回終了時刻にデバイス共有リストにあり、現在利用
可能なデバイスは利用者の指示無しにチャネルの生成を行うこと、すなわち、デバイスの
共有を行うことができる。デバイスの共有を行うことが可能なデバイスについての共有設
定を、利用者の指示無しに行うか否かは、管理者または利用者により設定できるよう構成
することが可能である。
At the stage of preparation for communication with available devices (533), a list of available devices is displayed on the screen of the PC-
生成されたチャネルの情報は、認証管理サーバ101に送信される(593)。認証管
理サーバ101では、受け取ったチャネルの情報に従ってデバイス情報テーブル200を
更新する(594)。その後、PC−A110の利用が開始される(535)。
The generated channel information is transmitted to the authentication management server 101 (593). The
ここで、利用可能デバイスのチェック、利用可能デバイス調査要求、デバイスの調査と
確認、デバイス利用可不可問合せ、デバイス情報取得、デバイス情報送信利用可能デバイ
ス返信(526〜534)、チャネル生成情報の送信593、およびテーブルの更新59
4は、PCの利用(535)の間中適宜繰り返し実行され、認証管理サーバ101の持つ
デバイス情報テーブルは常に最新の状態に更新され続ける。
Here, available device check, available device investigation request, device investigation and confirmation, device availability inquiry, device information acquisition, device information transmission available device reply (526 to 534), channel generation information transmission 593 And table update 59
4 is repeatedly executed as needed during the use of the PC (535), and the device information table of the
ここで、利用者がログインした後の仮想デバイスマネージャ120による利用可能デバ
イスのチェックは、定期的に行うことが望ましい。仮想デバイスマネージャ120は、定
期的にデバイス情報テーブル200を確認し、ステータスの変更による共有の可否の変化
を確認する。
Here, it is desirable to periodically check available devices by the
一方デバイス情報テーブル200は、デバイス管理マネージャ120により、デバイス
の接続状況の変化、ステータスの変化など、デバイスに関する状態の変化が発生する毎に
、変化後の状態を示す情報とともに更新するよう認証管理サーバ101に通知がなされる
。
On the other hand, the device information table 200 is updated by the
以上の処理を経て、デバイス管理マネージャ123と仮想デバイスマネージャ120と
が動作し、通信することによりデバイスA151は、PC−A110のデバイスとして動
作することが出来る。すなわち、デバイスA151について、デバイスの共有が実現する
。
Through the above processing, the
次に、本実施形態のデバイス管理システムにおけるデバイス共有終了時の処理について
説明する。図7は、本実施形態のデバイス共有処理終了時の処理フローである。
Next, processing at the end of device sharing in the device management system of this embodiment will be described. FIG. 7 is a processing flow at the end of the device sharing process of the present embodiment.
本図に示す通り、利用者はPC−D113を利用してPC−A110を遠隔操作し、デ
バイスA151の利用を終了し、他の利用者にデバイスA151を解放する。
As shown in this figure, the user remotely operates the PC-
利用者は、PC−D113に対しデバイス利用終了指示を行う(601)。PC−D1
13は、利用者よりデバイス利用終了の指示を受け取ると、仮想デバイスマネージャ12
0にデバイス利用終了の要求(以後、デバイス利用終了要求と呼ぶ。)を送信する(60
2)。仮想デバイスマネージャ120は、デバイス利用終了要求を受け取ると、利用終了
デバイスのチェックを行う(603)。具体的には、仮想デバイスマネージャ120は、
PC−A110において、デバイスの利用を終了してよいかどうか判断する。
The user issues a device use end instruction to the PC-D 113 (601). PC-D1
13 receives a device use end instruction from the user, the virtual device manager 12
A device use end request (hereinafter referred to as a device use end request) is transmitted to 0 (60).
2). Upon receiving the device use end request, the
In PC-
例えば、PC−A110上のアプリケーションや他のクライアント装置がデバイス利用
終了要求の対象デバイスを利用中である場合、利用は終了できない。この場合は、これら
のアプリケーションや他のクライアント装置がデバイス利用終了要求の対象デバイスの利
用を終了するまで終了処理を待つ。この場合、PC−D113に指示されたデバイスの終
了はできない旨を通知する。PC−D113は受け取った通知を利用者に表示などにより
通知する。
For example, when an application on the PC-
なお、この通知は必ずしも行う必要はなく、例えば、所定時間以上待機後であっても利
用終了が行えない場合のみ通知するよう構成してもよい。もちろん、利用終了デバイスの
チェック(603)において、利用終了が可能な場合は、デバイスを特定する情報ととも
に、当該デバイスの利用を終了した旨の通知である利用終了デバイス送信を、認証管理サ
ーバ101に行う(604)。
This notification is not necessarily performed. For example, the notification may be configured only when the use cannot be ended even after waiting for a predetermined time or more. Of course, in the use end device check (603), if the use can be ended, the use end device transmission, which is a notification of the end of the use of the device, is sent to the
次に、認証管理サーバ101は、利用終了デバイス送信を受けて、デバイスの調査と確
認を行う(605)。具体的には、デバイス利用終了要求元のデバイス管理マネージャ1
23に、指示されたデバイスの利用が終了したことを示す情報であるデバイス解放情報送
信を行う(606)。
Next, upon receiving the use end device transmission, the
In
デバイス管理マネージャ123は、デバイスの調査と確認を行う(607)。ここでは
、デバイスからの応答の有無を調べるなどの調査が行われる。応答がなければ、デバイス
情報テーブル200の該当するデバイスのステータスを「不明」とする。
The
一方、デバイスから通常の応答が得られた場合は、デバイス管理マネージャ123は、
仮想デバイスマネージャ120との間に確立されていたチャネルを破棄し(608)、チ
ャネルの破棄に成功した場合、認証管理サーバ101にチャネルの破棄を終えたことを示
す情報であるチャネル破棄情報を送信する(609)。
On the other hand, when a normal response is obtained from the device, the
The channel established with the
認証管理サーバ101は、チャネル破棄情報を受け、デバイス情報テーブル200の更
新(610)を行う。すなわち、この時点で、認証管理サーバ101は、チャネルが破棄
されたデバイスについて、デバイス情報テーブル200のステータス210を、例えば、
「占有中」、「利用中」、「通信中」などから、「未使用」に変更する。
Upon receiving the channel discard information, the
Change from “Occupied”, “In Use”, “Communicating”, etc. to “Unused”.
認証管理サーバ101、デバイス管理マネージャ123および仮想デバイスマネージャ
120は、図6および図7を用いて説明した一連の動作において送信もしくは受信したデ
ータを、それぞれログ191、173、170としてストレージ190、163、160
に記録する。
The
To record.
次に、本実施形態のデバイス管理システムのデバイス共有処理におけるPC−A110
側の擬似バスドライバ1504および通信プログラム1508、PC−D113側の通信
プログラム1510およびフィルタドライバ1514の処理の詳細について説明する。
Next, the PC-
Details of processing of the
図14は、本実施形態のデバイス共有処理の中のPC−D113起動時(図6の502
)のフィルタドライバ1514及び通信プログラム1510の処理を説明するための図で
ある。
FIG. 14 is a diagram when the PC-
) Is a diagram for explaining processing of a
利用者からPC−D113の起動の指示を受け取ると、まず、デバイス管理マネージャ
123は、通信プログラム1510をPC−D113のメモリ上にロードして起動させる
(1605)。また、同様にフィルタドライバ1514を起動する(1606)。通信プ
ログラム1510は、フィルタドライバのオープン処理を行い(1607)、フィルタド
ライバ1514は、通信プログラム1510から利用可能な状態となる。次に通信プログ
ラム1510からイベント待ち要求がフィルタドライバ1514に送信され(1608)
、フィルタドライバ1514は、イベント待ち状態となる(1609)。
Upon receiving an activation instruction for the PC-
The
イベント待ち状態においては、フィルタドライバ1514は、デバイスA151より発
せられた割り込みを通信プログラム1510に送信することが可能であり、通信プログラ
ム1510は、フィルタドライバ1514へ命令を送信することが可能である。なお、イ
ベント待ち状態において、フィルタドライバ1514がPC−D113上に保存されたデ
ータを読み込むか、GUIアプリケーション1509より入力される利用者の指示を通信
アプリケーション1510を介して受け取ることにより、デバイスA151より発せられ
た割り込みをデバイスクラスドライバ1513に送信する設定とすることが出来る。デバ
イスクラスドライバ1513に割込みを送信する設定の場合、図6の起動(502)後は
、デバイスA151をPC−D113より直接操作できる。ここで、通信プログラム15
10がフィルタドライバ1514のオープンに失敗した場合、通信プログラム1510は
、GUIアプリケーション1509にフィルタドライバ1514のオープンに失敗した旨
を通知すると共に、PC−D113内のログにエラー情報を記録し、認証管理サーバ10
1にエラーを報告する。GUIアプリケーション1509は、フィルタドライバ1514
のオープンに失敗した旨の通知を受けると、それを示す画面を図示しない表示装置に表示
させる。
In the event waiting state, the
10 fails to open the
Report the error to 1. The
When a notification that the opening of the screen has failed is received, a screen indicating that is displayed on a display device (not shown).
次にPC−A110の起動時(図6の513)の擬似バスドライバ1504及び通信プ
ログラム1508の処理について説明する。図15は、本実施形態のデバイス共有処理の
中のPC−A110起動時(図6の513)の擬似バスドライバ1504及び通信プログ
ラム1508の処理を説明するための図である。
Next, processing of the
利用者からPC−A110の起動の指示を受け取ると、仮想デバイスマネージャ120
は、まず、擬似バスドライバ1504をPC−A110のメモリ上にロードして起動する
(1601)。次に、擬似バスドライバ1504は、内部にエニュメレータ1506を作
成する(1602)。次に、仮想デバイスマネージャ120は、通信プログラム1603
をPC−A110のメモリ上にロードして起動する(1603)。通信プログラム150
8は、擬似バスドライバ1504のオープン処理を行い(1604)、擬似バスドライバ
1504は、通信プログラム1508から利用可能な状態となる。ここで、通信プログラ
ム1508が擬似バスドライバ1504のオープンに失敗した場合、通信プログラム15
08は、GUIアプリケーション1507に擬似バスドライバ1504のオープンに失敗
した旨を通知すると共に、PC−A110内のログにエラー情報を記録し、認証管理サー
バ101にエラーを報告する。GUIアプリケーション1509は、フィルタドライバ1
514のオープンに失敗した旨の通知を受けると、それを示す画面を図示しない表示装置
に表示させる。
When receiving an instruction to start the PC-
First, the
Is loaded into the memory of the PC-
8 opens the pseudo bus driver 1504 (1604), and the
08 notifies the
When the notification that the opening of 514 has failed is received, a screen indicating the notification is displayed on a display device (not shown).
次に、チャネル生成(図6の523および534)における擬似バスドライバ1504
、通信プログラム1508、通信プログラム1510およびフィルタドライバ1514に
てPC−A110の仮想デバイスマネージャ120とPC−D113のデバイス管理マネ
ージャ123との間にチャネルを生成する処理について説明する。図16は、本実施形態
のデバイス共有処理の中のチャネル生成時の擬似バスドライバ1504、通信プログラム
1508、通信プログラム1510およびフィルタドライバ1514の処理を説明するた
めの図である。
Next, the
Processing for generating a channel between the
チャネルの生成時は、まず通信プログラム1508が、チャネル生成要求を通信プログ
ラム1510に送信する(1611)。次に通信プログラム1510がチャネル生成要求
に対する応答を送信する(1612)。チャネル生成要求1611には、通信プログラム
1508と通信プログラム1510との間で行う暗号通信に利用される鍵を選定するため
の情報が含まれる。また、チャネル生成要求に対する応答1612には、通信プログラム
1508と通信プログラム1510との間で行う暗号通信に利用される鍵を決定するため
の情報が含まれる。
When generating a channel, first, the
チャネル生成要求1611及びチャネル生成要求に対する応答1612の送受信を経て
通信プログラム1508及び通信プログラム1510は、2者の通信内容を傍受されても
通信内容が露呈しないチャネル(暗号通信路)を生成し、通信を開始する。なお、チャネ
ル生成要求1611及びチャネル生成要求に対する応答1612で用いられる暗号鍵情報
として、通信プログラム1508及び通信プログラム1510で独自に生成する暗号鍵情
報、GUIアプリケーション1507及びGUIアプリケーション1509が独自に入手
する暗号鍵情報、すでにPC−A110もしくはPC−D113内に保存されている暗号
鍵情報、認証管理サーバ101などが生成する暗号鍵情報を用いてもよい。
Through transmission / reception of the
チャネル生成要求1611および応答1612の送受信後、通信プログラム1508は
、受信イベント待ち状態となる(1613)。また、通信プログラム1510は、フィル
タドライバ1514にフィルタ開始要求1614を送信する。フィルタ開始要求をフィル
タドライバ1514が受信した後は、フィルタ処理が開始され(1615)、フィルタド
ライバ1514は、物理バスドライバ1515を介して入出力されるデバイスA151の
データを独占的に通信プログラム1510が扱えるようにする。次に、通信プログラム1
510は、受信イベント待ち(1616)状態となる。
After transmission / reception of the
510 is in a reception event waiting (1616) state.
ここで、フィルタドライバ1514が、フィルタ開始要求を受信し、フィルタ処理を開
始(1615)する際の、デバイスA151の初期化処理について説明する。
Here, the initialization process of the
フィルタ処理が開始されると、デバイスクラスドライバ1503からのリクエストが、
フィルタドライバ1514を経てデバイスA151に送信され、PC−A110よりデバ
イスA151が利用可能となる。フィルタドライバ1514がフィルタ開始要求を受信し
た際に、PC−D113がデバイスA151を利用中であると、処理の競合が生じる。こ
れを避けるため、本実施形態のデバイス管理システムにおいては、フィルタドライバ15
14がフィルタ処理を開始する際、以下に示すようにPC−D113からのリクエストの
キャンセル処理とデバイスA151の初期化処理とを行い、デバイスA151に対するP
C−A110とPC−D113とからのリクエストに競合が発生しないよう管理する。以
下に、処理の詳細を説明する。
When the filtering process is started, a request from the
The data is transmitted to the
When 14 starts the filtering process, the request cancellation process from the PC-
The request from the
図22は、本実施形態のデバイス管理システムにおけるフィルタ開始時のOSおよび各
デバイスドライバの処理及び通信を説明するフロー図である。
FIG. 22 is a flowchart for explaining processing and communication of the OS and each device driver at the start of the filter in the device management system of the present embodiment.
フィルタ開始要求1704を受け、フィルタ処理を開始する際、フィルタドライバ15
14は、デバイスA151に対する発行済みのリクエストのうち、処理が終了していない
リクエストのキャンセル処理を行うため、キャンセル要求をデバイスクラスドライバ15
13に送信する(2201)。
When the filter start request 1704 is received and the filter process is started, the filter driver 15
14 performs a cancel process for a request that has not been processed among requests that have been issued to the
13 (2201).
全ての発行済みのリクエストのキャンセル処理が終わると、フィルタドライバ1514
は、デバイスA151が通信プログラム1510から送信されるリクエストに対して正常
に反応するように、デバイスA151の初期化を行う(2202)。
When the cancellation processing of all issued requests is completed, the
Performs initialization of the device A151 so that the device A151 responds normally to the request transmitted from the communication program 1510 (2202).
初期化は、デバイスA151が抜き差しされたような通知をOS1702に対して送信
する、デバイスA151を一旦無効化した後に改めて有効化する命令を発行する、などの
方法により行われる。
The initialization is performed by a method such as sending a notification that the
フィルタドライバ1514がこの初期化を行うことにより、PC−D113上では、デ
バイスA151がPC−D113から切断後に再接続された場合と同様の処理が行われる
。具体的には、OS1702からデバイスクラスドライバ1513を介してID等データ
の要求(初期化要求)がデバイスA151に送信される(2203〜2205)。デバイ
スA151はすべてのID等データの要求に対する返答をデバイスクラスドライバ151
3に対して送信する(2206〜2208)。なお、フィルタドライバ1514が初期化
要求を受け取った際、受け取った初期化要求をデバイスA151に送信せずに保持してい
るデバイスA151のID等データを要求に対する返答としてフィルタドライバ1514
からデバイスクラスドライバ1513に送信するよう構成してもよい。ここで、フィルタ
ドライバ1514が保持しているデバイスA151のID等データは、前回のプラグイン
処理時などに取得したものである。
When the
3 (2206 to 2208). When the
To the
初期化要求の処理が終了した後、デバイスA151に対するリクエストがデバイスクラ
スドライバ1513から送信された場合(2209)、フィルタドライバ1514は、デ
バイスA151は存在しているが、処理が出来ないことを示すエラーデータをデバイスク
ラスドライバ1513に送信する(2210)。このエラーデータは、例えば、「デバイ
スA151内に適切なメディアが挿入されていない」、「デバイスA151が準備中であ
る」といったものであり、デバイスA151の製造元、種別に対応したメッセージが選択
される。
When a request for the
処理2210が行われた以降は、フィルタドライバ1514は、デバイスクラスドライ
バ1513から送信されたリクエストに対して、処理できないことを示すエラーデータを
含んだレスポンスをデバイスクラスドライバ1513に返信することにより、デバイスク
ラスドライバ1513からのリクエストの遮断を行う。
After the process 2210 is performed, the
以降、システムは前述した第2の状態(デバイスA151がPC−A110から利用可
能であるが,PC−D113からは利用できない)で動作するように,制御が切り替わる
。より具体的には,PC−A110上で動作するアプリケーションからデバイスA151
へのリクエストは、デバイスA151に送信されて処理され,デバイスA151からレス
ポンスが返信されるが、PC−D113上で動作するアプリケーションからデバイスA1
51へのリクエストは、デバイスに送信されず、デバイス管理マネージャ123からエラ
ーを含んだレスポンスが返信されるようになる。
Thereafter, the control is switched so that the system operates in the above-described second state (the
Is sent to the
The request to 51 is not transmitted to the device, but a response including an error is returned from the
フィルタドライバ1514がデバイスクラスドライバ1513からのリクエストの送信
に対して適切なエラーを返答できる状態になると、フィルタドライバ1514は、擬似バ
スドライバ1514に対して、デバイスA151が接続された旨を通知する。この処理は
、図17に示す1704〜1719と同様の処理である。
When the
以上の処理をフィルタドライバ1514が行うことにより、PC−D113からのデバ
イスA151へのリクエストと独立して、デバイスA151をPC−A110に直接接続
されているのと同様に利用者に利用させることが出来る。すなわち、物理バスドライバ1
515を介して入出力されるデバイスA151のデータを独占的に通信プログラム151
0が扱うことができるよう、制御することができる。
When the
The
It can be controlled so that 0 can be handled.
なお、図6のチャネルの生成523及び534の処理では、PC−D113上の複数の
デバイスがフィルタされる場合、図6の利用可能デバイス返信521もしくは利用可能デ
バイス返信532により利用可能デバイスであると仮想デバイスマネージャ120におい
て判断されたデバイスに対応したフィルタドライバ1514だけに対してフィルタ開始の
処理が行われ、PC−A110からPC−D113に接続されたデバイスが利用可能とな
る。
In the processing of
次に、図6の処理を終え、デバイスA151が共有可能となりPC−A110のデバイ
スとして動作させることができるようになった後の、デバイス管理マネージャ123と仮
想デバイスマネージャ120との間のデータの送受信制御の詳細について図8を用いて説
明する。ここでは、PC−A110およびPC−D113がネットワーク103を介して
通信を行っている状態で、PC−D113に接続されたデバイスA151を利用者がPC
−A110から利用しようとしているものとする。
Next, after the processing of FIG. 6 is finished, the
-It is assumed that it is going to use from A110.
PC−D113にデバイスA151が接続されると、デバイスA151が接続されてい
るPC−D113の物理バス(本実施形態ではUSBバス)用の物理バスドライバ151
5がデバイスA151を検知し、図示しないOSに対してデバイスA151に対応したデ
バイスドライバの利用準備を行うようにメモリ上にプログラム(デバイスドライバ)をロ
ードするよう指示を出す。そして、OSは予め定められたデバイスドライバ群をロードす
る。
When the
5 detects the
通常、アプリケーション1511とデバイスA151とのデータの送受信には、上位ド
ライバ1512、デバイスクラスドライバ1513、物理バスドライバ1515が介在す
る。しかし、利用者が、デバイスA151をPC−A110より利用する場合、PC−D
113側ではデバイス管理マネージャ123の一部であるフィルタドライバ1514がメ
モリ上の適切な位置にロードされ、物理バスドライバ1515及びデバイスクラスドライ
バ1513の間に配置される。
Normally, the
On the 113 side, a
PC−D113が動作している間、デバイス管理マネージャ123がメモリ上にロード
されて動作している場合は、デバイス管理マネージャ123が、デバイス種別や物理バス
を適切に監視する。
While the PC-
一般にPC−D113のアプリケーション1511からデバイスA151を使用する場
合、デバイス管理マネージャ123は、利用者の意図に応じて適切なデバイスクラスドラ
イバ1513と物理バスドライバ1515との通信がフィルタドライバ1514を介して
行われるように適切にデバイスクラスドライバ1513と物理バスドライバ1515とフ
ィルタドライバ1514とを動作させる。
In general, when using the
しかし、ここでの前提のようにPC−A110からデバイスA151を利用する場合は
、フィルタドライバ151は、物理バスドライバ1515とデバイスクラスドライバ15
13との間の直接の通信を禁止する。すなわち、通信プログラム1510と物理バスドラ
イバ1515との間のリクエスト及びレスポンスを有効とする。なお、デバイスA151
がPC−D113に接続された一連のデバイスドライバのメモリ上へのロード時にフィル
タドライバ1514をロードし、デバイスクラスドライバ1513及び物理バスドライバ
の通信をすべてフィルタドライバ1514を介して行う。ただし、利用者の指示があった
ときに手動で行うよう構成してもよいし、PC−A110上のアプリケーション1501
から指示があった際に行うよう構成してもよい。
However, when the
Direct communication with 13 is prohibited. That is, the request and response between the
The
You may comprise so that it may be performed when there exists an instruction | indication from.
なお、フィルタドライバ1514が通信するデバイスクラスドライバ1513及び物理
バスドライバ1515は、それぞれ利用しようとするデバイスの種別および/またはデバ
イスが接続する物理バスが異なることにより異なる。このため、デバイスクラスドライバ
1513及び物理バスドライバ1515がメモリ上にロードされるごとに適切に変更され
る。
The
一方、PC−A110内では、仮想デバイスマネージャ120が動作している。仮想デ
バイスマネージャ120は、GUIアプリケーション1507を介してデバイスA151
を利用する指示を受け付けると、仮想デバイスマネージャ120は、すでに説明したよう
にPC−A110においてデバイスA151を利用可能か調査し、利用可能であれば、P
C−A110からデバイスA151が利用可能となるように処理を進める。
On the other hand, the
When the instruction to use the device is received, the
The process proceeds so that the device A151 can be used from the C-A110.
PC−D113にデバイスA151が接続され、PC−A110からデバイスA151
を利用可能な条件が整うと、すでに通信路が構築されている通信プログラム1508及び
通信プログラム1510を介してデバイスA151の情報が擬似バスドライバ1504に
送信される。メモリにロードされた擬似バスドライバ1504は内部に起動用物理デバイ
スオブジェクト1505及びエニュメレータ1506の2つのプログラムを生成し動作さ
せる。
A device A151 is connected to the PC-
When the conditions for using the device are satisfied, the information on the
エニュメレータ1506は、通信プログラム1508と通信し、デバイスA151に対
応したデバイスドライバの利用準備を行うため図示しないOSに対してメモリ上に起動用
物理デバイスオブジェクト1505のロードを行うよう指示する。そしてOSは、指示に
従ってロードする。
The
PC−A110上の利用者が利用するアプリケーション1501からデバイスA151
への通信が行われる場合、データは、上位ドライバ1502、デバイスクラスドライバ1
503、起動用物理デバイスオブジェクト1505、エニュメレータ1506、通信プロ
グラム1508、通信プログラム1510、フィルタドライバ1514、物理バスドライ
バ1515を経てデバイスA151に送信される。また、送信データに対する返答や割込
みは逆順で送信される。
From the
When communication is performed, data is stored in the
503, the physical device object for
すなわち、デバイスクラスドライバ1503から発行されたデバイスA151に対する
リクエストは、デバイスA151に対応した起動用物理デバイスオブジェクト1505か
らエニュメレータ1506に送信され、通信プログラム1508を経て、PC−D113
に送信される。送信されたリクエストに対するレスポンスは、逆順にPC−D113から
、通信プログラム1508、エニュメレータ1506、起動用物理デバイスオブジェクト
1505を経てデバイスクラスドライバ1503に送信される。送受信の間、デバイスA
151に対するリクエストやレスポンスは、他のデバイスに対するリクエストやレスポン
スと混同しないように通信プログラム1510および通信プログラム1508によってI
Dやリクエスト番号などの制御データが付加される。最終的にデバイスA151にリクエ
ストが送信される段階もしくはデバイスクラスドライバ1503にレスポンスが戻される
段階で付加した制御データは取り除かれる。
That is, a request for the
Sent to. A response to the transmitted request is transmitted in reverse order from the PC-
Requests and responses to 151 are not communicated with requests and responses to other devices by
Control data such as D and request number is added. Finally, the control data added at the stage when the request is transmitted to the
前述したように、デバイスクラスドライバ1503より発行されたデバイスに対するリ
クエストは、擬似バスドライバ1504から通信プログラム1508をへて通信プログラ
ム1510に送信される。また、送信されたリクエストに対するレスポンスは、逆順に通
信プログラム1510から、通信プログラム1508、擬似バスドライバ1504を経て
デバイスクラスドライバ1503に送信される。途中、デバイスに対するリクエストやレ
スポンスは、他のデバイスに対するリクエストやレスポンスと混同しないように通信プロ
グラム1510及び通信プログラム1508でIDやリクエスト番号などの制御データが
付加される。
As described above, a request for a device issued by the
このとき、通信プログラム1508は、通信の内容を監視し、一部の通信に対しては、
ネットワーク103を介して通信プログラム1510にリクエストを送信することなく通
信プログラム1508自身で擬似バスドライバ1504にレスポンスをする、送信を遅ら
せる、などの対応を行うことにより通信プログラム1508と通信プログラム1510と
の間の通信量を削減する機能を持つ。
At this time, the
The
具体的には、通信プログラム1508は、周期的に行われる生存確認等の予め返答が定
まっているリクエスト等に対する返答を予め保持し、これらのリクエストを擬似バスドラ
イバ1504から受信した場合、当該登録されている返答を自ら擬似バスドライバ150
4に返信する。このような通信量を削減する機能の設定は、GUIアプリケーション15
07またはGUIアプリケーション1509を介して利用者から指示を受け付けて行われ
る。あるいは、認証管理サーバ101を介してシステムの管理者からの指示を受け付ける
。
Specifically, the
Reply to 4. The setting of the function for reducing the communication amount is performed by the GUI application 15.
07 or a
PC−A110及びPC−D113が省電力のために休止またはサスペンド状態となる
設定が成されている場合、デバイスA151がPC−A110から利用可能になっている
状態で、休止またはサスペンド状態になることがある。このような場合、OSは、休止や
サスペンド状態になることを示す通知を通信プログラム1508、通信プログラム151
0、フィルタドライバ1514、擬似バスドライバ1504に送信する。擬似バスドライ
バ1504、フィルタドライバ1514は、休止またはサスペンド状態にならないようそ
れぞれPC−A110とPC−D113との画面上に警告を表示するようそれぞれGUI
アプリケーション1507と1509に指示を行い、OSに対してエラーを送信する。エ
ラーを受信したOSは、休止またはサスペンド状態になることを抑止する。
When the PC-
0, transmitted to the
An instruction is given to the
利用者の設定によっては、デバイスA151がPC−A110から利用可能になってい
る状態で、PC−A110及びPC−D113が休止またはサスペンド状態になる場合、
休止またはサスペンド状態になることを示す通知をOSから受信した通信プログラム15
08、通信プログラム1510、フィルタドライバ1514、擬似バスドライバ1504
は、PC−A110およびPC−D113の画面上に警告を表示するようGUIアプリケ
ーション1507と1509に指示を行うと共に、擬似バスドライバ上のすべての起動用
物理デバイスオブジェクト1505を削除し、通信プログラム1508、1510、フィ
ルタドライバ1514、擬似バスドライバ1504相互間の通信を終了するよう処理を行
う。なお、ここで終了した通信は、PC−A110もしくはPC−D113が休止もしく
はサスペンド状態から復帰した際に、通常の再開手順で通信プログラム1508、151
0、フィルタドライバ1514、擬似バスドライバ1504によって再度開始される。
Depending on the setting of the user, when the
A communication program 15 that has received a notification from the OS indicating that it will be in a suspended or suspended state
08,
Instructs the
0, the
次に、PC−A110からデバイスA151を利用する場合の、データ形式の変換につ
いて説明する。
Next, data format conversion when the device A151 is used from the PC-
PC−D113上のアプリケーション1511から発生するデバイスA151へのリク
エストは、上述のように上位ドライバ1512、デバイスクラスドライバ1513、フィ
ルタドライバ1514、物理バスドライバ1515と、各種のプログラム間を介してデバ
イスA151に送信される。
A request to the
ところが、PC−A110上で動作するアプリケーション1501においてデバイスA
151へのリクエストを送受信する際、各プログラム間でやり取りするリクエストの中に
はPC−A110に固有の情報が含まれている。このPC−A110固有の情報とは、例
えば、DMA(ダイレクトメモリアクセス)転送を行うメモリやバッファのアドレス情報
等である。
However, in the
When transmitting / receiving a request to / from 151, information unique to the PC-
このようなPC−A110固有の情報を含むリクエストをPC−D113上で動作する
通信プログラム1510、フィルタドライバ1514、物理バスドライバ151などのプ
ログラムにそのまま送信すると、PC−D113上の各プログラムが参照不能なアドレス
へアクセスし、デバイス管理システムとしての正常な動作を行うことが出来ない。
If such a request including information unique to the PC-
本実施形態のデバイス管理システムにおいては、上記問題を避けるため、各プログラム
間で、リクエストや返答などの情報を送受信する際に、データ形式の変換を行い、リクエ
ストや返答に含まれる情報が動作するPCによる依存しないよう管理する。以下に、処理
の詳細を説明する。
In the device management system of this embodiment, in order to avoid the above problem, when information such as a request and a response is transmitted and received between the programs, the data format is converted, and the information included in the request and the response operates. Manage not to depend on PC. Details of the processing will be described below.
図23は、擬似バスドライバ1504と通信プログラム1508との間で送受信される
データ、通信プログラム1508と通信プログラム1510との間で送受信されるデータ
、通信プログラム1510とフィルタドライバ1514との間で送受信されるデータのデ
ータ構造と、データ構造の変換処理について説明するための図である。
23 shows data transmitted / received between the
擬似バスドライバ1504が扱うリクエストおよびレスポンスは、構造体2351に示
す構造体の形式を有する。構造体2351は、データA2301、データB2302、…
、データN2303及び、ポインタA2304、ポインタB2305を備える。ポインタ
A2304及びポインタB2305は、PC−A110上のメモリ2352に格納される
情報のメモリアドレス(論理アドレス)を示す。格納される情報はそれぞれ、データX2
306、データY2307である。なお、メモリ2352は、構造体2351がロードさ
れているメモリ領域、もしくは、デバイスの処理用に特別に設けられたメモリ領域、もし
くは、構造体2351がロードされているメモリとは性質の異なるデバイスバスを制御す
るコントローラドライバがCPUを介さずダイレクトにアクセス可能である等デバイスの
処理用に特別に設けられたメモリ領域である。
The request and response handled by the
, Data N2303, pointer A2304, and pointer B2305. A pointer A 2304 and a pointer B 2305 indicate memory addresses (logical addresses) of information stored in the memory 2352 on the PC-
306, data Y2307. Note that the memory 2352 is a memory area loaded with the structure 2351, a memory area specially provided for device processing, or a device bus having a different property from the memory loaded with the structure 2351. This is a memory area specially provided for device processing such that the controller driver for controlling the device can be directly accessed without going through the CPU.
一方、擬似バスドライバ1504と通信プログラム1508との間、通信プログラム1
508と通信プログラム1510との間、通信プログラム1510とフィルタドライバ1
514との間で送受信されるデータは、構造体2353に示す構造体形式を有する。構造
体2353は、データA2308、データB2309、…、データN2310、データX
2311、データY2312を備える。すなわち、PCを超えて送受信される構造体には
、ポインタの代わりに、データそのものが格納される。擬似バスドライバ1504、通信
プログラム1508、通信プログラム1510、フィルタドライバ1514は、構造体2
353の形式のデータを送受信することにより、お互いが要求するリクエストを送受信し
、リクエストに対する返答を送受信する。
On the other hand, between the
508 and
Data transmitted / received to / from 514 has a structure format shown in structure 2353. The structure 2353 includes data A2308, data B2309,..., Data N2310, data X
2311 and data Y2312. That is, data itself is stored in a structure transmitted / received over the PC instead of the pointer. The
By transmitting / receiving data in the format 353, the requests requested by each other are transmitted / received, and responses to the requests are transmitted / received.
擬似バスドライバ1504は、構造体2351に格納されたリクエストをデバイスクラ
スドライバ1503から受け取る。この構造体2351に格納されたリクエストは、デバ
イスクラスドライバ1503の上位のドライバである上位ドライバ1502もしくはアプ
リケーション1501から与えられる命令によりデバイスクラスドライバ1503が生成
するものである。
The
擬似バスドライバ1504は、構造体2351に格納されたリクエストを示すデータと
メモリ2352に格納されたデータとを構造体2353の形式に変換し、変換した構造体
2353の形式を有するデータを通信プログラム1508に送信する。また、擬似バスド
ライバ1504は、構造体2353の形式を有するデータを通信プログラム1508から
受信し、構造体2351の形式に変換し、デバイスクラスドライバ1503および上位ド
ライバ1502を介してアプリケーション1501に送信する。このとき、例えばデータ
X2306、データY2307といったメモリ2352に格納すべきデータは、メモリ2
352上に展開する。メモリ2352上に展開されたデータは、他のドライバやアプリケ
ーション、OS1701に利用される。
The
Expand on 352. The data expanded on the memory 2352 is used for other drivers, applications, and the
PC−D113側では、フィルタドライバ1514が扱うリクエストおよびレスポンス
は、構造体2354に示すような構造体の形式を有する。
On the PC-
構造体2354は、データA2313、データB2314、…、データN2315及び
、ポインタC2316、ポインタD2317を格納する。ポインタC2316及びポイン
タD2317は、PC−D113上のメモリ2355に格納された情報のメモリアドレス
(論理アドレス)を示し、格納された情報はそれぞれ、データX2318、データY23
19である。メモリ2355は、構造体2354がロードされているメモリかもしくは構
造体2354がロードされているメモリとは性質の異なる、デバイスバスを制御するコン
トローラドライバがCPUを介さずダイレクトにアクセス可能である等デバイスの処理用
に特別に設けられたメモリ領域である。
The structure 2354 stores data A2313, data B2314,..., Data N2315, a pointer C2316, and a pointer D2317. A pointer C2316 and a pointer D2317 indicate memory addresses (logical addresses) of information stored in the
19. The
フィルタドライバ1514は、通信プログラム1510から送信された構造体2353
に格納されたリクエストを構造体2354の形式に変換し、フィルタドライバ1514内
に保持する。このとき、例えばデータX2311、データY2312がメモリ2355に
格納すべきデータである場合は、メモリ2355上に展開する。メモリ2355に展開さ
れたデータは他のデバイスドライバやOS1702に利用される。フィルタドライバ15
14は、データX2318、データY2319をメモリ2355上に展開すべきか否かを
、予め決められたポリシーに従って判断する。このポリシーは利用者により、設定および
変更される。
The
Is converted into the structure 2354 format and stored in the
14 determines whether data X2318 and data Y2319 should be expanded on the
構造体2351、構造体2353、構造体2354、メモリ2352、および、メモリ
2355に格納されるデータは、リクエストの長さ、番号などのヘッダ情報、送信するデ
ータ本体、送信すべきデバイスの番号などの情報、送信すべきデバイスの内部のインタフ
ェースの種別や番号、送信するリクエストの性質や種類、実行中のステータス情報等の情
報である。
The data stored in the structure 2351, the structure 2353, the structure 2354, the memory 2352, and the
擬似バスドライバ1504およびフィルタドライバ1514は、データ内に記録されて
いるメモリアドレス情報とメモリアドレスが示すデータとが擬似バスドライバ1504と
フィルタドライバ1514との間で正しく送受信されるよう、上述のように、それぞれ構
造体2351と構造体2353との間、構造体2353と構造体2354との間でデータ
構造を変換する。本変換を行うことにより、擬似バスドライバ1504およびフィルタド
ライバ1514との間で送受信するデータ内に存在するメモリアドレス情報が適切ではな
い機器上で参照されてエラーが発生することを避けることができる。
The
ここで、改めて、擬似バスドライバ1504に送信されたリクエストに含まれる要求が
、擬似バスドライバ1504からデバイスA151に,どのように送信され、リクエスト
に対するレスポンスが,どのように擬似バスドライバ1504に返信されるかを説明する
。
Here, how the request included in the request transmitted to the
擬似バスドライバ1504に送信されたリクエストは、前述のように,PC−D113
内のメモリを参照するポインタを持たない構造体2353に変換される。変換された構造
体2353が、ネットワーク103にて利用可能なプロトコルの仕様にのっとっていない
場合は、通信プログラム1508がネットワーク103上を伝送可能な形式である第二の
リクエストに変換する。
The request transmitted to the
It is converted into a structure 2353 that does not have a pointer that references the internal memory. If the converted structure 2353 does not conform to the specifications of the protocol that can be used in the
第二のリクエストとは、具体的には,構造体2353にネットワークプロトコルで必要
なヘッダなどを付加したものである。例えば、ネットワーク103にてTCP/IPプロ
トコルが利用可能である場合、第二のリクエストは、ヘッダ長とパケット長、識別子、フ
ラグ、生存期間、プロトコル番号、ヘッダチェックサム、始点IPアドレス、終点IPア
ドレス、オプションとデータである構造体2353を含む。
Specifically, the second request is obtained by adding a header or the like necessary for the network protocol to the structure 2353. For example, when the TCP / IP protocol is available on the
通信プログラム1508は,この第二のリクエストを、ネットワーク103を経由して
通信プログラム1510に送信する。
The
通信プログラム1510は、受信した第二のリクエストから構造体2353を取り出し
、フィルタドライバ1514に送信する。フィルタドライバ1514は、構造体2353
を前述のように構造体2354へ変換する。
The
Is converted to a structure 2354 as described above.
すなわち,フィルタドライバ1514は、メモリ2355にデータX2318、データ
Y2319をコピーし、書き込み先のメモリアドレスをそれぞれ、ポインタC2316及
びポインタD2317に格納する。ここで、フィルタドライバ1514は、データX23
18及びデータY2319の容量がメモリ2355に記憶可能な容量以下であるか否かを
チェックし、必要ならば容量の確保を行う。
That is, the
18 and the data Y2319 check whether the capacity is less than the capacity that can be stored in the
構造体2354の形式に変換されたリクエストは、フィルタドライバ1514により、
物理バスドライバ1515を介してデバイスA151に送信される。
The request converted into the structure 2354 is sent by the
The data is transmitted to the
デバイスA151は、図示しないバスコントローラ及びバスを介して物理バスドライバ
1515から送信されるリクエストに対するレスポンスを物理バスドライバ1515に返
信する。フィルタドライバ1514は、物理バスドライバ1515から受け取ったレスポ
ンスがポインタC2316やポインタD2317を用いてデータX2318やデータY2
319を参照していれば,前述のようにPC−D113内のメモリを参照するポインタを
持たず,データX2318やデータY2319そのものを含む構造体2353に変換し,
変換した構造体2353を通信プログラム1510に送信する。
The
If 319 is referenced, it is converted to a structure 2353 that does not have a pointer to refer to the memory in the PC-
The converted structure 2353 is transmitted to the
通信プログラム1510は、送信された構造体2353の情報を用いて、ネットワーク
103にて利用可能なプロトコルの仕様にのっとってネットワーク103上を伝送可能な
形式の第二のレスポンスを作成する。第二のレスポンスとは、具体的には,構造体235
3にネットワークプロトコルで必要なヘッダなどを付加したものである。例えば、ネット
ワーク103にてTCP/IPプロトコルが利用可能である場合、第二のレスポンスは、
ヘッダ長とパケット長、識別子、フラグ、生存期間、プロトコル番号、ヘッダチェックサ
ム、始点IPアドレス、終点IPアドレス、オプションとデータである構造体2353を
含む。
The
3 is added with a header necessary for the network protocol. For example, if the TCP / IP protocol is available on the
It includes a structure 2353 which is a header length and a packet length, an identifier, a flag, a lifetime, a protocol number, a header checksum, a start point IP address, an end point IP address, options and data.
通信プログラム1510は,この第二のレスポンスを、ネットワーク103を経由して
通信プログラム1508に送信する。
The
通信プログラム1508は、送信された第二のレスポンスから構造体2353を取り出
し、擬似バスドライバ1504に送信する。擬似バスドライバ1504は、構造体235
3を前述のように構造体2351へ変換する。
The
3 is converted to a structure 2351 as described above.
すなわち,擬似バスドライバ1504は、メモリ2352にデータX2306、データ
Y2307をコピー(又は移動)し、書き込み先のメモリアドレスをそれぞれ、ポインタ
A2304及びポインタB2305に格納する。ここで、擬似バスドライバ1504は、
データX2306及びデータY2307のサイズがメモリ2352に記憶可能な領域の容
量以下であるか否かをチェックし、必要ならば容量の確保を行う。
That is, the
It is checked whether the size of the data X2306 and the data Y2307 is equal to or smaller than the capacity of the area that can be stored in the memory 2352, and if necessary, the capacity is secured.
前述のように、フィルタドライバ1514による構造体2353から構造体2354へ
の変換における、メモリ2355へのデータX2318、データY2319のコピーまた
は移動と,書き込み先のメモリアドレスのポインタC2316及びポインタD2317へ
の格納は、予め決められたポリシーに従い行われる。このポリシーは、PC−D113の
メモリ上にあり、フィルタドライバ1514が受け取った第二のリクエストを、物理バス
ドライバ1515に送信する際に用いられる。
As described above, in the conversion from the structure 2353 to the structure 2354 by the
同様に,フィルタドライバ1514による構造体2354から,メモリ2355のデー
タX2318、データY2319を含んだ構造体2353への変換も、上記ポリシーに従
い行われる。
Similarly, the conversion from the structure 2354 by the
ポリシーは、利用者によりデバイスドライバやその他のプログラムがPC−D113に
インストールされるときや、デバイスを利用しているときなどに利用者により定められる
か、認証管理サーバ101からPC−D113に通知され、PC−D113のメモリに格
納される。
The policy is determined by the user when a device driver or other program is installed on the PC-
このポリシーは、デバイスA151のようなデバイスの種別(クラス)やデバイスの製
造メーカ、デバイスの種類、デバイスの製造番号、デバイスの接続されているバスやコン
トローラの番号のいずれか1つ以上に従って、定められる。これら,デバイスの種別(ク
ラス)やデバイスの製造メーカといった情報は、デバイスがPC−D113に接続された
際にデバイスの中に保持されている識別子をPC−D113上のデバイスドライバ等のプ
ログラムが読み出し、PC−D113上のメモリに保持する。
This policy is defined in accordance with at least one of a device type (class) such as the
フィルタドライバ1514による構造体2354から構造体2353への変換における
、ポインタC2316及びポインタD2317が指し示すメモリ2355上のデータX2
318及びデータY2319の、構造体2353へのコピーまたは移動は、予め決められ
たポリシーに従い行われる。このポリシーは、PC−D113のメモリ上にある予め決め
られたもので、フィルタドライバ1514が,物理バスドライバ1515から受け取った
レスポンスを,通信プログラム1510,1508を介して擬似バスドライバ1504に
送信する際に用いられる。
Data X2 on the
Copying or moving of the data 318 and the data Y2319 to the structure 2353 is performed according to a predetermined policy. This policy is predetermined in the memory of the PC-
また、同様に擬似バスドライバ1504による構造体2353から構造体2351への
変換における、メモリ2352へのデータX2306、データY2307のコピーまたは
移動と,書き込み先のメモリアドレスのポインタA2304及びポインタB2305への
格納も、予め決められたポリシーに従って行われる。このポリシーは、PC−A110の
メモリ上にあり、擬似バスドライバ1504が,受け取ったレスポンスをデバイスクラス
ドライバ1503に送信する際に用いられる。
Similarly, in the conversion from the structure 2353 to the structure 2351 by the
PC−A110に格納されるポリシーは、利用者によりデバイスドライバやその他のプ
ログラムがPC−A110にインストールされるときや、デバイスを利用しているときな
どに利用者により定められるか、認証管理サーバ101からPC−A110上に送信され
,PC−A110上のメモリに格納される。
The policy stored in the PC-
同様に、PC−D113に格納されるポリシーは、利用者によりデバイスドライバやそ
の他のプログラムがPC−D113にインストールされるときや、デバイスを利用してい
るときなどに利用者により定められるか、認証管理サーバ101からPC−D113上に
送信され,PC−A113上のメモリに格納される。
Similarly, the policy stored in the PC-
このポリシーは、デバイスA151のようなデバイスの種別(クラス)やデバイスの製
造メーカ、デバイスの種類、デバイスの製造番号、デバイスの接続されているバスやコン
トローラの番号に従って、定められる。これら,デバイスの種別(クラス)やデバイスの
製造メーカといったID情報は、デバイスがPC−D113に接続された際にデバイスの
中に保持されている識別子をPC−D113上のデバイスドライバ等のプログラム(例え
ば物理バスドライバ1515)が読み出し、PC−D113のメモリ上に保持すると共に
,例えばフィルタドライバ1514が、通信アプリケーション1510及び通信アプリケ
ーション1508を介して、擬似バスドライバ1504に通知する。
This policy is determined according to the type (class) of the device such as the
デバイス管理マネージャ123は、PC−D113のメモリ上に保持されたID情報を
読み出し、ID情報に適合したポリシーを特定し,利用する。また、デバイス管理マネー
ジャ123は、読み出したID情報を,ネットワークを介して,PC−A110の仮想デ
バイスマネージャ120に送信する。仮想デバイスマネージャ120は、受信したID情
報に適合したポリシーを特定し,利用する。
The
上記のように、仮想デバイスマネージャ120及びデバイス管理マネージャ123をそ
れぞれ動作させることにより、PC−D113上のアプリケーション及びPC−A110
からデバイスA151を動作させることが可能となる。
As described above, by operating the
Thus, the device A151 can be operated.
フィルタドライバ1514は、デバイスA151がPC−D113のデバイスとして利
用されるのか、PC−A110のデバイスとして利用されるのかに応じて、通信プログラ
ム1510と物理バスドライバ1515間の通信と,デバイスクラスドライバ1513及
び物理バスドライバ1515間の通信と,の一方を遮断し,排他制御を行う。一方が利用
できるように切り替えることにより、利用者にPC−D113及びPC−A110からデ
バイスB152をあたかもPCとデバイスが接続されているように利用させる。フィルタ
ドライバ1514での通信の切り替えは、自動的、通信プログラム1510,または,通
信プログラム1510を介した通信プログラム1508からの指示で行われる。または,
これらの通信プログラムに対する、GUIアプリケーション1507、GUIアプリケー
ション1509からの指示で行われる。
The
These communication programs are performed according to instructions from the
切り替えが発生した際には、アプリケーション1501及びアプリケーション1511
、上位ドライバ1502及び上位ドライバ1512、デバイスクラスドライバ1503及
びデバイスクラスドライバ1513が正常に動作するように、各デバイスドライバやアプ
リケーションの初期化がGUIアプリケーションまたは通信アプリケーションから行われ
る。例えば、デバイスA151が一度擬似的に活線挿抜されたような信号をOS、各アプ
リケーション、各デバイスドライバに送信するよう構成する。このような各デバイスドラ
イバやアプリケーションの初期化は、通信プログラム1508、通信プログラム1510
間の通信の不正が検知される、各デバイスドライバやアプリケーションの動作が不正であ
ることが検知される、などの場合に常に実行される。
When switching occurs, the
The device driver and application are initialized from the GUI application or the communication application so that the
It is always executed when an unauthorized communication is detected, or when an operation of each device driver or application is detected.
次に、図6に示したチャネルの生成(523及び534)が終了し、仮想デバイスマネ
ージャ120がデバイスA151をコントロール可能になった後に、デバイスA151を
利用する命令が仮想デバイスマネージャ120に与えられた場合の動作を説明する。図9
は、本実施形態のデバイス管理システムにおけるデバイス利用時の、デバイス管理マネー
ジャ123および仮想デバイスマネージャ120の動作を説明するフローである。ここで
は、仮想デバイスマネージャ120側からトリガがかかった場合の処理について説明する
。
Next, after the channel generation (523 and 534) shown in FIG. 6 is completed and the
These are the flow explaining operation | movement of the
図6に示したチャネルの生成(523及び534)が終了し、仮想デバイスマネージャ
120がデバイスA151をコントロール可能になった後に、デバイスA151を利用す
る命令が仮想デバイスマネージャ120に与えられると(開始700)、仮想デバイスマ
ネージャ120は、デバイスA151が動作するかどうかを確認する(701)。具体的
には、仮想デバイスマネージャ120は、デバイス管理マネージャ123に所定のコマン
ドを送信し、デバイスA151のステータスの取得の可否、通信可能な状態であるか否か
を問い合わせる。または、通信経路が確保されている状態であるかを確認する。そして、
デバイス管理マネージャ123からの返信内容により判断する。
When the channel generation (523 and 534) shown in FIG. 6 is finished and the
Judgment is made based on the reply from the
動作していない場合、デバイスA151が不正な状態にあることを認証管理サーバ10
1に通知し、認証サーバ101および仮想デバイスマネージャ120各々がログ191、
170に記載する(702)。仮想デバイスマネージャ120は、ログ170への記載を
終えると、与えられた命令に対する処理を不正終了する(716)。この際、仮想デバイ
スマネージャ120は、不正終了を示すエラーメッセージを利用者に通知してもよい。さ
らに、不正な状態にあることの通知を受けた際、自動的にデバイスA151との通信の終
了処理を行うよう構成してもよい。また、動作確認の試行は複数回行い、複数回行ったと
しても不正な状態であるとの通知が続く場合、702に進むよう構成してもよい。
If it is not operating, it is confirmed that the
1 and the
170 (702). When the description in the
一方、ステップ701においてデバイスA151の動作が確認された場合、仮想デバイ
スマネージャ120は認証管理サーバ101およびデバイス管理マネージャ123に必要
に応じて生存確認の為の通知を行う(703)。本処理により認証管理サーバ101およ
びデバイス管理マネージャ123はデバイスA151とのチャネルが確立していることの
確認が可能になる。
On the other hand, when the operation of the
次に、仮想デバイスマネージャ120は、デバイスA151を利用するトリガとなる指
示(例えばPC−A110から)を受けたか否かを判別する(704)。トリガとなる指
示がないと判別された場合、ステップ701に戻る。
Next, the
一方、トリガとなる指示があったと判別された場合、仮想デバイスマネージャ120に
おいて、デバイスインタフェースプロトコルにのっとったトランザクションを生成する(
705)。そして、生成されたトランザクションはネットワークプロトコルに規定された
プロトコルに変換されてデバイス管理マネージャ123に送信される(706)。
On the other hand, if it is determined that there is a trigger instruction, the
705). The generated transaction is converted into a protocol defined in the network protocol and transmitted to the device management manager 123 (706).
次に、仮想デバイスマネージャ120は、デバイス管理マネージャ123にトランザク
ション(データ)が正しく到達しているか、正しく到達していない場合その回数が予め指
定した回数を超えていないかを判断する。
Next, the
具体的には、まず、仮想デバイスマネージャ120は、デバイス管理マネージャ123
にデータが正しく到達していない回数が指定回数に達しているか否かを判別する(707
)。
Specifically, first, the
It is determined whether or not the number of times that the data has not reached correctly reaches the specified number (707).
).
指定回数に達している場合、仮想デバイスマネージャ120は、通信が不正な状態にあ
ると判断し、これを認証管理サーバ101に通知するとともに、ログ170に記録する。
通信が不正な状態にあるとの情報は、認証管理サーバ101のログ191でも記録するよ
う構成してもよい。仮想デバイスマネージャ120は、ログ170への記載が終了した後
、不正終了する(709)。仮想デバイスマネージャ120は、エラーを利用者に通知し
てもよいし、自動的にデバイスA151との通信の終了処理に入っても良い。
If the specified number of times has been reached, the
Information that communication is in an unauthorized state may be recorded in the
一方、ステップ707において回数が指定回数に達していない場合、仮想デバイスマネ
ージャ120は、デバイス管理マネージャ123に正しくデータが届いているか否かのチ
ェックを行う(710)。具体的には、送信したデータに対するレスポンスにより、不正
と判断された場合、あるいは、所定の時刻までにレスポンスがない場合、正しく到達して
いないと判断する。そして、正しく到達していないと判断された場合、正しく到達してい
ない回数を1インクリメントし、ステップ707に戻る。
On the other hand, if the number of times has not reached the specified number in step 707, the
ステップ710において正しくデータが届いている場合、仮想デバイスマネージャ12
0は、送信してないトランザクションがあるか否かを確認する(711)。そして、未送
信のトランザクションがある場合、ステップ706に戻り、処理を繰り返す。
If the data has arrived correctly in
0 checks whether there is a transaction that has not been transmitted (711). If there is an untransmitted transaction, the process returns to step 706 to repeat the process.
未送信のトランザクションがない場合、仮想デバイスマネージャ120は、受信すべき
トランザクションがあるか否かのチェックを行う(712)。これは、両者間の通信路を
設定した際に予め定められたデータ量分のデータの送信が終わったか否かにより判断する
。
If there is no untransmitted transaction, the
受信すべきトランザクションがある場合、仮想デバイスマネージャ120は、受信した
データをデバイスインタフェースプロトコルに変換する(713)。次に抽出したデータ
をデバイスドライバに送信し(714)、ステップ712へ戻る。
If there is a transaction to be received, the
一方、ステップ712において受信すべきトランザクションがない場合、仮想デバイス
マネージャ120は、処理を終了する(715)。
On the other hand, if there is no transaction to be received in
なお、上記処理において、処理が不正終了した場合(ステップ716、709)、認証
管理サーバ101、デバイス管理マネージャ123および仮想デバイスマネージャ120
は、処理が不正終了した時点で、適切に利用できるデバイスを再確認し、認証管理サーバ
101内のデバイス情報管理テーブル200を更新する。すなわち、仮想デバイスドライ
バ120は、デバイスが再確認できれば、再び正常な通信を行い、チャネルの生成が可能
であれば生成し、デバイス情報テーブル200のステータスを「占有中」、「通信中」、
「利用中」とする。
In the above process, when the process ends improperly (
Re-checks the devices that can be properly used when the processing ends abnormally, and updates the device information management table 200 in the
“In use”.
次に、図6に示したチャネルの生成(523及び534)が終了し、デバイス管理マネ
ージャ123がデバイスA151をコントロール可能になった後に、デバイスA151が
デバイス管理マネージャ123に対し、情報を送信する場合の動作を説明する。図10は
、本実施形態のデバイス管理システムにおけるデバイス利用時のデバイス管理マネージャ
123および仮想デバイスマネージャ120の動作を説明するフローである。ここでは、
デバイスA151側からトリガがかかった場合の処理について説明する。
Next, after the channel generation (523 and 534) shown in FIG. 6 is completed and the
Processing when a trigger is applied from the
図6に示したチャネルの生成(523及び534)が終了し、デバイス管理マネージャ
123がデバイスA151をコントロール可能になった後に、デバイスA151がデバイ
ス管理マネージャ123へ情報を送信すると(開始800)、デバイス管理マネージャ1
23は、デバイスA151が動作するかどうかを確認する(801)。動作確認は、図9
の処理と同様である。
After the channel generation (523 and 534) shown in FIG. 6 is completed and the
23 confirms whether the
It is the same as the processing of.
動作していない場合、デバイスA151が不正な状態にあることを認証管理サーバ10
1に通知し、認証サーバ101およびデバイス管理マネージャ123各々がログ191、
173に記載する(802)。デバイス管理マネージャ123は、ログ173への記載を
終えると、不正終了する(816)。この際、デバイス管理マネージャ123は、不正終
了を示すエラーメッセージを利用者に通知してもよい。さらに、不正な状態にあることの
通知を受けた際、自動的にデバイスA151との通信の終了処理を行うように構成しても
よい。また、動作確認の試行は複数回行い、複数回行ったとしても不正な状態であるとの
通知が続く場合、802に進むよう構成してもよい。
If it is not operating, it is confirmed that the
1 and the
173 (802). The
一方、ステップ801においてデバイスA151の動作が確認された場合、デバイス管
理マネージャ123は、認証管理サーバ101及び仮想デバイスマネージャ120に必要
に応じて生存確認の為の通知を行う(803)。本処理により認証管理サーバ101及び
仮想デバイスマネージャ120はデバイスA151とのチャネルが確立していることの確
認が可能になる。
On the other hand, when the operation of the
次に、デバイス管理マネージャ123は、デバイスA151を利用するトリガとなる指
示を(例えばPC−A110から)受けたか否かを判別する(804)。トリガとなる指
示がないと判別された場合、ステップ801に戻る。
Next, the
一方、トリガとなる指示があったと判別された場合、デバイス管理マネージャ123に
おいて、デバイスインタフェースプロトコルにのっとったトランザクションを生成する(
805)。そして、生成されたトランザクションはネットワークプロトコルで定義された
パケットに変換されて仮想デバイスマネージャ120に送信される(806)。
On the other hand, if it is determined that there is a trigger instruction, the
805). The generated transaction is converted into a packet defined by a network protocol and transmitted to the virtual device manager 120 (806).
次に、デバイス管理マネージャ123は、仮想デバイスマネージャ120に正しくトラ
ンザクション(データ)が到達しているか、正しく到達していない場合、その回数が予め
指定した回数を超えていないかを判断する。
Next, the
具体的には、まず、デバイス管理マネージャ123は、仮想デバイスマネージャ120
にデータが正しく到達していない回数が指定回数に達しているか否かを判別する(807
)。
Specifically, first, the
It is determined whether or not the number of times that the data has not reached correctly reaches the designated number (807)
).
指定回数に達している場合、デバイス管理マネージャ123は、通信が不正な状態にあ
ると判断し、これを認証管理サーバに通知するとともに、ログ173に記録する。通信が
不正な状態にあるとの情報は、認証管理サーバ101のログ191でも記録するよう構成
してもよい。デバイス管理マネージャ123は、ログ173への記載が終了した後、不正
終了する(809)。デバイス管理マネージャ123は、エラーを利用者に通知してもよ
いし、自動的にデバイスA151との通信の終了処理に入っても良い。
If the specified number has been reached, the
一方、ステップ807において回数が指定回数に達しない場合、デバイス管理マネージ
ャ123は、仮想デバイスマネージャ120に正しくデータが届いているか否かのチェッ
クを行う(810)。ここで、正しく到達していないと判断された場合、正しく到達して
いない回数を1インクリメントし、ステップ807に戻る。
On the other hand, if the number of times does not reach the specified number in step 807, the
ステップ810において正しくデータが届いている場合、デバイス管理マネージャ12
3は、送信してないトランザクションが残っているか否かのチェックを行う(811)。
そして、未送信のトランザクションが残っている場合、ステップ806に戻り、処理を繰
り返す。
If the data has arrived correctly in
3 checks whether a transaction that has not been transmitted remains (811).
If an untransmitted transaction remains, the process returns to step 806 to repeat the process.
未送信のトランザクションが残っていない場合、デバイス管理マネージャ123は、受
信すべきトランザクションがあるか否かのチェックを行う(812)。
If no unsent transaction remains, the
受信すべきトランザクションがある場合、デバイス管理マネージャ123は、受信した
データをデバイスインタフェースプロトコルに変換する(813)。そして、抽出したデ
ータをデバイスドライバに送信し(814)、ステップ812へ戻る。
If there is a transaction to be received, the
一方、ステップ812において受信すべきトランザクションがない場合、デバイス管理
マネージャ123は、処理を終了する(815)。
On the other hand, if there is no transaction to be received in
なお、上記処理において、処理が不正終了した場合(ステップ816、809)、認証
管理サーバ101、デバイス管理マネージャ123および仮想デバイスマネージャ120
は、処理が不正終了した時点で、適切に利用できるデバイスを再確認し、認証管理サーバ
101内のデバイス情報管理テーブル200を更新する。すなわち、デバイス管理マネー
ジャ120は、デバイスが再確認できれば、再び正常な通信を行い、チャネルの生成が可
能であればチャネルを生成し、デバイス情報管理テーブル200のステータスを「占有中
」、「通信中」、「利用中」とする。
In the above process, when the process ends improperly (
Re-checks the devices that can be properly used when the processing ends abnormally, and updates the device information management table 200 in the
以上の動作によって認証管理サーバ101及び仮想デバイスマネージャ120及びデバ
イス管理マネージャ123により蓄積されたログ191、170、173は、ネットワー
ク管理者により、認証管理サーバ101もしくはその他の管理機器にインストールされた
管理アプリケーションによって表示される。
The
図11に管理アプリケーションにより表示されるログ管理画面の一例を示す。本図に示
した管理ログは、認証管理サーバ101、仮想デバイスマネージャ120およびデバイス
管理マネージャ123内に保存されたログ191、170、173を、認証管理サーバ1
01が収集し、自身のストレージ190もしくはメモリに蓄積したものを表示したもので
ある。
FIG. 11 shows an example of a log management screen displayed by the management application. The management log shown in the figure includes
01 is collected and stored in its
この表示のためのアプリケーション(管理アプリケーション)は、認証管理サーバ10
1以外にあっても良い。その場合、認証管理サーバ101からの許諾を受けて表示が行わ
れる。情報センタ102およびブレードサーバ106が複数存在する構成では、管理アプ
リケーションは、認証管理サーバ101以外の認証管理サーバとその管理するアプリケー
ションとからログを収集し、集めたログを合わせたものを表示しても良い。
The application (management application) for this display is the
It may be other than 1. In that case, the display is performed with permission from the
デバイス管理画面1000は、管理アプリケーションが表示するデバイスの管理を行う
ための画面である。デバイス管理画面1000には、蓄積された各ログ191、170、
173の、番号1001、時刻1002、デバイスID1003、デバイス名1004、
アドレス(ソース)1005、ネットワークインタフェースID(ソース)1006、ア
プリケーションID1007、アドレス(ホスト)1008、ネットワークインタフェー
スID(ホスト)1009、アプリケーションID1010、ベンダID1011、製品
ID1012、シリアル番号1013、デバイス名1014、利用ユーザID1015、
情報1016、備考1017の各項目が表示される。
The
173,
Address (source) 1005, network interface ID (source) 1006, application ID 1007, address (host) 1008, network interface ID (host) 1009, application ID 1010, vendor ID 1011, product ID 1012, serial number 1013, device name 1014, user ID1015,
Each item of information 1016 and remarks 1017 is displayed.
番号1001は、ログを管理するための番号であり、ログが蓄積される毎に自動的に付
与される。時刻1002は、ログが記録された日時である。情報1016は、ログ170
、173、191にログとして記録されたイベントの内容が詳細に表示される。
A
, 173, 191 display the details of the events recorded as logs.
アドレス(ソース)1005、アドレス(ホスト)1008は、ソース及びホスト(デ
ィスティネーション)のアドレスを示す。ネットワークインタフェースID(ソース)1
006及びネットワークインタフェースID(ホスト)1009は、ソース及びホスト(
ディスティネーション)のネットワークインタフェースIDを示す。備考1017には、
情報1016にて表示しきれない情報、例えば、管理者に注意を促す情報、情報1016
を補足する情報が表示される。
An address (source) 1005 and an address (host) 1008 indicate the addresses of the source and host (destination). Network interface ID (source) 1
006 and the network interface ID (host) 1009 are the source and host (
Destination network interface ID. Remark 1017 includes
Information that cannot be displayed in the information 1016, for example, information that prompts the administrator to pay attention, information 1016
Information supplementing is displayed.
その他の項目は図2〜4を用いて説明したデバイス情報テーブル200、利用者情報デ
ータベース300、PC利用管理テーブル400の同名の項目と同じものである。
Other items are the same as the items with the same names in the device information table 200, the
また、認証管理サーバ101は、デバイス管理画面1000に表示される各情報を検索
する機能を持った管理アプリケーションを搭載している。デバイス管理画面1000に示
す情報を管理アプリケーションが表示することにより、どの機器やデバイスがどのような
状態であるのかを瞬時に把握することができ、システム全体の利便性が向上する。例えば
、不正な認証が起こった場合の情報のみを検索して表示し、監視することにより、不正ア
クセスを発見し、その対策を講じることができる。また、適切にデバイスを利用できない
場合の情報のみを検索して表示し、監視することにより、システム内で発生しているトラ
ブルを早期発見し、対応することができる。さらに、管理アプリケーションによりログ全
体を一覧することと比較して表示を見やすくすることにより、管理者のオペレーションミ
スを減らすことができる。これらにより、システム全体のセキュリティが向上するという
効果が得られる。
In addition, the
また、認証管理サーバ101が収集したログ191、170、173は、収集時に認証
管理サーバ101とは別のサーバにコピーされ、改ざん防止の措置が行われる。この改ざ
ん防止措置の行われたログは、企業内で情報漏えい等の不正が起こった際に、情報がどこ
でどのように不正に処理されたり、持ち出されたかなどの検証に用いることが出来る。こ
の際、改ざん防止措置の行われたログの変更権限を認証管理サーバ等の機器及びシステム
管理者に与えないことが必要となる。
Further, the
次に、図6に示したチャネルの生成(523及び534)が終了した後に、利用者によ
ってPC−A110から利用可能な新たなデバイス(以後、デバイスA151aと呼ぶ。
)がPC−D113に接続された際のプラグイン処理について説明する。図17は、本実
施形態のデバイス管理システムにおける新たなデバイスA151aがPC−D113に接
続された際の動作を説明するフローである。
Next, after the channel generation (523 and 534) shown in FIG. 6 is completed, a new device that can be used by the user from the PC-A 110 (hereinafter referred to as device A 151a).
) Will be described plug-in processing when connected to the PC-
新たなデバイスA151aがPC−D113に接続(プラグイン)されると、PC−D
113上のOS1702がプラグインを検知し、フィルタドライバ1514にプラグイン
通知を行う(1703)。フィルタドライバ1514、通信プログラム1510、通信プ
ログラム1508は、それぞれ通信プログラム1510、通信プログラム1508、擬似
バスドライバ1504にプラグイン通知を順に送信する(1704〜1706)。
When a new device A 151a is connected (plugged in) to the PC-
The
ここで、仮想デバイスマネージャ120は、新しいデバイスA151aを利用者が利用
可能であるか否かの判断を行い、利用可能である場合、擬似バスドライバ1504内に起
動用物理デバイスオブジェクト1505を生成する(1707)。上述したように、起動
用物理デバイスオブジェクト1505は仮想デバイスマネージャ120内に複数作成する
ことが可能で、原則として個々のデバイスに対応して作成される。
Here, the
擬似バスドライバ1504は、通信プログラム1508にイベント待ち要求を返信し(
1708)、通信プログラム1508は、イベント待ち状態となる。
The
1708), the
擬似バスドライバ1504は、PC−A110のOS1701に対し、デバイス接続の
有効無効確認を要求する(1709)。OS1701は、デバイス接続の有効無効確認の
ため、擬似バスドライバ1504及びその他のバスドライバに対し、オブジェクトのポイ
ンタ要求を行う(1710)。擬似バスドライバ1504及びその他のバスドライバは、
自身の管理するドライバに対応する起動用物理デバイスオブジェクト1505やエニュメ
レータ1506等のオブジェクトポインタをOS1701に送信する(1711)。次に
OS1701は、存在確認の完了したデバイスA151aのデバイス名の要求を行う(1
712)。これに応答して擬似バスドライバ1504及びその他のバスドライバは、自身
の管理するデバイスA151aのデバイス名をOS1701に送信する(1713)。次
にOS1701は、存在確認の完了したデバイスA151aのIDの要求を行う(171
4)。これに応答して擬似バスドライバ1504及びその他のバスドライバは、自身の管
理するデバイスA151aのデバイスIDやデバイスの製造元IDや製品IDなどのID
情報をOS1701に送信する(1715)。以上の処理が正常に完了した際に、OS1
701は、擬似バスドライバ1504にデバイスA151aの利用開始を許可する(17
16)。また、ここで返信するデバイス、ID等のデスクリプタは、フィルタドライバ1
514が、デバイスA151aから受け取った情報でありプラグイン通知(1704〜1
706)により擬似バスドライバ1504に送信されている。
The
An object pointer such as a start
712). In response to this, the
4). In response to this, the
Information is transmitted to the OS 1701 (1715). When the above processing is completed normally, OS1
701 permits the
16). Also, the device and ID descriptors returned here are the
514 is information received from the device A 151a, which is a plug-in notification (1704-1).
706) to the
1710〜1715のデバイス情報の取得処理(プラグイン処理)が正常に行われない
場合は、OS1701は、利用者に対し、デバイスA151aが正常に利用できない旨を
グラフイカルユーザインターフェース(GUI)アプリケーション1501等を通じて利
用者に示すとともに、PC−A110内や認証管理サーバ101のログに記録する。次に
、擬似バスドライバ1504及び通信プログラム1508は、それぞれ通信プログラム1
510及びフィルタドライバ1514にプラグイン完了通知を行う(1717、1718
)。通信プログラム1510は、イベント待ち要求をフィルタドライバ1514に送信す
る(1719)。
When the device information acquisition process (plug-in process) 1710 to 1715 is not normally performed, the
510 and the
). The
以上の処理により、新しくPC−D113に接続されたデバイスがPC−A110より
利用が可能となる。
Through the above processing, a device newly connected to the PC-
次に、図6に示したチャネルの生成(523及び534)が終了した後に、PC−A1
10から利用可能であったデバイスA151が利用者によりPC−D113から切断もし
くは利用不能状態とされた際のプラグアウト処理について説明する。図18は、本実施形
態のデバイス管理システムにおいて、デバイスA151がPC−D113から切断もしく
は利用不能状態(プラグアウト)にされた際の動作を説明するフローである。
Next, after the channel generation (523 and 534) shown in FIG.
A plug-out process when the
デバイスA151がPC−D113からプラグアウトされると、PC−D113上のO
S1702がプラグアウトを検知し、フィルタドライバ1514にプラグアウト通知を行
う(1801)。フィルタドライバ1514及び通信プログラム1510及び通信プログ
ラム1508は、それぞれ通信プログラム1510、通信プログラム1508、擬似バス
ドライバ1504にプラグアウト通知を順に送信する(1802〜1804)。
When
In step S1702, the plug-out is detected, and the
ここで、仮想デバイスマネージャ120は、デバイスA151を利用中のアプリケーシ
ョン等がないかなど、デバイスA151のプラグアウトの可否の判断を行う。
Here, the
プラグアウト可能である場合、擬似バスドライバ1504は、以下に述べる起動用物理
デバイスオブジェクト1505を消滅させるための手続きを行う。
If plug-out is possible, the
まず、擬似バスドライバ1504は、通信プログラム1508にイベント待ち要求を送
信する(1805)と共に、OS1701にデバイス接続の無効確認を要求する(180
6)。
First, the
6).
OS1701は、デバイス接続の無効確認のため、擬似バスドライバ1504及びその
他のバスドライバに対し、オブジェクトのポインタ要求を行う(1807)。擬似バスド
ライバ1504及びその他のバスドライバは、自身の管理するドライバに対応する起動用
物理デバイスオブジェクト1505やエニュメレータ1506等のオブジェクトポインタ
をOS1701に送信する。ここで、擬似バスドライバ1504は、デバイスA151に
対応するオブジェクトポインタが無効である旨を送信する(1808)。
The
以上の処理が正常に完了した際に、OS1701は、擬似バスドライバ1504にデバ
イスの終了を許可する(1809)。処理が正常に完了しない場合は、デバイスの終了が
認められない。1806〜1808の手続きが正常に行われない場合は、擬似バスドライ
バ1504は、利用者に対し、デバイスA151が正常にプラグアウトできない旨を通信
プログラム1508を介しGUIアプリケーション1507に表示するよう指示し、利用
者に示すとともに、PC−A110内や認証管理サーバ101のログに記録する。
When the above processing is normally completed, the
次に、擬似バスドライバ1504及び通信プログラム1508は、それぞれ通信プログ
ラム1510及びフィルタドライバ1514にプラグアウト完了通知を行う(1811、
1812)。この時点でデバイスA151用に生成した起動用物理デバイスオブジェクト
1505は消滅する(1810)。通信プログラム1510は、イベント待ち要求をフィ
ルタドライバ1514に送信し(1813)、以上の処理により、デバイスA151がP
C−D113からプラグアウトされる。
Next, the
1812). At this time, the startup
Plugged out from C-D113.
なお、1804後のプラグアウトの可否の判断において、プラグアウト不可(利用中)
と判断された場合、プラグアウト完了通知の替わりにプラグアウト不可通知が同様に擬似
バスドライバ1504から通信プログラム1508、通信プログラム1510を介してフ
ィルタドライバ1514に送信される。
Note that plug-out is not possible (in use) in determining whether plug-out is possible after 1804
In the case where it is determined that the plug-out is not completed, a plug-out impossible notification is similarly transmitted from the
図17及び図18を用いて説明した新しいデバイスのプラグイン及びプラグアウト時に
は、新規のフィルタドライバ1514のインストールやアンインストールは行われていな
い。このため、PC−D113が利用者に対してデバイスドライバのインストール権限を
与えないシステムである場合、PC−D113のOSがシンクライアント用の限定的なも
のである場合などであっても、利用者は新しくプラグインされたデバイスをPC−A11
0から容易に利用することができるとともに、安全に取り外し(プラグアウト)すること
が出来る。
At the time of plug-in and plug-out of the new device described with reference to FIGS. 17 and 18, the
It can be easily used from 0 and can be safely removed (plugged out).
次に、以上のように説明したプラグインの処理中やプラグイン後にデバイスを利用して
いる間に、デバイスドライバにおいて通信エラーなどが発生した場合や、利用者が、デバ
イスをプラグアウトした場合のシステムの動作を、図26を用いて説明する。
Next, when a communication error occurs in the device driver during the processing of the plug-in described above or while using the device after plug-in, or when the user plugs out the device The operation of the system will be described with reference to FIG.
図26は、デバイス管理マネージャ123にて管理されている、デバイスA151の利
用状態の状態遷移図である。デバイス管理マネージャ123は,デバイスA151の状態
を以下の3状態のいずれかとして管理する。すなわち,
「PC−A110から制御可であり、PC−D113へはエラー応答を返し、PC−A1
10へ接続可能」である状態2601と、
「PC−A110では検知できない状態であり、PC−D113から制御可であり、PC
−A110へ接続可能」である状態2602と、
「PC−A110では検知できない状態であり、PC−D113から制御可であり、PC
−A110へ接続不可」である状態2603,である。
FIG. 26 is a state transition diagram of the usage state of the
“Control is possible from PC-A110, an error response is returned to PC-D113, and PC-A1
“The PC-A110 cannot detect it, it can be controlled from the PC-D113,
A
“The PC-A110 cannot detect it, it can be controlled from the PC-D113,
The
デバイスA151がPC−D113に接続された直後は、デバイスA151は、状態2
602であるとデバイス管理マネージャ123内に記録される。この状態2602では、
デバイスA151は、PC−D113上のアプリケーション等から利用が可能である。
Immediately after the device A151 is connected to the PC-
602 is recorded in the
The
この状態2602で、図17を用いて説明したプラグイン動作が完了し、プラグイン完
了通知1718をデバイス管理マネージャ123が受信した後、デバイスA151は、状
態2601に遷移(2611)したとデバイス管理マネージャ123は認識し,記録する
。この状態2601では、デバイスA151は、PC−A110上のアプリケーション等
から制御が可能な状態になっている。また、PC−D113上のアプリケーション等から
送信されるデバイスA151へのリクエストは、フィルタドライバ1514からエラーを
含むリクエストが返されるなどするため、デバイスA151へ到達せず,結果的に,PC
−D113からは制御できない状態になっている。
In this
-It cannot be controlled from D113.
状態2601から、図18を用いて説明したプラグアウト処理が行われると、デバイス
A151の状態は、状態2602へ遷移(2612)し、遷移した状態は,デバイス管理
マネージャ123が認識し,記録する。
When the plug-out processing described with reference to FIG. 18 is performed from the
デバイスA151の状態が状態2601であって、仮想デバイスマネージャ120内で
エラーが検知されるか、利用者の指示により、図18を用いて説明したデバイスA151
のプラグアウト処理が行われた場合、デバイスA151の状態は、状態2603へ遷移(
2613)する。
The state of the
When the plug-out process is performed, the state of the
2613).
状態2603は、プラグアウトされたデバイスA151を一旦PC−A110に再接続
できない状態にするために設けている。この状態2603に遷移することにより、仮想デ
バイスマネージャ120内でデバイスA151に関するエラーが検知されて,または、デ
バイスA151が利用者の指示により,デバイスA151がプラグアウトされた場合に、
デバイス管理マネージャ123がデバイスA151をプラグインし、再び同じエラーが起
こるのを防ぐことが可能になる。
The
The
状態2603は、デバイスA151を物理的にデバイスバスから切り離した後、再度物
理的にデバイスバスに接続することにより状態2602に遷移(2614)する。利用者
は、一度デバイス管理マネージャ123にて状態2603であると記憶されているデバイ
スを再びPC−A120上のアプリケーション等から利用するためには、物理的にデバイ
スバスから切り離す必要がある。
The
次に、PC−D113またはPC−A110の電源が切断、もしくは休止状態もしくは
サスペンド状態(省電力状態)への移行が起こった場合のシステムの動作について図24
及び図25を用いて説明する。
Next, FIG. 24 shows the operation of the system when the power of the PC-
And it demonstrates using FIG.
図24は、PC−D113にて電源が切断されたか、もしくは休止状態もしくはサスペ
ンド状態への移行が起こった場合のシーケンス図である。PC−D113のOSから電源
の切断もしくは休止状態もしくはサスペンド状態への移行がデバイス管理マネージャ12
3に指示される(2401)と、デバイス管理マネージャ123は、認証管理サーバ10
1及び仮想デバイスマネージャ120に切断要求を送信する(2402,2403)。
FIG. 24 is a sequence diagram in the case where the PC-
3 (2401), the
1 and the
切断要求2402を受信した認証管理サーバ101は、テーブルの更新(601)を行
い、システム内で接続されているデバイスと例えばPC−A110やPC−D113のよ
うな機器との関係を示すテーブルの更新を行う。
Upon receiving the
切断要求2403を受信した仮想デバイスマネージャ120は、仮想デバイスマネージ
ャ120内で処理している、PC−D113に接続されているデバイスに関連する処理中
のリクエストを完了する(2407)。完了の方法は、デバイスの種別に依存するが、例
えば、リクエストに対して,タイムアウトが発生したなどのエラー情報を含んだ返答を送
信する。次に仮想デバイスマネージャ120は、PC−D113に接続されているデバイ
スに関連するデバイスドライバの無効化を行う(2408)。次に、仮想デバイスマネー
ジャ120は、デバイス管理マネージャ123との間に構築した通信チャネルの破棄(セ
ッションの切断)を行う(2409)。
The
通信チャネルの破棄(セッションの切断)(2409)と処理中リクエストの完了(2
407)やドライバの無効化(2408)を行う順序は、デバイスドライバがデバイス管
理マネージャ123との通信が途絶えていることによって、ハングアップする可能性を極
力低めるために、先に処理中リクエストの完了(2407)やドライバの無効化(240
8)の処理を行い、その後にタイムアウトが起きてしまっている通信チャネルの破棄(セ
ッションの切断)を行うことが望ましい。 切断要求を送信したデバイス管理マネージャ
123は、全てのデバイスのプラグアウト処理を行い(2404)、プラグアウトに成功
したデバイスのデバイスドライバは、PC−D113のメモリ上からアンロードされる(
2405)。次にデバイス管理マネージャ123は、仮想デバイスマネージャ120との
間に構築した全ての通信チャネルの破棄(セッションの切断)を行う(2406)。
Discard communication channel (disconnect session) (2409) and complete request being processed (2
407) and driver invalidation (2408) are performed in order to minimize the possibility that the device driver will hang up due to the loss of communication with the
It is desirable to perform the process 8) and then discard the communication channel that has timed out (disconnect session). The
2405). Next, the
通信チャネルの破棄(セッションの切断)(2406)とデバイスのプラグアウト処理
(2404)や再有効化(2405)を行う順序は、デバイスドライバやデバイスA15
1上で動作しているファームウェアが仮想デバイスマネージャ120との通信が途絶えて
いることによって、ハングアップする可能性を極力低めるために、先にデバイスのプラグ
アウト処理(2404)や再有効化(2405)の処理を行い、その後にタイムアウトが
起きてしまっている通信チャネルの破棄(セッションの切断)(2406)を行うことが
望ましい。
The order of communication channel destruction (session disconnection) (2406), device plug-out processing (2404), and revalidation (2405) depends on the device driver and device A15.
In order to minimize the possibility that the firmware operating on 1 will hang up due to the interruption of communication with the
図25は、PC−A110にて電源の切断処理が開始されたか、もしくは休止状態もし
くはサスペンド状態への移行が起こった場合のシーケンス図である。PC−A110のO
Sから電源の切断処理開始もしくは休止状態もしくはサスペンド状態への移行が仮想デバ
イスマネージャ120に指示される(2501)と、仮想デバイスマネージャ120は、
認証管理サーバ101及びデバイス管理マネージャ123に切断要求を送信する(250
2,2503)。
FIG. 25 is a sequence diagram in the case where the power-off process is started in the PC-
When the
A disconnection request is transmitted to the
2,2503).
切断要求2502を受信した認証管理サーバ101は、テーブルの更新(601)を行
い、システム内で接続されているデバイスと例えばPC−A110やPC−D113のよ
うな機器との関係を示すテーブルの更新を行う。
Upon receiving the
切断要求2503を受信したデバイス管理マネージャ123は、PC−A110に関連
する全てのデバイスのプラグアウト処理を行い(2504)、プラグアウトに成功したデ
バイスのデバイスドライバは、再度有効化される(2505)。この再有効化処理250
5の中で、デバイスA151には再起動用の信号が送信される。このため再有効化処理2
505の後には、処理2210に示したデバイスクラスドライバ1513からのリクエス
トの遮断が解除され、デバイスA151は、PC−D113上のアプリケーションから利
用可能となる。
The
5, a restart signal is transmitted to the
After 505, the blocking of the request from the
次にデバイス管理マネージャ123は、仮想デバイスマネージャ120との間に構築し
た通信チャネルの破棄(セッションの切断)を行う(2406)。
Next, the
通信チャネルの破棄(セッションの切断)(2406)とデバイスのプラグアウト処理
(2504)や再有効化(2505)を行う順序は、デバイスドライバやデバイスA15
1上で動作しているファームウェアが仮想デバイスマネージャ120との通信が途絶えて
いることによって、ハングアップする可能性を極力低めるために、先にデバイスのプラグ
アウト処理(2504)や再有効化(2505)の処理を行い、後にタイムアウトが起き
てしまっている通信チャネルの破棄(セッションの切断)(2406)を行うことが望ま
しい。
The order of communication channel destruction (session disconnection) (2406), device plug-out processing (2504), and revalidation (2505) depends on the device driver and device A15.
In order to minimize the possibility that the firmware operating on the
無効化したデバイスドライバを再度有効化する処理2505を行う理由を説明する。デ
バイスA151のような周辺機器は、電源投入後から、接続されているPC−D113の
OSとデバイスドライバの指示により動作する。デバイスドライバがデバイスに送信する
リクエストは、一般的にリクエストの順番が管理されている。よって、リクエストの遮断
を解除する際、デバイスとデバイスドライバの無効化と再有効化を行うことにより、デバ
イスの状態を初期化し、新たにデバイスをPC−D113上のアプリケーションから利用
可能となる。
The reason for performing the
切断要求を送信した仮想デバイスマネージャ120は、仮想デバイスマネージャ120
内で処理している全てのデバイスに関連する処理中のリクエストを完了する(2507)
。完了の方法は、デバイスの種別に依存するが、例えば、タイムアウトが発生したなどの
エラー情報を含んだリクエストに対するレスポンスを送信する。次に仮想デバイスマネー
ジャ120は、PC−D113に接続されているデバイスに関連するデバイスドライバの
無効化を行う(2508)。次に、仮想デバイスマネージャ120は、デバイス管理マネ
ージャ123との間に構築した全ての通信チャネルの破棄(セッションの切断)を行う(
2409)。
The
Complete the request being processed related to all devices that are processing within (2507)
. Although the completion method depends on the type of device, for example, a response to a request including error information such as occurrence of a timeout is transmitted. Next, the
2409).
通信チャネルの破棄(セッションの切断)(2409)と処理中リクエストの完了(2
507)やドライバの無効化(2508)を行う順序は、デバイスドライバがデバイス管
理マネージャ123との通信が途絶えていることによって、ハングアップする可能性を極
力低めるために、先に処理中リクエストの完了(2507)やドライバの無効化(250
8)の処理を行い、その後に通信チャネルの破棄(セッションの切断)(2409)を行
うことが望ましい。
Discard communication channel (disconnect session) (2409) and complete request being processed (2
507) and driver invalidation (2508) are performed in order to minimize the possibility that the device driver will hang up due to the loss of communication with the
It is desirable to perform the process 8), and thereafter, discard the communication channel (disconnect session) (2409).
ここで、認証管理サーバ101への切断要求の送信を行う手順2402及び2502は
必須ではなく、PC−D113に接続されたデバイスが図18を用いて説明した状態遷移
の中で、どの状態になっているかを仮想デバイスマネージャ120及びデバイス管理マネ
ージャ123が共有できていればよい。
Here, the
次に、仮想デバイスマネージャ120もしくは、デバイス管理マネージャ123におい
て、通信のタイムアウトが検出され、仮想デバイスマネージャ120もしくは、デバイス
管理マネージャ123が構築した通信チャネルを破棄(セッションを切断)する場合のシ
ステムの動作について図26、図27を用いて説明する。
Next, the system operation when a communication timeout is detected in the
図27は、PC−D113において、デバイス管理マネージャ123が,予め定められ
た時間,仮想デバイスマネージャ120との通信を確認できず、タイムアウトと判断した
場合のシーケンス図である。
FIG. 27 is a sequence diagram when the
デバイス管理マネージャ123が、タイムアウトを検出する(2701)と、デバイス
管理マネージャ123は、認証管理サーバ101にタイムアウトを検知したという検知結
果を送信する(2702)。検知結果を受信した認証管理サーバ101は、テーブルの更
新(610)を行い、システム内で接続されているデバイスと例えばPC−A110やP
C−D113のような機器との関係を示すテーブルの更新を行う。
When the
The table indicating the relationship with the device such as the
タイムアウトを検知したデバイス管理マネージャ123は、仮想デバイスマネージャ1
20に関連するPC−D113上のデバイスのプラグアウト処理を行い(2504)、プ
ラグアウトに成功したデバイスのデバイスドライバ,すなわち,上位ドライバ1512,
デバイスクラスドライバ1513,フィルタドライバ1514を、再度有効化する(25
05)。
The
20 performs the plug-out processing of the device on the PC-
The
05).
この再有効化処理2505の中で、フィルタドライバ1514は,デバイスA151に
再起動用の信号を送信し,また,2210に示したデバイスクラスドライバ1513から
のリクエストの遮断を解除する。これらの処理により、デバイスA151は、PC−D1
13上のアプリケーションから利用可能となる。
In the
13 applications can be used.
次にデバイス管理マネージャ123は、仮想デバイスマネージャ120との間に構築し
た通信チャネルの破棄(セッションの切断)を行う(2406)。
Next, the
通信チャネルの破棄(セッションの切断)(2406)とデバイスのプラグアウト処理
(2504)や再有効化(2505)を行う順序は、デバイスドライバやデバイスA15
1上で動作しているファームウェアが仮想デバイスマネージャ120との通信が途絶えて
いることによって、ハングアップする可能性を極力低めるために、先にデバイスのプラグ
アウト処理(2504)や再有効化(2505)の処理を行い、その後にタイムアウトが
起きてしまっている通信チャネルの破棄(セッションの切断)(2406)を行うことが
望ましい。
The order of communication channel destruction (session disconnection) (2406), device plug-out processing (2504), and revalidation (2505) depends on the device driver and device A15.
In order to minimize the possibility that the firmware operating on the
図28は、PC−A110において、仮想デバイスマネージャ120が,予め定められ
た時間,デバイス管理マネージャ123との通信を確認できず、タイムアウトと判断した
場合のシーケンス図である。仮想デバイスマネージャ120が、タイムアウトを検出する
(2801)と、仮想デバイスマネージャ120は、認証管理サーバ101にタイムアウ
トを検知したという検知結果を送信する(2802)。検知結果を受信した認証管理サー
バ101は、テーブルの更新(610)を行い、システム内で接続されているデバイスと
例えばPC−A110やPC−D113のような機器との関係を示すテーブルの更新を行
う。
FIG. 28 is a sequence diagram in the PC-
タイムアウトを検知した仮想デバイスマネージャ120は、PC−D113上のデバイ
ス管理マネージャ123に関連するデバイスに対して行っている処理中のリクエストを処
理する(2407)。処理の方法は、デバイスの種別に依存するが、例えば、タイムアウ
トが発生したなどのエラー情報を含んだ,リクエストに対する返答を送信する。 次に仮
想デバイスマネージャ120は、PC−D113に接続されているデバイスに関連するデ
バイスドライバの無効化を行う(2408)。次に、仮想デバイスマネージャ120は、
デバイス管理マネージャ123との間に構築した通信チャネルの破棄(セッションの切断
)を行う(2409)。
The
The communication channel established with the
通信チャネルの破棄(セッションの切断)(2409)と処理中リクエストの完了(2
407)やドライバの無効化(2408)を行う順序は、デバイスドライバがデバイス管
理マネージャ123との通信が途絶えていることによって、ハングアップする可能性を極
力低めるために、先に処理中リクエストの完了(2407)やドライバの無効化(240
8)の処理を行い、その後にタイムアウトが起きてしまっている通信チャネルの破棄(セ
ッションの切断)(2409)を行うことが望ましい。
Discard communication channel (disconnect session) (2409) and complete request being processed (2
407) and driver invalidation (2408) are performed in order to minimize the possibility that the device driver will hang up due to the loss of communication with the
It is desirable to perform the process 8), and then discard the communication channel that has timed out (disconnect session) (2409).
ここで、認証管理サーバ101への検知結果の送信を行う手順2702及び2802は
必須ではない。PC−D113に接続されたデバイスが図18を用いて説明した状態遷移
の中で、どの状態になっているかを仮想デバイスマネージャ120もしくはデバイス管理
マネージャ123が検知していれば良い。
Here, the
仮想デバイスマネージャ120とデバイス管理マネージャ123の通信が復旧した場合
、PC−D113に接続されたデバイスの状態を仮想デバイスマネージャ120とデバイ
ス管理マネージャ123の間で共有し、共有した結果は、認証管理サーバ101へ送信さ
れる。 次に、仮想デバイスマネージャ120が生成し表示させるデバイス管理画面の詳
細について説明する。図12は、仮想デバイスマネージャ120のデバイス管理画面の一
例である。
When the communication between the
本図に示すように、デバイス管理画面900は、認証管理サーバ表示部901と、接続
PCハブ表示部902、905、908、911と、デバイス表示部903、906、9
09、912と、接続切断指示部904、907、910、913とを備える。
As shown in the figure, the
09, 912 and connection
仮想デバイスマネージャ120は、起動されると予め指定されている認証管理サーバ1
01に、利用可能なデバイス情報を取得するよう要求を送る。
When the
A request is sent to 01 to obtain available device information.
認証管理サーバ101において、利用者の認証に成功した後、デバイス管理マネージャ
123からデバイス管理情報が仮想デバイスマネージャ120に送付される。受け取った
デバイス管理情報に従って、仮想デバイスマネージャ120は、利用可能なデバイスの情
報などを管理する。
In the
図12において認証管理サーバ表示部901には、仮想デバイスマネージャ120が通
信している認証管理サーバ101が表示される。図12に示す例では仮想デバイスマネー
ジャ120が認証管理サーバ101と通信に成功している様子が表示されている。ここで
、192.168.0.1と表示されているのは、認証管理サーバ101のアドレスであ
る。
In FIG. 12, the authentication management
ステータス920には、認証管理サーバ101のステータスが表示される。ここでは、
ステータスとして利用可能ユーザIDは何か、利用者名は何かなどが表示されている。図
12の例ではユーザAが認証されている様子が表示されている。
In the
What is available user ID and what user name is displayed as the status. In the example of FIG. 12, a state in which the user A is authenticated is displayed.
接続PCハブ表示部902、905、908、911は、接続されているPC、ハブの
情報が表示される。また、利用者が現在使用中のデバイスが色分けされ表示されている。
The connected PC
デバイス表示部903、906、909、912には、デバイスの名称やステータス、
利用者IDなどの情報が表示され、利用者がどのデバイスを使用可能なのかといった情報
が分かり易く表示される。
The
Information such as the user ID is displayed, and information such as which device the user can use is displayed in an easy-to-understand manner.
接続切断指示部904、907、910、913には、デバイスの利用や専有化、利用
停止、予約など、利用者が指示を与えることの出来る選択肢を表示させる。仮想デバイス
マネージャ120は、予約ボタンの押下を受け付けることにより、現在他者が利用中のデ
バイスの利用予約を行う。そして、デバイスが利用可能となった場合、認証管理サーバ1
01もしくはデバイス管理マネージャ123に利用可能となった旨の通知を行う。通知を
受けたデバイス管理マネージャ123は、利用者に利用可能となった旨の通知を行う。図
12の例では、利用者が利用できるデバイスはハッチングで示され、また利用者が行うこ
とが可能な操作は太字のボタンで示され、操作しやすくなるように配慮されている。
Connection
01 or the
以上、PC−D113を用いてブレードサーバ106内のPC−A110を利用するサ
ーバクライアント方式について説明を行った。
The server client method using the PC-
すでに説明した例と同様にネットワーク103及びインターネット104に接続された
クライアント装置から、ブレードサーバ106内のいずれかのPCを利用し、また、デバ
イスA151〜デバイスZ155を使うことが可能である。
Similar to the example described above, any PC in the
ここで、ハブ116は、PCとしての機能は持たないが、内部に管理マネージャ126
およびストレージ176を持つ組み込み機器である。PC−E114のようにデバイスを
接続していないPCを利用する場合も、PC−D113の例と同様に他のPC等に接続さ
れているデバイスを使用することが可能である。また、ハブ116のように複数台のデバ
イスを接続していても同様である。
Here, the
And an embedded device having a
さらに、インターネット104及びファイヤウォール105を介したPC−Z117を
利用してネットワーク103上のPCやデバイスを利用する場合も、基本的に同様である
。ただし、この場合、PC−Z117は、インターネット104上の通信を暗号化する暗
号化アプリケーション190を内部に持ち、暗号化して通信を行うことが望ましい。
Further, the same applies to the case where a PC or device on the
以上説明したように、本実施形態のデバイス管理システムによれば、デバイス管理マネ
ージャ123が稼動するPC等の情報機器に接続されたデバイスをサーバ上にインストー
ルされた仮想デバイスマネージャ120がサーバに仮想的に接続しているように設定する
。従って、利用者が手元で操作するPC、シンクライアントなどの手元の情報端末と利用
者が手元の情報端末を利用する場所と隔たりのある場所に設置されたサーバとの間でデバ
イスを安全かつ簡便に共有することができ、利用者の利便性が向上する。また、デバイス
を共有する手順の中で認証を行い、デバイスを利用者が利用できるかどうかをルール付け
ることにより、システム利用時のセキュリティの向上を図ることができる。
As described above, according to the device management system of this embodiment, the
また、本実施形態によれば、クライアント側にデバイスを動作させる物理バスドライバ
とのデータの送受信相手を排他制御するフィルタドライバを設け、サーバ側には通信プロ
グラムとの間で擬似的に物理バスドライバと同様の動きをする擬似バスドライバを設けた
ため、デバイスを接続するのみで、他の操作なしでサーバ側からクライアントに接続され
たデバイスを使用することができる(プラグアンドプレイ)。
In addition, according to the present embodiment, the filter driver that exclusively controls the data transmission / reception partner with the physical bus driver that operates the device on the client side is provided, and the physical bus driver is artificially communicated with the communication program on the server side Since the pseudo bus driver that operates in the same manner as described above is provided, it is possible to use the device connected to the client from the server side without any other operation just by connecting the device (plug and play).
サーバとデバイスとが仮想的に接続されるため、操作したPC等の情報機器に残る機密
情報を低減することができ、サーバクライアント方式の情報処理システムにおいて、利用
者の情報機器利用時のセキュリティを向上させることができる。
Since the server and the device are virtually connected, it is possible to reduce confidential information remaining in the information device such as the operated PC, and in the server client type information processing system, the security of the user when using the information device is reduced. Can be improved.
また、本実施形態によれば、サーバ及びクライアント側に電源切断処理やサスペンドも
しくは休止状態への移行が行われた際や、サーバとクライアントの間の通信が途絶えた際
に、クライアント側でリクエストの遮断の解除やデバイスの無効化及び有効化を行い、ク
ライアントに接続していながら,クライアントからの利用を禁止しサーバから利用可能と
していたデバイスを,再度クライアントから利用可能とすることにより、利用者の利便性
を向上させることができる。
In addition, according to the present embodiment, when the server and the client side are turned off or shifted to the suspend or hibernation state, or when communication between the server and the client is interrupted, By canceling the block or disabling and enabling the device, and connecting to the client, prohibiting the use from the client and making the device available from the server available again from the client, Convenience can be improved.
<<第二の実施形態>>
次に、本発明を適用した第二の実施形態について説明する。本実施形態は、基本的に上
述の第一の実施形態と同様の構成を有する。ただし、第一の実施形態では、通信プログラ
ム1508と通信プログラム1510とがネットワーク103を介して直接通信していた
が、本実施形態では、遠隔操作プログラムを介して通信を行う。遠隔操作プログラムとは
、2台のPC上で動作する2つのプログラムがネットワークを介して通信を行い、一方の
プログラムが動作するPCの画面上に他方のプログラムが動作するPCの画面の全部また
は一部を表示するものである。利用者は、遠隔操作プログラムが動作している間は一方の
PCの画面上に他方のPCの画面を表示される。このとき、利用者が物理的に利用してい
るPCへのマウスやキーボード、マイク等を利用した入力操作は、すべて遠隔操作してい
るPCへ送信されるため、利用者は簡単に遠隔地からPCを遠隔操作することが出来る。
<< Second Embodiment >>
Next, a second embodiment to which the present invention is applied will be described. This embodiment basically has the same configuration as that of the first embodiment described above. However, in the first embodiment, the
以下に,第一の実施形態との相違点を説明する。その他の処理は,第一の実施形態と同
様である。
The differences from the first embodiment will be described below. Other processes are the same as those in the first embodiment.
図19は、本実施形態のデバイス管理システムにおける、第一の実施形態の図1に示す
PC−A110とPC−D113との間でのデバイス共有時のデータ送受信制御に必要と
なるソフトウェアを説明するための図である。
FIG. 19 illustrates software necessary for data transmission / reception control when sharing a device between the PC-
第一の実施形態に示したデバイス管理システムでは、通信プログラム1508と通信プ
ログラム1510とが直接ネットワーク103を介して通信している。一方、本実施形態
では、通信プログラム1508は、PC−A110のメモリ上にロードされた遠隔操作プ
ログラム1901と通信を行い、PC−D113の通信プログラム1510は、PC−D
113のメモリ上にロードされた遠隔操作プログラム1902と通信を行う。そして、遠
隔操作プログラム1901と遠隔操作プログラム1902とが互いに通信を行う。
In the device management system shown in the first embodiment, the
The
遠隔操作プログラム1901及び遠隔操作プログラム1902は、利用者がPC−D1
13からPC−A110にログインする、PC−A110のメモリ上で動作するプログラ
ムの処理結果をPC−D113の画面上に表示させる、等の機能を実現するプログラムで
ある。
The
13 is a program that implements functions such as logging in to the PC-
遠隔操作プログラム1901は、予め定められた認証を経て遠隔操作プログラム190
2と接続を行っている。このため、仮想デバイスマネージャ120は、デバイス管理マネ
ージャ123に認証要求を行う必要がない。従って、PC−D113の内部に認証管理サ
ーバ101にアクセスするために必要な認証管理サーバ101のIPアドレス情報等を保
持する、あるいは、利用者に認証管理サーバ101にアクセスするための情報の入力を強
いる必要がない。デバイスA151が接続されているか否かといった情報、接続されてよ
いデバイスの種別といったポリシーは、認証管理サーバ101から仮想デバイスマネージ
ャ120を介してデバイス管理システムに送信される。このため、本実施形態では、PC
−D113側が、例えば、シンクライアントのように、単純な機能のみを有する情報処理
装置であってもよい。
The
2 is connected. Therefore, the
The information processing apparatus having only a simple function, such as a thin client, may be used on the D113 side.
また、本実施形態においては、PC−D113のデバイス管理マネージャ123側から
認証管理サーバ101にアクセスしないため、デバイス共有処理時の処理フローおよびデ
バイス共有終了処理の処理フローは、以下の通りである。
In this embodiment, since the
図20は、本実施形態のデバイス管理システムにおけるデバイス共有処理の処理フロー
である。ここでは、第一の実施形態の図6と同じ処理には同じ符号を付す。
FIG. 20 is a processing flow of device sharing processing in the device management system of this embodiment. Here, the same reference numerals are given to the same processes as those in FIG. 6 of the first embodiment.
本実施形態では、デバイス管理マネージャ123及び仮想デバイスマネージャ120は
、遠隔操作プログラム1901及び遠隔操作プログラム1902を介して通信を行う。
In the present embodiment, the
本図に示すように、本実施形態のデバイス共有処理の処理フローは、基本的に第一の実
施形態の図6に記載のものと同様である。しかし、本実施形態の処理フローでは第一の実
施形態に示したデバイス共有処理の処理フローと異なり、図6の504、505、515
〜523、591、592、529、530、531の処理が省略される。これは、上述
したように、デバイス管理マネージャ123から認証サーバ101へのアクセスを行わな
いからである。
As shown in this figure, the process flow of the device sharing process of this embodiment is basically the same as that shown in FIG. 6 of the first embodiment. However, in the processing flow of this embodiment, unlike the processing flow of the device sharing processing shown in the first embodiment, 504, 505, and 515 in FIG.
The processes of ˜523, 591, 592, 529, 530, and 531 are omitted. This is because the
また、第一の実施形態の処理フローと異なり、チャネル生成(534)の後に、生成さ
れたチャネルの情報が仮想デバイスマネージャ120から遠隔操作プログラム1901を
介して認証管理サーバ101に送信される(チャネル生成情報の送信の処理;2001)
。これは、デバイス管理マネージャ123は、遠隔操作プログラム1902経由で接続さ
れた仮想デバイスマネージャ120に対して、デバイス管理マネージャ123の管理下に
あるすべてのデバイスの利用権限を付与することを意味する。
Unlike the processing flow of the first embodiment, after channel generation (534), the generated channel information is transmitted from the
. This means that the
次に図21を用いて、本実施形態のデバイス管理システムにおけるデバイス共有終了処
理の処理フローを説明する。ここでは、第一の実施形態の図7と同じ処理には同じ符号を
付す。
Next, a processing flow of device sharing end processing in the device management system of the present embodiment will be described with reference to FIG. Here, the same reference numerals are given to the same processes as those in FIG. 7 of the first embodiment.
本実施形態のデバイス共有終了処理時の処理フローは基本的に第一の実施形態の図7に
示す処理と同様である。ただし、本実施形態の場合、認証管理サーバ101からデバイス
解放情報送信(606)を行わない。その替わり、仮想デバイスマネージャ120が、デ
バイス利用終了要求元のデバイス管理マネージャ123に、指示されたデバイスの利用が
終了したことを示す情報であるデバイス解放情報送信を行う(2101)。また、仮想デ
バイスマネージャ120との間に確立されていたチャネルを破棄し、チャネルの破棄に成
功した場合、デバイス管理マネージャ123から認証管理サーバ101へチャネル破棄情
報の送信(609)を行わない。その替わり、仮想デバイスマネージャ120がチャネル
破棄後(608)、認証管理サーバ101にチャネルの破棄を終えたことを示す情報であ
るチャネル破棄情報を送信する(2102)。これは、上述したように、デバイス管理マ
ネージャ123から認証サーバ101へのアクセスを行わないからである。
The processing flow at the time of device sharing end processing of this embodiment is basically the same as the processing shown in FIG. 7 of the first embodiment. However, in this embodiment, device release information transmission (606) is not performed from the
以上説明したように、図20及び図21にて示した処理フローにおいては、デバイス管
理マネージャ123が認証管理サーバ101の例えばIPアドレスのようなアクセス先ア
ドレスを示すデータを保持しなくても処理フローが成立する。
As described above, in the processing flow shown in FIG. 20 and FIG. 21, even if the
以上説明したように、本実施形態のデバイス管理システムによれば、デバイス管理マネ
ージャ123が稼動するPC等の情報機器に接続されたデバイスをサーバ上にインストー
ルされた仮想デバイスマネージャ120がサーバに仮想的に接続しているように設定する
。従って、利用者が手元で操作するPC、シンクライアントなどの手元の情報端末と利用
者が手元の情報端末を利用する場所と隔たりのある場所に設置されたサーバとの間でデバ
イスを安全かつ簡便に共有することができ、利用者の利便性が向上する。また、デバイス
を共有する手順の中で認証を行い、デバイスを利用者が利用できるかどうかをルール付け
ることにより、システム利用時のセキュリティの向上を図ることができる。
As described above, according to the device management system of this embodiment, the
また、本実施形態によれば、クライアント側にデバイスを動作させる物理バスドライバ
とのデータの送受信相手を排他制御するフィルタドライバを設け、サーバ側には通信プロ
グラムとの間で擬似的に物理バスドライバと同様の動きをする擬似バスドライバを設けた
ため、デバイスを接続するのみで、他の操作なしでサーバ側からクライアントに接続され
たデバイスを使用することができる(プラグアンドプレイ)。
In addition, according to the present embodiment, the filter driver that exclusively controls the data transmission / reception partner with the physical bus driver that operates the device on the client side is provided, and the physical bus driver is simulated between the server side and the communication program. Since the pseudo bus driver that operates in the same manner as described above is provided, it is possible to use the device connected to the client from the server side without any other operation just by connecting the device (plug and play).
サーバとデバイスとが仮想的に接続されるため、操作したPC等の情報機器に残る機密
情報を低減することができ、サーバクライアント方式の情報処理システムにおいて、利用
者の情報機器利用時のセキュリティを向上させることができる。
Since the server and the device are virtually connected, it is possible to reduce confidential information remaining in the information device such as the operated PC, and in the server client type information processing system, the security of the user when using the information device is reduced. Can be improved.
さらに、本実施形態のデバイス管理システムにおいては、遠隔操作プログラム1901
と遠隔操作プログラム1902とが通信を開始していないとデバイス管理マネージャ12
3及び仮想デバイスマネージャ120が接続されない。このため、仮想デバイスマネージ
ャ120は、デバイス管理マネージャ123に認証要求を行う必要がなく、第一の実施形
態のデバイス管理システムと比較し、デバイス処理のフローを簡略化することが可能にな
り、不必要な通信コストが発生しない。また、管理認証サーバ101とデバイス管理マネ
ージャ123とが直接通信を行わないため、ネットワーク構成を簡略化することが可能と
なる。
Furthermore, in the device management system of this embodiment, the
And the
3 and the
上記のように、第一及び第二の実施形態に示したデバイス管理システムは、仮想デバイ
スマネージャ120とデバイス管理マネージャ123と認証管理サーバ101とによりク
ライアント装置であるPC−D113等を介してネットワーク103に接続されたデバイ
スを管理することにより、システム内でのデバイスの共有を、安全かつ利用者に使い勝手
良く実現することができる。
As described above, the device management system described in the first and second embodiments includes the
また、第一及び第二の実施形態によれば、他のクライアント装置に接続されているデバ
イスであっても、あたかもサーバ106に直接接続されたデバイスであるかのように使用
することが可能となる。すなわち、デバイスが、他のクライアント装置に接続されている
場合であっても、そのデバイスを使用するために、各クライアント装置には特別な構成が
必要とならない。従って、デバイスを、仮想的にサーバに接続する場合も、直接サーバに
接続する場合も、同じ構成をとることが可能となり、システム全体の製造コストを低減で
きる。
Further, according to the first and second embodiments, even a device connected to another client device can be used as if it were a device directly connected to the
また、第一及び第二の実施形態によれば、認証管理サーバ101により、デバイスの許
可、不許可を管理し、許可されないデバイスは共有するデバイス(仮想デバイス)として
利用できないように設定することができる。このため、ネットワーク103上に接続され
るデバイスの適切な管理を行うことが出来、サーバクライアントシステムにおいて、遠隔
地にあるサーバとの間で、デバイスを共有する場合の安全性を高めることができる。
Further, according to the first and second embodiments, the
また、第一及び第二の実施形態においては、主なプログラムやデータをサーバ側に蓄積
し、クライアント側は主にサーバに操作指示を与えるだけの構成を有するサーバクライア
ントシステムである。従って、操作側のクライアント装置内に残る機密情報を低減すると
いった特徴を残しつつ、クライアント利用時のセキュリティ及び利便性を向上させた情報
処理システムを提供できる。
In the first and second embodiments, a server client system has a configuration in which main programs and data are stored on the server side, and the client side mainly has a configuration that only gives operation instructions to the server. Therefore, it is possible to provide an information processing system that improves security and convenience when using the client while retaining the feature of reducing confidential information remaining in the client device on the operation side.
また、第一及び第二の実施形態では、デバイスがあたかもサーバに接続されているよう
に振舞うため、ウィルスチェッカ等のセキュリティツールやデバイスを動作させるための
プログラムなど、デバイスを利用し、管理するプログラムはサーバ側のみにインストール
すればよく、クライアント側には当該プログラムをインストール不要である。このため、
システム全体のコストをさらに低減する効果がある。
In the first and second embodiments, since the device behaves as if it is connected to the server, a security tool such as a virus checker or a program for using and managing the device such as a program for operating the device. Need only be installed on the server side, and the program need not be installed on the client side. For this reason,
There is an effect of further reducing the cost of the entire system.
なお、上記の第一及び第二の実施形態では、サーバやクライアントにあたる情報機器を
共にPCとして説明を行ったが、一方及び両方がサーバ、Personal Digit
al Assistants(PDA)、ワークステーション、高機能複写機、現金自動
支払機(ATM)、携帯電話、デジタルスチルカメラ、音楽再生(録音)装置、販売時点
商品管理システム、街角端末、Intelligent Transport Syst
ems(ITS)用送信機、券売機、決済端末、自動販売機、入退室管理装置、ゲーム機
、公衆電話、注文取り用携帯端等であってもよい。これらの場合も同様の効果が得られる
。
In the first and second embodiments described above, the information device corresponding to the server and the client is described as a PC. However, one and both of them are a server and a Personal Digit.
al Assistants (PDA), workstation, high-performance copier, cash dispenser (ATM), mobile phone, digital still camera, music playback (recording) device, point-of-sale product management system, street corner terminal, Intelligent Transport System
An ems (ITS) transmitter, a ticket machine, a payment terminal, a vending machine, an entrance / exit management device, a game machine, a public telephone, a portable terminal for order taking, and the like may be used. In these cases, the same effect can be obtained.
101:認証管理サーバ、102:情報センタ、103:ネットワーク、104:インタ
ーネット、105:ファイヤウォール、106:ブレードサーバ、110:PC−A、1
11:PC−B、112:PC−C、113:PC−D、114:PC−E、115:P
C−F、116:ハブ、117:PC−Z、120:仮想デバイスマネージャ、121:
仮想デバイスマネージャ、122:仮想デバイスマネージャ、123:デバイス管理マネ
ージャ、124:デバイス管理マネージャ、125:デバイス管理マネージャ、126:
デバイス管理マネージャ、127:デバイス管理マネージャ、151:デバイスA、15
2:デバイスB、153:デバイスC、154:デバイスD、155:デバイスZ、16
0:ストレージ、161:ストレージ、162:ストレージ、163:ストレージ、16
4:ストレージ、165:ストレージ、167:ストレージ、170:ログ、171:ロ
グ、172:ログ、173:ログ、174:ログ、175:ログ、176:ログ、177
:ログ、1501:アプリケーション、1502:上位ドライバ、1503:デバイスク
ラスドライバ、1504:擬似バスドライバ、1505:起動用物理デバイスオブジェク
ト、1506:エニュメレータ機能デバイスオブジェクト、1507:GUIアプリケー
ション、1508:通信プログラム、1509:GUIアプリケーション、1510:通
信プログラム、1511:アプリケーション、1512:上位ドライバ、1513:デバ
イスクラスドライバ、1514:フィルタドライバ、1515:物理バスドライバ
101: Authentication management server, 102: Information center, 103: Network, 104: Internet, 105: Firewall, 106: Blade server, 110: PC-A, 1
11: PC-B, 112: PC-C, 113: PC-D, 114: PC-E, 115: P
C-F, 116: hub, 117: PC-Z, 120: virtual device manager, 121:
Virtual device manager 122: Virtual device manager 123: Device management manager 124: Device management manager 125: Device management manager 126:
Device management manager 127: Device management manager 151: Device A 15
2: Device B, 153: Device C, 154: Device D, 155: Device Z, 16
0: storage, 161: storage, 162: storage, 163: storage, 16
4: storage, 165: storage, 167: storage, 170: log, 171: log, 172: log, 173: log, 174: log, 175: log, 176: log, 177
: Log, 1501: Application, 1502: High-level driver, 1503: Device class driver, 1504: Pseudo bus driver, 1505: Physical device object for activation, 1506: Enumerator function device object, 1507: GUI application, 1508: Communication program, 1509 : GUI application, 1510: Communication program, 1511: Application, 1512: Upper driver, 1513: Device class driver, 1514: Filter driver, 1515: Physical bus driver
Claims (10)
プログラムの実行の指示を与え、当該サーバから実行結果を受け取るクライアントと、前
記クライアントを認証する認証サーバとがネットワークで接続されたシステムにおいて、
前記クライアントに接続されたデバイスを前記サーバから制御するデバイス管理システム
であって、
前記クライアントは、当該クライアントに接続しているデバイスのデバイスドライバと
の間でデータを送受信するとともに前記サーバとの間で当該データを送受信するデバイス
管理手段を備え、
前記認証サーバは、当該デバイス管理システム内の各デバイスの利用権限を管理するデ
バイス情報保持利用権限管理手段を備え、
前記サーバは、当該サーバ内で動作するアプリケーションと前記デバイス管理手段との
間で前記ネットワークを介して行われるデータの送受信を前記デバイス情報保持利用権限
管理手段に保持されている前記利用権限に従って制御する仮想デバイス管理手段を備え、
前記デバイス管理手段は、前記デバイスドライバと当該クライアントのアプリケーショ
ンとのデータの送受信および前記デバイスドライバと前記サーバとのデータの送受信の間
で排他制御を行うフィルタ手段を備えること
を特徴とするデバイス管理システム。 In a system in which a server that executes an application program, an instruction to execute the application program to the server, a client that receives an execution result from the server, and an authentication server that authenticates the client are connected via a network.
A device management system for controlling a device connected to the client from the server,
The client includes device management means for transmitting and receiving data to and from the server while transmitting and receiving data to and from a device driver of a device connected to the client,
The authentication server includes device information holding and usage right management means for managing usage rights of each device in the device management system,
The server controls transmission / reception of data performed via the network between an application operating in the server and the device management unit according to the usage right held in the device information holding usage right management unit. A virtual device management means,
The device management system includes a filter unit that performs exclusive control between data transmission / reception between the device driver and the client application and data transmission / reception between the device driver and the server. .
プログラムの実行の指示を与え、当該サーバから実行結果を受け取るクライアントと、前
記クライアントを認証する認証サーバとがネットワークで接続されたシステムにおいて、
前記クライアントに接続されたデバイスを前記サーバから制御するデバイス管理システム
であって、
前記クライアントは、当該クライアントに接続しているデバイスのデバイスドライバと
データを送受信するとともに前記サーバとの間で当該データを送受信するデバイス管理手
段を備え、
前記認証サーバは、当該デバイス管理システム内の各デバイスの利用権限を管理するデ
バイス情報保持利用権限管理手段を備え、
前記サーバは、当該サーバ内で動作するアプリケーションと前記デバイス管理手段との
間で前記ネットワークを介して行われるデータの送受信を前記デバイス情報保持利用権限
管理手段に保持されている前記利用権限に従って制御する仮想デバイス管理手段を備え、
前記仮想デバイス管理手段は、前記クライアントに接続しているデバイスとの間で前記
デバイス管理手段を介してデータを送受信し、前記サーバ内で動作するアプリケーション
に対して当該デバイスのドライバとして動作する擬似バスドライバ手段を備えること
を特徴とするデバイス管理システム。 In a system in which a server that executes an application program, an instruction to execute the application program to the server, a client that receives an execution result from the server, and an authentication server that authenticates the client are connected via a network.
A device management system for controlling a device connected to the client from the server,
The client includes device management means for transmitting / receiving data to / from the server while transmitting / receiving data to / from a device driver of a device connected to the client,
The authentication server includes device information holding and usage right management means for managing usage rights of each device in the device management system,
The server controls transmission / reception of data performed via the network between an application operating in the server and the device management unit according to the usage right held in the device information holding usage right management unit. A virtual device management means,
The virtual device management unit transmits / receives data to / from a device connected to the client via the device management unit, and operates as a driver of the device for an application operating in the server A device management system comprising a driver means.
前記擬似バスドライバ手段は、
前記デバイスが前記クライアントに接続すると生成され、当該デバイスを動作させる起
動用デバイスオブジェクトと、
前記デバイスが接続された場合、当該デバイスに対応づけて前記起動用デバイスオブジ
ェクトを生成し、当該デバイスの接続が解除された場合、当該デバイスに対応づけて生成
した前記起動用デバイスオブジェクトを削除するエニュメレータと、を備えること
を特徴とするデバイス管理システム。 The device management system according to claim 2,
The pseudo bus driver means includes
A startup device object that is generated when the device connects to the client and operates the device;
An enumerator that generates the activation device object in association with the device when the device is connected, and deletes the activation device object generated in association with the device when the connection of the device is released A device management system comprising:
前記クライアントと前記サーバとはそれぞれ遠隔操作プログラムを備え、
前記デバイス管理手段と前記仮想デバイス管理手段とは、それぞれ前記遠隔操作プログ
ラムを介して前記データの送受信を行うこと
を特徴とするデバイス管理システム。 The device management system according to claim 2 or 3,
The client and the server each have a remote operation program,
The device management system and the virtual device management unit respectively transmit and receive the data via the remote operation program.
前記擬似バスドライバ手段は、前記デバイス管理手段から前記クライアントに新規にデ
バイスが接続されたことを示す通知を受け取ると、前記サーバのOS(Operatio
n System)との間で当該擬似デバイスドライバが前記新規に接続されたデバイス
のデバイスドライバとして動作するために必要なデバイス情報の取得処理を行い、当該デ
バイス情報の取得処理が正常に完了した場合、前記デバイス管理手段に正常に完了したこ
とを通知すること
を特徴とするデバイス管理システム。 A device management system according to any one of claims 2 to 4,
When the pseudo bus driver means receives a notification indicating that a new device is connected to the client from the device management means, the OS (Operatorio) of the server
n System), the pseudo device driver performs device information acquisition processing necessary to operate as a device driver of the newly connected device, and when the device information acquisition processing is normally completed, A device management system that notifies the device management means of normal completion.
前記サーバは表示手段を備え、
前記仮想デバイス管理手段は、前記デバイス管理手段から前記クライアントに既に接続
されているデバイスとの接続が切断されたことを示す通知を受け取ると、当該デバイスを
利用中のアプリケーションの有無を判別し、
前記擬似バスドライバ手段は、前記利用中のアプリケーションがないと判別された場合
、前記デバイスのデバイスドライバとしての動作を終了するために必要な手続きを行い、
当該手続きが正常に完了した場合、前記デバイス管理手段に正常に完了したことを通知し
、前記手続きが正常に完了しなかった場合、前記表示手段にその旨を通知すること
を特徴とするデバイス管理システム。 A device management system according to any one of claims 2 to 5,
The server comprises display means;
When the virtual device management unit receives a notification indicating that the connection with the device already connected to the client is disconnected from the device management unit, the virtual device management unit determines whether there is an application using the device,
The pseudo bus driver means, when it is determined that there is no application in use, performs a procedure necessary to end the operation of the device as a device driver,
When the procedure is normally completed, the device management means is notified of the normal completion, and when the procedure is not normally completed, the display means is notified of the fact. system.
前記仮想デバイス管理手段は、前記サーバが前記クライアントに接続されたデバイスを
制御可能な状態となっているとき、当該サーバのOSから省電力のための休止状態となる
旨の通知を受けると、前記サーバのOSにエラー通知をし、
前記デバイス管理手段は、前記サーバが前記クライアントに接続されたデバイスを制御
可能な状態となっているとき、当該クライアントのOSから省電力のための休止状態とな
る旨の通知を受けると、前記クライアントのOSにエラー通知をすること
を特徴とするデバイス管理システム。 The device management system according to any one of claims 1 to 6,
When the virtual device management means is in a state in which the server can control a device connected to the client, upon receiving notification from the OS of the server that the server enters a hibernation state for power saving, Notify the server OS of the error,
When the server is in a state in which the server can control a device connected to the client, the device management means receives the notification from the OS of the client that the server is in a sleep state for power saving. A device management system characterized by notifying an OS of an error.
プログラムの実行の指示を与え、当該サーバから実行結果を受け取るクライアントと、前
記クライアントを認証する認証サーバとがネットワークで接続され、前記クライアントに
接続されたデバイスを前記サーバから制御するデバイス管理システムにおける前記クライ
アントであって、
当該クライアントに接続しているデバイスのデバイスドライバとの間でデータを送受信
するとともに前記サーバとの間で当該データを送受信するデバイス管理手段を備え、
前記デバイス管理手段は、前記デバイスドライバと当該クライアントのアプリケーショ
ンとのデータの送受信および前記デバイスドライバと前記サーバとのデータの送受信の間
で排他制御を行うフィルタ手段を備えること
を特徴とするクライアント。 A server that executes an application program, a client that gives an instruction to execute the application program to the server, receives an execution result from the server, and an authentication server that authenticates the client are connected via a network and connected to the client The client in the device management system for controlling the device from the server,
Comprising device management means for transmitting / receiving data to / from the server and transmitting / receiving data to / from the device driver of the device connected to the client;
The device management means includes a filter means for performing exclusive control between data transmission / reception between the device driver and the client application and data transmission / reception between the device driver and the server.
プログラムの実行の指示を与え、当該サーバから実行結果を受け取るクライアントと、前
記クライアントを認証する認証サーバとがネットワークで接続され、前記クライアントに
接続されたデバイスを前記サーバから制御するデバイス管理システムにおける前記サーバ
であって、
前記サーバは、当該サーバ内で動作するアプリケーションと前記デバイス管理手段との
間で前記ネットワークを介して行われるデータの送受信を前記認証サーバに保持されてい
る前記デバイス管理システム内の各デバイスの利用権限に従って制御する仮想デバイス管
理手段を備え、
前記仮想デバイス管理手段は、前記クライアントに接続しているデバイスとの間でデー
タを送受信し、前記サーバ内で動作するアプリケーションに対して当該デバイスのドライ
バとして動作する擬似バスドライバ手段を備えること
を特徴とするサーバ。 A server that executes an application program, a client that gives an instruction to execute the application program to the server, receives an execution result from the server, and an authentication server that authenticates the client are connected via a network and connected to the client The server in the device management system for controlling the device from the server,
The server has a right to use each device in the device management system, which is held in the authentication server, for transmission and reception of data performed via the network between an application operating in the server and the device management unit. Virtual device management means for controlling according to
The virtual device management unit includes a pseudo bus driver unit that transmits and receives data to and from a device connected to the client and operates as a driver of the device for an application operating in the server. Server.
プログラムの実行の指示を与え、当該サーバから実行結果を受け取るクライアントと、前
記クライアントを認証する認証サーバとがネットワークで接続されたデバイス管理システ
ムにおいて、前記クライアントに接続されたデバイスを前記サーバから制御するために共
有するデバイス共有方法であって、
前記クライアントは遠隔操作プログラムを介して前記サーバに利用開始を要求し、
前記サーバは、前記利用開始の要求を受け取ると、前記認証サーバにアクセスして要求
元の前記クライアントを認証し、
認証が成功した場合、前記サーバは前記認証サーバにアクセスし、前記利用開始の要求
元のクライアントが利用可能なデバイスを抽出し、
前記サーバは前記クライアントとの間に前記抽出したデバイスを利用可能とする通信路
を形成するとともに、当該通信路を形成したことを前記認証サーバに通知すること
を特徴とするデバイス共有方法。 In a device management system in which a server that executes an application program, an instruction to execute the application program to the server, a client that receives an execution result from the server, and an authentication server that authenticates the client are connected via a network. A device sharing method for sharing a device connected to the client for controlling from the server,
The client requests the server to start using the remote operation program,
Upon receiving the use start request, the server accesses the authentication server to authenticate the requesting client,
When the authentication is successful, the server accesses the authentication server, extracts a device that can be used by the client that requested the start of use,
The server forms a communication path that allows the extracted device to be used with the client, and notifies the authentication server that the communication path has been formed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007196886A JP2008004110A (en) | 2006-05-24 | 2007-07-30 | Device management system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006143586 | 2006-05-24 | ||
JP2007196886A JP2008004110A (en) | 2006-05-24 | 2007-07-30 | Device management system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007100028A Division JP4127315B2 (en) | 2006-05-24 | 2007-04-06 | Device management system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010264485A Division JP4720959B2 (en) | 2006-05-24 | 2010-11-29 | Device management system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008004110A true JP2008004110A (en) | 2008-01-10 |
JP2008004110A5 JP2008004110A5 (en) | 2010-05-06 |
Family
ID=39008384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007196886A Pending JP2008004110A (en) | 2006-05-24 | 2007-07-30 | Device management system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008004110A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009289060A (en) * | 2008-05-29 | 2009-12-10 | Hitachi Ltd | Workflow server, workflow management method, program and recording medium |
JP2011198193A (en) * | 2010-03-23 | 2011-10-06 | Nec Corp | Thin client system and authentication method in thin client system |
WO2012117445A1 (en) * | 2011-03-02 | 2012-09-07 | 株式会社日立製作所 | Information processing system |
JP2012198667A (en) * | 2011-03-18 | 2012-10-18 | Mizuho Information & Research Institute Inc | Connection management system |
US9141318B2 (en) | 2013-07-25 | 2015-09-22 | Fuji Xerox Co., Ltd | Information processing system, information processor, non-transitory computer readable medium, and information processing method for establishing a connection between a terminal and an image processor |
US9286010B2 (en) | 2013-07-25 | 2016-03-15 | Fuji Xerox Co., Ltd | Information processing system, information processor, non-transitory computer readable medium, and information processing method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000285039A (en) * | 1999-03-31 | 2000-10-13 | Seiko Epson Corp | Device retrieving device, its method and recording medium recording computer program for realizing the method |
JP2006195981A (en) * | 2005-01-14 | 2006-07-27 | Microsoft Corp | Usb device in application server environment |
-
2007
- 2007-07-30 JP JP2007196886A patent/JP2008004110A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000285039A (en) * | 1999-03-31 | 2000-10-13 | Seiko Epson Corp | Device retrieving device, its method and recording medium recording computer program for realizing the method |
JP2006195981A (en) * | 2005-01-14 | 2006-07-27 | Microsoft Corp | Usb device in application server environment |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009289060A (en) * | 2008-05-29 | 2009-12-10 | Hitachi Ltd | Workflow server, workflow management method, program and recording medium |
JP2011198193A (en) * | 2010-03-23 | 2011-10-06 | Nec Corp | Thin client system and authentication method in thin client system |
WO2012117445A1 (en) * | 2011-03-02 | 2012-09-07 | 株式会社日立製作所 | Information processing system |
JP2012198667A (en) * | 2011-03-18 | 2012-10-18 | Mizuho Information & Research Institute Inc | Connection management system |
US9141318B2 (en) | 2013-07-25 | 2015-09-22 | Fuji Xerox Co., Ltd | Information processing system, information processor, non-transitory computer readable medium, and information processing method for establishing a connection between a terminal and an image processor |
US9286010B2 (en) | 2013-07-25 | 2016-03-15 | Fuji Xerox Co., Ltd | Information processing system, information processor, non-transitory computer readable medium, and information processing method |
US9483219B2 (en) | 2013-07-25 | 2016-11-01 | Fuji Xerox Co., Ltd. | Information processing system, information processor, non-transitory computer readable medium, and information processing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4127315B2 (en) | Device management system | |
JP4741292B2 (en) | Device management system | |
JP4168052B2 (en) | Management server | |
US20090178110A1 (en) | Communication Control Device, Communication Control System, Communication Control Method, and Communication Control Program | |
US20080148350A1 (en) | System and method for implementing security features and policies between paired computing devices | |
US9875354B1 (en) | Apparatus and method for enhancing security of data on a host computing device and a peripheral device | |
JP2008015786A (en) | Access control system and access control server | |
JP2007156587A (en) | Method of controlling power supply, and system realizing the same | |
US20090119218A1 (en) | License management apparatus, license management method, and license authentication program | |
JP4720959B2 (en) | Device management system | |
JP2008004110A (en) | Device management system | |
KR100788256B1 (en) | System for monitoring web server fablication using network and method thereof | |
US20110125875A1 (en) | Terminal management system, terminal management server, and terminal device | |
KR100591554B1 (en) | Method for controlling communication with network resources mamagement policy | |
JP2003258795A (en) | Computer aggregate operating method, implementation system therefor, and processing program therefor | |
KR101445708B1 (en) | Security System and Terminal Therefor, and Security Method | |
WO2003034687A1 (en) | Method and system for securing computer networks using a dhcp server with firewall technology | |
JP4618278B2 (en) | Power supply control method and system for realizing the same | |
JP2002342284A (en) | Security protective device and method of security protection | |
JP2008040590A (en) | Computer system and access control method to computer | |
KR101382605B1 (en) | Method for securing debug serial connection of embedded system terminal | |
JP2011221704A (en) | Automatic management system for network | |
KR101908428B1 (en) | Method, center apparatus and system for blocking accessing device through virtual private network | |
JP5814138B2 (en) | Security setting system, security setting method and program | |
JP2013201572A (en) | Communication terminal apparatus and control method of communication terminal apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100318 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100318 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100608 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100809 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100831 |