説明

認証代行装置、認証代行プログラム、及び認証代行システム

【課題】認証システム下のクライアントが、認証システム下の別のクライアントとの通信するためには、そのクライアントに認証システムに対応する設定を行う必要がある。
【解決手段】認証サーバ100のクライアントである画像処理装置10は、認証エージェント70に対し、同じ認証サーバ100の別のクライアントである文書サーバ110にデータを送信したい旨の要求を行う。この場合、認証エージェント70は、認証サーバ100に対して、画像処理装置10の認証要求を行う認証要求を行った後、画像処理装置10と文書サーバ110の通信可能化を要求する。そして、認証エージェント70は、認証サーバ100から取得した可能化データ(サービスチケット)を利用して、文書サーバ110へ送信すべきデータを生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、認証代行装置、認証代行プログラム、または認証代行システムに関する。
【背景技術】
【0002】
近年、ディレクトリサーバ等を用いて、ネットワークを介した認証やアクセス制御を行うシステムが普及している。ここでは、そのような認証技術の一つとして知られるKerberosの典型的な認証態様について説明する。
【0003】
Kerberosは、鍵配布センタKDC(KeyDistributionCenter)、認証サーバAS(AuthenticationServer)、チケット交付サーバTGS(TicketGrantingServer)の論理構成要素を利用して、クライアントの認証処理や、クライアントと別クライアントとの通信認可処理(通信可能化処理)を行うシステムである。この3つの論理構成要素は、通常一つにまとめられて実装されており、以下では、これらをまとめて単に認証サーバと呼ぶ。
【0004】
認証サーバは、認証サーバのみが所有する鍵(K0と呼ぶ)を所有する他、クライアントのパスワードをシード(種)として生成した共通鍵(K1と呼ぶ)をこのクライアントと共有している。また、認証サーバは、別のクライアント(ここではアプリケーションサーバと呼ぶ)のパスワードを鍵のシードとして生成した共通鍵(K2と呼ぶ)をこのアプリケーションサーバと共有している。
【0005】
クライアントは、アプリケーションサーバにアクセス(通信)したい場合、まず、認証サーバに認証要求を行う。そして、認証サーバは、認証に成功すると、セッション鍵(K3と呼ぶ)及びTGT(TicketGrantingTicket;イニシャルチケットと呼ばれることもある)を生成する。TGTは、クライアントのIP(インターネットプロトコル)アドレス、K3、有効期限などの情報をK0で暗号化して作成されたデータである。認証サーバは、K3及びTGTをK1で暗号化してクライアントに送信する。クライアントは、K1による復号化を行って、TGT及びK3を取り出す。
【0006】
次に、クライアントは、アプリケーションサーバにアクセスしたいというアクセス認可要求(アクセス可能化要求)、K3で暗号化したタイムスタンプ、及び、TGTを認証サーバに送信する。認証サーバでは、TGTをK0で復号化して、クライアントのIPアドレス、K3、有効期限などの情報を取り出す。そして、認証サーバは、有効期限が到来していないことを確認した後、K3でタイムスタンプを復号化して、要求元が正当な権利をもつクライアントであることを検証し、さらに、アプリケーションサーバへのアクセス認可が要求されていることを把握する。
【0007】
認証サーバでは、クライアントからのアクセス要求を認可する場合、クライアントとアプリケーションサーバとの通信用のセッション鍵(K4と呼ぶ)を生成する。そして、K4をK2で暗号化したもの(サービスチケットと呼ばれる)、及び、K4をK3で暗号化したものを作成し、クライアントに送信する。
【0008】
クライアントでは、後者をK3で復号化して、K4を取り出す。そして、取り出したK4を用いて、アプリケーションサーバへのアクセス要求を暗号化し、これを、サービスチケット(K2で暗号化されたままのK4)と一緒にアプリケーションサーバに渡す。アプリケーションサーバは、サービスチケットをK2で復号化してK4を取り出すことができるので、クライアントが認証サーバから通信を認可されていることを検証できる。そして、取り出したK4で、クライアントからの要求を復号化する。こうして、クライアントとアプリケーションサーバ間で、K4を利用した安全な通信が行われるようになる。
【0009】
このようにKerberosの認証システムでは、認証サーバによってクライアント認証が行われると、認証サーバはクライアントに対しTGTを発行する。TGTは、認証を受けたクライアントに対して認証サーバが発行するデータであって、このクライアントに対して、他のクライアントへのアクセス(通信)の認可(可能化)を認証サーバに要求する権限を与える権限データであると言える。そして、クライアントが、TGTを用いて、認証サーバに対して、他のクライアントへのアクセス認可を要求すると、認証サーバはクライアントに対して、そのクライアントにアクセスするためのサービスチケットを発行する。サービスチケットは、アクセスを要求したクライアントに対して認証サーバが発行するデータであって、このクライアントに対して、アクセス先である他のクライアントへのアクセスを可能にする可能化データであると言える。
【0010】
なお、認証サーバは、相互認証された複数のサーバ要素からなっていてもよい。複数のサーバ要素が、相互認証を行っている場合(共通鍵を所有する場合)には、信頼関係を連鎖させることで、異なるサーバ要素のクライアント同士の通信も可能となる。これは、クロスレルム認証(ある認証サーバが信頼するレルム(ネットワーク上の範囲)と別の認証サーバが信頼するレルムを跨いで相互に認証すること)と呼ばれる技術である。
【0011】
Kerberosの認証システムには、TGTやサービスチケット等を取り扱うことのできる装置であれば、特に制限されることなく各種の装置が参加可能である。
【0012】
なお、下記特許文献1には、ネットワークを介して接続されたディレクトリサーバによって管理され、投入されたジョブ管理コマンドにしたがって、外部から入力されたジョブの管理を行う周辺機器(周辺装置)についての記載がある。この周辺機器は、ジョブに含まれるアクセスチケットを解読し、解読結果に基づいてジョブを管理する。
【0013】
【特許文献1】特開2002−202945号公報
【発明の開示】
【発明が解決しようとする課題】
【0014】
本発明の目的は、クライアントが独自に認証システムに対応する設定を行わなくても認証システム下の別のクライアントとの通信が可能となる認証代行装置、認証代行プログラム、または認証代行システムを提供することにある。
【課題を解決するための手段】
【0015】
本発明の認証代行装置の一態様においては、認証サーバのクライアントAから、前記認証サーバのクライアントBとの通信要求を受信する通信要求受信手段と、前記クライアントAから、前記クライアントBへ送信すべきデータを受信するデータ受信手段と、前記認証サーバに対して、前記クライアントAについての認証要求を行う認証要求手段と、前記認証サーバに対して、前記クライアントAと前記クライアントBの通信の可能化を要求する通信可能化要求手段と、前記認証サーバから、前記クライアントBとの通信を可能にする可能化データを取得する可能化データ取得手段と、前記可能化データ及び前記送信すべきデータに基づいて、前記クライアントBに送信する送信データを生成する生成手段と、を備える。
【0016】
本発明の認証代行装置の一態様においては、前記送信データを前記クライアントBに送信する送信手段を備える。
【0017】
本発明の認証代行装置の一態様においては、前記送信データを前記クライアントAに送信する送信手段を備える。
【0018】
本発明の認証代行装置の一態様においては、前記認証要求の結果、前記認証サーバの別クライアントと前記クライアントAとの通信の可能化を許可される権限を与える権限データを前記認証サーバから取得する権限データ取得手段と、前記権限データを保持する保持手段と、を備え、前記通信可能化要求手段は、前記権限データに基づいて前記通信の可能化を要求する。
【0019】
本発明の認証代行装置の一態様においては、当該認証代行装置は、予め信頼関係が構築された外部装置と通信可能に設定され、当該認証代行装置は、さらに、前記可能化データ取得手段が前記可能化データを取得する前に、前記データ受信手段が前記送信すべきデータを受信した場合に、前記送信すべきデータを前記外部装置に送信して保管させる保管手段と、前記可能化データ取得手段が前記可能化データを取得した後に、前記外部装置から前記送信すべきデータを再受信するデータ再受信手段と、を備える。
【0020】
本発明の認証代行装置の一態様においては、クライアントAは、利用者の利用権限の下で処理を行う装置であり、当該認証代行装置は、前記利用者の利用権限の下で前記クライアントBに対する通信についての処理を行う。
【0021】
本発明の認証代行プログラムの一態様においては、認証サーバのクライアントAから、前記認証サーバのクライアントBとの通信要求を受信する通信要求受信手段と、前記クライアントAから、前記クライアントBへ送信すべきデータを受信するデータ受信手段と、前記認証サーバに対して、前記クライアントAについての認証要求を行う認証要求手段と、前記認証サーバに対して、前記クライアントAと前記クライアントBの通信の可能化を要求する通信可能化要求手段と、前記認証サーバから、前記クライアントBとの通信を可能にする可能化データを取得する可能化データ取得手段と、前記可能化データ及び前記送信すべきデータに基づいて、前記クライアントBに送信する送信データを生成する生成手段、としてコンピュータを機能させる。
【0022】
本発明の認証代行システムの一態様においては、認証サーバのクライアントAから、前記認証サーバのクライアントBとの通信要求を受信する通信要求受信手段と、前記クライアントAから、前記クライアントBへ送信すべきデータを受信するデータ受信手段と、前記認証サーバに対して、前記クライアントAについての認証要求を行う認証要求手段と、前記認証サーバに対して、前記クライアントAと前記クライアントBの通信の可能化を要求する通信可能化要求手段と、前記認証サーバから、前記クライアントBとの通信を可能にする可能化データを取得する可能化データ取得手段と、前記可能化データ及び前記送信すべきデータに基づいて、前記クライアントBに送信する送信データを生成する生成手段と、を備える。
【発明の効果】
【0023】
請求項1に記載の本発明によれば、クライアントAでは、認証サーバを利用するための設定を行わなくても、認証代行装置への対応設定をすることで、認証サーバの別のクライアントBとの通信が可能となる。また、クライアントAでは、可能化データを利用して送信データの生成する処理が不要となる。
【0024】
請求項2に記載の本発明によれば、クライアントAでは、可能化データに基づき生成された送信データを送信する必要がなくなる。
【0025】
請求項3に記載の本発明によれば、クライアントAでは、可能化データに基づき生成された送信データを、自ら生成することなく取得することが可能となる。そして、この送信データに基づいて、クライアントBと通信を行うことが可能となる。
【0026】
請求項4に記載の本発明によれば、クライアントAが権限データを保持しなくても、通信認可の要求を行うことが可能となる。
【0027】
請求項5に記載の本発明によれば、クライアントAでは、送信すべきデータを早期に認証代行装置に送信してしまうことができ、かつ、認証代行装置では、クライアントBへの送信までの間、継続して送信すべきデータを保持する必要がなくなる。特に、送信すべきデータ量が比較的多い場合に、認証代行装置における負荷が軽減される。
【0028】
請求項6に記載の本発明によれば、利用者毎に通信の制御を行うことが可能となる。
【0029】
請求項7に記載の本発明によれば、クライアントAでは、認証サーバを利用するための設定を行わなくても、認証代行装置への対応設定をすることで、認証サーバの別のクライアントBとの通信が可能となり、また、クライアントAでは、可能化データを利用して送信データの生成する処理が不要となるプログラムが提供される。
【0030】
請求項8に記載の本発明によれば、クライアントAでは、認証サーバを利用するための設定を行わなくても、認証代行装置への対応設定をすることで、認証サーバの別のクライアントBとの通信が可能となり、また、クライアントAでは、可能化データを利用して送信データの生成する処理が不要となるシステムが提供される。
【発明を実施するための最良の形態】
【0031】
以下に本実施の形態について例示する。
【0032】
本実施の形態では、認証サーバ、認証代行装置である認証エージェント、及び、認証サーバのクライアントである画像処理装置や文書サーバなどを示して説明を行う。画像処理装置や文書サーバなどは、上記クライアントAやクライアントBに対応する。また、本実施の形態では、主として、Kerberosによる認証技術を前提とした説明を行う。なお、サーバとは、クライアントの要求に応じてサービスを提供する装置をいい、クライアントは、サーバの提供するサービスを享有する装置をいう。
【0033】
まず、図1を用いて、コンピュータのハードウエア構成を説明する。図1は、本実施の形態にかかる画像処理装置10のハードウエア構成を示す図である。画像処理装置10は、コントローラボード12を備えている。そして、コントローラボード12上には、内部通信経路としてのバス14が設けられ、バス14に対しては、CPU(中央処理装置)16、ROM(ReadOnlyMemory)18、RAM(RandomAccessMemory)20、NVRAM(NonVolatileRAM)22、HDD(HardDiscDrive)24、画像処理部26、UI_IF(ユーザインタフェース_インタフェース)28、通信IF36、DeviceIF46が接続されている。
【0034】
CPU16は画像処理装置の主たる制御を行う処理部であり、プログラムに従って動作する。CPU16には、プログラム構成に対応した様々な処理機能が構築される。ROM18は、書き換え不可能な不揮発性メモリであり、プログラムや固定データを格納する。ただし、ROM18を、フラッシュメモリによる書き換え可能な構成としてもよい。RAM20は、書き換え可能な揮発性メモリであり、プログラム動作のためのシステムメモリや、画像処理のためのページメモリとして使われる。NVRAM22は、書き換え可能な不揮発性メモリであり、不揮発性のデータ、画質調整、各種設定パラメータ、各種履歴の格納を行う。HDD24は、磁気ディスク等により構築された大容量記憶装置であり、画像データや各種履歴の格納を行う。画像処理部26は、コプロセッサなどの画像処理専用回路を備え、画像データの伸張圧縮処理や各種画像処理を行う。
【0035】
UI_IF28は、UI30とのインタフェースである。UI_IF28には、コントローラボード12外に設けられたUI30が接続されており、UI30は、ディスプレイや発光ダイオード等の表示部32とハードキーやタッチパネル等の操作部34を含んでいる。
【0036】
通信IF36は、各種の外部装置やネットワークへのインタフェースである。通信IF36には、LAN(LocalAreaNetwork)38、Serial40、USB(UniversalSerialBus)42、モデム44の各種インタフェースが接続されている。LAN38は、10/100BASE−Tなどによる有線形式や、無線形式でネットワークに接続する。Serial40は、各種外部周辺装置への直接的な接続に用いられ、USB42は、USB1.1やUSB2.0などをサポートする装置への直接接続に使用される。また、モデム44は、FAXなどの公衆回線への接続を行う。
【0037】
DeviceIF46には、コントローラボード12外に設けられたスキャナ、プラテン、自動原稿読取装置(両面も可)等の読取装置部48と、プリントエンジンなどを含む印刷装置部49とが接続されている。読取装置部48は、用紙を読み取って新たに画像データを生成する画像処理を行い、印刷装置部49は画像データに基づいて用紙に画像を印刷する画像処理を行う。
【0038】
なお、CPU16を制御するプログラムは、典型的には、製造段階でROM18に格納される。しかし、例えば、LAN38を用いてネットワークからプログラム信号を受信することで、NVRAM22にプログラムをインストールすることができる。また、プログラムのインストールは、CD(コンパクトディスク)をUSB42に接続されたCDドライブで読み取るなど、記憶媒体を通じて行われてもよい。
【0039】
以上においては、画像処理装置10のハードウエア構成について説明したが、この構成は、一般的なコンピュータにおいてもほぼ同様である。一般的コンピュータは、画像処理装置10と異なり、画像処理部26、DeviceIF46、読取装置部48、印刷装置部49などの画像処理に特化したハードウエア構成要素を備えないことが多いが、画像処理装置10と同様に、プログラム制御されるCPU16などを備える。本実施の形態で例示する認証エージェント、認証サーバ、文書サーバなどは、一般的なコンピュータをプログラム制御させることで構築可能である。
【0040】
なお、ハードウエアの各構成要素は、必ずしも一体化している必要はなく、通信可能な複数の部分に分離されていてもよい。また、これらの部分は、ネットワーク上に分散され、分散処理システムを構成していてもよい。
【0041】
続いて、画像処理装置10の機能構成について説明する。図2は、図1に示した画像処理装置10の機能構成例を示した概略ブロック図である。画像処理装置10には、主たる機能要素として、制御部50、ユーザ認証要求部52、ユーザログアウト通知部54、送受信部56、転送処理部58、画像生成部60、及び印刷部62が構築されている。
【0042】
制御部50は、各機能要素の制御を行う。ユーザ認証要求部52は、画像処理装置10にユーザ(利用者)がログイン(ログオン)を試みた場合に、認証エージェントを介して認証サーバに認証を要求する。ユーザログアウト通知部54は、ユーザがログアウト(ログオフ)した場合、あるいは、そのユーザの指令にかかるジョブが終了した場合に、認証エージェントにその旨を通知する。送受信部56は、通信IF36を介して文書サーバや認証エージェントとデータの送受信を行う。転送処理部58は、送受信部56を制御して、受信したデータを転送先にそのまま送信させる転送処理を行う。画像生成部60は、読取装置部48を利用して構築されており、用紙を読み取って画像データを生成する。印刷部62は、印刷装置部49を利用して構築されており、画像データに基づいて用紙に印刷を行う。
【0043】
図3は、認証エージェント70の機能構成例を示した概略ブロック図である。認証エージェント70には、ユーザ情報登録部72、ユーザ認証要求受信部74、ユーザ認証要求部76、TGT取得・記憶部78、TGT更新・無効化部80、通信要求受信部82、サービスチケット要求部84、反復要求部86、送信データ生成部88、及び送受信部90が構築されている。
【0044】
ユーザ情報登録部72では、ユーザの認証に必要となる認証情報の登録が行われる。認証情報としては、ユーザIDやパスワードなどが挙げられる。登録対象となるユーザは、典型的には、認証サーバ上に登録されたユーザであるが、認証サーバー上に登録されていないユーザであってもよい。後者の場合には、ユーザの属性情報として、認証サーバへの認証要求あるいはネットワークを通じた通信要求が許可されているか禁止されているかを表す情報を含めてもよい。登録は、あらかじめ行われてもよいし、ユーザ認証要求受信部74が認証情報とともに認証要求を受信した場合に、この認証情報を利用して行われてもよい。登録された認証情報は、認証サーバにユーザの認証を要求するために使用されたり、認証サーバにネットワーク上の装置にアクセスするためのサービスチケット発行を要求するために使用されたりする。
【0045】
ユーザ認証要求受信部74は、通信要求受付手段の例であり、画像処理装置10等のクライアントから、ユーザ認証要求を受信する。認証要求とともに、ユーザIDやパスワードなどを受信することもある。なお、ユーザ認証の要求は、明示的に行われてもよいが、暗黙の内に行われてもよい。
【0046】
ユーザ認証要求部76は、認証要求手段の例であり、ユーザ認証要求受信部74の受信結果に従って、認証サーバに対しユーザ認証を要求する。ユーザ認証の要求にあたっては、クライアントから受信した認証情報、あるいは、ユーザ情報登録部72に格納された認証情報も送信される。
【0047】
TGT取得・記憶部78は、ユーザ認証要求部76による認証要求の結果、認証サーバから権限データたるTGT(以下では、イニシャルチケットと呼ぶ場合もある)及びセッション鍵を取得し、記憶する。TGTは、サービスチケットを取得する権限を与えるデータである。一般に、TGTには、適当な有効期間が設定される。
【0048】
TGT更新・無効化部80は、クライアントにおけるユーザの作業状態に応じて、TGTの更新や無効化(破棄や、認証サーバへの無効化依頼)を行う。例えば、クライアントとしての画像処理装置10から、ユーザがログアウト(タイマーによるログアウトでもよい)した旨、あるいは、ログアウト後にユーザの残したジョブが終了した旨が伝えられた場合に、TGT更新・無効化部80は、当該認証エージェント70におけるそのユーザについてのジョブ処理の終了を確認したうえで、TGTの無効化を行う。他方、TGT更新・無効化部80は、ユーザのログイン中や、ユーザによるジョブが残っている最中は、TGTを保持し続け、TGTの有効期限が切れる前に、認証サーバに対しチケットの更新を要求する。
【0049】
通信要求受信部82は、通信要求受信手段の例である。通信要求受信部82は、クライアントから、ネットワーク上の他装置との通信(受信と送信の一方または両方)を行いたい旨の要求を受ける。要求は、明示的に行われてもよいが、暗黙の内に行われてもよい。
【0050】
サービスチケット要求部84は、可能化データ取得手段の例である。サービスチケット要求部84は、通信要求受信部82による受信結果に基づいて、通信相手となる装置との通信認可要求を認証サーバに要求するものであり、具体的には通信相手の装置と通信するためのサービスチケットの発行を認証サーバに要求する。要求は、TGTを利用して行われる。もちろん、認証サーバが許せば、TGTを用いずに、ユーザ認証に使用した認証情報を再度用いてサービスチケットを要求することも可能である。サービスチケットには、通信相手と認証エージェント70との間で使用される通信用の共通鍵であるセッション鍵が埋め込まれており、このサービスチケットは通信相手(と認証サーバ)のみが保持する共通鍵によって暗号化されている。したがって、サービスチケットを取得した通信相手は、その復号化に成功した場合には、認証エージェント70が通信認可を受けていると判断する。そして、取り出したセッション鍵を用いて、認証エージェント70との間で、暗号化された安全な通信を行うことができる。このように、サービスチケットは、通信相手の装置との通信を可能化する可能化データである。
【0051】
反復要求部86は、通信相手の装置との通信に失敗した場合に、再度の通信を試みる。この場合、クライアントの処理を一旦終了させるために、例えば処理をクライアントから当該認証エージェント70に移管する旨のステータスをクライアントに通知してもよい。なお、設定回数や設定時間を超過しても通信可能とならなかった場合には、反復処理を中止し、クライアントに処理が失敗した旨を通知する。
【0052】
送信データ生成部88は、生成手段の例であり、サービスチケット(通信用の共通鍵)を通信相手の装置に渡すための送信データや、通信対象となるデータを通信用の共通鍵で暗号化した送信データを生成する。なお、送信データのプロトコルは特に限定されるものではなく、設定に従い、あるいは、クライアントからの指示に従い決定すればよい。プロトコルの例としては、SMB(ServerMessageBlock)、FTP(FileTransferProtocol)、IPP(InternetPrintingProtocol)などを挙げることができる。
【0053】
送受信部90は、データ受信手段、データ再受信手段、送信手段などの例であり、データの送受信を行う。送受信の相手としては、クライアントや、認証サーバの他、クライアントが要求する通信先を挙げることができる。
【0054】
続いて、図4乃至図8を用いて、本実施の形態にかかるシステム構成について説明する。
【0055】
[第1のシステム形態] 図4は、第1のシステム形態の構成を説明する図である。このシステムには、画像処理装置10、認証エージェント70、認証サーバ100、文書サーバ110、及び一時保管サーバ112が含まれている。
【0056】
認証サーバ100は、Kerberos認証技術における認証サーバ、鍵配布センタ、チケット交付サーバを兼ねる装置である。認証サーバ100は、単体の認証システムを構築するものであっても、複数の認証システムの相互認証(クロスレルム認証)により構築されたものであってもよい。
【0057】
画像処理装置10は、認証サーバ100のクライアントであり、図1に示したハードウエア構成及び図2に示した機能構成をもつ装置である。ここで、クライアントとは、認証サーバ100が提供する認証サービスを享受する装置をいう。ただし、画像処理装置10は、認証エージェント70を通じて間接的に認証サーバ100にサービスを要求し、サービスを享受している。
【0058】
認証エージェント70は、図3に示した機能構成をもつ装置であり、画像処理装置10と認証サーバ100の間に設置されている。そして、画像処理装置10からの要求に基づいて認証サーバ100にサービスを要求し、認証サーバ100が提供するサービスを画像処理装置10に還元している。
【0059】
文書サーバ110は、文書データの保管などを行うサーバである。文書サーバ110は、認証サーバ100のクライアントであり、認証サーバ100による認証サービスを享有している。文書サーバ110には、認証サーバ100と同じ共通鍵が保持されている。
【0060】
一時保管サーバ112は、外部装置の例であり、文書サーバ110と同様に文書データなどを保管するサーバである。一時保管サーバ112には、認証エージェント70に比べ大容量のデータを保管することができる。一時保管サーバ112は、認証サーバ100のクライアントであってもよいし、なくてもよい。しかし、一時保管サーバ112は、認証エージェント70と、認証サーバ100の下で、あるいは、別の認証システムや適当な通信安全設定の下で、安全に通信できることが想定されている。
【0061】
画像処理装置10と認証エージェント70の間の通信経路には、認証サーバが提供する認証システムとは別の設定に基づいて、通信安全性(通信セキュリティ)が確保されている。通信安全性の確保は、例えば、ケーブルの直接接続や、公開鍵認証方式によって行われる。これに対し、画像処理装置10、認証サーバ100、及び文書サーバ110の間の通信安全性は、認証サーバ100が提供する方式に基づいて確保されている。
【0062】
次に、図5のフローチャートを用いて、画像処理装置10でスキャンされた文書データが、文書サーバ110に格納される処理の流れを説明する。
【0063】
画像処理装置10は、ユーザがユーザID、レルム(ネットワーク上の範囲を表す。典型的にはドメイン名が与えられる)、パスワードなどの認証情報を入力すると、その認証情報を認証エージェント70に送信して外部認証の要求を行う(S10)。認証エージェント70は、認証サーバ100の方式に従い、認証情報をプリンシパル(処理対象の身元を明らかにする情報であり、典型的にはユーザIDとレルムを組合せて作成される)とパスワードに変換して、認証サーバ100に認証を要求する(S12)。そして、認証サーバ100は、予め登録されたパスワードに基づいてユーザ認証を行う(S14)。その結果、認証に失敗すると、その旨が認証エージェント70に伝えられ(S16)、さらに、認証エージェント70から画像処理装置10に伝えられ(S18)、処理が終了する(S20)。他方、認証に成功した場合には、権限データたるTGTが発行されて(S22)、認証エージェント70に送信される。認証エージェント70は、このTGTを記憶領域に格納し(S24)、画像処理装置10に対して認証に成功した旨を通知する(S26)。
【0064】
ここでは、ログインに成功したユーザは、画像処理装置10において、文書のスキャンと、これにより生成された文書データの転送先の入力、及び転送指示を行っている(S28)。画像処理装置10では、文書データ、転送先、及びログインユーザのユーザ情報を認証エージェント70に送信して、転送要求を行う(S30)。ユーザ情報は、先に認証したユーザと同一であることを示す情報である。ユーザ情報の例としては、ユーザIDとレルムの組み合わせを挙げることができる。
【0065】
認証エージェント70は、TGTと転送先を認証サーバ100に送信して、転送先へのアクセス認可の要求、すなわち、転送先へのアクセスを可能化するサービスチケットの発行の要求を行う(S32)。認証サーバ100は、TGTの検証を行い(S34)、検証に失敗した場合には、認証エージェント70にその旨を伝える。そして、認証エージェント70では、転送が失敗に終わり(S36)、その旨が画像処理装置10に伝えられる。この結果、画像処理装置10では、文書転送についてのジョブが失敗のまま終了することになる(S38,S40)。他方、TGTの検証に成功した場合には、サービスチケットが発行され(S42)、認証エージェント70に送信される。このサービスチケットは、文書サーバ110がもつ鍵で暗号化されている。認証エージェント70は、サービスチケットを記憶領域に格納する(S44)。さらに、認証エージェント70は、文書データとサービスチケットを用いて送信データを生成し、転送先に送信する(S46)。送信データの生成は、文書データが転送先によって受け付けられるように、例えば、サービスチケットを添付したり、文書データを暗号化したりして行われる。
【0066】
転送先である文書サーバ110は、送信データを受信すると、送信データに含まれるサービスチケットの復号化を行い、その有効性、つまり、送信データが認証サーバ100によって通信が認可された相手から送信されたか否かを検証する(S48)。そして、検証に失敗した場合には、認証エージェント70に対しその旨を伝達する。この結果、認証エージェント70では転送が失敗に終わり(S50)、画像処理装置10は、転送に失敗したままジョブを終了する(S52,S54)。これに対し、サービスチケットが有効であると判断された場合には、文書サーバ110は、送信データから文書データを取り出して格納する(S56)。そして、認証エージェント70は転送成功の報告を受け(S58)、画像処理装置10は成功裡にジョブを終了する(S60,S62)。
【0067】
この一連の処理において、認証エージェント70がサービスチケットを取得する前に、画像処理装置10から認証エージェント70に文書データが送信される場合が考えられる。この場合に、認証エージェント70では、受信した文書データを一時保管サーバ112に一時的に保管する。そして、サービスチケットが発行された後で、一時保管サーバ112から文書データを再取得する。
【0068】
また、この一連の処理において、認証エージェント70がサービスチケットを取得していながら文書サーバ110が受信可能状態で無い場合が考えられる。しかし、この場合においても、認証エージェント70が受信した文書データを一時保管サーバ112に一時保管し、文書サーバ110が受信可能状態になった後で、一時保管サーバ112から文書データを再取得するようにしても良い。
【0069】
なお、一般に、TGTには、有効期限が設定されている。そこで、認証エージェント70は、有効期限を監視し、期限が切れる前にTGTの更新を行うことができる。また、画像処理装置10においてユーザがログアウトした場合や、ログアウトかつユーザの全ジョブが終了した場合に、画像処理装置10は、その旨を認証エージェント70に通知する。そして、認証エージェント70は、このユーザについてのジョブ実行を委託されたものがないことを確認し、ユーザのTGTを破棄する。
【0070】
[第2のシステム形態] 図6は、第2のシステム形態にかかる構成を説明する図である。このシステムには、画像処理装置10、認証エージェント70、認証サーバ100、及びPC(パーソナルコンピュータ)120が含まれている。画像処理装置10、認証エージェント70、及び認証サーバ100は、第1のシステム形態と同様の装置である。すなわち、画像処理装置10は認証サーバ100のクライアントであり、認証エージェント70は画像処理装置10の認証処理の少なくとも一部を代行する装置である。また、画像処理装置10と認証エージェント70の通信は、独自の方式で、安全化が図られている。PC120は、認証サーバ100のクライアントである。
【0071】
次に、図7のフローチャートを用いて、PC120から画像処理装置10に対し文書データの印刷が要求される場合の処理の流れを説明する。PC120では、まず、認証サーバ(KDC)100に対し認証情報を送信してユーザ認証を求め、TGTを獲得する(S72)。続いて、PC120は、認証サーバ100に対し、TGTと転送先の情報を送信して、画像処理装置10にアクセスするためのサービスチケットを要求する(S74)。認証サーバ100は、TGTを検証してサービスチケット発行の可否を判定し(S76)、発行不可能な場合にはその旨をPC120に伝達し、発行可能な場合にはサービスチケットを発行してPC120に送信する(S78)。そして、PC120は、取得したサービスチケットを記憶領域に格納する(S80)。なお、PC120が既にTGTやサービスチケットを獲得している場合には、これらのステップを繰り返す必要はない。
【0072】
続いて、PC120は、ユーザが文書データの印刷を指示する(S82)。これを受けて、PC120は、通信用のコンテキストを初期化し(S84)、画像処理装置10に対し、サービスチケットを含むメッセージを送信する。このメッセージは、画像処理装置10によって、認証エージェント70にリダイレクトされる(S86)。
【0073】
認証エージェント70では、画像処理装置10がまだ認証を受けていない場合には、認証サーバ100に対し、画像処理装置10のプリンシパル名やパスワードを送信して、TGTの発行を要求する処理が行われる(S88)。そして、認証サーバ100は、TGTの検証を行い(S90)、発行可能な場合には、TGT(イニシャルチケット)を発行して認証エージェント70に送信する(S92)。
【0074】
認証エージェント70は、このTGTを記憶領域に格納する(S94)。そして、PC120から送られたサービスチケットを、画像処理装置10と共有している共有鍵で復号化し、時刻検証処理などを行う。アクセスが正当なものであると判断した場合、認証エージェント70は、コンテキストを受け入れ、さらに、PC120に通知すべきプロトコル情報などについての応答メッセージを作成する(S96)。画像処理装置10は、受信した応答メッセージをPC120に送信し(S98)、これにより画像処理装置10においてコンテキストが確立する(S100)。
【0075】
PC120は、印刷対象となる文書データ及び印刷指示データを通信用の鍵で暗号化して画像処理装置10に送信し、画像処理装置10は、それを認証エージェント70にリダイレクトする。また、認証エージェント70は、文書データ及び印刷指示データを復号化し、画像処理装置10に渡す(S102)。この過程は、画像処理装置10が、全データを獲得するまで繰り返される。
【0076】
最後に、PC120は、セッションを閉じて、サービスチケットを破棄し(S104)、処理を終了する(S106)。また、認証エージェント70は、セッションを閉じて、TGTを破棄し(S108)、処理を終了する(S110)。そして、画像処理装置10は、印刷指示データに基づいて文書データの印刷を行い(S112)、処理を終了する(S114)。
【0077】
[第3のシステム形態] 図8は、第3のシステム形態にかかる構成を説明する図である。このシステムには、第1のシステム形態と同様に、画像処理装置10、認証エージェント70、認証サーバ100、文書サーバ110、及び一時保管サーバ112が含まれている。
【0078】
ここでは、画像処理装置10から文書サーバ110へ文書データを送信する処理について説明する。処理では、まず、画像処理装置10において、ユーザが認証情報を入力する。そして、画像処理装置10は、認証エージェント70に対し、認証情報を送信して認証を要求し、認証エージェント70は、外部の認証サーバ100に対し、認証情報を送信してユーザ認証を要求する。認証に成功した場合、認証サーバ100においてTGTが発行され、認証エージェント70に送信されて保存される。
【0079】
画像処理装置10のユーザは、文書の読み取りにより文書データを生成させるとともに、この文書データを文書サーバ110に送信する指示を行う。この場合、画像処理装置10は、設定に従って、認証エージェントに対し、文書データとプロトコル情報をリダイレクト送信する。認証エージェント70は、プロトコル情報に基づいて、文書サーバ110へ文書データを送信するための送信データを生成し、デバイスに通知する。
【0080】
この過程で、認証エージェント70は、サービスチケットが必要であれば、認証サーバ100に対してTGTを用いてサービスチケットの発行を要求する。そして認証サーバ100は、文書サーバ110の共通鍵で暗号化されたサービスチケットを発行する。また、認証エージェント70は、文書サーバ110との通信用に作成された鍵を用いて、電子文書の暗号化等を行う。
【0081】
こうして、作成された送信データは、画像処理装置10に送信され、さらに画像処理装置10によって文書サーバ110へと転送される。なお、認証エージェント70は、文書サーバ110とのネゴーシエーションや、文書サーバ110からの送信データの復号化なども同じ経路を利用して行う。すなわち、本システム形態では、画像処理装置10が、認証サーバ100の配下にある文書サーバ110と通信を行う場合、全ての送受信データ(あるいは認証、暗号化、複合化等が必要なデータ)を認証エージェント70にリダイレクト送信し、認証、暗号化、復号化等の処理を行わせる。なお、一時保管サーバ112の役割は、第1のシステム形態と同様である。すなわち、認証エージェントによる認証処理を待つ間、認証エージェント70が保持すべきデータが一時保管サーバ112に一時的に保管される。
【0082】
以上の説明では、通信を行う一方のクライアントのみが認証エージェントを使用している態様について示したが、両方のクライアントが認証エージェントを使用してもよい。両方のクライアントが異なる認証エージェントを使用する場合には、認証エージェントは上述の通りの処理を行えばよい。しかし、両方のクライアントが同じ認証エージェントを使用する場合には、暗号化と復号化が同じ認証エージェントで行われることになる。つまり、暗号化及び復号化を行う必要がなくなり、ゆえに、認証サーバにサービスチケットの発行を求める必要もなくなる。したがって、同じ認証エージェントを使用するクライアント同士が通信を行う場合には、認証エージェントでは、認証サーバの認可をうけることなく両者の通信を許すことが可能となる。
【0083】
また、以上の説明においては、共通鍵を用いるKerberosの認証技術を前提としたが、本実施の形態は、他の認証システムにも適用可能である。例えば、Kerberosの認証技術における共通鍵を用いた処理の一部または全部に対し、公開鍵暗号方式を導入することが考えられる。
【図面の簡単な説明】
【0084】
【図1】本実施の形態にかかる画像処理装置のハードウエア構成例を示す図である。
【図2】本実施の形態にかかる画像処理装置の機能構成例を示す図である。
【図3】本実施の形態にかかる認証エージェントの機能構成例を示す図である。
【図4】第1のシステム形態における構成を示す図である。
【図5】第1のシステム形態における処理の流れを示すフローチャートである。
【図6】第2のシステム形態における構成を示す図である。
【図7】第2のシステム形態における処理の流れを示すフローチャートである。
【図8】第3のシステム形態における構成を示す図である。
【符号の説明】
【0085】
10 画像処理装置、12 コントローラボード、14 バス、16 CPU、18 ROM、20 RAM、22 NVRAM、24 HDD、26 画像処理部、28 UI_IF、30 UI、32 表示部、34 操作部、36 通信IF、38 LAN、40 Serial、42 USB、44 モデム、46 DeviceIF、48 読取装置部、49 印刷装置部、50 制御部、52 ユーザ認証要求部、54 ユーザログアウト通知部、56 送受信部、58 転送処理部、60 画像生成部、62 印刷部、70 認証エージェント、72 ユーザ情報登録部、74 ユーザ認証要求受信部、76 ユーザ認証要求部、78 TGT取得・記憶部、80 TGT更新・無効化部、82 通信要求受信部、84 サービスチケット要求部、86 反復要求部、88 送信データ生成部、90 送受信部、100 認証サーバ、110 文書サーバ、112 一時保管サーバ、120 PC。

