(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続されるクライアントからの要求に応じて処理を実行するサーバにおいて、
自サーバに対する遠隔操作呼び出しの実行が許可されている第１のクライアントにより実行された遠隔操作呼び出しの操作手順を示す情報を用いて、当該遠隔操作呼び出しの実行が制限されている第２のクライアントに対して許可する遠隔操作呼び出しの操作内容を示す操作情報を作成する操作情報作成手段と、
前記操作情報作成手段にて作成された前記操作情報を含むトークンを作成するトークン作成手段と、
前記第２のクライアントに配布された前記トークンを受信する受信手段と、
前記トークンの正当性を検証するトークン検証手段と、
前記トークンの正当性が確認された場合に当該トークンに含まれる操作情報にて示される操作を実行する処理実行手段と
を備えることを特徴とするサーバ。
【請求項２】
前記トークン作成手段は、前記遠隔操作呼び出しを許可する相手である前記第２のクライアントを特定するクライアント識別情報を前記トークンに記述することを特徴とする請求項１に記載のサーバ。
【請求項３】
前記トークンを送信したクライアントを認証するクライアント認証手段をさらに備え、
前記トークン検証手段は、前記クライアント認証手段による認証結果と前記トークン作成手段により前記トークンに記述された前記クライアント識別情報とに基づいて、当該トークンを送信したクライアントと当該トークンにより遠隔操作呼び出しが許可された前記第２のクライアントとが同一か否かを判断することを特徴とする請求項２に記載のサーバ。
【請求項４】
前記トークン作成手段は、作成したトークンに対してデジタル署名を施し、
前記トークン検証手段は、前記トークンに施されたデジタル署名に基づいて、前記トークンに対する改竄の有無を判断することを特徴とする請求項１に記載のサーバ。
【請求項５】
前記トークン作成手段は、作成したトークンを暗号化することを特徴とする請求項１に記載のサーバ。
【請求項６】
ネットワークに接続する情報処理装置において、
前記ネットワークを介して所定のサーバに接続する接続手段と、
前記サーバから前記情報処理装置に対して発行されたトークンであって、当該トークンによらなければ当該情報処理装置がアクセス権限を持たない資源へのアクセスを含む遠隔操作呼び出しの操作内容を示す操作情報として、当該サーバに対する遠隔操作呼び出しの実行が許可されているクライアントにより実行された遠隔操作呼び出しの操作手順を示す情報を記述したトークンを前記サーバに送信することにより、前記サーバにおいて当該トークンに記述された操作を実行させる遠隔操作呼び出し手段と
を備えたことを特徴とする情報処理装置。
【請求項７】
前記接続手段は、前記トークンが前記情報処理装置に対して発行されたことを確認するために用いられる情報を前記サーバに提供することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記接続手段は、前記トークンが前記情報処理装置に対して発行されたことを確認するために用いられる情報として、公開鍵基盤（ＰＫＩ）に則った認証に用いられる公開鍵を前記サーバに提供することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
データ処理を行うサーバと、ネットワークを介して当該サーバに接続するクライアントとを備え、当該クライアントから当該サーバへのアクセス要求に対する制御を行うアクセス制御システムにおいて、
前記サーバは、当該サーバに対する遠隔操作呼び出しの実行が許可されている第１のクライアントにより実行された遠隔操作呼び出しの操作手順を示す情報を用いて作成された、当該遠隔操作呼び出しの実行が制限されている第２のクライアントに対して許可する遠隔操作呼び出しの操作内容を示す操作情報と、当該第２のクライアントの識別情報とを記述したトークンを当該クライアントに対して発行し、
前記第２のクライアントは、前記サーバにて発行された前記トークンを前記サーバに対して送信することにより、前記サーバにおいて前記操作情報にて示される操作を実行させることを特徴とするアクセス制御システム。
【請求項１０】
前記サーバは、ＷＷＷ（World Wide Web）サーバであり、前記トークンをクッキーにて作成することを特徴とする請求項９に記載のアクセス制御システム。
【請求項１１】
第１の情報処理装置から第２の情報処理装置へのアクセスを制御するアクセス制御方法において、
前記第２の情報処理装置が、当該第２の情報処理装置に対する遠隔操作呼び出しの実行が許可されているクライアントにより実行された遠隔操作呼び出しの操作手順に基づいて、前記第１の情報処理装置に対して当該第２の情報処理装置が許可する遠隔操作呼び出しの操作内容を決定するステップと、
前記第２の情報処理装置が、前記操作内容を示す操作情報を記述したトークンを作成するステップと、
前記第２の情報処理装置が、作成された前記トークンを前記第１の情報処理装置に配布するステップと、
前記第２の情報処理装置が、前記第１の情報処理装置から送られた前記トークンに記述されている操作を実行するステップとを含むことを特徴とするアクセス制御方法。
【請求項１２】
前記第２の情報処理装置が、前記トークンが前記第１の情報処理装置を対象として作成されたことを検証するステップをさらに含み、
前記トークンを作成するステップは、当該トークンに前記第１の情報処理装置の認証情報を記述するステップを含み、
前記トークンの対象が前記第１の情報処理装置を対象として作成されたことを検証するステップは、前記第１の情報処理装置が前記第２の情報処理装置に対して前記トークンを送る際に当該第２の情報処理装置が行う認証により得られる認証情報と、前記トークンに記述された認証情報とを比較するステップを含むことを特徴とする請求項１１に記載のアクセス制御方法。
【請求項１３】
前記第２の情報処理装置が、前記トークンの正当性を検証するステップをさらに含み、
前記トークンを作成するステップは、前記トークンに対してデジタル署名を施すステップを含み、
前記トークンの正当性を検証するステップは、前記第１の情報処理装置から受信したトークンに施されているデジタル署名を調べるステップを含むことを特徴とする請求項１１に記載のアクセス制御方法。
【請求項１４】
前記第２の情報処理装置が、前記トークンの正当性を検証するステップをさらに含み、
前記トークンを作成するステップは、前記トークンを暗号化するステップを含み、
前記トークンの正当性を検証するステップは、前記第１の情報処理装置から受信したトークンの復号結果を調べるステップを含むことを特徴とする請求項１１に記載のアクセス制御方法。
【請求項１５】
コンピュータを制御して、ネットワークを介して接続される情報処理装置からの要求に応じて処理を実行するプログラムにおいて、
遠隔操作呼び出しの実行が許可されているクライアントにより実行された遠隔操作呼び出しの操作手順を示す情報を用いて作成された操作情報であって、前記情報処理装置に対して許可する遠隔操作呼び出しの操作内容を示す操作情報を記述したトークンを作成する処理と、
前記情報処理装置から前記トークンが送られた場合に当該トークンの正当性を検証する処理と、
正当性が確認された前記トークンに記述された前記操作情報にて示される操作と
を前記コンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワーク環境におけるアクセス制御システムに関し、特にサーバにアクセスするクライアントが不特定多数であるようなネットワーク環境に適するアクセス制御システムに関する。
【０００２】
【従来の技術】
近年、ネットワーク環境の普及に伴って、ネットワークに接続された複数台のコンピュータ間において、遠隔地から手続き呼び出しを行うことが可能となっている。
遠隔地からの手続き呼び出しを安全（secure）に実行する方式として、例えばＵＮＩＸの分散環境システムで用いられるＲＰＣ（Remote Procedure Call）認証方式や、ｒ系コマンド（rlogin（remote login）、rsh（remote shell）など）を安全に実行するために用いられるＳＳＨ（Secure Shell）方式がある。
これらは、いずれの方式も公開鍵を利用して共通鍵を共有した後、相手の認証を実施するフェーズを経て、最後に暗号化通信路を確立する。そして、サーバ上で与えられているクライアントの権限によって実行可能なプログラムやプロシージャが制限される。また、その実行がより高い権限の必要な資源へのアクセスを引き起こす場合には、それらの呼び出し自体も制限されることとなる。
【０００３】
これらの権限による制限は、サーバ側において、クライアントやそのクライアントが属するグループ単位で、プログラムやプロシージャを含む資源へのアクセスを制限するための管理データを介在させることによって実現されている。
かかるシステムでは、通常、クライアントはサーバに事前に登録され（匿名アクセスとしての登録を含む）、どのクライアントにどのような権限が与えられているかを管理するクライアント権限管理データと、サーバが保有する資源をこのクライアント権限管理データで保有する権限区分にて区別した資源アクセス制御管理データがサーバに存在する。
【０００４】
しかし、上述した資源へのアクセス制御方法は、そのクライアント数がサーバの見込む数に比べて非常に多くなると、サーバ側の管理コストが問題になってくる。
例えば、アドホック無線通信で接続するサーバの場合、サーバ自身が移動することによって不特定多数のクライアントが接続することが多くなる。また、インターネットなどに設けられるＷＷＷ（World Wide Web：以下、単にウェブと表記する）サーバも膨大な不特定多数のクライアントと接続する可能性が高い。
このようなネットワークシステムでは、サーバにアクセスしたクライアントが、その後に再びアクセスしてくるのか不明である場合も多い。そして、サーバにおいては、二度とアクセスがないクライアントのアカウント管理データとそれに対応する許可された資源へのアクセス制御管理データとを保持し続ける場合も生じ得る。
したがって、このような不特定多数のクライアントと接続し得るサーバでは、それぞれのクライアントに特定の遠隔操作呼び出しを公開しようとすると、これらの管理データの管理効率が著しく低下することとなる。
【０００５】
ところで、ウェブサーバでは非常に多数のクライアントとの接続が想定されるため、クッキー（Cookie）を利用してクライアント毎にサーバ側の資源アクセス制御に類する操作を行うことが可能である。
しかし、本来、クッキーはクライアントを特定せずに匿名性を維持する効果を期待されて利用されているため、クライアント認証に基づいてクッキー内の情報の完全性を検証し、その検証されたクッキーの情報によってサーバ側の資源へのアクセス制御をするような使い方は現行のウェブサーバでは一般的ではない。
【０００６】
サーバにおける資源アクセス制御の管理コストを分散させるようなクッキーの使用方法についての従来技術としては、特開平１０−２５７０４８号公報や特開２０００−７６１９２号公報に開示された技術がある。
これらの公報に記載された技術は、いずれもクライアント認証後にその認証の事実を記録するために当該クライアントのクッキーを利用するものである。すなわち、クライアント認証を行った後、当該クライアントが他のサーバへログインする際に、この認証情報を記録したクッキーを再利用することにより、クライアントが何度もログインする手間を省くことができる。
【０００７】
また、不特定のクライアントと接続し得るサーバにおける接続管理コストを削減する従来技術としては、例えば特開２０００−２８６８４０号公報に開示された技術がある。
同公報には、公開鍵を用いてクライアントの認証を行うことにより、クライアントの管理がサーバに集中することを回避する技術が記載されている。
【０００８】
さらに、Richard Au等による次の文献
"Cross-Domain One-Shot Authorization using Smart Cards", ACM CCS'00, Athens, Greece
には、まずクライアントに対して情報アクセス管理用の承認権限を含んだトークン（Authorization Token）を渡し、その後の当該クライアントからの情報アクセスの際に当該トークンを利用するという考え方が示されている。
同文献に記載された技術は、情報アクセスにおける承認権限の管理コストを、アプリケーションサーバ及びそれら複数のアプリケーションサーバへアクセスするクライアントを一括管理する認証・承認サーバからクライアントに移動分散させる。これにより、この情報アクセスにおける承認権限の管理に関わる当該サーバ群側のボトルネットを回避する。
【０００９】
【発明が解決しようとする課題】
上述したように、現行のクライアント／サーバシステムでは、通常、サーバ側が保有管理する資源へのクライアントからのアクセスに対し、クライアントの認証、アクセス権限の有無とその範囲などの調査をサーバ側で行い、適正なクライアントからの適正な資源アクセス要求のみにサービスを行うことによって不当なアクセスを防いでいる。
しかし、不特定多数のクライアントが接続し得るサーバでは、上記のようなアクセス制御における管理をサーバに依存するシステムは、サーバにおける管理コストを増大し、サーバに多大な負担を課することとなっていた。
【００１０】
ここで、この種のネットワークシステムにおけるアクセス制御では、クライアントに与えられているアクセス権限についての認証管理と、クライアントのアクセス権限に基づくサーバ保有の資源へのアクセスの可否についてのアクセス管理とが行われている。したがって、管理コストの分散によりアクセス制御の効率化を図るには、サーバにおけるこれら２種類の管理コストを減少させることが望ましい。
【００１１】
クッキーを利用してアクセス制御の管理コストを分散させる従来技術である特開平１０−２５７０４８号公報及び特開２０００−７６１９２号公報や、公開鍵を用いてクライアントの認証を行うことによりサーバの管理コストを低減させる従来技術である特開２０００−２８６８４０号公報は、サーバにおけるクライアント認証に要する管理、すなわち上述した認証管理に対する管理コストを削減することができる。
しかしながら、サーバ保有の資源へのアクセス管理に対する管理コストを削減することはできない。
【００１２】
また、上記文献 "Cross-Domain One-Shot Authorization using Smart Cards"に開示された従来技術は、情報アクセス管理用の承認権限を含んだトークンを用いて情報アクセスにおける承認権限の管理コストをクライアントに分散させるものの、このトークンにはサーバ側のアクセス対象である情報を直接指す情報が含まれていない。すなわち、トークン内で示される承認情報をアプリケーションサーバの情報管理データとすり合わせ、当該トークン内の承認情報が最終的にどの情報にアクセス可能か判断するプロセスが、当該アプリケーションサーバ内に存在することを前提としている。
したがって、クライアントからのアクセス要求時において、アプリケーションサーバ側で保有する資源へのアクセス管理に対する管理コストが削減されるわけではない。
【００１３】
そこで、本発明は、遠隔操作呼び出しにおけるアクセス制御において、クライアントのアクセス権限の認証管理における管理コストと、資源へのアクセス管理における管理コストとを共にクライアントへ分散し、サーバにおける管理コストを低減することを目的とする。
【００１４】
【課題を解決するための手段】
上記の目的を達成するため、本発明は次のように構成されたサーバを提供する。すなわち、ネットワークを介して接続されるクライアントからの要求に応じて処理を実行するサーバにおいて、クライアントに対して許可する遠隔操作呼び出しに対応する操作情報を作成する操作情報作成手段と、この操作情報作成手段にて作成された操作情報を含むトークンを作成するトークン作成手段とを備え、このトークン作成手段にて作成されたトークンをこのクライアントに配布することにより、このトークンに記述された操作情報に対応する遠隔操作呼び出しをこのクライアントに対して許可することを特徴とする。
【００１５】
ここで、このトークン作成手段は、遠隔操作呼び出しを許可する相手であるクライアントを特定するクライアント識別情報をこのトークンに記述することができる。そしてさらに、作成したトークンに対してデジタル署名を施し、あるいは作成したトークンを暗号化することにより、このトークンに対する改竄を防止することができる。
また、この操作情報作成手段は、サーバに対して所定の遠隔操作呼び出しを行う権限を有する所定のクライアントとの相互作用を経て操作情報を作成する構成とすることができる。すなわち、この所定のクライアントがサーバに対して行った操作の内容に基づいて操作情報を作成し、トークンに記述することができる。
【００１６】
また、本発明によるサーバは、上記の構成の他に、次のように構成することができる。すなわち、所定のクライアントに対して許可された遠隔操作呼び出しに対応する操作情報を記述したトークンを受信する受信手段と、このトークンの正当性を検証するトークン検証手段と、このトークンの正当性が確認された場合にこのトークンに記述された操作情報に基づく処理を実行する処理実行手段とを備えることを特徴とする。
【００１７】
ここで、このサーバは、さらにこのトークンを送信したクライアントを認証するクライアント認証手段を備える構成とすることができる。この場合、このトークン検証手段は、クライアント認証手段による認証結果に基づいて、このトークンに記述された操作情報に対応する遠隔操作呼び出しが許可されたクライアントとこのトークンを送信したクライアントとが同一か否かを判断する。
また、このサーバにおけるトークン検証手段は、このトークンに施されたデジタル署名に基づいて、トークンに対する改竄の有無を判断することができる。
【００１８】
さらにまた、本発明は、ネットワークを介して接続されるクライアントからの要求に応じて処理を実行するサーバにおいて、このクライアントに対して許可する遠隔操作呼び出しに対応する操作情報を含むデータセットを作成するデータセット作成手段と、このデータセットを発行されたクライアントからこのデータセットが送られた場合にこのデータセットの正当性を検証する検証手段と、このデータセットの正当性が確認された場合にこのデータセットに記述された操作情報に基づく処理を実行する処理実行手段とを備えることを特徴とする。
【００１９】
ここで、このデータセット作成手段は、クライアントの認証情報をこのデータセットに記述し、この検証手段は、クライアントがこのデータセットを送信するために行った認証において得られた認証情報とこのデータセットに記述された認証情報とを比較する。これにより、データセットを送信したクライアントが確かにこのデータセットの発行対象であるかどうかを確認することができる。
【００２０】
また、本発明は、次のように構成された情報処理装置を提供することができる。すなわち、ネットワークに接続する情報処理装置において、このネットワークを介して所定のサーバに接続する接続手段と、自装置がアクセス権限を持たないこのサーバの資源へのアクセスを含む操作内容を記述したトークンをこのサーバに送信することにより、このサーバに対してこのトークンに記述された操作内容を実行させる遠隔操作呼び出し手段とを備えたことを特徴とする。
【００２１】
ここで、この接続手段は、このトークンが自装置に対して発行されたことを確認するために用いられる情報をサーバに提供する。かかる情報としては、公開鍵基盤（ＰＫＩ）に則った認証に用いられる公開鍵を用いることができる。
【００２２】
さらに、本発明は、データ処理を行うサーバと、ネットワークを介してこのサーバに接続するクライアントとを備え、クライアントからサーバへのアクセス要求に対する制御を行うアクセス制御システムにおいて、サーバは、クライアントの識別情報とこのクライアントに対して許可する遠隔操作呼び出しに対応する操作情報とを記述したトークンをこのクライアントに対して発行し、このクライアントは、このサーバにて発行されたトークンをこのサーバに対して送信することによりこのトークンに記述された操作情報に対応する遠隔操作呼び出しを行うことを特徴とする。
【００２３】
ここで、このアクセス制御システムは、サーバに対して所定の遠隔操作呼び出しを行う権限を有する他のクライアントを構成要素としてさらに備え、サーバは、この他のクライアントが行った遠隔操作呼び出し操作に基づいてトークンに記述する操作情報を決定する構成とすることができる。
【００２４】
また、以上のサーバがＷＷＷ（World Wide Web）サーバである場合には、上述したトークンまたはデータセットをクッキーにて作成することができる。
さらに、本発明は、コンピュータを制御して上述したサーバの機能を実現するプログラムとすることができる。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記憶装置に格納して配布したり、ネットワークに接続されたプログラム伝送装置の記憶装置に格納し、このネットワークを介して配信したりすることにより提供することができる。
【００２５】
さらに本発明は、第１の情報処理装置から第２の情報処理装置へのアクセスを制御するアクセス制御方法において、第１の情報処理装置に対して第２の情報処理装置が許可する操作内容を決定するステップと、この操作内容を記述したトークンを作成するステップと、作成されたトークンを第１の情報処理装置に配布するステップと、第２の情報処理装置が第１の情報処理装置から送られたトークンに基づいて処理を実行するステップとを含むことを特徴とする。
【００２６】
ここで、このアクセス制御方法は、トークンが第１の情報処理装置を対象として作成されたことを検証するステップをさらに含む構成とすることができる。この場合、上述したトークンを作成するステップは、このトークンに第１の情報処理装置の認証情報を記述するステップを含み、このトークンの対象が第１の情報処理装置を対象として作成されたことを検証するステップは、第１の情報処理装置が第２の情報処理装置に対してトークンを送る際に行う認証により得られる認証情報とこのトークンに記述された認証情報とを比較するステップを含む。
【００２７】
さらに、このアクセス制御方法は、トークンの正当性を検証するステップをさらに含む構成とすることができる。この場合、上述したトークンを作成するステップは、このトークンに対してデジタル署名を施すステップを含み、このトークンの正当性を検証するステップは、第１の情報処理装置から受信したトークンに施されているデジタル署名を調べるステップを含む。
あるいは、上述したトークンを作成するステップは、トークンを暗号化するステップを含み、このトークンの正当性を検証するステップは、第１の情報処理装置から受信したトークンの復号結果を調べるステップを含む構成とすることもできる。
【００２８】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいて、この発明を詳細に説明する。
図１は、本実施の形態によるアクセス制御を実現するネットワークシステムの全体構成を説明する図である。
図１を参照すると、本実施の形態のネットワークシステムは、クライアント１０、２０とサーバ３０とがネットワーク４０を介して接続されている。
【００２９】
クライアント１０、２０及びサーバ３０は、パーソナルコンピュータやワークステーションなどのコンピュータ装置、ネットワーク４０への接続機能を備えたＰＤＡや携帯電話、その他の情報処理端末にて実現される。なお、本実施の形態では、遠隔操作呼び出しを行う装置をクライアント１０、２０とし、遠隔操作呼び出しにて操作される装置をサーバ３０としている。
図１において、クライアント１０とサーバ３０とは信頼関係にある。すなわち、クライアント１０は、サーバ３０に対して可能な全ての遠隔操作呼び出しを実行することができる。一方、クライアント２０は、サーバ３０と信頼関係にはなく、アクセス権限を有していないか、または限定されたアクセス権限しか有していない。
【００３０】
ネットワーク４０は、有線、無線を問わず、インターネットやイントラネットなどの各種ＷＡＮ（Wide Area Network）やＬＡＮ（Local Area Network）、アドホック無線通信ネットワークなどを用いることができる。
また、図１には、２台のクライアント１０、２０及び１台のサーバ３０が記載されているが、図示の台数に限らないことは言うまでもない。
【００３１】
本実施の形態において、クライアント１０は、ネットワーク４０を介してサーバ３０に接続し、遠隔操作呼び出しを行う。また、クライアント２０との間でクライアント間通信を行いクライアント２０からその識別情報を取得する。このクライアント間通信はＰｅｅｒ−ｔｏ−ｐｅｅｒ通信が行えるものなら何でも良く、例えばＯＢＥＸ（Object Exchange）プロトコルなどによるアプリケーションレベルでの簡易的なデータ交換方式などがある。また、クライアント１０は、サーバ３０に対して、クライアント２０にサーバ３０への限定されたアクセスを認めるためのデータセットであるトークン（以下、セキュアトークンと称す）の発行を要求し、サーバ３０から受け取ったセキュアトークンをクライアント２０に渡す。
クライアント２０は、上述したように、サーバ３０に対してアクセス権限を持たないが、クライアント１０から受け取ったセキュアトークンを用いた遠隔操作呼び出しを実施することによって、限定されたアクセスが可能となる。
なお、セキュアトークンの詳細については後述する。
【００３２】
サーバ３０は、クライアント１０からの遠隔操作呼び出しに応じて種々の処理を実行する他、クライアント１０からの要求に応じてセキュアトークンを発行しクライアント１０に送付する。詳しくは後述するが、セキュアトークンには、実行が許可される遠隔操作呼び出しを特定する操作情報と当該遠隔操作呼び出しを行うクライアント２０の識別情報が記述されている。そして、この識別情報にて特定されるクライアント２０から、このセキュアトークンを用いてアクセスが行われた場合に、サーバ３０は、このセキュアトークンに記述された操作情報による遠隔操作呼び出しを受け付け、処理を実行する。
【００３３】
図２は、サーバ３０の構成を示す図である。
図２を参照すると、本実施の形態によるアクセス制御を実現するサーバ３０は、サーバ３０への接続を要求するクライアント１０、２０との間で相互認証を行うクライアント認証部３１と、クライアント２０に対して許可する遠隔操作呼び出しのための操作情報を作成する操作情報作成部３２と、セキュアトークンを作成するセキュアトークン作成部３３と、クライアント２０から送られたセキュアトークンを検証するセキュアトークン検証部３４と、遠隔操作呼び出しによる処理を実行する遠隔操作処理実行部３５とを備える。
サーバ３０が備えるこれらの構成要素は、サーバ３０を実現する情報処理端末においてプログラム制御されたＣＰＵにて実現される仮想的なソフトウェアブロックである。ＣＰＵを制御するプログラムは、ＣＤ−ＲＯＭやフロッピーディスクなどの記憶媒体に格納して配布したり、ネットワークを介して伝送したりすることにより提供することができる。
【００３４】
上記構成において、クライアント認証部３１は、サーバ３０への接続を要求するクライアント１０、２０に対する認証を行う。認証方法としては、例えばＰＫＩ（Public Key Infrastructure：公開鍵基盤）に則った相互認証を行うことができる。ＰＫＩに則った相互認証（例えばＳＳＬによる認証）を利用することにより、セキュアトークンを不法に取得した悪意の第三者がこのセキュアトークンを利用してサーバ３０内の資源へのアクセスを試みたとしても、このセキュアトークンを正規に配布されたクライアント２０の秘密鍵を知らない限り、接続時の認証ステージにおいて確実に排除することができる。また、悪意を持つクライアント２０が不正な公開鍵と秘密鍵の組み合わせを使って（成り済まして）クライアント１０に不正なセキュアトークンの作成依頼をさせたとしても、クライアント２０からサーバ３０への接続時の認証ステージで送付される公開鍵を含んだデジタル証明書が正規のＣＡ（Certification Authority）による発行でないことから、そのような悪意の試みも確実に排除される。この点で、本実施の形態におけるセキュリティーに関する強度は、現行のＰＫＩで達成されているものと同等である。
【００３５】
操作情報作成部３２は、クライアント２０に対して許可する限定された遠隔操作呼び出しを特定するための操作情報を作成する。操作情報は、例えば、クライアント１０との相互作用を経ることにより作成できる。すなわち、クライアント１０がサーバ３０に対して行った遠隔操作呼び出しをトレースし、かかる操作の内容（手順）を操作情報とする。具体的には、例えばサーバ３０に設けられたデータベースにおける特定のデータへのアクセスをクライアント２０に対して許可する場合、クライアント１０により実際に当該データへのアクセスを行うことによって、かかるアクセス操作の操作情報を決定することができる。
【００３６】
セキュアトークン作成部３３は、操作情報作成部３２にて作成された操作情報と、クライアント２０の識別情報である認証情報とを用いて、クライアント２０に配布するセキュアトークンを作成する。詳しくは後述するが、クライアント２０の認証情報はクライアント１０から受け取ることができる。また、セキュアトークン作成部３３は、セキュアトークンの正当性を保証するため（すなわち改竄等を防止するため）、作成されたセキュアトークンに所定の加工を行うことができる。例えば、サーバ３０のデジタル署名などの検証データを付したり、セキュアトークン自体を暗号化したりすることができる。
図４は、セキュアトークンの書式を例示する図である。
図４を参照すると、セキュアトークン５０には、クライアント２０の認証情報５１と、操作情報作成部３２にて作成された操作情報５２とが記述されている。クライアント２０の認証情報は、例えばＰＫＩに則った相互認証に用いられる公開鍵とすることができる。また、図４に示すセキュアトークン５０にはデジタル署名５３（図ではサーバ署名と表記）がなされている。
操作情報５２には、サーバ３０が保有する資源に対する直接的な操作の他、サーバ３０が操作可能な外部資源（ネットワーク接続された他のサーバ等）への操作を記述することもできる。
【００３７】
セキュアトークン検証部３４は、クライアント２０から送られたセキュアトークン５０の正当性を検証する。ここでは、セキュアトークン５０自体の正当性の検証と、セキュアトークン５０を送信したクライアント２０の正当性の検証とを行う。
セキュアトークン５０自体の正当性の検証は、当該セキュアトークン５０が改竄されていないかどうかを判断することにより行う。図４に示したように、セキュアトークン５０にデジタル署名５３が施されていれば、これを調べることにより、セキュアトークン５０の正当性を確認できる。また、セキュアトークン５０が暗号化されている場合は、これを復号化して得られたセキュアトークン５０を調べることにより、その正当性を確認できる。
セキュアトークン５０を送信したクライアント２０の正当性の検証は、クライアント２０がセキュアトークン５０をサーバ３０に対して送信するために行った認証に用いられた認証情報と、セキュアトークン５０に記述された認証情報５１とを比較することにより行われる。したがって、セキュアトークン５０を作成するためにクライアント１０から受け取るクライアント２０の認証情報と、クライアント認証部３１で得られる認証情報とは、同形式または互いの正当性を確認できる形式であることが必要である。
【００３８】
遠隔操作処理実行部３５は、クライアント１０からの遠隔操作呼び出し、またはクライアント２０から送られたセキュアトークン５０に記述された操作情報５２に基づく遠隔操作呼び出しを実行する。操作の内容によっては、実行結果がサーバ３０からクライアント１０、２０へ返送される。例えば、サーバ３０に設けられたデータベースへのデータ検索要求がセキュアトークン５０に基づいて行われた場合、検索結果がサーバ３０からクライアント２０へ返されることとなる。また、サーバ３０が、外部の装置に対してアクセスし所定の操作を行う機能を持っている場合は、セキュアトークン５０における操作情報５２の記述にしたがって当該外部装置の操作を行うこともできる。
【００３９】
図３は、本実施の形態によるアクセス制御方法を説明する図である。
図３を参照すると、本実施の形態のアクセス制御方法は、遠隔操作呼び出しによる操作の特定（第１フェーズ）、セキュアトークンの作成（第２フェーズ）、セキュアトークンの公開（第３フェーズ）、セキュアトークンを用いたアクセス（第４フェーズ）という４つのフェーズからなる。
【００４０】
第１フェーズでは、まず、クライアント１０とクライアント２０との間で相互認証が行われ、続いて、クライアント２０に対して公開する遠隔操作呼び出しのための操作情報が決定される。クライアント１０、２０間の相互認証は、上述したように、クライアント２０とサーバ３０との間の相互認証と同形式であることが望ましく、例えばＰＫＩに則った相互認証とすることができる。また、遠隔操作呼び出しの操作情報は、上述したように、例えばクライアント１０が実際に当該操作を実行することにより決定することができる。
【００４１】
第２フェーズでは、クライアント１０からの要求に応じて、サーバ３０によりセキュアトークンが作成される。図４に示したように、セキュアトークン５０には、第１フェーズで得られた、クライアント２０の認証情報５１と、クライアント２０に公開する遠隔操作呼び出しのための操作情報５２とが記述される。第１フェーズにおいて、クライアント１０、２０間の相互認証としてＰＫＩに則った相互認証を行った場合、認証情報５１はクライアント２０の公開鍵とすることができる。
【００４２】
第３フェーズでは、サーバ３０により作成されたセキュアトークン５０がクライアント２０に渡される。セキュアトークン５０は、一度サーバ３０からクライアント１０に送った後にクライアント１０からクライアント２０に送るようにしても良いし、サーバ３０からクライアント２０に直接送っても良い。このセキュアトークン５０をクライアント２０が取得することにより、当該セキュアトークン５０に記述された操作情報５２に基づく遠隔操作呼び出しが、クライアント２０に公開されることとなる。
【００４３】
第４フェーズでは、クライアント２０により、セキュアトークン５０を用いたサーバ３０へのアクセスが行われる。具体的には、まず、クライアント２０とサーバ３０との間で相互認証が行われ、続いて、クライアント２０からサーバ３０へセキュアトークン５０が送られる。
サーバ３０では、まず、セキュアトークン５０に施されたデジタル署名５３などの加工に基づいて、セキュアトークン５０自体の正当性が確認される。これによって、当該セキュアトークン５０に対する改竄等の有無を判断することができる。
そしてさらに、当該セキュアトークン５０に記述されているクライアント２０の認証情報５１と、先に相互認証を行うことにより得られたクライアント２０の認証情報とが比較される。この２つの認証情報が等しければ、当該セキュアトークン５０が、その発行先であるクライアント２０から送られたことを確認することができる。したがって、当該セキュアトークン５０が、クライアント２０から他のクライアントに渡され、当該他のクライアントから送られた場合、この認証情報が異なるので、正当なアクセスではないと判断することができる。言い換えれば、この認証情報の確認により、当該セキュアトークン５０に記述された操作情報５２がクライアント２０にのみ公開されたものであることを保証することができる。
これらの検証の後、サーバ３０により、セキュアトークン５０に記述された操作情報５２に基づく操作が実行される。上述したように、操作の内容によっては、実行結果がサーバ３０からクライアント２０へ返送される。
【００４４】
以上のように、本実施の形態によるアクセス制御では、サーバ３０は、すでに承認されている操作情報５２による遠隔操作呼び出しを実行するだけである。すなわち、セキュアトークン５０の正当性が確認されれば、その時点でクライアント２０が要求してきた遠隔操作呼び出しの実行やそれによって得られる情報等が当該クライアント２０に許可されているか否かを調査することは不要である。したがって、その調査のためのクライアント２０に対する管理データを保持することも不要となる。言い換えれば、本実施の形態は、クライアント２０からの資源アクセス要求の管理を、当該クライアント２０から送られたセキュアトークン５０内の情報のみによって行う。
【００４５】
このようなアクセス制御方法は、資源を公開する相手が特定できず、相手との相互作用が開始されて初めてどのような資源を相手に与えるかを判断することが必要な形態のアクセス制御に適している。
予め特定の相手またはグループを想定して、それらのクライアントに対してどのような資源を公開するかがわかっている場合、例えば、所定のクライアントがサーバに対して頻繁にアクセスする場合は、当該クライアントの役割などに関連する資源へのアクセス（実行）を一括して許可した方が、管理上効率が良い。しかし、そのクライアントが当該サーバに再度アクセスする可能性があるのか不明な状況では、当該クライアントのために頻繁にアクセスするクライアントと同じ管理方法を採用するのは、管理コストが増大するため好ましくない。また、かかる状況では、当該クライアントに対して公開すべき資源が広範囲にわたることは稀であり、一般には非常に限定された範囲で済む場合が多い。サーバにアクセスするクライアントが不特定多数の場合は、この傾向はさらに顕著である。
したがって、このような状況では、本実施の形態によるアクセス制御を用いることが合理的であると言える。
【００４６】
次に、本実施の形態をデータベースに対するデータ検索要求のアクセス制御に用いた例について具体的に説明する。
図５は、携帯型の情報処理端末を用いたアドホック無線通信ネットワーク環境において本実施の形態を適用した構成を説明する図である。
図５に示すネットワーク環境には、ＰＤＡ（Personal Digital Assistant）５１０、５２０と、ノートブック型パーソナルコンピュータ５３０（以下、ノートＰＣ５３０と略記する）とが存在し、アドホック無線通信にて情報のやりとりを行う。
また図５において、ＰＤＡ５１０は図１に示したクライアント１０に対応し、ＰＤＡ５２０はクライアント２０に対応し、ノートＰＣ５３０はサーバ３０に対応する。すなわち、ＰＤＡ５１０とノートＰＣ５３０とは同じパーソナルドメイン内に存在し、信頼関係にある。またＰＤＡ５２０は、ノートＰＣ５３０と信頼関係になく、本実施の形態によるセキュアトークン５０に基づくアクセス以外でノートＰＣ５３０のデータベースにアクセスすることはできない。
【００４７】
ここで、本適用例におけるＰＤＡ５１０、５２０とノートＰＣ５３０とは、ウェブベースで情報のやりとりを行う。したがって、この観点から、ノートＰＣ５３０はウェブサーバであり、ＰＤＡ５１０、５２０はノートＰＣ５３０への接続手段であるウェブブラウザ５１１、５２１を有する。また、本適用例における動作の観点からは、ノートＰＣ５３０はデータベースサーバであり、ＰＤＡ５１０、５２０は、ノートＰＣ５３０のデータベースに対してアクセス要求を行う。
図６は、かかるＰＤＡ５１０、５２０とノートＰＣ５３０との情報通信における関係を示す図である。
図６を参照すると、ノートＰＣ５３０は、ウェブ上でのサービスを行うためのウェブサーバサービス５３１と、ＣＧＩ（Common Gateway Interface）５３２と、データベース５３３とを備える。そして、ＰＤＡ５１０、５２０に備えられたウェブブラウザ５１１、５２１からノートＰＣ５３０に対してＨＴＴＰ要求が送信されると、ウェブサーバサービス５３１がこのＨＴＴＰ要求を受け付け、ＣＧＩ５３２を介してデータベース５３３に対してデータ検索を行う。得られた検索結果は、ウェブサーバサービス５３１からＰＤＡ５１０、５２０へ送信される。これにより、ＰＤＡ５１０、５２０のユーザは、ウェブブラウザ５１１、５２１を介してデータ検索の結果を閲覧することができる。
【００４８】
図７は、ノートＰＣ５３０のデータベース５３３の構成を説明する図である。
本適用例におけるデータベース５３３は、複数の情報カテゴリに対応してデータ検索を行うものとする。したがって、図７を参照すると、データベース５３３は、統合情報検索部７１０と、統合情報検索部７１０によって管理されるアプリケーション群とを備える。
統合情報検索部７１０は、ＰＤＡ５１０、５２０から送られるＨＴＴＰ要求における検索条件（Query）を、その多様なアクセスインターフェースを持つ配下の情報カテゴリに応じて包括的に処理する。ここでは、統合情報検索部７１０の配下の情報カテゴリとして、メール、スケジュール、アドレス帳などの個人情報（以下、ＰＩＭ（Personal Information Manager）情報と称す）、専用データベースで扱われるデータ、専用の書式を持った文書データやＰＤＦ（Portable Document Format）文書やプレーンテキストなどの各種文書データが含まれるものとする。
したがって、図７に示す例では、統合情報検索部７１０に管理されるアプリケーション群として、ＰＩＭ情報を処理するＰＩＭアプリケーション７２１、専用データベース７２２、文書データを扱う文書編集アプリケーション７２３が記載されている。ただし、これらのアプリケーション群は例示に過ぎず、本実施の形態によるアクセス制御が利用されるネットワーク環境によっては、これらに加え、またはこれらに代えて、画像データや音声データなどを扱うアプリケーションを用意することもできる。
【００４９】
ここで、専用データベース７２２には、別途にネットワークアクセスされる外部データベースや、イントラネット用の専用データベースが含まれる。また、文書編集アプリケーション７２３には、ワードプロセッサや表計算ソフトなどが含まれる。
さらに、図７に示すように、統合情報検索部７１０とＰＩＭアプリケーション７２１、専用データベース７２２、文書編集アプリケーション７２３との間には、統合情報検索部７１０がこれらの情報カテゴリに対して一律にアクセスできるように、Ｗｒａｐｐｅｒと呼ばれるアクセスインターフェイス変換レイヤが装備されている。これによって、呼び出すエントリ名や呼び出し手順の違いを吸収することができる。例えば、過去２日間にアクセスした上記情報カテゴリの情報のうち、特定のキーワードを含む情報の検索をＰＤＡ５１０からノートＰＣ５３０へ指示すると、その条件を満たす各情報カテゴリの情報が検索され、ＰＤＡ５１０のスクリーンに表示される。簡単化のために、それらの情報は全てプレーンテキストに変換されていても良いし、可能ならそれぞれオリジナルの文書形式を保持しつつ、ＰＤＡ５１０の機能によりそれらの文書形式を表現しても良い。
【００５０】
以上のように構成されたネットワーク環境において、ＰＤＡ５２０に対するアクセス制御を行う場合の具体的な動作を説明する。
前提として、図５に示したＰＤＡ５１０、５２０、ノートＰＣ５３０のうち、一人のユーザ（ユーザＡ）がＰＤＡ５１０及びノートＰＣ５３０を保有し、別の一人のユーザ（ユーザＢ）がＰＤＡ５２０を保有するものとする。ＰＤＡ５１０とノートＰＣ５３０とは信頼関係があるので、予め無線暗号化通信路で結ばれている。
ノートＰＣ５３０は、鞄に収納され、省電力モードのサスペンド状態となっており、ＰＤＡ５１０からの無線信号で必要に応じて起動（Wake up）し、アクセスすることができる。
【００５１】
さて、ユーザＡとユーザＢとが出会うなどしてお互いの間の距離が短くなり、近距離無線通信によるアドホックネットワークを介して交信可能になったとする。すると、まずＰＤＡ５１０、５２０間でクライアント間通信が行われ、互いの識別情報が交換され相手が特定される。なお、ここで悪意のＰＤＡ５２０が偽りの識別情報をＰＤＡ５１０に送付して任意の善良な第三者に成り済ましたとしても、すでに述べたようにＰＫＩの仕組みによって以降のサーバ接続時にＰＤＡ５２０は排除される仕組みが用意されている。
続いて、ユーザＡが、ユーザＢの要求を受け、ユーザＢに提供できる情報（そのような要求を満足する情報）を、ＰＤＡ５１０からノートＰＣ５３０をアクセスすることによって検索する。これは、ＰＤＡ５１０からノートＰＣ５３０への遠隔操作呼び出しとなる。ユーザＡは、検索条件や検索すべきカテゴリ毎に異なる呼び出し方を勘案して、ＰＤＡ５１０の表示スクリーン上で得られる情報に対して条件を変えながら所望の情報を絞り込む。この操作は、図３に示した第１フェーズに該当する。なお、ここでは、以下に列挙するようなカテゴリ毎に必要な条件が入力され、それらの条件がまとめられてノートＰＣ５３０へ送られるものとする。
・作成日時
・最終アクセス日時
・作成者／送信者
・タイトル名／ファイル名
・関連アプリケーションカテゴリタイプ
・重要度
・未読既読
・サイズ
・目標納期
・情報のタイトルやファイル名またはその本体に含まれるキーワード
・情報の位置（ページ、段落、行単位）
【００５２】
ＰＤＡ５１０においてウェブブラウザ５１１が動作し、ノートＰＣ５３０のウェブサーバから送られる条件入力フォームに上記の必要な入力がなされると、その内容がＨＴＴＰのＰＯＳＴコマンドを使ってノートＰＣ５３０に送られる。この入力情報がノートＰＣ５３０すなわちウェブサーバへの遠隔操作呼び出しの操作情報に相当する。図６を参照すると、これらの情報は、ＣＧＩ５３２を経由してデータベース５３３への検索として処理される。なお、データベース５３３への検索は、かかるウェブサーバ用のＣＧＩ５３２による検索には限定されず、もっと広義のＲＰＣ（Remote Procedure Call）を、例えばＳＯＡＰ（Simple Object Access Protocol）の枠組みを利用してＨＴＴＰを使って送付し、サーバ側の特定ＲＰＣエントリを特定の呼び出し方で呼び出すものとしても実装できる。
ユーザＢに対して提供しても良い情報に絞り込まれるまで、このような検索をＰＤＡ５１０とノートＰＣ５３０の間で繰り返す。
【００５３】
データ検索が進み、ユーザＢに提供する情報が確定すると、図３に示した第２フェーズに遷移する。ここでは、ＰＤＡ５１０による操作においてユーザＢに提供する情報の確定に利用した検索条件が含まれるように、ノートＰＣ５３０にセキュアトークンの作成を依頼する。すなわち、ＰＤＡ５１０のノートＰＣ５３０に対する遠隔操作呼び出しによるデータ検索で確定した情報の抽出が可能な検索条件が含まれたセキュアトークンの作成が依頼される。
このセキュアトークン内の検索条件を利用することにより、ノートＰＣ５３０と信頼関係を持ったＰＤＡ５１０が取得した情報と同一の情報を、ノートＰＣ５３０と信頼関係の無いＰＤＡ５２０でも取得できるようにすることが、当該セキュアトークンの意義である。
【００５４】
図５を参照すると、本適用例におけるセキュアトークンは、図４に示したセキュアトークン５０の書式のうち、認証情報５１としてユーザＢの公開鍵を、操作情報５２として検索条件及び制限情報（例えば当該セキュアトークンの有効期限など）を記述している。また、かかるセキュアトークンにはデジタル署名５３（図ではサーバ署名と表記）が付されている。
このように、当該セキュアトークンには、ノートＰＣ５３０によってデジタル署名５３を施すので、その秘密鍵を保持するノートＰＣ５３０自身によってのみ作成可能である。
なお、本適用例のように、ＰＤＡ５２０とノートＰＣ５３０との通信をウェブベースで行う場合は、このセキュアトークンをＰＤＡ５２０へのクッキーとして作成することができる。
【００５５】
次に、図３に示した第３フェーズに遷移する。そして、以上のようにして作成されたセキュアトークンは、ＰＤＡ５２０に対するノートＰＣ５３０へのアクセス許可の証として引き渡す。このセキュアトークンは、一旦、ＰＤＡ５１０に返送された後、ＰＤＡ５１０からＰＤＡ５２０にクライアント間通信を介して渡される。また、ＰＤＡ５１０を介さずに、ノートＰＣ５３０からＰＤＡ５２０に直接引き渡すこともできる。
【００５６】
次に、図３に示した第４フェーズに遷移し、ＰＤＡ５２０によるセキュアトークンを用いたデータ検索が行われる。第２フェーズで作成されたセキュアトークンが第３フェーズでＰＤＡ５２０に与えられると、当該ＰＤＡ５２０が使用する限り、当該セキュアトークンに記述されている検索条件によるデータ検索の実行がＰＤＡ５２０に許可されたことになる。なぜなら、ＰＤＡ５２０は、ノートＰＣ５３０に接続する際にＳＳＬによる認証手順によって確実にＰＤＡ５２０本体であることが確認された後、そこで示された公開鍵が当該セキュアトークンに予め挿入されている公開鍵と一致すれば、間違いなく当該セキュアトークンはＰＤＡ５２０が与えられた正規のものであることが確認されるからである。
【００５７】
ここで、当該セキュアトークンに操作情報５２として記述される検索条件の例を示す。検索情報として、次のような記述があるものとする。
<QueryConditions>
<keywords>
"Web server" AND "CGI"
</keywords>
<LastAccessDateTime>
BETWEEN 2001/06/01 AND 2001/06/02
</LastAccessDateTime>
<SpecifiedCategories>
MAIL AND PDF
</SpecifiedCategories>
</QueryConditions>
この例は、「６月１日〜２日の両日にアクセスしたメールまたはＰＤＦ文書の中で、"Web server"と"CGI"という２つのキーワードが含まれているもの」を検索して、該当する情報を取得するものである。したがって、かかる検索条件が操作情報５２として記述されたセキュアトークンを与えられたＰＤＡ５２０は、ノートＰＣ５３０に対し、この検索条件でデータ検索を行うことが可能となる。
なお、上記のような平易なテキスト文書ではなく、汎用的なＲＰＣ呼び出し用にさらに汎用的にＳＯＡＰの符号化を利用して、送付情報に型指定などが可能な操作情報５２の記述を行っても良い。
【００５８】
次に、上述したデータベース検索への本実施の形態の適用例において、ユーザＡがＰＤＡ５１０を操作して検索条件を決定し、かかる操作の内容をセキュアトークンとしてＰＤＡ５２０（ユーザＢ）に与える手順の具体的な例を、ＰＤＡ５１０のウェブブラウザ５１１に現れるＧＵＩを簡易表現した図を参照しながら説明する。
この例はアドホック無線通信ネットワークで利用されている。まずＰＤＡ５１０は、本実施の形態によるセキュアトークンを用いたアクセス機能をサポートする近傍の装置を検索する。つまり、ノートＰＣ５３０の情報の特定の一部を公開する相手を探す。例えば、ＰＤＡ５１０、５２０において利用している近距離無線デバイス間で、共通に用意された専用のサービスディスカバリー機能を働かせることにより、利用中の近距離無線通信デバイスであって通信可能な範囲（例えば、デバイス間距離１０ｍ以内）にいる他の装置の探索を行うことができる。本適用例では、このサービスディスカバリー機能により発見されたクライアントの装置名は「Ｐａｕｌ」と「Ｒｏｂｅｒｔ」であるとする。この適用例では「Ｐａｕｌ」がＰＤＡ５２０に該当する。この近傍の装置名をＰＤＡ５１０はすでに把握しているという前提で以下の操作を開始する。
図８は、データベース検索を開始するためにノートＰＣ５３０のウェブサーバから提供され、ＰＤＡ５１０のウェブブラウザ５１１に表示されるウェブページの初期画面（ホームページ）である。図示のように、この画面には、ノートＰＣ５３０上の検索エンジン（データベース５３３）に対する検索カテゴリが列挙されている。
ここで、ユーザＡが「最終アクセス日時」項目を選択したものとする（図９参照）。すると、この操作を受けて、最終アクセス日時を詳細に設定するための専用ページが、ノートＰＣ５３０のウェブサーバからＰＤＡ５１０に送られる（図１０参照）。図１０の例では、ユーザＡは２００１年６月１日から２日までを指定期間として条件設定している。
【００５９】
次に、さらに検索条件を追加するため、図１０の画面で「検索開始」を実行せず、「ホームへ戻る」を実行する。これにより、ＰＤＡ５１０のウェブブラウザ５１１の表示は、図９に示した状態、すなわちホームページにおいて「最終アクセス日時」の検索条件が選択されている状態に戻る。そこで、ユーザＡは、「関連アプリケーションカテゴリータイプ」を指定する（図１１参照）。
この操作を受けて、関連アプリケーションカテゴリータイプを指定するための専用ページが、ノートＰＣ５３０のウェブサーバからＰＤＡ５１０に送られる（図１２参照）。図１２の例では、ユーザＡは指定カテゴリとしてＰＤＦファイルとメール情報を指定している。
【００６０】
さらに検索条件を追加するため、ユーザＡは、上記と同様にホームページに戻り、「キーワード」を指定条件に加える（図１３参照）。そして、キーワード入力用のページにおいて、「Web Server」と「CGI」という２つのキーワードを入力している（図１４参照）。
【００６１】
以上のようにして、データベース検索の内容は、これらのキーワードが共に含まれるＰＤＦ情報とメール情報を検索することとなった。そこで、ユーザＡは、次に図１４のウェブページから「検索開始」を選択し、ノートＰＣ５３０のウェブサーバに、この検索条件での検索開始を要求する。
【００６２】
ノートＰＣ５３０は、上記の検索要求に応じてデータベース検索を行い、この検索条件を満たすデータファイルが見つかったならば、検出結果として該当データファイルがノートＰＣ５３０からＰＤＡ５１０へ送られる。そして、当該データを記載したページがＰＤＡ５１０に表示される（図１５参照）。図１５に示す表示ページには、その下部に、ページ単位で当該検索結果を見るための制御ボタンが設けられている。
以上のようにして得られた検索結果が、ユーザＡの所望する（ユーザＢに公開しようとする）内容であったならば、次にユーザＡは、この検索条件を含んだセキュアトークンを作成するように、ノートＰＣ５３０に要求する。
【００６３】
すでに述べたように、ＰＤＡ５１０は、近傍の装置名を検索済みである。前記検索条件の確定を受けて、この装置名と検索時に併せて取得した識別情報とをノートＰＣ５３０に送付する。なお、この送付手順は、ＨＴＴＰ上で取り交わされるＳＯＡＰを利用して行っている。したがって、ＰＤＡ５１０上での表示はない。この装置名等は、図１５で表示される検索結果の下部の周辺クライアントリストボタンを使って一覧として表示される（図１６参照）。
【００６４】
次に、ユーザＡは、どの装置（クライアント）に対してセキュアトークンを作成するのかを決定する。図１６では、Ｐａｕｌという装置名を持つ相手（ＰＤＡ５２０に相当する）のために、上記検索条件を持つセキュアトークンを作成することをノートＰＣ５３０に要求する。この要求によって、ノートＰＣ５３０は、同じくＳＯＡＰを使ってセキュアトークンをＰＤＡ５１０に返す。そして、ＰＤＡ５１０は、ＰＤＡ５２０に対し、クライアント間通信を介して当該セキュアトークンを送付することでノートＰＣ５３０の特定の情報を公開する。これ以後、クライアント：Ｐａｕｌは、当該セキュアトークンをノートＰＣ５３０に対して送信することによって、図１５に示した検索結果を取得できることになる。
【００６５】
なお、上述した適用例では、ＰＤＡ５１０とノートＰＣ５３０とが別個の装置として構成されているが、両方の役割を兼用する一体の端末として構成しても良い。
さらに、上述した適用例では特に明示しなかったが、ノートＰＣ５３０が外部データベースにアクセスできる場合には、その操作を行う権限をセキュアトークンにて提供することも可能である。
【００６６】
以上のように、本実施の形態は、クライアントに与えるサーバ資源へのアクセス操作を記述したトークンを発行して当該クライアントに提供することで、当該サーバ資源に限定したアクセス権限を当該クライアントに与えることができる。
しかも、このトークンをクライアントに渡すことによって、かかるアクセス制御のための管理情報を、該当するクライアントごとに分散管理させることができるため、かかるアクセス制御に関する一切の管理情報をその公開後にサーバ側で維持管理する必要がなく、サーバの負担を大幅に軽減することができる。
【００６７】
なお、本実施の形態によるトークンを用いたアクセス制御方法と、従来のサーバにて管理を行うアクセス制御とを併用することも可能である。
例えば、サーバに対して頻繁にアクセスするクライアントに対しては、サーバに管理データを保持してアクセス制御を用い、初めてアクセスしようとするクライアントや稀にしかアクセスしないクライアントに対しては、本実施の形態によるアクセス制御方法を用いることができる。
【００６８】
【発明の効果】
以上説明したように、本発明によれば、遠隔操作呼び出しにおけるアクセス制御において、クライアントのアクセス権限の認証管理における管理コストと、資源へのアクセス管理における管理コストとを共にクライアントへ分散し、サーバにおける管理コストを低減することができる。
【図面の簡単な説明】
【図１】  本実施の形態によるアクセス制御を実現するネットワークシステムの全体構成を説明する図である。
【図２】  本実施の形態におけるサーバの構成を示す図である。
【図３】  本実施の形態によるアクセス制御方法を説明する図である。
【図４】  本実施の形態に用いられるセキュアトークンの書式を例示する図である。
【図５】  携帯型の情報処理端末を用いたアドホック無線通信ネットワーク環境において本実施の形態を適用した構成を説明する図である。
【図６】  図５に示すＰＤＡとノートＰＣとの情報通信における関係を示す図である。
【図７】  図５に示すノートＰＣのデータベースの構成を示す図である。
【図８】  本実施の形態によるセキュアトークンに記述される操作情報を作成するためのクライアントにおける表示画面の例を示す図であり、検索条件選択用の画面を示す図である。
【図９】  本実施の形態によるセキュアトークンに記述される操作情報を作成するためのクライアントにおける表示画面の例を示す図であり、１つの項目が選択された状態を示す図である。
【図１０】  本実施の形態によるセキュアトークンに記述される操作情報を作成するためのクライアントにおける表示画面の例を示す図であり、図９で選択された条件を設定する様子を示す図である。
【図１１】  本実施の形態によるセキュアトークンに記述される操作情報を作成するためのクライアントにおける表示画面の例を示す図であり、２つ目の項目が選択された状態を示す図である。
【図１２】  本実施の形態によるセキュアトークンに記述される操作情報を作成するためのクライアントにおける表示画面の例を示す図であり、図１１で選択された条件を具体的に指定する様子を示す図である。
【図１３】  本実施の形態によるセキュアトークンに記述される操作情報を作成するためのクライアントにおける表示画面の例を示す図であり、３つ目の項目が選択された状態を示す図である。
【図１４】  本実施の形態によるセキュアトークンに記述される操作情報を作成するためのクライアントにおける表示画面の例を示す図であり、図１３で選択された条件を具体的に指定する様子を示す図である。
【図１５】  本実施の形態によるセキュアトークンに記述される操作情報を作成するためのクライアントにおける表示画面の例を示す図であり、入力された検索条件に基づく検索結果を示す図である。
【図１６】  本実施の形態によるセキュアトークンの作成相手クライアントを選択するためのクライアントにおける表示画面の例であり、１つ目の項目が選択された様子を示す図である。
【符号の説明】
１０、２０…クライアント、３０…サーバ、３１…クライアント認証部、３２…操作情報作成部、３３…セキュアトークン作成部、３４…セキュアトークン検証部、３５…遠隔操作処理実行部、４０…ネットワーク、５０…セキュアトークン、５１…認証情報、５２…操作情報、５３…デジタル署名、５１０、５２０…ＰＤＡ、５３０…ノートＰＣ
【図１】
0004301482.tif 000002
【図２】
0004301482.tif 000003
【図３】
0004301482.tif 000004
【図４】
0004301482.tif 000005
【図５】
0004301482.tif 000006
【図６】
0004301482.tif 000007
【図７】
0004301482.tif 000008
【図８】
0004301482.tif 000009
【図９】
0004301482.tif 000010
【図１０】
0004301482.tif 000011
【図１１】
0004301482.tif 000012
【図１２】
0004301482.tif 000013
【図１３】
0004301482.tif 000014
【図１４】
0004301482.tif 000015
【図１５】
0004301482.tif 000016
【図１６】
0004301482.tif 000017