説明

鍵管理装置、サービス提供装置、アクセス管理システム、アクセス管理方法、制御プログラム、およびコンピュータ読み取り可能な記録媒体

【課題】安全性を確保しつつ、柔軟なロール管理を実現する。
【解決手段】ロール管理装置300は、ロール毎にアクセス制限が設定されたサービスを提供するサービス提供装置500が、アクセス時に指定された公開鍵により所定の平文を暗号化したデータをサービス提供装置500から取得し、公開鍵に対応する秘密鍵により復号したデータをサービス提供装置500に送信するものであり、公開鍵は、ロール名を階層型IDベース暗号におけるIDとしたときの該IDの子孫IDであり、公開鍵に対応する秘密鍵は、階層型IDベース暗号にて算出される、子孫IDに対応する秘密鍵であり、公開鍵と対応する秘密鍵とを記憶するロール記憶部352と、公開鍵をサービス提供装置500に送信するロール送信部366と、送信した公開鍵により暗号化されたデータをロール記憶部352に記憶されている秘密鍵により復号したデータを生成する復号部338とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報サービスに対するアクセス権限を管理するアクセス管理システム、および、情報サービスへのアクセス時に用いる認証鍵を管理する鍵管理装置等に関するものである。
【背景技術】
【0002】
従来から、情報サービスに対するアクセス権限を管理する方法として、ロール(役割)に応じて、ユーザに操作の許可を与えるロールベースアクセス制御(RBAC:Role-Based Access Control)技術が広く知られている。
【0003】
ロールベースアクセス制御技術を用いるアクセス権限管理では、ロールの発行、ユーザとロールとの対応付け、ロールと操作との対応付け等の管理を厳密に行なう必要があるが、これらの管理は、システムの安全性を確保するために、システム管理者の権限で行なわれるのが通常である。
【0004】
ロールベースアクセス制御技術に関する先行技術として、特許文献1に開示されている技術がある。特許文献1では、システムの管理管轄を複数に分け、各管理管轄に権限を委譲することによって、従来のシステム管理者による一括管理を分割する手法が開示されている。具体的には、権限の一部が委譲されたサブ管理者により、ポリシーインスタンスが決定される。
【0005】
なお、アクセス権限管理に関連する技術として、クロスドメインシングルサインオン技術があり、例えば、「OpenID」や「Shibboleth」が広く知られている。OpenIDは、複数のWebサイトで共通のIDおよびパスワードを利用可能とする認証方式である。ユーザが所有するIDおよびパスワードを一元管理し、あるサイト(発行サイト)にてIDおよびパスワードを取得すれば、他のサイト(利用サイト)でも、同一のIDおよびパスワードを用いてログインすることを可能としている。これにより、ユーザのログイン操作の負荷を軽減している。
【0006】
また、Shibbolethは、予め連盟を結んだ組織間でユーザの属性情報を交換するシングルサインオン認証方式である。属性の判定結果に応じたアクセス制御を行ない、連盟組織内にログインしたユーザに対して、組織間にまたがったサービスの提供を可能としている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特表2009−544076号公報(公表日:2009年12月10日)
【発明の概要】
【発明が解決しようとする課題】
【0008】
上述したように、ロールベースアクセス制御技術では、システム管理を厳密に行なうために、ロールや操作のメンテナンスは、システム管理者が一元的に行なうのが通常であり、ユーザ自身がロール等のメンテナンスを行なうことはできない。つまり、安全性を重視しているため、柔軟性に欠けるものとなっている。
【0009】
これに対し、特許文献1に開示されている手法では、ロールベースアクセス制御を用いて管理権限を分割しているため、柔軟性を多少確保している。しかしながら、一般に知られているように、権限を分割すると、システムの安全性が脆弱になるという問題がある。特許文献1に開示されている手法は、システムが頑強であることを前提としたものである。
【0010】
また、特許文献1に開示されている手法では、管理者により作成されたデータベースから適切なコンテキストインスタンスを作成することによってロールを作成するとともに、ロールの属性はアプリケーションモジュールにより決定されるため、ユーザは自身のロールを自由に操作することができないことから、十分な柔軟性が確保されているわけではない。
【0011】
なお、OpenIDでは、利用サイトにおいてパスワードを開示する必要があり、権限に関する情報を安全に交換することができない。また、Shibbolethでは、ユーザ権限の管理は、各組織のルールに則して行なわれるため、利用できる権限の種類、権限の発行、権限の委譲などに制約があり、柔軟性に欠ける。
【0012】
以上のように、従来のアクセス権限管理技術は、安全性と、ロール管理の柔軟性とを両立させるものにはなっていないという問題がある。
【0013】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、安全性を確保しつつ、柔軟なロール管理を実現するアクセス管理システム等を提供することにある。
【課題を解決するための手段】
【0014】
上記課題を解決するために、本発明に係る鍵管理装置は、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するサービス提供装置が、ユーザが上記サービスにアクセスする際にユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化した暗号データを、上記サービス提供装置から取得するとともに、上記指定公開鍵に対応する秘密鍵により復号した復号データを上記サービス提供装置に送信する鍵管理装置であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶する鍵情報記憶部と、上記指定公開鍵を上記サービス提供装置に送信する鍵送信手段と、上記鍵送信手段にて送信した上記指定公開鍵により暗号化された上記暗号データを、上記鍵情報記憶部に記憶されている秘密鍵により復号して上記復号データを生成する復号データ生成手段とを備えることを特徴としている。
【0015】
上記の構成によれば、ユーザ群を識別する識別子(実施形態では、ロール(役割)のロール名に対応)を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDと、該子孫IDに対応する秘密鍵との組(実施形態では、部分ロールに対応)を鍵情報記憶部に記憶する。そして、サービスにアクセスする際にユーザにより指定された子孫IDをサービス提供装置に送信する。そして、該送信した子孫IDによりサービス提供装置にて所定の平文を暗号化した暗号データ(つまり、チャレンジデータ)を、該子孫IDに対応する秘密鍵により復号して復号データ(つまり、レスポンスデータ)を生成し、サービス提供装置に送信する。サービス提供装置では、いわゆるチャレンジ・レスポンス認証により、認証処理を行なっている。
【0016】
よって、サービスへのアクセスが許可されているユーザ群に属していなユーザであっても、子孫IDおよび対応する秘密鍵を用いることによって、サービス提供装置にて行なわれるチャレンジ・レスポンス認証に対応することができる。そして、サービス提供装置にて、認証成功時にサービスへのアクセスを許可する設定が成されていれば、サービスにアクセスすることが可能となる。
【0017】
したがって、サービスへのアクセスが許可されていないユーザが、サービスへのアクセスが許可されているユーザ群の識別子から得られる子孫IDおよび対応する秘密鍵を入手して用いることにより、システム管理者に依頼しなくとも、サービスにアクセスすることが容易に可能となる。つまり、サービスへのアクセスが許可されていないユーザに対して、アクセス権限の委任が容易に行なえるという効果を奏する。
【0018】
なお、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型IDベース暗号を用いて、子孫IDおよび対応する秘密鍵を生成可能であるものとすると、ユーザ間でのアクセス権限の委任が柔軟に行なえることとなる。
【0019】
さらに、サービス提供装置では、チャレンジ・レスポンス認証により、子孫IDおよび対応する秘密鍵の正当性を検証するので、安全性(セキュリティ)を確保することもできる。
【0020】
さらに、本発明に係る鍵管理装置は、上記の構成において、上記鍵情報記憶部は、上記子孫IDと、該子孫IDを公開鍵暗号における公開鍵としたときの秘密鍵との組を複数記憶するものであり、上記鍵情報記憶部に記憶されている上記子孫IDのいずれかを、上記指定公開鍵として、ユーザに指定させる鍵指定手段をさらに備える構成としてもよい。
【0021】
上記の構成によれば、複数の子孫IDの中からユーザが所望の子孫IDを選択し、該選択した子孫IDおよび対応する秘密鍵を用いることによって、サービスにアクセスすることが可能となる。
【0022】
さらに、本発明に係る鍵管理装置は、上記の構成において、上記鍵指定手段にて、上記鍵情報記憶部に記憶されている上記子孫IDのいずれかをユーザに指定させる際、ユーザの正当性を認証する認証手段をさらに備える構成としてもよい。
【0023】
上記の構成によれば、鍵管理装置に記憶されている子孫IDにアクセスするユーザの正当性を認証するので、不正ユーザによる子孫IDの利用を防止できる。
【0024】
さらに、本発明に係る鍵管理装置は、上記の構成において、上記子孫IDと、該子孫IDを公開鍵暗号における公開鍵としたときの秘密鍵との組を、上記鍵情報記憶部に格納する鍵格納手段をさらに備える構成としてもよい。
【0025】
上記の構成によれば、ユーザが、他のユーザ等から新たに入手した子孫IDおよび対応する秘密鍵を鍵情報記憶部に格納することができるので、新たに入手した子孫IDおよび対応する秘密鍵を用いることによって、サービスにアクセスすることが可能となる。
【0026】
さらに、本発明に係る鍵管理装置は、上記の構成において、上記ユーザ群を識別する識別子と、該識別子を公開鍵暗号における公開鍵としたときの秘密鍵との組から、階層型IDベース暗号を用いて、上記子孫IDと該子孫IDに対応する秘密鍵との組を生成する鍵生成手段をさらに備える構成としてもよい。
【0027】
上記の構成によれば、ユーザが、子孫IDと該子孫IDに対応する秘密鍵との組を生成することができるので、該生成した子孫IDおよび対応する秘密鍵を他のユーザに渡すことにより、他のユーザは、当該渡された子孫IDおよび対応する秘密鍵を用いることによって、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が柔軟に行なえるという効果を奏する。
【0028】
上記課題を解決するために、本発明に係るサービス提供装置は、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成し、該生成した暗号データを上記指定公開鍵に対応する秘密鍵により復号した復号データを鍵管理装置から取得し、該取得した復号データと上記平文とが一致するとき、ユーザに上記サービスを提供するサービス提供装置であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、上記復号データと上記平文とが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供するサービス提供手段を備えることを特徴としている。
【0029】
上記の構成によれば、ユーザ群を識別する識別子(実施形態では、ユーザ群に対応付けられるロール(役割)のロール名)を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDと、該子孫IDに対応する秘密鍵との組(実施形態では、部分ロール)を用いて、いわゆるチャレンジ・レスポンス認証により、認証処理を行なう。そして、認証に成功した場合、親IDにて識別されるユーザ群にアクセスが許可されているサービスを提供する。
【0030】
よって、サービスへのアクセスが許可されているユーザ群に属していないユーザが、子孫IDおよび対応する秘密鍵を用いた認証が成功したとき、当該ユーザに対して、サービスを提供することが可能となる。
【0031】
ここで、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型IDベース暗号を用いて、子孫IDおよび対応する秘密鍵を生成可能であるものとすると、当該ユーザから子孫IDおよび対応する秘密鍵を受け渡してもらうことにより、サービスへのアクセスが許可されていないユーザであっても、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるという効果を奏する。
【0032】
さらに、チャレンジ・レスポンス認証により、子孫IDおよび対応する秘密鍵の正当性を検証しているので、安全性を確保することもできる。
【0033】
さらに、本発明に係るサービス提供装置は、上記の構成において、上記子孫IDには、上記サービスの提供を限定する内容を表す限定情報が含まれており、上記サービス提供手段は、上記指定公開鍵である上記子孫IDに含まれている上記限定情報に従って、上記サービスの提供を限定する構成としてもよい。
【0034】
上記の構成によれば、限定情報に従ってサービスの提供を限定するので、安全性をより高く確保することができる。
【0035】
さらに、本発明に係るサービス提供装置は、上記の構成において、上記限定情報は、上記サービスの提供日時を含む情報であって、上記サービス提供手段は、上記サービスを、上記限定情報に含まれる上記提供日時に提供する構成としてもよい。
【0036】
上記の構成によれば、サービスの提供を、限定情報に含まれる提供日時のみに限定するので、安全性をより高く確保することができる。
【0037】
上記課題を解決するために、本発明に係るアクセス管理システムは、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供する、アクセス管理システムであって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、上記鍵管理装置は、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、上記サービス提供装置は、上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供することを特徴としている。
【0038】
また、上記課題を解決するために、本発明に係るアクセス管理方法は、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供するアクセス管理システムにおけるアクセス管理方法であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、上記鍵管理装置は、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、上記サービス提供装置は、上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供することを特徴としている。
【0039】
上記の構成によれば、鍵管理装置は、ユーザ群を識別する識別子(実施形態では、ユーザ群に対応付けられるロール(役割)のロール名)を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDと、該子孫IDに対応する秘密鍵との組(実施形態では、部分ロール)を記憶する。そして、サービスにアクセスする際にユーザにより指定された子孫IDをサービス提供装置に送信する。そして、サービス提供装置は、該送信された子孫IDにより所定の平文を暗号化した暗号データを生成する。そして鍵管理装置は、該子孫IDに対応する秘密鍵により復号して復号データを生成し、サービス提供装置に送信する。そして、サービス提供装置は、平文と鍵管理装置にて生成された復号データとが一致するとき、指定公開鍵を指定したユーザに、該指定公開鍵の親IDにて識別されるユーザ群にアクセスが許可されているサービスを提供する。
【0040】
したがって、サービスへのアクセスが許可されていないユーザが、サービスへのアクセスが許可されているユーザ群の識別子から得られる子孫IDおよび対応する秘密鍵を入手して用いることにより、システム管理者に依頼しなくとも、サービスにアクセスすることが容易に可能となる。
【0041】
ここで、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型IDベース暗号を用いて、子孫IDおよび対応する秘密鍵を生成可能であるものとすると、当該ユーザから子孫IDおよび対応する秘密鍵を受け渡してもらうことにより、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるという効果を奏する。
【0042】
さらに、サービス提供装置では、チャレンジ・レスポンス認証により、子孫IDおよび対応する秘密鍵の正当性を検証するので、安全性を確保することもできる。
【0043】
なお、上記鍵管理装置および上記サービス提供装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させることにより上記鍵管理装置および上記サービス提供装置をコンピュータにて実現させる上記鍵管理装置および上記サービス提供装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【発明の効果】
【0044】
以上のように、本発明に係る鍵管理装置は、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するサービス提供装置が、ユーザが上記サービスにアクセスする際にユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化した暗号データを、上記サービス提供装置から取得するとともに、上記指定公開鍵に対応する秘密鍵により復号した復号データを上記サービス提供装置に送信する鍵管理装置であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶する鍵情報記憶部と、上記指定公開鍵を上記サービス提供装置に送信する鍵送信手段と、上記鍵送信手段にて送信した上記指定公開鍵により暗号化された上記暗号データを、上記鍵情報記憶部に記憶されている秘密鍵により復号して上記復号データを生成する復号データ生成手段とを備えている。
【0045】
よって、サービスへのアクセスが許可されているユーザ群に属していなユーザであっても、子孫IDおよび対応する秘密鍵を用いることによって、サービス提供装置にて行なわれるチャレンジ・レスポンス認証に対応することができる。そして、サービス提供装置にて、認証成功時にサービスへのアクセスを許可する設定が成されていれば、サービスにアクセスすることが可能となる。
【0046】
したがって、サービスへのアクセスが許可されていないユーザが、サービスへのアクセスが許可されているユーザ群の識別子から得られる子孫IDおよび対応する秘密鍵を入手して用いることにより、システム管理者に依頼しなくとも、サービスにアクセスすることが容易に可能となる。つまり、サービスへのアクセスが許可されていないユーザに対して、アクセス権限の委任が容易に行なえるという効果を奏する。
【0047】
なお、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型IDベース暗号を用いて、子孫IDおよび対応する秘密鍵を生成可能であるものとすると、ユーザ間でのアクセス権限の委任が柔軟に行なえることとなる。
【0048】
さらに、サービス提供装置では、チャレンジ・レスポンス認証により、子孫IDおよび対応する秘密鍵の正当性を検証するので、安全性(セキュリティ)を確保することもできる。
【0049】
また、本発明に係るサービス提供装置は、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成し、該生成した暗号データを上記指定公開鍵に対応する秘密鍵により復号した復号データを鍵管理装置から取得し、該取得した復号データと上記平文とが一致するとき、ユーザに上記サービスを提供するサービス提供装置であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、上記復号データと上記平文とが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供するサービス提供手段を備えている。
【0050】
よって、サービスへのアクセスが許可されているユーザ群に属していないユーザが、子孫IDおよび対応する秘密鍵を用いた認証が成功したとき、当該ユーザに対して、サービスを提供することが可能となる。
【0051】
ここで、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型IDベース暗号を用いて、子孫IDおよび対応する秘密鍵を生成可能であるものとすると、当該ユーザから子孫IDおよび対応する秘密鍵を受け渡してもらうことにより、サービスへのアクセスが許可されていないユーザであっても、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるという効果を奏する。
【0052】
さらに、チャレンジ・レスポンス認証により、子孫IDおよび対応する秘密鍵の正当性を検証しているので、安全性を確保することもできる。
【0053】
また、本発明に係るアクセス管理システムは、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供する、アクセス管理システムであって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、上記鍵管理装置は、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、上記サービス提供装置は、上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供する。
【0054】
また、本発明に係るアクセス管理方法は、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供するアクセス管理システムにおけるアクセス管理方法であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、上記鍵管理装置は、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、上記サービス提供装置は、上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供する。
【0055】
したがって、サービスへのアクセスが許可されていないユーザが、サービスへのアクセスが許可されているユーザ群の識別子から得られる子孫IDおよび対応する秘密鍵を入手して用いることにより、システム管理者に依頼しなくとも、サービスにアクセスすることが容易に可能となる。
【0056】
ここで、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型IDベース暗号を用いて、子孫IDおよび対応する秘密鍵を生成可能であるものとすると、当該ユーザから子孫IDおよび対応する秘密鍵を受け渡してもらうことにより、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるという効果を奏する。
【0057】
さらに、サービス提供装置では、チャレンジ・レスポンス認証により、子孫IDおよび対応する秘密鍵の正当性を検証するので、安全性を確保することもできる。
【図面の簡単な説明】
【0058】
【図1】図2に示したアクセス管理システムに含まれるロール管理装置の構成を示すブロック図である。
【図2】本発明の一実施形態に係るアクセス管理システムの構成を示す模式図である。
【図3】図2に示したアクセス管理システムに含まれるサービス提供装置の構成を示すブロック図である。
【図4】図2に示したアクセス管理システムにおいて、委任ユーザが被委任ユーザに部分ロールを受け渡す処理の流れを示すシーケンス図である。
【図5】図1に示したロール管理装置におけるログイン認証部が提供するログイン画面の模式図である。
【図6】図1に示したロール管理装置におけるロール管理部が提供するロール管理画面の模式図である。
【図7】図1に示したロール管理装置におけるロール更新部が提供するロール追加画面の模式図である。
【図8】図6に示したロール管理画面にてロールの削除指示を受け付けた際に、ユーザに確認を求めるために表示される確認画面の模式図である。
【図9】図1に示したロール管理装置における部分ロール生成部が提供するロール発行画面の模式図である。
【図10】図2に示したアクセス管理システムにおいて、ユーザがサービスにアクセスする処理の流れを示すシーケンス図である。
【図11】図3に示したサービス提供装置におけるログイン処理部が提供するサービスログイン画面の模式図である。
【図12】図1に示したロール管理装置におけるログイン認証部が提供する認証確認画面の模式図である。
【図13】図1に示したロール管理装置におけるロール管理部が提供するロール選択画面の模式図である。
【図14】図14(a)は、図3に示したサービス提供装置のロール認証部による認証が成功したときに、ロール認証部が提供する確認画面の模式図である。図14(b)は、図3に示したサービス提供装置のロール認証部による認証が失敗したときに、ロール認証部が提供する確認画面の模式図である。図14(c)は、図3に示したサービス提供装置のロール認証部による認証が失敗したときに、ロール認証部が提供する確認画面の模式図である。
【発明を実施するための形態】
【0059】
本発明の一実施形態について図1から図14に基づいて説明すると以下の通りである。
【0060】
(1.本発明の概要)
本実施形態に係るアクセス管理システム100は、概略的に言えば、1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスに対して、アクセスが許可されてないユーザが、アクセスが許可されているユーザから委任を受けることによって、アクセスが許可されてないサービスへアクセスすることを可能とするシステムである。以下では、委任を行なうユーザを「委任ユーザ」と表記する。また、委任ユーザから委任を受けるユーザを「被委任ユーザ」と表記する。両者を区別しないときは、単に、ユーザと表記する。
【0061】
なお、アクセス制限が設定されているサービスの種類は特に限定されるものではなく、電子データの閲覧・取得・更新、データベースの参照・更新、Webアプリケーションの利用など、どのような情報サービスであってもよい。
【0062】
アクセス管理システム100では、予め、システム管理者にて、ユーザとロール(Role、役割、職務)とが対応付けられているとともに、ロールと、許可される操作(アクセスが許可されるサービス)とが対応付けられているものとする。ロールは、1または複数のユーザが対応付けられている。つまり、ロールを識別するロール名はユーザ群を識別する識別子となる。
【0063】
ロールを用いてアクセス管理システム100をさらに説明すると、アクセス管理システム100では、(1)委任ユーザは、委任ユーザのロールから生成した「部分ロール」(後述する)を被委任ユーザに受け渡すことによって委任を行ない、(2)被委任ユーザは、受け渡された部分ロールを用いて認証に成功すると、部分ロールの生成元のロール(以下、生成元ロールと表記する)にアクセスが許可されているサービスへのアクセスが許可される。
【0064】
(1−1.委任方法)
ここで、アクセス管理システム100は、委任ユーザから被委任ユーザへ受け渡す部分ロールを、一般に知られている「階層型IDベース暗号(HIBE:Hierarchical ID-Based Encryption)」を用いて、委任ユーザが、委任ユーザ自身にて管理しているロールから、任意に生成可能とする仕組みを備えている。そのため、委任ユーザから被委任ユーザへの委任を、システム管理者等に依頼することなく、容易かつ柔軟に行なうことができる。なお、階層型IDベース暗号技術は、一般に知られている技術であるので、本明細書では詳細な説明を省略する。
【0065】
ここで、本発明では、ロールを識別するロール名を、階層型IDベース暗号におけるIDとして用いる。そして、ロール名を、階層型IDベース暗号におけるIDとしたときの、当該IDの下層のIDとして得られる子孫IDをロール名とするロールを、部分ロールとする。
【0066】
なお、部分ロールは、次に示す2つのデータから成る。すなわち、(1)部分ロールを識別するロール名(以下、部分ロール名と表記する)、および、(2)部分ロール名に対応する秘密鍵である。当該秘密鍵は、生成元ロールのロール名を公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により計算(算出)することができる。
【0067】
ただし、システム管理者によってユーザに予め対応付けられるロール(つまり、部分ロールではないロール)のロール名を公開鍵暗号における公開鍵としたときの秘密鍵は、予め、公的な鍵発行機関により発行されるものとする。
【0068】
なお、本明細書において、部分ロールと生成元ロールとを区別せずに表現する場合は、単に「ロール」と表記する。
【0069】
(1−2.認証方法)
上述した仕組みに加えて、アクセス管理システム100は、委任ユーザから正当に委任を受けたユーザであるか否か(つまり、認証に用いる部分ロールが、委任ユーザから正当に受け渡されたものであるか否か)を、広く知られている「チャレンジ・レスポンス認証技術」を用いて検証する仕組みを備えている。そのため、システムの安全性(セキュリティ)を高く確保することができる。
【0070】
具体的には、(1)委任ユーザから受け渡された部分ロールの部分ロール名を公開鍵として、ランダムに生成されたランダムデータ(平文)を暗号化して暗号データを生成し、(2)該生成した暗号データを、部分ロール名に対応する秘密鍵により復号して復号データを生成し、(3)該生成した復号データが上記ランダムデータと一致する場合、委任ユーザから正当に委任を受けていると判定し、委任ユーザから受け渡された部分ロールの生成元ロールにアクセスが許可されているサービスへのアクセスを許可する。なお、暗号データはチャレンジデータとも称される。復号データはレスポンスデータとも称される。
【0071】
チャレンジ・レスポンス認証技術は、広く知られている技術であるので、本明細書では詳細な説明を省略する。
【0072】
なお、認証方法には、チャレンジ・レスポンス認証の他に、広く知られている「電子証明書」を用いる認証方法も考えられる。しかしながら、電子証明書を用いる認証では、外部の認証局に電子証明書の発行を依頼する必要となり、柔軟性に欠ける。また、ユーザ自身が認証局として機能する場合には、基盤の整備コストが増大する。したがって、チャレンジ・レスポンス認証の方が、柔軟性およびコスト面で、電子証明書を用いた認証よりも、優位性がある。
【0073】
(1−3.発明の効果)
以上の説明から分かるように、本発明によれば、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるため利便性が高いことに加えて、システムの安全性を高く確保することが可能となる。さらに、これらを実現するにあたり、コストが大きく増大することはない。
【0074】
(1−4.限定情報の付加)
階層型IDベース暗号におけるIDは、階層構造を有している。例えば、親IDが「kaji」で表される文字列であるとすると、その下層の子IDは、例えば「kaji.yuichi」と表すことができ、さらにその下層の孫IDは、例えば「kaji.yuichi.2010」と表すことができる。この場合、「yuichi」および「2010」は、それぞれ、子IDおよび孫IDを生成する際に、ユーザが任意に設定可能な文字列である。つまり、部分ロール名には、ユーザが任意に設定可能な文字列を含めることができる。
【0075】
そのため、部分ロール名には、サービスへのアクセスを限定する情報を表す限定情報を含めることができる。これにより、サービス提供装置500にて、部分ロール名に含まれる限定情報に従って、サービスへのアクセスを限定することが可能となり、システムの安全性をさらに高くすることが可能となる。
【0076】
限定の内容としては、アクセス日時の限定(例えば、X月Y日のみ許可する)、アクセス内容の限定(例えば、閲覧のみ許可する)等が挙げられる。
【0077】
例えば、ロール「kaji」の部分ロールに、アクセスを6月11日に限定する限定情報を含める場合、部分ロール名を、例えば「kaji.June11」とすることができる。この部分ロール名を受信したサービス提供装置500は、認証が成功した際であっても、6月11日のみアクセスが可能となるようにアクセスを限定する。
【0078】
同様に、サービスの提供日時を含む情報を限定情報としてもよい。そして、サービス提供装置500は、限定情報に含まれる提供日時に従ってサービスの提供を限定することにより、安全性をより高く確保することができる。
【0079】
ただし、限定情報の記述フォーマットは、予め定められているものとする。そして、サービス提供装置500では、部分ロール名に含まれる限定情報の抽出が可能であり、抽出した限定情報に従って、アクセスを限定することが可能であるものとする。
【0080】
(2.本発明の適用例)
ここで、アクセス管理システム100を、医療情報データを管理するシステムに適用する場合について説明する。このようなシステムでは、医療情報データに対する堅固なアクセス制限が必要であり、医師などの特定のロールが割り当てられたユーザのみが、医療情報データにアクセス可能とする必要がある。
【0081】
例えば、「医師」ロールにのみ、電子カルテへのアクセスが許可されている場合、「看護師」ロールでは電子カルテにアクセスすることはできない。しかしながら、医師の不在時や緊急時などにおいて、看護師にも電子カルテにアクセスさせることが望ましい場合がある。
【0082】
このような場合、アクセス管理システム100にて、「医師」ロールから生成した部分ロール(例えば、「医師代理」ロール)を医師から受け渡してもらえば、看護師は電子カルテにアクセスすることが可能となる。
【0083】
つまり、「医師代理」ロールを看護師に事前に渡しておけば、医師が不在の場合に、医師の代理としての看護師に電子カルテにアクセスさせることが可能となる。
【0084】
このとき、医師は、システム管理者等に依頼することなく、自身の判断のみで容易に医師」ロールから部分ロールを生成することができるため、アクセス権限の委任が容易かつ柔軟に行なうことができ、利便性が高い。
【0085】
さらに、看護師が用いる部分ロールが、医師から正当に受け渡されたものであるか否かをチャレンジ・レスポンス認証により検証するため、システムの安全性を高く確保することができ、不正利用を防止することができる。
【0086】
また、アクセス日時などの限定情報を「医師代理」ロールに含めておくことにより、看護師の電子カルテへのアクセスをさらに限定することができるので、システムの安全性をさらに高く確保することができる。
【0087】
なお、本発明は、アクセス管理が必要となる情報サービスの全てに適用可能である。例えば、研究機関における研究データ、大学における電子図書館、企業における機密データ、教育機関における成績データ等のアクセス管理に適用することができる。
【0088】
(3.システム構成)
次に、図2を参照しながら、アクセス管理システム100の構成について説明する。図2は、アクセス管理システム100の構成を示す模式図である。アクセス管理システム100は、ユーザ端末200、ロール管理装置(鍵管理装置)300、およびサービス提供装置500を含んでいる。なお、これらの装置は、直接又は他の装置を介して、通信ネットワーク700と通信可能に接続されている。なお、通信ネットワーク700は、図2では、単一であるように記載しているが、各種通信ネットワークやアクセス網が、多重および多層に構成されていてもよい。
【0089】
サービス提供装置500は、外部装置からのアクセスに応じて、各種サービスを提供するサーバ装置である。サービス提供装置500の構成については後述する。
【0090】
ユーザ端末200は、サービス提供装置500およびロール管理装置300にアクセスする装置であり、ユーザの入力操作を受け付けるとともに、提供される各種画面を表示する。ユーザ端末200は、PC(Personal Computer)、PDA(Personal Digital Assistance)、携帯電話機、スマートフォンなどを想定している。ユーザ端末200はユーザ毎に所有されることを想定している。
【0091】
ロール管理装置300は、ユーザに対応付けられているロール、および、委任ユーザから受け渡された部分ロールを、一元的に管理する装置である。なお、後述するように、ロール管理装置300にて管理するロールは、ユーザ自身にて追加、更新、削除が可能である。ロール管理装置300は、PCなどの端末であってもよいし、ユーザ端末200に着脱可能なICカード等のカード類であってもよい。ロール管理装置300の構成については後述する。
【0092】
なお、ロール管理装置300は、複数のユーザが共有するものであってもよいが、セキュリティを高める上で、ユーザ毎に所有されることが好ましい。本実施形態では、ユーザ毎に所有されるものとする。
【0093】
ロール管理装置300がユーザ毎に所有されるものである場合、異なる組織にて発行されているロールをロール管理装置300に一括して管理してもよい。例えば、A病院でのロールである「医師」、B病院でのロールである「非常勤医師」、C学会でのロールである「シニア会員」を、ロール管理装置300にて管理してもよい。
【0094】
以下では、委任ユーザが所有するユーザ端末200およびロール管理装置300をそれぞれ、ユーザ端末200Aおよびロール管理装置300Aと表記し、被委任ユーザが所有するユーザ端末200およびロール管理装置300をそれぞれ、ユーザ端末200Bおよびロール管理装置300Bと表記して、区別する。両者を区別しないときは、単に、ユーザ端末200およびロール管理装置300と表記する。
【0095】
なお、本実施形態では、ユーザ端末200およびロール管理装置300は、別体の装置として説明するが、必ずしも別体の装置である必要は無く、一体の装置として設けられていてもよい。一体の装置として設けられる場合、ユーザ端末200とロール管理装置300とが行なう通信のやりとりは、一体の装置内で行なわれるものとなる。
【0096】
(4.処理の概要)
次に、図2を参照しながら、アクセス管理システム100にて行なわれる処理の概要について説明する。なお、処理の詳細については後述するので、ここでは概要の説明に留める。
【0097】
アクセス管理システム100にて行なわれる処理は、(A)委任ユーザが被委任ユーザに部分ロールを受け渡す(委任する)処理と、(B)被委任ユーザが部分ロールを用いて認証を行なうことによってサービスへのアクセスを可能とする処理とに、大きく分けることができる。
【0098】
上記(A)の処理では、まず、委任ユーザが、ユーザ端末200Aを操作してロール管理装置300Aにアクセスし、ロール管理装置300Aにて、委任ユーザのロールから部分ロールを生成する(図2の(A1))。そして、該生成した部分ロールを被委任ユーザに受け渡す(図2の(A2))。なお、部分ロールを被委任ユーザに渡す手段は特に限定されるものではなく、部分ロールを添付した電子メールを送信してもよいし、部分ロールを格納した記録媒体を郵便や手渡しにより被委任ユーザに渡してもよい。そして、被委任ユーザは、受け渡された部分ロールをロール管理装置300Bに格納する。
【0099】
次に、上記(B)の処理では、被委任ユーザは、ユーザ端末200Bを用いてサービス提供装置500にて提供されるサービスへアクセスするにあたり、ロール管理装置300Bに記憶している部分ロールを指定し、該指定した部分ロールの部分ロール名(指定公開鍵)をサービス提供装置500に送信する(図2の(B1))。続いて、サービス提供装置500とロール管理装置300Bとの間で、チャレンジ・レスポンス認証を行なう(図2の(B2))。具体的には、サービス提供装置500にて、ロール管理装置300Bから送信された部分ロール名を公開鍵としてランダムデータ(所定の平文)を暗号化した暗号データ(チャレンジデータ)を生成する。続いて、ロール管理装置300Bにて、サービス提供装置500から取得した暗号データを、上記送信した部分ロール名に対応する秘密鍵により復号して復号データ(レスポンスデータ)を生成する。続いて、サービス提供装置500にて、ロール管理装置300Bから取得した復号データと上記ランダムデータとが一致するか否かを判定する。
【0100】
そして、上記ランダムデータと復号データとが一致すると判定した場合、ロール管理装置300Bから送信された部分ロール名の親IDにて識別されるロールにアクセスが許可されているサービスへの、ユーザ端末200Bからのアクセスを許可する(図2の(B3))。
【0101】
(5.各装置の構成)
次に、図1および図3を参照しながら、アクセス管理システム100に含まれる各装置の構成について説明する。
【0102】
(5−1.ロール管理装置の構成)
まず、図1は、ロール管理装置300の構成を示すブロック図である。同図に示すように、ロール管理装置300は、少なくとも、通信部310、制御部330、および記憶部350を備えている。
【0103】
通信部310は、ロール管理装置300が通信ネットワーク700を介して外部装置(ユーザ端末200およびサービス提供装置500)と通信を行なうものである。
【0104】
次に、制御部330は、ロール管理装置300が備える各部の動作を制御するものである。制御部330は、記憶部350に記憶されている各種プログラムを読み出して、所定の演算処理を行なうことによって、ロール管理装置300の各部を制御するものであり、CPU(Central Processing Unit)およびメモリ等で構成することができる。制御部330の詳細な構成については後述する。
【0105】
記憶部350は、各種プログラムおよびデータを格納している。具体的には、制御部330が実行する(1)各部の制御プログラム、(2)OS(Operating System)プログラム、(3)アプリケーションプログラム、および、(4)これらプログラムを実行するときに読み出す各種データ等を記憶するものである。記憶部350は、例えば、フラッシュメモリなどの不揮発性の記憶装置によって構成される。また、記憶部350は、RAM(Random Access Memory)などの揮発性の記憶装置によって構成される作業領域を有している。作業領域は、制御部330が上述の各種プログラムを実行する過程でデータを一時的に保持するためのものである。
【0106】
記憶部350は、さらに、ユーザ情報記憶部351およびロール記憶部(鍵情報記憶部)352を含んでいる。
【0107】
ユーザ情報記憶部351は、ユーザ端末200からロール管理装置300にアクセスするユーザのユーザ認証を行なうためのユーザ情報(ユーザ名およびパスワードの組)を記憶するものである。
【0108】
次に、ロール記憶部352は、1または複数のロールを記憶するものである。具体的には、ロールを識別するロール名と当該ロール名を公開鍵暗号の公開鍵としたときの秘密鍵との組を、1または複数記憶する。ロールには、システム管理者によってユーザに対応付けられたロール、および、委任ユーザにより生成された部分ロールがある。なお、システム管理者によってユーザに予め対応付けられるロールのロール名に対応する秘密鍵は、公的な鍵発行機関にて発行されたものである。また、部分ロール名に対応する秘密鍵は、委任ユーザにより生成されたものである。
【0109】
なお、記憶部350は、必ずしもロール管理装置300内に備えられる必要はなく、外部装置として、ロール管理装置300にケーブルや通信ネットワーク700を介して通信可能に接続される構成であってもよい。
【0110】
次に、制御部330について詳細に説明する。制御部330は、ログイン認証部(認証手段)331、ロール管理部(鍵指定手段)333、および復号部(復号データ生成手段)338を備えている。
【0111】
ログイン認証部331は、ユーザ認証を行なう(ユーザの正当性を検証する)ものである。ユーザ端末200が直接アクセスしてきた際に「ログイン画面」をユーザ端末200に提供する。また、サービス提供装置500にアクセスしたユーザ端末200がサービス提供装置500から指定されたリダイレクトによってアクセスしてきた際に、「認証確認画面」をユーザ端末200に提供する。ログイン画面および認証確認画面の画面例については後述する。
【0112】
そして、ログイン認証部331は、これらの画面にて入力されたユーザ情報(ユーザ名、パスワード)が、ユーザ情報記憶部351に記憶されているか否かを調べることによって、ユーザ認証を行なう。
【0113】
次に、ロール管理部333は、概略的に言えば、ロール記憶部352に記憶しているロールの追加・更新・削除、部分ロールの生成、およびロール名のサービス提供装置500への送信を行なうものである。
【0114】
ロール管理部333は、ログイン認証部331によるユーザ認証が成功した場合、(1)ユーザ端末200が直接アクセスしてきたときは、「ロール管理画面」をユーザ端末200に提供する。一方、(2)ユーザ端末200がリダイレクトによってアクセスしてきたときは、「ロール選択画面」をユーザ端末200に提供する。
【0115】
「ロール管理画面」は、ロール記憶部352に記憶しているロールのロール名を一覧表示するとともに、ロール記憶部352に記憶させるロールの追加指示、ロール記憶部352に記憶しているロールの削除指示、および、被委任ユーザへの委任指示をそれぞれ受け付けるための画面である。ロール管理画面の画面例については後述する。
【0116】
一方、「ロール選択画面」は、ロール記憶部352に記憶しているロールのロール名を一覧表示するとともに、ロールの選択を受け付けるための画面である。ロール選択画面の画面例については後述する。
【0117】
そして、ロール管理部333は、さらに、ロール更新部(鍵格納手段)334、部分ロール生成部(鍵生成手段)335、およびロール送信部(鍵送信手段)336を備えている。
【0118】
ロール更新部334は、ロール管理画面にてロールの追加指示を受け付けたとき、ロールの追加を行なうための「ロール追加画面」をユーザ端末200に提供する。ロール追加画面の画面例については後述する。そして、ロール追加画面にて、ロール名と、該ロール名に対応する秘密鍵との組をロール記憶部352に格納する。
【0119】
さらに、ロール更新部334は、ロール管理画面にてロールの削除指示を受け付けたとき、該削除指示されたロール名(公開鍵)と、該ロール名に対応する秘密鍵との組を、ロール記憶部352から削除する。
【0120】
次に、部分ロール生成部335は、階層型IDベース暗号を用いて、生成元ロールから部分ロールを生成するものである。具体的には、ロール管理画面にて委任指示を受け付けたとき、被委任ユーザへ受け渡す部分ロールを生成するためのロール発行画面をユーザ端末200に提供する。ロール発行画面の画面例については後述する。そして、ロール発行画面にて、部分ロールの生成条件(具体的には、部分ロール名)の入力を受け付けるとともに、入力された生成条件に従って部分ロールを生成する。具体的には、部分ロール名、および、部分ロール名を公開鍵としたときの秘密鍵を生成する。なお、生成した秘密鍵は、ロール発行画面内に表示する等して委任ユーザに通知する。
【0121】
次に、ロール送信部336は、ロール名をサービス提供装置500に送信するものである。具体的には、ロール選択画面にて選択されたロールのロール名を、サービス提供装置500のロール認証部533(後述する)にて実行されるチャレンジ・レスポンス認証における公開鍵として使用させるために、サービス提供装置500に送信する。
【0122】
次に、復号部338は、サービス提供装置500のロール認証部533にて実行されるチャレンジ・レスポンス認証において生成された暗号データ(チャレンジデータ)を受信する。そして、ロール選択画面にて選択されたロールのロール名に対応する秘密鍵をロール記憶部352から読み出し、該読み出した秘密鍵にて上記受信した暗号データを復号してレスポンスデータを生成する。そして、該生成したレスポンスデータをサービス提供装置500に返信する。
【0123】
(5−2.サービス提供装置の構成)
次に、図3は、サービス提供装置500の構成を示すブロック図である。同図に示すように、サービス提供装置500は、少なくとも、通信部510、制御部530、および記憶部550を備えている。
【0124】
通信部510は、サービス提供装置500が外部装置(ユーザ端末200およびロール管理装置300)と通信を行なうためのものである。通信部510は、通信ネットワーク700と接続可能に構成されており、図示していないが、通信部510と通信ネットワーク700との間には、LAN(Local Area Network)やルータ等の通信を行なうために必要な構成が適宜設けられている。
【0125】
次に、制御部530は、サービス提供装置500が備える各部の動作を制御するものである。制御部530は、記憶部550に記憶されている各種プログラムを読み出して、所定の演算処理を行なうことによって、サービス提供装置500の各部を制御するものであり、CPUおよびメモリ等で構成することができる。制御部530の詳細な構成については後述する。
【0126】
記憶部550は、各種プログラムおよびデータを格納している。具体的には、制御部530が実行する(1)各部の制御プログラム、(2)OSプログラム、(3)アプリケーションプログラム、および、(4)これらプログラムを実行するときに読み出す各種データ等を記憶するものである。記憶部550は、例えば、フラッシュメモリなどの不揮発性の記憶装置によって構成される。また、記憶部550は、RAMなどの揮発性の記憶装置によって構成される作業領域を有している。作業領域は、制御部530が上述の各種プログラムを実行する過程でデータを一時的に保持するためのものである。
【0127】
なお、記憶部550は、権限情報記憶部551、およびサービスデータ記憶部552を含んでいる。
【0128】
権限情報記憶部551は、ユーザ情報とロールとを対応付けて記憶するとともに、ロールと許可される操作(サービスへのアクセス制限)とを対応付けて記憶するものである。
【0129】
サービスデータ記憶部552は、各種サービスを構成するデータ群を記憶するものである。
【0130】
なお、記憶部550は、必ずしもサービス提供装置500に備えられる必要はなく、外部装置として、サービス提供装置500にケーブルや通信ネットワーク700を介して通信可能に接続される構成であってもよい。
【0131】
次に、制御部530について詳細に説明する。制御部530は、ログイン処理部531、ロール認証部533、およびサービス提供部(サービス提供手段)537を備えている。
【0132】
ログイン処理部531は、ユーザ端末200からアクセスされた際に、ユーザ認証を行なうためのサービスログイン画面をユーザ端末200に提供する。なお、サービスログイン画面では、被委任ユーザが、受け渡された部分ロールを用いることができるように、ロール管理装置300Bのアドレス(URL:Uniform Resource Locator)の指定が可能である。サービスログイン画面の画面例については後述する。
【0133】
そして、サービスログイン画面にて、ロール管理装置300のアドレスが指定されたとき、ログイン処理部531は、ユーザ端末200からのアクセスを、当該指定されたアドレスのロール管理装置300に転送させる(リダイレクトする)。
【0134】
次に、ロール認証部533は、ロール管理装置300のロール送信部336からロール名を受信すると、チャレンジ・レスポンス認証を実行する。つまり、ランダムに生成したランダムデータを、上記受信したロール名を公開鍵として暗号化した暗号データ(チャレンジデータ)を生成するとともに、該生成した暗号データをロール管理装置300に送信する。続いて、その応答として、ロール管理装置300の復号部338から返信されたレスポンスデータと、上記ランダムデータとが一致するか否かを判定する。そして、一致する場合、認証が成功したものとする。一致しない場合は、認証に失敗したものとして処理を中断する。
【0135】
次に、サービス提供部537は、ロール認証部533での認証が成功した場合、ユーザ端末200からのアクセスを許可し、サービスを提供するための処理を行なう。まず、ロール管理装置300に、サービス提供装置500へのログイン用のアドレスを通知し、ユーザ端末200からロール管理装置300へのアクセスを、該通知したアドレスに転送させる(リダイレクトする)。
【0136】
そして、ユーザ端末200が上記通知したアドレスにアクセスしてきたとき、サービス提供部537は、ロール認証部533にてロール管理装置300から取得したロール名に対応付けられているサービスへのアクセス制限を権限情報記憶部551から取得する。ロール管理装置300から取得したロール名が部分ロール名である場合は、その生成元ロールのロール名に対応付けられているサービスへのアクセス制限を権限情報記憶部551から取得する。そして、当該サービスを構成するデータ群をサービスデータ記憶部552から取得し、上記取得したアクセス制限に従って、ユーザ端末200にサービスを提供する。その際、ロール管理装置300から取得したロール名に限定情報が含まれている場合は、当該限定情報に従って、サービスの提供を限定する。
【0137】
なお、図示していないが、サービス提供装置500は、入力部570および表示部590を備えていてもよい。
【0138】
入力部570は、サービス提供装置500の管理者からの入力を受け付け、該入力に応じた入力信号を制御部530に送信するものである。入力部570は、管理者が所望の入力を行なえるものであればよく、マウスやキーボードを想定している。
【0139】
表示部590は、制御部530の指示に基づいて、設定やメンテナンスなどの画面を表示する表示装置である。例えば、LC表示パネルやEL表示パネル、CRT表示装置等を表示部590として用いることができる。
【0140】
(5−3.ユーザ端末の構成)
図示しないが、ユーザ端末200は、通信ネットワーク700を介して外部装置(ロール管理装置300およびサービス提供装置500)と通信を行なう通信部、ロール管理装置300およびサービス提供装置500が提供する各種画面を表示する液晶パネル等の表示部、ユーザの入力を受け付けるマウスやキーボード等の入力部、および、これら各部を制御するCPUおよびメモリ等で構成された制御部を備えている。
【0141】
(6.具体的な処理の流れ)
(6−1.委任ユーザが被委任ユーザに部分ロールを受け渡す処理の流れ)
次に、図4を参照しながら、委任ユーザが被委任ユーザに部分ロールを受け渡す処理の流れの詳細について説明する。図4は、委任ユーザが被委任ユーザに部分ロールを受け渡す処理の流れを示すシーケンス図である。
【0142】
まず、委任ユーザ側で行なう処理について説明する。委任ユーザは、被委任ユーザに受け渡す部分ロールを生成させるために、ユーザ端末200Aを操作してロール管理装置300Aにアクセスする(シーケンス(以下、単に「S」と表記)11)。これに対して、ロール管理装置300Aのログイン認証部331が、ログイン画面をユーザ端末200Aに提供する(S12)。そして、委任ユーザがユーザ端末200Aを操作して、ログイン画面にてユーザ情報(ユーザ名およびパスワード)を入力する(S13)。
【0143】
そして、ユーザ認証が成功すると、ロール管理装置300Aのロール管理部333が、ロール管理画面をユーザ端末200Aに提供する(S14)。そして、委任ユーザがユーザ端末200Aを操作して、ロール管理画面にて委任を行なう旨を指示する(S15)。これに対して、ロール管理装置300Aの部分ロール生成部335が、ロール発行画面をユーザ端末200Aに提供する(S16)。
【0144】
そして、委任ユーザがユーザ端末200Aを操作して、部分ロールの生成条件(具体的には、部分ロール名)を入力すると(S17)、ロール管理装置300Aの部分ロール生成部335が、入力された生成条件に従って部分ロールを生成し、該生成した部分ロールの秘密鍵を、委任ユーザに通知する(ロール発行画面内に表示する)(S18)。
【0145】
以上の流れにより、委任ユーザは、被委任ユーザに受け渡す部分ロールを得る。そして、委任ユーザは、部分ロールを被委任ユーザに受け渡す(S19)。
【0146】
続いて、被委任ユーザ側で行なう処理について説明する。被委任ユーザは、受け渡される部分ロールをロール管理装置300Bに登録するために、ユーザ端末200Bを操作してロール管理装置300Bにアクセスすると、ロール管理装置300Bのロール管理部333が、ロール管理画面をユーザ端末200Bに提供する(S21〜S24)。なお、S21〜S24の処理は、それぞれ、S11〜S14の処理と同様である。
【0147】
そして、被委任ユーザがユーザ端末200Bを操作して、ロール管理画面にてロールの追加を指示する(S25)。これに対して、ロール管理装置300Bのロール更新部334が、ロール追加画面をユーザ端末200Bに提供する(S26)。
【0148】
そして、被委任ユーザは、ステップS19にて受け渡された部分ロールを、ロール追加画面にて入力することによって、ロール記憶部352に格納する(S27、S28)。
【0149】
(6−2.画面例)
次に、図5〜図9を参照しながら、上述した処理において提供される画面の一例について説明する。
【0150】
図5は、ログイン認証部331が提供するログイン画面の模式図である。同図に示すとおり、ログイン画面では、ユーザ名およびパスワードの入力が可能である。
【0151】
次に、図6は、ロール管理部333が提供するロール管理画面の模式図である。同図に示すように、ロール管理画面では、ロール名を一覧表示する。この例では、「aaaa.faculty」、「bbbb.member」、「cccc.member.premium」、「dddd-system.guest」というロール名が表示されている。
【0152】
また、同図に示すボタンB1は、ロールの追加指示を受け付けるボタンである。また、同図に示すボタンB2は、ボタンと対に表示されているロールの削除指示を受け付けるボタンである。
【0153】
また、同図に示すボタンB3は、委任指示を受け付けるボタンであり、ボタンと対に表示されているロールに基づいて部分ロールを生成する指示(委任の指示)を受け付けるためのボタンである。
【0154】
次に、図7は、ロール更新部334が提供するロール追加画面の模式図である。入力フィールドF1は、追加するロール名(公開鍵)を入力するフィールドである。この例では、「eeee-u.lecture.June10」というロール名が入力されている様子を示している。なお、このロールは、「eeee-u.lecture」の部分ロールである。また、入力フィールドF2は、対応する秘密鍵を入力するフィールドである。
【0155】
次に、図8は、ロール管理画面にてロールの削除指示を受け付けた際に、ユーザに確認を求めるために表示される確認画面の模式図である。
【0156】
次に、図9は、部分ロール生成部335が提供するロール発行画面の模式図である。表示フィールドD1には、部分ロールの生成元となるロールのロール名が表示される。この例では、「aaaa.faculty」というロール名が表示されている。
【0157】
また、入力フィールドF3は、任意の文字列を入力するフィールドである。表示フィールドD1に表示されたロール名と、入力フィールドF3に入力された文字列とを連結させた文字列が、新たに生成する部分ロールのロール名となる。同図に示す例では、部分ロールのロール名は、「aaaa.faculty.assistant.June11」である。
【0158】
また、同図に示すボタンB4を押下すると、部分ロール生成部335により、表示フィールドD1に表示されたロール名と入力フィールドF3に入力された文字列とを連結して成るロール名を公開鍵としたときの秘密鍵が生成され、該生成した秘密鍵が表示フィールドD2に表示される。
【0159】
(6−3.ユーザがサービスにアクセスする処理の流れ)
次に、図10を参照しながら、ユーザがサービスにアクセスする処理の流れの詳細について説明する。図10は、ユーザがサービスにアクセスする処理の流れを示すシーケンス図である。なお、委任ユーザがサービスにアクセスする場合の処理の流れ、および、被委任ユーザがサービスにアクセスする場合の処理の流れは、共通しているので、まとめて説明する。
【0160】
ユーザは、まず、ユーザ端末200を操作して、サービス提供装置500にアクセスすると(S31)、サービス提供装置500のログイン処理部531が、サービスログイン画面をユーザ端末200に提供する(S32)。
【0161】
ユーザは、ロールをロール管理装置300から読み出して用いるために、サービスログイン画面にてロール管理装置300のアドレスを指定する(S33)。サービス提供装置500のログイン処理部531は、ユーザ端末200からのアクセスを、当該指定されたアドレスに転送させる(リダイレクトする)(S34、S35)。
【0162】
次に、ロール管理装置300のログイン認証部331が、認証確認画面をユーザ端末200に提供する(S36)。そして、ユーザがユーザ端末200を操作して、認証確認画面にてユーザ情報を入力する(S37)。
【0163】
そして、ユーザ認証が成功すると、ロール管理装置300のロール送信部336が、ロール選択画面をユーザ端末200に提供する(S38)。
【0164】
そして、ユーザがユーザ端末200を操作して、チャレンジ・レスポンス認証に使用するロールをロール選択画面にて選択すると(S39)、ロール管理装置300のロール送信部336が、該選択されたロールのロール名をサービス提供装置500に送信する(S40)。
【0165】
続いて、サービス提供装置500のロール認証部533が部分ロール名を受信すると、ランダムに生成したランダムデータを、上記受信した部分ロール名を公開鍵として暗号化した暗号データ(チャレンジデータ)を生成するとともに、該生成した暗号データをロール管理装置300に送信する(S41)。
【0166】
そして、ロール管理装置300の復号部338が、サービス提供装置500から暗号データ(チャレンジデータ)を取得すると、ロール選択画面にて選択された部分ロールの部分ロール名に対応する秘密鍵をロール記憶部352から読み出し、該読み出した秘密鍵にてサービス提供装置500から取得した暗号データを復号してレスポンスデータを生成する。そして、該生成したレスポンスデータをサービス提供装置500に返信する(S42)。
【0167】
そして、サービス提供装置500のロール認証部533が、ロール管理装置300から取得したレスポンスデータと、上記生成したランダムデータとが一致するか否かを判定し、一致している場合は、ロール管理装置300に、サービス提供装置500へのログイン用のアドレスを通知する(S43)。
【0168】
そして、ロール管理装置300は、ユーザ端末200のアクセスを、通知されたアドレスに転送させる(リダイレクトする)ことによって、サービス提供装置500へのログインを行なわせる(S44〜S46)。ログイン後、ユーザ端末200はサービスにアクセスすることが可能となる。
【0169】
以上の流れにより、ユーザは、ロールを用いて認証を行ない、サービスにアクセスすることができる。
【0170】
なお、ロール管理装置300とサービス提供装置500との間で通信セッションを維持するために、必要に応じて、通信データにセッション情報を含めることが好ましい。図10の例では、S34、S40〜S42に示す通信にセッションIDを含めており、同一セッションにおける通信であることがわかるようにしている。ただし、アクセス管理システム100にてセッション管理を行なう機能を別途備えている場合、通信データにセッション情報を含める必要はない。
【0171】
また、装置間の通信は、広く知られている暗号技術(例えば、SSL(Secure Sockets Layer)等)により保護されていることが好ましい。
【0172】
(6−4.画面例)
次に、図11〜図14を参照しながら、上述した処理において提供される画面の一例について説明する。
【0173】
図11は、ログイン処理部531が提供するサービスログイン画面の模式図である。入力フィールドF4は、ロール管理装置300のアドレスを入力するフィールドである。図11では、“http://rs.aaaa.jp/”というアドレスが入力された様子を示している。
【0174】
次に、図12は、ロール管理装置300のログイン認証部331が提供する認証確認画面の模式図である。同図に示すとおり、認証確認画面では、ユーザ名およびパスワードの入力が可能である。
【0175】
次に、図13は、ロール管理装置300のロール管理部333が提供するロール選択画面の模式図である。同図に示すように、ロール選択画面では、ロール名を選択可能に一覧表示する。この例では、「bbbb.member」というロール名のロールが選択された様子を示している。
【0176】
次に、図14(a)は、サービス提供装置500のロール認証部533による認証が成功したときに、ロール認証部533が提供する確認画面の模式図である。図14(b)および図14(c)は、サービス提供装置500のロール認証部533による認証が失敗したときに、ロール認証部533が提供する確認画面の模式図である。
【0177】
(7.参考形態)
本発明に係る参考形態として、異なる組織間にて有機的なサービスの提供を実現する形態について説明する。
【0178】
図10を参照しながら上述したとおり、ユーザは、サービス提供装置500にて提供されるサービスにアクセスする際に、ロール管理装置300に記憶させているロールをサービス提供装置500に送信する。
【0179】
したがって、サービス提供装置500にて、アクセスを許可するロールを予め登録しておくことにより、ロール管理装置300から送信されてきたロールに応じて、アクセス可否を決定することができる。すなわち、サービス提供装置500にユーザ情報を登録していないユーザからのアクセスであっても、アクセスが許可されたロールを所有しているユーザであれば、アクセスを許可することが可能となる。
【0180】
具体例として、大学間での電子図書館サービスの相互利用について説明する。具体的には、A大学にて提供している電子図書館サービスにB大学の学生がアクセスする例について説明する。
【0181】
まず、前提として、A大学では、A大学のサービス提供装置500にて提供している電子図書館サービスに、B大学の学生がアクセスすることを許可しているものとする。なお、A大学のサービス提供装置500には、B大学の学生のユーザ情報は登録されていない。その代わりに、A大学のサービス提供装置500には、アクセスを許可するロールとして「B大学学生」ロールが予め登録されているものとする。また、B大学の学生は、自らが所有するロール管理装置300に「B大学学生」ロールを登録しているものとする。
【0182】
この場合、B大学の学生は、図10にて説明した処理の流れにおいて、シーケンスS31にてA大学のサービス提供装置500にアクセスし、その後、シーケンスS39にて「B大学学生」ロールを選択する。その結果、シーケンスS45にてA大学のサービス提供装置500にログインすることができる。
【0183】
このように、図10にて説明した処理を行なうことにより、組織間にて有機的なサービスを提供することが可能となる。
【0184】
なお、その他の具体例として、異なる組織間でのタイアップサービスが挙げられる。例えば、X店舗のネット通販の会員ユーザである場合、Y店舗のネット通販の購入代金を割引するサービスをY店舗にて提供する等である。この場合、ユーザは、自らが所有するロール管理装置300に「X店舗会員」ロールを登録しておくことにより、Y店舗にて割引サービスを受けることが可能となる。
【0185】
(8.補記事項)
上述した各制御部は、CPUを用いてソフトウェアによって実現してもよいし、集積回路(ICチップ)上に形成された論理回路によってハードウェアとして構成してもよい。
【0186】
ソフトウェアによって実現する場合は、サービス提供装置500、ロール管理装置300、ユーザ端末200は、各機能を実現する制御プログラムの命令を実行するCPU、上記プログラムを格納したROM、上記プログラムを展開するRAM、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるサービス提供装置500、ロール管理装置300、ユーザ端末200の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、サービス提供装置500、ロール管理装置300、ユーザ端末200に供給し、サービス提供装置500、ロール管理装置300、ユーザ端末200内のコンピュータ(またはCPUやMPU(Micro Processing Unit))が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【0187】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ類、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク類、ICカード(メモリカードを含む)/光カード等のカード類、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ類、PLD(Programmable logic device)等の論理回路類などを用いることができる。
【0188】
また、サービス提供装置500、ロール管理装置300、ユーザ端末200を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、IEEE802.11無線、HDR(High Data Rate)、NFC(Near Field Communication)、DLNA(Digital Living Network Alliance)、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。
【0189】
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【0190】
本発明は、情報サービスに対するアクセス権限を管理するアクセス管理システム、および、情報サービスへのアクセス時に用いる認証鍵を管理する鍵管理装置等に適用することができる。
【符号の説明】
【0191】
100 アクセス管理システム
200、200A、200B ユーザ端末
300、300A、300B ロール管理装置(鍵管理装置)
331 ログイン認証部(認証手段)
333 ロール管理部(鍵指定手段)
334 ロール更新部(鍵格納手段)
335 部分ロール生成部(鍵生成手段)
336 ロール送信部(鍵送信手段)
338 復号部(復号データ生成手段)
351 ユーザ情報記憶部
352 ロール記憶部(鍵情報記憶部)
500 サービス提供装置
533 ロール認証部
537 サービス提供部(サービス提供手段)

