JP2006260015A - ローカル端末、リモート端末、アプリケーションアクセス制御システム、その動作方法及び動作プログラム - Google Patents

ローカル端末、リモート端末、アプリケーションアクセス制御システム、その動作方法及び動作プログラム Download PDF

Info

Publication number
JP2006260015A
JP2006260015A JP2005075105A JP2005075105A JP2006260015A JP 2006260015 A JP2006260015 A JP 2006260015A JP 2005075105 A JP2005075105 A JP 2005075105A JP 2005075105 A JP2005075105 A JP 2005075105A JP 2006260015 A JP2006260015 A JP 2006260015A
Authority
JP
Japan
Prior art keywords
application
certificate
remote terminal
authentication
client application
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.)
Granted
Application number
JP2005075105A
Other languages
English (en)
Other versions
JP4692922B2 (ja
Inventor
Yoshiharu Asakura
義晴 朝倉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2005075105A priority Critical patent/JP4692922B2/ja
Publication of JP2006260015A publication Critical patent/JP2006260015A/ja
Application granted granted Critical
Publication of JP4692922B2 publication Critical patent/JP4692922B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】 ローカル端末上のサーバアプリケーションがリモート端末上のクライアントアプリケーションからのアクセスを制御可能にする。
【解決手段】 ローカル端末20上で動作するサーバアプリケーション40は、リモート端末10上で動作するクライアントアプリケーション300〜30mから受信したリモート端末証明書とアプリケーション証明書を証明書認証部70に渡す。証明書認証部70は、これら2つの証明書を認証し、それらの認証結果と認証結果集合データベース80をもとに認証結果をサーバアプリケーション40に渡す。サーバアプリケーション40は、その動作により、証明書認証部70から取得した認証結果をもとにアクセス許可データベース90からクライアントアプリケーション300〜30mに許可する実行要求の集合を取得し、これを用いてクライアントアプリケーション300〜30mからのアクセスを制御する。
【選択図】 図1

Description

本発明は、ローカル端末、リモート端末、これらを備えたアプリケーションアクセス制御システム、これらの動作方法、及び動作プログラムに関し、特にリモート端末上で動作するクライアントアプリケーションからローカル端末上で動作するサーバアプリケーションに対するアクセスを制御するシステムに関する。なお、本明細書で言う「アプリケーション」はソフトウェアから成り、メモリ上に配置され且つプロセッサにより実行されることでその機能が実現されるものを指す。
従来技術として、互いに通信可能に接続されたリモート端末及ローカル端末を有し、リモート端末上で動作するクライアントアプリケーションがローカル端末上で動作するサーバアプリケーションに接続して動作するシステムがある。このシステムで用いられるアプリケーションアクセス制御の一例を図17及び図18を参照して説明する。
図17は、従来のアプリケーションアクセス制御の一例を説明するものである。
図17に示すシステムは、クライアントアプリケーション2が動作するリモート端末1と、サーバアプリケーション4が動作し且つアクセス許可データベース5を有するローカル端末3とから構成されている。このようなシステム構成で用いられる従来のアプリケーションアクセス制御は、次のように動作する。
まず、リモート端末1上で動作するクライアントアプリケーション2がローカル端末3上で動作するサーバアプリケーション4に接続するときを考える。このとき、ローカル端末3は、サーバアプリケーション4の動作により、リモート端末1の識別子(IPアドレスなど)を取得し、その識別子をもとにサーバアプリケーション4が許可するクライアントアプリケーション2からの実行要求の集合をアクセス許可データベース5から取得する。
次いで、ローカル端末3は、サーバアプリケーション4の動作により、クライアントアプリケーション2から実行要求を受信したとき、その実行要求が先に求めた実行要求の集合に含まれている場合のみ、その実行要求を処理する。
図18は、従来のアプリケーションアクセス制御のその他の例を説明するものである。
図18に示すシステムは、クライアントアプリケーション2が動作し且つリモート端末証明書管理部6を有するリモート端末1と、サーバアプリケーション4が動作し且つ証明書認証部7及びアクセス許可データベース5を有するローカル端末3とから構成されている。このようなシステム構成で用いられる従来のアプリケーションアクセス制御は、次のように動作する。
まず、リモート端末1上で動作するクライアントアプリケーション2がローカル端末3上で動作するサーバアプリケーション4に接続するときを考える。このとき、リモート端末1は、クライアントアプリケーション2の動作により、リモート端末証明書管理部6からリモート端末1にただ1つ存在するリモート端末証明書を取得し、サーバアプリケーション4に送信する。
次いで、ローカル端末3は、サーバアプリケーション4の動作により、受信したリモート端末証明書を証明書認証部7に渡す。証明書認証部7は、リモート端末証明書を認証し、認証結果をサーバアプリケーション4に渡す。ローカル端末3は、サーバアプリケーション4の動作により、渡された認証結果をもとにサーバアプリケーション4が許可するクライアントアプリケーション2からの実行要求の集合をアクセス許可データベース5から取得する。
次いで、ローカル端末3は、サーバアプリケーション4の動作により、クライアントアプリケーション2から実行要求を受信したとき、その実行要求が先に求めた実行要求の集合に含まれている場合のみ、その実行要求を処理する。
なお、本発明に関連する先行技術文献としては、次のものがある。
特開2003−330557号公報
しかしながら、上述した従来のアプリケーションアクセス制御では、次のような問題点があった。
第1の問題点は、クライアントアプリケーションごとのアクセス制御ができないことである。その理由は、サーバアプリケーションが取得できる情報は、リモート端末の識別子、もしくは、リモート端末証明書のみであり、クライアントアプリケーションの情報を取得できないためである。
第2の問題点は、クライアントアプリケーションの認証をしていないということである。そのため、サーバアプリケーションは、クライアントアプリケーションの安全性を確認できない。
第3の問題点は、クライアントアプリケーションのアクセス制御がリモート端末に依存していることである。その理由は、リモート端末のIPアドレス、もしくは、リモート端末証明書によりアクセス制御を行うため、同一クライアントアプリケーションを別のリモート端末で動作させた場合、そのリモート端末のIPアドレス、もしくは、リモート端末証明書によりアクセス制御が行われるためである。そのため、クライアントアプリケーションに過剰なアクセス権を与えてしまう場合がある。
上記の先行技術文献は、上記のような問題点を解決することを必ずしも意図したものではない。
本発明の目的は、リモート端末上で動作するクライアントアプリケーションからローカル端末上で動作するサーバアプリケーションに対するアクセスを制御するアプリケーションアクセス制御システムを提供することにある。
上記目的を達成するため、本発明のアプリケーションアクセス制御システムは、クライアントアプリケーションが動作するリモート端末と、クライアントアプリケーションからの接続を受付け可能なサーバアプリケーションが動作するローカル端末とを備える。
リモート端末は、リモート端末証明書を管理するリモート端末証明書管理部と、クライアントアプリケーションに対応するアプリケーション証明書を管理するアプリケーション証明書管理部を備える。
ローカル端末は、リモート端末証明書とアプリケーション証明書の認証を行う証明書認証部と、リモート端末証明書の認証結果とアプリケーション証明書の認証結果集合との組みを保持する認証結果集合データベースと、アプリケーション証明書の認証結果とクライアントアプリケーションに許可する実行要求の集合との組みを保持するアクセス許可データベースと、クライアントアプリケーションのアプリケーション識別子とクライアントアプリケーションのハッシュ値をクライアントアプリケーション固有の秘密鍵で暗号化した暗号化ハッシュ値とクライアントアプリケーション固有の秘密鍵に対応する公開鍵を含むアプリケーション証明書との組みを格納するアプリケーション証明書データベースとを備える。
このような構成により、クライアントアプリケーションがサーバアプリケーションに接続するときに、リモート端末証明書とクライアントアプリケーションに関連付けられたアプリケーション証明書をサーバアプリケーションに送信し、リモート端末証明書の認証結果から特定されるクライアントアプリケーションが取りうる認証結果集合にアプリケーション証明書の認証結果が含まれるとき、そのアプリケーション証明書の認証結果をもとにクライアントアプリケーションに許可する実行要求の集合を特定し、その実行要求の集合に含まれる実行要求のみを処理する。
本発明によれば、次のような効果が得られる。
第1の効果は、サーバアプリケーションがクライアントアプリケーションのアクセスを制御可能になることである。その理由は、サーバアプリケーションが処理するクライアントアプリケーションからの実行要求の種類は、アプリケーション証明書の認証結果から定まる実行要求の集合に含まれる実行要求に限定されるからである。
第2の効果は、クライアントアプリケーションの認証が可能になることである。その理由は、クライアントアプリケーションとサーバアプリケーションとが接続されたときに、クライアントアプリケーションに関連付けられるアプリケーション証明書がローカル端末に送信されるため、そのアプリケーション証明書を用いた認証が可能になるからである。
第3の効果は、クライアントアプリケーションのアクセス制御とクライアントアプリケーションが動作するリモート端末とを分離できることである。その理由は、リモート端末の認証に用いるリモート端末証明書の認証結果は、クライアントアプリケーションが取りうる認証結果集合を定めるのみで、クライアントアプリケーションのアクセス制御はクライアントアプリケーションに関連付けられるアプリケーション証明書の認証結果により定まるからである。
第4の効果は、クライアントアプリケーションが動作するリモート端末をローカル端末が認めたリモート端末に限定できることである。その理由は、リモート端末の認証に用いるリモート端末証明書の認証結果により定まる認証結果集合に、クライアントアプリケーションに関連付けられるアプリケーション証明書の認証結果が含まれているときのみ接続を許可するからである。
次に、本発明を実施するための最良の形態について、図面を参照して詳細に説明する。
(第1の実施形態)
図1を参照すると、本発明の第1の実施形態によるアプリケーションアクセス制御システムは、互いに通信可能に接続されるリモート端末10と、ローカル端末20とから構成されている。両端末10、20間の通信は、無線でも有線でもいずれでも適用可能である。
リモート端末10は、クライアントアプリケーション300〜30mが動作するもので、機能上、リモート端末証明書管理部50と、アプリケーション証明書管理部60と、アプリケーション証明書データベース110とを含む。これらは機能上の構成であり、ハードウェア構成上は、これら各部に対応する機能が実現可能なものであれば、いずれでも適用可能である。
例えば、リモート端末10は、上記各機能に対応する制御プログラム及びデータベース等の制御データが格納されるメモリ等の記録媒体と、これら制御プログラムの命令を解読及び実行するプロセッサ(CPU)と、プロセッサによる制御の元でローカル端末20との間の通信を行う通信装置等の各種入出力装置とを有する構成でもよい。この場合、クライアントアプリケーション300〜30mは、例えばこれらに対応するクライアントアプリケーションソフトウェアから成り、メモリ上に配置され且つプロセッサにより実行されることでそれぞれの機能が実現される。また、リモート端末証明書管理部50及びアプリケーション証明書管理部60は、例えばこれらに対応する制御プログラムから成り、メモリ上に配置され且つプロセッサにより実行されることでそれぞれの機能が実現される。
クライアントアプリケーション300〜30mは、リモート端末10上で動作し、サーバアプリケーション40に接続する。また、リモート端末証明書管理部50から取得したリモート端末証明書とアプリケーション証明書管理部60から取得したクライアントアプリケーション300〜30mに関連付けられたアプリケーション証明書をサーバアプリケーション40に送信する。
リモート端末証明書管理部50は、リモート端末10のリモート端末証明書を管理し、クライアントアプリケーション300〜30mからの求めに応じてリモート端末証明書を渡す。
アプリケーション証明書管理部60は、要求元のクライアントアプリケーション30y(0<=y<=m)のアプリケーション識別子をキーとしてアプリケーション証明書データベース110を検索し、暗号化ハッシュ値とアプリケーション証明書を取得する。次に、クライアントアプリケーション30yのハッシュ値を計算し、アプリケーション証明書から取得した公開鍵を用いて復号した暗号化ハッシュ値の値と一致するか調べ、アプリケーション証明書をクライアントアプリケーション30yに渡す。
アプリケーション証明書データベース110は、クライアントアプリケーション300〜30mのアプリケーション識別子とクライアントアプリケーション300〜30mのハッシュ値をクライアントアプリケーション300〜30m固有の秘密鍵で暗号化した暗号化ハッシュ値とクライアントアプリケーション300〜30m固有の秘密鍵に対応する公開鍵を含むアプリケーション証明書との組みを予め記憶している。
ローカル端末20は、サーバアプリケーション40が動作するもので、機能上、証明書認証部70と、認証結果集合データベース80と、アクセス許可データベース90とを含む。これらは機能上の構成であり、ハードウェア構成上は、これら各部に対応する機能が実現可能なものであれば、いずれでも適用可能である。
例えば、リモート端末10は、上記各機能に対応する動作プログラム及びデータベース等の制御データが格納されるメモリ等の記録媒体と、これら動作プログラムの命令を解読及び実行するプロセッサ(CPU)と、プロセッサによる制御の元でリモート端末10との間の通信を行う通信装置等の各種入出力装置とを有する構成でもよい。この場合、サーバアプリケーション40は、例えばこれに対応するサーバアプリケーションソフトウェアから成り、メモリ上に配置され且つプロセッサにより実行されることでその機能が実現される。また、証明書認証部70は、例えばこれに対応する制御プログラムから成り、メモリ上に配置され且つプロセッサにより実行されることでその機能が実現される。
サーバアプリケーション40は、ローカル端末20上で動作し、クライアントアプリケーション30y(0<=y<=m)から接続される。また、クライアントアプリケーション30yから受信したリモート端末証明書とアプリケーション証明書を証明書認証部70に渡して認証結果を取得する。そして、クライアントアプリケーション30yからの実行要求を受信したとき、認証結果をキーとしてアクセス許可データベース90から実行要求の集合を取得し、その実行要求が実行要求の集合に含まれているときにその実行要求を処理する。
証明書認証部70は、サーバアプリケーション40から取得したリモート端末証明書を認証し、その認証結果をキーとして認証結果集合データベース80から認証結果集合を取得する。次にサーバアプリケーション40から取得したアプリケーション証明書を認証し、その認証結果が先に求めた認証結果集合に含まれるか調べ、含まれるときにその認証結果をサーバアプリケーション40に渡す。
認証結果集合データベース80は、リモート端末証明書の認証結果とアプリケーション証明書の認証結果集合との組みを予め記憶している。
アクセス許可データベース90は、アプリケーション証明書の認証結果と実行要求の集合との組みを予め記憶している。
次に、図1〜図6を参照して、本実施形態の動作について詳細に説明する。
まず、図2において、リモート端末10は、クライアントアプリケーション30y(0<=y<=m)が起動すると、リモート端末証明書管理部50からリモート端末証明書を取得する(ステップA1)。次に、リモート端末10は、クライアントアプリケーション30yのアプリケーション識別子をアプリケーション証明書管理部60に渡し(ステップA2)、そのアプリケーション識別子をキーにしてアプリケーション証明書データベース110からそのクライアントアプリケーション30yに関連付けられたアプリケーション証明書を取得し得るかどうか判断する(ステップA3)。
その結果、アプリケーション証明書を取得できず、アプリケーション証明書管理部60から検証エラーを取得した場合(ステップA3:NO)、リモート端末10は、処理を終了する(ステップA3)。一方、アプリケーション証明書を取得した場合(ステップA3:YES)、リモート端末10は、クライアントアプリケーション30yの動作により、サーバアプリケーション40に接続し(ステップA4)、取得したリモート端末証明書とアプリケーション証明書をサーバアプリケーション40に送信する(ステップA5)。その後、リモート端末10は、サーバアプリケーション40から認証成功、もしくは、認証エラーの結果を受信したかどうか判断する(ステップS6)、その結果を受信した場合(ステップS6:YES)、その結果が認証エラーかどうか判断する(ステップS7)。これにより、認証エラーの場合(ステップA7:YES)、接続を遮断し(ステップA8)、認証エラーでない、即ち認証成功の場合(ステップA7:NO)、接続を継続する。
次いで、図3において、アプリケーション証明書管理部60は、クライアントアプリケーション30yから取得したアプリケーション識別子をキーとしてアプリケーション証明書データベース110から暗号化ハッシュ値とアプリケーション証明書を取得する(ステップB1)。次に、暗号化ハッシュ値をアプリケーション証明書から取得した公開鍵を用いて復号し(ステップB2)、クライアントアプリケーション30yからハッシュ値を計算し(ステップB3)、復号化されたハッシュ値とクライアントアプリケーション30yから計算したハッシュ値とを比較する(ステップB4)。
その結果、両ハッシュ値が等しい場合(ステップB4:YES)、アプリケーション証明書をクライアントアプリケーション30yに渡し(ステップB5)、ハッシュ値が異なる場合(ステップB4:NO)、検証エラーをクライアントアプリケーション30yに渡す(ステップB6)。
次いで、図4において、ローカル端末20は、サーバアプリケーション40の動作により、クライアントアプリケーション30yから受信したリモート端末証明書とアプリケーション証明書を証明書認証部70に渡し(ステップC1)、証明書認証部70から認証結果を取得したかどうか判断する(ステップC2)。
その結果、証明書認証部70から認証結果を取得した場合(ステップC2:YES)、その認証結果をキーとしてアクセス許可データベース90から実行要求の集合を取得する(ステップC4)。その後、クライアントアプリケーション30yに認証成功を送信する(ステップC5)。
一方、証明書認証部70から認証結果を取得できずに認証エラーを取得した場合(ステップC2:NO)、クライアントアプリケーション30yに認証エラーを送信する(ステップC6)。
次いで、図5において、証明書認証部70は、サーバアプリケーション40から取得したリモート端末証明書を認証し(ステップD1)、その認証に成功したかどうか判断する(ステップD2)。その結果、認証に失敗した場合(ステップD2:NO)、認証エラーをサーバアプリケーション40に渡す(ステップD9)。一方、認証に成功した場合(ステップD2:YES)、その認証結果をキーとして認証結果集合データベース80から認証結果集合を検索し(ステップD3)、その認証結果集合が存在するかどうか判断する(ステップD4)。
その結果、認証結果と組みとなる認証結果集合が存在しない場合(ステップS4:NO)、認証エラーをサーバアプリケーション40に渡す(ステップD9)。一方、認証結果と組みとなる認証結果集合を取得した場合(ステップS4:YES)、サーバアプリケーション40から取得したアプリケーション証明書を認証し(ステップD5)、その認証に成功したかどうか判断する(ステップD6)。その結果、認証に失敗した場合(ステップD6:NO)、認証エラーをサーバアプリケーション40に渡す(ステップD9)。一方、認証に成功した場合(ステップD6:YES)、その認証結果が先に求めた認証結果集合に含まれるか調べる(ステップD7)。
その結果、認証結果が先に求めた認証結果集合に含まれる場合(ステップD7:YES)、その認証結果をサーバアプリケーション40に渡し(ステップD8)、認証結果が先に求めた認証結果集合に含まれない場合(ステップD7:NO)、認証エラーをサーバアプリケーション40に渡す(ステップD9)。
その後、リモート端末10上で動作するクライアントアプリケーション30yがローカル端末20上で動作するサーバアプリケーション40に実行要求を送信した場合を考える。
この場合、図6において、ローカル端末20は、サーバアプリケーション40がクライアントアプリケーション30yから実行要求を受信する(ステップE1)と、サーバアプリケーション40の動作により、受信した実行要求が先にアクセス許可データベース90から取得した実行要求の集合に含まれているか調べる(ステップE2)。その結果、含まれている場合(ステップE2:YES)、その実行要求を処理する(ステップE3)。
次に、本実施形態の効果について説明する。
本実施形態では、リモート端末証明書を用いてリモート端末を認証でき、アプリケーション証明書を用いてクライアントアプリケーションを認証できる。また、クライアントアプリケーションはローカル端末が認めるリモート端末上で動作しているときのみ、サーバアプリケーションに実行要求の処理を依頼できる。このとき、サーバアプリケーションで処理されるクライアントアプリケーションの実行要求を、ローカル端末側でアプリケーション証明書の認証結果をもとに制限できる。
なお、本実施形態では、1つのリモート端末と1つのローカル端末の場合について説明したが、リモート端末とローカル端末の数に制限はない。
(第2の実施形態)
次に、本発明の第2の実施形態について、図面を参照して詳細に説明する。
図7を参照すると、本実施形態によるアプリケーションアクセス制御システムは、ローカル端末20が図1に示された上記第1の実施形態におけるサーバアプリケーション40が複数のサーバアプリケーション400〜40に置換され、証明書認証部70が証明書認証部170に置換され、認証キャッシュ部100を新たに有する点で異なる。
ローカル端末20上で動作するサーバアプリケーション40が複数のサーバアプリケーション400〜40に置換されたことにより、リモート端末10上で動作するクライアントアプリケーション30y(0<=y<=m)は、同時にローカル端末20上の複数のサーバアプリケーションに接続する場合がある。
認証キャッシュ部100は、リモート端末証明書と認証結果集合との組み、および、アプリケーション証明書と認証結果との組みを保存する。
次に、本実施形態の動作を図面を参照して詳細に説明する。
図7のクライアントアプリケーション30y(0<=y<=m)とアプリケーション証明書管理部60の動作は、上記第1の実施形態のクライアントアプリケーション30yとアプリケーション証明書管理部60の動作と同一のため、説明は省略する。また、図7のサーバアプリケーション40z(0<=z<=n)の動作は、上記第1の実施形態のサーバアプリケーション40の動作と同一のため、説明は省略する。
上記第1の実施形態では、証明書認証部70は、取得したリモート端末証明書とアプリケーション証明書を必ず認証しているが、本実施形態では、図8に示すように、証明書認証部170は、サーバアプリケーション40z(0<=z<=n)から取得したリモート端末証明書をキーとして認証キャッシュ部100から認証結果集合を検索し(ステップF1)、その認証結果集合が存在するかどうか判断する(ステップF2)。その結果、認証結果集合が存在しない場合(ステップF2:NO)、リモート端末証明書を認証し(ステップF3)、その認証が成功したかどうか判断する(ステップF4)。
その結果、認証に成功した場合(ステップF4:YES)、認証結果をキーとして認証結果集合データベース80から認証結果集合を検索し(ステップF5)、その認証結果集合が存在するかどうか判断する(ステップF6)。その結果、認証結果と組みとなる認証結果集合が存在しない場合(ステップF6:NO)、認証エラーをサーバアプリケーション40zに渡し(ステップF15)、認証結果と組みとなる認証結果集合を取得した場合(ステップF6:YES)、リモート端末証明書と認証結果集合との組みを認証キャッシュ部100に登録する(ステップF7)。
一方、認証に失敗した場合(ステップF4:NO)、認証エラーをサーバアプリケーション40zに渡す(ステップF15)。
次に、サーバアプリケーション40から取得したアプリケーション証明書をキーとして認証キャッシュ部100から認証結果を検索し(ステップF8)、その認証結果が存在するかどうか判断する(ステップF9)。その結果、認証結果が存在しない場合(ステップF9:NO)、アプリケーション証明書を認証し(ステップF10)、その認証に成功したかどうか判断する(ステップF11)。その結果、認証に失敗した場合(ステップF11:NO)、認証エラーをサーバアプリケーション40zに渡す(ステップF15)。
一方、認証に成功した場合(ステップF11:YES)、アプリケーション証明書と認証結果との組みを認証キャッシュ部100に登録する(ステップのF12)。そして、認証結果が先に求めた認証結果集合に含まれるかどうか調べる(ステップF13)。その結果、含まれる場合(ステップF13:YES)、その認証結果をサーバアプリケーション40zに渡し(ステップF14)、含まれない場合(ステップF13:NO)、認証エラーをサーバアプリケーション40zに渡す(ステップF15)。
次に、本実施形態の効果について説明する。
本実施形態では、リモート端末証明書と認証結果集合との組み、および、アプリケーション証明書と認証結果との組みをキャッシュすることにより、以前に認証したリモート端末証明書やアプリケーション証明書を再度認証する必要がなくなる。これにより、リモート端末証明書やアプリケーション証明書の認証時間を削減できる。
次に、本発明の第1の実施例を、図面を参照して説明する。かかる実施例は、本発明の第1の実施形態に対応するものである。
本実施例によるアプリケーションアクセス制御システムは、図9に示すようにローカル端末として携帯電話11を、リモート端末としてLinux端末21を、クライアントアプリケーションとしてXクライアント0(310)、Xクライアント1(311)を、サーバアプリケーションとしてXサーバ41を備えている。
リモート端末証明書管理部51は、Linux端末21のリモート端末証明書0を管理する。
アプリケーション証明書データベース111は、図10に示すように、Xクライアント0に対応付けられるアプリケーション証明書0とXクライアント0(310)のファイルの絶対パス名(/usr/bin/xclient0)とそのファイルのハッシュ値をXクライアント0(310)に固有の秘密鍵で暗号化した暗号化ハッシュ値0との組み、Xクライアント1(311)に対応付けられるアプリケーション証明書1とXクライアント1(311)のファイルの絶対パス名(/usr/bin/xclient1)とそのファイルのハッシュ値をXクライアント1(311)に固有の秘密鍵で暗号化した暗号化ハッシュ値1との組みを含む。
証明書認証部71は、ルート証明書C0、ルート証明書C1、ルート証明書A0、ルート証明書A1を持ち、ルート証明書C0はリモート端末証明書0を、ルート証明書A0はアプリケーション証明書0を、ルート証明書A1はアプリケーション証明書1を認証可能とする。認証結果として、その証明書の認証に使用されたルート証明書を用いる。
認証結果集合データベース81は、図11に示すように、ルート証明書C0とルート証明書A0との組み、ルート証明書C1と{ルート証明書A0、ルート証明書A1}との組みを含む。
アクセス許可データベース91は、図12に示すように、ルート証明書A0と{ウィンドウ作成、ウィンドウ削除、フォント設定}との組み、ルート証明書A1と{フォント設定、描画色設定、線描画}との組みを含む。
今、Xクライアント0(310)がXサーバ41に接続を試みたとする。
Xクライアント0(310)は、リモート端末証明書管理部51からリモート端末証明書0を取得する。また、アプリケーション証明書管理部61にXクライアント0(310)の絶対パス名(/usr/bin/xclient0)を渡す。
アプリケーション証明書管理部61は、絶対パス名(/usr/bin/xclient0)をキーとしてアプリケーション証明書データベース111を検索し、暗号化ハッシュ値0とアプリケーション証明書0を取得する。次に、Xクライアント0(310)のファイル(/usr/bin/xclient0)のハッシュ値を計算し、アプリケーション証明書0に含まれる公開鍵を用いて暗号化ハッシュ値0を復号したハッシュ値と比較する。ハッシュ値は一致するので、アプリケーション証明書0をXクライアント0(310)に渡す。
Xクライアント0(310)は、アプリケーション証明書0を取得すると、Xサーバ41に接続し、リモート端末証明書0とアプリケーション証明書0を送信する。
Xサーバ41は、受信したリモート端末証明書0とアプリケーション証明書0を証明書認証部71に渡す。
証明書認証部71は、所有するルート証明書を用いてリモート端末証明書0を認証する。リモート端末証明書0はルート証明書C0で認証に成功するので、ルート証明書C0をキーとして認証結果集合データベース81を検索し、認証結果集合として{ルート証明書A0}を取得する。
次に、証明書認証部71は、所有するルート証明書を用いてアプリケーション証明書0を認証する。アプリケーション証明書0はルート証明書A0で認証に成功するので、ルート証明書A0が先に求めた認証結果集合{ルート証明書A0}に含まれるか調べる。ルート証明書A0は含まれるので、認証結果としてルート証明書A0をXサーバ41に渡す。
Xサーバ41は、認証結果としてルート証明書A0を取得すると、ルート証明書A0をキーとしてアクセス許可データベース91を検索し、実行要求の集合として{ウィンドウ作成、ウィンドウ削除、フォント設定}を取得する。その後、Xクライアント0(310)に認証成功を送信する。
その後、Xクライアント0(310)が「ウィンドウ作成」実行要求をXサーバ41に送信したとする。Xサーバ41は、「ウィンドウ作成」実行要求が先に取得した実行要求の集合に含まれるか調べる。「ウィンドウ作成」実行要求は含まれるため、Xサーバ41は、Xクライアント0(310)による「ウィンドウ作成」実行要求を処理する。
また、Xクライアント0(310)が「描画色設定」実行要求をXサーバ41に送信したとする。Xサーバ41は、「描画色設定」実行要求が先に取得した実行要求の集合に含まれるか調べる。「描画色設定」実行要求は含まれないため、Xサーバ41は、Xクライアント0(310)による「描画色設定」実行要求を処理しない。
次に、Xクライアント1(311)がXサーバ41に接続を試みたとする。
Xクライアント1(311)は、リモート端末証明書管理部51からリモート端末証明書0を取得する。また、アプリケーション証明書管理部61にXクライアント1(311)の絶対パス名(/usr/bin/xclient1)を渡す。
アプリケーション証明書管理部61は、絶対パス名(/usr/bin/xclient1)をキーとしてアプリケーション証明書データベース111を検索し、暗号化ハッシュ値1とアプリケーション証明書1を取得する。次に、Xクライアント1(311)のファイル(/usr/bin/xclient1)のハッシュ値を計算し、アプリケーション証明書1に含まれる公開鍵を用いて暗号化ハッシュ値1を復号したハッシュ値と比較する。ハッシュ値は一致するので、アプリケーション証明書1をXクライアント1(311)に渡す。
Xクライアント1(311)は、アプリケーション証明書1を取得すると、Xサーバ41に接続し、リモート端末証明書1とアプリケーション証明書1を送信する。
Xサーバ41は、受信したリモート端末証明書0とアプリケーション証明書1を証明書認証部に渡す。
証明書認証部71は、所有するルート証明書を用いてリモート端末証明書0を認証する。リモート端末証明書0はルート証明書C0で認証に成功するので、ルート証明書C0をキーとして認証結果集合データベースを検索し、認証結果集合として{ルート証明書A0}を取得する。
次に、証明書認証部71は、所有するルート証明書を用いてアプリケーション証明書1を認証する。アプリケーション証明書1は、ルート証明書A1で認証に成功するので、ルート証明書A1が先に求めた認証結果集合{ルート証明書A0}に含まれるか調べる。ルート証明書A0は含まれないので、認証結果として認証エラーをXサーバ41に渡す。
Xサーバ41は、認証結果として認証エラーを取得すると、Xクライアント1(311)に認証エラーを送信する。
Xクライアント1(311)は、認証エラーを受信すると、接続を遮断する。
次に、第2の実施例を説明する。かかる実施例は、本発明の第2の実施形態に対応するものである。
本実施例によるアプリケーションアクセス制御システムは、図13に示すようにローカル端末として携帯電話21を、リモート端末としてLinux端末11を、クライアントアプリケーションとしてXクライアント0(310)、Xクライアント1(311)を、サーバアプリケーションとしてXサーバ410とサウンドサーバ(音楽サーバ)411を備えている。
リモート端末証明書管理部51は、Linux端末11のリモート端末証明書0を管理する。
アプリケーション証明書データベース111は、図14に示すように、Xクライアント0(310)に対応付けられるアプリケーション証明書0とXクライアント0(310)のファイルの絶対パス名(/usr/bin/xclient0)とそのファイルのハッシュ値をXクライアント0(310)に固有の秘密鍵で暗号化した暗号化ハッシュ値0との組み、Xクライアント1(311)に対応付けられるアプリケーション証明書1とXクライアント1(311)のファイルの絶対パス名(/usr/bin/xclient1)とそのファイルのハッシュ値をXクライアント1(311)に固有の秘密鍵で暗号化した暗号化ハッシュ値1との組みを含む。
証明書認証部171は、ルート証明書C0、ルート証明書C1、ルート証明書A0、ルート証明書A1を持ち、ルート証明書C0はリモート端末証明書0を、ルート証明書A0はアプリケーション証明書0を、ルート証明書A1はアプリケーション証明書1を認証可能とする。認証結果として、その証明書の認証に使用されたルート証明書を用いる。
認証結果集合データベース81は、図15に示すように、ルート証明書C0とルート証明書A0との組み、ルート証明書C1と{ルート証明書A0、ルート証明書A1}との組みを含む。
アクセス許可データベース91は、図16に示すように、ルート証明書A0と{ウィンドウ作成、ウィンドウ削除、音楽再生、音楽停止}との組み、ルート証明書A1と{フォント設定、描画色設定、線描画}との組みを含む。
認証キャッシュ部101は、空とする。
今、Xクライアント0(310)がXサーバ410に接続を試みたとする。
Xクライアント0(310)は、リモート端末証明書管理部51からリモート端末証明書0を取得する。また、アプリケーション証明書管理部61にXクライアント0(310)の絶対パス名(/usr/bin/xclient0)を渡す。
アプリケーション証明書管理部61は、絶対パス名(/usr/bin/xclient0)をキーとしてアプリケーション証明書データベース111を検索し、暗号化ハッシュ値0とアプリケーション証明書0を取得する。次に、Xクライアント0のファイル(/usr/bin/xclient0)のハッシュ値を計算し、アプリケーション証明書0に含まれる公開鍵を用いて暗号化ハッシュ値0を復号したハッシュ値と比較する。ハッシュ値は一致するので、アプリケーション証明書0をXクライアント0(310)に渡す。
Xクライアント0(310)は、アプリケーション証明書0を取得すると、Xサーバ410に接続し、リモート端末証明書0とアプリケーション証明書0を送信する。
Xサーバ410は、受信したリモート端末証明書0とアプリケーション証明書0を証明書認証部に渡す。
証明書認証部171は、リモート端末証明書0をキーとして認証キャッシュ部101から認証結果集合を検索する。認証結果集合は存在しないため、リモート端末証明書0を認証する。リモート端末証明書0は、ルート証明書C0で認証に成功するので、ルート証明書C0をキーとして認証結果集合データベース81を検索し、認証結果集合として{ルート証明書A0}を取得する。そして、リモート端末証明書0と{ルート証明書A0}との組みを認証キャッシュ部101に登録する。
次に、証明書認証部171は、アプリケーション証明書0をキーとして認証キャッシュ部から認証結果を検索する。認証結果は存在しないため、アプリケーション証明書0を認証する。アプリケーション証明書0はルート証明書A0で認証に成功するので、アプリケーション証明書0とルート証明書A0との組みを認証キャッシュ部101に登録する。
そして、ルート証明書A0が先に求めた認証結果集合{ルート証明書A0}に含まれるか調べる。ルート証明書A0は含まれるので、認証結果としてルート証明書A0をXサーバ410に渡す。
Xサーバ410は、認証結果としてルート証明書A0を取得すると、ルート証明書A0をキーとしてアクセス許可データベース91を検索し、実行要求の集合として{ウィンドウ作成、ウィンドウ削除、音楽再生、音楽停止}を取得する。その後、Xクライアント0(310)に認証成功を送信する。
その後、さらにXクライアント0(310)が音楽サーバ411に接続を試みたとする。
Xクライアント0(310)は、リモート端末証明書管理部51からリモート端末証明書0を取得する。また、アプリケーション証明書管理部61にXクライアント0(310)の絶対パス名(/usr/bin/xclient0)を渡す。
アプリケーション証明書管理部61は、絶対パス名(/usr/bin/xclient0)をキーとしてアプリケーション証明書データベース111を検索し、暗号化ハッシュ値0とアプリケーション証明書0を取得する。次に、Xクライアント0(310)のファイル(/usr/bin/xclient0)のハッシュ値を計算し、アプリケーション証明書0に含まれる公開鍵を用いて暗号化ハッシュ値0を復号したハッシュ値と比較する。ハッシュ値は一致するので、アプリケーション証明書0をXクライアント0(310)に渡す。
Xクライアント0(310)は、アプリケーション証明書0を取得すると、音楽サーバ411に接続し、リモート端末証明書0とアプリケーション証明書0を送信する。
音楽サーバ411は、受信したリモート端末証明書0とアプリケーション証明書0を証明書認証部171に渡す。
証明書認証部171は、リモート端末証明書0をキーとして認証キャッシュ部101から認証結果集合を検索する。認証結果集合として、{ルート証明書A0}を取得する。
次に、証明書認証部171は、アプリケーション証明書0をキーとして認証キャッシュ部101から認証結果を検索する。認証結果として、ルート証明書A0を取得する。
そして、認証結果のルート証明書A0が認証結果集合{ルート証明書A0}に含まれるか調べる。ルート証明書A0は含まれるので、認証結果としてルート証明書A0を音楽サーバ411に渡す。
音楽サーバ411は、認証結果としてルート証明書A0を取得すると、ルート証明書A0をキーとしてアクセス許可データベース91を検索し、実行要求の集合として{ウィンドウ作成、ウィンドウ削除、音楽再生、音楽停止}を取得する。その後、Xクライアント0(310)に認証成功を送信する。
本発明によれば、XサーバとXクライアントのようなクライアント・サーバ型で動作するアプリケーションの動作時に、クライアントアプリケーションとそのクライアントアプリケーションが動作する端末の安全性に基づいた、サーバ側におけるクライアントアプリケーションのアクセス制御を実現する用途に適用できる。
本発明の第1の実施形態によるアプリケーションアクセス制御システムの構成を示すブロック図である。 図1に示すクライアントアプリケーションの動作を示す流れ図である。 図1に示すアプリケーション証明書管理部の動作を示す流れ図である。 図1に示すサーバアプリケーションの動作を示す流れ図である。 図1に示す証明書認証部の動作を示す流れ図である。 図1に示すサーバアプリケーションによるクライアントアプリケーションからの実行要求受付け時の動作を示す流れ図である。 本発明の第2の実施形態によるアプリケーションアクセス制御システムの構成を示すブロック図である。 図7に示す証明書認証部の動作を示す流れ図である。 本発明の第1の実施例によるアプリケーションアクセス制御システムの構成を示す図である。 図9に示すアプリケーション証明書データベースのテーブル構成を示す図である。 図9に示す認証結果集合データベースのテーブル構成を示す図である。 図9に示すアクセス許可データベースのテーブル構成を示す図である。 本発明の第2の実施例によるアプリケーションアクセス制御システムの構成を示す図である。 図13に示すアプリケーション証明書データベースのテーブル構成を示す図である。 図13に示す認証結果集合データベースのテーブル構成を示す図である。 図13に示すアクセス許可データベースのテーブル構成を示す図である。 従来例のアプリケーションアクセス制御システムの構成を示すブロック図である。 他の従来例のアプリケーションアクセス制御システムの構成を示すブロック図である。
符号の説明
10 リモート端末
11 Linux端末
20 ローカル端末
21 携帯電話
300〜30m クライアントアプリケーション
310、311 Xクライアント0、1
40、400〜40n サーバアプリケーション
41、410 Xサーバ
411 サウンドサーバ(音楽サーバ)
90、91 アクセス許可データベース
50、51 リモート端末証明書管理部
70、71、170、171 証明書認証部
60、61 アプリケーション証明書管理部
80、81 認証結果集合データベース
100、101 認証キャッシュ部
110、111 アプリケーション証明書データベース

Claims (20)

  1. クライアントアプリケーションが動作するリモート端末と、前記クライアントアプリケーションからの接続を受付け可能なサーバアプリケーションが動作するローカル端末とを備え、
    前記リモート端末は、
    前記リモート端末の認証で用いるリモート端末証明書を管理するリモート端末証明書管理部と、
    前記クライアントアプリケーションのアプリケーション識別子と、前記クライアントアプリケーションのハッシュ値を当該クライアントアプリケーション固有の秘密鍵で暗号化した暗号化ハッシュ値と、前記クライアントアプリケーション固有の秘密鍵に対応する公開鍵を含み前記クライアントアプリケーションに関連付けられたアプリケーション証明書との組みを予め保持するアプリケーション証明書データベースと、
    前記クライアントアプリケーションが前記サーバアプリケーションに接続するときに、当該クライアントアプリケーションのアプリケーション識別子をキーとして前記アプリケーション証明書データベースから前記暗号化ハッシュ値と前記アプリケーション証明書を取得し、前記クライアントアプリケーションのハッシュ値が、前記アプリケーション証明書に含まれる前記公開鍵を用いて前記暗号化ハッシュ値から復号化したハッシュ値と等しいか否か調べるアプリケーション証明書管理部とを具備し、
    前記ローカル端末は、
    前記リモート端末証明書の認証結果と前記アプリケーション証明書の認証結果の集合との組みを予め保持する認証結果集合データベースと、
    前記アプリケーション証明書の認証結果と前記クライアントアプリケーションに許可する実行要求の集合との組みを予め保持するアクセス許可データベースと、
    前記サーバアプリケーションで前記クライアントアプリケーションからの接続を受け付けるときに、前記リモート端末から前記リモート端末証明書と前記アプリケーション証明書とを受け取り、前記リモート端末証明書と前記アプリケーション証明書とを認証し、前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから前記アプリケーション証明書の認証結果の集合を取得し、当該認証結果の集合に前記アプリケーション証明書の認証結果が含まれるか否か調べる証明書認証部とを具備することを特徴とするアプリケーションアクセス制御システム。
  2. 前記リモート端末は、前記クライアントアプリケーションの動作により、前記リモート端末証明書管理部から前記リモート端末証明書を取得し、前記アプリケーション証明書管理部から前記クライアントアプリケーションに対応するアプリケーション証明書を取得することを特徴とする請求項1記載のアプリケーションアクセス制御システム。
  3. 前記リモート端末は、前記クライアントアプリケーションの動作により、前記サーバアプリケーションに前記リモート端末証明書と前記アプリケーション証明書を送信することを特徴とする請求項1または2記載のアプリケーションアクセス制御システム。
  4. 前記ローカル端末は、前記サーバアプリケーションの動作により、前記証明書認証部により前記認証結果の集合に前記アプリケーション証明書の認証結果が含まれると調べられたときに、当該アプリケーション証明書の認証結果をもとに前記アクセス許可データベースから前記クライアントアプリケーションに許可する前記実行要求の集合を取得し、取得された前記実行要求の集合に含まれる実行要求のみを処理することを特徴とする請求項1乃至3のいずれか1項に記載のアプリケーションアクセス制御システム。
  5. 前記ローカル端末は、前記リモート端末証明書と前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから取得した認証結果の集合との組みと、前記アプリケーション証明書と前記アプリケーション証明書の認証結果との組みを保持する認証キャッシュ部をさらに具備することを特徴とする請求項1乃至4のいずれか1項に記載のアプリケーションアクセス制御システム。
  6. 前記証明書認証部が、前記リモート端末証明書と前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから取得した認証結果の集合との組みと、前記アプリケーション証明書と前記アプリケーション証明書の認証結果との組みを前記認証キャッシュ部に登録し、前記リモート端末証明書または前記アプリケーション証明書をキーとして前記認証キャッシュ部を検索し、前記認証キャッシュ部に登録されていないときのみ前記リモート端末証明書または前記アプリケーション証明書を認証することを特徴とする請求項5記載のアプリケーションアクセス制御システム。
  7. クライアントアプリケーションが動作するリモート端末との間で通信可能に接続され、前記クライアントアプリケーションからの接続を受付可能なサーバアプリケーションが動作するローカル端末であって、
    前記リモート端末の認証で用いるリモート端末証明書の認証結果と、前記クライアントアプリケーションに対応するアプリケーション証明書の認証結果の集合との組みを予め保持する認証結果集合データベースと、
    前記アプリケーション証明書の認証結果と、前記クライアントアプリケーションに許可する実行要求の集合との組みを予め保持するアクセス許可データベースと、
    前記サーバアプリケーションで前記クライアントアプリケーションからの接続を受け付けるときに、前記リモート端末から前記リモート端末証明書と前記アプリケーション証明書とを受け取り、前記リモート端末証明書と前記アプリケーション証明書とを認証し、前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから前記アプリケーション証明書の認証結果の集合を取得し、当該認証結果の集合に前記アプリケーション証明書の認証結果が含まれるか否か調べる証明書認証部とを具備することを特徴とするローカル端末。
  8. 前記証明書認証部により前記認証結果の集合に前記アプリケーション証明書の認証結果が含まれると調べられたときに、前記サーバアプリケーションの動作により、当該アプリケーション証明書の認証結果をもとに前記アクセス許可データベースから前記クライアントアプリケーションに許可する前記実行要求の集合を取得し、取得された前記実行要求の集合に含まれる実行要求のみを処理することを特徴とする請求項7記載のローカル端末。
  9. サーバアプリケーションが動作するローカル端末との間で通信可能に接続され、前記サーバアプリケーションに接続し得るクライアントアプリケーションが動作するリモート端末であって、
    前記リモート端末の認証に用いるリモート端末証明書を管理するリモート端末証明書管理部と、
    前記クライアントアプリケーションのアプリケーション識別子と、前記クライアントアプリケーションのハッシュ値を当該クライアントアプリケーション固有の秘密鍵で暗号化した暗号化ハッシュ値と、前記クライアントアプリケーション固有の秘密鍵に対応する公開鍵を含み前記クライアントアプリケーションに関連付けられたアプリケーション証明書との組みを予め保持するアプリケーション証明書データベースと、
    前記クライアントアプリケーションから前記サーバアプリケーションへの接続時に、前記アプリケーション識別子をキーとして前記アプリケーション証明書データベースから前記暗号化ハッシュ値と前記アプリケーション証明書とを取得し、取得された前記クライアントアプリケーションのハッシュ値が、前記アプリケーション証明書に含まれる前記公開鍵を用いて前記暗号化ハッシュ値から復号化したハッシュ値と等しいか否か調べるアプリケーション証明書管理部とを具備することを特徴とするリモート端末。
  10. 前記アプリケーション証明書管理部により前記クライアントアプリケーションのハッシュ値が前記復号化したハッシュ値と等しいと調べられたときに、前記クライアントアプリケーションの動作により、前記アプリケーション証明書を前記リモート端末証明書と共に前記サーバアプリケーションに送信することを特徴とする請求項9記載のリモート端末。
  11. クライアントアプリケーションが動作するリモート端末と、前記クライアントアプリケーションからの接続を受付け可能なサーバアプリケーションが動作するローカル端末とを備えたアプリケーションアクセス制御システムの動作方法であって、
    前記リモート端末が、前記リモート端末の認証で用いるリモート端末証明書をリモート端末証明書管理部により管理するステップと、
    前記リモート端末が、前記クライアントアプリケーションのアプリケーション識別子と、前記クライアントアプリケーションのハッシュ値を当該クライアントアプリケーション固有の秘密鍵で暗号化した暗号化ハッシュ値と、前記クライアントアプリケーション固有の秘密鍵に対応する公開鍵を含み前記クライアントアプリケーションに関連付けられたアプリケーション証明書との組みをアプリケーション証明書データベースに予め保持するステップと、
    前記ローカル端末が、前記リモート端末証明書の認証結果と前記アプリケーション証明書の認証結果の集合との組みを認証結果集合データベースに予め保持するステップと、
    前記ローカル端末が、前記アプリケーション証明書の認証結果と前記クライアントアプリケーションに許可する実行要求の集合との組みをアクセス許可データベースに予め保持するステップと、
    前記リモート端末が、前記クライアントアプリケーションから前記サーバアプリケーションへの接続時に、アプリケーション証明書管理部により、当該クライアントアプリケーションのアプリケーション識別子をキーとして前記アプリケーション証明書データベースから当該アプリケーション識別子に対応する前記暗号化ハッシュ値と前記アプリケーション証明書を取得し、前記クライアントアプリケーションのハッシュ値が、前記アプリケーション証明書に含まれる前記公開鍵を用いて前記暗号化ハッシュ値から復号化したハッシュ値と等しいか否か調べるステップと、
    前記ローカル端末が、前記サーバアプリケーションで前記クライアントアプリケーションからの接続を受け付けるときに、証明書認証部により、前記リモート端末から前記リモート端末証明書と前記アプリケーション証明書とを受け取り、前記リモート端末証明書と前記アプリケーション証明書とを認証し、前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから前記アプリケーション証明書の認証結果の集合を取得し、当該認証結果の集合に前記アプリケーション証明書の認証結果が含まれるか否か調べるステップとを具備することを特徴とするアプリケーションアクセス制御システムの動作方法。
  12. 前記リモート端末が、前記クライアントアプリケーションから前記サーバアプリケーションへの接続時に、前記クライアントアプリケーションの動作により、前記リモート端末証明書管理部から前記リモート端末証明書を取得すると共に、前記アプリケーション証明書管理部から前記クライアントアプリケーションに対応するアプリケーション証明書を取得するステップをさらに具備することを特徴とする請求項11記載のアプリケーションアクセス制御システムの動作方法。
  13. 前記リモート端末が、前記クライアントアプリケーションから前記サーバアプリケーションへの接続時に、前記クライアントアプリケーションの動作により、前記サーバアプリケーションに前記リモート端末証明書と前記アプリケーション証明書を送信するステップをさらに具備することを特徴とする請求項11または12記載のアプリケーションアクセス制御システムの動作方法。
  14. 前記ローカル端末が、前記証明書認証部により前記アプリケーション証明書の認証結果の集合に前記アプリケーション証明書の認証結果が含まれると調べられたときに、前記サーバアプリケーションの動作により、当該アプリケーション証明書の認証結果をもとに前記アクセス許可データベースから前記クライアントアプリケーションに許可する前記実行要求の集合を取得し、取得された前記実行要求の集合に含まれる実行要求のみを処理することを特徴とする請求項11乃至13のいずれか1項に記載のアプリケーションアクセス制御システムの動作方法。
  15. 前記ローカル端末が、前記リモート端末証明書と前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから取得した認証結果の集合との組みと、前記アプリケーション証明書と前記アプリケーション証明書の認証結果との組みを認証キャッシュ部に保持するステップをさらに具備することを特徴とする請求項11乃至14のいずれか1項に記載のアプリケーションアクセス制御システムの動作方法。
  16. 前記ローカル端末が、前記リモート端末証明書と前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから取得した認証結果の集合との組みと、前記アプリケーション証明書と前記アプリケーション証明書の認証結果との組みを前記認証キャッシュ部に登録し、前記リモート端末証明書または前記アプリケーション証明書をキーとして前記認証キャッシュ部を検索し、前記認証キャッシュ部に登録されていないときのみ前記リモート端末証明書または前記アプリケーション証明書を認証するステップをさらに具備することを特徴とする請求項15記載のアプリケーションアクセス制御システムの動作方法。
  17. クライアントアプリケーションが動作するリモート端末との間で通信可能に接続され、前記クライアントアプリケーションからの接続を受付可能なサーバアプリケーションが動作するローカル端末の動作方法であって、
    前記リモート端末の認証で用いるリモート端末証明書の認証結果と、前記クライアントアプリケーションに対応するアプリケーション証明書の認証結果の集合との組みを認証結果集合データベースに予め保持するステップと、
    前記アプリケーション証明書の認証結果と、前記クライアントアプリケーションに許可する実行要求の集合との組みをアクセス許可データベースに予め保持するステップと、
    前記サーバアプリケーションで前記クライアントアプリケーションからの接続を受け付けるときに、前記リモート端末から前記リモート端末証明書と前記アプリケーション証明書とを受け取り、前記リモート端末証明書と前記アプリケーション証明書とを認証し、前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから前記アプリケーション証明書の認証結果の集合を取得し、当該認証結果の集合に前記アプリケーション証明書の認証結果が含まれるか否か調べるステップと、
    前記認証結果の集合に前記アプリケーション証明書の認証結果が含まれると調べられたときに、前記サーバアプリケーションの動作により、当該アプリケーション証明書の認証結果をもとに前記アクセス許可データベースから前記クライアントアプリケーションに許可する前記実行要求の集合を取得し、取得された前記実行要求の集合に含まれる実行要求のみを処理するステップとを具備することを特徴とするローカル端末の動作方法。
  18. サーバアプリケーションが動作するローカル端末との間で通信可能に接続され、前記サーバアプリケーションに接続し得るクライアントアプリケーションが動作するリモート端末の動作方法であって、
    前記リモート端末の認証に用いるリモート端末証明書を管理するステップと、
    前記クライアントアプリケーションのアプリケーション識別子と、前記クライアントアプリケーションのハッシュ値を当該クライアントアプリケーション固有の秘密鍵で暗号化した暗号化ハッシュ値と、前記クライアントアプリケーション固有の秘密鍵に対応する公開鍵を含み前記クライアントアプリケーションに関連付けられたアプリケーション証明書との組みをアプリケーション証明書データベースに予め保持するステップと、
    前記クライアントアプリケーションから前記サーバアプリケーションへの接続時に、前記アプリケーション識別子をキーとして前記アプリケーション証明書データベースから前記暗号化ハッシュ値と前記アプリケーション証明書とを取得し、取得された前記クライアントアプリケーションのハッシュ値が、前記アプリケーション証明書に含まれる前記公開鍵を用いて前記暗号化ハッシュ値から復号化したハッシュ値と等しいか否か調べるステップと、
    前記クライアントアプリケーションのハッシュ値が前記復号化したハッシュ値と等しいと調べられたときに、前記クライアントアプリケーションの動作により、前記アプリケーション証明書を前記リモート端末証明書と共に前記サーバアプリケーションに送信するステップとを具備することを特徴とするリモート端末の動作方法。
  19. クライアントアプリケーションが動作するリモート端末との間で通信可能に接続され、前記クライアントアプリケーションからの接続を受付可能なサーバアプリケーションが動作するローカル端末の動作プログラムであって、
    コンピュータに、
    前記リモート端末の認証で用いるリモート端末証明書の認証結果と、前記クライアントアプリケーションに対応するアプリケーション証明書の認証結果の集合との組みを予め認証結果集合データベースに保持するステップと、
    前記アプリケーション証明書の認証結果と、前記クライアントアプリケーションに許可する実行要求の集合との組みを予めアクセス許可データベースに保持するステップと、
    前記サーバアプリケーションで前記クライアントアプリケーションからの接続を受け付けるときに、前記リモート端末から前記リモート端末証明書と前記アプリケーション証明書とを受け取り、前記リモート端末証明書と前記アプリケーション証明書とを認証し、前記リモート端末証明書の認証結果をキーとして前記認証結果集合データベースから前記アプリケーション証明書の認証結果の集合を取得し、当該認証結果の集合に前記アプリケーション証明書の認証結果が含まれるか否か調べるステップと、
    前記認証結果の集合に前記アプリケーション証明書の認証結果が含まれると調べられたときに、前記サーバアプリケーションの動作により、当該アプリケーション証明書の認証結果をもとに前記アクセス許可データベースから前記クライアントアプリケーションに許可する前記実行要求の集合を取得し、取得された前記実行要求の集合に含まれる実行要求のみを処理するステップとを実行させることを特徴とするローカル端末の動作プログラム。
  20. サーバアプリケーションが動作するローカル端末との間で通信可能に接続され、前記サーバアプリケーションに接続し得るクライアントアプリケーションが動作するリモート端末の動作プログラムであって、
    コンピュータに、
    前記リモート端末の認証に用いるリモート端末証明書を管理するステップと、
    前記クライアントアプリケーションのアプリケーション識別子と、前記クライアントアプリケーションのハッシュ値を当該クライアントアプリケーション固有の秘密鍵で暗号化した暗号化ハッシュ値と、前記クライアントアプリケーション固有の秘密鍵に対応する公開鍵を含み前記クライアントアプリケーションに関連付けられたアプリケーション証明書との組みをアプリケーション証明書データベースに予め保持するステップと、
    前記クライアントアプリケーションから前記サーバアプリケーションへの接続時に、前記アプリケーション識別子をキーとして前記アプリケーション証明書データベースから前記暗号化ハッシュ値と前記アプリケーション証明書とを取得し、取得された前記クライアントアプリケーションのハッシュ値が、前記アプリケーション証明書に含まれる前記公開鍵を用いて前記暗号化ハッシュ値から復号化したハッシュ値と等しいか否か調べるステップと、
    前記クライアントアプリケーションのハッシュ値が前記復号化したハッシュ値と等しいと調べられたときに、前記クライアントアプリケーションの動作により、前記アプリケーション証明書を前記リモート端末証明書と共に前記サーバアプリケーションに送信するステップとを実行させることを特徴とするリモート端末の動作プログラム。
JP2005075105A 2005-03-16 2005-03-16 ローカル端末、リモート端末、アプリケーションアクセス制御システム、その動作方法及び動作プログラム Expired - Fee Related JP4692922B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005075105A JP4692922B2 (ja) 2005-03-16 2005-03-16 ローカル端末、リモート端末、アプリケーションアクセス制御システム、その動作方法及び動作プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005075105A JP4692922B2 (ja) 2005-03-16 2005-03-16 ローカル端末、リモート端末、アプリケーションアクセス制御システム、その動作方法及び動作プログラム

Publications (2)

Publication Number Publication Date
JP2006260015A true JP2006260015A (ja) 2006-09-28
JP4692922B2 JP4692922B2 (ja) 2011-06-01

Family

ID=37099217

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005075105A Expired - Fee Related JP4692922B2 (ja) 2005-03-16 2005-03-16 ローカル端末、リモート端末、アプリケーションアクセス制御システム、その動作方法及び動作プログラム

Country Status (1)

Country Link
JP (1) JP4692922B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013513880A (ja) * 2009-12-15 2013-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 非同期クライアント・サーバ・トランザクションを保護するための方法、システム、およびコンピュータ使用可能プログラム製品
US11516020B2 (en) * 2018-06-06 2022-11-29 Tencent Technology (Shenzhen) Company Limited Key management method, apparatus, and system, storage medium, and computer device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143840A (ja) * 1997-11-05 1999-05-28 Hitachi Ltd 分散オブジェクトシステムおよびその方法
JP2003330557A (ja) * 2002-05-13 2003-11-21 Nec Corp アプリケーションアクセスコントロールシステムおよび同方式
JP2004102373A (ja) * 2002-09-05 2004-04-02 Hitachi Ltd アクセス管理サーバ、方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143840A (ja) * 1997-11-05 1999-05-28 Hitachi Ltd 分散オブジェクトシステムおよびその方法
JP2003330557A (ja) * 2002-05-13 2003-11-21 Nec Corp アプリケーションアクセスコントロールシステムおよび同方式
JP2004102373A (ja) * 2002-09-05 2004-04-02 Hitachi Ltd アクセス管理サーバ、方法及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013513880A (ja) * 2009-12-15 2013-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 非同期クライアント・サーバ・トランザクションを保護するための方法、システム、およびコンピュータ使用可能プログラム製品
US11516020B2 (en) * 2018-06-06 2022-11-29 Tencent Technology (Shenzhen) Company Limited Key management method, apparatus, and system, storage medium, and computer device

Also Published As

Publication number Publication date
JP4692922B2 (ja) 2011-06-01

Similar Documents

Publication Publication Date Title
JP4907895B2 (ja) プライベートデータを露出せずに通信ネットワークを介してパスワードで保護されたプライベートデータを回復する方法およびシステム
US7774611B2 (en) Enforcing file authorization access
US7904952B2 (en) System and method for access control
US7051204B2 (en) Methods and system for providing a public key fingerprint list in a PK system
US8839357B2 (en) Method, system, and computer-readable storage medium for authenticating a computing device
US9137017B2 (en) Key recovery mechanism
US10397008B2 (en) Management of secret data items used for server authentication
US20140282840A1 (en) Managing data handling policies
JP2019522412A (ja) 登録・認可方法、装置及びシステム
US11729175B2 (en) Blockchain folding
JP2010531516A (ja) 安全でないネットワークを介する装置のプロビジョニング及びドメイン加入エミュレーション
KR102189554B1 (ko) 단말 장치, 서버 장치 및 블록체인을 이용한 fido 범용 인증 방법
US10990692B2 (en) Managing data handling policies
US8638932B2 (en) Security method and system and computer-readable medium storing computer program for executing the security method
CN110771124B (zh) 对本地网络上的数据存储系统的访问的基于云的管理
JP6378424B1 (ja) 無欠性及び保安性が強化された使用者認証方法
US20090210719A1 (en) Communication control method of determining whether communication is permitted/not permitted, and computer-readable recording medium recording communication control program
JP4692922B2 (ja) ローカル端末、リモート端末、アプリケーションアクセス制御システム、その動作方法及び動作プログラム
JP2013223171A (ja) 公開鍵認証基盤統制システム、認証局サーバ、利用者端末、公開鍵認証基盤統制方法、およびプログラム
US20140282838A1 (en) Managing data handling policies
JP7351873B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP5631164B2 (ja) マルチクラスタ分散処理制御システム、代表クライアント端末、マルチクラスタ分散処理制御方法
JP2008051569A (ja) 自動分析装置
CN113282948A (zh) 一种信息系统使用方法及信息系统
JP2005318399A (ja) データ通信制御システム及び通信管理サーバ並びに通信制御サーバ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080213

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080516

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20101001

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20101001

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110131

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140304

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4692922

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110213

LAPS Cancellation because of no payment of annual fees