説明

権限管理サーバ、権限管理システム、トークン検証方法、トークン検証プログラム

【課題】トークンの譲渡を受けたクライアントがトークンを使用する時点においても確実にトークンの検証をすることができる権限管理システム等を提供すること
【解決手段】譲渡元ユーザ端末10は、権限管理サーバ20に対しトークン発行要求を送信する。権限管理サーバはトークンとグッドユーザリストを生成し、これらを譲渡元ユーザ端末30に送信する。譲渡元ユーザ端末は、トークンを加工し譲渡トークンを生成し、グッドユーザリストと共に譲渡先ユーザ端末に送信する。譲渡先ユーザ端末のトークン検証手段は、譲渡元ユーザの識別情報がグッドユーザリストに含まれている場合は譲渡トークンに含まれる情報により譲渡トークンの正当性を検証する。譲渡元ユーザの識別情報がグッドユーザリストに含まれていない場合は、譲渡トークンを権限管理サーバに送信し検証を依頼する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータシステムのユーザのシステム利用権限を管理する技術に関し、特にユーザの信頼性が変動する場合においても確実にトークンの正当性を検証することができる権限管理システム等に関する。
【背景技術】
【0002】
ユーザに与えられたシステム利用上の権限を記録したトークンを利用して権限の管理を行うシステムは種々提案されている。また、トークンを利用してあるクライアントに与えられた権限を他のクライアントに譲渡するシステムも提案されている。
特許文献1には、サーバと信頼関係があるクライアントに対して発行されたトークンを他のクライアントに譲渡することにより、トークンを発行されたクライアントに与えられたサーバへのアクセス権限と同一のアクセス権限を他のクライアントに譲渡するシステムが記載されている。
【0003】
【特許文献1】特開2003−22253号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
特許文献1に記載のシステムでは、権限の譲渡をする場合は、サーバはサーバと信頼関係があるクライアントにトークンを発行することが前提になっている。しかし、トークンを譲渡されたクライアントが信頼関係をサーバに問い合わせる手段は用意されていない。そのため、トークン発行時点とトークンを使用する時点で信頼関係が変化した場合は、譲渡先のクライアントはトークンの有効性を検証できないという問題があった。
【0005】
そこで、本発明は、トークンの譲渡を受けたクライアントがトークンを使用する時点においても確実にトークンの検証をすることができる権限管理システム等を提供することをその目的とする。
【課題を解決するための手段】
【0006】
本発明の、権限管理サーバのグッドユーザリスト生成手段は、グッドユーザリスト記憶部に記憶されているグッドユーザの識別情報を含むグッドユーザリストを生成し、トークン生成手段はトークンを発行したユーザのユーザ識別情報を含むトークンを生成する。トークン送信手段は、グッドユーザリストをトークンと共にトークンの発行を要求した譲渡元ユーザ端末に送信する(請求項1および請求項2)。
【0007】
上記権限管理サーバによれば、譲渡元ユーザ端末にはトークンと共にグッドユーザリストが送信される。そのため、譲渡元ユーザ端末からトークンの譲渡を受けた端末装置または譲渡元ユーザ端末にサービスを提供するサーバは、グッドユーザリストに譲渡元ユーザ端末のユーザの識別情報が含まれているか否かを判定することにより譲渡元ユーザ端末から送信されたトークンの正当性を検証することができる。
【0008】
上記権限管理サーバにおいて、譲渡先ユーザ端末から譲渡トークンの検証依頼を受信したときに作動し、譲渡トークンの正当性と有効性を検証しこの検証の結果を含むトークン有効性証明書を生成しこれを譲渡先ユーザ端末に送信するトークン有効性証明書生成手段を備えるようにしてもよい(請求項2)。
このようにすれば、譲渡元ユーザ端末からトークンとグッドユーザリストを受信した装置は、譲渡元ユーザ端末のユーザの識別情報がグッドユーザリストに含まれていない場合でもトークン有効性証明書を権限管理サーバから取得し受信したトークンの正当性を検証することができる。
【0009】
本発明の権限管理システムは、権限管理サーバと譲渡元ユーザ端末と譲渡先ユーザ端末を備えている。
譲渡元ユーザ端末のトークン要求手段は権限管理サーバに対しトークン発行要求を送信する。
トークン発行要求を受信した権限管理サーバのトークン生成手段はトークンを生成し、グッドユーザリスト生成手段はグッドユーザリストを生成する。トークン送信手段はトークンとグッドユーザリストを譲渡元ユーザ端末に送信する。
トークンとグッドユーザリストを受信した譲渡元ユーザ端末の譲渡トークン生成手段は、トークンを加工し譲渡トークンを生成する。トークン譲渡手段は、譲渡トークンをグッドユーザリストと共に譲渡先ユーザ端末に送信する。
譲渡トークンを受信した譲渡先ユーザ端末は、譲渡元ユーザの識別情報がグッドユーザリストに含まれている場合と含まれていない場合とで異なる方法により譲渡トークンの正当性を検証する。トークン検証手段は、譲渡元ユーザの識別情報がグッドユーザリストに含まれている場合は譲渡トークンに含まれる情報、たとえば譲渡元ユーザの電子署名により譲渡トークンの正当性を検証する。譲渡元ユーザの識別情報がグッドユーザリストに含まれていない場合は、譲渡トークンを権限管理サーバに送信し検証を依頼する(請求項3ないし請求項5)。
【0010】
上記権限管理システムによれば、譲渡先ユーザ端末は、譲渡トークンと共にグッドユーザリストを受信するから、譲渡トークンがグッドユーザにより生成されたものか否かを受信したときに判断することができる。
そのため、譲渡先ユーザ端末は、権限管理サーバと譲渡元ユーザの信頼関係がトークンが発行された時点と譲渡トークンが生成された時点とで変化する場合にも譲渡トークンの正当性を検証することができる。
【0011】
上記権限管理システムにおいて、権限管理サーバは、譲渡先ユーザ端末から譲渡トークンの検証依頼を受信したときに作動し、譲渡トークンの正当性と有効性を検証しこの検証の結果を含むトークン有効性証明書を生成しこれを譲渡先ユーザ端末に送信するトークン有効性証明書生成手段を備え、譲渡先ユーザ端末は、トークン有効性証明書の正当性を検証するトークン有効性証明書検証手段を備えるようにしてもよい(請求項4)。
このようにすれば、譲渡先ユーザ端末は、権限管理サーバによる譲渡トークンの正当性の検証結果が含まれるトークン有効性証明書を取得し、さらにトークン有効性証明書の正当性を検証する。そのため、譲渡元ユーザの識別情報が譲渡元ユーザ端末から受信したグッドユーザリストに含まれていない場合に、譲渡トークンの検証を厳密に行うことができる。
【0012】
上記権限管理システムにおいて、譲渡元ユーザ端末から譲渡トークンを受信するサプライズ端末を備え、このサプライズ端末は、譲渡トークンを受信したときに作動し、譲渡トークンを権限管理サーバに送信する譲渡トークン送信手段を備え、権限管理サーバは、譲渡トークンの正当性を検証し譲渡トークンが正当なものでないと判断した場合に譲渡トークンを生成した譲渡元ユーザの識別情報をグッドユーザリストから削除するグッドユーザリスト更新手段を備えるようにしてもよい(請求項5)。
このようにすれば、譲渡トークンがサプライズ端末に送信された場合は、譲渡元ユーザの識別情報がグッドユーザリストに含まれているか否かにかかわらず譲渡トークンが権限管理サーバに送信され正当性の検証が行われる。
このため、サプライズ端末を備えない場合に比べ、トークン発行時点ではグッドユーザであった譲渡元ユーザが不正行為を行っている場合のグッドユーザリストの更新タイミングを早めることができる。
【0013】
本発明の権限管理システムは、権限管理サーバとユーザ端末とサーバを備えている。
ユーザ端末のトークン要求手段は権限管理サーバに対しトークン発行要求を送信する。
トークン発行要求を受信した権限管理サーバのトークン生成手段はトークンを生成し、グッドユーザリスト生成手段はグッドユーザリストを生成する。トークン送信手段はトークンとグッドユーザリストをユーザ端末に送信する。
トークンとグッドユーザリストを受信したユーザ端末の送信用トークン生成手段は、トークンを加工し送信用トークンを生成する。トークン送信手段は、送信用トークンをグッドユーザリストと共にサーバに送信する。
送信用トークンを受信したサーバは、ユーザの識別情報がグッドユーザリストに含まれている場合と含まれていない場合とで異なる方法により送信用トークンの正当性を検証する。トークン検証手段は、ユーザの識別情報がグッドユーザリストに含まれている場合は送信用トークンに含まれる情報、たとえばユーザの電子署名により送信用トークンの正当性を検証する。ユーザの識別情報がグッドユーザリストに含まれていない場合は、譲渡トークンを権限管理サーバに送信し検証を依頼する。そして、送信用トークンの正当性が確認された場合にユーザ端末に対してサービスを提供する(請求項6)。
【0014】
上記権限管理システムによれば、サーバは、送信用トークンと共にグッドユーザリストを受信するから、送信用トークンがグッドユーザにより生成されたものか否かを受信したときに判断することができる。
そのため、サーバは、権限管理サーバとユーザの信頼関係がトークンが発行された時点と送信用トークンが生成された時点とで変化する場合に送信用トークンの正当性を検証し、その正当性が確認された場合にユーザ端末にサービスを提供することができる。
【0015】
本発明のトークン検証方法は、トークンの譲渡元のユーザの識別情報がトークンとともに受信され信頼できるユーザであると保障されたユーザの識別情報が記録されたグッドユーザリストに含まれている場合には、トークンに含まれる情報に基づいてトークンの正当性を検証し、譲渡元ユーザの識別情報がグッドユーザリストに含まれていない場合には、トークンを譲渡元ユーザ端末に発行した権限管理サーバに受信したトークンを送信し受信したトークンの正当性を検証する(請求項7)。
【0016】
上記トークン検証方法によれば、送信用トークンと共にグッドユーザリストを受信するから、送信用トークンがグッドユーザにより生成されたものか否かを受信したときに判断することができる。
そのため、権限管理サーバとトークンを送信したユーザの信頼関係が、トークンが発行された時点と受信したトークンが生成された時点とで変化する場合にも、受信したトークンの正当性を検証することができる。
【0017】
本発明のトークン検証方法は、コンピュータに、トークンの譲渡元のユーザの識別情報がトークンとともに受信され信頼できるユーザであると保障されたユーザの識別情報が記録されたグッドユーザリストに含まれている場合の作動しトークンに含まれる情報に基づいてトークンの正当性を検証する機能と、譲渡元ユーザの識別情報がグッドユーザリストに含まれていない場合に作動しトークンを譲渡元ユーザ端末に発行した権限管理サーバに受信したトークンを送信し受信したトークンの正当性を検証する機能とを実行させる(請求項8)。
【0018】
上記トークン検証プログラムによれば、送信用トークンと共にグッドユーザリストを受信するから、送信用トークンがグッドユーザにより生成されたものか否かを受信したときに判断することができる。
そのため、権限管理サーバとトークンを送信したユーザの信頼関係が、トークンが発行された時点と受信したトークンが生成された時点とで変化する場合にも、受信したトークンの正当性を検証することができる。
【発明の効果】
【0019】
本発明によれば、トークンと共にグッドユーザリストを受信するから、受信したトークンがグッドユーザにより生成されたものか否かを受信したときに判断することができる。
そのため、権限管理サーバとトークンを送信したユーザの信頼関係が、トークンが発行された時点と受信したトークンが生成された時点とで変化する場合にも、受信したトークンの正当性を検証することができる。
【発明を実施するための最良の形態】
【0020】
以下、図を参照しながら本発明の第1の実施形態である権限管理システム1の構成と動作について説明する。
図1は、権限管理システム1の構成を示す全体図である。
権限管理システム1は、譲渡元ユーザ端末10と権限管理サーバ20と譲渡先ユーザ端末30を備え、これらは、たとえばインターネット等のネットワーク2を介して相互に通信可能に構成されている。
譲渡元ユーザ端末10は、権限管理サーバ20により発行されたトークンを取得し、このトークンを譲渡先ユーザ端末30に送信することにより、権限を譲渡する。ここで、本明細書にいう「権限」とは、たとえば特定のファイルに対するアクセス権等のコンピュータシステムを利用する上でユーザに与えられた権限のことである。
権限管理サーバ20は、譲渡元ユーザ端末10の要求に応じてトークンを発行するとともに、譲渡先ユーザ端末30の要求に応じてトークンの検証を行う。
図1には、譲渡元ユーザ端末10と譲渡先ユーザ端末30をそれぞれ1台図示しているが、これらはそれぞれ複数台により構成してもよい。
【0021】
図2は、権限管理システム1で用いられる二つのトークン検証方式を説明する図である。
以下の説明では、権限管理サーバ20が信頼できるユーザとして保証するユーザを記憶するリストを「グッドユーザリスト」と、グッドユーザリストに登録されているユーザを「グッドユーザ」と、グッドユーザリストに登録されていないユーザを「一般ユーザ」という。グッドユーザの例としては、たとえば「ある一定期間以上、不正を起こさなかったユーザ」や「不正を起こしたときのペナルティ料金を事前に支払っているユーザ」等がある。
【0022】
まず、電子署名の正当性などのトークンの正当性検証、使用済みチェックなどのトークンの有効性検証を省略せずに行う、安全性を重視する方式について説明する。
一般ユーザであるユーザAは、譲渡元ユーザ端末10aから権限管理サーバ20に対してサービスの利用を可能にするトークンの発行を要求する(S151)。
権限管理サーバ20は、譲渡元ユーザ端末10aに対して権限管理サーバ20の電子署名をつけたトークンを生成し、譲渡元ユーザ端末10aに送信する(S152)。
【0023】
譲渡元ユーザ端末10aは、権限管理サーバ20から送られてきたトークンの正当性を権限管理サーバ20が公開しているトークン検証用鍵で検証する(S153)。
譲渡元ユーザ端末10aは、譲渡先ユーザ端末30aを使用するユーザBに対してユーザAが譲渡を認めたことを保証するために、権限管理サーバ20から発行されたトークンにユーザAの電子署名をつけた譲渡トークンを生成し、それを譲渡先ユーザ端末30aに送信する(S154)。
【0024】
譲渡先ユーザ端末30aは、譲渡元ユーザ端末10aからグッドユーザリストが送信されなかったことからユーザAを一般ユーザと判断し、譲渡トークンの正当性、有効性を検証するために、権限管理サーバ20に譲渡トークンを送信する(S155)。
権限管理サーバ20は、譲渡トークンが既に使用されていないか、既にユーザB以外のユーザに譲渡されていないか、トークンの有効期間が過ぎていないか、使用限度数を超えていないか、などを後述するトークン記憶部32bに記憶された情報を参照して確認し、さらに譲渡トークンが正しいメッセージフォーマットで作成されていることと電子署名の正当性を確認する。そして、権限管理サーバ20は、確認結果(譲渡トークンが上記のすべての確認処理に合格した場合は合格、いずれかの確認処理に不合格だった場合は不合格)に権限管理サーバ20の電子署名をつけたトークン有効性証明書を譲渡先ユーザ端末30aに送信する(S156)。
【0025】
譲渡先ユーザ端末30aは、権限管理サーバ20から送られたトークン有効性証明書を、権限管理サーバ20が公開している検証用鍵で検証する(S157)。その有効性証明書の検証が合格すれば、ユーザBは譲渡トークンを正当な譲渡トークンとして利用することができる。
ユーザBがサービスを利用する際には、譲渡先ユーザ端末30aは、譲渡トークンとトークン有効性証明書を権限管理サーバ20に送信する(S158)。
【0026】
次に、検証処理コストを重視する方式を説明する。
権限管理システム1では、検証処理コストを重視する方式は、グッドユーザリストに譲渡元ユーザが掲載されている場合に用いられる。
グッドユーザであるユーザCは、譲渡元ユーザ端末10bから権限管理サーバ20に対してサービスの利用を可能にするトークンを要求する(S251)。
権限管理サーバ20は、ユーザCに対して権限管理サーバ20の電子署名をつけたトークンを発行し、そのトークンとその時点での最新のグッドユーザリストを譲渡元ユーザ端末10bに送信する(S252)。
【0027】
譲渡元ユーザ端末10bは、権限管理サーバ20から送られてきたトークンの正当性を検証する(S253)。
譲渡元ユーザ端末10bは、譲渡先のユーザDに対してユーザCが譲渡を認めたことを保証するために、権限管理サーバ20から発行されたトークンにユーザCの電子署名をつけた譲渡トークンを生成し、それと譲渡先ユーザ端末10bに記憶されているトークン譲渡時の最新のグッドユーザリストを譲渡先ユーザ端末30bに送信する(S254)。
【0028】
譲渡先ユーザ端末30bは、送られてきたグッドユーザリストと記憶部に記憶されているグッドユーザリストのうち、最新のグッドユーザリストにユーザCが掲載されているか否かをチェックし、譲渡トークンを検証する(S255)。検証の確認が済めば、ユーザDはそれを正当な譲渡トークンとして、利用することができる。
ユーザDがトークンを利用する際には、譲渡先ユーザ端末30bは、譲渡トークンとグッドユーザリストを権限管理サーバ20に送信する(S256)。
【0029】
図3は、譲渡元ユーザ端末10、権限管理サーバ20、譲渡先ユーザ端末30の構成を示す機能ブロック図である。
譲渡元ユーザ端末10は、たとえばパーソナルコンピュータ、PDA(Personal Data Assistance)等のCPU(Central Processing Unit)と通信装置を備えた機器であり、データ処理部11とデータ記憶部12とデータ送受信部13とを備えている。
データ処理部11は、たとえばCPUがOS(Operating System)、デバイスドライバ、アプリケーションプログラム等の各種プログラムを実行することにより実現され、トークンの授受に必要なデータ処理を実行する。データ処理部11は、トークン要求手段14とトークン読み書き手段15とグッドユーザリスト読み書き手段16とトークン譲渡手段17とを備えている。
トークン要求手段14は、データ送受信部13を介して権限管理サーバ20にトークンの発行を要求する。
トークン読み書き手段(譲渡トークン生成手段)15は、権限管理サーバ20から受信したトークンの正当性を検証し、正当性が確認された場合は、トークンをトークン記憶部12dに記憶する。また、トークン読み書き手段15は、トークンに譲渡元ユーザの電子署名等を付加して譲渡トークンを生成する。
グッドユーザリスト読み書き手段16は、権限管理サーバ20から受信したグッドユーザリストのグッドユーザリスト記憶部12eへの書き込みと、譲渡トークンを生成する際のグッドユーザリストの読み出しを行う。
トークン譲渡手段17は、トークン記憶部12dに記憶されている譲渡トークンを譲渡先ユーザ端末30に送信する。トークン譲渡手段17は、譲渡トークンを譲渡するユーザがグッドユーザリストに記憶されている場合は、グッドユーザリストも譲渡先ユーザ端末30に送信する。
【0030】
データ記憶部12は、たとえばRAM(Random Access Memory)等の記憶装置によって構成され、ユーザ識別子記憶部12a、署名生成用鍵記憶部12b、署名検証用鍵記憶部12c、トークン記憶部12d、グッドユーザリスト記憶部12eを備えている。
ユーザ識別子記憶部12aには、譲渡元ユーザ端末10を使用するユーザを権限管理システム1上で識別するための情報であるユーザ識別子が予め記憶されている。ユーザ識別子は、ユーザが権限管理システム1の利用を開始するときにユーザ毎に付与され、たとえば「user001」といった文字列である。
署名生成用鍵記憶部12bには、譲渡元ユーザ端末10のユーザ(譲渡元ユーザ)の署名鍵が記憶されている。署名鍵は、譲渡トークンに電子署名を付すために用いられ、たとえば譲渡元ユーザの秘密鍵である。
署名検証鍵記憶部12cには、権限権利サーバから受信したトークンの正当性を検証するためのトークン検証用鍵があらかじめ記憶されている。トークン検証用鍵は、たとえば権限管理サーバ20の公開鍵である。
トークン記憶部12dには、権限管理サーバ20から受信したトークンと、譲渡先ユーザ端末30に送信する譲渡トークンが記憶される。
グッドユーザリスト記憶部12eには、権限管理サーバ20から受信したグッドユーザリストが記憶される。
【0031】
データ送受信部13は、たとえばLAN(Local Area Network)アダプタにより構成され、CPUが実行するデバイスドライバと通信プロトコルスタックによって制御され、権限管理サーバ20および譲渡先ユーザ端末30との間でデータの送受信を行う。
【0032】
権限管理サーバ20は、CPUと通信装置を備えたサーバコンピュータであり、データ処理部21とデータ記憶部22とデータ送受信部23とを備えている。
データ処理部21は、たとえばCPUがOS、デバイスドライバ、アプリケーションプログラム等の各種プログラムを実行することにより実現され、トークンの授受に必要なデータ処理を実行する。データ処理部21は、グッドユーザ判断手段24と、トークン生成手段25と、トークン検証手段26と、トークン有効性証明書生成手段27とを備えている。
グッドユーザ判断手段(グッドユーザリスト生成手段)24は、信頼できるユーザであると認定されたユーザの識別情報をグッドユーザ記憶部22aに記憶すると共に、グッドユーザの識別情報に権限管理サーバ20の電子署名等を付加したグッドユーザリストを生成し、これをグッドユーザリスト記憶部22bに記憶する。グッドユーザ判断手段24は、トークンの発行を要求したユーザがグッドユーザであるか一般ユーザであるかを判断し、グッドユーザであると判断した場合には、トークンとともに譲渡元ユーザ端末10に送信するためにグッドユーザリストをデータ記憶部22から読み出す。
トークン生成手段25は、権限管理サーバ20の電子署名を含むトークンを生成し、これをトークン記憶部22eに記憶する。
トークン検証手段26は、譲渡先ユーザ端末30から受信した譲渡トークンの正当性と有効性および譲渡の正当性を検証する。
トークン有効性証明書生成手段27は、トークン検証手段26による検証にすべて合格した譲渡トークンについてトークン有効性証明書を生成し、これをデータ記憶部22に記憶する。
【0033】
データ記憶部12は、たとえばRAM等の記憶装置によって構成され、グッドユーザ記憶部22a、グッドユーザリスト記憶部22b、署名生成用鍵記憶部22c、署名検証用鍵記憶部22d、トークン記憶部22e、トークン有効性証明書記憶部22fを備えている。
グッドユーザ記憶部22aには、権限管理サーバ20が信頼できるユーザであると保証するユーザのユーザ識別子の一覧が記憶されている。
グッドユーザリスト記憶部22bには、グッドユーザリストが記憶されている。
署名生成用鍵記憶部22cには、譲渡元ユーザ端末10に送信するトークンとグッドユーザリスト、譲渡先ユーザ端末30に送信するトークン有効性証明書に付す電子署名を生成するための署名生成用鍵が記憶されている。署名生成用鍵は、たとえば権限管理サーバ20の秘密鍵である。
署名検証用鍵記憶部22dには、検証のために譲渡先ユーザ端末30から送信された譲渡トークンに付されている電子署名を検証するための署名検証用鍵が記憶されている。署名検証用鍵は、たとえば譲渡元ユーザの公開鍵である。
トークン記憶部22eには、譲渡元ユーザ端末10に送信したトークンが記憶されている。
トークン有効性証明書記憶部22fには、譲渡先ユーザ端末30に送信したトークン有効性証明書が記憶されている。
【0034】
データ送受信部23は、たとえばLANアダプタにより構成され、CPUが実行するデバイスドライバと通信プロトコルスタックによって制御され、譲渡元ユーザ端末10および譲渡先ユーザ端末30との間でデータの送受信を行う。
【0035】
譲渡先ユーザ端末30は、たとえばパーソナルコンピュータ、PDA等のCPUと通信装置を備えた機器であり、データ処理部31とデータ記憶部32とデータ送受信部33とを備えている。
データ処理部31は、たとえばCPUがOS、デバイスドライバ、アプリケーションプログラム等の各種プログラムを実行することにより実現され、トークンの授受に必要なデータ処理を実行する。データ処理部31は、グッドユーザ判断手段34と、トークン有効性証明書検証手段35と、トークン検証手段36とを備えている。
グッドユーザ判断手段34は、譲渡トークンを譲渡元ユーザ端末10から送信したユーザがグッドユーザであるか一般ユーザであるかを判断する。そして、トークンを送信したユーザが一般ユーザであると判定した場合は、譲渡トークンの正当性と有効性を確認するために譲渡トークンをデータ通信部33を介して権限管理サーバ20に送信する。
トークン有効性証明書検証手段35は、権限管理サーバ20から受信したトークン有効性証明書の正当性を検証する。
トークン検証手段36は、譲渡トークンを送信したユーザがグッドユーザ判断手段によりグッドユーザであると判断された場合に、譲渡トークンの正当性をトークン検証用鍵を用いて検証する。
【0036】
データ記憶部32は、たとえばRAM等の記憶装置によって構成され、グッドユーザリスト記憶部32a、署名検証用鍵記憶部32b、トークン記憶部32c、トークン有効性証明書記憶部32dを備えている。
グッドユーザリスト記憶部32aには、譲渡元ユーザ端末10から受信したグッドユーザリストが記憶されている。
署名検証用鍵記憶32bには、譲渡元ユーザ端末10から受信した譲渡トークンと権限管理サーバ20から受信したトークン有効性証明書の正当性を検証するための検証用鍵が記憶されている。検証用鍵は、たとえば譲渡元ユーザと権限管理サーバ20の公開鍵である。
トークン記憶部32cには、譲渡元ユーザ端末10から受信した譲渡トークンが記憶されている。
トークン有効性証明書記憶部32には、権限管理サーバ20から受信したトークン有効性証明書が記憶されている。
【0037】
データ送受信部33は、たとえばLANアダプタにより構成され、CPUが実行するデバイスドライバと通信プロトコルスタックによって制御され、権限管理サーバ20および譲渡元ユーザ端末10との間でデータの送受信を行う。
【0038】
図6は、権限管理システム1で用いられる主要なデータのデータ構造を示す図である。
図6(a)に、権限管理サーバ20により生成され譲渡元ユーザ端末10に送信されるトークン40のデータ構造を示す。
トークン40には、トークン識別子41、権限情報42、権限管理サーバ情報43、譲渡元ユーザ情報44、有効期間45が含まれている。
トークン識別子41は、システム上でトークンを一意に識別するための情報で、たとえば、発行順を示す通し番号である。
権限情報42は、このトークンを持つユーザに対して与えられたシステム利用上の権限の内容を示す情報で、たとえば「ファイルABC.TXTの閲覧を許可する」という意の情報である。
権限管理サーバ情報43は、トークンを発行した権限管理サーバ20に関する情報で、たとえば、権限管理サーバ20のコンピュータ名を示す文字列である。
譲渡元ユーザ情報44は、トークン40が与えられたユーザを示す情報で、たとえば、トークンを与えられたユーザのユーザIDである。
有効期間45は、トークン40が有効な期間を示す情報で、たとえば有効期間の終わる時刻を示す文字列である。
トークン40には、権限管理サーバ20により生成された権限管理サーバ20の電子署名46が付されている。権限管理サーバの電子署名46は、たとえばトークン識別子41、権限情報42、権限管理サーバ情報43、譲渡元ユーザ情報44、有効期間45のハッシュ値に、公開鍵暗号方式の署名アルゴリズムに権限管理サーバの秘密鍵を用いて計算された値である。
【0039】
図6(b)に、譲渡元ユーザ端末10により生成され譲渡先ユーザ端末30に送信される譲渡トークン50のデータ構造を示す。
譲渡トークン50には、トークン40、譲渡先ユーザ情報51、譲渡情報52、利用制限期間53が含まれている。
譲渡先ユーザ情報51は、譲渡トークン50を受け取るユーザを示す情報で、たとえば、譲渡トークンを受け取るユーザのユーザIDである。
譲渡情報52は、トークンを譲渡した譲渡元ユーザのユーザ識別情報と譲渡を行った時刻を示す情報である。
利用制限期間53は、トークン40に設定された有効期間45とは別に譲渡元ユーザが指定した譲渡トークン50を譲渡先ユーザが使用することが可能な期間を示す情報で、たとえば利用可能な期間の終わる時刻を示す文字列である。
譲渡トークン50には、譲渡元ユーザ端末10により生成された譲渡元ユーザの電子署名54が付されている。譲渡元ユーザの電子署名54は、たとえばトークン40、譲渡先ユーザ情報51、譲渡情報52、利用制限期間53のハッシュ値に、公開鍵暗号方式の署名アルゴリズムに譲渡元ユーザの秘密鍵を用いて計算された値である。
【0040】
図6(c)に、権限管理サーバ20により生成され譲渡元ユーザ端末10に送信されるグッドユーザリスト60のデータ構造を示す。
グッドユーザリスト60には、グッドユーザリスト識別子61、グッドユーザ情報62、権限管理サーバ情報63、発行日付・時間64、有効期間65が含まれている。
グッドユーザ情報62は、権限管理サーバ20が信頼できるユーザであると認定したユーザを特定する情報で、たとえば、信頼できるユーザのユーザIDのリストである。
権限管理サーバ情報63は、図6(a)の権限管理サーバ情報43と同一である。
発行日付・時刻64は、グッドユーザリスト60が生成された日付と時刻を示す情報である。
有効期間65は、グッドユーザリスト60が有効な期間を示す情報で、たとえば有効期間が終わる時刻を示す文字列である。
グッドユーザリスト60には、権限管理サーバ20により生成された権限管理サーバの電子署名66が付されている。権限管理サーバの電子署名66は、たとえばグッドユーザリスト識別子61、グッドユーザ情報62、権限管理サーバ情報63、発行日付・時間64、有効期間65のハッシュ値に、公開鍵暗号方式の署名アルゴリズムに権限管理サーバの秘密鍵を用いて計算された値である。
【0041】
図6(d)に、権限管理サーバ20により生成され譲渡先ユーザ端末30に送信されるトークン有効性証明書70のデータ構造を示す。
トークン有効性証明書70には、トークン識別子71、検証結果72、権限管理サーバ情報73、譲渡先ユーザ情報74、譲渡情報75、有効期間76、権限情報77を含んでいる。
トークン識別子71は、トークン検証手段26が有効性を検証した譲渡トークンの識別子である。
検証結果72は、トークン検証手段26による譲渡トークンの検証結果を示す情報である。
権限管理サーバ情報73は、図6(a)の権限管理サーバ情報43と同一の情報である。
譲渡先ユーザ情報74は、図6(b)の譲渡先ユーザ情報51と同一の情報である。
譲渡情報75は、トークンを譲渡した譲渡元ユーザのユーザ識別情報と譲渡を行った時刻を示す情報である。
有効期間76は、トークン有効性証明書70が有効な期間を示す情報で、たとえば有効期間が終わる時刻を示す文字列である。
権限情報77は、譲渡トークン50によって譲渡先ユーザに与えられるシステム利用上の権限の内容を示す情報である。
トークン有効性証明書70には、権限管理サーバ20により生成された権限管理サーバの電子署名78が付されている。権限管理サーバの電子署名78は、たとえばトークン識別子71、検証結果72、権限管理サーバ情報73、譲渡先ユーザ情報74、譲渡情報75、有効期間76、権限情報77のハッシュ値に、公開鍵暗号方式の署名アルゴリズムに権限管理サーバの秘密鍵を用いて計算された値である。
【0042】
図4は、権限管理サーバ20が譲渡元ユーザ端末10に対してトークンを発行する際の権限管理システム1の動作を示すフローチャートである。
譲渡元ユーザ端末10のトークン要求手段14は、ネットワーク2を介して権限管理サーバ20にトークンの要求を行う(S201)。このトークン要求には、トークン要求手段14がユーザ識別子記憶部12aから読み出したユーザ識別子が含まれる。
権限管理サーバ20のデータ送受信部23は、トークンの要求を受信する(S101)。グッドユーザ判断手段24は、受信したユーザ識別子に対応するユーザが、グッドユーザであるか一般ユーザであるかを判定する(S102)。この判定は、受信したユーザ識別子がグッドユーザリスト記憶部22bに記憶されている場合は、トークン要求を行ったユーザをグッドユーザと、そうでない場合は一般ユーザと判定することにより行う。
【0043】
S102でトークンを要求してきたユーザがグッドユーザであると判定された(S102の判定が「グッドユーザ」の)場合は、グッドユーザ判断手段24が、グッドユーザリストをグッドユーザリスト記憶部22bから読み取り(S103)、トークン生成手段25がトークンを生成し、このトークンをトークン記憶部22eに記憶する(S104)。S102でトークンを要求してきたユーザが、一般ユーザであると判定された(S102の判定が「一般ユーザ」の)場合は、グッドユーザリストの読み出しは行わずに、トークン生成手段25がトークンを生成し(S104)、このトークンをトークン記憶部22eに記憶する(S105)。S104で生成されるトークンには、トークン生成手段25が署名生成用鍵記憶部22cから読み出したトークン署名鍵を用いた権限管理サーバ20の電子書名が付されている。
データ送信部23は、トークン要求を行ったユーザがS102においてグッドユーザと判定された場合は、トークンとグッドユーザリストを、一般ユーザと判定された場合はトークンを譲渡元端末10に送信する(S106)。
【0044】
譲渡元ユーザ端末10のデータ送受信部13は、権限管理サーバ20から送信されたデータを受信する(S203)。
トークン読み書き手段15は、予め署名検証用鍵記憶部22cに記憶されているトークン用検証鍵を用いて受信したトークンの正当性(受信トークンが権限管理サーバ20により発行されたものか否か)を確認する(S204)。トークン読み書き手段15は、正当性が確認された(S204の判定がイエスの)場合は、権限管理サーバ20から受信したトークンをトークン記憶部12dに記憶する(S205)。トークン読み書き手段15は、正当性が確認できなかった(S204の判定がノーの)場合は、たとえば、エラーメッセージを表示装置に表示する等のエラー処理を行い(S209)、トークン取得処理を終了する(S208)。
トークン読み書き手段は、S203において受信したデータにグッドユーザリストが含まれる(S206の判定が「グッドユーザ」の)場合には、受信したグッドユーザリストをグッドユーザリスト記憶部12eに記憶する。
【0045】
図5は、トークンが譲渡元ユーザ端末10から譲渡先ユーザ端末30に譲渡される際の権限管理システム1の動作を示すフローチャートである。
譲渡元ユーザ端末10のトークン譲渡手段17は、譲渡しようとするトークンに対応するグッドユーザリストがグッドユーザリスト記憶部12eに記憶されているか否かを判定する(S212)。トークン譲渡手段17は、グッドユーザリストが記憶されている(S212の判定が「グッドユーザ」の)場合は、グッドユーザリスト読み書き手段16を介してグッドユーザリストを読み出す(S213)。グッドユーザリストが記憶されていない(S212の判定が「一般ユーザ」の)場合は、グッドユーザリストの読み出しは行わない。
トークン読み書き手段15はトークン記憶部12dに記憶されている権限管理サーバ20から受信したトークンを読み出し、これに署名生成用鍵記憶部12bから読み出したユーザAの署名鍵を用いて電子署名を付して譲渡トークンを生成する(S214)。
データ送受信部13は、譲渡トークンと、S213が実行された場合はグッドユーザリストを譲渡先ユーザ端末30に送信する(S215)。
【0046】
譲渡先ユーザ端末30のデータ送受信部33は、譲渡元ユーザ端末10から送信されたデータを受信する(S301)。
グッドユーザ判断手段34は、ユーザAがトークを取得した時点でグッドユーザであったか否かを判定する(S302)。受信したデータにグッドユーザリストが含まれていない場合には、ユーザAは一般ユーザであると判定し、譲渡トークンの正当性(トークンが権限管理サーバにより発行され、譲渡元ユーザ端末10により譲渡先ユーザ端末に譲渡されたものか否か)と有効性(譲渡トークンの有効期間は満了していないか等)を権限管理サーバ20に問い合わせる。この処理については、後述する。
【0047】
受信したデータにグッドユーザリストが含まれていた場合には、グッドユーザ判断手段34は、受信したグッドユーザリストとグッドユーザリスト記憶22bから読み出したグッドユーザリストのうちの新しいほうに譲渡元ユーザのユーザ識別子が記録されている場合に、譲渡元ユーザをグッドユーザと判定する。ただし、受信したグッドユーザリストのほうが新しい場合には、グッドユーザ判断手段34は、受信したグッドユーザリストの正当性(グッドユーザリストが権限管理サーバ20により発行されたものか否か)を署名検証用鍵記憶部32bから読み出したグッドユーザリスと用の検証鍵で検証し、グッドユーザリストの正当性が確認できなかった場合には、譲渡元ユーザを一般ユーザと判定する。
S302において、譲渡元ユーザがグッドユーザと判定された場合は、トークン検証手段26は、署名検証用鍵記憶部22dから読み出したトークン検証用鍵を用いて受信したトークンの正当性を検証する(S303)。この検証の結果、受信したトークンの正当性が確認された場合は、トークン検証手段26は、受信したトークンをトークン記憶部22eに記憶する(S304)。
【0048】
S302において、譲渡元ユーザが一般ユーザであると判定した場合、データ送受信部33は譲渡トークンを権限管理サーバ20に送信し、譲渡トークンの正当性および有効性の検証を依頼する(S306)。
権限管理サーバのデータ送受信部23は、譲渡トークンを受信する(S111)。
次に、トークン検証手段26は署名検証用鍵記憶部22dに記憶しているトークン検証用鍵を用いて譲渡トークンの正当性の検証を行い、また、予め署名検証用鍵記憶部22cに記憶されている譲渡元ユーザの署名検証用鍵を用いて譲渡の正当性(譲渡トークンが譲渡元ユーザにより譲渡先ユーザに譲渡されたものか否か)確認を行う。トークン検証手段26は、さらに、トークン記憶部22eに記憶されている発行済みのトークンの履歴を参照し、譲渡先ユーザ端末10から受信した譲渡トークンが既に使用済みでないか、既に他のユーザに譲渡済みでないかを調べ、トークンの有効性を検証する(S112)。
S112でトークンの正当性、譲渡の正当性、トークンの有効性の中の一つ以上が確認できなかった場合は、トークン有効性証明書生成手段27は、たとえば、譲渡先ユーザ端末30に検証結果を通知する等のエラー処理を行い検証処理を終了する(S115)。
S112でトークンの正当性、譲渡の正当性、トークンの有効性がすべて確認された場合、トークン有効性証明書生成手段27は、署名生成用鍵記憶部22cに記憶されているトークン有効性証明書用の署名鍵を用いてトークン有効性証明書を生成する(S113)。そして、データ送受信部23は、譲渡先ユーザ端末30にトークン有効性証明書を送信する(S114)。
【0049】
譲渡先ユーザ端末30のデータ送受信部33は、トークン有効性証明書を受信し(S307)、トークン有効性証明書検証手段35は、署名検証用鍵記憶部32bから読み出したトークン有効性証明書の検証用鍵を用いてトークン有効性証明書の検証を行う(S308)。
そして、その検証結果が合格であるならば、トークン検証手段36は、譲渡トークンをトークン記憶部32cに記憶し、トークン有効性証明書検証手段35は、トークン有効性証明書をトークン有効性証明書記憶部32dに記憶し(S309)、譲渡処理は完了する(S311)。
S308の検証結果が不合格である場合は、トークン有効性証明書検証手段35は、たとえば、検証結果を譲渡先ユーザ端末30の表示装置に表示する等のエラー処理を行い譲渡処理を終了する(S310)。
ユーザBがサービスを利用する時には、データ送受信処理部33は、トークン記憶部32cから譲渡トークンを、トークン有効性証明書記憶部32dからトークン有効性証明書を読み出してそれらを権限管理サーバ20に送信する。
【0050】
譲渡先ユーザ端末30は、譲渡元ユーザが一般ユーザであれば、権限管理サーバ20にオンラインで譲渡トークンの正当性および有効性を確認することで安全にトークンの譲渡を受けることができる。一方、譲渡元ユーザがグッドユーザであれば、譲渡先ユーザ端末30は、権限譲渡でのセキュリティリスクがさほど高くないので、オフラインで譲渡トークンの正当性検証を行うのみで済ませる。
つまり、譲渡先ユーザ端末が一元的に権限管理システム20とのオンラインによるトークンの検証を行うシステムと比べた場合、システム全体で、グッドユーザによる譲渡回数分だけ通信コストを削減するとともに、権限管理サーバへの通信集中に伴う負荷を軽減することができ、一元的に権限管理システムとオフラインでトークンの検証を行うシステムと比べた場合、システム全体で、セキュリティリスクが高まることはない。
そのため、権限管理システム1によれは、サービス利用権限を表すトークンの譲渡の際に、譲渡先ユーザのセキュリティリスクをさほど上げずに、システム全体として、譲渡先ユーザ端末30と権限管理サーバ20との間の検証時の通信コストおよび権限管理サーバ20への通信の負荷を削減できる。
【0051】
権限管理システム1においては、セキュリティリスクの低いグッドユーザによるトークン譲渡の安全性は、譲渡トークンと共に譲渡先ユーザ端末に送信されるグッドユーザリストに根拠をおいている。グッドユーザリストはある程度使いまわされ利用されるため、1回のトークン譲渡の度に、グッドユーザリストの電子署名の生成や検証を行うこと必要がない。
一方、セキュリティリスクの高い一般ユーザによるトークン譲渡の安全性は、権限管理サーバが発行するトークン有効性証明書に根拠をおいており、1回のトークンの譲渡の度に、トークン有効性証明書の電子署名の生成と検証を必ず1回ずつ行う必要がある。
そのため、権限管理システム1によれば、サービス利用権限を表すトークンの譲渡を行うまでにシステム全体で、譲渡先ユーザのセキュリティリスクをさほど高めずに、電子署名の処理に関する計算コストを削減できることにある。
【0052】
権限管理システム1における詳細な署名の生成、検証の回数は以下のとおりである。
一般ユーザがトークンの譲渡を行うまでにシステム全体で必要となる電子署名の生成は、権限管理サーバ20が譲渡元ユーザ端末10の要求に応じてトークンの生成を行う時に1回、譲渡元ユーザ端末10が譲渡トークンを生成する時に1回、権限管理サーバ20が譲渡先ユーザ端末に対する譲渡トークンの有効性証明書の発行をする時に1回必要となるので、合計3回の電子署名を生成することになる。
さらに、一般ユーザがトークンの譲渡を行うまでにシステム全体で必要となる電子署名の検証回数は、譲渡元ユーザ端末10による権限管理サーバ20から受信したトークンの正当性検証に1回、権限管理サーバ20による譲渡先ユーザ端末から受信した譲渡トークンの正当性検証に1回、譲渡先ユーザ端末30による有効性証明書の正当性検証に1回必要となるので、合計3回の電子署名の検証を行うことになる。
【0053】
一方、グッドユーザがトークンの譲渡を行うまでにシステム全体で必要となる電子署名の生成は、権限管理サーバ20が譲渡元ユーザ端末10の要求に応じてトークンの生成を行う時に1回、権限管理サーバ20が譲渡元ユーザ端末10にグッドユーザリストを生成するのに高々1回、譲渡元ユーザ端末が譲渡トークンを生成するのに1回必要となるので、高々合計3回の電子署名を生成することになる。
ここで、注意されたいのは、グッドユーザリストはグッドユーザが権限管理サーバに登録された時点で初めて更新されるため、通常の電子署名の生成回数は、合計2回である。
さらに、グッドユーザがトークンの譲渡を行うまでにシステム全体で必要となる電子署名の検証回数は、譲渡元ユーザ端末10が権限管理サーバ20から受信したトークンの正当性検証を行うのに1回、譲渡先ユーザ端末30が譲渡トークンの正当性検証を行うのに1回、譲渡先ユーザ端末30がグッドユーザリストの正当性検証を行うのに高々1回必要となるので、高々合計3回の電子署名の検証を行うことになる。なお、グッドユーザリストは、譲渡先ユーザ端末30が譲渡元ユーザがグッドユーザか否かを判定するために参照する情報であるから、譲渡元ユーザ端末10が権限管理サーバ20から受信したグッドユーザリストを検証する必要はない。
【0054】
次に、本発明の第2の実施形態である権限管理システム3の構成と動作について説明する。アクセス管理システム3は、第1の実施形態をサービスの利用と提供に適用したものである。権限管理システム1と同様の構成と動作については説明を省略し、相違点を中心に説明する。
図7は、アクセス管理システム3の構成を示す全体図である。
アクセス管理システム3は、利用者端末(ユーザ端末)4とサービス提供者サーバ(サーバ)5と権限管理サーバ20を備え、これらは、たとえばインターネット等のネットワーク2を介して相互に通信可能に構成されている。
利用者端末4は、図3に示した譲渡元ユーザ端末10と同様の構成要素を備え、権限管理サーバ20からトークンの発行を受ける。利用者端末10は、サービス提供サーバ5が提供するサービスを利用する際に、権限管理サーバ20から発行されたトークンに情報を付加して生成した図6(b)の譲渡トークンと同一形式のトークン(送信用トークン)をサービス提供者サーバに送信し認証を受ける。
サービス提供者サーバ5は、図3に示した譲渡先ユーザ端末30と同様の構成要素を備えるとともに、利用者端末4等のクライアント装置に、たとえばデータベース検索サービス等のサービスを提供する。サービス提供者サーバ5は、利用者端末4からトークンを受信し、このトークンの正当性が確認できた場合に利用者端末4にサービスを提供する。
【0055】
次に、アクセス管理システム3の動作について説明する。
利用者端末4が権限管理サーバ20からトークンの発行を受ける動作は、図4と同様であるから説明を省略する。
図8は、利用者端末4が、サービス提供者サーバ5からサービスの提供を受ける際の動作を示すフローチャートである。この動作についても、図5の譲渡元ユーザ端末10が利用者端末4に、図5の譲渡先ユーザ端末30がサービス提供者サーバ5に置き換わるだけで基本的には図5の場合と同様である。
S303で譲渡トークンの正当性が確認された場合、およびS308でトークン有効性証明書の正当性と有効性が確認された場合には、サービス提供者サーバ5は、利用者端末4から要求されたサービスを提供する。
【0056】
次に、図を参照しながら本発明の第3の実施形態である権限管理システム7の構成と動作について説明する。権限管理システム1と同様の構成と動作については説明を省略し、相違点を中心に説明する。
図9は、権限管理システム7の構成を示す全体図である。
権限管理システム1は、譲渡元ユーザ端末10と権限管理サーバ20と譲渡先端末30とサプライズ端末6を備え、これらは、たとえばインターネット等のネットワーク2を介して相互に通信可能に構成されている。
サプライズ端末6は、権限管理サーバ20により選定された特別な譲渡先ユーザ端末である。サプライズ端末6は、図3に示した譲渡先ユーザ端末30と同様の構成を備えるとともに、権限管理サーバ20からサプライズ端末として選定されていることを証明するサプライズ証明書を受信し、これをデータ記憶部32に記憶している。
【0057】
次に、権限管理システム7の動作について説明する。
利用者端末4が権限管理サーバ20からトークンの発行を受ける動作は、図4と同様であるから説明を省略する。
図10は、利用者端末4が、サプライズ端末6にトークンを譲渡する際の動作を示すフローチャートである。この動作についても、基本的には、図5の場合と同様である。
サプライズ端末6は、譲渡元ユーザ端末10からトークンを受信した場合は、譲渡元ユーザがグッドユーザであるか否かの判定(図5のS302)は行わずに、常に権限管理サーバ20にトークンの検証を依頼する(S306)。
権限管理サーバ20がトークンの検証を行う動作とトークン有効性証明書を受信した後のサプライズ端末6の動作は、図5と同様である。ただし、トークン検証手段26は、S112の判定が「NG」の場合には、譲渡トークンを生成した譲渡元ユーザの識別情報をグッドユーザ記憶部22aおよびグッドユーザリスト記憶部24bから削除してグッドユーザリストを更新する。
【0058】
権限管理システム1では、権限管理サーバ20がトークンを発行した時点で譲渡元ユーザがグッドユーザであった場合には、譲渡トークンを受信した譲渡先ユーザ端末30はトークンの正当性を権限管理サーバ20に問い合わせない。そのため、トークンを取得してから譲渡トークンを送信するまでの間に譲渡元ユーザがグッドユーザから一般ユーザに変化した場合には、譲渡先ユーザ端末30は、この変化を受信した譲渡トークンを使用するまで検出することができない。
これに対し、権限管理システム7によれば、サプライズ端末6は、譲渡トークンを受信した場合に常に権限管理サーバ20への検証依頼を行うから、譲渡元ユーザの一般ユーザへの変化を、譲渡トークンを受信した時点で検出することができる。また、権限管理サーバ20もサプライズ端末6からの依頼を受けた時点で、グッドユーザリストを更新することができる。
【図面の簡単な説明】
【0059】
【図1】本発明の第1の実施形態である権限管理システムの構成図である。
【図2】権限管理システムで用いられる2種類のトークン検証方式を説明する図である。
【図3】譲渡元ユーザ端末と権限管理サーバと譲渡先ユーザ端末の機能ブロック図である。
【図4】権限管理システムのトークン発行動作を示すフローチャートである。
【図5】権限管理システムのトークン譲渡動作を示すフローチャートである。
【図6】図6(a)は、トークンのデータ構造を示す図である。図6(b)は、譲渡トークンのデータ構造を示す図である。図6(c)は、グッドユーザリストのデータ構造を示す図である。図6(d)は、トークン有効性証明書のデータ構造を示す図である。
【図7】本発明の第2の実施形態である権限管理システムの構成図である。
【図8】図7の権限管理システムのトークンを用いた認証動作を示すフローチャートである。
【図9】本発明の第3の実施形態である権限管理システムの構成図である。
【図10】図9の権限管理システムのトークン譲渡動作を示すフローチャートである。
【符号の説明】
【0060】
1、3、7 権限管理システム
4 利用者端末(ユーザ端末)
5 サービス提供者サーバ(サーバ)
6 サプライズ端末
10 譲渡元ユーザ端末
20 権限管理サーバ
30 譲渡先ユーザ端末
14 トークン要求手段
15 トークン読み書き手段(譲渡トークン生成手段)
16 グッドユーザリスト読み書き手段
17 トークン譲渡手段
24 グッドユーザ判断手段
25 トークン生成手段
26 トークン検証手段
27 トークン有効性証明書生成手段
34 グッドユーザ判断手段
35 トークン有効性証明書検証手段
36 トークン検証手段
40 トークン
50 譲渡トークン
60 グッドユーザリスト
70 トークン有効性証明書

