権限管理システム、認証サーバ、権限管理方法および権限管理プログラム
【課題】分散情報および分散情報を用いて復元された秘密情報の漏洩を防止し、より適切にユーザの権限を管理する。
【解決手段】認証サーバ2は、分散情報のアドレスを示すデータであるトークンをユーザ毎に生成し、各ユーザに送信するトークン生成手段と、ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、所定の操作権限である特権アカウントの要求メッセージを受け付けて、要求メッセージに含まれる各トークンのアドレスを秘密管理サーバ3に送信し、アドレスに対応する分散情報を用いて秘密情報の復号に成功したか否かの成否結果を秘密管理サーバ3から取得する取得手段と、秘密情報の復号に成功した場合、要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有する。
【解決手段】認証サーバ2は、分散情報のアドレスを示すデータであるトークンをユーザ毎に生成し、各ユーザに送信するトークン生成手段と、ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、所定の操作権限である特権アカウントの要求メッセージを受け付けて、要求メッセージに含まれる各トークンのアドレスを秘密管理サーバ3に送信し、アドレスに対応する分散情報を用いて秘密情報の復号に成功したか否かの成否結果を秘密管理サーバ3から取得する取得手段と、秘密情報の復号に成功した場合、要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザの権限を管理する権限管理技術に関する。
【背景技術】
【0002】
近年、秘密分散法を用いたセキュリティ技術が研究されている。例えば、非特許文献1には、秘密分散法を用いて暗号を多重化する方法が記載されている。秘密分散法は、秘密情報を複数の分散情報(分割データ)に分割し、所定の数以上の分散情報を集めた場合にのみ元データの秘密情報に復元できるセキュリティ技術である。
【0003】
また、特許文献1には、秘密分散法を用いて分割された分散情報の漏洩を、ユーザIDおよびパスワードを用いて防止する認証技術が記載されている。
【特許文献1】特開2003−333028
【非特許文献1】岡本龍明著,「現代暗号」,産業図書,1997年,p.216
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、秘密分散法では、所定の数以上の分散情報を集めないと秘密情報を復元することができない。しかしながら、所定の数以上の分散情報を一旦集めた後は、これらの分散情報を用いて秘密情報の復元を何度でも行うことができる。また、分散情報を用いて復元される秘密情報が、ユーザにとってアクセス可能な装置上で復元された場合、秘密情報が漏洩し、不正目的で再使用される危険性がある。なお、特許文献1に記載された認証技術では、これらについて考慮されていない。
【0005】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、分散情報および分散情報を用いて復元された秘密情報の漏洩を防止し、より適切にユーザの権限を管理することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明では、分散情報のアドレスを示すトークンを用いて、各ユーザに割り当てられた分散情報の使用権限を管理する。
【0007】
例えば、第1の本発明は、複数のユーザの権限を管理する認証サーバと、複数のユーザ各々が使用する複数の端末と、を有する権限管理システムであって、ユーザ各々は、当該ユーザに割り当てられた、所定の秘密情報を分割した分散情報の使用権限を有する。そして、端末各々は、分散情報のアドレスを示すデータであるトークンを記憶する記憶手段と、当該端末を使用する自ユーザが使用権限を有する分散情報の自トークン、または、自ユーザ以外の他ユーザが使用権限を有する分散情報の他トークンを、認証サーバから受信し、記憶手段に記憶するトークン受信手段と、記憶手段に記憶された自トークンを認証サーバに送信し、自トークンを他ユーザに譲渡するトークン譲渡手段と、所定の操作権限である特権アカウントを要求する要求メッセージを、記憶手段に記憶されたトークンとともに認証サーバに送信する要求メッセージ送信手段と、を有する。認証サーバは、ユーザ毎に、当該ユーザの自トークンを生成し、当該ユーザが使用する自端末に送信するトークン生成手段と、端末各々から送信された自トークンを、他ユーザの他端末に転送する転送手段と、要求メッセージを受信し、当該要求メッセージに含まれるトークン各々のアドレスを、秘密情報を復号する外部システムに送信するアドレス送信手段と、外部システムがアドレスに対応する分散情報を用いて秘密情報の復号に成功した場合、要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有する。
【0008】
また、第2の本発明は、複数のユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムであって、秘密情報は、暗号化された複数の分散情報に分割され、ユーザ各々は、当該ユーザに割り当てられたいずれかの分散情報の使用権限を有する。そして、認証サーバは、分散情報のアドレスを示すデータであるトークンをユーザ毎に生成し、各ユーザに送信するトークン生成手段と、ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、所定の操作権限である特権アカウントの要求メッセージを受け付けて、要求メッセージに含まれる各トークンのアドレスを秘密管理サーバに送信し、秘密管理サーバから秘密情報の復号に成功したか否かの成否結果を取得する取得手段と、秘密情報の復号に成功した場合、要求メッセージを送信したユーザに特権アカウントを付与するアカウント付与手段と、を有する。そして、秘密管理サーバは、複数の分散情報を管理するための分散情報管理データベースと、認証サーバの取得手段からアドレスを受信し、分散情報管理データベースを参照してアドレスに対応する分散情報を取得し、当該分散情報を用いて秘密情報を復号する復号手段と、復号手段が行った復号が成功したか否かの成否結果を、認証サーバに送信する送信手段と、を有する。
【0009】
また、第3の本発明は、ユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける認証サーバであって、秘密情報は、暗号化された複数の分散情報に分割され、ユーザ各々は、当該ユーザに割り当てられたいずれかの分散情報の使用権限を有する。そして、認証サーバは、分散情報のアドレスを示すデータであるトークンをユーザ毎に生成し、各ユーザに送信するトークン生成手段と、ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、所定の操作権限である特権アカウントの要求メッセージを受け付けて、要求メッセージに含まれる各トークンのアドレスを秘密管理サーバに送信し、アドレスに対応する分散情報を用いて秘密情報の復号に成功したか否かの成否結果を秘密管理サーバから取得する取得手段と、秘密情報の復号に成功した場合、要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有する。
【発明の効果】
【0010】
本発明では、分散情報を用いて復元された秘密情報の漏洩を防止することで、より適切にユーザの権限を管理することにある。
【発明を実施するための最良の形態】
【0011】
以下、本発明の実施の形態について説明する。
【0012】
図1は、本発明の一実施形態が適用された権限管理システムの全体構成図である。
【0013】
図示するように、本実施形態の権限管理スシステムは、複数の認証端末1と、認証サーバ2と、秘密管理サーバ3と、VPN装置4とを有する。認証端末1各々は、インターネットなどのネットワーク5により、認証サーバ2と接続されている。なお、認証サーバ2が後述する個人認証処理を行った後は、ネットワーク5内でVPN(Virtual Private Network)が生成され、VPN装置4を介してデータの送受信が行われる。また、認証サーバ2と、秘密管理サーバ3とは、例えば専用線(または、LAN)6などにより接続されている。
【0014】
認証端末1各々は、各ユーザが使用する端末装置である。各ユーザは、当該ユーザにあらかじめ割り当てられた分散情報の使用権限を有するものとする。なお、分散情報は、秘密情報を所定の方法により複数に分割したものである。認証サーバ2は、各ユーザの権限を管理する。秘密管理サーバ3は、所定の数の分散情報から秘密情報を復元する。
【0015】
VPN装置4は、VPNを利用した通信を行うための装置である。VPNは、インターネットなどのネットワーク5内に構築された仮想専用線である。VPNでは、通信拠点間を専用線のように相互に接続するため、機密性の高い通信を実現することができる。VPN装置4はVPNセッション(コネクション)の生成および管理を行う。
【0016】
次に、認証端末1について、より詳細に説明する。
【0017】
図2は、認証端末1の機能構成を示した図である。認証端末1は、図示するように、入力受付部11と、処理部12と、出力部13と、記憶部14と、を有する。入力受付部11は、入力装置(不図示)を用いて入力された各種の操作指示を受け付ける。処理部12は、入力受付部11が受け付けた指示に応じた処理を行う。出力部13は、各種の情報を出力装置(不図示)に出力する。記憶部14には、認証サーバ2から送信されたトークン(不図示)が記憶されている。トークンは、分散情報の格納場所であるアドレス(ポインタ)が設定されたデータである。なお、トークンについては後述する。
【0018】
次に、認証サーバ2について、より詳細に説明する。
【0019】
図3は、認証サーバ2の機能構成を示した図である。認証サーバ2は、図示するように、認証部21とトークン管理部22と、監視部23と、記憶部25と、を有する。認証部21は、各ユーザから送信された認証情報に基づいて、ユーザの個人認証を行う。トークン管理部22は、ユーザ毎にトークンを生成し、管理する。監視部23は、トークンの譲渡状況、および、各認証端末から送信された操作内容を、認証端末に送信する。
【0020】
記憶部25には、認証DB26と、管理DB27とが記憶されている。認証DB26は、各ユーザの正当性を認証(判別)するためのデータベースである。認証DB26には、ユーザ毎に、ユーザIDと、認証情報のハッシュ値とが記憶されている。なお、本実施形態では、認証情報としてユーザIDとパスワードとを用いることとする。管理DB27は、トークン管理部22が生成したトークンを記憶するデータベースである。トークン管理DB27には、ユーザ毎に生成したトークン、および、暗号化したトークンのハッシュ値が、記憶されている。
【0021】
次に、秘密管理サーバ3について、より詳細に説明する。
【0022】
図4は、秘密管理サーバ3の機能構成を示した図である。秘密管理サーバ3は、図示するように、分散情報生成部31と、分散情報復号部32と、データ管理部33と、記憶部34と、を有する。
【0023】
分散情報生成部31は、秘密分散法を用いて、秘密情報(元データ)を暗号化しながら複数の分散情報に分割する。なお、生成された分散情報各々の使用権限は、各ユーザにあらかじめ割り当てられているものとする。分散情報復号部32は、分散情報を一定の数だけ揃えた場合、各分散情報から秘密情報(元データ)を復元する。データ管理部33は、記憶部34に記憶された分散情報管理DB35から、分散情報のアドレスを検索する。
【0024】
記憶部34には分散情報管理DB35が記憶されている。分散情報管理DB35は、分散情報生成部31が生成した各分散情報の格納場所であるアドレス(ポインタ)を記憶したデータベースである。本実施形態の分散情報管理DB35は、分散情報毎に、アドレスと分散情報自体とが対応付けられて記憶されているものとする。しかしながら、本発明はこれに限定されず、分散情報自体については、他のコンピュータ装置(不図示)に格納されている場合であってもよい。例えば、分散情報管理DB35は、分散情報自体を格納する替わりに、分散情報が格納されているURL(Uniform Resource Locator)を設定することとしてもよい。なお、アドレスにはユーザIDが含まれているものとする。
【0025】
上記説明した、認証端末1、認証サーバ2、および、秘密管理サーバ3は、いずれも、例えば図5に示すようなCPU901と、メモリ902と、HDD等の外部記憶装置903と、キーボードやマウスなどの入力装置904と、ディスプレイやプリンタなどの出力装置905と、ネットワーク接続するための通信制御装置906と、を備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、各装置の各機能が実現される。
【0026】
例えば、認証端末1、認証サーバ2、および、秘密管理サーバ3の各機能は、認証端末1用のプログラムの場合は認証端末1のCPU901が、認証サーバ2用のプログラムの場合は認証サーバ2のCPU901が、そして、秘密管理サーバ3用のプログラムの場合は秘密管理サーバ3のCPU901が、それぞれ実行することにより実現される。なお、認証端末1の記憶部14には、認証端末1のメモリ902または外部記憶装置903が、認証サーバ2の記憶部25には、認証サーバ2のメモリ902または外部記憶装置903が、そして、秘密管理サーバ3の記憶部34には、秘密管理サーバ3のメモリ902または外部記憶装置903が用いられる。また、外部記憶装置903、入力装置904および出力装置905については、各装置が必要に応じて備えるものとする。
【0027】
次に、本システムの処理の概要を説明する。
【0028】
本実施形態では、秘密管理サーバ3は、秘密分散法の1つである(K,N)閾値法を用いて、秘密情報を複数の分散情報に分割するものとする。(K,N)閾値法は、秘密情報を暗号化しながらN個の分散情報に分割し、K(K≦N)個以上集めた場合にのみ秘密情報を復元できるようにする方法である。
【0029】
図6は、本システムの処理を模式的に示した図である。なお、本実施形態では、秘密情報を4(N=4)個の分散情報に分割し、分散情報を3(K=3)個以上集めた場合にのみ復元することができる(3,4)閾値法の場合を例に、以下説明する。
【0030】
図示する例では、4つの分散情報各々の使用権限は、ユーザA、ユーザB、ユーザC、および、ユーザDが、それぞれ有するものとする。そして、各ユーザは、それぞれの認証端末(認証端末A、認証端末B、認証端末Cおよび認証端末D)を用いて、認証サーバ2にアクセスする。そして、認証サーバ2は、各認証端末から送信された認証情報を用いて、各ユーザが正当なユーザか否か判別する個人認証を行う(S10)。
【0031】
正当なユーザであると判別した場合、認証サーバ2は、各ユーザに割り当てられた分散情報のアドレスが設定されたトークンを生成し、各認証端末に送信する。ユーザは、トークンを取得することにより、当該トークンに示された分散情報の使用権限を行使(所有)することができる。
【0032】
そして、ユーザは、認証サーバ2から受信した当該ユーザ用のトークンを、他のユーザに譲渡することができる。これにより、ユーザは、自分の分散情報の使用権限を、他のユーザに権限委譲する。図示する例では、ユーザAおよびユーザCは、認証端末Aおよび認証端末Cを用いて、ユーザAのトークン8AおよびユーザCのトークン8Cを、ユーザBの認証端末Bに譲渡する(S30)。
ユーザBは、譲渡されたトークンにより他ユーザの分散情報を使用する権限を有する。本実施形態では(3,4)閾値法を用いているため、ユーザBは、3つ以上の分散情報の使用権限を有する場合、秘密情報を復号することができる権限を有する。すなわち、ユーザBは、3つ以上のトークンを保有した場合、全ユーザの集合権限である特権アカウントを有する特権ユーザに昇格することができる。
【0033】
図示する例では、ユーザBは、自分のトークン8Bと、譲渡されたユーザAおよびユーザBの2つのトークン8A、8Cを所有している。そのため、ユーザBは、認証端末Bを用いて、取得した3つのトークンを認証サーバ2に送信する。そして、認証サーバ2は、認証端末Bから受信したトークンの集合認証を行う(S50)。すなわち、認証サーバ2は、受信したトークン各々のアドレスを秘密管理サーバ3に送信する。そして、認証サーバ2は、秘密管理サーバ3から秘密情報の復元に成功したか否かの成否結果を受信し、成否結果に応じてユーザBに特権アカウントを付与するか否かを決定する。
【0034】
なお、ユーザBはこの時点において3つのトークンを保有しているため、秘密管理サーバ3は復元に成功する。そして、認証サーバ2は、ユーザBに特権アカウントを付与する。ユーザBは、特権アカウントを取得することにより、全ユーザからの権限を委譲されたものとみなされ特権ユーザに昇格する。そして、特権ユーザとなったユーザBは、一般ユーザには認められていないシステム管理を行う権限を取得する。例えば、コンピュータのハードディスク増設などのリソース操作、ユーザID変更などのユーザ操作、システムログファイル削除のようなデータ操作を行う権限を取得する。
【0035】
また、自身のトークンを他ユーザに譲渡したユーザA(またはユーザC)は、トークンの譲渡をキャンセル(トークンの引き戻し)をすることができる(S70)。すなわち、ユーザAは、認証端末Aを用いて、認証サーバ2にトークン8Aのキャンセル指示を送信する。そして、認証サーバ2は、ユーザAの認証端末Aにトークン8Aを送信し、この状態で再度、集合認証(S50)を行う。この場合、ユーザBが取得しているトークンは、自身のトークン8BとユーザCのトークン8Cの2つである。すなわち、トークンの数は3個未満であるため、秘密管理サーバ3は、秘密情報を復号することができない。したがって、認証サーバ2は、ユーザBの特権アカウントを消滅させる。これにより、ユーザBは、特権ユーザから一般ユーザに降格する。
【0036】
次に、図6で説明した個人認証処理(S10)、トークン譲渡処理(S30)、集合認証処理(S50)、キャンセル処理(S70)の各処理について、より詳細に説明する。
【0037】
図7は、個人認証処理(図6:S10)の処理フロー図である。
【0038】
ユーザは、認証端末1の入力装置を用いて、当該ユーザの認証情報を入力する。本実施形態では、認証情報にユーザIDとパスワードとを用いることとする。そして、認証端末1の入力受付部11は、ユーザから入力された認証情報を受け付ける。そして、処理部12は、受け付けた認証情報を、ネットワーク5を介して認証サーバ2に送信する(S11)。
【0039】
認証サーバ2の認証部21は、認証情報を受信し、受信した認証情報のハッシュ値を算出する(S12)。すなわち、認証部21は、ユーザIDおよびパスワードの認証情報から固定長の疑似乱数を生成する。そして、認証部21は、算出したハッシュ値が、記憶部25の認証DB26に記憶された当該ユーザのハッシュ値と一致するか否かを照合する(S13)。なお、認証DB26に認証情報自体を記憶することなく、認証情報のハッシュ値を記憶することにより、認証情報の漏洩を防止することができる。
【0040】
そして、ハッシュ値が一致した場合、認証部21は、VPNの生成をVPN装置4に指示する(S14)。VPN装置4は、認証サーバ2からの指示を受け付けて、ネットワーク5内でVPNを生成し、認証サーバ2と認証端末1間のVPNセッションを確立する。なお、VPNセッションの確立後、認証サーバ2と認証端末1間では、VPN装置4を経由したVPNによりメッセージの送受信が行われる。そして、認証サーバ2の認証部21は、VPN装置4を介して、認証結果(ハッシュ値が一致したか否かの照合結果)を認証端末1に送信する(S15)。
【0041】
認証端末1の処理部12は、認証結果を受信する(S16)。図示する例では、認証に成功(すなわち、ハッシュ値が一致)したものとする。なお、S13において認証に失敗した場合(すなわち、認証DBのハッシュ値と一致しない場合)、処理部12は、出力部13を制御して、認証に失敗したことを示すエラーメッセージを出力装置に出力し、本個人認証処理を終了する。
【0042】
そして、認証端末1の入力受付部11は、ユーザが入力装置を用いて入力したトークン要求指示の入力を受け付ける。そして、処理部12は、トークン要求メッセージを、VPN装置4を介して認証サーバ2に送信する(S17)。
【0043】
そして、認証サーバ2のトークン管理部22は、トークン要求メッセージを受け付けると、秘密管理サーバ3にアクセスして、当該ユーザが使用権限を有する分散情報の格納場所を取得する(S18)。すなわち、トークン管理部22は、ユーザIDを検索キーとして、当該ユーザに割り当てられた分散情報の格納場所であるアドレス(ポインタ)を要求する。秘密管理サーバ3のデータ管理部33は、分散情報管理DB35に記憶されている当該ユーザIDを含むアドレスを検索し、検索したアドレスを認証サーバ2に送信する。
【0044】
そして、認証サーバ2のトークン管理部22は、分散情報のアドレスを含むトークンを生成する(S19)。すなわち、トークン管理部22は、分散情報のアドレス、有効期限およびセッション番号を含むトークンを生成する。なお、トークンのデータ構造については後述する。
【0045】
そして、トークン管理部22は、生成したトークンを、S11で認証端末1から送信された認証情報を用いて暗号化し、暗号化したトークンのハッシュ値を算出する(S20)。そして、トークン管理部22は、暗号化前のトークンと算出したハッシュ値とを、トークン管理DB27に記憶する。
【0046】
そして、トークン管理部22は、暗号化したトークンを、VPN装置4を介して、認証端末1に送信する(S21)。そして、認証端末1の処理部12は、認証サーバ2から暗号化されたトークンを受信し、受信したトークンを記憶部14に記憶する(S22)。
【0047】
なお、S20において、トークンを要求したユーザの認証情報を用いてトークンを暗号化することにより、当該認証情報を入力したユーザ以外は、暗号化されたトークンを復号することができない。また、暗号化したトークンのハッシュ値をトークン管理DB27に記憶することで、トークンが改ざんされた場合、トークン管理部22はトークの改ざんを容易に検知することができる。
【0048】
図8は、トークン(暗号化前)のデータ構造の一例を示した図である。
【0049】
図示するトークンは、ユーザID81と、秘密情報ID82と、分割情報番号83と、有効期限84と、セッション番号85と、譲渡相手86とを有する。図7のS18において秘密管理サーバ3から取得する分散情報のアドレスには、本実施形態では、ユーザID81、秘密情報ID82、および、分割情報番号83を用いることとする。秘密情報ID82は、秘密管理サーバ3の分散情報生成部31が設定するユニークな識別番号であって、例えば、各秘密情報から分散情報を生成した順番(連番)などを用いることができる。分割情報番号83は、分散情報生成部31が秘密情報を分散情報に分割した際に設定される、各分散情報内でユニークな識別番号である。本実施形では、4つの分散情報に分割するため、1から4のいずれかの値が設定される。
【0050】
有効期限84は、トークンが使用可能な期限が設定される。認証サーバ2のトークン管理部22は、トークン要求メッセージを受信した日時に、所定の期間を加えた日時を有効期限84に設定する。セッション番号85は、トークンを識別するためにトークン管理部22が設定する識別番号であって、例えば、認証サーバ2のプロセスIDやスレッド番号などを用いることができる。譲渡相手86には、次に説明するトークン譲渡処理において、トークンを譲渡した他ユーザのユーザIDが設定される。なお、トークン譲渡処理が行われるまでは、譲渡相手86はスペース(空白)である。
【0051】
次に、トークン譲渡処理(図6:S30)について説明する。
【0052】
図9は、トークン譲渡処理の処理フロー図である。トークン譲渡処理は、認証端末1(ユーザ)が自分のトークンを取得した後に行われる処理である。なお、図示するトークン譲渡処理は、ユーザAがユーザBにトークンを譲渡する場合を例に説明する。また、ユーザAが使用する認証端末1は認証端末A、ユーザBが使用する認証端末1は認証端末Bとする。
【0053】
まず、ユーザAは、自分のトークン(以下、「トークンA」)を、ユーザBに譲渡するトークン譲渡指示を、入力装置を用いて認証端末Aに入力する。なお、トークン譲渡指示を入力するための入力画面については後述する。そして、認証端末Aの入力受付部11はは、譲渡相手(ユーザB)のユーザIDを含むトークン譲渡指示を受け付ける。そして、処理部12は、記憶部14に記憶されたトークンA(暗号化状態)と、譲渡相手であるユーザBのユーザIDと、を含むトークン譲渡メッセージを、VPN装置4を介して認証サーバ2に送信する(S31)。そして、処理部12は、記憶部14に記憶されたトークンAを削除する。
【0054】
なお、ユーザAは、トークン譲渡指示において、トークンの有効期限を入力することとしてもよい。この場合、トークン譲渡メッセージには、入力された有効期限が含まれる。
【0055】
認証サーバ2のトークン管理部22は、トークン譲渡メッセージを受信し、当該トークン譲渡メッージに含まれるトークンAのハッシュ値を算出する。そして、トークン管理部22は、トークン管理DB27に記憶されたトークンAのハッシュ値と、算出したハッシュ値とを照合する(S32)。ハッシュ値が一致しない場合、トークン管理部22は、認証端末Aから送信されたトークンAが改ざんされたものと判別し、本処理を終了する。一方、ハッシュ値が一致する場合、トークン管理部22は、暗号化されたトークンAをユーザAの認証情報を用いて復号する(S33)。なお、ユーザAの認証情報は、前述の個人認証処理(図7参照)のS11で送信されたユーザAのユーザIDおよびパスワードであって、記憶部25に一時的に記憶されているものとする。
【0056】
そして、トークン管理部22は、トークン譲渡メッセージに含まれる譲渡相手のユーザIDを、復号したトークン(図8参照)の譲渡相手86に追加する(S34)。なお、トークン譲渡メッセージに有効期限が含まれている場合は、当該有効期限を復号したトークンの有効期限84に設定(更新)する。
【0057】
そして、トークン管理部22は、更新したトークンAを、ユーザAの認証情報を用いて暗号化し、暗号化したトークンAのハッシュ値を算出する(S35)。そして、トークン管理部22は、個人認証処理(図7:S20)においてトークン管理DB27に記憶されたトークンAおよびハッシュ値を更新する。
【0058】
そして、トークン管理部22は、暗号化したトークンAを、VPN装置4を介してユーザBの認証端末Bに送信する(S36)。そして、認証端末Bの処理部12は、認証サーバ2から暗号化されたトークンAを受信し、受信したトークンAを記憶部14に記憶する(S37)。なお、認証端末Bは、図7に示す個人認証処理で認証サーバ2のログインし、VPNセッションが確立されているものとする。
【0059】
図10は、トークン譲渡指示入力画面の一例を示す図である。
【0060】
図示する入力画面は、図9のS31において、ユーザAがトークンAをユーザBに譲渡する場合の入力画面例である。本画面は、現時点におけるトークンの譲渡状況を示すステータス表示欄101と、端末入力欄102と、ユーザID入力欄103と、有効時間入力欄104と、実行ボタン105と、を有する。
【0061】
図示するステータス表示欄101では、ユーザBに譲渡されたトークンが現時点で2個であることを示している。端末入力欄102には、譲渡するトークンの送信先認証端末の識別情報が入力される。図示する例では、認証端末Bの識別情報(TerminalB)が入力されている。ユーザID入力欄103には、トークンの譲渡相手のユーザIDが入力される。図示する例では、ユーザBのユーザID(UserB)が入力されている。有効時間には、必要に応じて、譲渡するトークンの有効時間または有効期限が入力される。実行ボタン105は、各入力欄への入力完了後にトークン譲渡指示を送信するためのための操作ボタンである。
【0062】
なお、図10のステータス表示欄101以外の表示画面を用いて、トークンの譲渡状況を示すこととしてもよい。
【0063】
図11は、トークンの譲渡状態を、ペトリネットモデルを用いて示した図である。ぺトリネットモデルは、システムにおける情報・信号の流れをモデル化したものである。図示する例では、図6に示すように、ユーザAおよびユーザCが、各自のトークンをユーザBに譲渡することにより、所定のユーザに3つのトークンが集まったこと示している。そのため、本実施形態の(3,4)閾値法において、所定のユーザは、特権アカウントを有することを、図示するペトリネットモデルは示している。
【0064】
なお、図10または図11に示すトークンの譲渡状況は、認証端末1からの要求により、認証サーバ2の監視部23が認証端末1に送信するものとする。すなわち、監視部23は、トークン管理DB27に記憶された各トークンの譲渡相手86を読み出し、トークン譲渡状況の表示画面を生成する。ユーザは、このようなトークンの譲渡状況を参照することにより、トークンの譲渡先のユーザを決定することができる。
【0065】
次に、集合認証処理(図6:S50)について説明する。
【0066】
図12は、集合認証処理の処理フロー図である。図示する集合認証処理は、ユーザBが、特権アカウントを要求する場合を例に説明する。なお、ユーザBの認証端末Bの記憶部14には、自身のトークンである「トークンB」と、ユーザAおよびユーザCから譲渡された「トークンA」および「トークンC」とが記憶されているものとする。
【0067】
まず、認証端末Bの入力受付部11は、ユーザBが入力装置を用いて入力した特権アカウントの要求指示を受け付ける。特権アカウントは、一定数以上のユーザから権限委譲されたユーザのみ付与される特別の権利である。特権アカウントを付与されたユーザは、一般ユーザには認められていないシステム管理を行う権限を取得する。例えば、コンピュータのハードディスク増設などのリソース操作、ユーザID変更などのユーザ操作、システムログファイル削除のようなデータ操作を行う権限を取得する。
【0068】
そして、認証端末Bの処理部12は、記憶部14に記憶されたトークンA、トークンBおよびトークンCを読み出し、これらのトークンを含む特権アカウント要求メッセージを認証サーバ2に送信する(S51)。そして、処理部12は、記憶部14からトークンA、トークンBおよびトークンCを削除する。
【0069】
そして、認証サーバ2のトークン管理部22は、VPN装置4を介して、特権アカウント要求メッセージを受信する。そして、トークン管理部22は、特権アカウント要求メッセージに含まれるトークン各々のハッシュ値を算出する。そして、トークン管理部22は、トークン管理DB27に記憶された各トークンのハッシュ値と、算出したハッシュ値とを照合する(S52)。
【0070】
ハッシュ値が一致しないトークンが1つでも存在する場合、トークン管理部22は、認証端末Bから送信されたトークンのいずれかが改ざんされたものと判別し、本処理を終了する。一方、全てのトークンのハッシュ値がトークン管理DBのハッシュ値と一致した場合、トークン管理部22は、暗号化されたトークン各々を、対応するユーザの認証情報を用いて復号する(S53)。すなわち、トークン管理部22は、トークンAをユーザAの認証情報を用いて、トークンBをユーザBの認証情報を用いて、トークンCをユーザCの認証情報を用いて復号する。なお、各ユーザの認証情報は、前述の個人認証処理(図7参照)のS11で送信された各ユーザのユーザIDおよびパスワードであって、記憶部25に一時的に記憶されているものとする。
【0071】
そして、トークン管理部22は、トークン毎に、トークンに設定された有効期限を経過しているか否か判別する(S54)。すなわち、トークン管理DB22は、OS等の機能(システム時計)により取得した現時点の時刻が各トークンに設定された有効期限を経過しているか否かを判別する。有効期限が過ぎているトークンが1つでも存在する場合、トークン管理部22は、本処理を終了する。
【0072】
全てのトークンの有効期限を経過していない場合、トークン管理部22は、トークン毎に、認証端末Bから受信したトークンに設定されたセッション番号および譲渡相手と、トークン管理DB27に記憶された当該トークンのセッション番号および譲渡相手と照合する(S54)。すなわち、トークン管理部22は、例えばトークンAの場合、トークン管理DB27に記憶されたトークンAのセッション番号および譲渡相手を特定し、受信したトークンに設定されたセッション番号および譲渡相手と一致するか否かを判別する。一致しないトークンが1つでも存在する場合、トークン管理部22は、本処理を終了する。
【0073】
全トークンについてセッション番号および譲渡相手が一致した場合、トークン管理部22は、各トークンに設定されたアドレスを、秘密管理サーバ3に送信する(S55)。なお、本実施形態におけるアドレスは、図8に示すトークンのユーザID81、秘密情報ID82、および、分割情報番号83である。
【0074】
秘密管理サーバ3の分散情報復号部32は、認証サーバ2から各アドレスを受信する。そして、分散情報復号部32は、受信した各アドレスを検索キーとして分散情報管理DB35にアクセスし、各分散情報を取得する(S56)。すなわち、分散情報復号部32は、各アドレスに対応する分散情報を分散情報管理DB35から読み出す。なお、分散情報管理DB35にアドレスと、分散情報のURL(Uniform Resource Locator)と、が格納されている場合、分散情報復号部32は、受信したアドレスに対応するURLにアクセスし分散情報を取得する。
【0075】
そして、分散情報復号部32は、取得した各分散情報から秘密情報を復号し、復号の成否(復号に成功したか否か)を認証サーバ2に送信する(S57)。なお、図示する例では、3つのが分散情報を用いて復号するため、分散情報復号部32は秘密情報の復号に成功するものとする。
【0076】
認証サーバ2のトークン管理部22は、復号の成否を受信する。そして、秘密管理サーバ3が復号に成功した場合、トークン管理部22は、ユーザBに特権アカウントを付与するための特権トークンを生成する(S58)。特権トークンは、図8に示すトークンと同様である。ただし、特権トークンの分割情報番号83および譲渡相手86には、スペースが設定されるものとする。また、有効期限84には、各トークンに設定された有効期限の中で、最も短い(近い)有効期限が設定されるものとする。
【0077】
そして、トークン管理部22は、記憶部25に記憶された所定の暗号化フレーズを用いて特権トークンを暗号化し、暗号化したトークンのハッシュ値を算出する(S59)。そして、トークン管理部22は、暗号化前の特権トークンと、算出したハッシュ値とを、トークン管理DB27に記憶する。
【0078】
そして、トークン管理部22は、生成した特権トークンをユーザBの認証端末Bに送信する(S60)。認証端末Bの処理部12は、特権トークンを受信し、記憶部14に記憶する(S61)。ユーザBは特権トークンを取得することにより特権アカウントを有する特権ユーザとなる。これにより、ユーザBは、例えば、コンピュータのハードディスク増設などのリソース操作、ユーザID変更などのユーザ操作、システムログファイル削除のようなデータ操作を行う権限を取得する。
【0079】
なお、ユーザBは、特権アカウントによる特別な操作を行う場合、認証端末Bを用いて特権トークンを認証サーバ2に送信する。認証サーバ2のトークン管理部22は、特権トークンのハッシュ値およびセッション番号を、トークン管理DB27に記憶されたハッシュ値およびセッション番号と照合する。また、トークン管理部22は、特権トークンの有効期限が経過していないかを判別する。このように特権トークンの有効性を確認した後、トークン管理DB22は、ユーザBを特権ユーザであると判別する。これにより、ユーザBは、特別な操作権限を用いて、各種の操作を行うことができる。
【0080】
次に、キャンセル処理(図6:S70)について説明する。ユーザBにトークンを譲渡したユーザAおよびユーザCは、ユーザBの操作内容を各認証端末から監視することができる。そして、ユーザBが不正な操作を行っていると判断した場合、ユーザAおよびユーザCは、一旦譲渡したトークンをキャンセル(引き戻す)することができる。なお、操作内容の監視画面については、後述する。
【0081】
図13は、キャンセル処理の処理フロー図である。図示するキャンセル処理は、ユーザAが、ユーザBに譲渡したトークンAをキャンセルする場合を例に説明する。
【0082】
まず、認証端末Aの入力受付部11は、ユーザAが入力装置を用いて入力したキャンセル指示を受け付ける。そして、認証端末Aの処理部12は、キャンセルメッセージを認証サーバ2に送信する(S71)。
【0083】
認証サーバのトークン管理部22は、キャンセルメッセージを受信し、トークン管理DB27に記憶されたユーザAのトークンAを特定する。そして、特定したトークンAの譲渡相手86をスペースに更新する(S72)。なお、スペースに更新される前の譲渡相手には、ユーザBのユーザIDが記憶されているものとする。また、トークン管理部22は、必要に応じてセッション番号85を更新する。
【0084】
そして、トークン管理部22は、更新したトークンAを、ユーザAの認証情報を用いて暗号化し、ハッシュ値を算出する(S73)。そして、トークン管理部22は、トークン管理DB27に更新したトークンA、およびハッシュ値を記憶(更新)する。そして、トークン管理部22は、暗号化したトークンを認証端末Aに送信する(S74)。そして、認証端末Aは、トークンAを受信し、記憶部14に記憶する(S75)。これにより、ユーザAは、ユーザAに割り当てられた分散情報の使用権限を再び有する。
【0085】
そして、トークン管理部22は、ユーザBの特権アカウントを再評価する。すなわち、トークン管理部22は、特権アカウントを有するユーザBが現時点で保有するトークン各々のアドレスを秘密管理サーバ3に送信する(S76)。なお、図示する例では、ユーザAのトークンAはキャンセルされたため、トークン管理部22は、トークンBとトークンCの2つトークンに記憶された各アドレスを秘密管理サーバ3に送信する。
【0086】
秘密管理サーバ3の分散情報復号部32は、認証サーバ2から各アドレスを受信する。そして、分散情報復号部32は、受信した各アドレスを検索キーとして分散情報管理DB35にアクセスし、各分散情報を取得する(S77)。そして、分散情報復号部32は、取得した各分散情報から秘密情報の復号を行い、復号の成否(復号に成功したか否か)を認証サーバ2に送信する(S78)。なお、図示する例では、分散情報復号部32は、2つの分散情報しか取得できないため、秘密情報の復号に失敗するものとする。
【0087】
秘密管理サーバ3復号に失敗した場合、認証サーバ2のトークン管理部22は、ユーザBの特権アカウントを消滅させる(S79)。すなわち、トークン管理部22は、トークン管理DB27から特権トークンを削除する。そして、トークン管理部22は、VPN装置4に認証端末BとのVPNセッションの切断を指示する(S80)。VPN装置4は、認証端末BとのVPNセッションを切断する。これにより、ユーザBの特権アカウントは消滅する。したがって、ユーザBが再度特権アカウントを取得する場合、図12に示す集合認証処理を行う必要がある。
【0088】
次に、ユーザの操作内容の監視画面について説明する。
【0089】
図14は、監視画面の一例を示したものである。図示する監視画面は、トークンの譲渡先ユーザの操作内容を表示する操作表示部121と、トークンの譲渡のキャンセル指示を入力するキャンセルボタン122と、を有する。なお、図6に示すようように、ユーザAがユーザBにトークンAを譲渡した場合、ユーザAの認証端末Aに表示される操作表示部121には、ユーザBの操作内容が表示される。
【0090】
ユーザAは、操作表示部121に表示されるユーザBの操作内容を必要に応じて参照することにより、想定していないユーザBの不正操作(または不正操作の兆し)を検知することができる。図示する例では、ユーザBがデータの削除処理のコマンドを投入したことを示している。これにより、ユーザAは、ユーザBが重要なデータを破壊する恐れがあると認識する。この場合、ユーザAは、キャンセルボタン122を押下し、ユーザBに譲渡したトークンのキャンセル指示を入力する。これにより図13のキャンセル処理が実行される。なお、不正操作としては、データの削除処理のほか、記憶媒体(フレキシブルディスクなど)へのデータのダウンロード(コピー)処理、記憶媒体に格納されたデータのアップロード処理などが考えられる。
【0091】
認証サーバ2の監視部23は、例えば、図1の認証端末がUNIX(登録商標)のTelnet機能を用いて認証サーバにアクセスする場合、特権ユーザのキーボード入力を当該Telnet仮想端末(tty)にリダイレクトすることにより、特権ユーザの操作内容をトークン譲渡元のユーザ認証端末にエコーバックする。
【0092】
以上、本発明の一実施形態を説明した。
【0093】
本実施形態では、ユーザは、分散情報そのものではなく、分散情報のアドレスが記憶されたトークンを保持することにより、秘密情報を復号する権限の一部を有する。そして、ユーザは、自らのトークンを他のユーザに譲渡することにより秘密情報を復号する権限を委譲する。そして、認証サーバ2は、ユーザから受け付けた各トークンのアドレスを秘密管理サーバ3に送信し、秘密情報の復元に成功したか否かの成否結果に基づいて、当該ユーザに特権アカウントを付与するか否かを決定する。したがって、ユーザおよびユーザがアクセス可能な認証サーバ2は、復元した秘密情報を取得することができない。このため、本実施形態では、復元した秘密情報の漏洩を防止し、より高いセキュリティを確保することができる。
【0094】
また、ユーザに送信されるトークンには分散情報のアドレスのみが記憶され、分散情報自体はトークンに記憶されていない。すなわち、分散情報は、ユーザには公開されず隠蔽されている。したがって、所定の数以上のトークンを取得したユーザであっても、トークン自身を用いて秘密情報を復元できない。このため、ユーザの不正行為を防止することができる。
【0095】
また、ユーザは、他のユーザにトークンを譲渡して権限を委譲した場合であっても、権限の委譲をキャンセルすることができる。これにより、特権アカウントを有するユーザが不正な操作を行った場合、権限委譲をキャンセルして特権アカウントを消滅させることができる。すなわち、特権アカウントを付与されたユーザに対して牽制することができる。なお、トークンを譲渡された他のユーザは、分散情報自体は譲渡されないため、譲渡されたトークンをコピーするなどして不正に再利用することができない。
【0096】
また、ユーザは、トークンを譲渡した他のユーザの操作内容を、監視することができる。これにより、ユーザは、特権アカウントを有する他のユーザの不正操作(または不正操作の兆し)を検知し、トークンの譲渡をキャンセルすることができる。また、特権アカウントを付与されたユーザを牽制することができる。
【0097】
また、本実施形態では、認証サーバ2は、生成したトークンを対応するユーザのユーザIDおよびパスワードを用いて暗号化し、認証端末に送信する。これにより、トークンの内容(ユーザID、セッション番号など)を書き換えて、他人のユーザのトークンを取得する不正行為を防止することができる。
【0098】
また、本実施形態では、暗号化したトークンのハッシュ値を認証サーバのトークン管理DB27に記憶する、これにより、仮にトークンが不正に改ざんされた場合であっても、トークン管理DB27に記憶されたハッシュ値を比較することで、容易に改ざんを検出することができる。
【0099】
また、本実施形態では、個人認証処理(図7参照)の後、認証端末各々と認証サーバ2は、VPNによりデータの送受信を行う。これにより、機密性の高い通信を実現することができる。また、不正な第3者によるなりすましを防止することができる。
【0100】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、上記の実施形態では、秘密分散法を用いて分散した分散情報を用いている。しかしながら、本発明はこれに限定されず、例えば、秘密管理サーバに推論エンジンと推論ルールを用いることにしてもよい。推論エンジンは、推論ルールを適用して、ある事象から結論を導き出すための人工知能システム(推論機構)である。N人に権限を分散している場合、「N人のうちK人の権限が揃った場合、集合認証が成功する」という推論ルールを適用することにして、秘密分散法の装置の代用としてもよい。
【0101】
また、本実施形態では、認証サーバ2が生成したトークンを、認証端末1の記憶部14に格納することとした。しかしながら、生成したトークンをICカード等に記憶することとしてもよい。ICカード等にトークンを記憶することにより、ユーザは、トークンを容易に携帯することができる。なお、ICカード等にトークンを記憶する場合、認証端末1は、ICカードリーダ/ライタ装置を備える必要がある。
【0102】
また、本実施形態の権限管理システムでは、認証サーバ2と秘密管理サーバ3とをそれぞれ有する。しかしながら、認証サーバ2が秘密管理サーバ3の機能を有することとしてもよい。
【図面の簡単な説明】
【0103】
【図1】本発明の一実施形態が適用された権限管理システムの全体構成を示す図である。
【図2】認証端末1の機能構成を示す図である。
【図3】認証サーバの機能構成を示す図である。
【図4】秘密管理サーバの機能構成を示す図である
【図5】各装置のハードウェア構成例を示す図である。
【図6】権限管理システムの処理概要を模式的に示した図である。
【図7】個人認証処理のフローチャートである。
【図8】トークンのデータ構造の一例を示す図である。
【図9】トークン譲渡処理の処理フローチャートである。
【図10】トークン譲渡指示入力画面の一例を示す図である。
【図11】トークン譲渡状況を示すペトリネットモデルである。
【図12】集合認証処理のフローチャートである。
【図13】トークン譲渡キャンセル処理のフローチャートである。
【図14】監視画面の一例を示す図である。
【符号の説明】
【0104】
1:認証端末、11:入力受付部、12:処理部、13:出力部、14:記憶部、2:認証サーバ、21:認証部、22:トークン管理部、23:監視部、25:記憶部、26:認証DB、27:トークン管理DB、3:秘密管理サーバ、31:分散情報生成部、32:分散情報復号部、33:データ管理部、34:記憶部、35:分散情報管理DB
【技術分野】
【0001】
本発明は、ユーザの権限を管理する権限管理技術に関する。
【背景技術】
【0002】
近年、秘密分散法を用いたセキュリティ技術が研究されている。例えば、非特許文献1には、秘密分散法を用いて暗号を多重化する方法が記載されている。秘密分散法は、秘密情報を複数の分散情報(分割データ)に分割し、所定の数以上の分散情報を集めた場合にのみ元データの秘密情報に復元できるセキュリティ技術である。
【0003】
また、特許文献1には、秘密分散法を用いて分割された分散情報の漏洩を、ユーザIDおよびパスワードを用いて防止する認証技術が記載されている。
【特許文献1】特開2003−333028
【非特許文献1】岡本龍明著,「現代暗号」,産業図書,1997年,p.216
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、秘密分散法では、所定の数以上の分散情報を集めないと秘密情報を復元することができない。しかしながら、所定の数以上の分散情報を一旦集めた後は、これらの分散情報を用いて秘密情報の復元を何度でも行うことができる。また、分散情報を用いて復元される秘密情報が、ユーザにとってアクセス可能な装置上で復元された場合、秘密情報が漏洩し、不正目的で再使用される危険性がある。なお、特許文献1に記載された認証技術では、これらについて考慮されていない。
【0005】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、分散情報および分散情報を用いて復元された秘密情報の漏洩を防止し、より適切にユーザの権限を管理することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明では、分散情報のアドレスを示すトークンを用いて、各ユーザに割り当てられた分散情報の使用権限を管理する。
【0007】
例えば、第1の本発明は、複数のユーザの権限を管理する認証サーバと、複数のユーザ各々が使用する複数の端末と、を有する権限管理システムであって、ユーザ各々は、当該ユーザに割り当てられた、所定の秘密情報を分割した分散情報の使用権限を有する。そして、端末各々は、分散情報のアドレスを示すデータであるトークンを記憶する記憶手段と、当該端末を使用する自ユーザが使用権限を有する分散情報の自トークン、または、自ユーザ以外の他ユーザが使用権限を有する分散情報の他トークンを、認証サーバから受信し、記憶手段に記憶するトークン受信手段と、記憶手段に記憶された自トークンを認証サーバに送信し、自トークンを他ユーザに譲渡するトークン譲渡手段と、所定の操作権限である特権アカウントを要求する要求メッセージを、記憶手段に記憶されたトークンとともに認証サーバに送信する要求メッセージ送信手段と、を有する。認証サーバは、ユーザ毎に、当該ユーザの自トークンを生成し、当該ユーザが使用する自端末に送信するトークン生成手段と、端末各々から送信された自トークンを、他ユーザの他端末に転送する転送手段と、要求メッセージを受信し、当該要求メッセージに含まれるトークン各々のアドレスを、秘密情報を復号する外部システムに送信するアドレス送信手段と、外部システムがアドレスに対応する分散情報を用いて秘密情報の復号に成功した場合、要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有する。
【0008】
また、第2の本発明は、複数のユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムであって、秘密情報は、暗号化された複数の分散情報に分割され、ユーザ各々は、当該ユーザに割り当てられたいずれかの分散情報の使用権限を有する。そして、認証サーバは、分散情報のアドレスを示すデータであるトークンをユーザ毎に生成し、各ユーザに送信するトークン生成手段と、ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、所定の操作権限である特権アカウントの要求メッセージを受け付けて、要求メッセージに含まれる各トークンのアドレスを秘密管理サーバに送信し、秘密管理サーバから秘密情報の復号に成功したか否かの成否結果を取得する取得手段と、秘密情報の復号に成功した場合、要求メッセージを送信したユーザに特権アカウントを付与するアカウント付与手段と、を有する。そして、秘密管理サーバは、複数の分散情報を管理するための分散情報管理データベースと、認証サーバの取得手段からアドレスを受信し、分散情報管理データベースを参照してアドレスに対応する分散情報を取得し、当該分散情報を用いて秘密情報を復号する復号手段と、復号手段が行った復号が成功したか否かの成否結果を、認証サーバに送信する送信手段と、を有する。
【0009】
また、第3の本発明は、ユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける認証サーバであって、秘密情報は、暗号化された複数の分散情報に分割され、ユーザ各々は、当該ユーザに割り当てられたいずれかの分散情報の使用権限を有する。そして、認証サーバは、分散情報のアドレスを示すデータであるトークンをユーザ毎に生成し、各ユーザに送信するトークン生成手段と、ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、所定の操作権限である特権アカウントの要求メッセージを受け付けて、要求メッセージに含まれる各トークンのアドレスを秘密管理サーバに送信し、アドレスに対応する分散情報を用いて秘密情報の復号に成功したか否かの成否結果を秘密管理サーバから取得する取得手段と、秘密情報の復号に成功した場合、要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有する。
【発明の効果】
【0010】
本発明では、分散情報を用いて復元された秘密情報の漏洩を防止することで、より適切にユーザの権限を管理することにある。
【発明を実施するための最良の形態】
【0011】
以下、本発明の実施の形態について説明する。
【0012】
図1は、本発明の一実施形態が適用された権限管理システムの全体構成図である。
【0013】
図示するように、本実施形態の権限管理スシステムは、複数の認証端末1と、認証サーバ2と、秘密管理サーバ3と、VPN装置4とを有する。認証端末1各々は、インターネットなどのネットワーク5により、認証サーバ2と接続されている。なお、認証サーバ2が後述する個人認証処理を行った後は、ネットワーク5内でVPN(Virtual Private Network)が生成され、VPN装置4を介してデータの送受信が行われる。また、認証サーバ2と、秘密管理サーバ3とは、例えば専用線(または、LAN)6などにより接続されている。
【0014】
認証端末1各々は、各ユーザが使用する端末装置である。各ユーザは、当該ユーザにあらかじめ割り当てられた分散情報の使用権限を有するものとする。なお、分散情報は、秘密情報を所定の方法により複数に分割したものである。認証サーバ2は、各ユーザの権限を管理する。秘密管理サーバ3は、所定の数の分散情報から秘密情報を復元する。
【0015】
VPN装置4は、VPNを利用した通信を行うための装置である。VPNは、インターネットなどのネットワーク5内に構築された仮想専用線である。VPNでは、通信拠点間を専用線のように相互に接続するため、機密性の高い通信を実現することができる。VPN装置4はVPNセッション(コネクション)の生成および管理を行う。
【0016】
次に、認証端末1について、より詳細に説明する。
【0017】
図2は、認証端末1の機能構成を示した図である。認証端末1は、図示するように、入力受付部11と、処理部12と、出力部13と、記憶部14と、を有する。入力受付部11は、入力装置(不図示)を用いて入力された各種の操作指示を受け付ける。処理部12は、入力受付部11が受け付けた指示に応じた処理を行う。出力部13は、各種の情報を出力装置(不図示)に出力する。記憶部14には、認証サーバ2から送信されたトークン(不図示)が記憶されている。トークンは、分散情報の格納場所であるアドレス(ポインタ)が設定されたデータである。なお、トークンについては後述する。
【0018】
次に、認証サーバ2について、より詳細に説明する。
【0019】
図3は、認証サーバ2の機能構成を示した図である。認証サーバ2は、図示するように、認証部21とトークン管理部22と、監視部23と、記憶部25と、を有する。認証部21は、各ユーザから送信された認証情報に基づいて、ユーザの個人認証を行う。トークン管理部22は、ユーザ毎にトークンを生成し、管理する。監視部23は、トークンの譲渡状況、および、各認証端末から送信された操作内容を、認証端末に送信する。
【0020】
記憶部25には、認証DB26と、管理DB27とが記憶されている。認証DB26は、各ユーザの正当性を認証(判別)するためのデータベースである。認証DB26には、ユーザ毎に、ユーザIDと、認証情報のハッシュ値とが記憶されている。なお、本実施形態では、認証情報としてユーザIDとパスワードとを用いることとする。管理DB27は、トークン管理部22が生成したトークンを記憶するデータベースである。トークン管理DB27には、ユーザ毎に生成したトークン、および、暗号化したトークンのハッシュ値が、記憶されている。
【0021】
次に、秘密管理サーバ3について、より詳細に説明する。
【0022】
図4は、秘密管理サーバ3の機能構成を示した図である。秘密管理サーバ3は、図示するように、分散情報生成部31と、分散情報復号部32と、データ管理部33と、記憶部34と、を有する。
【0023】
分散情報生成部31は、秘密分散法を用いて、秘密情報(元データ)を暗号化しながら複数の分散情報に分割する。なお、生成された分散情報各々の使用権限は、各ユーザにあらかじめ割り当てられているものとする。分散情報復号部32は、分散情報を一定の数だけ揃えた場合、各分散情報から秘密情報(元データ)を復元する。データ管理部33は、記憶部34に記憶された分散情報管理DB35から、分散情報のアドレスを検索する。
【0024】
記憶部34には分散情報管理DB35が記憶されている。分散情報管理DB35は、分散情報生成部31が生成した各分散情報の格納場所であるアドレス(ポインタ)を記憶したデータベースである。本実施形態の分散情報管理DB35は、分散情報毎に、アドレスと分散情報自体とが対応付けられて記憶されているものとする。しかしながら、本発明はこれに限定されず、分散情報自体については、他のコンピュータ装置(不図示)に格納されている場合であってもよい。例えば、分散情報管理DB35は、分散情報自体を格納する替わりに、分散情報が格納されているURL(Uniform Resource Locator)を設定することとしてもよい。なお、アドレスにはユーザIDが含まれているものとする。
【0025】
上記説明した、認証端末1、認証サーバ2、および、秘密管理サーバ3は、いずれも、例えば図5に示すようなCPU901と、メモリ902と、HDD等の外部記憶装置903と、キーボードやマウスなどの入力装置904と、ディスプレイやプリンタなどの出力装置905と、ネットワーク接続するための通信制御装置906と、を備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、各装置の各機能が実現される。
【0026】
例えば、認証端末1、認証サーバ2、および、秘密管理サーバ3の各機能は、認証端末1用のプログラムの場合は認証端末1のCPU901が、認証サーバ2用のプログラムの場合は認証サーバ2のCPU901が、そして、秘密管理サーバ3用のプログラムの場合は秘密管理サーバ3のCPU901が、それぞれ実行することにより実現される。なお、認証端末1の記憶部14には、認証端末1のメモリ902または外部記憶装置903が、認証サーバ2の記憶部25には、認証サーバ2のメモリ902または外部記憶装置903が、そして、秘密管理サーバ3の記憶部34には、秘密管理サーバ3のメモリ902または外部記憶装置903が用いられる。また、外部記憶装置903、入力装置904および出力装置905については、各装置が必要に応じて備えるものとする。
【0027】
次に、本システムの処理の概要を説明する。
【0028】
本実施形態では、秘密管理サーバ3は、秘密分散法の1つである(K,N)閾値法を用いて、秘密情報を複数の分散情報に分割するものとする。(K,N)閾値法は、秘密情報を暗号化しながらN個の分散情報に分割し、K(K≦N)個以上集めた場合にのみ秘密情報を復元できるようにする方法である。
【0029】
図6は、本システムの処理を模式的に示した図である。なお、本実施形態では、秘密情報を4(N=4)個の分散情報に分割し、分散情報を3(K=3)個以上集めた場合にのみ復元することができる(3,4)閾値法の場合を例に、以下説明する。
【0030】
図示する例では、4つの分散情報各々の使用権限は、ユーザA、ユーザB、ユーザC、および、ユーザDが、それぞれ有するものとする。そして、各ユーザは、それぞれの認証端末(認証端末A、認証端末B、認証端末Cおよび認証端末D)を用いて、認証サーバ2にアクセスする。そして、認証サーバ2は、各認証端末から送信された認証情報を用いて、各ユーザが正当なユーザか否か判別する個人認証を行う(S10)。
【0031】
正当なユーザであると判別した場合、認証サーバ2は、各ユーザに割り当てられた分散情報のアドレスが設定されたトークンを生成し、各認証端末に送信する。ユーザは、トークンを取得することにより、当該トークンに示された分散情報の使用権限を行使(所有)することができる。
【0032】
そして、ユーザは、認証サーバ2から受信した当該ユーザ用のトークンを、他のユーザに譲渡することができる。これにより、ユーザは、自分の分散情報の使用権限を、他のユーザに権限委譲する。図示する例では、ユーザAおよびユーザCは、認証端末Aおよび認証端末Cを用いて、ユーザAのトークン8AおよびユーザCのトークン8Cを、ユーザBの認証端末Bに譲渡する(S30)。
ユーザBは、譲渡されたトークンにより他ユーザの分散情報を使用する権限を有する。本実施形態では(3,4)閾値法を用いているため、ユーザBは、3つ以上の分散情報の使用権限を有する場合、秘密情報を復号することができる権限を有する。すなわち、ユーザBは、3つ以上のトークンを保有した場合、全ユーザの集合権限である特権アカウントを有する特権ユーザに昇格することができる。
【0033】
図示する例では、ユーザBは、自分のトークン8Bと、譲渡されたユーザAおよびユーザBの2つのトークン8A、8Cを所有している。そのため、ユーザBは、認証端末Bを用いて、取得した3つのトークンを認証サーバ2に送信する。そして、認証サーバ2は、認証端末Bから受信したトークンの集合認証を行う(S50)。すなわち、認証サーバ2は、受信したトークン各々のアドレスを秘密管理サーバ3に送信する。そして、認証サーバ2は、秘密管理サーバ3から秘密情報の復元に成功したか否かの成否結果を受信し、成否結果に応じてユーザBに特権アカウントを付与するか否かを決定する。
【0034】
なお、ユーザBはこの時点において3つのトークンを保有しているため、秘密管理サーバ3は復元に成功する。そして、認証サーバ2は、ユーザBに特権アカウントを付与する。ユーザBは、特権アカウントを取得することにより、全ユーザからの権限を委譲されたものとみなされ特権ユーザに昇格する。そして、特権ユーザとなったユーザBは、一般ユーザには認められていないシステム管理を行う権限を取得する。例えば、コンピュータのハードディスク増設などのリソース操作、ユーザID変更などのユーザ操作、システムログファイル削除のようなデータ操作を行う権限を取得する。
【0035】
また、自身のトークンを他ユーザに譲渡したユーザA(またはユーザC)は、トークンの譲渡をキャンセル(トークンの引き戻し)をすることができる(S70)。すなわち、ユーザAは、認証端末Aを用いて、認証サーバ2にトークン8Aのキャンセル指示を送信する。そして、認証サーバ2は、ユーザAの認証端末Aにトークン8Aを送信し、この状態で再度、集合認証(S50)を行う。この場合、ユーザBが取得しているトークンは、自身のトークン8BとユーザCのトークン8Cの2つである。すなわち、トークンの数は3個未満であるため、秘密管理サーバ3は、秘密情報を復号することができない。したがって、認証サーバ2は、ユーザBの特権アカウントを消滅させる。これにより、ユーザBは、特権ユーザから一般ユーザに降格する。
【0036】
次に、図6で説明した個人認証処理(S10)、トークン譲渡処理(S30)、集合認証処理(S50)、キャンセル処理(S70)の各処理について、より詳細に説明する。
【0037】
図7は、個人認証処理(図6:S10)の処理フロー図である。
【0038】
ユーザは、認証端末1の入力装置を用いて、当該ユーザの認証情報を入力する。本実施形態では、認証情報にユーザIDとパスワードとを用いることとする。そして、認証端末1の入力受付部11は、ユーザから入力された認証情報を受け付ける。そして、処理部12は、受け付けた認証情報を、ネットワーク5を介して認証サーバ2に送信する(S11)。
【0039】
認証サーバ2の認証部21は、認証情報を受信し、受信した認証情報のハッシュ値を算出する(S12)。すなわち、認証部21は、ユーザIDおよびパスワードの認証情報から固定長の疑似乱数を生成する。そして、認証部21は、算出したハッシュ値が、記憶部25の認証DB26に記憶された当該ユーザのハッシュ値と一致するか否かを照合する(S13)。なお、認証DB26に認証情報自体を記憶することなく、認証情報のハッシュ値を記憶することにより、認証情報の漏洩を防止することができる。
【0040】
そして、ハッシュ値が一致した場合、認証部21は、VPNの生成をVPN装置4に指示する(S14)。VPN装置4は、認証サーバ2からの指示を受け付けて、ネットワーク5内でVPNを生成し、認証サーバ2と認証端末1間のVPNセッションを確立する。なお、VPNセッションの確立後、認証サーバ2と認証端末1間では、VPN装置4を経由したVPNによりメッセージの送受信が行われる。そして、認証サーバ2の認証部21は、VPN装置4を介して、認証結果(ハッシュ値が一致したか否かの照合結果)を認証端末1に送信する(S15)。
【0041】
認証端末1の処理部12は、認証結果を受信する(S16)。図示する例では、認証に成功(すなわち、ハッシュ値が一致)したものとする。なお、S13において認証に失敗した場合(すなわち、認証DBのハッシュ値と一致しない場合)、処理部12は、出力部13を制御して、認証に失敗したことを示すエラーメッセージを出力装置に出力し、本個人認証処理を終了する。
【0042】
そして、認証端末1の入力受付部11は、ユーザが入力装置を用いて入力したトークン要求指示の入力を受け付ける。そして、処理部12は、トークン要求メッセージを、VPN装置4を介して認証サーバ2に送信する(S17)。
【0043】
そして、認証サーバ2のトークン管理部22は、トークン要求メッセージを受け付けると、秘密管理サーバ3にアクセスして、当該ユーザが使用権限を有する分散情報の格納場所を取得する(S18)。すなわち、トークン管理部22は、ユーザIDを検索キーとして、当該ユーザに割り当てられた分散情報の格納場所であるアドレス(ポインタ)を要求する。秘密管理サーバ3のデータ管理部33は、分散情報管理DB35に記憶されている当該ユーザIDを含むアドレスを検索し、検索したアドレスを認証サーバ2に送信する。
【0044】
そして、認証サーバ2のトークン管理部22は、分散情報のアドレスを含むトークンを生成する(S19)。すなわち、トークン管理部22は、分散情報のアドレス、有効期限およびセッション番号を含むトークンを生成する。なお、トークンのデータ構造については後述する。
【0045】
そして、トークン管理部22は、生成したトークンを、S11で認証端末1から送信された認証情報を用いて暗号化し、暗号化したトークンのハッシュ値を算出する(S20)。そして、トークン管理部22は、暗号化前のトークンと算出したハッシュ値とを、トークン管理DB27に記憶する。
【0046】
そして、トークン管理部22は、暗号化したトークンを、VPN装置4を介して、認証端末1に送信する(S21)。そして、認証端末1の処理部12は、認証サーバ2から暗号化されたトークンを受信し、受信したトークンを記憶部14に記憶する(S22)。
【0047】
なお、S20において、トークンを要求したユーザの認証情報を用いてトークンを暗号化することにより、当該認証情報を入力したユーザ以外は、暗号化されたトークンを復号することができない。また、暗号化したトークンのハッシュ値をトークン管理DB27に記憶することで、トークンが改ざんされた場合、トークン管理部22はトークの改ざんを容易に検知することができる。
【0048】
図8は、トークン(暗号化前)のデータ構造の一例を示した図である。
【0049】
図示するトークンは、ユーザID81と、秘密情報ID82と、分割情報番号83と、有効期限84と、セッション番号85と、譲渡相手86とを有する。図7のS18において秘密管理サーバ3から取得する分散情報のアドレスには、本実施形態では、ユーザID81、秘密情報ID82、および、分割情報番号83を用いることとする。秘密情報ID82は、秘密管理サーバ3の分散情報生成部31が設定するユニークな識別番号であって、例えば、各秘密情報から分散情報を生成した順番(連番)などを用いることができる。分割情報番号83は、分散情報生成部31が秘密情報を分散情報に分割した際に設定される、各分散情報内でユニークな識別番号である。本実施形では、4つの分散情報に分割するため、1から4のいずれかの値が設定される。
【0050】
有効期限84は、トークンが使用可能な期限が設定される。認証サーバ2のトークン管理部22は、トークン要求メッセージを受信した日時に、所定の期間を加えた日時を有効期限84に設定する。セッション番号85は、トークンを識別するためにトークン管理部22が設定する識別番号であって、例えば、認証サーバ2のプロセスIDやスレッド番号などを用いることができる。譲渡相手86には、次に説明するトークン譲渡処理において、トークンを譲渡した他ユーザのユーザIDが設定される。なお、トークン譲渡処理が行われるまでは、譲渡相手86はスペース(空白)である。
【0051】
次に、トークン譲渡処理(図6:S30)について説明する。
【0052】
図9は、トークン譲渡処理の処理フロー図である。トークン譲渡処理は、認証端末1(ユーザ)が自分のトークンを取得した後に行われる処理である。なお、図示するトークン譲渡処理は、ユーザAがユーザBにトークンを譲渡する場合を例に説明する。また、ユーザAが使用する認証端末1は認証端末A、ユーザBが使用する認証端末1は認証端末Bとする。
【0053】
まず、ユーザAは、自分のトークン(以下、「トークンA」)を、ユーザBに譲渡するトークン譲渡指示を、入力装置を用いて認証端末Aに入力する。なお、トークン譲渡指示を入力するための入力画面については後述する。そして、認証端末Aの入力受付部11はは、譲渡相手(ユーザB)のユーザIDを含むトークン譲渡指示を受け付ける。そして、処理部12は、記憶部14に記憶されたトークンA(暗号化状態)と、譲渡相手であるユーザBのユーザIDと、を含むトークン譲渡メッセージを、VPN装置4を介して認証サーバ2に送信する(S31)。そして、処理部12は、記憶部14に記憶されたトークンAを削除する。
【0054】
なお、ユーザAは、トークン譲渡指示において、トークンの有効期限を入力することとしてもよい。この場合、トークン譲渡メッセージには、入力された有効期限が含まれる。
【0055】
認証サーバ2のトークン管理部22は、トークン譲渡メッセージを受信し、当該トークン譲渡メッージに含まれるトークンAのハッシュ値を算出する。そして、トークン管理部22は、トークン管理DB27に記憶されたトークンAのハッシュ値と、算出したハッシュ値とを照合する(S32)。ハッシュ値が一致しない場合、トークン管理部22は、認証端末Aから送信されたトークンAが改ざんされたものと判別し、本処理を終了する。一方、ハッシュ値が一致する場合、トークン管理部22は、暗号化されたトークンAをユーザAの認証情報を用いて復号する(S33)。なお、ユーザAの認証情報は、前述の個人認証処理(図7参照)のS11で送信されたユーザAのユーザIDおよびパスワードであって、記憶部25に一時的に記憶されているものとする。
【0056】
そして、トークン管理部22は、トークン譲渡メッセージに含まれる譲渡相手のユーザIDを、復号したトークン(図8参照)の譲渡相手86に追加する(S34)。なお、トークン譲渡メッセージに有効期限が含まれている場合は、当該有効期限を復号したトークンの有効期限84に設定(更新)する。
【0057】
そして、トークン管理部22は、更新したトークンAを、ユーザAの認証情報を用いて暗号化し、暗号化したトークンAのハッシュ値を算出する(S35)。そして、トークン管理部22は、個人認証処理(図7:S20)においてトークン管理DB27に記憶されたトークンAおよびハッシュ値を更新する。
【0058】
そして、トークン管理部22は、暗号化したトークンAを、VPN装置4を介してユーザBの認証端末Bに送信する(S36)。そして、認証端末Bの処理部12は、認証サーバ2から暗号化されたトークンAを受信し、受信したトークンAを記憶部14に記憶する(S37)。なお、認証端末Bは、図7に示す個人認証処理で認証サーバ2のログインし、VPNセッションが確立されているものとする。
【0059】
図10は、トークン譲渡指示入力画面の一例を示す図である。
【0060】
図示する入力画面は、図9のS31において、ユーザAがトークンAをユーザBに譲渡する場合の入力画面例である。本画面は、現時点におけるトークンの譲渡状況を示すステータス表示欄101と、端末入力欄102と、ユーザID入力欄103と、有効時間入力欄104と、実行ボタン105と、を有する。
【0061】
図示するステータス表示欄101では、ユーザBに譲渡されたトークンが現時点で2個であることを示している。端末入力欄102には、譲渡するトークンの送信先認証端末の識別情報が入力される。図示する例では、認証端末Bの識別情報(TerminalB)が入力されている。ユーザID入力欄103には、トークンの譲渡相手のユーザIDが入力される。図示する例では、ユーザBのユーザID(UserB)が入力されている。有効時間には、必要に応じて、譲渡するトークンの有効時間または有効期限が入力される。実行ボタン105は、各入力欄への入力完了後にトークン譲渡指示を送信するためのための操作ボタンである。
【0062】
なお、図10のステータス表示欄101以外の表示画面を用いて、トークンの譲渡状況を示すこととしてもよい。
【0063】
図11は、トークンの譲渡状態を、ペトリネットモデルを用いて示した図である。ぺトリネットモデルは、システムにおける情報・信号の流れをモデル化したものである。図示する例では、図6に示すように、ユーザAおよびユーザCが、各自のトークンをユーザBに譲渡することにより、所定のユーザに3つのトークンが集まったこと示している。そのため、本実施形態の(3,4)閾値法において、所定のユーザは、特権アカウントを有することを、図示するペトリネットモデルは示している。
【0064】
なお、図10または図11に示すトークンの譲渡状況は、認証端末1からの要求により、認証サーバ2の監視部23が認証端末1に送信するものとする。すなわち、監視部23は、トークン管理DB27に記憶された各トークンの譲渡相手86を読み出し、トークン譲渡状況の表示画面を生成する。ユーザは、このようなトークンの譲渡状況を参照することにより、トークンの譲渡先のユーザを決定することができる。
【0065】
次に、集合認証処理(図6:S50)について説明する。
【0066】
図12は、集合認証処理の処理フロー図である。図示する集合認証処理は、ユーザBが、特権アカウントを要求する場合を例に説明する。なお、ユーザBの認証端末Bの記憶部14には、自身のトークンである「トークンB」と、ユーザAおよびユーザCから譲渡された「トークンA」および「トークンC」とが記憶されているものとする。
【0067】
まず、認証端末Bの入力受付部11は、ユーザBが入力装置を用いて入力した特権アカウントの要求指示を受け付ける。特権アカウントは、一定数以上のユーザから権限委譲されたユーザのみ付与される特別の権利である。特権アカウントを付与されたユーザは、一般ユーザには認められていないシステム管理を行う権限を取得する。例えば、コンピュータのハードディスク増設などのリソース操作、ユーザID変更などのユーザ操作、システムログファイル削除のようなデータ操作を行う権限を取得する。
【0068】
そして、認証端末Bの処理部12は、記憶部14に記憶されたトークンA、トークンBおよびトークンCを読み出し、これらのトークンを含む特権アカウント要求メッセージを認証サーバ2に送信する(S51)。そして、処理部12は、記憶部14からトークンA、トークンBおよびトークンCを削除する。
【0069】
そして、認証サーバ2のトークン管理部22は、VPN装置4を介して、特権アカウント要求メッセージを受信する。そして、トークン管理部22は、特権アカウント要求メッセージに含まれるトークン各々のハッシュ値を算出する。そして、トークン管理部22は、トークン管理DB27に記憶された各トークンのハッシュ値と、算出したハッシュ値とを照合する(S52)。
【0070】
ハッシュ値が一致しないトークンが1つでも存在する場合、トークン管理部22は、認証端末Bから送信されたトークンのいずれかが改ざんされたものと判別し、本処理を終了する。一方、全てのトークンのハッシュ値がトークン管理DBのハッシュ値と一致した場合、トークン管理部22は、暗号化されたトークン各々を、対応するユーザの認証情報を用いて復号する(S53)。すなわち、トークン管理部22は、トークンAをユーザAの認証情報を用いて、トークンBをユーザBの認証情報を用いて、トークンCをユーザCの認証情報を用いて復号する。なお、各ユーザの認証情報は、前述の個人認証処理(図7参照)のS11で送信された各ユーザのユーザIDおよびパスワードであって、記憶部25に一時的に記憶されているものとする。
【0071】
そして、トークン管理部22は、トークン毎に、トークンに設定された有効期限を経過しているか否か判別する(S54)。すなわち、トークン管理DB22は、OS等の機能(システム時計)により取得した現時点の時刻が各トークンに設定された有効期限を経過しているか否かを判別する。有効期限が過ぎているトークンが1つでも存在する場合、トークン管理部22は、本処理を終了する。
【0072】
全てのトークンの有効期限を経過していない場合、トークン管理部22は、トークン毎に、認証端末Bから受信したトークンに設定されたセッション番号および譲渡相手と、トークン管理DB27に記憶された当該トークンのセッション番号および譲渡相手と照合する(S54)。すなわち、トークン管理部22は、例えばトークンAの場合、トークン管理DB27に記憶されたトークンAのセッション番号および譲渡相手を特定し、受信したトークンに設定されたセッション番号および譲渡相手と一致するか否かを判別する。一致しないトークンが1つでも存在する場合、トークン管理部22は、本処理を終了する。
【0073】
全トークンについてセッション番号および譲渡相手が一致した場合、トークン管理部22は、各トークンに設定されたアドレスを、秘密管理サーバ3に送信する(S55)。なお、本実施形態におけるアドレスは、図8に示すトークンのユーザID81、秘密情報ID82、および、分割情報番号83である。
【0074】
秘密管理サーバ3の分散情報復号部32は、認証サーバ2から各アドレスを受信する。そして、分散情報復号部32は、受信した各アドレスを検索キーとして分散情報管理DB35にアクセスし、各分散情報を取得する(S56)。すなわち、分散情報復号部32は、各アドレスに対応する分散情報を分散情報管理DB35から読み出す。なお、分散情報管理DB35にアドレスと、分散情報のURL(Uniform Resource Locator)と、が格納されている場合、分散情報復号部32は、受信したアドレスに対応するURLにアクセスし分散情報を取得する。
【0075】
そして、分散情報復号部32は、取得した各分散情報から秘密情報を復号し、復号の成否(復号に成功したか否か)を認証サーバ2に送信する(S57)。なお、図示する例では、3つのが分散情報を用いて復号するため、分散情報復号部32は秘密情報の復号に成功するものとする。
【0076】
認証サーバ2のトークン管理部22は、復号の成否を受信する。そして、秘密管理サーバ3が復号に成功した場合、トークン管理部22は、ユーザBに特権アカウントを付与するための特権トークンを生成する(S58)。特権トークンは、図8に示すトークンと同様である。ただし、特権トークンの分割情報番号83および譲渡相手86には、スペースが設定されるものとする。また、有効期限84には、各トークンに設定された有効期限の中で、最も短い(近い)有効期限が設定されるものとする。
【0077】
そして、トークン管理部22は、記憶部25に記憶された所定の暗号化フレーズを用いて特権トークンを暗号化し、暗号化したトークンのハッシュ値を算出する(S59)。そして、トークン管理部22は、暗号化前の特権トークンと、算出したハッシュ値とを、トークン管理DB27に記憶する。
【0078】
そして、トークン管理部22は、生成した特権トークンをユーザBの認証端末Bに送信する(S60)。認証端末Bの処理部12は、特権トークンを受信し、記憶部14に記憶する(S61)。ユーザBは特権トークンを取得することにより特権アカウントを有する特権ユーザとなる。これにより、ユーザBは、例えば、コンピュータのハードディスク増設などのリソース操作、ユーザID変更などのユーザ操作、システムログファイル削除のようなデータ操作を行う権限を取得する。
【0079】
なお、ユーザBは、特権アカウントによる特別な操作を行う場合、認証端末Bを用いて特権トークンを認証サーバ2に送信する。認証サーバ2のトークン管理部22は、特権トークンのハッシュ値およびセッション番号を、トークン管理DB27に記憶されたハッシュ値およびセッション番号と照合する。また、トークン管理部22は、特権トークンの有効期限が経過していないかを判別する。このように特権トークンの有効性を確認した後、トークン管理DB22は、ユーザBを特権ユーザであると判別する。これにより、ユーザBは、特別な操作権限を用いて、各種の操作を行うことができる。
【0080】
次に、キャンセル処理(図6:S70)について説明する。ユーザBにトークンを譲渡したユーザAおよびユーザCは、ユーザBの操作内容を各認証端末から監視することができる。そして、ユーザBが不正な操作を行っていると判断した場合、ユーザAおよびユーザCは、一旦譲渡したトークンをキャンセル(引き戻す)することができる。なお、操作内容の監視画面については、後述する。
【0081】
図13は、キャンセル処理の処理フロー図である。図示するキャンセル処理は、ユーザAが、ユーザBに譲渡したトークンAをキャンセルする場合を例に説明する。
【0082】
まず、認証端末Aの入力受付部11は、ユーザAが入力装置を用いて入力したキャンセル指示を受け付ける。そして、認証端末Aの処理部12は、キャンセルメッセージを認証サーバ2に送信する(S71)。
【0083】
認証サーバのトークン管理部22は、キャンセルメッセージを受信し、トークン管理DB27に記憶されたユーザAのトークンAを特定する。そして、特定したトークンAの譲渡相手86をスペースに更新する(S72)。なお、スペースに更新される前の譲渡相手には、ユーザBのユーザIDが記憶されているものとする。また、トークン管理部22は、必要に応じてセッション番号85を更新する。
【0084】
そして、トークン管理部22は、更新したトークンAを、ユーザAの認証情報を用いて暗号化し、ハッシュ値を算出する(S73)。そして、トークン管理部22は、トークン管理DB27に更新したトークンA、およびハッシュ値を記憶(更新)する。そして、トークン管理部22は、暗号化したトークンを認証端末Aに送信する(S74)。そして、認証端末Aは、トークンAを受信し、記憶部14に記憶する(S75)。これにより、ユーザAは、ユーザAに割り当てられた分散情報の使用権限を再び有する。
【0085】
そして、トークン管理部22は、ユーザBの特権アカウントを再評価する。すなわち、トークン管理部22は、特権アカウントを有するユーザBが現時点で保有するトークン各々のアドレスを秘密管理サーバ3に送信する(S76)。なお、図示する例では、ユーザAのトークンAはキャンセルされたため、トークン管理部22は、トークンBとトークンCの2つトークンに記憶された各アドレスを秘密管理サーバ3に送信する。
【0086】
秘密管理サーバ3の分散情報復号部32は、認証サーバ2から各アドレスを受信する。そして、分散情報復号部32は、受信した各アドレスを検索キーとして分散情報管理DB35にアクセスし、各分散情報を取得する(S77)。そして、分散情報復号部32は、取得した各分散情報から秘密情報の復号を行い、復号の成否(復号に成功したか否か)を認証サーバ2に送信する(S78)。なお、図示する例では、分散情報復号部32は、2つの分散情報しか取得できないため、秘密情報の復号に失敗するものとする。
【0087】
秘密管理サーバ3復号に失敗した場合、認証サーバ2のトークン管理部22は、ユーザBの特権アカウントを消滅させる(S79)。すなわち、トークン管理部22は、トークン管理DB27から特権トークンを削除する。そして、トークン管理部22は、VPN装置4に認証端末BとのVPNセッションの切断を指示する(S80)。VPN装置4は、認証端末BとのVPNセッションを切断する。これにより、ユーザBの特権アカウントは消滅する。したがって、ユーザBが再度特権アカウントを取得する場合、図12に示す集合認証処理を行う必要がある。
【0088】
次に、ユーザの操作内容の監視画面について説明する。
【0089】
図14は、監視画面の一例を示したものである。図示する監視画面は、トークンの譲渡先ユーザの操作内容を表示する操作表示部121と、トークンの譲渡のキャンセル指示を入力するキャンセルボタン122と、を有する。なお、図6に示すようように、ユーザAがユーザBにトークンAを譲渡した場合、ユーザAの認証端末Aに表示される操作表示部121には、ユーザBの操作内容が表示される。
【0090】
ユーザAは、操作表示部121に表示されるユーザBの操作内容を必要に応じて参照することにより、想定していないユーザBの不正操作(または不正操作の兆し)を検知することができる。図示する例では、ユーザBがデータの削除処理のコマンドを投入したことを示している。これにより、ユーザAは、ユーザBが重要なデータを破壊する恐れがあると認識する。この場合、ユーザAは、キャンセルボタン122を押下し、ユーザBに譲渡したトークンのキャンセル指示を入力する。これにより図13のキャンセル処理が実行される。なお、不正操作としては、データの削除処理のほか、記憶媒体(フレキシブルディスクなど)へのデータのダウンロード(コピー)処理、記憶媒体に格納されたデータのアップロード処理などが考えられる。
【0091】
認証サーバ2の監視部23は、例えば、図1の認証端末がUNIX(登録商標)のTelnet機能を用いて認証サーバにアクセスする場合、特権ユーザのキーボード入力を当該Telnet仮想端末(tty)にリダイレクトすることにより、特権ユーザの操作内容をトークン譲渡元のユーザ認証端末にエコーバックする。
【0092】
以上、本発明の一実施形態を説明した。
【0093】
本実施形態では、ユーザは、分散情報そのものではなく、分散情報のアドレスが記憶されたトークンを保持することにより、秘密情報を復号する権限の一部を有する。そして、ユーザは、自らのトークンを他のユーザに譲渡することにより秘密情報を復号する権限を委譲する。そして、認証サーバ2は、ユーザから受け付けた各トークンのアドレスを秘密管理サーバ3に送信し、秘密情報の復元に成功したか否かの成否結果に基づいて、当該ユーザに特権アカウントを付与するか否かを決定する。したがって、ユーザおよびユーザがアクセス可能な認証サーバ2は、復元した秘密情報を取得することができない。このため、本実施形態では、復元した秘密情報の漏洩を防止し、より高いセキュリティを確保することができる。
【0094】
また、ユーザに送信されるトークンには分散情報のアドレスのみが記憶され、分散情報自体はトークンに記憶されていない。すなわち、分散情報は、ユーザには公開されず隠蔽されている。したがって、所定の数以上のトークンを取得したユーザであっても、トークン自身を用いて秘密情報を復元できない。このため、ユーザの不正行為を防止することができる。
【0095】
また、ユーザは、他のユーザにトークンを譲渡して権限を委譲した場合であっても、権限の委譲をキャンセルすることができる。これにより、特権アカウントを有するユーザが不正な操作を行った場合、権限委譲をキャンセルして特権アカウントを消滅させることができる。すなわち、特権アカウントを付与されたユーザに対して牽制することができる。なお、トークンを譲渡された他のユーザは、分散情報自体は譲渡されないため、譲渡されたトークンをコピーするなどして不正に再利用することができない。
【0096】
また、ユーザは、トークンを譲渡した他のユーザの操作内容を、監視することができる。これにより、ユーザは、特権アカウントを有する他のユーザの不正操作(または不正操作の兆し)を検知し、トークンの譲渡をキャンセルすることができる。また、特権アカウントを付与されたユーザを牽制することができる。
【0097】
また、本実施形態では、認証サーバ2は、生成したトークンを対応するユーザのユーザIDおよびパスワードを用いて暗号化し、認証端末に送信する。これにより、トークンの内容(ユーザID、セッション番号など)を書き換えて、他人のユーザのトークンを取得する不正行為を防止することができる。
【0098】
また、本実施形態では、暗号化したトークンのハッシュ値を認証サーバのトークン管理DB27に記憶する、これにより、仮にトークンが不正に改ざんされた場合であっても、トークン管理DB27に記憶されたハッシュ値を比較することで、容易に改ざんを検出することができる。
【0099】
また、本実施形態では、個人認証処理(図7参照)の後、認証端末各々と認証サーバ2は、VPNによりデータの送受信を行う。これにより、機密性の高い通信を実現することができる。また、不正な第3者によるなりすましを防止することができる。
【0100】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、上記の実施形態では、秘密分散法を用いて分散した分散情報を用いている。しかしながら、本発明はこれに限定されず、例えば、秘密管理サーバに推論エンジンと推論ルールを用いることにしてもよい。推論エンジンは、推論ルールを適用して、ある事象から結論を導き出すための人工知能システム(推論機構)である。N人に権限を分散している場合、「N人のうちK人の権限が揃った場合、集合認証が成功する」という推論ルールを適用することにして、秘密分散法の装置の代用としてもよい。
【0101】
また、本実施形態では、認証サーバ2が生成したトークンを、認証端末1の記憶部14に格納することとした。しかしながら、生成したトークンをICカード等に記憶することとしてもよい。ICカード等にトークンを記憶することにより、ユーザは、トークンを容易に携帯することができる。なお、ICカード等にトークンを記憶する場合、認証端末1は、ICカードリーダ/ライタ装置を備える必要がある。
【0102】
また、本実施形態の権限管理システムでは、認証サーバ2と秘密管理サーバ3とをそれぞれ有する。しかしながら、認証サーバ2が秘密管理サーバ3の機能を有することとしてもよい。
【図面の簡単な説明】
【0103】
【図1】本発明の一実施形態が適用された権限管理システムの全体構成を示す図である。
【図2】認証端末1の機能構成を示す図である。
【図3】認証サーバの機能構成を示す図である。
【図4】秘密管理サーバの機能構成を示す図である
【図5】各装置のハードウェア構成例を示す図である。
【図6】権限管理システムの処理概要を模式的に示した図である。
【図7】個人認証処理のフローチャートである。
【図8】トークンのデータ構造の一例を示す図である。
【図9】トークン譲渡処理の処理フローチャートである。
【図10】トークン譲渡指示入力画面の一例を示す図である。
【図11】トークン譲渡状況を示すペトリネットモデルである。
【図12】集合認証処理のフローチャートである。
【図13】トークン譲渡キャンセル処理のフローチャートである。
【図14】監視画面の一例を示す図である。
【符号の説明】
【0104】
1:認証端末、11:入力受付部、12:処理部、13:出力部、14:記憶部、2:認証サーバ、21:認証部、22:トークン管理部、23:監視部、25:記憶部、26:認証DB、27:トークン管理DB、3:秘密管理サーバ、31:分散情報生成部、32:分散情報復号部、33:データ管理部、34:記憶部、35:分散情報管理DB
【特許請求の範囲】
【請求項1】
複数のユーザの権限を管理する認証サーバと、前記複数のユーザ各々が使用する複数の端末と、を有する権限管理システムであって、
前記ユーザ各々は、当該ユーザに割り当てられた、所定の秘密情報を分割した分散情報の使用権限を有し、
前記端末各々は、
前記分散情報のアドレスを示すデータであるトークンを記憶する記憶手段と、
当該端末を使用する自ユーザが使用権限を有する分散情報の自トークン、または、自ユーザ以外の他ユーザが使用権限を有する分散情報の他トークンを、前記認証サーバから受信し、前記記憶手段に記憶するトークン受信手段と、
前記記憶手段に記憶された自トークンを前記認証サーバに送信し、自トークンを他ユーザに譲渡するトークン譲渡手段と、
所定の操作権限である特権アカウントを要求する要求メッセージを、前記記憶手段に記憶されたトークンとともに、前記認証サーバに送信する要求メッセージ送信手段と、を有し、
前記認証サーバは、
前記ユーザ毎に、当該ユーザの前記自トークンを生成し、当該ユーザが使用する自端末に送信するトークン生成手段と、
前記端末各々から送信された前記自トークンを、他ユーザの他端末に転送する転送手段と、
前記要求メッセージを受信し、当該要求メッセージに含まれるトークン各々のアドレスを、前記秘密情報を復号する外部システムに送信するアドレス送信手段と、
前記外部システムが前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有すること
を特徴とする権限管理システム。
【請求項2】
請求項1記載の権限管理システムであって、
前記端末各々は、
前記トークン譲渡手段が送信した自トークンの譲渡をキャンセルするキャンセル指示を、前記認証サーバに送信するキャンセル指示送信手段を、さらに有し、
前記認証サーバの前記アドレス送信手段は、
前記キャンセル指示を受信し、当該キャンセル指示されたトークンを除いた前記要求メッセージに含まれるトークン各々のアドレスを、前記外部システムに送信し、
前記認証サーバの前記アカウント付与手段は、
前記外部システムが前記アドレスに対応する分散情報を用いて前記秘密情報の復号に失敗した場合、前記付与した特権アカウントを消滅させること
を特徴とする権限管理システム。
【請求項3】
請求項1記載の権限管理システムであって、
前記端末各々は、
前記ユーザの認証情報を送信する認証情報送信手段を、さらに有し、
前記認証サーバは、
前記端末各々から前記認証情報を受信し、当該認証情報を用いて前記トークン生成手段が生成したトークンを暗号化する暗号化手段を、さらに有すること
を特徴とする権限管理システム。
【請求項4】
請求項1記載の権限管理システムであって、
前記端末各々と前記認証サーバとは、仮想専用線を用いて接続されていること
を特徴とする権限管理システム。
【請求項5】
複数のユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムであって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバは、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成手段と、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記秘密管理サーバから前記秘密情報の復号に成功したか否かの成否結果を取得する取得手段と、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有し、
前記秘密管理サーバは、
前記複数の分散情報を管理するための分散情報管理データベースと、
前記認証サーバの取得手段から前記アドレスを受信し、前記分散情報管理データベースを参照して前記アドレスに対応する分散情報を取得し、当該分散情報を用いて前記秘密情報を復号する復号手段と、
前記復号手段が行った復号が成功したか否かの成否結果を、前記認証サーバに送信する送信手段と、を有すること
を特徴とする権限管理システム。
【請求項6】
請求項1または請求項5記載の権限管理システムであって、
前記秘密情報は、秘密分散法により、前記複数の分散情報に分割されること
を特徴とする権限管理システム。
【請求項7】
ユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける認証サーバであって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバは、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成手段と、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功したか否かの成否結果を前記秘密管理サーバから取得する取得手段と、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有すること
を特徴とする認証サーバ。
【請求項8】
請求項7記載の認証サーバであって、
前記トークン生成手段は、前記秘密管理サーバから前記分散情報各々のアドレスを取得し、前記トークンを生成すること
を特徴とする認証サーバ。
【請求項9】
請求項7記載の認証サーバであって、
前記トークン生成手段が生成した各トークンのハッシュ値を算出するハッシュ値算出手段と、
前記算出したハッシュ値を記憶するハッシュ値記憶手段と、さらに有すること
を特徴とする認証サーバ。
【請求項10】
請求項7記載の認証サーバであって、
前記成否取得手段は、前記転送手段が行ったトークンの転送を取り消すキャンセル指示を受け付けて、当該キャンセル指示されたトークンを除いた前記要求メッセージに含まれる各トークンのアドレスを、前記秘密管理サーバに送信し、前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功したか否かの成否結果を前記秘密管理サーバから取得し、
前記アカウント付与手段は、前記秘密情報の復号に失敗した場合、前記付与した特権アカウントを消滅させること
を特徴とする認証サーバ。
【請求項11】
複数のユーザの権限を管理する認証サーバと、前記複数のユーザ各々が使用する複数の端末とを有する権限管理システムにおける権限管理方法であって、
前記ユーザ各々は、当該ユーザに割り当てられた、所定の秘密情報を分割した分散情報の使用権限を有し、
前記端末各々は、前記分散情報のアドレスを示すデータであるトークンを記憶する記憶部と、端末処理部と、を有し、
前記端末処理部は、
当該端末を使用する自ユーザが使用権限を有する分散情報の自トークン、または、自ユーザ以外の他ユーザが使用権限を有する分散情報の他トークンを、前記認証サーバから受信し、前記記憶部に記憶するトークン受信ステップと、
前記記憶部に記憶された自トークンを前記認証サーバに送信し、自トークンを他ユーザに譲渡するトークン譲渡ステップと、
所定の操作権限である特権アカウントを要求する要求メッセージを、前記記憶部に記憶されたトークンとともに、前記認証サーバに送信する要求メッセージ送信ステップと、を有し、
前記認証サーバのサーバ処理部は、
前記ユーザ毎に、当該ユーザの前記自トークンを生成し、当該ユーザが使用する自端末に送信するトークン生成ステップと、
前記端末各々から送信された前記自トークンを、他ユーザの他端末に転送する転送ステップと、
前記要求メッセージを受信し、当該要求メッセージに含まれるトークン各々のアドレスを、前記秘密情報を復号する外部システムに送信するアドレス送信ステップと、
前記外部システムが前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、前記特権アカウントを付与するアカウント付与ステップと、を行うこと
を特徴とする権限管理方法。
【請求項12】
複数のユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける権限管理方法であって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバの第1の処理部は、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成ステップと、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送ステップと、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記秘密管理サーバから前記秘密情報の復号に成功したか否かの成否結果を取得する取得ステップと、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与ステップと、を行い、
前記秘密管理サーバは、前記複数の分散情報を管理するための分散情報管理記憶部と、第2の処理部と、を有し、
前記第2の処理部は、
前記認証サーバから前記ドレスを受信し、前記分散情報管理記憶部を参照して前記アドレスに対応する分散情報を取得し、当該分散情報を用いて前記秘密情報を復号する復号ステップと、
前記復号ステップの復号が成功したか否かの成否結果を、前記認証サーバに送信する送信ステップと、を行うこと
を特徴とする権限管理方法。
【請求項13】
ユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける、前記認証サーバの権限管理方法であって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバの処理部は、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成ステップと、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送ステップと、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功したか否かの成否結果を前記秘密管理サーバから取得する取得ステップと、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与ステップと、を行うこと
を特徴とする権限管理方法。
【請求項14】
ユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける、前記認証サーバが実行する権限管理プログラムであって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバの処理部に、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成ステップと、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送ステップと、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功したか否かの成否結果を前記秘密管理サーバから取得する取得ステップと、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与ステップと、を実行させること
を特徴とする権限管理プログラム。
【請求項1】
複数のユーザの権限を管理する認証サーバと、前記複数のユーザ各々が使用する複数の端末と、を有する権限管理システムであって、
前記ユーザ各々は、当該ユーザに割り当てられた、所定の秘密情報を分割した分散情報の使用権限を有し、
前記端末各々は、
前記分散情報のアドレスを示すデータであるトークンを記憶する記憶手段と、
当該端末を使用する自ユーザが使用権限を有する分散情報の自トークン、または、自ユーザ以外の他ユーザが使用権限を有する分散情報の他トークンを、前記認証サーバから受信し、前記記憶手段に記憶するトークン受信手段と、
前記記憶手段に記憶された自トークンを前記認証サーバに送信し、自トークンを他ユーザに譲渡するトークン譲渡手段と、
所定の操作権限である特権アカウントを要求する要求メッセージを、前記記憶手段に記憶されたトークンとともに、前記認証サーバに送信する要求メッセージ送信手段と、を有し、
前記認証サーバは、
前記ユーザ毎に、当該ユーザの前記自トークンを生成し、当該ユーザが使用する自端末に送信するトークン生成手段と、
前記端末各々から送信された前記自トークンを、他ユーザの他端末に転送する転送手段と、
前記要求メッセージを受信し、当該要求メッセージに含まれるトークン各々のアドレスを、前記秘密情報を復号する外部システムに送信するアドレス送信手段と、
前記外部システムが前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有すること
を特徴とする権限管理システム。
【請求項2】
請求項1記載の権限管理システムであって、
前記端末各々は、
前記トークン譲渡手段が送信した自トークンの譲渡をキャンセルするキャンセル指示を、前記認証サーバに送信するキャンセル指示送信手段を、さらに有し、
前記認証サーバの前記アドレス送信手段は、
前記キャンセル指示を受信し、当該キャンセル指示されたトークンを除いた前記要求メッセージに含まれるトークン各々のアドレスを、前記外部システムに送信し、
前記認証サーバの前記アカウント付与手段は、
前記外部システムが前記アドレスに対応する分散情報を用いて前記秘密情報の復号に失敗した場合、前記付与した特権アカウントを消滅させること
を特徴とする権限管理システム。
【請求項3】
請求項1記載の権限管理システムであって、
前記端末各々は、
前記ユーザの認証情報を送信する認証情報送信手段を、さらに有し、
前記認証サーバは、
前記端末各々から前記認証情報を受信し、当該認証情報を用いて前記トークン生成手段が生成したトークンを暗号化する暗号化手段を、さらに有すること
を特徴とする権限管理システム。
【請求項4】
請求項1記載の権限管理システムであって、
前記端末各々と前記認証サーバとは、仮想専用線を用いて接続されていること
を特徴とする権限管理システム。
【請求項5】
複数のユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムであって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバは、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成手段と、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記秘密管理サーバから前記秘密情報の復号に成功したか否かの成否結果を取得する取得手段と、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有し、
前記秘密管理サーバは、
前記複数の分散情報を管理するための分散情報管理データベースと、
前記認証サーバの取得手段から前記アドレスを受信し、前記分散情報管理データベースを参照して前記アドレスに対応する分散情報を取得し、当該分散情報を用いて前記秘密情報を復号する復号手段と、
前記復号手段が行った復号が成功したか否かの成否結果を、前記認証サーバに送信する送信手段と、を有すること
を特徴とする権限管理システム。
【請求項6】
請求項1または請求項5記載の権限管理システムであって、
前記秘密情報は、秘密分散法により、前記複数の分散情報に分割されること
を特徴とする権限管理システム。
【請求項7】
ユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける認証サーバであって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバは、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成手段と、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送手段と、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功したか否かの成否結果を前記秘密管理サーバから取得する取得手段と、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与手段と、を有すること
を特徴とする認証サーバ。
【請求項8】
請求項7記載の認証サーバであって、
前記トークン生成手段は、前記秘密管理サーバから前記分散情報各々のアドレスを取得し、前記トークンを生成すること
を特徴とする認証サーバ。
【請求項9】
請求項7記載の認証サーバであって、
前記トークン生成手段が生成した各トークンのハッシュ値を算出するハッシュ値算出手段と、
前記算出したハッシュ値を記憶するハッシュ値記憶手段と、さらに有すること
を特徴とする認証サーバ。
【請求項10】
請求項7記載の認証サーバであって、
前記成否取得手段は、前記転送手段が行ったトークンの転送を取り消すキャンセル指示を受け付けて、当該キャンセル指示されたトークンを除いた前記要求メッセージに含まれる各トークンのアドレスを、前記秘密管理サーバに送信し、前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功したか否かの成否結果を前記秘密管理サーバから取得し、
前記アカウント付与手段は、前記秘密情報の復号に失敗した場合、前記付与した特権アカウントを消滅させること
を特徴とする認証サーバ。
【請求項11】
複数のユーザの権限を管理する認証サーバと、前記複数のユーザ各々が使用する複数の端末とを有する権限管理システムにおける権限管理方法であって、
前記ユーザ各々は、当該ユーザに割り当てられた、所定の秘密情報を分割した分散情報の使用権限を有し、
前記端末各々は、前記分散情報のアドレスを示すデータであるトークンを記憶する記憶部と、端末処理部と、を有し、
前記端末処理部は、
当該端末を使用する自ユーザが使用権限を有する分散情報の自トークン、または、自ユーザ以外の他ユーザが使用権限を有する分散情報の他トークンを、前記認証サーバから受信し、前記記憶部に記憶するトークン受信ステップと、
前記記憶部に記憶された自トークンを前記認証サーバに送信し、自トークンを他ユーザに譲渡するトークン譲渡ステップと、
所定の操作権限である特権アカウントを要求する要求メッセージを、前記記憶部に記憶されたトークンとともに、前記認証サーバに送信する要求メッセージ送信ステップと、を有し、
前記認証サーバのサーバ処理部は、
前記ユーザ毎に、当該ユーザの前記自トークンを生成し、当該ユーザが使用する自端末に送信するトークン生成ステップと、
前記端末各々から送信された前記自トークンを、他ユーザの他端末に転送する転送ステップと、
前記要求メッセージを受信し、当該要求メッセージに含まれるトークン各々のアドレスを、前記秘密情報を復号する外部システムに送信するアドレス送信ステップと、
前記外部システムが前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、前記特権アカウントを付与するアカウント付与ステップと、を行うこと
を特徴とする権限管理方法。
【請求項12】
複数のユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける権限管理方法であって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバの第1の処理部は、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成ステップと、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送ステップと、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記秘密管理サーバから前記秘密情報の復号に成功したか否かの成否結果を取得する取得ステップと、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与ステップと、を行い、
前記秘密管理サーバは、前記複数の分散情報を管理するための分散情報管理記憶部と、第2の処理部と、を有し、
前記第2の処理部は、
前記認証サーバから前記ドレスを受信し、前記分散情報管理記憶部を参照して前記アドレスに対応する分散情報を取得し、当該分散情報を用いて前記秘密情報を復号する復号ステップと、
前記復号ステップの復号が成功したか否かの成否結果を、前記認証サーバに送信する送信ステップと、を行うこと
を特徴とする権限管理方法。
【請求項13】
ユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける、前記認証サーバの権限管理方法であって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバの処理部は、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成ステップと、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送ステップと、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功したか否かの成否結果を前記秘密管理サーバから取得する取得ステップと、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与ステップと、を行うこと
を特徴とする権限管理方法。
【請求項14】
ユーザの権限を認証する認証サーバと、秘密情報を管理する秘密管理サーバと、を有する権限管理システムにおける、前記認証サーバが実行する権限管理プログラムであって、
前記秘密情報は、暗号化された複数の分散情報に分割され、
前記ユーザ各々は、当該ユーザに割り当てられたいずれかの前記分散情報の使用権限を有し、
前記認証サーバの処理部に、
前記分散情報のアドレスを示すデータであるトークンを前記ユーザ毎に生成し、各ユーザに送信するトークン生成ステップと、
前記ユーザ毎に生成したトークンを、当該ユーザ以外の他ユーザに転送する転送ステップと、
所定の操作権限である特権アカウントの要求メッセージを受け付けて、前記要求メッセージに含まれる各トークンのアドレスを前記秘密管理サーバに送信し、前記アドレスに対応する分散情報を用いて前記秘密情報の復号に成功したか否かの成否結果を前記秘密管理サーバから取得する取得ステップと、
前記秘密情報の復号に成功した場合、前記要求メッセージを送信したユーザに、特権アカウントを付与するアカウント付与ステップと、を実行させること
を特徴とする権限管理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2006−185184(P2006−185184A)
【公開日】平成18年7月13日(2006.7.13)
【国際特許分類】
【出願番号】特願2004−378178(P2004−378178)
【出願日】平成16年12月27日(2004.12.27)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】
【公開日】平成18年7月13日(2006.7.13)
【国際特許分類】
【出願日】平成16年12月27日(2004.12.27)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】
[ Back to top ]