【特許請求の範囲】
【請求項1】
認証サーバのクライアントAから、前記認証サーバのクライアントBとの通信要求を受信する通信要求受信手段と、
前記クライアントAから、前記クライアントBへ送信すべきデータを受信するデータ受信手段と、
前記認証サーバに対して、前記クライアントAについての認証要求を行う認証要求手段と、
前記認証サーバに対して、前記クライアントAと前記クライアントBの通信の可能化を要求する通信可能化要求手段と、
前記認証サーバから、前記クライアントBとの通信を可能にする可能化データを取得する可能化データ取得手段と、
前記可能化データ及び前記送信すべきデータに基づいて、前記クライアントBに送信する送信データを生成する生成手段と、
を備えることを特徴とする認証代行装置。
【請求項2】
請求項1に記載の認証代行装置において、
前記送信データを前記クライアントBに送信する送信手段を備えることを特徴とする認証代行装置。
【請求項3】
請求項1に記載の認証代行装置において、
前記送信データを前記クライアントAに送信する送信手段を備えることを特徴とする認証代行装置。
【請求項4】
請求項1に記載の認証代行装置において、
前記認証要求の結果、前記認証サーバの別クライアントと前記クライアントAとの通信の可能化を許可される権限を与える権限データを前記認証サーバから取得する権限データ取得手段と、
前記権限データを保持する保持手段と、
を備え、
前記通信可能化要求手段は、前記権限データに基づいて前記通信の可能化を要求することを特徴とする認証代行装置。
【請求項5】
請求項1に記載の認証代行装置において、
当該認証代行装置は、予め信頼関係が構築された外部装置と通信可能に設定され、
当該認証代行装置は、さらに、
前記可能化データ取得手段が前記可能化データを取得する前に、前記データ受信手段が前記送信すべきデータを受信した場合に、前記送信すべきデータを前記外部装置に送信して保管させる保管手段と、
前記可能化データ取得手段が前記可能化データを取得した後に、前記外部装置から前記送信すべきデータを再受信するデータ再受信手段と、
を備えることを特徴とする認証代行装置。
【請求項6】
請求項1乃至5のいずれか1項に記載の認証代行装置において、
クライアントAは、利用者の利用権限の下で処理を行う装置であり、
当該認証代行装置は、前記利用者の利用権限の下で前記クライアントBに対する通信についての処理を行うことを特徴とする認証代行装置。
【請求項7】
認証サーバのクライアントAから、前記認証サーバのクライアントBとの通信要求を受信する通信要求受信手段と、
前記クライアントAから、前記クライアントBへ送信すべきデータを受信するデータ受信手段と、
前記認証サーバに対して、前記クライアントAについての認証要求を行う認証要求手段と、
前記認証サーバに対して、前記クライアントAと前記クライアントBの通信の可能化を要求する通信可能化要求手段と、
前記認証サーバから、前記クライアントBとの通信を可能にする可能化データを取得する可能化データ取得手段と、
前記可能化データ及び前記送信すべきデータに基づいて、前記クライアントBに送信する送信データを生成する生成手段、
としてコンピュータを機能させることを特徴とする認証代行プログラム。
【請求項8】
認証サーバのクライアントAから、前記認証サーバのクライアントBとの通信要求を受信する通信要求受信手段と、
前記クライアントAから、前記クライアントBへ送信すべきデータを受信するデータ受信手段と、
前記認証サーバに対して、前記クライアントAについての認証要求を行う認証要求手段と、
前記認証サーバに対して、前記クライアントAと前記クライアントBの通信の可能化を要求する通信可能化要求手段と、
前記認証サーバから、前記クライアントBとの通信を可能にする可能化データを取得する可能化データ取得手段と、
前記可能化データ及び前記送信すべきデータに基づいて、前記クライアントBに送信する送信データを生成する生成手段と、
を備えることを特徴とする認証代行システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2008−117069(P2008−117069A)
【公開日】平成20年5月22日(2008.5.22)
【国際特許分類】
【出願番号】特願2006−298091(P2006−298091)
【出願日】平成18年11月1日(2006.11.1)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】