【特許請求の範囲】
【請求項1】
譲渡元ユーザ端末に対してトークンを発行する権限管理サーバにおいて、
信頼できるユーザであると認定されたユーザであるグッドユーザの識別情報を予め記憶したグッドユーザ記憶部と、
前記識別情報が前記グッドユーザ記憶部に記憶されたときに動作し、前記グッドユーザ記憶部から読み出した前記グッドユーザの識別情報を含むグッドユーザリストを生成するグッドユーザリスト生成手段と、
前記譲渡元ユーザ端末からトークン発行要求を受信したときに作動し、前記譲渡元ユーザのユーザ識別情報を含むトークンを生成するトークン生成手段と、
前記グッドユーザリストと前記トークンを前記譲渡元ユーザ端末に送信するトークン送信手段とを備えたことを特徴とした権限管理サーバ。
【請求項2】
前記譲渡元ユーザ端末から前記トークンの譲渡を受けた譲渡先ユーザ端末から前記譲渡されたトークンの検証依頼を受信したときに作動し、前記譲渡トークンの正当性と有効性を検証しこの検証の結果を含むトークン有効性証明書を生成しこれを前記譲渡先ユーザ端末に送信するトークン有効性証明書生成手段を備えたことを特徴とした請求項1に記載の権限管理サーバ。
【請求項3】
譲渡元ユーザ端末とこの譲渡元ユーザ端末に対してトークンを発行する権限管理サーバと前記譲渡元ユーザ端末から前記トークンの譲渡を受ける譲渡先ユーザ端末を備えた権限管理システムにおいて、
前記権限管理サーバは、
信頼できるユーザであると認定されたユーザであるグッドユーザの識別情報を予め記憶したグッドユーザ記憶部と、
前記識別情報が前記グッドユーザ記憶部に記憶されたときに動作し、前記グッドユーザ記憶部から読み出した前記グッドユーザの識別情報を含むグッドユーザリストを生成するグッドユーザリスト生成手段と、
前記譲渡元ユーザ端末からトークン発行要求を受信したときに作動し、前記譲渡元ユーザのユーザ識別情報を含むトークンを生成するトークン生成手段と、
前記グッドユーザリストと前記トークンを前記譲渡元ユーザ端末に送信するトークン送信手段とを備え、
前記譲渡元ユーザ端末は、
前記譲渡元端末を使用するユーザである譲渡元ユーザのユーザ識別情報を含むトークン発行要求を前記権限管理サーバに送信するトークン要求手段と、
前記トークン要求手段に応じて前記権限管理サーバから発行された前記トークンと前記前記譲渡元ユーザの前記識別情報を含む譲渡トークンを生成する譲渡トークン生成手段と、
前記譲渡トークンを前記権限管理サーバから受信した前記グッドユーザリストと共に前記譲渡先ユーザ端末に送信するトークン譲渡手段とを備え、
前記譲渡先ユーザ端末は、
前記譲渡トークンを受信したときに作動し、前記譲渡元ユーザの前記識別情報が前記グッドユーザリストに含まれている場合は前記譲渡トークンに含まれる情報に基づいて前記譲渡トークンの正当性を検証し、前記譲渡元ユーザの前記識別情報が前記グッドユーザリストに含まれていない場合は前記譲渡トークンを前記権限管理サーバに送信して正当性の検証を依頼するトークン検証手段を備えたことを特徴とした権限管理システム。
【請求項4】
前記権限管理サーバは、前記譲渡先ユーザ端末から前記譲渡トークンの検証依頼を受信したときに作動し、前記譲渡トークンの正当性と有効性を検証しこの検証の結果を含むトークン有効性証明書を生成しこれを前記譲渡先ユーザ端末に送信するトークン有効性証明書生成手段を備え、
前記譲渡先ユーザ端末は、前記トークン有効性証明書の正当性を検証するトークン有効性証明書検証手段を備えたことを特徴とした請求項3に記載の権限管理システム。
【請求項5】
前記譲渡元ユーザ端末から前記譲渡トークンを受信するサプライズ端末を備え、
このサプライズ端末は、前記譲渡トークンを受信したときに作動し、前記譲渡トークンを前記権限管理サーバに送信する譲渡トークン送信手段を備え、
前記権限管理サーバは、前記譲渡トークンの正当性を検証し前記譲渡トークンが正当なものでないと判断した場合に前記譲渡トークンを生成した前記譲渡元ユーザの識別情報を前記グッドユーザリストから削除するグッドユーザリスト更新手段とを備えたことを特徴とした請求項4に記載の権限管理システム。
【請求項6】
ユーザ端末とこのユーザ端末に対してトークンを発行する権限管理サーバと前記ユーザ端末にサービスを提供するサーバとを備えた権限管理システムにおいて、
前記ユーザ端末は、
前記ユーザ端末を使用するユーザのユーザ識別情報を含むトークン発行要求を前記権限管理サーバに送信するトークン要求手段と、
前記トークン要求手段に応じて前記権限管理サーバから発行された前記トークンと前記前記ユーザの前記識別情報を含む送信用トークンを生成するトークン生成手段と、
前記送信用トークンを前記サーバに送信するトークン送信手段とを備え
前記権限管理サーバは、
信頼できるユーザであると認定されたユーザであるグッドユーザの識別情報を予め記憶したグッドユーザ記憶部と、
前記識別情報が前記グッドユーザ記憶部に記憶されたときに作動し、前記グッドユーザ記憶部から読み出した前記グッドユーザの識別情報を含むグッドユーザリストを生成するグッドユーザリスト生成手段と、
前記ユーザ端末からトークン発行要求を受信したときに作動し、前記ユーザのユーザ識別情報を含むトークンを生成するトークン生成手段と、
前記グッドユーザリストと前記トークンを前記ユーザ端末に送信するトークン送信手段とを備え、
前記サーバは、
前記送信用トークンを受信したときに作動し、前記ユーザの前記識別情報が前記グッドユーザリストに含まれている場合は前記送信トークンに含まれる情報に基づいて前記送信トークンの正当性を検証し、前記ユーザの前記識別情報が前記グッドユーザリストに含まれていない場合は前記送信用トークンを前記権限管理サーバに送信して正当性の検証を依頼するトークン検証手段を備え、このトークン検証手段により前記送信用トークンの正当性が確認された場合に前記ユーザ端末に対してサービスを提供することを特徴とした権限管理システム。
【請求項7】
譲渡元ユーザ端末から受信したトークンの正当性を検証する方法において、
前記トークンの譲渡元のユーザの識別情報が前記トークンとともに受信され信頼できるユーザであると保障されたユーザの識別情報が記録されたグッドユーザリストに含まれている場合には、前記トークンに含まれる情報に基づいて前記トークンの正当性を検証し、前記譲渡元ユーザの前記識別情報が前記グッドユーザリストに含まれていない場合には、前記トークンを前記譲渡元ユーザ端末に発行した権限管理サーバに前記受信したトークンを送信し前記受信したトークンの正当性の検証を依頼することを特徴としたトークン検証方法。
【請求項8】
譲渡元ユーザ端末から受信したトークンの正当性を検証するプログラムにおいて、
コンピュータに、
前記トークンの譲渡元のユーザの識別情報が前記トークンとともに受信され信頼できるユーザであると保障されたユーザの識別情報が記録されたグッドユーザリストに含まれている場合に作動し前記トークンに含まれる情報に基づいて前記トークンの正当性を検証する機能と、
前記譲渡元ユーザの前記識別情報が前記グッドユーザリストに含まれていない場合に作動し前記トークンを前記譲渡元ユーザ端末に発行した権限管理サーバに前記受信したトークンを送信し前記受信したトークンの正当性の検証を依頼する機能とを実行させることを特徴としたトークン検証プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2007−149010(P2007−149010A)
【公開日】平成19年6月14日(2007.6.14)
【国際特許分類】
【出願番号】特願2005−345929(P2005−345929)
【出願日】平成17年11月30日(2005.11.30)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】