【特許請求の範囲】
【請求項1】
1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するサービス提供装置が、ユーザが上記サービスにアクセスする際にユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化した暗号データを、上記サービス提供装置から取得するとともに、上記指定公開鍵に対応する秘密鍵により復号した復号データを上記サービス提供装置に送信する鍵管理装置であって、
上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、
上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、
上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶する鍵情報記憶部と、
上記指定公開鍵を上記サービス提供装置に送信する鍵送信手段と、
上記鍵送信手段にて送信した上記指定公開鍵により暗号化された上記暗号データを、上記鍵情報記憶部に記憶されている秘密鍵により復号して上記復号データを生成する復号データ生成手段とを備えることを特徴とする鍵管理装置。
【請求項2】
上記鍵情報記憶部は、上記子孫IDと、該子孫IDを公開鍵暗号における公開鍵としたときの秘密鍵との組を複数記憶するものであり、
上記鍵情報記憶部に記憶されている上記子孫IDのいずれかを、上記指定公開鍵として、ユーザに指定させる鍵指定手段をさらに備えることを特徴とする請求項1に記載の鍵管理装置。
【請求項3】
上記鍵指定手段にて、上記鍵情報記憶部に記憶されている上記子孫IDのいずれかをユーザに指定させる際、ユーザの正当性を認証する認証手段をさらに備えることを特徴とする請求項2に記載の鍵管理装置。
【請求項4】
上記子孫IDと、該子孫IDを公開鍵暗号における公開鍵としたときの秘密鍵との組を、上記鍵情報記憶部に格納する鍵格納手段をさらに備えることを特徴とする請求項1から3のいずれか1項に記載の鍵管理装置。
【請求項5】
上記ユーザ群を識別する識別子と、該識別子を公開鍵暗号における公開鍵としたときの秘密鍵との組から、階層型IDベース暗号を用いて、上記子孫IDと該子孫IDに対応する秘密鍵との組を生成する鍵生成手段をさらに備えることを特徴とする請求項1から4のいずれか1項に記載の鍵管理装置。
【請求項6】
1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成し、該生成した暗号データを上記指定公開鍵に対応する秘密鍵により復号した復号データを鍵管理装置から取得し、該取得した復号データと上記平文とが一致するとき、ユーザに上記サービスを提供するサービス提供装置であって、
上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、
上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、
上記復号データと上記平文とが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供するサービス提供手段を備えることを特徴とするサービス提供装置。
【請求項7】
上記子孫IDには、上記サービスの提供を限定する内容を表す限定情報が含まれており、
上記サービス提供手段は、
上記指定公開鍵である上記子孫IDに含まれている上記限定情報に従って、上記サービスの提供を限定することを特徴とする請求項6に記載のサービス提供装置。
【請求項8】
上記限定情報は、上記サービスの提供日時を含む情報であって、
上記サービス提供手段は、上記サービスを、上記限定情報に含まれる上記提供日時に提供することを特徴とする請求項7に記載のサービス提供装置。
【請求項9】
1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、
上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、
上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供する、アクセス管理システムであって、
上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、
上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、
上記鍵管理装置は、
上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、
上記サービス提供装置は、
上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供することを特徴とするアクセス管理システム。
【請求項10】
1または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、
上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、
上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供するアクセス管理システムにおけるアクセス管理方法であって、
上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型IDベース暗号における親IDとしたときの、該親IDの下層のIDとして得られる子孫IDであるとともに、
上記指定公開鍵に対応する秘密鍵は、上記親IDを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型IDベース暗号により算出される、上記子孫IDに対応する秘密鍵であって、
上記鍵管理装置は、
上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、
上記サービス提供装置は、
上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親IDにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供することを特徴とするアクセス管理方法。
【請求項11】
請求項1から5のいずれか1項に記載の鍵管理装置が備えるコンピュータを動作させる制御プログラムであって、上記コンピュータを上記の各手段として機能させるための制御プログラム。
【請求項12】
請求項6から8のいずれか1項に記載のサービス提供装置が備えるコンピュータを動作させる制御プログラムであって、上記コンピュータを上記の各手段として機能させるための制御プログラム。
【請求項13】
請求項11に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項14】
請求項12に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。


【図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

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2012−14368(P2012−14368A)
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願番号】特願2010−149517(P2010−149517)
【出願日】平成22年6月30日(2010.6.30)
【出願人】(504143441)国立大学法人 奈良先端科学技術大学院大学 (226)
【Fターム(参考)】