(57)【要約】【課題】安全性を確保しつつ、柔軟なロール管理を実現する。【解決手段】ロール管理装置３００は、ロール毎にアクセス制限が設定されたサービスを提供するサービス提供装置５００が、アクセス時に指定された公開鍵により所定の平文を暗号化したデータをサービス提供装置５００から取得し、公開鍵に対応する秘密鍵により復号したデータをサービス提供装置５００に送信するものであり、公開鍵は、ロール名を階層型ＩＤベース暗号におけるＩＤとしたときの該ＩＤの子孫ＩＤであり、公開鍵に対応する秘密鍵は、階層型ＩＤベース暗号にて算出される、子孫ＩＤに対応する秘密鍵であり、公開鍵と対応する秘密鍵とを記憶するロール記憶部３５２と、公開鍵をサービス提供装置５００に送信するロール送信部３６６と、送信した公開鍵により暗号化されたデータをロール記憶部３５２に記憶されている秘密鍵により復号したデータを生成する復号部３３８とを備える。【選択図】図１
2012014368.tif 000002
【特許請求の範囲】
【請求項１】
１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するサービス提供装置が、ユーザが上記サービスにアクセスする際にユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化した暗号データを、上記サービス提供装置から取得するとともに、上記指定公開鍵に対応する秘密鍵により復号した復号データを上記サービス提供装置に送信する鍵管理装置であって、
上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、
上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、
上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶する鍵情報記憶部と、
上記指定公開鍵を上記サービス提供装置に送信する鍵送信手段と、
上記鍵送信手段にて送信した上記指定公開鍵により暗号化された上記暗号データを、上記鍵情報記憶部に記憶されている秘密鍵により復号して上記復号データを生成する復号データ生成手段とを備えることを特徴とする鍵管理装置。
【請求項２】
上記鍵情報記憶部は、上記子孫ＩＤと、該子孫ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵との組を複数記憶するものであり、
上記鍵情報記憶部に記憶されている上記子孫ＩＤのいずれかを、上記指定公開鍵として、ユーザに指定させる鍵指定手段をさらに備えることを特徴とする請求項１に記載の鍵管理装置。
【請求項３】
上記鍵指定手段にて、上記鍵情報記憶部に記憶されている上記子孫ＩＤのいずれかをユーザに指定させる際、ユーザの正当性を認証する認証手段をさらに備えることを特徴とする請求項２に記載の鍵管理装置。
【請求項４】
上記子孫ＩＤと、該子孫ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵との組を、上記鍵情報記憶部に格納する鍵格納手段をさらに備えることを特徴とする請求項１から３のいずれか１項に記載の鍵管理装置。
【請求項５】
上記ユーザ群を識別する識別子と、該識別子を公開鍵暗号における公開鍵としたときの秘密鍵との組から、階層型ＩＤベース暗号を用いて、上記子孫ＩＤと該子孫ＩＤに対応する秘密鍵との組を生成する鍵生成手段をさらに備えることを特徴とする請求項１から４のいずれか１項に記載の鍵管理装置。
【請求項６】
１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成し、該生成した暗号データを上記指定公開鍵に対応する秘密鍵により復号した復号データを鍵管理装置から取得し、該取得した復号データと上記平文とが一致するとき、ユーザに上記サービスを提供するサービス提供装置であって、
上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、
上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、
上記復号データと上記平文とが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供するサービス提供手段を備えることを特徴とするサービス提供装置。
【請求項７】
上記子孫ＩＤには、上記サービスの提供を限定する内容を表す限定情報が含まれており、
上記サービス提供手段は、
上記指定公開鍵である上記子孫ＩＤに含まれている上記限定情報に従って、上記サービスの提供を限定することを特徴とする請求項６に記載のサービス提供装置。
【請求項８】
上記限定情報は、上記サービスの提供日時を含む情報であって、
上記サービス提供手段は、上記サービスを、上記限定情報に含まれる上記提供日時に提供することを特徴とする請求項７に記載のサービス提供装置。
【請求項９】
１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、
上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、
上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供する、アクセス管理システムであって、
上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、
上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、
上記鍵管理装置は、
上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、
上記サービス提供装置は、
上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供することを特徴とするアクセス管理システム。
【請求項１０】
１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、
上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、
上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供するアクセス管理システムにおけるアクセス管理方法であって、
上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、
上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、
上記鍵管理装置は、
上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、
上記サービス提供装置は、
上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供することを特徴とするアクセス管理方法。
【請求項１１】
請求項１から５のいずれか１項に記載の鍵管理装置が備えるコンピュータを動作させる制御プログラムであって、上記コンピュータを上記の各手段として機能させるための制御プログラム。
【請求項１２】
請求項６から８のいずれか１項に記載のサービス提供装置が備えるコンピュータを動作させる制御プログラムであって、上記コンピュータを上記の各手段として機能させるための制御プログラム。
【請求項１３】
請求項１１に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１４】
請求項１２に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報サービスに対するアクセス権限を管理するアクセス管理システム、および、情報サービスへのアクセス時に用いる認証鍵を管理する鍵管理装置等に関するものである。
【背景技術】
【０００２】
従来から、情報サービスに対するアクセス権限を管理する方法として、ロール（役割）に応じて、ユーザに操作の許可を与えるロールベースアクセス制御（ＲＢＡＣ:Role-Based Access Control）技術が広く知られている。
【０００３】
ロールベースアクセス制御技術を用いるアクセス権限管理では、ロールの発行、ユーザとロールとの対応付け、ロールと操作との対応付け等の管理を厳密に行なう必要があるが、これらの管理は、システムの安全性を確保するために、システム管理者の権限で行なわれるのが通常である。
【０００４】
ロールベースアクセス制御技術に関する先行技術として、特許文献１に開示されている技術がある。特許文献１では、システムの管理管轄を複数に分け、各管理管轄に権限を委譲することによって、従来のシステム管理者による一括管理を分割する手法が開示されている。具体的には、権限の一部が委譲されたサブ管理者により、ポリシーインスタンスが決定される。
【０００５】
なお、アクセス権限管理に関連する技術として、クロスドメインシングルサインオン技術があり、例えば、「ＯｐｅｎＩＤ」や「Ｓｈｉｂｂｏｌｅｔｈ」が広く知られている。ＯｐｅｎＩＤは、複数のＷｅｂサイトで共通のＩＤおよびパスワードを利用可能とする認証方式である。ユーザが所有するＩＤおよびパスワードを一元管理し、あるサイト（発行サイト）にてＩＤおよびパスワードを取得すれば、他のサイト（利用サイト）でも、同一のＩＤおよびパスワードを用いてログインすることを可能としている。これにより、ユーザのログイン操作の負荷を軽減している。
【０００６】
また、Ｓｈｉｂｂｏｌｅｔｈは、予め連盟を結んだ組織間でユーザの属性情報を交換するシングルサインオン認証方式である。属性の判定結果に応じたアクセス制御を行ない、連盟組織内にログインしたユーザに対して、組織間にまたがったサービスの提供を可能としている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２００９−５４４０７６号公報（公表日：２００９年１２月１０日）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述したように、ロールベースアクセス制御技術では、システム管理を厳密に行なうために、ロールや操作のメンテナンスは、システム管理者が一元的に行なうのが通常であり、ユーザ自身がロール等のメンテナンスを行なうことはできない。つまり、安全性を重視しているため、柔軟性に欠けるものとなっている。
【０００９】
これに対し、特許文献１に開示されている手法では、ロールベースアクセス制御を用いて管理権限を分割しているため、柔軟性を多少確保している。しかしながら、一般に知られているように、権限を分割すると、システムの安全性が脆弱になるという問題がある。特許文献１に開示されている手法は、システムが頑強であることを前提としたものである。
【００１０】
また、特許文献１に開示されている手法では、管理者により作成されたデータベースから適切なコンテキストインスタンスを作成することによってロールを作成するとともに、ロールの属性はアプリケーションモジュールにより決定されるため、ユーザは自身のロールを自由に操作することができないことから、十分な柔軟性が確保されているわけではない。
【００１１】
なお、ＯｐｅｎＩＤでは、利用サイトにおいてパスワードを開示する必要があり、権限に関する情報を安全に交換することができない。また、Ｓｈｉｂｂｏｌｅｔｈでは、ユーザ権限の管理は、各組織のルールに則して行なわれるため、利用できる権限の種類、権限の発行、権限の委譲などに制約があり、柔軟性に欠ける。
【００１２】
以上のように、従来のアクセス権限管理技術は、安全性と、ロール管理の柔軟性とを両立させるものにはなっていないという問題がある。
【００１３】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、安全性を確保しつつ、柔軟なロール管理を実現するアクセス管理システム等を提供することにある。
【課題を解決するための手段】
【００１４】
上記課題を解決するために、本発明に係る鍵管理装置は、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するサービス提供装置が、ユーザが上記サービスにアクセスする際にユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化した暗号データを、上記サービス提供装置から取得するとともに、上記指定公開鍵に対応する秘密鍵により復号した復号データを上記サービス提供装置に送信する鍵管理装置であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶する鍵情報記憶部と、上記指定公開鍵を上記サービス提供装置に送信する鍵送信手段と、上記鍵送信手段にて送信した上記指定公開鍵により暗号化された上記暗号データを、上記鍵情報記憶部に記憶されている秘密鍵により復号して上記復号データを生成する復号データ生成手段とを備えることを特徴としている。
【００１５】
上記の構成によれば、ユーザ群を識別する識別子（実施形態では、ロール（役割）のロール名に対応）を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤと、該子孫ＩＤに対応する秘密鍵との組（実施形態では、部分ロールに対応）を鍵情報記憶部に記憶する。そして、サービスにアクセスする際にユーザにより指定された子孫ＩＤをサービス提供装置に送信する。そして、該送信した子孫ＩＤによりサービス提供装置にて所定の平文を暗号化した暗号データ（つまり、チャレンジデータ）を、該子孫ＩＤに対応する秘密鍵により復号して復号データ（つまり、レスポンスデータ）を生成し、サービス提供装置に送信する。サービス提供装置では、いわゆるチャレンジ・レスポンス認証により、認証処理を行なっている。
【００１６】
よって、サービスへのアクセスが許可されているユーザ群に属していなユーザであっても、子孫ＩＤおよび対応する秘密鍵を用いることによって、サービス提供装置にて行なわれるチャレンジ・レスポンス認証に対応することができる。そして、サービス提供装置にて、認証成功時にサービスへのアクセスを許可する設定が成されていれば、サービスにアクセスすることが可能となる。
【００１７】
したがって、サービスへのアクセスが許可されていないユーザが、サービスへのアクセスが許可されているユーザ群の識別子から得られる子孫ＩＤおよび対応する秘密鍵を入手して用いることにより、システム管理者に依頼しなくとも、サービスにアクセスすることが容易に可能となる。つまり、サービスへのアクセスが許可されていないユーザに対して、アクセス権限の委任が容易に行なえるという効果を奏する。
【００１８】
なお、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型ＩＤベース暗号を用いて、子孫ＩＤおよび対応する秘密鍵を生成可能であるものとすると、ユーザ間でのアクセス権限の委任が柔軟に行なえることとなる。
【００１９】
さらに、サービス提供装置では、チャレンジ・レスポンス認証により、子孫ＩＤおよび対応する秘密鍵の正当性を検証するので、安全性（セキュリティ）を確保することもできる。
【００２０】
さらに、本発明に係る鍵管理装置は、上記の構成において、上記鍵情報記憶部は、上記子孫ＩＤと、該子孫ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵との組を複数記憶するものであり、上記鍵情報記憶部に記憶されている上記子孫ＩＤのいずれかを、上記指定公開鍵として、ユーザに指定させる鍵指定手段をさらに備える構成としてもよい。
【００２１】
上記の構成によれば、複数の子孫ＩＤの中からユーザが所望の子孫ＩＤを選択し、該選択した子孫ＩＤおよび対応する秘密鍵を用いることによって、サービスにアクセスすることが可能となる。
【００２２】
さらに、本発明に係る鍵管理装置は、上記の構成において、上記鍵指定手段にて、上記鍵情報記憶部に記憶されている上記子孫ＩＤのいずれかをユーザに指定させる際、ユーザの正当性を認証する認証手段をさらに備える構成としてもよい。
【００２３】
上記の構成によれば、鍵管理装置に記憶されている子孫ＩＤにアクセスするユーザの正当性を認証するので、不正ユーザによる子孫ＩＤの利用を防止できる。
【００２４】
さらに、本発明に係る鍵管理装置は、上記の構成において、上記子孫ＩＤと、該子孫ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵との組を、上記鍵情報記憶部に格納する鍵格納手段をさらに備える構成としてもよい。
【００２５】
上記の構成によれば、ユーザが、他のユーザ等から新たに入手した子孫ＩＤおよび対応する秘密鍵を鍵情報記憶部に格納することができるので、新たに入手した子孫ＩＤおよび対応する秘密鍵を用いることによって、サービスにアクセスすることが可能となる。
【００２６】
さらに、本発明に係る鍵管理装置は、上記の構成において、上記ユーザ群を識別する識別子と、該識別子を公開鍵暗号における公開鍵としたときの秘密鍵との組から、階層型ＩＤベース暗号を用いて、上記子孫ＩＤと該子孫ＩＤに対応する秘密鍵との組を生成する鍵生成手段をさらに備える構成としてもよい。
【００２７】
上記の構成によれば、ユーザが、子孫ＩＤと該子孫ＩＤに対応する秘密鍵との組を生成することができるので、該生成した子孫ＩＤおよび対応する秘密鍵を他のユーザに渡すことにより、他のユーザは、当該渡された子孫ＩＤおよび対応する秘密鍵を用いることによって、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が柔軟に行なえるという効果を奏する。
【００２８】
上記課題を解決するために、本発明に係るサービス提供装置は、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成し、該生成した暗号データを上記指定公開鍵に対応する秘密鍵により復号した復号データを鍵管理装置から取得し、該取得した復号データと上記平文とが一致するとき、ユーザに上記サービスを提供するサービス提供装置であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、上記復号データと上記平文とが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供するサービス提供手段を備えることを特徴としている。
【００２９】
上記の構成によれば、ユーザ群を識別する識別子（実施形態では、ユーザ群に対応付けられるロール（役割）のロール名）を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤと、該子孫ＩＤに対応する秘密鍵との組（実施形態では、部分ロール）を用いて、いわゆるチャレンジ・レスポンス認証により、認証処理を行なう。そして、認証に成功した場合、親ＩＤにて識別されるユーザ群にアクセスが許可されているサービスを提供する。
【００３０】
よって、サービスへのアクセスが許可されているユーザ群に属していないユーザが、子孫ＩＤおよび対応する秘密鍵を用いた認証が成功したとき、当該ユーザに対して、サービスを提供することが可能となる。
【００３１】
ここで、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型ＩＤベース暗号を用いて、子孫ＩＤおよび対応する秘密鍵を生成可能であるものとすると、当該ユーザから子孫ＩＤおよび対応する秘密鍵を受け渡してもらうことにより、サービスへのアクセスが許可されていないユーザであっても、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるという効果を奏する。
【００３２】
さらに、チャレンジ・レスポンス認証により、子孫ＩＤおよび対応する秘密鍵の正当性を検証しているので、安全性を確保することもできる。
【００３３】
さらに、本発明に係るサービス提供装置は、上記の構成において、上記子孫ＩＤには、上記サービスの提供を限定する内容を表す限定情報が含まれており、上記サービス提供手段は、上記指定公開鍵である上記子孫ＩＤに含まれている上記限定情報に従って、上記サービスの提供を限定する構成としてもよい。
【００３４】
上記の構成によれば、限定情報に従ってサービスの提供を限定するので、安全性をより高く確保することができる。
【００３５】
さらに、本発明に係るサービス提供装置は、上記の構成において、上記限定情報は、上記サービスの提供日時を含む情報であって、上記サービス提供手段は、上記サービスを、上記限定情報に含まれる上記提供日時に提供する構成としてもよい。
【００３６】
上記の構成によれば、サービスの提供を、限定情報に含まれる提供日時のみに限定するので、安全性をより高く確保することができる。
【００３７】
上記課題を解決するために、本発明に係るアクセス管理システムは、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供する、アクセス管理システムであって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、上記鍵管理装置は、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、上記サービス提供装置は、上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供することを特徴としている。
【００３８】
また、上記課題を解決するために、本発明に係るアクセス管理方法は、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供するアクセス管理システムにおけるアクセス管理方法であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、上記鍵管理装置は、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、上記サービス提供装置は、上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供することを特徴としている。
【００３９】
上記の構成によれば、鍵管理装置は、ユーザ群を識別する識別子（実施形態では、ユーザ群に対応付けられるロール（役割）のロール名）を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤと、該子孫ＩＤに対応する秘密鍵との組（実施形態では、部分ロール）を記憶する。そして、サービスにアクセスする際にユーザにより指定された子孫ＩＤをサービス提供装置に送信する。そして、サービス提供装置は、該送信された子孫ＩＤにより所定の平文を暗号化した暗号データを生成する。そして鍵管理装置は、該子孫ＩＤに対応する秘密鍵により復号して復号データを生成し、サービス提供装置に送信する。そして、サービス提供装置は、平文と鍵管理装置にて生成された復号データとが一致するとき、指定公開鍵を指定したユーザに、該指定公開鍵の親ＩＤにて識別されるユーザ群にアクセスが許可されているサービスを提供する。
【００４０】
したがって、サービスへのアクセスが許可されていないユーザが、サービスへのアクセスが許可されているユーザ群の識別子から得られる子孫ＩＤおよび対応する秘密鍵を入手して用いることにより、システム管理者に依頼しなくとも、サービスにアクセスすることが容易に可能となる。
【００４１】
ここで、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型ＩＤベース暗号を用いて、子孫ＩＤおよび対応する秘密鍵を生成可能であるものとすると、当該ユーザから子孫ＩＤおよび対応する秘密鍵を受け渡してもらうことにより、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるという効果を奏する。
【００４２】
さらに、サービス提供装置では、チャレンジ・レスポンス認証により、子孫ＩＤおよび対応する秘密鍵の正当性を検証するので、安全性を確保することもできる。
【００４３】
なお、上記鍵管理装置および上記サービス提供装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させることにより上記鍵管理装置および上記サービス提供装置をコンピュータにて実現させる上記鍵管理装置および上記サービス提供装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【発明の効果】
【００４４】
以上のように、本発明に係る鍵管理装置は、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するサービス提供装置が、ユーザが上記サービスにアクセスする際にユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化した暗号データを、上記サービス提供装置から取得するとともに、上記指定公開鍵に対応する秘密鍵により復号した復号データを上記サービス提供装置に送信する鍵管理装置であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶する鍵情報記憶部と、上記指定公開鍵を上記サービス提供装置に送信する鍵送信手段と、上記鍵送信手段にて送信した上記指定公開鍵により暗号化された上記暗号データを、上記鍵情報記憶部に記憶されている秘密鍵により復号して上記復号データを生成する復号データ生成手段とを備えている。
【００４５】
よって、サービスへのアクセスが許可されているユーザ群に属していなユーザであっても、子孫ＩＤおよび対応する秘密鍵を用いることによって、サービス提供装置にて行なわれるチャレンジ・レスポンス認証に対応することができる。そして、サービス提供装置にて、認証成功時にサービスへのアクセスを許可する設定が成されていれば、サービスにアクセスすることが可能となる。
【００４６】
したがって、サービスへのアクセスが許可されていないユーザが、サービスへのアクセスが許可されているユーザ群の識別子から得られる子孫ＩＤおよび対応する秘密鍵を入手して用いることにより、システム管理者に依頼しなくとも、サービスにアクセスすることが容易に可能となる。つまり、サービスへのアクセスが許可されていないユーザに対して、アクセス権限の委任が容易に行なえるという効果を奏する。
【００４７】
なお、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型ＩＤベース暗号を用いて、子孫ＩＤおよび対応する秘密鍵を生成可能であるものとすると、ユーザ間でのアクセス権限の委任が柔軟に行なえることとなる。
【００４８】
さらに、サービス提供装置では、チャレンジ・レスポンス認証により、子孫ＩＤおよび対応する秘密鍵の正当性を検証するので、安全性（セキュリティ）を確保することもできる。
【００４９】
また、本発明に係るサービス提供装置は、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成し、該生成した暗号データを上記指定公開鍵に対応する秘密鍵により復号した復号データを鍵管理装置から取得し、該取得した復号データと上記平文とが一致するとき、ユーザに上記サービスを提供するサービス提供装置であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、上記復号データと上記平文とが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供するサービス提供手段を備えている。
【００５０】
よって、サービスへのアクセスが許可されているユーザ群に属していないユーザが、子孫ＩＤおよび対応する秘密鍵を用いた認証が成功したとき、当該ユーザに対して、サービスを提供することが可能となる。
【００５１】
ここで、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型ＩＤベース暗号を用いて、子孫ＩＤおよび対応する秘密鍵を生成可能であるものとすると、当該ユーザから子孫ＩＤおよび対応する秘密鍵を受け渡してもらうことにより、サービスへのアクセスが許可されていないユーザであっても、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるという効果を奏する。
【００５２】
さらに、チャレンジ・レスポンス認証により、子孫ＩＤおよび対応する秘密鍵の正当性を検証しているので、安全性を確保することもできる。
【００５３】
また、本発明に係るアクセス管理システムは、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供する、アクセス管理システムであって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、上記鍵管理装置は、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、上記サービス提供装置は、上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供する。
【００５４】
また、本発明に係るアクセス管理方法は、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスを提供するとともに、ユーザが上記サービスにアクセスする際に、ユーザにより指定された公開鍵である指定公開鍵により所定の平文を暗号化して暗号データを生成するサービス提供装置と、上記サービス提供装置にて生成された暗号データを、上記指定公開鍵に対応する秘密鍵により復号した復号データを生成する鍵管理装置とを含み、上記サービス提供装置は、上記平文と、上記鍵管理装置にて生成された復号データとが一致するとき、ユーザに上記サービスを提供するアクセス管理システムにおけるアクセス管理方法であって、上記指定公開鍵は、上記ユーザ群を識別する識別子を階層型ＩＤベース暗号における親ＩＤとしたときの、該親ＩＤの下層のＩＤとして得られる子孫ＩＤであるとともに、上記指定公開鍵に対応する秘密鍵は、上記親ＩＤを公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により算出される、上記子孫ＩＤに対応する秘密鍵であって、上記鍵管理装置は、上記指定公開鍵と、該指定公開鍵に対応する秘密鍵とを対応付けて記憶するとともに、該記憶されている上記指定公開鍵を上記サービス提供装置に送信するものであり、上記サービス提供装置は、上記平文と上記鍵管理装置にて生成された復号データとが一致するとき、上記指定公開鍵を指定したユーザに、該指定公開鍵の上記親ＩＤにて識別される上記ユーザ群にアクセスが許可されている上記サービスを提供する。
【００５５】
したがって、サービスへのアクセスが許可されていないユーザが、サービスへのアクセスが許可されているユーザ群の識別子から得られる子孫ＩＤおよび対応する秘密鍵を入手して用いることにより、システム管理者に依頼しなくとも、サービスにアクセスすることが容易に可能となる。
【００５６】
ここで、サービスへのアクセスが許可されているユーザ群に属するユーザが、自らの判断で、階層型ＩＤベース暗号を用いて、子孫ＩＤおよび対応する秘密鍵を生成可能であるものとすると、当該ユーザから子孫ＩＤおよび対応する秘密鍵を受け渡してもらうことにより、サービスにアクセスすることが可能となる。つまり、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるという効果を奏する。
【００５７】
さらに、サービス提供装置では、チャレンジ・レスポンス認証により、子孫ＩＤおよび対応する秘密鍵の正当性を検証するので、安全性を確保することもできる。
【図面の簡単な説明】
【００５８】
【図１】図２に示したアクセス管理システムに含まれるロール管理装置の構成を示すブロック図である。
【図２】本発明の一実施形態に係るアクセス管理システムの構成を示す模式図である。
【図３】図２に示したアクセス管理システムに含まれるサービス提供装置の構成を示すブロック図である。
【図４】図２に示したアクセス管理システムにおいて、委任ユーザが被委任ユーザに部分ロールを受け渡す処理の流れを示すシーケンス図である。
【図５】図１に示したロール管理装置におけるログイン認証部が提供するログイン画面の模式図である。
【図６】図１に示したロール管理装置におけるロール管理部が提供するロール管理画面の模式図である。
【図７】図１に示したロール管理装置におけるロール更新部が提供するロール追加画面の模式図である。
【図８】図６に示したロール管理画面にてロールの削除指示を受け付けた際に、ユーザに確認を求めるために表示される確認画面の模式図である。
【図９】図１に示したロール管理装置における部分ロール生成部が提供するロール発行画面の模式図である。
【図１０】図２に示したアクセス管理システムにおいて、ユーザがサービスにアクセスする処理の流れを示すシーケンス図である。
【図１１】図３に示したサービス提供装置におけるログイン処理部が提供するサービスログイン画面の模式図である。
【図１２】図１に示したロール管理装置におけるログイン認証部が提供する認証確認画面の模式図である。
【図１３】図１に示したロール管理装置におけるロール管理部が提供するロール選択画面の模式図である。
【図１４】図１４（ａ）は、図３に示したサービス提供装置のロール認証部による認証が成功したときに、ロール認証部が提供する確認画面の模式図である。図１４（ｂ）は、図３に示したサービス提供装置のロール認証部による認証が失敗したときに、ロール認証部が提供する確認画面の模式図である。図１４（ｃ）は、図３に示したサービス提供装置のロール認証部による認証が失敗したときに、ロール認証部が提供する確認画面の模式図である。
【発明を実施するための形態】
【００５９】
本発明の一実施形態について図１から図１４に基づいて説明すると以下の通りである。
【００６０】
（１．本発明の概要）
本実施形態に係るアクセス管理システム１００は、概略的に言えば、１または複数のユーザから成るユーザ群毎にアクセス制限が設定されているサービスに対して、アクセスが許可されてないユーザが、アクセスが許可されているユーザから委任を受けることによって、アクセスが許可されてないサービスへアクセスすることを可能とするシステムである。以下では、委任を行なうユーザを「委任ユーザ」と表記する。また、委任ユーザから委任を受けるユーザを「被委任ユーザ」と表記する。両者を区別しないときは、単に、ユーザと表記する。
【００６１】
なお、アクセス制限が設定されているサービスの種類は特に限定されるものではなく、電子データの閲覧・取得・更新、データベースの参照・更新、Ｗｅｂアプリケーションの利用など、どのような情報サービスであってもよい。
【００６２】
アクセス管理システム１００では、予め、システム管理者にて、ユーザとロール（Role、役割、職務）とが対応付けられているとともに、ロールと、許可される操作（アクセスが許可されるサービス）とが対応付けられているものとする。ロールは、１または複数のユーザが対応付けられている。つまり、ロールを識別するロール名はユーザ群を識別する識別子となる。
【００６３】
ロールを用いてアクセス管理システム１００をさらに説明すると、アクセス管理システム１００では、（１）委任ユーザは、委任ユーザのロールから生成した「部分ロール」（後述する）を被委任ユーザに受け渡すことによって委任を行ない、（２）被委任ユーザは、受け渡された部分ロールを用いて認証に成功すると、部分ロールの生成元のロール（以下、生成元ロールと表記する）にアクセスが許可されているサービスへのアクセスが許可される。
【００６４】
（１−１．委任方法）
ここで、アクセス管理システム１００は、委任ユーザから被委任ユーザへ受け渡す部分ロールを、一般に知られている「階層型ＩＤベース暗号（ＨＩＢＥ：Hierarchical ID-Based Encryption）」を用いて、委任ユーザが、委任ユーザ自身にて管理しているロールから、任意に生成可能とする仕組みを備えている。そのため、委任ユーザから被委任ユーザへの委任を、システム管理者等に依頼することなく、容易かつ柔軟に行なうことができる。なお、階層型ＩＤベース暗号技術は、一般に知られている技術であるので、本明細書では詳細な説明を省略する。
【００６５】
ここで、本発明では、ロールを識別するロール名を、階層型ＩＤベース暗号におけるＩＤとして用いる。そして、ロール名を、階層型ＩＤベース暗号におけるＩＤとしたときの、当該ＩＤの下層のＩＤとして得られる子孫ＩＤをロール名とするロールを、部分ロールとする。
【００６６】
なお、部分ロールは、次に示す２つのデータから成る。すなわち、（１）部分ロールを識別するロール名（以下、部分ロール名と表記する）、および、（２）部分ロール名に対応する秘密鍵である。当該秘密鍵は、生成元ロールのロール名を公開鍵暗号における公開鍵としたときの秘密鍵から、階層型ＩＤベース暗号により計算（算出）することができる。
【００６７】
ただし、システム管理者によってユーザに予め対応付けられるロール（つまり、部分ロールではないロール）のロール名を公開鍵暗号における公開鍵としたときの秘密鍵は、予め、公的な鍵発行機関により発行されるものとする。
【００６８】
なお、本明細書において、部分ロールと生成元ロールとを区別せずに表現する場合は、単に「ロール」と表記する。
【００６９】
（１−２．認証方法）
上述した仕組みに加えて、アクセス管理システム１００は、委任ユーザから正当に委任を受けたユーザであるか否か（つまり、認証に用いる部分ロールが、委任ユーザから正当に受け渡されたものであるか否か）を、広く知られている「チャレンジ・レスポンス認証技術」を用いて検証する仕組みを備えている。そのため、システムの安全性（セキュリティ）を高く確保することができる。
【００７０】
具体的には、（１）委任ユーザから受け渡された部分ロールの部分ロール名を公開鍵として、ランダムに生成されたランダムデータ（平文）を暗号化して暗号データを生成し、（２）該生成した暗号データを、部分ロール名に対応する秘密鍵により復号して復号データを生成し、（３）該生成した復号データが上記ランダムデータと一致する場合、委任ユーザから正当に委任を受けていると判定し、委任ユーザから受け渡された部分ロールの生成元ロールにアクセスが許可されているサービスへのアクセスを許可する。なお、暗号データはチャレンジデータとも称される。復号データはレスポンスデータとも称される。
【００７１】
チャレンジ・レスポンス認証技術は、広く知られている技術であるので、本明細書では詳細な説明を省略する。
【００７２】
なお、認証方法には、チャレンジ・レスポンス認証の他に、広く知られている「電子証明書」を用いる認証方法も考えられる。しかしながら、電子証明書を用いる認証では、外部の認証局に電子証明書の発行を依頼する必要となり、柔軟性に欠ける。また、ユーザ自身が認証局として機能する場合には、基盤の整備コストが増大する。したがって、チャレンジ・レスポンス認証の方が、柔軟性およびコスト面で、電子証明書を用いた認証よりも、優位性がある。
【００７３】
（１−３．発明の効果）
以上の説明から分かるように、本発明によれば、ユーザ間でのアクセス権限の委任が容易かつ柔軟に行なえるため利便性が高いことに加えて、システムの安全性を高く確保することが可能となる。さらに、これらを実現するにあたり、コストが大きく増大することはない。
【００７４】
（１−４．限定情報の付加）
階層型ＩＤベース暗号におけるＩＤは、階層構造を有している。例えば、親ＩＤが「kaji」で表される文字列であるとすると、その下層の子ＩＤは、例えば「kaji.yuichi」と表すことができ、さらにその下層の孫ＩＤは、例えば「kaji.yuichi.2010」と表すことができる。この場合、「yuichi」および「2010」は、それぞれ、子ＩＤおよび孫ＩＤを生成する際に、ユーザが任意に設定可能な文字列である。つまり、部分ロール名には、ユーザが任意に設定可能な文字列を含めることができる。
【００７５】
そのため、部分ロール名には、サービスへのアクセスを限定する情報を表す限定情報を含めることができる。これにより、サービス提供装置５００にて、部分ロール名に含まれる限定情報に従って、サービスへのアクセスを限定することが可能となり、システムの安全性をさらに高くすることが可能となる。
【００７６】
限定の内容としては、アクセス日時の限定（例えば、Ｘ月Ｙ日のみ許可する）、アクセス内容の限定（例えば、閲覧のみ許可する）等が挙げられる。
【００７７】
例えば、ロール「kaji」の部分ロールに、アクセスを６月１１日に限定する限定情報を含める場合、部分ロール名を、例えば「kaji.June11」とすることができる。この部分ロール名を受信したサービス提供装置５００は、認証が成功した際であっても、６月１１日のみアクセスが可能となるようにアクセスを限定する。
【００７８】
同様に、サービスの提供日時を含む情報を限定情報としてもよい。そして、サービス提供装置５００は、限定情報に含まれる提供日時に従ってサービスの提供を限定することにより、安全性をより高く確保することができる。
【００７９】
ただし、限定情報の記述フォーマットは、予め定められているものとする。そして、サービス提供装置５００では、部分ロール名に含まれる限定情報の抽出が可能であり、抽出した限定情報に従って、アクセスを限定することが可能であるものとする。
【００８０】
（２．本発明の適用例）
ここで、アクセス管理システム１００を、医療情報データを管理するシステムに適用する場合について説明する。このようなシステムでは、医療情報データに対する堅固なアクセス制限が必要であり、医師などの特定のロールが割り当てられたユーザのみが、医療情報データにアクセス可能とする必要がある。
【００８１】
例えば、「医師」ロールにのみ、電子カルテへのアクセスが許可されている場合、「看護師」ロールでは電子カルテにアクセスすることはできない。しかしながら、医師の不在時や緊急時などにおいて、看護師にも電子カルテにアクセスさせることが望ましい場合がある。
【００８２】
このような場合、アクセス管理システム１００にて、「医師」ロールから生成した部分ロール（例えば、「医師代理」ロール）を医師から受け渡してもらえば、看護師は電子カルテにアクセスすることが可能となる。
【００８３】
つまり、「医師代理」ロールを看護師に事前に渡しておけば、医師が不在の場合に、医師の代理としての看護師に電子カルテにアクセスさせることが可能となる。
【００８４】
このとき、医師は、システム管理者等に依頼することなく、自身の判断のみで容易に医師」ロールから部分ロールを生成することができるため、アクセス権限の委任が容易かつ柔軟に行なうことができ、利便性が高い。
【００８５】
さらに、看護師が用いる部分ロールが、医師から正当に受け渡されたものであるか否かをチャレンジ・レスポンス認証により検証するため、システムの安全性を高く確保することができ、不正利用を防止することができる。
【００８６】
また、アクセス日時などの限定情報を「医師代理」ロールに含めておくことにより、看護師の電子カルテへのアクセスをさらに限定することができるので、システムの安全性をさらに高く確保することができる。
【００８７】
なお、本発明は、アクセス管理が必要となる情報サービスの全てに適用可能である。例えば、研究機関における研究データ、大学における電子図書館、企業における機密データ、教育機関における成績データ等のアクセス管理に適用することができる。
【００８８】
（３．システム構成）
次に、図２を参照しながら、アクセス管理システム１００の構成について説明する。図２は、アクセス管理システム１００の構成を示す模式図である。アクセス管理システム１００は、ユーザ端末２００、ロール管理装置（鍵管理装置）３００、およびサービス提供装置５００を含んでいる。なお、これらの装置は、直接又は他の装置を介して、通信ネットワーク７００と通信可能に接続されている。なお、通信ネットワーク７００は、図２では、単一であるように記載しているが、各種通信ネットワークやアクセス網が、多重および多層に構成されていてもよい。
【００８９】
サービス提供装置５００は、外部装置からのアクセスに応じて、各種サービスを提供するサーバ装置である。サービス提供装置５００の構成については後述する。
【００９０】
ユーザ端末２００は、サービス提供装置５００およびロール管理装置３００にアクセスする装置であり、ユーザの入力操作を受け付けるとともに、提供される各種画面を表示する。ユーザ端末２００は、ＰＣ（Personal Computer）、ＰＤＡ（Personal Digital Assistance）、携帯電話機、スマートフォンなどを想定している。ユーザ端末２００はユーザ毎に所有されることを想定している。
【００９１】
ロール管理装置３００は、ユーザに対応付けられているロール、および、委任ユーザから受け渡された部分ロールを、一元的に管理する装置である。なお、後述するように、ロール管理装置３００にて管理するロールは、ユーザ自身にて追加、更新、削除が可能である。ロール管理装置３００は、ＰＣなどの端末であってもよいし、ユーザ端末２００に着脱可能なＩＣカード等のカード類であってもよい。ロール管理装置３００の構成については後述する。
【００９２】
なお、ロール管理装置３００は、複数のユーザが共有するものであってもよいが、セキュリティを高める上で、ユーザ毎に所有されることが好ましい。本実施形態では、ユーザ毎に所有されるものとする。
【００９３】
ロール管理装置３００がユーザ毎に所有されるものである場合、異なる組織にて発行されているロールをロール管理装置３００に一括して管理してもよい。例えば、Ａ病院でのロールである「医師」、Ｂ病院でのロールである「非常勤医師」、Ｃ学会でのロールである「シニア会員」を、ロール管理装置３００にて管理してもよい。
【００９４】
以下では、委任ユーザが所有するユーザ端末２００およびロール管理装置３００をそれぞれ、ユーザ端末２００Ａおよびロール管理装置３００Ａと表記し、被委任ユーザが所有するユーザ端末２００およびロール管理装置３００をそれぞれ、ユーザ端末２００Ｂおよびロール管理装置３００Ｂと表記して、区別する。両者を区別しないときは、単に、ユーザ端末２００およびロール管理装置３００と表記する。
【００９５】
なお、本実施形態では、ユーザ端末２００およびロール管理装置３００は、別体の装置として説明するが、必ずしも別体の装置である必要は無く、一体の装置として設けられていてもよい。一体の装置として設けられる場合、ユーザ端末２００とロール管理装置３００とが行なう通信のやりとりは、一体の装置内で行なわれるものとなる。
【００９６】
（４．処理の概要）
次に、図２を参照しながら、アクセス管理システム１００にて行なわれる処理の概要について説明する。なお、処理の詳細については後述するので、ここでは概要の説明に留める。
【００９７】
アクセス管理システム１００にて行なわれる処理は、（Ａ）委任ユーザが被委任ユーザに部分ロールを受け渡す（委任する）処理と、（Ｂ）被委任ユーザが部分ロールを用いて認証を行なうことによってサービスへのアクセスを可能とする処理とに、大きく分けることができる。
【００９８】
上記（Ａ）の処理では、まず、委任ユーザが、ユーザ端末２００Ａを操作してロール管理装置３００Ａにアクセスし、ロール管理装置３００Ａにて、委任ユーザのロールから部分ロールを生成する（図２の（Ａ１））。そして、該生成した部分ロールを被委任ユーザに受け渡す（図２の（Ａ２））。なお、部分ロールを被委任ユーザに渡す手段は特に限定されるものではなく、部分ロールを添付した電子メールを送信してもよいし、部分ロールを格納した記録媒体を郵便や手渡しにより被委任ユーザに渡してもよい。そして、被委任ユーザは、受け渡された部分ロールをロール管理装置３００Ｂに格納する。
【００９９】
次に、上記（Ｂ）の処理では、被委任ユーザは、ユーザ端末２００Ｂを用いてサービス提供装置５００にて提供されるサービスへアクセスするにあたり、ロール管理装置３００Ｂに記憶している部分ロールを指定し、該指定した部分ロールの部分ロール名（指定公開鍵）をサービス提供装置５００に送信する（図２の（Ｂ１））。続いて、サービス提供装置５００とロール管理装置３００Ｂとの間で、チャレンジ・レスポンス認証を行なう（図２の（Ｂ２））。具体的には、サービス提供装置５００にて、ロール管理装置３００Ｂから送信された部分ロール名を公開鍵としてランダムデータ（所定の平文）を暗号化した暗号データ（チャレンジデータ）を生成する。続いて、ロール管理装置３００Ｂにて、サービス提供装置５００から取得した暗号データを、上記送信した部分ロール名に対応する秘密鍵により復号して復号データ（レスポンスデータ）を生成する。続いて、サービス提供装置５００にて、ロール管理装置３００Ｂから取得した復号データと上記ランダムデータとが一致するか否かを判定する。
【０１００】
そして、上記ランダムデータと復号データとが一致すると判定した場合、ロール管理装置３００Ｂから送信された部分ロール名の親ＩＤにて識別されるロールにアクセスが許可されているサービスへの、ユーザ端末２００Ｂからのアクセスを許可する（図２の（Ｂ３））。
【０１０１】
（５．各装置の構成）
次に、図１および図３を参照しながら、アクセス管理システム１００に含まれる各装置の構成について説明する。
【０１０２】
（５−１．ロール管理装置の構成）
まず、図１は、ロール管理装置３００の構成を示すブロック図である。同図に示すように、ロール管理装置３００は、少なくとも、通信部３１０、制御部３３０、および記憶部３５０を備えている。
【０１０３】
通信部３１０は、ロール管理装置３００が通信ネットワーク７００を介して外部装置（ユーザ端末２００およびサービス提供装置５００）と通信を行なうものである。
【０１０４】
次に、制御部３３０は、ロール管理装置３００が備える各部の動作を制御するものである。制御部３３０は、記憶部３５０に記憶されている各種プログラムを読み出して、所定の演算処理を行なうことによって、ロール管理装置３００の各部を制御するものであり、ＣＰＵ（Central Processing Unit）およびメモリ等で構成することができる。制御部３３０の詳細な構成については後述する。
【０１０５】
記憶部３５０は、各種プログラムおよびデータを格納している。具体的には、制御部３３０が実行する（１）各部の制御プログラム、（２）ＯＳ（Operating System）プログラム、（３）アプリケーションプログラム、および、（４）これらプログラムを実行するときに読み出す各種データ等を記憶するものである。記憶部３５０は、例えば、フラッシュメモリなどの不揮発性の記憶装置によって構成される。また、記憶部３５０は、ＲＡＭ（Random Access Memory）などの揮発性の記憶装置によって構成される作業領域を有している。作業領域は、制御部３３０が上述の各種プログラムを実行する過程でデータを一時的に保持するためのものである。
【０１０６】
記憶部３５０は、さらに、ユーザ情報記憶部３５１およびロール記憶部（鍵情報記憶部）３５２を含んでいる。
【０１０７】
ユーザ情報記憶部３５１は、ユーザ端末２００からロール管理装置３００にアクセスするユーザのユーザ認証を行なうためのユーザ情報（ユーザ名およびパスワードの組）を記憶するものである。
【０１０８】
次に、ロール記憶部３５２は、１または複数のロールを記憶するものである。具体的には、ロールを識別するロール名と当該ロール名を公開鍵暗号の公開鍵としたときの秘密鍵との組を、１または複数記憶する。ロールには、システム管理者によってユーザに対応付けられたロール、および、委任ユーザにより生成された部分ロールがある。なお、システム管理者によってユーザに予め対応付けられるロールのロール名に対応する秘密鍵は、公的な鍵発行機関にて発行されたものである。また、部分ロール名に対応する秘密鍵は、委任ユーザにより生成されたものである。
【０１０９】
なお、記憶部３５０は、必ずしもロール管理装置３００内に備えられる必要はなく、外部装置として、ロール管理装置３００にケーブルや通信ネットワーク７００を介して通信可能に接続される構成であってもよい。
【０１１０】
次に、制御部３３０について詳細に説明する。制御部３３０は、ログイン認証部（認証手段）３３１、ロール管理部（鍵指定手段）３３３、および復号部（復号データ生成手段）３３８を備えている。
【０１１１】
ログイン認証部３３１は、ユーザ認証を行なう（ユーザの正当性を検証する）ものである。ユーザ端末２００が直接アクセスしてきた際に「ログイン画面」をユーザ端末２００に提供する。また、サービス提供装置５００にアクセスしたユーザ端末２００がサービス提供装置５００から指定されたリダイレクトによってアクセスしてきた際に、「認証確認画面」をユーザ端末２００に提供する。ログイン画面および認証確認画面の画面例については後述する。
【０１１２】
そして、ログイン認証部３３１は、これらの画面にて入力されたユーザ情報（ユーザ名、パスワード）が、ユーザ情報記憶部３５１に記憶されているか否かを調べることによって、ユーザ認証を行なう。
【０１１３】
次に、ロール管理部３３３は、概略的に言えば、ロール記憶部３５２に記憶しているロールの追加・更新・削除、部分ロールの生成、およびロール名のサービス提供装置５００への送信を行なうものである。
【０１１４】
ロール管理部３３３は、ログイン認証部３３１によるユーザ認証が成功した場合、（１）ユーザ端末２００が直接アクセスしてきたときは、「ロール管理画面」をユーザ端末２００に提供する。一方、（２）ユーザ端末２００がリダイレクトによってアクセスしてきたときは、「ロール選択画面」をユーザ端末２００に提供する。
【０１１５】
「ロール管理画面」は、ロール記憶部３５２に記憶しているロールのロール名を一覧表示するとともに、ロール記憶部３５２に記憶させるロールの追加指示、ロール記憶部３５２に記憶しているロールの削除指示、および、被委任ユーザへの委任指示をそれぞれ受け付けるための画面である。ロール管理画面の画面例については後述する。
【０１１６】
一方、「ロール選択画面」は、ロール記憶部３５２に記憶しているロールのロール名を一覧表示するとともに、ロールの選択を受け付けるための画面である。ロール選択画面の画面例については後述する。
【０１１７】
そして、ロール管理部３３３は、さらに、ロール更新部（鍵格納手段）３３４、部分ロール生成部（鍵生成手段）３３５、およびロール送信部（鍵送信手段）３３６を備えている。
【０１１８】
ロール更新部３３４は、ロール管理画面にてロールの追加指示を受け付けたとき、ロールの追加を行なうための「ロール追加画面」をユーザ端末２００に提供する。ロール追加画面の画面例については後述する。そして、ロール追加画面にて、ロール名と、該ロール名に対応する秘密鍵との組をロール記憶部３５２に格納する。
【０１１９】
さらに、ロール更新部３３４は、ロール管理画面にてロールの削除指示を受け付けたとき、該削除指示されたロール名（公開鍵）と、該ロール名に対応する秘密鍵との組を、ロール記憶部３５２から削除する。
【０１２０】
次に、部分ロール生成部３３５は、階層型ＩＤベース暗号を用いて、生成元ロールから部分ロールを生成するものである。具体的には、ロール管理画面にて委任指示を受け付けたとき、被委任ユーザへ受け渡す部分ロールを生成するためのロール発行画面をユーザ端末２００に提供する。ロール発行画面の画面例については後述する。そして、ロール発行画面にて、部分ロールの生成条件（具体的には、部分ロール名）の入力を受け付けるとともに、入力された生成条件に従って部分ロールを生成する。具体的には、部分ロール名、および、部分ロール名を公開鍵としたときの秘密鍵を生成する。なお、生成した秘密鍵は、ロール発行画面内に表示する等して委任ユーザに通知する。
【０１２１】
次に、ロール送信部３３６は、ロール名をサービス提供装置５００に送信するものである。具体的には、ロール選択画面にて選択されたロールのロール名を、サービス提供装置５００のロール認証部５３３（後述する）にて実行されるチャレンジ・レスポンス認証における公開鍵として使用させるために、サービス提供装置５００に送信する。
【０１２２】
次に、復号部３３８は、サービス提供装置５００のロール認証部５３３にて実行されるチャレンジ・レスポンス認証において生成された暗号データ（チャレンジデータ）を受信する。そして、ロール選択画面にて選択されたロールのロール名に対応する秘密鍵をロール記憶部３５２から読み出し、該読み出した秘密鍵にて上記受信した暗号データを復号してレスポンスデータを生成する。そして、該生成したレスポンスデータをサービス提供装置５００に返信する。
【０１２３】
（５−２．サービス提供装置の構成）
次に、図３は、サービス提供装置５００の構成を示すブロック図である。同図に示すように、サービス提供装置５００は、少なくとも、通信部５１０、制御部５３０、および記憶部５５０を備えている。
【０１２４】
通信部５１０は、サービス提供装置５００が外部装置（ユーザ端末２００およびロール管理装置３００）と通信を行なうためのものである。通信部５１０は、通信ネットワーク７００と接続可能に構成されており、図示していないが、通信部５１０と通信ネットワーク７００との間には、ＬＡＮ（Local Area Network）やルータ等の通信を行なうために必要な構成が適宜設けられている。
【０１２５】
次に、制御部５３０は、サービス提供装置５００が備える各部の動作を制御するものである。制御部５３０は、記憶部５５０に記憶されている各種プログラムを読み出して、所定の演算処理を行なうことによって、サービス提供装置５００の各部を制御するものであり、ＣＰＵおよびメモリ等で構成することができる。制御部５３０の詳細な構成については後述する。
【０１２６】
記憶部５５０は、各種プログラムおよびデータを格納している。具体的には、制御部５３０が実行する（１）各部の制御プログラム、（２）ＯＳプログラム、（３）アプリケーションプログラム、および、（４）これらプログラムを実行するときに読み出す各種データ等を記憶するものである。記憶部５５０は、例えば、フラッシュメモリなどの不揮発性の記憶装置によって構成される。また、記憶部５５０は、ＲＡＭなどの揮発性の記憶装置によって構成される作業領域を有している。作業領域は、制御部５３０が上述の各種プログラムを実行する過程でデータを一時的に保持するためのものである。
【０１２７】
なお、記憶部５５０は、権限情報記憶部５５１、およびサービスデータ記憶部５５２を含んでいる。
【０１２８】
権限情報記憶部５５１は、ユーザ情報とロールとを対応付けて記憶するとともに、ロールと許可される操作（サービスへのアクセス制限）とを対応付けて記憶するものである。
【０１２９】
サービスデータ記憶部５５２は、各種サービスを構成するデータ群を記憶するものである。
【０１３０】
なお、記憶部５５０は、必ずしもサービス提供装置５００に備えられる必要はなく、外部装置として、サービス提供装置５００にケーブルや通信ネットワーク７００を介して通信可能に接続される構成であってもよい。
【０１３１】
次に、制御部５３０について詳細に説明する。制御部５３０は、ログイン処理部５３１、ロール認証部５３３、およびサービス提供部（サービス提供手段）５３７を備えている。
【０１３２】
ログイン処理部５３１は、ユーザ端末２００からアクセスされた際に、ユーザ認証を行なうためのサービスログイン画面をユーザ端末２００に提供する。なお、サービスログイン画面では、被委任ユーザが、受け渡された部分ロールを用いることができるように、ロール管理装置３００Ｂのアドレス（ＵＲＬ：Uniform Resource Locator）の指定が可能である。サービスログイン画面の画面例については後述する。
【０１３３】
そして、サービスログイン画面にて、ロール管理装置３００のアドレスが指定されたとき、ログイン処理部５３１は、ユーザ端末２００からのアクセスを、当該指定されたアドレスのロール管理装置３００に転送させる（リダイレクトする）。
【０１３４】
次に、ロール認証部５３３は、ロール管理装置３００のロール送信部３３６からロール名を受信すると、チャレンジ・レスポンス認証を実行する。つまり、ランダムに生成したランダムデータを、上記受信したロール名を公開鍵として暗号化した暗号データ（チャレンジデータ）を生成するとともに、該生成した暗号データをロール管理装置３００に送信する。続いて、その応答として、ロール管理装置３００の復号部３３８から返信されたレスポンスデータと、上記ランダムデータとが一致するか否かを判定する。そして、一致する場合、認証が成功したものとする。一致しない場合は、認証に失敗したものとして処理を中断する。
【０１３５】
次に、サービス提供部５３７は、ロール認証部５３３での認証が成功した場合、ユーザ端末２００からのアクセスを許可し、サービスを提供するための処理を行なう。まず、ロール管理装置３００に、サービス提供装置５００へのログイン用のアドレスを通知し、ユーザ端末２００からロール管理装置３００へのアクセスを、該通知したアドレスに転送させる（リダイレクトする）。
【０１３６】
そして、ユーザ端末２００が上記通知したアドレスにアクセスしてきたとき、サービス提供部５３７は、ロール認証部５３３にてロール管理装置３００から取得したロール名に対応付けられているサービスへのアクセス制限を権限情報記憶部５５１から取得する。ロール管理装置３００から取得したロール名が部分ロール名である場合は、その生成元ロールのロール名に対応付けられているサービスへのアクセス制限を権限情報記憶部５５１から取得する。そして、当該サービスを構成するデータ群をサービスデータ記憶部５５２から取得し、上記取得したアクセス制限に従って、ユーザ端末２００にサービスを提供する。その際、ロール管理装置３００から取得したロール名に限定情報が含まれている場合は、当該限定情報に従って、サービスの提供を限定する。
【０１３７】
なお、図示していないが、サービス提供装置５００は、入力部５７０および表示部５９０を備えていてもよい。
【０１３８】
入力部５７０は、サービス提供装置５００の管理者からの入力を受け付け、該入力に応じた入力信号を制御部５３０に送信するものである。入力部５７０は、管理者が所望の入力を行なえるものであればよく、マウスやキーボードを想定している。
【０１３９】
表示部５９０は、制御部５３０の指示に基づいて、設定やメンテナンスなどの画面を表示する表示装置である。例えば、ＬＣ表示パネルやＥＬ表示パネル、ＣＲＴ表示装置等を表示部５９０として用いることができる。
【０１４０】
（５−３．ユーザ端末の構成）
図示しないが、ユーザ端末２００は、通信ネットワーク７００を介して外部装置（ロール管理装置３００およびサービス提供装置５００）と通信を行なう通信部、ロール管理装置３００およびサービス提供装置５００が提供する各種画面を表示する液晶パネル等の表示部、ユーザの入力を受け付けるマウスやキーボード等の入力部、および、これら各部を制御するＣＰＵおよびメモリ等で構成された制御部を備えている。
【０１４１】
（６．具体的な処理の流れ）
（６−１．委任ユーザが被委任ユーザに部分ロールを受け渡す処理の流れ）
次に、図４を参照しながら、委任ユーザが被委任ユーザに部分ロールを受け渡す処理の流れの詳細について説明する。図４は、委任ユーザが被委任ユーザに部分ロールを受け渡す処理の流れを示すシーケンス図である。
【０１４２】
まず、委任ユーザ側で行なう処理について説明する。委任ユーザは、被委任ユーザに受け渡す部分ロールを生成させるために、ユーザ端末２００Ａを操作してロール管理装置３００Ａにアクセスする（シーケンス（以下、単に「Ｓ」と表記）１１）。これに対して、ロール管理装置３００Ａのログイン認証部３３１が、ログイン画面をユーザ端末２００Ａに提供する（Ｓ１２）。そして、委任ユーザがユーザ端末２００Ａを操作して、ログイン画面にてユーザ情報（ユーザ名およびパスワード）を入力する（Ｓ１３）。
【０１４３】
そして、ユーザ認証が成功すると、ロール管理装置３００Ａのロール管理部３３３が、ロール管理画面をユーザ端末２００Ａに提供する（Ｓ１４）。そして、委任ユーザがユーザ端末２００Ａを操作して、ロール管理画面にて委任を行なう旨を指示する（Ｓ１５）。これに対して、ロール管理装置３００Ａの部分ロール生成部３３５が、ロール発行画面をユーザ端末２００Ａに提供する（Ｓ１６）。
【０１４４】
そして、委任ユーザがユーザ端末２００Ａを操作して、部分ロールの生成条件（具体的には、部分ロール名）を入力すると（Ｓ１７）、ロール管理装置３００Ａの部分ロール生成部３３５が、入力された生成条件に従って部分ロールを生成し、該生成した部分ロールの秘密鍵を、委任ユーザに通知する（ロール発行画面内に表示する）（Ｓ１８）。
【０１４５】
以上の流れにより、委任ユーザは、被委任ユーザに受け渡す部分ロールを得る。そして、委任ユーザは、部分ロールを被委任ユーザに受け渡す（Ｓ１９）。
【０１４６】
続いて、被委任ユーザ側で行なう処理について説明する。被委任ユーザは、受け渡される部分ロールをロール管理装置３００Ｂに登録するために、ユーザ端末２００Ｂを操作してロール管理装置３００Ｂにアクセスすると、ロール管理装置３００Ｂのロール管理部３３３が、ロール管理画面をユーザ端末２００Ｂに提供する（Ｓ２１〜Ｓ２４）。なお、Ｓ２１〜Ｓ２４の処理は、それぞれ、Ｓ１１〜Ｓ１４の処理と同様である。
【０１４７】
そして、被委任ユーザがユーザ端末２００Ｂを操作して、ロール管理画面にてロールの追加を指示する（Ｓ２５）。これに対して、ロール管理装置３００Ｂのロール更新部３３４が、ロール追加画面をユーザ端末２００Ｂに提供する（Ｓ２６）。
【０１４８】
そして、被委任ユーザは、ステップＳ１９にて受け渡された部分ロールを、ロール追加画面にて入力することによって、ロール記憶部３５２に格納する（Ｓ２７、Ｓ２８）。
【０１４９】
（６−２．画面例）
次に、図５〜図９を参照しながら、上述した処理において提供される画面の一例について説明する。
【０１５０】
図５は、ログイン認証部３３１が提供するログイン画面の模式図である。同図に示すとおり、ログイン画面では、ユーザ名およびパスワードの入力が可能である。
【０１５１】
次に、図６は、ロール管理部３３３が提供するロール管理画面の模式図である。同図に示すように、ロール管理画面では、ロール名を一覧表示する。この例では、「aaaa.faculty」、「bbbb.member」、「cccc.member.premium」、「dddd-system.guest」というロール名が表示されている。
【０１５２】
また、同図に示すボタンＢ１は、ロールの追加指示を受け付けるボタンである。また、同図に示すボタンＢ２は、ボタンと対に表示されているロールの削除指示を受け付けるボタンである。
【０１５３】
また、同図に示すボタンＢ３は、委任指示を受け付けるボタンであり、ボタンと対に表示されているロールに基づいて部分ロールを生成する指示（委任の指示）を受け付けるためのボタンである。
【０１５４】
次に、図７は、ロール更新部３３４が提供するロール追加画面の模式図である。入力フィールドＦ１は、追加するロール名（公開鍵）を入力するフィールドである。この例では、「eeee-u.lecture.June10」というロール名が入力されている様子を示している。なお、このロールは、「eeee-u.lecture」の部分ロールである。また、入力フィールドＦ２は、対応する秘密鍵を入力するフィールドである。
【０１５５】
次に、図８は、ロール管理画面にてロールの削除指示を受け付けた際に、ユーザに確認を求めるために表示される確認画面の模式図である。
【０１５６】
次に、図９は、部分ロール生成部３３５が提供するロール発行画面の模式図である。表示フィールドＤ１には、部分ロールの生成元となるロールのロール名が表示される。この例では、「aaaa.faculty」というロール名が表示されている。
【０１５７】
また、入力フィールドＦ３は、任意の文字列を入力するフィールドである。表示フィールドＤ１に表示されたロール名と、入力フィールドＦ３に入力された文字列とを連結させた文字列が、新たに生成する部分ロールのロール名となる。同図に示す例では、部分ロールのロール名は、「aaaa.faculty.assistant.June11」である。
【０１５８】
また、同図に示すボタンＢ４を押下すると、部分ロール生成部３３５により、表示フィールドＤ１に表示されたロール名と入力フィールドＦ３に入力された文字列とを連結して成るロール名を公開鍵としたときの秘密鍵が生成され、該生成した秘密鍵が表示フィールドＤ２に表示される。
【０１５９】
（６−３．ユーザがサービスにアクセスする処理の流れ）
次に、図１０を参照しながら、ユーザがサービスにアクセスする処理の流れの詳細について説明する。図１０は、ユーザがサービスにアクセスする処理の流れを示すシーケンス図である。なお、委任ユーザがサービスにアクセスする場合の処理の流れ、および、被委任ユーザがサービスにアクセスする場合の処理の流れは、共通しているので、まとめて説明する。
【０１６０】
ユーザは、まず、ユーザ端末２００を操作して、サービス提供装置５００にアクセスすると（Ｓ３１）、サービス提供装置５００のログイン処理部５３１が、サービスログイン画面をユーザ端末２００に提供する（Ｓ３２）。
【０１６１】
ユーザは、ロールをロール管理装置３００から読み出して用いるために、サービスログイン画面にてロール管理装置３００のアドレスを指定する（Ｓ３３）。サービス提供装置５００のログイン処理部５３１は、ユーザ端末２００からのアクセスを、当該指定されたアドレスに転送させる（リダイレクトする）（Ｓ３４、Ｓ３５）。
【０１６２】
次に、ロール管理装置３００のログイン認証部３３１が、認証確認画面をユーザ端末２００に提供する（Ｓ３６）。そして、ユーザがユーザ端末２００を操作して、認証確認画面にてユーザ情報を入力する（Ｓ３７）。
【０１６３】
そして、ユーザ認証が成功すると、ロール管理装置３００のロール送信部３３６が、ロール選択画面をユーザ端末２００に提供する（Ｓ３８）。
【０１６４】
そして、ユーザがユーザ端末２００を操作して、チャレンジ・レスポンス認証に使用するロールをロール選択画面にて選択すると（Ｓ３９）、ロール管理装置３００のロール送信部３３６が、該選択されたロールのロール名をサービス提供装置５００に送信する（Ｓ４０）。
【０１６５】
続いて、サービス提供装置５００のロール認証部５３３が部分ロール名を受信すると、ランダムに生成したランダムデータを、上記受信した部分ロール名を公開鍵として暗号化した暗号データ（チャレンジデータ）を生成するとともに、該生成した暗号データをロール管理装置３００に送信する（Ｓ４１）。
【０１６６】
そして、ロール管理装置３００の復号部３３８が、サービス提供装置５００から暗号データ（チャレンジデータ）を取得すると、ロール選択画面にて選択された部分ロールの部分ロール名に対応する秘密鍵をロール記憶部３５２から読み出し、該読み出した秘密鍵にてサービス提供装置５００から取得した暗号データを復号してレスポンスデータを生成する。そして、該生成したレスポンスデータをサービス提供装置５００に返信する（Ｓ４２）。
【０１６７】
そして、サービス提供装置５００のロール認証部５３３が、ロール管理装置３００から取得したレスポンスデータと、上記生成したランダムデータとが一致するか否かを判定し、一致している場合は、ロール管理装置３００に、サービス提供装置５００へのログイン用のアドレスを通知する（Ｓ４３）。
【０１６８】
そして、ロール管理装置３００は、ユーザ端末２００のアクセスを、通知されたアドレスに転送させる（リダイレクトする）ことによって、サービス提供装置５００へのログインを行なわせる（Ｓ４４〜Ｓ４６）。ログイン後、ユーザ端末２００はサービスにアクセスすることが可能となる。
【０１６９】
以上の流れにより、ユーザは、ロールを用いて認証を行ない、サービスにアクセスすることができる。
【０１７０】
なお、ロール管理装置３００とサービス提供装置５００との間で通信セッションを維持するために、必要に応じて、通信データにセッション情報を含めることが好ましい。図１０の例では、Ｓ３４、Ｓ４０〜Ｓ４２に示す通信にセッションＩＤを含めており、同一セッションにおける通信であることがわかるようにしている。ただし、アクセス管理システム１００にてセッション管理を行なう機能を別途備えている場合、通信データにセッション情報を含める必要はない。
【０１７１】
また、装置間の通信は、広く知られている暗号技術（例えば、ＳＳＬ（Secure Sockets Layer）等）により保護されていることが好ましい。
【０１７２】
（６−４．画面例）
次に、図１１〜図１４を参照しながら、上述した処理において提供される画面の一例について説明する。
【０１７３】
図１１は、ログイン処理部５３１が提供するサービスログイン画面の模式図である。入力フィールドＦ４は、ロール管理装置３００のアドレスを入力するフィールドである。図１１では、“http://rs.aaaa.jp/”というアドレスが入力された様子を示している。
【０１７４】
次に、図１２は、ロール管理装置３００のログイン認証部３３１が提供する認証確認画面の模式図である。同図に示すとおり、認証確認画面では、ユーザ名およびパスワードの入力が可能である。
【０１７５】
次に、図１３は、ロール管理装置３００のロール管理部３３３が提供するロール選択画面の模式図である。同図に示すように、ロール選択画面では、ロール名を選択可能に一覧表示する。この例では、「bbbb.member」というロール名のロールが選択された様子を示している。
【０１７６】
次に、図１４（ａ）は、サービス提供装置５００のロール認証部５３３による認証が成功したときに、ロール認証部５３３が提供する確認画面の模式図である。図１４（ｂ）および図１４（ｃ）は、サービス提供装置５００のロール認証部５３３による認証が失敗したときに、ロール認証部５３３が提供する確認画面の模式図である。
【０１７７】
（７．参考形態）
本発明に係る参考形態として、異なる組織間にて有機的なサービスの提供を実現する形態について説明する。
【０１７８】
図１０を参照しながら上述したとおり、ユーザは、サービス提供装置５００にて提供されるサービスにアクセスする際に、ロール管理装置３００に記憶させているロールをサービス提供装置５００に送信する。
【０１７９】
したがって、サービス提供装置５００にて、アクセスを許可するロールを予め登録しておくことにより、ロール管理装置３００から送信されてきたロールに応じて、アクセス可否を決定することができる。すなわち、サービス提供装置５００にユーザ情報を登録していないユーザからのアクセスであっても、アクセスが許可されたロールを所有しているユーザであれば、アクセスを許可することが可能となる。
【０１８０】
具体例として、大学間での電子図書館サービスの相互利用について説明する。具体的には、Ａ大学にて提供している電子図書館サービスにＢ大学の学生がアクセスする例について説明する。
【０１８１】
まず、前提として、Ａ大学では、Ａ大学のサービス提供装置５００にて提供している電子図書館サービスに、Ｂ大学の学生がアクセスすることを許可しているものとする。なお、Ａ大学のサービス提供装置５００には、Ｂ大学の学生のユーザ情報は登録されていない。その代わりに、Ａ大学のサービス提供装置５００には、アクセスを許可するロールとして「Ｂ大学学生」ロールが予め登録されているものとする。また、Ｂ大学の学生は、自らが所有するロール管理装置３００に「Ｂ大学学生」ロールを登録しているものとする。
【０１８２】
この場合、Ｂ大学の学生は、図１０にて説明した処理の流れにおいて、シーケンスＳ３１にてＡ大学のサービス提供装置５００にアクセスし、その後、シーケンスＳ３９にて「Ｂ大学学生」ロールを選択する。その結果、シーケンスＳ４５にてＡ大学のサービス提供装置５００にログインすることができる。
【０１８３】
このように、図１０にて説明した処理を行なうことにより、組織間にて有機的なサービスを提供することが可能となる。
【０１８４】
なお、その他の具体例として、異なる組織間でのタイアップサービスが挙げられる。例えば、Ｘ店舗のネット通販の会員ユーザである場合、Ｙ店舗のネット通販の購入代金を割引するサービスをＹ店舗にて提供する等である。この場合、ユーザは、自らが所有するロール管理装置３００に「Ｘ店舗会員」ロールを登録しておくことにより、Ｙ店舗にて割引サービスを受けることが可能となる。
【０１８５】
（８．補記事項）
上述した各制御部は、ＣＰＵを用いてソフトウェアによって実現してもよいし、集積回路（ＩＣチップ）上に形成された論理回路によってハードウェアとして構成してもよい。
【０１８６】
ソフトウェアによって実現する場合は、サービス提供装置５００、ロール管理装置３００、ユーザ端末２００は、各機能を実現する制御プログラムの命令を実行するＣＰＵ、上記プログラムを格納したＲＯＭ、上記プログラムを展開するＲＡＭ、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるサービス提供装置５００、ロール管理装置３００、ユーザ端末２００の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、サービス提供装置５００、ロール管理装置３００、ユーザ端末２００に供給し、サービス提供装置５００、ロール管理装置３００、ユーザ端末２００内のコンピュータ（またはＣＰＵやＭＰＵ（Micro Processing Unit））が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０１８７】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ類、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク類、ＩＣカード（メモリカードを含む）／光カード等のカード類、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ類、ＰＬＤ（Programmable logic device）等の論理回路類などを用いることができる。
【０１８８】
また、サービス提供装置５００、ロール管理装置３００、ユーザ端末２００を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩＥＥＥ８０２．１１無線、ＨＤＲ（High Data Rate）、ＮＦＣ（Near Field Communication）、ＤＬＮＡ（Digital Living Network Alliance）、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。
【０１８９】
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１９０】
本発明は、情報サービスに対するアクセス権限を管理するアクセス管理システム、および、情報サービスへのアクセス時に用いる認証鍵を管理する鍵管理装置等に適用することができる。
【符号の説明】
【０１９１】
１００  アクセス管理システム
２００、２００Ａ、２００Ｂ  ユーザ端末
３００、３００Ａ、３００Ｂ  ロール管理装置（鍵管理装置）
３３１  ログイン認証部（認証手段）
３３３  ロール管理部（鍵指定手段）
３３４  ロール更新部（鍵格納手段）
３３５  部分ロール生成部（鍵生成手段）
３３６  ロール送信部（鍵送信手段）
３３８  復号部（復号データ生成手段）
３５１  ユーザ情報記憶部
３５２  ロール記憶部（鍵情報記憶部）
５００  サービス提供装置
５３３  ロール認証部
５３７  サービス提供部（サービス提供手段）
【図１】
2012014368.tif 000003
【図２】
2012014368.tif 000004
【図３】
2012014368.tif 000005
【図４】
2012014368.tif 000006
【図５】
2012014368.tif 000007
【図６】
2012014368.tif 000008
【図７】
2012014368.tif 000009
【図８】
2012014368.tif 000010
【図９】
2012014368.tif 000011
【図１０】
2012014368.tif 000012
【図１１】
2012014368.tif 000013
【図１２】
2012014368.tif 000014
【図１３】
2012014368.tif 000015
【図１４】
2012014368.tif 000016