(57)【特許請求の範囲】
【請求項１】
一つ以上の第一のネットワークのいずれかに接続するクライアント装置と、第二のネットワークに接続するサーバ装置との間に通信路が確立され、前記クライアント装置の操作により、前記サーバ装置に格納されている情報を印刷する印刷システムにおいて、
各々の前記第一のネットワークには、一つ以上のプリンタと、前記サーバ装置と通信路を確立可能な認証装置と、を接続し、
前記サーバ装置は、各々の前記第一のネットワークに接続された、前記プリンタと前記認証装置の識別情報とを、対応付けて管理し、
前記クライアント装置が接続された第一のネットワークに接続された前記認証装置は、
当該認証装置の識別情報IDbを前記サーバ装置に送信し、
前記サーバ装置は、
前記認証装置から、前記識別情報IDbを受信し、
前記識別情報IDbを持つ認証装置が接続された第一のネットワークに接続された、前記一つ以上のプリンタを、前記クライアント装置の操作により選択可能に、前記サーバ装置に登録し、
IDbとは異なる識別情報を持つ認証装置が接続された第一のネットワークに接続された、前記一つ以上のプリンタを、前記サーバ装置から削除し、
前記登録と前記削除を行った後に、前記クライアント装置との通信路を確立し、
前記クライアント装置は、前記サーバ装置に登録された前記一つ以上のプリンタのいずれかを選択する
ことを特徴とする印刷システム。
【請求項２】
請求項1記載の印刷システムにおいて、
前記クライアント装置と当該クライアント装置が接続された第一のネットワークに接続された前記認証装置とは、それぞれ、互いに機器認証を試み、
前記認証装置は、当該機器認証が成功した場合に、前記クライアント装置の識別情報IDaを取得し、前記サーバ装置に送信する
ことを特徴とする印刷システム。
【請求項３】
請求項2記載の印刷システムにおいて、
前記サーバ装置は、
前記クライアント装置が、当該サーバ装置との間に確立した通信路を開放したとき、登録した前記プリンタを削除する
ことを特徴とする印刷システム。
【請求項４】
請求項2記載の印刷システムにおいて、
前記サーバ装置は、前記プリンタの登録完了を前記クライアント装置が接続された第一のネットワークに接続された前記認証装置に通知し、
前記認証装置は、
前記クライアント装置との機器認証が成功した場合に、前記クライアント装置との間に通信路を確立し、
前記プリンタの登録完了通知を受信したら、前記クライアント装置との間に確立した前記通信路を監視し、
前記クライアント装置との間に確立した前記通信路が開放された場合に、前記通信路の開放を前記サーバ装置に通知し、
前記サーバ装置は、前記認証装置から、前記認証装置と前記クライアント装置との間に確立した前記通信路が開放されたことを通知されたら、登録した前記クライアント装置のプリンタを削除する
ことを特徴とする印刷システム。
【請求項５】
請求項2から4のいずれか一に記載の印刷システムにおいて、
前記認証装置は、
繰り返し当該認証装置のネットワークアドレスを、当該認証装置が接続されている第一のネットワークに送信し、
前記クライアント装置は、
前記第一のネットワークに接続して前記ネットワークアドレスを受信し、
前記認証装置との通信路を確立する
ことを特徴とする印刷システム。
【請求項６】
請求項5記載の印刷システムにおいて、
前記クライアント装置は、公開鍵PKaと前記識別情報IDaを含む証明書CERTaと、前記公開鍵PKaに対応した秘密鍵SKaと、前記証明書CERTaに対応したルート検証鍵PKrを有し、
前記認証装置は、公開鍵PKbと前記識別情報IDbを含む証明書CERTbと、前記公開鍵PKbに対応した秘密鍵SKbと、前記証明書CERTbに対応したルート検証鍵PKrを有し、
前記機器認証において、
前記クライアント装置が、乱数Raを生成して、前記サーバ装置との通信路を介して、前記認証装置に送信し、
前記認証装置が、乱数Rbを生成して、前記乱数Rbと、前記乱数Raを前記秘密鍵SKbで暗号化したSKb(Ra)と、前記証明書CERTbと、を、前記クライアント装置との通信路を介して、前記クライアント装置に送信し、
前記クライアント装置が、前記ルート検証鍵PKrを用いて前記証明書CERTbを検証し、
前記公開鍵PKbを用いて前記SKb(Ra)を復号して、当該復号結果が前記乱数Raに一致するかを検証し、
当該検証に成功した場合に、前記乱数Rbを前記秘密鍵SKaで暗号化したSKa(Rb)と、前記証明書CERTaと、を、前記認証装置との通信路を介して、前記認証装置に送信し、
前記認証装置が、ルート検証鍵PKrを用いて証明書CERTaを検証し、公開鍵PKaを用いてSKa(Rb)を復号して当該復号結果が前記乱数Rbに一致するかを検証し、当該検証に成功した場合に、前記証明書CERTaに含まれる前記識別情報IDaを取得する
ことを特徴とする印刷システム。
【請求項７】
請求項5記載の印刷システムにおいて、
前記クライアント装置は、
繰り返し、前記認証装置のネットワークアドレスの受信を試み、
当該ネットワークアドレスを受信したとき、前記認証装置との通信路の確立を開始する
ことを特徴とする印刷システム。
【請求項８】
請求項3記載の印刷システムにおいて、
前記サーバ装置は、
前記プリンタの登録処理において、前記識別情報IDbで識別される前記認証装置に対応づけられたプリンタのドライバをインストールし、
前記プリンタの削除処理において、前記ドライバをアンインストールする
ことを特徴とする印刷システム。
【請求項９】
請求項2に記載の印刷システムにおいて、
前記サーバ装置は、
前記認証装置から、前記識別情報IDaとIDbとを受信し、
前記認証装置の識別情報IDbに対応付けられたプリンタを、識別情報IDaを備える前記クライアント装置の操作により印刷出力可能なプリンタとして登録する
ことを特徴とする印刷システム。
【請求項１０】
請求項７記載の印刷システムにおいて、
前記サーバ装置は、
前記認証装置が属する前記第一のネットワークに接続しているプリンタでデータを印刷することを許可する権限を備え、
前記プリンタを登録する処理のために、
当該権限を付与し、
登録したプリンタを削除する処理のために、当該権限を除去する
ことを特徴とする印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバシンクライアントシステムに関係し、サーバにあるデータを、ユーザが使用するクライアントコンピュータの近くにあるプリンタで印刷する、印刷処理システムに係わる。
【背景技術】
【０００２】
高性能なパソコンが普及するにつれて、アプリケーションソフトのインストールや、バージョンアップなどにかかる運用・管理コストが無視できない問題となってきた。そこで、一般ユーザが使うノートPCやデスクトップPCなどのクライアントコンピュータ(以下クライアントPCとよぶ)には高機能で高価なパソコンは使わずに、表示や入力など最低限の機能を持つクライアントPC (シンクライアントという)を配備して、アプリケーションソフトなどの資源をサーバで管理することにより、運用・管理コストの削減をはかるシンクライアントシステムの概念が登場した。ユーザはクライアントPCのディスプレイなどの出力機器やキーボード、マウスなどの入力機器を介してサーバ上のアプリケーションソフトやファイルといった資源を操作する。
【０００３】
ユーザが操作するアプリケーションソフトやファイルといった資源はサーバに格納されているため、明示的に転送の操作をしない限り、クライアントPCにデータを転送できない。従って、通常の印刷操作では、サーバから直接アクセスできる、ファイアウォールで阻まれない同じネットワーク上にあるプリンタでしかデータを印刷できない。しかし、サーバにアクセスしているユーザにとっては、サーバ近傍にあるプリンタではなく、今操作しているクライアントPCの近くにあるプリンタで印刷できなければ実用的ではない。
【０００４】
シンクライアントシステムの利点の一つに、ノート型PCをクライアントPCとして用い、出張先などのサーバから遠く離れたオフィスからもサーバの資源を操作できることがあるため、シンクライアントシステム上で印刷処理を実用的な形で実現するためには、サーバから直接アクセスできない別のネットワーク上にあるユーザの近くのプリンタを使って、サーバのデータを遠隔印刷できることが技術的要件となる。
【０００５】
サーバのデータを遠隔印刷するための従来技術がいくつか知られている。例えば特許文献1では、ユーザが、印刷したいプリンタのあるオフィスを指定することにより、サーバ側で適切なプリンタを自動的に選択して、印刷データを送信する技術が記載されている。
【０００６】
【特許文献１】特開2005-129007号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記の従来技術では、クライアントPCが今どこのオフィスにあるかをサーバが認識できないため、ユーザが印刷したいプリンタのあるオフィスをユーザが指定する必要がある。この指定を間違えた場合、別のオフィスのプリンタにデータが誤送信されてしまい、情報漏えいにつながるというセキュリティ上の問題がある。
【０００８】
また、オフィスを指定するという操作が余分に入ることで、通常の印刷処理とインターフェースが異なってしまうという問題もある。ユーザに意識させることなく、通常の印刷処理で、クライアントPC近傍にあるプリンタでデータが印刷できることが好ましい。
【課題を解決するための手段】
【０００９】
本発明では、クライアントPCが今どこのオフィスにあるかをサーバが認識でき、当該オフィスにあるプリンタで印刷できるシンクライアントシステムを提供する。
【００１０】
本発明で提供するシステムでは、アプリケーションソフトやファイルなどを格納するサーバと、ユーザが操作するクライアントPCの他に、各オフィスにPC認証装置を設置しておく。PC認証装置はクライアントPCと機器認証するための機能を備える。また、クライアントPCは、サーバと通信路を確立するための通信機能だけではなく、PC認証装置と機器認証するための機能も備える。
【００１１】
さらに、サーバは、各オフィスに設置されているプリンタを認識しており、通信路で所望のプリンタに印刷ジョブを送信することができる。ただし、通常の状態ではクライアントPCどのプリンタも利用できないように設定されている。
【００１２】
各装置は以下の順で動作する。
【００１３】
(1) クライアントPCは、PC認証装置と機器認証を行う。機器認証によってPC認証装置はクライアントPCとの間に通信路を確立し、クライアントPCの識別子IDaを取得する。
【００１４】
(2) PC認証装置は、サーバに、クライアントPCの識別子IDaとPC認証装置の識別子IDbを通知する。
【００１５】
(3) サーバは、識別子IDaをもつクライアントPCが利用できるプリンタとして、識別子IDbをもつPC認証装置が設置されているオフィスにあるプリンタを、
サーバのOS(Operating System)の機能を利用し、サーバ上のプログラムの指示により印刷できるように登録する。
【００１６】
サーバに接続したクライアントPCが印刷処理を行うより前に、上記動作フローを実行することにより、移動先オフィスにあるプリンタを用いた印刷が可能になる。
【００１７】
なおPC認証装置はサーバと通信するためにインターネットに接続しているため、インターネットなどの外部ネットワークからオフィスへのアクセスを制限するファイアウォールの機能も兼ね備えることができる。
【発明の効果】
【００１８】
本発明によれば、ユーザが意識することなく、通常の印刷操作で、クライアントPC近傍にあるプリンタで印刷できるようになる。また、別のオフィスにあるプリンタへ誤送信することを防止できる。
【００１９】
これにより、情報漏洩の可能性を低くすることが可能になる。
【発明を実施するための最良の形態】
【００２０】
以下に本発明の一実施形態を説明する。
【００２１】
図1は、本実施形態にかかるシステムの構成図である。このシステムはサーバが設置してある自席オフィス10と、インターネット20と、出張先オフィス30とで構成される。本実施形態におけるオフィスとは、ファイアウォールで囲まれたイントラネット、およびそれに接続可能な機器群の意味である。すなわち、オフィスのイントラネットに接続している機器にはプライベートアドレスだけが割り当てられるので、オフィス内の機器は直接インターネット20にアクセスすることはできない。また、ファイアウォールの制御により、外部の特定の装置からのSMTPやHTTPのパケットが、ファイアウォールの通過を許可される。  出張先オフィス30はインターネット20を介して自席オフィス10と接続している。なお、図1では出張先オフィス30は一つしか存在しないが、複数の出張先オフィスが自席オフィス10に接続していても構わない。
【００２２】
自席オフィス10は、アプリケーションソフトやファイルなどの資源を一元管理するサーバ100、クライアントPCと機器認証を行い、その存在を認識するPC認証装置102、プリンタ104、および出張先オフィス30との通信を暗号化するVPNサーバ106とを備える。これら装置はすべて自席オフィス10のイントラネット108に接続しており、互いに通信することができる。
【００２３】
なお、サーバ100は複数のクライアントPCに関する資源を、それぞれ独立して管理するものとする。
【００２４】
出張先オフィス30は、PC認証装置302とプリンタ304、およびVPNサーバ306とを備える。これら装置はすべてイントラネット308に接続している。
【００２５】
PC認証装置302は、VPNサーバ306、106を介してサーバ100と通信できる。なお、VPNサーバ306、106は、第3者による盗聴を防ぐためのものであり本実施例に必須ではない。たとえば、自席オフィス10と出張先オフィス30とが専用線でつながっている場合などは、VPNサーバ106、306は不要である。
【００２６】
図1記載の実施例は、ユーザ310がクライアントPC300を持って出張先オフィス30に出張に来ている例である。クライアントPC300はイントラネット308、108およびVPNサーバ306、106を介して、サーバ100との間に通信路を確立できる。ユーザ310は、クライアントPC300のディスプレイやキーボード、マウスなどを介して、サーバ100上の、当該クライアントPC300に割り当てられた資源を操作することができる。クライアントPC300とサーバ100間の認証および通信方法に関しては通常のシンクライアントシステムと同等であり、アプリケーションの画面情報（変化した画面の差分情報）が、シンクライアント用として周知のプロトコル、例えばRDP (Remote Desktop Protocol)やICA (Independent Computer Architecture)プロトコルによって、クライアントPC300に転送され表示される。またクライアントPC300からはマウス、キーボードなどの入力装置の操作情報が上記プロトコルによってサーバ100に送信される。
【００２７】
本実施例では、クライアントPC300は、サーバ100だけではなくPC認証装置302とも、イントラネット308を介して、通信路を確立できる。なおイントラネット308は有線、無線を問わない。
【００２８】
図1はクライアントPC300が出張先オフィス30のイントラネット308に接続した図であるが、ユーザ310が自席オフィス10にいる場合に関しても本実施例は同様に動作する。図2はその場合におけるシステムの構成図である。クライアントPC300は、イントラネット108を介して、サーバ100およびPC認証装置102と通信できる。イントラネット108は有線、無線を問わない。自席オフィス、出張先オフィスといったオフィスの種類によらず、印刷に使用するプリンタを備えるオフィスにはPC認証装置を備えることが本実施例の特徴である。
【００２９】
図3は、本実施形態にかかるシステムの処理フローの概略図である。サーバ100、クライアントPC300、およびPC認証装置302の動作は以下の通りである。
【００３０】
(S300) クライアントPC300とPC認証装置302の間で通信路の確立処理を行う。クライアントPC300にはPC認証装置を探知する装置が、PC認証装置30には新規の接続を監視するための装置が備え付けられており、これら装置によってクライアントPC300とPC認証装置302との間で通信路の確立を完了する。
【００３１】
(S302) クライアントPC300とPC認証装置302の間で機器認証を行う。クライアントPC300およびPC認証装置302はそれぞれ機器認証のための証明書を保持しており、これらを用いて機器認証を行う。機器認証によってPC認証装置302はクライアントPC300の識別子IDaを取得し、取得後クライアントPC300とPC認証装置302の間の通信路を開放する。
【００３２】
(S303) PC認証装置302はサーバ100との通信路を確立する。
【００３３】
(S304) PC認証装置302はサーバ100にクライアントPC300の居所通知処理を行う。具体的には、クライアントPC300の識別子IDaとPC認証装置302の識別子IDbをサーバ100に送信し、送信後PC認証装置302とサーバ100の間の通信路を開放する。
【００３４】
(S306) サーバ100は印刷可能プリンタ登録処理を行う。通常の状態ではサーバ100上のいかなるユーザ（すなわち、クライアントPC）にも印刷が許可されていないが、本処理によりサーバ100は、識別子IDaをもつクライアントPCが利用できるプリンタとして、識別子IDbをもつPC認証装置が設置されているオフィスにあるプリンタを、サーバのOS(Operating System)の機能を利用し、サーバ上のプログラムの指示により印刷できるように登録する。
【００３５】
(S308) クライアントPC300はサーバ100との間で通信路の確立処理を行う。通信路確立後、ユーザ310は、サーバ100上にあるデータを文書作成などのアプリケーションで修正したり、新たな文書を作成してサーバ100に保存したりすることが可能となる。修正したデータを今いる出張先オフィス30にあるプリンタを使って印刷しようとしたとき、もし上記の処理が正常に行われているのであれば、すでに出張先オフィス30にある一つまたは複数のプリンタだけが選択可能となっている。そうでなければ使用できるプリンタはない。
【００３６】
(S310) ユーザ310は、通常の印刷操作を（必要に応じてプリンタの選択操作も）行い、サーバ100は、ユーザ310の指示で印刷処理を開始する。プリンタ304へ印刷実行ジョブを送信する。
【００３７】
(S312) クライアントPC300がログアウトし、サーバ100にセッション終了をサーバ100に要求する。サーバ100は当該終了要求を受け、クライアントPC300との通信路を開放する。
【００３８】
(S314) サーバ100は印刷可能プリンタ削除処理を行う。S306で登録した印刷可能プリンタを削除する。
【００３９】
処理フローS300、S302の詳細と、印刷制御処理S304、S306、S308、S310、S312、S314の詳細は後述する。
【００４０】
図4はサーバ100の機能構成図である。クライアントPC認証部1000はクライアントPC300との認証を行う。クライアントPC通信部1002はクライアントPC300からキーボードやマウスなどの動作を受信し、それを反映したクライアントPC300のディスプレイに表示すべき画面データをクライアントPC300に送信する。PC認証装置識別子取得部1004はPC認証装置302と交信してクライアントPC300の識別子IDaとPC認証装置302の識別子IDbを取得する。PC認証装置通信部1006はPC認証装置302との通信を担当する。プリンタドライバ制御部1008は受信したクライアントPC300の識別子IDaとPC認証装置302の識別子IDbをもとに、クライアントPC300のユーザが利用可能なプリンタドライバを登録もしくは削除する。
【００４１】
図5はPC認証装置102/302の機能構成図である。識別子通知部2000はクライアントPC300とPC認証装置102/302の識別子を、対サーバ通信部2002を介してサーバ100に通知する。対サーバ通信部2002はサーバ100との通信を担当する。クライアントPC認証部2004はクライアントPC300との認証を行って識別子を取得し、識別子通知部2000に取得したクライアントPC300の識別子を渡す。対クライアントPC通信部2006はクライアントPC300とのデータの送受信を行う。データ格納部2008はサーバ100やクライアントPC300との認証に必要な認証情報その他を所有する。
【００４２】
図6はクライアントPC300の機能構成図である。サーバ認証部3000はサーバ100との認証を行う。対サーバ通信部3002はサーバ100とのデータの送受信を行う。PC認証装置認証部3004は対PC認証装置通信部3006を介してPC認証装置302と認証する。起動制御部3008は上記装置の起動を制御する。クライアントPC300の起動時に起動制御部3008が他の装置を起動する例を後述する。データ格納部3010はサーバ100やPC認証装置302との認証に必要な認証情報その他を格納する。認証情報は第三者に公開される証明書と、公開されない秘密鍵からなる。証明書は秘密鍵とペアになる公開鍵と機器の識別情報からなる。認証の詳細については図8を用いて後で説明する。
【００４３】
サーバ100、認証装置102/302、クライアント300のハードウェア構成については、図12を用いて後に説明する。
【００４４】
図7、8を用いて、本実施例における通信路の確立処理S300、および機器認証処理S302の一実施形態を説明する。
【００４５】
図7は通信路の確立処理S300の処理フローである。当該処理のために、PC認証装置302は自分が属しているイントラネット308のネットワークアドレスADDRbを保有データE700bとしてデータ格納部2008に保有する。クライアントPC300およびPC認証装置302は、保有データE700bを用いて、以下の処理手順で通信路を確立する。
【００４６】
(S700b) PC認証装置302は、自装置のアドレスADDRbをデータとして含むパケットP700bを、対クライアントPC通信部2006を介して、無線LANもしくは出張先オフィス30のイントラネット308上に、繰り返し(例えば、所定の時間間隔で定期的に)ブロードキャスト送信して、新規の接続を継続して待つ。
【００４７】
(S702a) クライアントPC300は、図示されていないDHCPサーバなどが発行するイントラネット308上のアドレスを取得し、イントラネット308に接続する。接続後、対PC認証装置通信部3006を介して、起動時にPC認証装置302から繰り返し送信されているパケットP700bを受信して、PC認証装置302のアドレスADDRbを取得する。なお、パケットP700bの受信は、起動時に限らず、対PC認証装置通信部3006を介して、パケットP700bの受信を試みるアプリケーションを起動することでもなされる。または、クライアントPC300が繰り返し(例えば、所定の時間間隔で定期的に)P700bの受信を試みてもよい。いずれの場合でも上記処理は 対PC認証装置通信部3006で制御される。
【００４８】
(S704a) (S706b) クライアントPC300は、対PC認証装置通信部3006を介して取得したアドレスADDRbへの接続を試みて、PC認証装置302との間に通信路を確立する。ある一定時間を経過しても通信路を確立できなかった場合、PC認証装置との間に通信路を確立できなかった旨をクライアントPC300のディスプレイE1000(図12参照)に表示する。この場合、ユーザ310は前述の受信を試みるアプリケーションを起動することで、S702aから処理を再実行することができる。再実行せず通信路を確立できなかった場合、本実施例の処理を終了する。この場合、サーバが利用可能なプリンタを登録できないため、クライアントPC300からは印刷できなくなる。
【００４９】
図8は機器認証処理S302の処理フローである。
【００５０】
当該処理のために、クライアントPC300は、印刷証明書CERTa(公開鍵PKaと識別子IDaを含む)、公開鍵PKaに対応した印刷秘密鍵SKa、および証明書を検証するためのルート検証鍵PKrを、保有データE800aとして認証情報格納部3010に保有する。証明書CERTaは、自席オフィス10、出張先オフィス30などを管理する管理者もしくは信頼できる第三者機関などが管理する、信頼できる認証局（これらをルートという）によって発行される。サーバ100からクライアントPC300と同じオフィスにあるプリンタに正しく印刷するために用いられる証明書であるため、印刷証明書と呼ぶ。
【００５１】
同様にPC認証装置302は、印刷証明書CERTb(公開鍵PKbと識別子IDbを含む)、公開鍵PKbに対応した印刷秘密鍵SKb、およびルート検証鍵PKrを、保有データE800bとして証明書格納部2008に保有する。ネットワーク接続確立後、クライアントPC300およびPC認証装置302は、保有データE800a、E800bを用いて、以下の処理手順で機器認証を行う。
【００５２】
(S800a) クライアントPC300は、PC認証装置認証部3004にて乱数Raを生成し、Raを含むデータP800aを、対PC認証装置通信部3006を介してPC認証装置302に送信する。
【００５３】
(S802b) PC認証装置302は、クライアントPC認証部2004にて乱数Rbを生成し、受信した乱数Raを印刷秘密鍵SKbで暗号化して署名SKb(Ra)を作成する。乱数Rb、署名SKb(Ra)、および印刷証明書CERTbを含むデータP802bを、対クライアントPC通信部2006を介してクライアントPC300に送信する。
【００５４】
(S804a) クライアントPC300は、まずルート検証鍵PKrを使って、取得した印刷証明書CERTbを検証する。すなわち、ルートが秘密鍵で生成した印刷証明書CERTbの署名をPKrで復号して、CERTbのハッシュ値に一致するかを確かめる。検証に成功した場合、次に証明書CERTbから公開鍵PKbを取り出して、署名SKb(Ra)をPKbで復号したPKb(SKb(Ra))がRaに一致するかを検証する。
【００５５】
これらの検証処理がすべて成功した場合、クライアントPC300は印刷秘密鍵SKaを用いて、受信した乱数Rbの署名SKa(Rb)を作成し、署名SKa(Rb)と印刷証明書CERTaを含むデータP804aをPC認証装置302に対PC認証装置通信部3006を介して送信する。上記いずれかの検証に失敗した場合、PC認証装置302は正規の認証サーバではないと判断して、機器認証処理を終了する。上記の検証はPC認証装置認証部3004にて実行される。
【００５６】
(S806b) PC認証装置302は、まずルート検証鍵PKrを使って、取得した印刷証明書CERTaを検証する。検証に成功した場合、次に証明書CERTaから公開鍵PKaを取り出して、署名SKa(Rb)をPKaで復号したPKa(SKa(Rb))がRbに一致するかを検証する。一致した場合、最後に証明書CERTaからクライアントPC300の識別子IDaを取得してデータ格納部2008に格納して、機器認証処理を終了する。上記いずれかの検証に失敗した場合、PC認証装置302は、クライアントPC300が正規のクライアントPCではないと判断して、処理を終了する。上記の検証処理はクライアントPC認証部2004にて実行される。
【００５７】
ネットワーク接続処理S300、および機器認証処理S302によって、PC認証装置302はクライアントPC300の識別子IDaを取得できた。ネットワーク接続や機器認証に失敗した場合、サーバが利用可能なプリンタを登録できないため、クライアントPC300から印刷できなくなる。
【００５８】
本実施例における接続場所通知処理S304、接続可能プリンタ登録処理S306、ネットワーク接続処理S308、印刷処理S310、ネットワーク接続切断処理S312、および接続可能プリンタ削除処理S314の詳細実施形態を、図9、10、11を用いて説明する。
【００５９】
図9は接続場所通知処理S304の処理フローである。当該処理のために、サーバ100は印刷管理テーブルT1000を保有データE900cとして保有する。印刷管理テーブルについては後で図10を用いて詳細を説明する。PC認証装置302は、機器認証処理S302で取得したクライアントPC300の識別子IDa、PC認証装置302の識別子IDb、およびサーバ100のネットワークアドレスADDRcを、保有データE900bとして保有する。サーバ100およびPC認証装置302は、保有データE900c、E900bを用いて、以下の手順で接続場所通知処理S304と接続可能プリンタ登録処理S306を行う。
【００６０】
(S900b) PC認証装置302は、サーバ100のアドレスADDRcへの接続を行いサーバ100との間に通信路を確立する（図3のS303）。なお当該通信は、VPNサーバ106、306を経由することにより暗号化された通信路が確立されている(図1参照)ものとする。通信路確立後、クライアントPC300の識別子IDaとPC認証装置の識別子IDbを含むデータP900bをサーバ100に送信する。
【００６１】
(S902c) サーバ100は、受信した識別子IDbを印刷管理テーブルT1000と照合して、識別子IDaをもつクライアントPCが利用できるプリンタとして、識別子IDbをもつPC認証装置が設置されているオフィスにあるプリンタを登録する。印刷管理テーブルおよびプリンタの登録方法については後述する。
【００６２】
なお、サーバ100は複数のクライアントPCに関する資源を、それぞれ独立して管理しており、識別子IDa、IDbをもとにユーザ個別にプリンタの登録を行うため、ユーザによって利用可能なプリンタは異なる。また、もしすでにプリンタが登録されている場合は、PC認証装置から識別子IDaおよびIDbの通知がない場合に、どのプリンタを使っても印刷できないようにするために、当該プリンタをすべて削除しておく。プリンタ登録後、サーバ100はプリンタ登録完了通知P902cをPC認証装置302に通知する。
【００６３】
接続可能プリンタ登録処理S306は処理S900b、S902cで完了する。もしクライアントPC300が、引き続きサーバ100に接続して印刷処理を開始する場合は、次のネットワーク接続処理S308以降のフローを開始する。
【００６４】
なおサーバ100との通信路が無線で確立され、認証と、接続プリンタ登録の後にユーザ310が、サーバ100との通信路を維持したままクライアントPC300を持って別オフィスに移動する場合もある。この場合、オフィスを移動したことをサーバ100に通知するために、接続可能プリンタの削除と再登録が必要となる。これは以下の処理でなされる。
【００６５】
(S904b) PC認証装置302は、クライアントPC300との通信路の監視を開始する。
【００６６】
(S906a) ユーザ310がクライアントPC300の電源を切った、別オフィスに移動したなどといった理由で、クライアントPC300とPC認証装置302との間の通信路が開放される。
【００６７】
(S908b) PC認証装置302は、クライアントPC300との通信路が開放されたことを探知する。探知後、クライアントPC300の識別子IDaと、当該PCとの通信路が開放されたことを示す情報P904bをサーバ100に通知する。
【００６８】
(S910c) サーバ100は、情報P904bを受信し、識別子IDaをもつクライアントPC300が利用できるプリンタを削除する。
【００６９】
クライアントPC300は、プリンタ削除後の再登録を行うために、移動した先の別のオフィスで他のPC認証装置302との機器認証を行う。これに関しては、 実施例2の処理S702aで述べたように、PC認証装置302から繰り返しなされる送信P700bを受信するためのアプリケーションをクライアントPC300に格納してユーザ310の指示で起動する方法や、P700bの受信を試みる装置を起動制御部3008(図6参照)に具備する方法がある。
【００７０】
印刷管理テーブルの一例を図10のT1000に示す。左の列はPC認証装置の識別子、右の列は各PC認証装置が担当するオフィスにあるプリンタ一覧となる。例えば、クライアントPCの識別子としてIDa1を、PC認証装置の識別子としてIDb1を受信したとき、識別子IDa1をもつクライアントPCからはプリンタPRT1-1、PRT1-2、PRT1-3のいずれかに印刷できることになる。一方、クライアントPCやPC認証装置の識別子を受信できなかった場合、もしくは受信したPC認証装置の識別子が印刷管理テーブルT1000に記載されていない、IDb1からIDb100以外であった場合には、プリンタを登録しない。こうすることにより、クライアントPCの行き先に応じて、印刷の可否を制御することが可能になる。なお、T1000のメンテナンスは自席オフィス10や出張先オフィス30を管理する管理者が行えばよい。
【００７１】
さらに、クライアントPCの識別子別に印刷可能なプリンタを設定しても良い。こうすることで、クライアントPCの行き先だけでなく、使用者の権限も考慮した印刷可否制御が可能になる。
【００７２】
印刷管理テーブルT1000をもとに接続可能プリンタを登録するための第一の方法は、登録の度にプリンタドライバをインストールし、登録削除の度にプリンタドライバをアンインストールする方法である。上述のクライアントPCの識別子がIDa1、PC認証装置の識別子がIDb1に一致した例では、接続可能プリンタの登録処理として、サーバ100はプリンタPRT1-1、PRT1-2、PRT1-3のプリンタドライバをインストールする。
【００７３】
第二の方法は、アプリケーションからの印刷API呼び出しを監視するプログラム（以下、印刷管理プログラムという）を常駐させておき、印刷管理テーブルT1000をもとに印刷APIの有効、無効を切り替えることで、プリンタの利用可否を制御する方法である。
【００７４】
上記と同様、クライアントPCの識別子がIDa1、PC認証装置の識別子がIDb1に一致した例では、印刷管理プログラムは、アプリケーションによる印刷APIの呼び出しを監視して印刷先のプリンタを判別し、プリンタがPRT1-1、PRT1-2、PRT1-3の場合のみ印刷APIを有効化し、他のプリンタへの印刷の場合は印刷APIを無効化して印刷できないようにする。この方法は印刷管理プログラムを準備し常駐させておく必要があるが、第一の方法よりも高速に動作する。印刷管理プログラムに関する詳細は、例えば特許文献US2002/0099837に記載されている。
【００７５】
図11は、ネットワーク接続処理S308、印刷処理S310、ネットワーク接続切断処理S312、および接続可能プリンタ削除処理S314の処理フローである。クライアントPC300、サーバ100、およびプリンタ304は、以下の手順で処理を行う。
【００７６】
(S1100a) クライアントPC300はサーバ100と通信路を確立する。確立方法については通常のシンクライアントシステムと同等である。
【００７７】
(S1102c) サーバ100はクライアントPC300と通信路を確立する。確立後、クライアントPC300のユーザは、クライアントPC300のキーボード、マウス、ディスプレイを介してサーバ100の資源を操作できる。上述の接続可能プリンタ登録処理S902が正常に終了しているならば、すでにクライアントPC300からは、今いる出張先オフィス30のプリンタ304に印刷することが可能になっている。オフィス30にプリンタが複数ある場合には、複数のプリンタが選択可能になっている。もし接続可能プリンタ登録処理S308が失敗したか、もしくはその前段ですでに処理が失敗した場合には、接続可能なプリンタが登録されていないので、プリンタ304に印刷できない。
【００７８】
(S1104a) ユーザ310は、クライアントPC300を操作して、サーバ100に印刷を指示する。当該印刷指示を受け、サーバ100は印刷データP1100cを作成し、プリンタ304に送信する。
【００７９】
(S1106d) プリンタ340は印刷データP1100cを受信して、印刷を開始する。
【００８０】
(S1108a) (S1110c) クライアントPC300はサーバ100との通信路を開放する。
【００８１】
(S1112c) サーバ100は、通信路開放後、接続可能プリンタ登録処理S902において登録した接続可能プリンタを削除する。具体的には、プリンタドライバをインストールする方法を採用した場合は、インストールしたすべてのドライバをアンインストールする。プリンタブルユーザに切り替える方法を採用した場合は、もとのユーザに切り替える。
【００８２】
以上説明した実施例の方法で、クライアントPC300がどこのオフィスにいるかをサーバ100が認識でき、サーバ100上のデータを、間違って他のオフィスにあるプリンタで印刷することを防止できるようになる。
【００８３】
また、本実施例によれば、各オフィスにPC認証装置302が設置されており、PC認証装置302が、クライアントPC300の識別子とオフィスの識別子(すなわち、PC認証装置302の識別子)をサーバ100に通知するため、クライアントPC300がどこのオフィスにいるかをサーバ100が認識できる、という効果もある。
【００８４】
図12はクライアントPC300、サーバ100、およびPC認証装置102/302のハードウェア構成の一例である。これらの装置は、図12に示す構成を備える一般的な計算機により実現できる。
【００８５】
具体的には、各装置はディスプレイE1000、キーボード、マウスなどの入力デバイスE1002、通信インターフェースE1004、CPU E1006、不揮発性メモリ(ROMという) E1008、揮発性メモリ(RAMという) E1010、および認証デバイスE1012を備える。ユーザ310はディスプレイE1000で操作結果を確認しつつ、入力デバイスE1002を使って指示を出すことができる。認証に必要な証明書は認証デバイスE1012に格納されており、ある所定の方法でしか証明書にアクセスできないように、耐タンパ性を有している。クライアントPC300およびPC認証装置102/302の処理に必要な装置や同等の機能をもつプログラムはROM E1008に格納され、CPU E1006で実行される。処理に必要な一時データはRAM E1010に格納される。RAM E1010に格納されたデータは電源を切れば消失する。
【００８６】
図4，5，6に示した、各装置の各機能(各処理部)は、CPU E1006がROM E1008に格納されているプログラムを実行することにより、上記計算機上に具現化される。各プログラムは、あらかじめ、上記ROM E1008内に格納されていても良いし、ROM E1008を書き込み可能な不揮発性メモリにより構成し、必要なときに、上記計算機が利用可能な媒体を介して、他の装置から上記ROM E1008に導入されてもよい。媒体とは、たとえば、着脱可能な記憶媒体、または通信媒体（すなわちネットワークまたはネットワークを伝搬する搬送波やディジタル信号）を指す。
【００８７】
なお、図4に示すサーバ100は、複数のクライアントPC300に対応するものとして説明したが、図12に示す一台の計算機上に、一つのユーザ（クライアントPC）それぞれに一つずつ対応するサーバ100が複数存在しても良い。また、一つのラックに、図12に構成を備えるブレード型サーバが複数収容される構成において、一つのサーバ100が一枚のブレードサーバ上に構築されても良い。
【００８８】
本実施形態において、クライアントPC300は、サーバ100を遠隔操作し、かつPC認証装置102/302と機器認証する機能を備えれば十分である。PC認証装置102/302も、クライアントPC300と機器認証し、サーバ100と通信できれば十分である。従ってどちらのPCも外部記憶媒体を必要としない。本実施例のように、クライアントPC300およびPC認証装置102/302から不要な外部記憶媒体を取り除くことで、万一、紛失や盗難などによるデータの盗難を防止することができる。
【図面の簡単な説明】
【００８９】
【図１】本実施形態にかかるシステムの構成図である。
【図２】本実施形態にかかるシステムの構成図である。
【図３】本実施形態にかかるシステムの処理フローの概略図である。
【図４】本実施形態にかかるサーバ100の構成図である。
【図５】本実施形態にかかるPC認証装置102/302の構成図である。
【図６】本実施形態にかかるクライアントPC300の構成図である。
【図７】本実施形態にかかるネットワーク接続の処理フローである。
【図８】本実施形態にかかる機器認証の処理フローである。
【図９】本実施形態にかかる接続場所通知処理の処理フローである。
【図１０】本実施形態にかかる印刷管理テーブルの一例である。
【図１１】本実施形態にかかる印刷処理および接続可能プリンタ削除処理の処理フローである。
【図１２】本実施形態にかかるクライアントPC300およびPC認証装置102/302の装置図である。
【符号の説明】
【００９０】
10…自席オフィス、20…インターネット、30…出張先オフィス、100…サーバ、102…PC認証装置、104…プリンタ、106…VPNサーバ、108…イントラネット、300…クライアントPC、302…PC認証装置、304…プリンタ、306…VPNサーバ、308…イントラネット、310…ユーザ、1000…クライアントPC認証部、1002…クライアントPC通信部、1004…PC認証装置識別子取得部、1006…PC認証装置通信部、1008…プリンタドライバ制御部、1010…プリンタドライバ格納部、2000…サーバ識別子通知部、2002…サーバ通信部、2004…クライアントPC認証部、2006…クライアントPC通信部、2008…証明書格納部、3000…サーバ部、3002…サーバ通信部、3004…PC認証装置認証部、3006…PC認証装置通信部、3008…起動制御部、3010…証明書格納部、E700b…PC認証装置302の保有データ、P700b…PC認証装置302のポーリング送信データ、E800a…クライアントPC300の保有データ、E800b…PC認証装置302の保有データ、P800a…クライアントPC300の送信データ、P802b…PC認証装置302の送信データ、P804a…クライアントPC300の送信データ、E900b…クライアントPC300の保有データ、E900c…サーバ100の保有データ、P900b…PC認証装置302の送信データ、P902c…サーバ100の送信データ、P904b…PC認証装置302の送信データ、T1000…印刷管理テーブルの一例、P1100c…印刷データ、E1000…ディスプレイ、E1002…入力デバイス、E1004…通信インターフェース、E1006…CPU、E1008…ROM、E1010…RAM、E1012…認証デバイス。
【図１】
0004626527.tif 000002
【図２】
0004626527.tif 000003
【図３】
0004626527.tif 000004
【図４】
0004626527.tif 000005
【図５】
0004626527.tif 000006
【図６】
0004626527.tif 000007
【図７】
0004626527.tif 000008
【図８】
0004626527.tif 000009
【図９】
0004626527.tif 000010
【図１０】
0004626527.tif 000011
【図１１】
0004626527.tif 000012
【図１２】
0004626527.tif 000013