JP2004303202A - 情報提供装置、情報提供方法、情報提供プログラム及び記録媒体、並びにユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体 - Google Patents

情報提供装置、情報提供方法、情報提供プログラム及び記録媒体、並びにユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体 Download PDF

Info

Publication number
JP2004303202A
JP2004303202A JP2004032085A JP2004032085A JP2004303202A JP 2004303202 A JP2004303202 A JP 2004303202A JP 2004032085 A JP2004032085 A JP 2004032085A JP 2004032085 A JP2004032085 A JP 2004032085A JP 2004303202 A JP2004303202 A JP 2004303202A
Authority
JP
Japan
Prior art keywords
authentication
user
information
ticket
provider
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004032085A
Other languages
English (en)
Other versions
JP4676703B2 (ja
Inventor
Jun Ehata
潤 江畑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2004032085A priority Critical patent/JP4676703B2/ja
Priority to EP04005652A priority patent/EP1475937A3/en
Priority to EP05020675A priority patent/EP1608125A1/en
Priority to US10/803,896 priority patent/US7617399B2/en
Priority to CNB2004100302101A priority patent/CN100371846C/zh
Publication of JP2004303202A publication Critical patent/JP2004303202A/ja
Application granted granted Critical
Publication of JP4676703B2 publication Critical patent/JP4676703B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/40User authentication by quorum, i.e. whereby two or more security principals are required
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Abstract

【課題】 それぞれ独立して管理されているユーザ情報を統合的に提供することのできる情報提供装置、情報提供方法、情報提供プログラム及び記録媒体の提供を目的とする。
【解決手段】 ユーザに係る情報の提供を行う情報提供手段を連携させる連携手段を有する情報提供装置であって、前記連携手段は、ユーザに係る情報の提供要求に応じ、第一の情報管理手段において管理されているユーザに係る第一の情報を第一の情報提供手段に取得させ、第二の情報管理手段において所定の識別情報によって前記第一の情報に予め対応付けられて管理されているユーザに係る第二の情報を第二の情報提供手段に取得させ、前記第一及び第二の情報を前記所定の識別情報に基づいて統合した情報を提供することにより上記課題を解決する。
【選択図】 図18

Description

本発明は、情報提供装置、情報提供方法、情報提供プログラム及び記録媒体に関し、特にそれぞれ独立して管理されているユーザ情報を統合的に提供する情報提供装置、情報提供方法、情報提供プログラム及び記録媒体に関する。
また、本発明は、ユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体に関し、特に複数の認証手段を連携させるユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体に関する。
情報システムの不正利用を防ぐために、各種アプリケーションは、ユーザの認証機能を有しているのが一般である。認証機能を実現するシステムの具体例としてアプリケーションの起動時にユーザIDとパスワードの入力を要求するパスワードシステムが挙げられる。ユーザIDとパスワードとを正しく入力したユーザには、アプリケーションの利用が許可され、以降、ユーザは、アプリケーションが提供する様々な機能を利用することができる。
しかしながら、ユーザの正当性がアプリケーションの起動時において確認できただけで、そのアプリケーションが提供するすべてのサービスに対する利用権限を与えるのは危険である。例えば、ユーザがアプリケーションを起動したまま席をはずすことがよくある。この場合、悪意を持った他のユーザが、正当なユーザに成りすましてアプリケーションを利用することも考えられる。
かかる不正利用を防ぐため、例えば企業内の情報システムおいて管理されている機密情報に対するアクセスが要求された際に、ユーザの認証を再度実行することにより、かかる機密情報に対するセキュリティを高めることができる。
この場合、起動時における認証の際に利用した認証エンジン(ユーザ認証を行うためのプログラム)と同一の認証エンジンを利用するよりも、例えば、起動時にはパスワード認証、機密情報へのアクセスの際には指紋認証といったように、全く別の認証エンジンを利用して認証を行ったほうが、より高度なセキュリティを確保することができる。
但し、二つ以上の認証エンジンを利用する場合、それぞれがお互いに独立していたのでは意味がない。即ち、一方において認証されたユーザと他方において認証されたユーザとが同一人物であるという保証がないからである。
従って、アプリケーションには、複数の認証エンジンを関連付けるための機能の実装が必要となるが、かかる機能を個々のアプリケーションに実装するのは、各アプリケーションの開発工数を不要に増加させる。
ところで、ネットワーク上の資源を管理し、その検索手段を提供するシステムとしてディレクトリサービスが知られているが、かかるディレクトリサービスは、認証機能と密接な関係にあり、ディレクトリサービスとしての機能も実装されている認証エンジンが一般的に見受けられる。したがって、複数の認証機能によってユーザの認証を行うシステムを構築するにあたり、それぞれのディレクトリサービスも連携させることができれば、非常に便宜である。
本発明は、上記の点に鑑みてなされたものであって、ユーザの同一性を保証しつつ複数の認証機能によってユーザを認証することができるユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体の提供を目的とする。
また、本発明は、それぞれ独立して管理されているユーザ情報を統合的に提供することのできる情報提供装置、情報提供方法、情報提供プログラム及び記録媒体の提供を目的とする。
そこで上記課題を解決するため、本発明は、請求項1に記載されるように、ユーザに係る情報の提供を行う情報提供手段を連携させる連携手段を有する情報提供装置であって、前記連携手段は、ユーザに係る情報の提供要求に応じ、第一の情報管理手段において管理されているユーザに係る第一の情報を第一の情報提供手段に取得させ、第二の情報管理手段において所定の識別情報によって前記第一の情報に予め対応付けられて管理されているユーザに係る第二の情報を第二の情報提供手段に取得させ、前記第一及び第二の情報を前記所定の識別情報に基づいて統合した情報を提供することを特徴とする。
このような情報提供装置では、複数の情報提供手段によって取得されたユーザに係る情報を統合的に提供することができる。
また上記課題を解決するため、本発明は、上記情報提供装置における情報提供方法、又はその方法をコンピュータに行なわせるためのプログラム及び前記プログラムを記録した記録媒体としてもよい。
また上記課題を解決するため、本発明は、請求項12に記載されるように、ユーザの認証を行う認証手段を連携させる連携手段を有するユーザ認証装置であって、前記連携手段は、ユーザに関する第一の認証要求に応じ、該第一の認証要求において指定された第一のユーザ識別情報に基づく認証を第一の認証手段に行わせ、前記第一の認証手段に認証されているユーザに関する第二の認証要求に応じ、前記第一のユーザ識別情報に予め対応づけられている第二のユーザ識別情報に基づく認証を第二の認証手段に行わせることを特徴とする。
このようなユーザ認証装置では、第一の認証手段における第一のユーザ識別情報(ユーザID等)に予め対応づけられた第二のユーザ識別情報に基づいて、第二の認証手段にユーザの認証をさせるため、ユーザの同一性を保証しつつ複数の認証機能によってユーザを認証することができる。
また上記課題を解決するため、本発明は、上記ユーザ認証装置におけるユーザ認証方法、又はその方法をコンピュータに行なわせるためのプログラム及び前記プログラムを記録した記録媒体としてもよい。
本発明によれば、それぞれ独立して管理されているユーザ情報を統合的に提供することができる。また、本発明によれば、ユーザの同一性を保証しつつ複数の認証機能によってユーザを認証することができる。
以下、図面に基づいて本発明の実施の形態を説明する。図1は、第一の実施の形態における認証システムの構成例を示す図である。図1に示されるように、第一の実施の形態における認証システム1は、お互いにインターネットやLAN等のネットワークを介して接続されている認証サーバ10と端末20とを有している。
端末20はユーザが利用するPC(Personal Computer)等の端末であり、SOAPプロキシ22、クライアントアプリケーション23、及び指紋読み取り装置ドライバ24等と有している。SOAPプロキシ22は、認証サーバ10との間でSOAP(Simple Object Access Protocol)による通信を実現するためのモジュールであり、クライアントアプリケーション23に対して、認証サーバ10の機能を関数インタフェースとして透過的に提供するためのものである。
指紋読み取り装置ドライバ24は、端末20に接続された指紋読み取り装置25に対するインタフェースをクライアントアプリケーション23に提供するためのいわゆるドライバである。指紋読み取り装置25は、ユーザの指紋を読み取るための装置である。
クライアントアプリケーション23は、ユーザが直接操作するアプリケーションである。クライアントアプリケーション23は、その起動時やその他のタイミングでユーザの認証が必要になった際に、ユーザに対して認証情報の入力を要求する。ユーザによって認証情報が入力されると、クライアントアプリケーション23は、SOAPプロキシ22を介して認証サーバ10にユーザの認証を要求する。
クライアントアプリケーション23の種類については、特に限定されないが、少なくとも利用する際に認証を必要とするものである。本実施の形態においては、一般的なものと同様にメール機能等を有するグループウェアのクライアントアプリケーションを想定する。
なお、端末20の位置づけ(認証サーバ10のクライアント)としてWebサーバを想定してもよい。この場合、当該Webサーバは、Webアプリケーションとして実装されているクライアントアプリケーション23と、SOAPプロキシ22を有し、SOAPプロキシ22によって認証サーバ10との通信を行う。当該WebサーバのWebクライアントとしてユーザが利用する端末には、Webブラウザと、指紋読み取り装置ドライバ24が実装され、更に、指紋読み取り装置25が接続されていればよい。こうすることによって、ユーザは、クライアントアプリケーション23の機能を、端末のWebブラウザに表示されたWebページを通して利用することができる。
ユーザがクライアントアプリケーション23を起動すると、クライアントアプリケーション23は、まずユーザID(ユーザ識別情報)とパスワードの入力を要求する。ユーザがユーザIDとパスワードとを入力すると、クライアントアプリケーション23は、SOAPプロキシ22を介して認証サーバ10に対しユーザの認証を要求する。また、ユーザがクライアントアプリケーション23上において、指紋認証が必要とされるセキュリティレベルの高い操作を行うとすると、クライアントアプリケーション23は、ユーザに対して指紋の入力を要求する。ユーザが指紋読み取りデバイス25によって指紋を入力すると、クライアントアプリケーション23は、認証サーバ10に対し、ユーザの認証を要求する。
一方、認証サーバ10は、ユーザ認証のサービスをWebサービスとして提供するコンピュータであり、認証サービスモジュール11がインストールされている。
認証サービスモジュール11は、認証サーバ10をユーザ認証サービスの提供をするための装置として機能させるためのソフトウェアであり、本実施の形態においては、SOAPスタブ12、プロバイダ呼び分け手段13、認証プロバイダA14、認証プロバイダB15、パスワード・指紋マージプロバイダ16、パスワード認証プロバイダ17、指紋認証プロバイダ18、及びマージ情報管理DB19等から構成されている。
SOAPスタブ12は、端末20との間でSOAPによる通信を実現するためのモジュールである。より詳しくは、SOAPスタブ12は、プロバイダ呼び分け手段13のメソッドインタフェースをSOAPインタフェースとしてネットワーク上に公開するためのモジュールである。すなわち、SOAPスタブ12は、クライアントPC20等より受信したSOAPメッセージ(SOAPリクエスト)に基づいて、当該SOAPメッセージおいて呼び出しが要求されているプロバイダ呼び分け手段13のメソッドを呼び出し、当該メソッドの返却情報をSOAPレスポンスとしてクライアントPC20等に送信する。
プロバイダ呼び分け手段13は、端末20に対して後述する各種認証プロバイダに対する共通のインタフェースを提供するためのモジュールである。プロバイダ呼び分け手段13は、端末20からユーザの認証要求を受けると、当該認証要求において指定された認証プロバイダを呼び出す。
認証プロバイダA14、認証プロバイダB15、パスワード・指紋マージプロバイダ16、パスワード認証プロバイダ17、及び指紋認証プロバイダ18等は、「認証プロバイダ」と呼ばれるモジュールである。ここで、認証プロバイダとは、様々な認証エンジンを認証サービスモジュール11に組み込むためのアダプタ、又は仲介者のような役割を果たすものである。なお、認証エンジンとは、ここでは実際にパスワードの照合や、指紋の照合等の認証処理を行うシステムをいう。
即ち、個々の認証エンジンは、それぞれ独自のインタフェース(プロトコル)を有している。一方、それぞれの認証エンジンにおける認証機能をWebサービスとして端末20等に提供するにはプロバイダ呼び分け手段13との間で規定される所定のインタフェースに従う必要がある。かかる個々の認証エンジンによる独自のプロトコルを吸収し、プロバイダ呼び分け手段13に対して共通のインタフェースを提供するのが、認証プロバイダである。従って、新たな認証エンジンを認証サービスモジュール11に組み込むには、認証プロバイダを一つ実装することになる。但し、認証プロバイダ自身が、認証エンジンとしての機能を有していてもよい。
具体的には、パスワード認証プロバイダ17は、パスワード認証を行うための認証エンジンが実装されているサーバである外部認証サーバ40の認証機能をWebサービスとして提供するための認証プロバイダである。また、指紋認証プロバイダ18は、指紋認証ライブラリ181と指紋DB182とによる指紋認証機能をWebサービスとして提供するための認証プロバイダである。指紋認証ライブラリ181は、指紋認証に関する機能を提供する関数群である。また、指紋DB182は、ユーザ毎の指紋特徴データ等が登録されているデータベースである。
認証プロバイダA14及び認証プロバイダB15は、様々な認証プロバイダを実装することが可能であることを示すための例示である。
パスワード・指紋マージプロバイダ16は、認証プロバイダの一つであるが、認証エンジンに対する直接の仲介役として機能するものではないという点において、他の認証プロバイダとは異なる。即ち、パスワード・指紋マージプロバイダ16は、パスワード認証プロバイダ17と指紋認証プロバイダ18とを連携させるための機能を提供する認証プロバイダである。なお、パスワード・指紋マージプロバイダ16のように複数の認証プロバイダを連携させるための認証プロバイダを、以下「マージプロバイダ」と呼ぶ。
マージプロバイダによって連携される認証プロバイダは、それぞれ対等な関係ではなく主従関係を持つ。ここで、「主」となる認証プロバイダを「プライマリ(primary)プロバイダ」と呼び、「従」となる認証プロバイダを「追加(additional)プロバイダ」と呼ぶこととする。連携された認証プロバイダの中で、プライマリプロバイダは一つであり、それ以外は全て追加プロバイダとなる。
ここで、主従の関係と表現したのは、追加プロバイダによって認証する際には、プライマリプロバイダによって既に認証されていることが前提となるからである。逆に、プライマリプロバイダによって認証する際は、追加プロバイダによって認証されていることは前提とならない。即ち、最初の認証に利用されるのがプライマリプロバイダであり、プライマリプロバイダによって認証が済んでいる場合において、更に特別な認証が必要な際に利用されるのが追加プロバイダというわけである。即ち、「連携」とは、複数の認証プロバイダを、上記の主従関係を持たせて結合することをいう。
本実施の形態においては、パスワード認証プロバイダ17をプライマリプロバイダとし、指紋認証プロバイダ18を追加プロバイダとした例について説明する。なお、マージプロバイダも、他の認証プロバイダと同様に、複数存在させてもよく、マージプロバイダによってマージする認証プロバイダの組み合わせは自由である。例えば、認証プロバイダA14と認証プロバイダB15とをマージする新たなマージプロバイダを定義してもよいし、パスワード・指紋マージプロバイダ16に認証プロバイダA14を更にマージさせてもよい。
マージ情報管理DB19は、認証サーバ10に実装されている認証プロバイダの一覧や、認証プロバイダ同士のマージの関係が登録されているデータベースである。
ここで、マージ情報管理DB19を構成する各種テーブルについて説明する。図2は、マージ情報管理DBを構成する認証プロバイダ管理テーブルの構成例を示す図である。図2の認証プロバイダ管理テーブル191(呼び出し情報管理手段)は、認証サーバ10に登録されている認証プロバイダの一覧を管理しているテーブルであり、認証プロバイダ毎に、プロバイダ名、実装名、及び実装依存の初期化情報等が登録されている。
プロバイダ名は、認証プロバイダを一意に識別するための名前である。実装名は、例えば認証プロバイダの実装されているファイル名(EXE名、DLL名)、及び関数名等、認証プロバイダを呼び出すために、あるいは起動するために必要となる情報である。実装依存の初期化情報は、認証プロバイダの呼び出し時、又は起動時に必要となる情報である。
このように、認証プロバイダ管理テーブル191によって、各認証プロバイダの呼び出し情報を管理することにより、プロバイダ呼び分け手段13と認証プロバイダ、及びマージプロバイダと当該マージプロバイダにマージされる認証プロバイダとの間の結合を動的なものとすることができる。即ち、プロバイダ呼び分手段13やマージプロバイダのソースコードには、呼び出し情報に依存する定義(例えば、ロードするDLL名や、呼び出す関数名等)をハードコーディングしておく必要はない。従って、新たな認証プロバイダを追加した場合でも、当該認証プロバイダが所定のインタフェースに従っている限り、プロバイダ呼び分け手段13やマージプロバイダのソースコードを修正する必要はない。
本実施の形態においては、上述したように、認証プロバイダA14、認証プロバイダB15、パスワード・指紋マージプロバイダ16、パスワード認証プロバイダ17、及び指紋認証プロバイダ18等が存在するため、それぞれのレコードが認証プロバイダ管理テーブル191に登録されている。認証プロバイダ管理テーブル191によって、例えばプロバイダ呼び分け手段13は、端末20からユーザの認証要求があった際に、対応する認証プロバイダを呼び出すための手続きを知ることができる。
また、図3は、マージ情報管理DBを構成するマージプロバイダ管理テーブルの構成例を示す図である。図3のマージプロバイダ管理テーブル192(第一の認証手段識別情報管理手段)は、認証プロバイダ管理テーブル191に登録されている認証プロバイダのうち、マージプロバイダである認証プロバイダを管理するテーブルであり、マージプロバイダ毎に、マージプロバイダ名及びプライマリプロバイダ名等が登録されている。
マージプロバイダ名は、マージプロバイダのプロバイダ名である。プライマリプロバイダ名は、当該マージプロバイダにおいてプライマリプロバイダとなっている認証プロバイダのプロバイダ名である。
マージプロバイダ管理テーブル192によって、マージプロバイダを識別することができる。また、マージプロバイダは、マージプロバイダ管理テーブル192によって、自身におけるプライマリプロバイダを識別する。従って、新たにマージプロバイダを定義する場合や、既存のマージプロバイダのプライマリプロバイダを他の認証プロバイダに変更する場合は、マージプロバイダ管理テーブル192を変更すればよく、マージプロバイダのソースコードを修正する必要はない。
本実施の形態においては、パスワード・指紋マージプロバイダ16がマージプロバイダであるため、パスワード・指紋マージプロバイダ16に対応するレコードが登録されている。また、パスワード・指紋マージプロバイダ16のプライマリプロバイダは、上述したようにパスワード認証プロバイダ17であるため、パスワード・指紋マージプロバイダ16のプライマリプロバイダのプロバイダ名として、パスワード認証プロバイダ17のプロバイダ名が登録されている。
また、図4は、マージ情報管理DBを構成する追加プロバイダ管理テーブルの構成例を示す図である。図4の追加プロバイダ管理テーブル193(第二の認証手段識別情報管理手段)は、各マージプロバイダに属する追加プロバイダを識別するためのテーブルであり、マージプロバイダ名及び追加プロバイダ名等のデータ項目を有する。マージプロバイダ名は、マージプロバイダのプロバイダ名である。追加プロバイダ名は、当該マージプロバイダにおいて追加プロバイダとなっているプロバイダ名である。
本実施の形態においては、パスワード・指紋マージプロバイダ16の追加プロバイダは、指紋認証プロバイダ18であるため、その旨が追加プロバイダ管理テーブル193に登録されている。なお、パスワード・指紋マージプロバイダ16に更に追加プロバイダを追加する場合は、パスワード・指紋マージプロバイダ16のプロバイダ名をマージプロバイダ名とし、更に追加プロバイダとして登録する認証プロバイダのプロバイダ名を追加プロバイダ名とした新たなレコードを、追加プロバイダ管理テーブル193に登録すればよい。
また、図5は、マージ情報管理DBを構成する認証プロバイダマージテーブルの構成例を示す図である。図5の認証プロバイダマージテーブル194(ユーザID対応管理手段)は、プライマリプロバイダにおけるユーザの識別情報(ユーザID等)と、追加プロバイダにおけるユーザIDとを対応づけるテーブルであり、マージプロバイダ名、プライマリID、追加プロバイダ名、及び追加ID等のデータ項目を有する。
マージプロバイダ名は、マージプロバイダのプロバイダ名である。プライマリIDとは、プライマリプロバイダに対応する認証エンジンにおいて、各ユーザに一意に割り当てられたユーザIDである。追加プロバイダ名は、追加プロバイダのプロバイダ名である。追加プロバイダ名の項目は、上述したように一つのマージプロバイダに複数の追加プロバイダを登録することが可能なため、後述する追加IDがどの追加プロバイダにおけるものかを識別するために設けてあるものである。追加IDは、追加プロバイダ名によって識別される追加プロバイダに対応する認証エンジンにおいて、各ユーザに一意に割り当てられたユーザIDである。
即ち、各ユーザを識別するためのコード体系は、各認証エンジンで異なるのが一般である。従って、それぞれの認証エンジンを有機的に連携させるためには、一方の認証エンジンにおけるユーザIDによって特定されるユーザの他方の認証エンジンにおけるユーザIDを特定するための手段が必要とされる。かかる手段を提供するのが認証プロバイダマージテーブル194である。なお、認証プロバイダマージテーブル194は、認証サービスモジュール11に対して一つ実装してもよいし、マージプロバイダ一つに対して一つ、即ちマージプロバイダが有するように実装してもよい。
認証プロバイダマージテーブル194について更に具体的に説明する。本実施の形態においては、パスワード・指紋マージプロバイダ16のプライマリプロバイダであるパスワード認証プロバイダ17は、上述したように外部認証サーバ40に対応する認証プロバイダである。ここで、外部認証サーバ40は、パスワード認証を行う認証エンジンを実装したサーバであるため、例えば、図6に示されるユーザ管理テーブルを有している。
図6は、外部認証サーバにおけるユーザ管理テーブルの構成例を示す図である。図6のユーザ管理テーブル41は、ユーザ毎に、ユーザID、パスワード、及び氏名等のユーザ情報を管理している。ここでユーザIDが、認証プロバイダマージテーブル194におけるプライマリIDに該当する。
一方、パスワード・指紋マージプロバイダ16の追加プロバイダである指紋認証プロバイダ18は、上述したように、指紋認証ライブラリ181と指紋DB182による指紋認証エンジンに対応する認証プロバイダである。ここで、指紋DB182は、例えば、図7に示される指紋特徴データ管理テーブルを有している。
図7は、指紋DBを構成する指紋特徴データ管理テーブルの構成例を示す図である。図7の指紋特徴データ管理テーブル1821は、ユーザIDと指紋特徴データとをデータ項目として有する。ユーザIDは、指紋特徴データを一意に識別するための識別情報である。指紋特徴データは、指紋特徴データの実体である。ここで、ユーザIDが、マージテーブル194における追加IDに該当する。
従って、認証プロバイダマージテーブル194より、外部認証サーバ40においてユーザIDが0001のユーザの指紋特徴データを特定することが可能となる。また、ユーザIDの対応づけを認証プロバイダマージテーブル194によって管理することにより、ユーザIDの対応づけに変更がある場合においても容易に対応することができる。
上述した、認証プロバイダ管理テーブル191、マージプロバイダ管理テーブル192、追加プロバイダ管理テーブル193、及び認証プロバイダマージテーブル194によって、マージプロバイダの動作に必要な情報が管理されることにより、マージプロバイダのソースコードを汎用的なものとすることができる。即ち、唯一のソースコードから複数の異なるマージプロバイダを実現させることができる。
図8は、本発明の実施の形態における認証サーバのハードウェア構成例を示す図である。図8の認証サーバ10は、それぞれバスBで相互に接続されているドライブ装置100と、補助記憶装置102と、メモリ装置103と、演算処理装置104と、インタフェース装置105とを有するように構成される。
認証サーバ10において認証サービスモジュール11を実現するユーザ認証プログラムは、CD―ROM等の記憶媒体101によって提供される。ユーザ認証プログラムを記録した記憶媒体101は、ドライブ装置100にセットされると、ユーザ認証プログラムが記憶媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。
補助記憶装置102は、インストールされたユーザ認証プログラムを格納すると共に、必要なファイルやデータ等を格納する。例えば補助記憶装置102は、ユーザ認証プログラムの処理に必要な、上述した各種テーブルを格納している。
メモリ装置103は、認証サーバ10の起動時等、ユーザ認証プログラムの起動指示があった場合に、補助記憶装置102からユーザ認証プログラムを読み出して格納する。演算処理装置104は、メモリ装置103に格納されたユーザ認証プログラムに従って認証サーバ10に係る機能を実行する。インタフェース装置105は例えばモデム、ルータ等で構成され、LAN又はインターネット等のネットワークに接続するために用いられる。
以下、図1の認証サーバ10の処理手順について説明する。なお、以下の説明において、プライマリプロバイダを利用した認証を「プライマリ認証」と、追加プロバイダを利用した認証を「追加認証」という。図9は、プライマリ認証の際の認証サーバの処理を説明するためのシーケンス図である。
ユーザがクライアントアプリケーション23を利用すべくクライアントアプリケーション23を起動すると、クライアントアプリケーション23は、ユーザに対しユーザID及びパスワードの入力を要求する。ユーザがユーザID及びパスワードを入力すると、クライアントアプリケーション23は、プロバイダ呼び分け手段13が提供する認証関数(Authenticate( プロバイダ名、ドメイン名、ユーザID、パスワード))をSOAPのRPCで呼び出すことにより、認証サーバ10に対しユーザの認証を要求する(S11)。なお、認証関数の各引数の意味は以下の通りである。
プロバイダ名は、認証に利用する認証プロバイダのプロバイダ名であり、ここではパスワード・指紋マージプロバイダ16のプロバイダ名が指定される。ドメイン名は端末20が属するドメインのドメイン名である。ユーザID以降は、認証に利用する認証プロバイダによって、指定する値が異なる。本実施の形態では、パスワード・指紋マージプロバイダ16のプライマリプロバイダは、パスワード認証プロバイダ17であるため、パスワード認証に必要な情報としてユーザに入力させたユーザIDとパスワードが指定される。
ステップS11に続いてステップS12に進み、RPCによって認証関数が呼び出されたプロバイダ呼び分け手段13は、認証関数の引数のプロバイダ名によって指定されている認証プロバイダを呼び出すために必要な情報を認証プロバイダ管理テーブル191から取得し、当該認証プロバイダを呼び出す。ここでは、パスワード・指紋マージプロバイダ16が呼び出される。
ステップS12に続いてステップS13に進みパスワード・指紋マージプロバイダ16は、自己のプライマリプロバイダとして登録されている認証プロバイダをマージプロバイダ管理テーブル192に基づいて識別し、当該プライマリプロバイダの認証関数(Authenticate(ドメイン名、ユーザID、パスワード))を呼び出す。ここでは、パスワード認証プロバイダ17の認証関数呼び出される。なお、プライマリプロバイダの認証関数の各引数の値は、ディパッチャ13の認証関数が呼び出される際に指定された値が引き継がれる。
ステップS13に続いてステップS14に進み、パスワード認証プロバイダ17は、外部認証サーバ40を利用してパスワード認証を実行する。ユーザが正当であることが確認されたらステップS15に進み、パスワード認証プロバイダ17はチケットを生成する。
ここで、チケットについて説明する。本実施の形態におけるチケットとは、認証にパスしたユーザ(クライアント)に対して認証プロバイダが発行する、当該ユーザが認証されたことを証明する電子的な証明書をいう。チケットを発行されたクライアントは、文書管理サーバ等、所定のサーバを利用する際にチケットを提示することにより当該サーバを利用する権限を得ることができる。
図10は、通常のチケットのデータ構造の例を示す図である。図10に示されるようにチケット501は、チケットID、有効範囲、認証プロバイダ名、有効期限、認証ドメイン名、認証ユーザID、主なユーザ属性のリスト、及びMIC等から構成される。
チケットIDは、発行されたチケットを一意に識別するためのコードである。有効範囲については後述する。認証プロバイダ名は、実際に認証を行った(チケットを発行した)認証プロバイダのプロバイダ名である。有効期限は、当該チケットが有効な期限である。認証ドメイン名及び認証ユーザIDは、認証を受けユーザに対応するドメイン名及びユーザIDである。主なユーザ属性リストは、認証を受けたユーザの様々な属性(例えば、所属、役職等)である。MICは、当該チケットが途中で改竄されていないかを確認するためのコードである。
なお、チケットには、認証チケットとマスタチケットとがある。認証チケットとは、限られた範囲でのみ利用可能なチケットである。限られた範囲とは、所定のドメイン内でのみ利用可能であることや、所定のシステム又はサーバのみで利用可能であることを意味する。例えば、文書管理システムのみで利用可能な認証チケットは、他のシステムでは利用できない。従って、万が一認証チケットを盗まれた場合は、ユーザが受ける被害盗まれた認証チケットが有効な範囲のみに限られる。
これに対し、マスタチケットとは、チケットに対応しているシステムの全範囲に渡って利用可能な万能のチケットである。認証チケットの発行を要求する際には、マスタチケットを提示する必要がある。但し、その万能性ゆえ、マスタチケットを盗まれた場合には、被害はチケットに対応しているシステムの全範囲に及ぶ可能性がある。従って、マスタチケットは、認証チケットの発行要求等、マスタチケットの提示が必須の場合のみ利用し、通常のサービスを受ける際には、認証チケットを利用するといった使い分けをすることにより、より高度なセキュリティを確保することができる。
上記の説明において保留にした、チケットの構成要素である有効範囲は、かかる分類を識別するためのものである。即ち、当該チケットがマスタチケットである場合は、有効範囲には「マスタ」と記録され、認証チケットである場合は、当該認証チケットが有効な範囲を識別するための名称(ドメイン名、サーバ名等)が記録される。
なお、図9において、ステップS11からステップS19まではマスタチケットを発行するための処理に係り、ステップS20からステップS29まではマスタチケットを提示して認証チケットを得るための処理に係る。
また、別の観点から、チケットにはinnerチケットとouterチケットとがある。innerチケットとは、その名の通り内部のチケット、即ち、認証サーバ10の内部におけるチケットに対する呼び名である。これに対しouterチケットとは、認証管理サーバ10の外部におけるチケットに対する呼び名である。即ち、innerチケットとouterチケットとの違いは、記録されている情報の内容が異なるといった本質的なものではない。認証サーバ10から端末20等へチケットが送信される際等に、チケットは、innerチケットからouterチケットに変換される。一方、認証サーバ10が端末20等からouterチケットを受信した際には、チケットは、outerチケットからinnerチケットへと変換される。ここで変換の具体例としては、暗号化が挙げられる。即ち、innerチケットを暗号化したものがouterチケットという関係である。チケットを暗号化することにより、例えチケットが盗まれた場合でも、その内容が不正に利用されることを防止することができる。
更に、本実施の形態においては、チケットをその発行元によって、プライマリチケットと追加チケットとに呼び分ける。プライマリチケットとは、プライマリプロバイダが発行したチケットをいい、追加チケットとは、追加プロバイダが発行したチケットをいう。
ステップS15においてパスワード認証プロバイダ17は、inner型のマスタチケットを生成する。また、パスワード認証プロバイダ17は、プライマリプロバイダであるため、生成したチケットはプライマリチケットに分類される。よって、以下、ステップS15においてパスワード認証プロバイダ17が生成したチケットを「マスタプライマリチケット」という。
マスタプライマリチケットの各項目には以下のような値が記録されている。
有効範囲:「マスタ」
認証プロバイダ名:「パスワード認証プロバイダ」
有効期限:2002/MM/DD
認証ドメイン名:<認証関数の引数に指定されたドメイン名>
認証ユーザID:<認証関数の引数に指定されたユーザID>
ステップS15に続いてステップS16に進み、パスワード認証プロバイダ17は、認証関数の戻り値として、生成したマスタプライマリチケットをパスワード・指紋マージプロバイダ16に出力する。ステップS16に続いてステップS17に進み、パスワード・指紋マージプロバイダ16は、マージ(Merge)チケットを生成し、マージチケットにマスタプライマリチケットをマージ(統合)する。
図11は、マージチケットのデータ構造の例を示す図である。図11に示されるマージチケット502は、複数のチケットをマージするためのチケットであり、チケット種別、認証プロバイダ名、有効期限、プライマリプロバイダ名、プライマリチケット、追加チケットのリスト、及びMIC等から構成される。
チケット種別は、図10に示される通常のチケット501における「有効範囲」と同義である。認証プロバイダ名は、当該マージチケットを発行した認証プロバイダ名である。従って、ここでは認証プロバイダ名にはパスワード・指紋マージプロバイダ16のプロバイダ名が記録される。有効期限は、当該マージチケットの有効期限である。プライマリプロバイダ名は、当該マージチケットにマージされたプライマリチケットを発行したプライマリプロバイダのプロバイダ名である。従って、ここではパスワード認証プロバイダ16のプロバイダ名が記録される。プライマリチケットは、プライマリプロバイダが発行した、プライマリチケットそのものが記録される。従って、ここではパスワード認証プロバイダ16が発行したマスタプライマリチケットが記録される。追加チケットのリストは、追加プロバイダの発行する追加チケットが記録される。但し、この時点では、まだ追加プロバイダによる認証は実行されていないため、追加チケットのリストは空である。MICは、通常のチケット501におけるMICと同義である。
なお、マージチケットについても、マスタチケット/認証チケットの区別と、innerチケット/outerチケットの区別とがあるが、ステップS17で生成されるのは、inner型でかつマスタ型のマージチケットである。従って、ステップS17においてパスワード・指紋マージプロバイダ16が生成したチケットを、以下「マスタマージチケット」という。
ステップS17に続いてステップS18に進み、パスワード・指紋マージプロバイダ16は、生成したマスタマージチケットをプロバイダ呼び分け手段13に対して出力する。ステップS18に続いてステップS19に進み、プロバイダ呼び分け手段13は、inner型のマスタマージチケットをouter型に変換(例えば暗号化)し、outer型に変換されたマスタマージチケットをクライアントアプリケーション23に送信する。
ステップS19が完了した時点で、クライアントアプリケーション23は、マスタマージチケットを取得したことになる。上述したようにマスタチケットは、万能のチケットであるため、このままマスタマージチケットを利用して他のシステムを利用することも可能であるが、マスタチケットをネットワーク上に頻繁に流通させるのは、セキュリティ上好ましくない。従って、クライアントアプリケーション23は、プロバイダ呼び分け手段13の認証チケット生成関数(createAuthTicket(マスタマージチケット))をSOAPのRPCで呼び出すことにより、利用対象とするシステムに対してのみ有効な認証チケットの生成を認証サーバ10に要求する(S20)。なお、認証チケット生成関数の引数には、ステップS19で取得した、outer型のマスタマージチケットを指定する。
ステップS20に続いてステップS21に進み、認証チケット生成関数が呼び出されたプロバイダ呼び分け手段13は、outer型のマスタマージチケットをinner型に変換(暗号化を解除)する。更に、プロバイダ呼び分け手段13は、マスタマージチケットの「認証プロバイダ名」を確認することにより、マスタマージチケットを発行した認証プロバイダを判別する。
ステップS21に続いてステップS22に進み、プロバイダ呼び分け手段13は、マスタマージチケットの発行元である認証プロバイダを呼び出す。従って、ここではパスワード・指紋マージプロバイダ16が呼び出される。ステップS22に続いてステップS23に進み、パスワード・指紋マージプロバイダ16は、マスタマージチケットの正当性を有効期限及びMIC等により確認する。
ステップS23に続いてステップS24に進み、パスワード・指紋マージプロバイダ16は、マスタマージチケットにマージされているプライマリチケットを発行したプライマリプロバイダの認証チケット生成関数(createAuthTicket(マスタプライマリチケット))を呼び出す。従って、ここではパスワード認証プロバイダ17の認証チケット生成関数が呼び出される。なお、パスワード認証プロバイダ17の認証チケット生成関数の引数には、マスタマージチケットから取り出したマスタプライマリチケットが指定される。
ステップS24に続いてステップS25に進み、パスワード認証プロバイダ17は、引数に指定されたマスタプライマリチケットの正当性を有効期限及びMIC等により確認し、認証チケットを生成する。認証チケットのデータ構造は、図10において説明した通りであり、マスタプライマリチケットと同様に各項目に値が記録される。但し、「有効範囲」については、マスタプライマリチケットと異なり、当該認証チケットが有効なサーバ名又はドメイン名等が記録される。
なお、ここで生成された認証チケットについても、プライマリプロバイダであるパスワード認証プロバイダ17が生成したものであるという意味で、プライマリチケットに分類される。従って、以下、ステップS25においてパスワード認証プロバイダ17が生成した認証チケットを「認証プライマリチケット」という。
ステップS25に続いてステップS26に進み、パスワード認証プロバイダ17は、認証チケット生成関数の戻り値として、生成した認証プライマリチケットをパスワード・指紋マージプロバイダ16に出力する。ステップS26に続いてステップS27に進み、パスワード・指紋マージプロバイダ16は、マージチケットを生成し、マージチケットに認証プライマリチケットをマージする。
ここで、パスワード・指紋マージプロバイダ16が生成するマージチケットは、有効範囲が限定された認証チケットである。よって、ステップS27においてパスワード・指紋マージプロバイダ16が生成したマージチケットを、以下「認証マージチケット」という。
ステップS27に続いてステップS28に進み、パスワード・指紋マージプロバイダ16は、生成した認証マージチケットをプロバイダ呼び分け手段13に対して出力する。ステップS28に続いてステップS29に進み、プロバイダ呼び分け手段13は、inner型の認証マージチケットをouter型に変換し、outer型に変換された認証マージチケットをクライアントアプリケーション23に送信する。
以上により、クライアントアプリケーション23は、マスタマージチケットに次いで認証マージチケットを取得したことになる。従って、クライアントアプリケーション23は、認証マージチケットの有効なサーバに対して認証マージチケットを提示することにより、当該サーバのサービスを利用することができる。但し、上記においては、プライマリプロバイダ(パスワード認証プロバイダ17)による認証しか受けていないため、クライアントアプリケーション23に与えられた権限は、プライマリプロバイダによって認証を受けた範囲に限られる。
ここでいう「認証を受けた範囲」における「範囲」とは、チケット501のデータ項目である「有効範囲」における「範囲」と異なる概念である。「有効範囲」における範囲は、例えば、当該チケットは、サーバAとサーバBとで有効であるというように、利用可能な対象を示す意味での範囲である。一方、「認証を受けた範囲」における範囲は、当該チケットは、プライマリプロバイダのみに認証を受けており、追加プロバイダには認証されていないといったように、認証を受けたレベルを示すものである。たとえていえば、前者は平面的な広がりにおける範囲をいい、後者は深さ方向における範囲をいう。
以下、ユーザが、更に"深い"、即ち、本人であることを更に保証するための追加認証を受ける際の処理について説明する。図12及び図13は、追加認証の際の認証サーバの処理を説明するためのシーケンス図である。クライアントアプリケーション23のユーザが、パスワード認証プロバイダ17によって認証を受けただけでは、利用できないサービスを利用しようとした場合を想定する。例えば、重要な機密情報にアクセスしようとした場合、又は、部下の承認要求に対して承認を実行しようとした場合などがいい例である。ユーザがかかる処理要求を行った場合に、本実施の形態におけるクライアントアプリケーション23は、ユーザに対し指紋の入力を要求する。
但し、ここではユーザIDの入力は必要とされない。一般に、認証を受ける際には、ユーザID等のユーザを一意に特定するための情報と、パスワード、指紋等のユーザが本人であることを保証するための情報とを入力することが必要とされる。ユーザIDの入力のみでは、ユーザが本人であるかを判断することができず、パスワードや指紋の入力のみでは、誰のパスワード又は指紋であるのか判断することができないからである。従って、通常であれば、ここにおいて、ユーザは、指紋と共にユーザIDの入力が要求されるはずである。しかし、本実施の形態におけるパスワード・指紋マージプロバイダ16は、詳細については後述されるが、既にプライマリ認証の際に入力されたユーザID(プライマリID)に基づいて、当該ユーザの追加認証におけるユーザID(追加ID)を特定するため、ユーザに、追加認証の際にユーザIDの入力を要求する必要がないのである。
ユーザが指紋読み取りデバイス25に指紋を読み取らせると、クライアントアプリケーション23は、プロバイダ呼び分け手段13の追加認証関数(addAuthenticate(マスタマージチケット、追加認証プロバイダ名、指紋特徴データ)をSOAPのRPCによって呼び出すことにより、認証サーバ10に対して追加認証を要求する(S41)。
なお、追加認証関数の引数の意味は、以下の通りである。マスタマージチケットには、マスタプライマリチケットがマージされている既に取得済みのマスタマージチケットを指定する。追加認証プロバイダ名には、追加認証を要求する追加プロバイダのプロバイダ名を指定する。従って、ここでは指紋認証プロバイダ18のプロバイダ名を指定する。指紋特徴データには、指紋読み取りデバイス25で読み取った指紋特徴データを指定する。
ステップS41に続いてステップS42に進み、追加認証関数が呼び出されたプロバイダ呼び分け手段13は、マスタマージチケットの「認証プロバイダ名」を確認することにより、マスタマージチケットを発行した認証プロバイダを判別する。なお、本ステップ以降の説明においては、チケットについてのouter形、innner型の区別については省略する。
ステップS42に続いてステップS43に進み、プロバイダ呼び分け手段13は、マスタマージチケットの発行元である認証プロバイダを呼び出す。従って、ここではパスワード・指紋マージプロバイダ16が呼び出される。ステップS43に続いてステップS44に進み、パスワード・指紋マージプロバイダ16が、マスタマージチケットからマスタプライマリチケットを取り出し、マスタプライマリチケットの所有者であるユーザのユーザID(プライマリID)の取得をプライマリプロバイダであるパスワード認証プロバイダ17に要求すると、パスワード認証プロバイダ17は、マスタプライマリチケットの正当性を確認すると共に、マスタプライマリチケットから認証ユーザIDを取り出し、パスワード・指紋マージプロバイダ16に対して取り出した認証ユーザIDをプライマリIDとして出力する。
ステップS44に続いてステップS45に進み、パスワード・指紋マージプロバイダ16は、パスワード認証プロバイダ17から取得したプライマリIDをキーとして、認証プロバイダマージテーブル194を検索し、プライマリIDに対応する追加IDを取得する。なお、ここで取得された追加IDは、指紋DB182の指紋特徴データ管理テーブル1821におけるユーザIDに該当する。
ステップS45に続いてステップS46に進み、パスワード・指紋マージプロバイダ16は、追加認証関数の引数に指定された追加認証プロバイダ名によって特定される追加プロバイダの認証関数(Authenticate(追加ID、指紋特徴データ))を呼び出す。従って、ここでは指紋認証プロバイダ18の認証関数が呼び出される。
ステップS46に続いてステップS47に進み、認証関数が呼び出された指紋認証プロバイダ18は、引数に指定された追加ID(ユーザID)をキーに指紋DB182から指紋特徴データを取り出し、取り出した指紋特徴データと、認証関数の引数に指定された指紋特徴データとを照合する。
ここで、認証関数の引数に指定された指紋特徴データは、追加認証を要求したユーザのものである。一方、ステップS47において指紋DB182から取り出された指紋特徴データは、プライマリ認証を受けたユーザのユーザIDであるプライマリIDをキーとして認証プロバイダマージテーブル194から検索した追加IDに対応するものである。
従って、二つの指紋特徴データが一致することにより、追加認証を要求したユーザが、指紋DB182登録されているユーザであることと共に、プライマリ認証を受けたユーザと追加認証を受けたユーザとが同一人物であることが保証される。
また、二つの認証をパスしたことで、クライアントアプリケーション23のユーザが本人であることの保証がより高まったといえる。
従って、指紋認証プロバイダ18は、自らが認証したことを証明するマスタチケットを生成する(S48)。なお、指紋認証プロバイダ18は、追加プロバイダであるため、指紋認証プロバイダ18が発行するチケットは追加チケットであるといえる。よって、ステップS48において指紋認証プロバイダ18が生成したマスタチケットを、以下「マスタ追加チケット」という。
なお、ここで生成されたマスタ追加チケットの「認証プロバイダ名」には、指紋認証プロバイダ18の認証プロバイダ名が記録され、認証ユーザIDには、指紋DB182におけるユーザIDが記録される。
ステップS48に続いてステップS49に進み、指紋認証プロバイダ18は、生成したマスタ追加チケットをパスワード・指紋マージプロバイダ16に出力する。ステップS49に続いてステップS50に進み、パスワード・指紋マージプロバイダ16は、既にマスタプライマリチケットがマージされているマスタマージチケットにマスタ追加チケットをマージする。
ステップS50に続いてステップS51に進み、パスワード・指紋マージプロバイダ16は、マスタ追加チケットを更にマージしたマスタマージチケットをプロバイダ呼び分け手段13に出力する。ステップS51に続いてステップS52に進み、プロバイダ呼び分け手段13は、クライアントアプリケーション23に対してマスタマージチケットを送信する。この時点でクライアントアプリケーション23は、追加チケットがマージされた(追加認証を受けた)更に信頼性の高いマスタマージチケットを入手したことになる。
ステップS52に続いて図13のステップS53に進み、以降は図9のステップS20以降の処理と同様に、クライアントアプリケーション23が認証チケットを取得するための処理である。従って、ステップS53からステップS59までは、図9のステップS20からステップS26までの処理と同様である。即ち、クライアントアプリケーション23によるプロバイダ呼び分け手段13の認証チケット生成関数(createAuthTicket(マスタマージチケット))の呼び出しに基づいて(S53)、パスワード認証プロバイダ17によって認証プライマリチケットが生成され、パスワード・指紋マージプロバイダ16に出力される(S54〜S59)。
ここで、認証プライマリチケットを受け取ったパスワード・指紋マージプロバイダ16は、マスタマージチケットが追加認証されたものであるのか、即ち、マスタマージチケットにマスタ追加チケットがマージされているか否かを判断する。
マスタマージチケットにマスタ追加チケットがマージされていない場合は、図9の場合と同様に認証プライマリチケットがマージされた認証マージチケットがクライアントアプリケーション23に送信される(S60)。しかし、今回は、既にマスタマージチケットについて追加認証を受けている。従って、パスワード・指紋マージプロバイダ16は、追加プロバイダからも認証チケットを取得するため、マスタマージチケットにマージされている追加チケットを発行した追加プロバイダの認証チケット生成関数(createAuthTicket(マスタ追加チケット))を呼び出す(S61)。従って、ここでは指紋認証プロバイダ18の認証チケット生成関数が呼び出される。なお、指紋認証プロバイダ18の認証チケット生成関数の引数には、マージチケットから取り出したマスタ追加チケットが指定される。
ステップS61に続いてステップS62に進み、指紋認証プロバイダ18は、引数に指定されたマスタ追加チケットの正当性を有効期限及びMIC等により確認し、正当である場合は、認証チケット(以下、「認証追加チケット」という。)を生成する。
ステップS62に続いてステップS63に進み、指紋認証プロバイダ18は、認証チケット生成関数の戻り値として、生成した認証追加チケットをパスワード・指紋マージプロバイダ16に出力する。ステップS63に続いてステップS64に進み、パスワード・指紋マージプロバイダ16は、認証マージチケットを生成し、ステップS59で取得した認証プライマリチケットと、ステップS63で取得した認証追加チケットとを認証マージチケットにマージする。
ステップS64に続いてステップS65に進み、以降、認証マージチケットがクライアントアプリケーション23に送信される(S66)。
以上により、クライアントアプリケーション23は、図9のステップS29において入手した認証マージチケットよりも信頼性が高い、追加認証された認証マージチケットを取得したことになる。従って、クライアントアプリケーション23は、認証マージチケットの有効なサーバに対して認証マージチケットを提示することにより、更にセキュリティレベルの高いサービスを利用することができる。
なお、図12のステップS41においてクライアントアプリケーション23が呼び出すプロバイダ呼び分け手段13の追加認証関数(addAuthenticate)は、引数として追加認証プロバイダ名の指定を要求している。これは、クライアント主導で次に追加認証を行わせる追加プロバイダが決定されることを示している。
即ち、上述においては、パスワード・指紋マージプロバイダ16の追加プロバイダとして指紋認証プロバイダ18一つのみが定義されている例について説明したが、追加プロバイダ管理テーブル193と認証プロバイダマージテーブル194に新たな認証プロバイダの情報を追加すれば、パスワード・指紋マージプロバイダ16に複数の追加プロバイダを定義することも可能である。
かかる追加プロバイダが複数ある場合に、上述の例では、追加認証を行わせる追加プロバイダの順番は、追加認証関数を呼び出すクライアントの指定に従うことになる。
しかし、追加認証を行わせる追加プロバイダの順番は、マージプロバイダ(パスワード・指紋マージプロバイダ16)に判断させるようにしてもよい。例えば、追加プロバイダ管理テーブル193に新たなデータ項目として「順番」を追加し、「順番」項目に追加認証を行わせる順番を登録しておく。クライアントアプリケーション23から追加認証の要求があった場合は、マージプロバイダが追加プロバイダ管理テーブル193の「順番」項目を確認することにより、次に呼び出す追加プロバイダを決定する。
この場合は、追加認証関数の引数から追加プロバイダ名を削除してしまってもよいし、そのまま指定させるようにしてもよい。そのまま指定させるようにした場合は、追加認証関数の引数に指定された追加プロバイダ名と、マージプロバイダが判断した追加プロバイダ名とを比較することにより、サーバ側とクライアント側とのフェーズが一致しているか否かを確認することができる。
次に、認証サーバ10が発行したチケットがどのように利用されるかについて説明する。図14は、チケットの第一の利用方法を説明するためのシーケンス図である。図14において、クライアント30は、クライアントアプリケーション23でもよいが、ここでは、クライアントアプリケーション23等に所定のサービスを提供するサーバであるとする。そして、クライアント30がクライアントアプリケーション23からサービスの利用要求と共に認証マージチケットの提示を受けた場合を想定する。なお、クライアント30は、クライアントアプリケーション23に対してはサーバであるが、認証サーバ30に対しては「クライアント」であるため、図14においてクライアント30と表現している。
認証マージチケットの提示を受けたクライアント30は、自分自身ではチケットの中身を解釈することができない。クライアントアプリケーション23から提示された認証マージチケットは暗号化(outer型)されており、また、クライアント30は、チケットの構造については関知しないからである。
よって、クライアント30は、ステップS101において、プロバイダ呼び分け手段13の提供するチケット解読関数(decodeTicket(認証マージチケット))を呼び出すことにより、認証マージチケットの解読を認証サーバ10に要求する。なお、チケット解読関数の引数には、クライアントアプリケーション23から提示(送信)された認証マージチケットを指定する。
ステップS101に続いてステップS102に進み、チケット解読関数が呼び出されたプロバイダ呼び分け手段13は、認証マージチケットを発行した認証プロバイダを判別する。
ステップS102に続いてステップS103に進み、プロバイダ呼び分け手段13は、認証マージチケットの発行元であるパスワード・指紋マージプロバイダ16を呼び出す。ステップS103に続いてステップS104に進み、パスワード・指紋マージプロバイダ16は、認証マージチケットの正当性を有効期限及びMIC等により確認し、認証マージチケットにマージされているプライマリチケットを発行したパスワード認証プロバイダ17のチケット解読関数(decodeTicket(認証プライマリチケット))を呼び出す(S105)。なお、パスワード認証プロバイダ17のチケット解読関数の引数には、認証マージチケットから取り出した認証プライマリチケットが指定される。
ステップS105に続いてステップS106に進み、パスワード認証プロバイダ17は、引数に指定された認証プライマリチケットの正当性を有効期限及びMIC等により確認するとともに認証プライマリチケットの内容を解釈し、プライマリチケットの内容をクライアント30が解釈可能な形式、例えばテキスト形式にした認証情報データ(以下、「プライマリ認証情報データ」という。)を生成する。
ステップS106に続いてステップS107に進み、パスワード認証プロバイダ17は、生成したプライマリ認証情報データをパスワード・指紋マージプロバイダ16に出力する。ここで、プライマリ認証情報データを受け取ったパスワード・指紋マージプロバイダ16は、認証マスタマージチケットが追加認証されたものであるのかを判断する。追加認証されていなければ、認証マスタマージチケットにはこれ以上認証情報は含まれていないため、プライマリ認証情報データがクライアント30に送信される(S108)。
一方、既に認証マージチケットについて追加認証を受けている場合は、パスワード・指紋マージプロバイダ16は、認証マージチケットにマージされている追加チケットを発行した指紋認証プロバイダ18からも認証情報データを取得するため、指紋認証プロバイダ18のチケット解読関数(decodeTicket(認証追加チケット))を呼び出す(S109)。
ステップS109に続いてステップS110に進み、指紋認証プロバイダ18は、引数に指定された認証追加チケットの正当性を有効期限及びMIC等により確認するとともに認証追加チケットの内容を解釈し、認証情報データ(以下、「追加認証情報データ」という。)を生成する。
ステップS110に続いてステップS111に進み、指紋認証プロバイダ18は、生成した追加認証情報データをパスワード・指紋マージプロバイダ16に出力する。ステップS111に続いてステップS112に進み、パスワード・指紋マージプロバイダ16は、パスワード認証プロバイダ17から取得した追加認証情報データと、指紋認証プロバイダ18から取得した追加認証情報データとをマージする(以下、マージされた認証情報データを「マージ認証情報データ」という。)。
図15は、マージ認証情報データの構成例を示す図である。例えば、マージ認証情報データは、図15に示されるように、認証サービス名、有効期限、有効範囲、認証プロバイダ、ユーザ識別子、所属グループ、及び主要属性等から構成される。
認証サービス名は、認証サービスモジュール11に付けられた名前である。有効期限は、マージチケットに記録されている有効期限である。有効範囲は、プライマリチケット及び追加チケットに記録されている有効範囲をマージしたものである。即ち、「サーバA」と「サーバB」とがカンマで区切られているが、これは、プライマリチケットはサーバAで有効であり、追加チケットはサーバBで有効であることを示している。
認証プロバイダは、チケットを発行した認証プロバイダの名前の羅列である。「パスワード認証プロバイダ」と「指紋認証プロバイダ」がカンマで区切られているが、これは、パスワード認証プロバイダ17と指紋認証プロバイダ18に認証を受けていることを示している。ユーザ識別子は、チケットの発行を受けたユーザを一意に識別するための情報である。所属グループ及び主要属性は、プライマリチケット及び追加チケットの「主なユーザ属性リスト」から抽出した情報をマージしたものである。
ステップS112に続いてステップS113に進み、マージ認証情報データがクライアント30に送信される(S114)。
以降、クライアント30は、取得したマージ認証情報データを確認することにより、クライアントアプリケーション23のユーザに対して提供可能なサービスを判断することができる。
更に、図16は、チケットの第二の利用方法を説明するためのシーケンス図である。図14においては、クライアント30がチケットの解読結果を認証情報データとして受け取る例について説明したが、図16においては、チケットの正当性の確認と、チケットが誰に認証されたのか、あるいはどの程度まで(プライマリ認証まで、又は追加認証まで)認証されているのかを問い合わせる例について説明する。なお、図16におけるクライアント30の位置づけは、図14におけるそれと同じである。
ステップS121においてクライアント30は、プロバイダ呼び分け手段13の提供するチケット確認関数(ValidateTicket(認証マージチケット))を呼び出すことにより、認証マージチケットの正当性の確認等を認証サーバ10に要求する。なお、チケット確認関数の引数には、クライアントアプリケーション23から提示(送信)された認証マージチケットを指定する。
ステップS121に続いてステップS122に進み、チケット確認関数が呼び出されたプロバイダ呼び分け手段13は、認証マージチケットを発行した認証プロバイダを判別する。
ステップS122に続いてステップS123に進み、プロバイダ呼び分け手段13は、認証マージチケットの発行元であるパスワード・指紋マージプロバイダ16を呼び出す。ステップS123に続いてステップS124に進み、パスワード・指紋マージプロバイダ16は、認証マージチケットの正当性を有効期限及びMIC等により確認し、認証マージチケットにマージされているプライマリチケットを発行したパスワード認証プロバイダ17のチケット確認関数(ValidateTicket(認証プライマリチケット))を呼び出す(S125)。なお、パスワード認証プロバイダ17のチケット確認関数の引数には、マージチケットから取り出した認証プライマリチケットが指定される。
ステップS125に続いてステップS126に進み、パスワード認証プロバイダ17は、引数に指定された認証プライマリチケットの正当性を有効期限及びMIC等により確認し、確認結果をパスワード・指紋マージプロバイダ16に出力する(S127)。ここで確認結果とは、例えば、TRUEの場合は正当であり、FALSEの場合は不正であるといったBOOL値などでも良い。
続いて、パスワード・指紋マージプロバイダ16は、認証マスタマージチケットが追加認証されたものであるのかを判断する。追加認証されていなければ、確認結果がクライアント30に送信される(S128)。ここでの確認結果とは、例えば、認証を行った認証プロバイダのプロバイダ名の羅列でもよいし、プライマリプロバイダまでは認証されているといったように、レベルを示すものでもよい。
一方、既に認証チケットについて追加認証を受けている場合は、パスワード・指紋マージプロバイダ16は、認証マージチケットにマージされている追加チケットを発行した指紋認証プロバイダ18に対してもチケットの確認を依頼するため、指紋認証プロバイダ18のチケット確認関数(ValidateTicket(認証追加チケット))を呼び出す(S129)。
ステップS129に続いてステップS130に進み、指紋認証プロバイダ18は、引数に指定された認証追加チケットの正当性を有効期限及びMIC等により確認し、確認結果(例えばBOOL値)をパスワード・指紋マージプロバイダ16に出力する(S131)。ステップS131に続いてステップS132に進み、パスワード・指紋マージプロバイダ16は、パスワード認証プロバイダ17と指紋認証プロバイダ18とから取得した確認結果をマージしたものをクライアント30に対する確認結果としてプロバイダ呼び分け手段13に出力する。例えば、ここでの確認結果とは、認証を行った認証プロバイダのプロバイダ名の羅列でもよいし、追加プロバイダまでは認証されているといったように、レベルを示すものでもよい。
ステップS132に続いてステップS133に進み、プロバイダ呼び分け手段13は、確認結果をクライアント30に送信する。確認結果を受信したクライアント30、確認結果に基づいて、クライアントアプリケーション23のユーザに対して提供可能なサービスを判断することができる。
上述したように、本実施の形態における認証サーバ10によれば、マージプロバイダが、認証プロバイダマージテーブル194によって、プライマリIDから追加IDを導出し、かかる追加IDに基づいて追加認証をおこなうため、プライマリ認証を受けたユーザと追加認証を受けようとしているユーザの同一性を保証し、当該ユーザが本人であることの保証をより高めることができる認証サービスを提供することができる。
また、認証した結果は、チケットとして発行され、当該チケットは、有効範囲、有効期限、改竄チェック用のコードを有しているため、より高度なセキュリティを確保することができる。即ち、有効範囲で、利用可能なシステム等が制限され、有効期限によって、利用可能な期間が制限され、改竄チェック用のコードによって、チケットの正当性が担保されるからである。
また、プライマリプロバイダや追加プロバイダが発行したチケットは、マージプロバイダによってマージチケットにマージされて発行されるため、チケットを発行された側は、各チケットの関連付けについて関与する必要はなく、チケットの取り扱いを容易にすることができる。
なお、本実施の形態においては、認証サービスモジュール11が、ネットワークを介して接続されている端末20に配置されているクライアントアプリケーション23に対して認証機能を提供する例について説明したが、本発明は、かかるクライアント・サーバ型のシステムに限定されるものではない。
図17は、内部アプリケーションに認証機能を提供する場合の認証サーバの機能構成例を示す図である。図17中、図1と同一部分には同一符号を付し、その説明は省略する。図17においては、アプリケーション41、42、43、及び44が、SOAP経由ではなく、プロバイダ呼び分け手段13の関数を直接呼び出すように構成されている。このように、認証サーバ10の内部に構築したアプリケーションからも、認証サービスモジュール11を利用することができる。
ところで、ネットワーク上の資源を管理し、その検索手段を提供するシステムとしてディレクトリサービスが知られている。ここで、資源とは、ネットワークを利用するユーザや組織に関する情報や、利用可能なサーバ、サービス及びプリンタなどの機器を意味するが、かかるディレクトリサービスは、認証機能と共に実装されているのが一般的である。そこで、第二の実施の形態として、認証システム1にディレクトリサービスとしての機能を実装した例について説明する。
図18は、第二の実施の形態における認証システムの構成例を示す図である。図18中、図1と同一部分には同一符号を付し、その説明は省略する。
図18の認証システム2において認証サーバ10の認証サービスモジュール11には、SOAPスタブ12a、ディレクトリサービスインタフェース部13a、ディレクトリプロバイダA14a、ディレクトリプロバイダB15a、パスワード・指紋マージディレクトリプロバイダ16a、パスワードディレクトリプロバイダ17a、及び指紋ディレクトリプロバイダ18a等が更に追加されている。
SOAPスタブ12aは、ディレクトリサービスインタフェース部13aのメソッドインタフェースをSOAPインタフェースとしてネットワーク上に公開するためのモジュールである。ディレクトリサービスインタフェース部13aは、認証機能におけるプロバイダ呼び分け手段13に相当するモジュールであり、各種認証プロバイダにおけるディレクトリサービスとしての機能に対する共通のメソッドインタフェースを提供するためのモジュールである。
ディレクトリプロバイダA14a、ディレクトリプロバイダB15a、パスワードディレクトリプロバイダ17a、及び指紋ディレクトリプロバイダ18a等の各種ディレクトリプロバイダは、ユーザに関する各種属性情報(内線番号やメールアドレス等の当該ユーザにアクセスするための情報に加え、所属や役職に関する情報等、以下、「ユーザ情報」という。)を提供するためのモジュールである。例えば、パスワードディレクトリプロバイダ17aは、外部認証サーバ40において管理されているユーザ情報を提供するためのモジュールである。また、指紋ディレクトリプロバイダ18aは、指紋DB182において管理されているユーザ情報を提供するためのモジュールである。
また、パスワード・指紋マージディレクトリプロバイダ16a、パスワードディレクトリプロバイダ17a(プライマリプロバイダ)と指紋ディレクトリプロバイダ18a(追加プロバイダ)を連携させるためのマージプロバイダである。すなわち、ディレクトリプロバイダ間においても、第一の実施の形態における認証プロバイダと同様のマージの概念が適用されている。これら各種ディレクトリプロバイダの情報や、ディレクトリプロバイダ間のマージに関する情報等は、第一の実施の形態と同様のテーブル構成によってマージ情報管理DB19に管理されている。第二の実施の形態においては、パスワードディレクトリプロバイダ17aがプライマリプロバイダとして、指紋ディレクトリプロバイダ18aが追加プロバイダとしてマージ情報管理DB19に定義されているものとする。
以下、図18の認証サーバ10の処理手順について説明する。図19は、ユーザ情報の提供が要求された際の認証サーバの処理を説明するためのシーケンス図である。図19においては、クライアント30より、ユーザ情報の要求があった場合を例に説明する。なお、クライアント30は、図9、図12及び図13おいて説明した処理によって発行された認証マージチケットを既に保有しているものとする。
ここで、図19における処理は、図14における処理、すなわち、クライアント30が認証サーバ10に対してチケットの解読を要求することにより、当該チケットに含まれているユーザ(チケットの所有者)に関する情報を取得する処理とは本質的に異なることに注意を要する。すなわち、図19における処理は、チケットの所有者に関する情報を取得するのではなく、チケットを用いて他のユーザのユーザ情報を参照するための処理である。したがって、図19における処理は、ユーザ情報の参照が許可されているユーザに対してのみ実行され得る。以下、ステップごとに処理を説明する。
ステップS201において、クライアント30は、ディレクトリサービスインタフェー
部13aの提供するユーザ一覧取得関数(queryUser)を呼び出すことにより、ユーザ情報の一覧(以下、「ユーザ一覧」という。)の提供を認証サーバ10に要求する。なお、ユーザ一覧取得関数の引数には、認証マージチケット、対象プロバイダ名及び取得条件等が指定される。対象プロバイダとは、ユーザ情報の提供の要求先のディレクトリプロバイダのプロバイダ名(ここでは、パスワード・指紋マージディレクトリプロバイダ16a)である。また、取得条件とは、検索対象とするユーザ情報を絞り込むための条件(いわゆる検索条件)である。
ステップS201に続いてステップS202に進み、ユーザ一覧取得関数が呼び出されたディレクトリサービスインタフェース部13aは、まず、引数に指定された認証マージチケットの正当性を確認すべく、プロバイダ呼び分け手段13のチケット確認関数(ValidateTicket(認証マージチケット))を呼び出す。チケット確認関数が呼び出されることにより、図16において説明した処理が実行され、認証マージチケットの正当性及び当該認証マージチケットの所有者に対するユーザ一覧の参照権限の有無等が判断され、その判断結果がプロバイダ呼び分け手段13よりディレクトリサービスインタフェース部13aに返却される(S203)。
チケットの正当性が確認された場合は、ステップS204に進み、ディレクトリサービスインタフェース部13aは、パスワード・指紋マージディレクトリプロバイダ16aのユーザ一覧取得関数(queryUser)を呼び出すことにより、パスワード・指紋マージディレクトリプロバイダ16aに対してユーザ一覧の提供を要求する。ステップS204に続いてステップS205に進み、パスワード・指紋マージディレクトリプロバイダ16aは、プライマリプロバイダであるパスワードディレクトリプロバイダ17aのユーザ一覧取得関数(queryUser)を呼び出すことにより、パスワードディレクトリプロバイダ17aに対してユーザ一覧の提供を要求する。なお、パスワード・指紋マージディレクトリプロバイダ16aは、パスワードディレクトリプロバイダ17aがプライマリプロバイダであること、及びパスワードディレクトリプロバイダ17aを呼び出すための手順等については、マージプロバイダ管理テーブル192及び認証プロバイダ管理テーブル191等を参照して判断する。
ステップS205に続いてステップS206に進み、パスワードディレクトリプロバイダ17aは、ユーザ一覧取得関数の引数に指定された取得条件合致するユーザ情報を外部認証サーバ40より検索し、検索されたユーザ情報の一覧(ユーザ一覧)をパスワード・指紋マージディレクトリプロバイダ16aに出力する(S207)。
図20は、外部認証サーバより検索されたユーザ一覧の例を示す図である。図20に示されるように、検索されたユーザ一覧には、ユーザ毎に社員ID、名前、所属、メールアドレス及び電話番号等が含まれている。
ステップS207に続いてステップS208に進み、パスワード・指紋マージディレクトリプロバイダ16aは、取得条件を参照し、追加プロバイダに対する検索が要求されているかを判断する。例えば、取得条件において、追加プロバイダに対する検索が不要とされている場合(すなわち、プライマリプロバイダのみが検索対象となっている場合)は、パスワード・指紋マージディレクトリプロバイダ16aは、プライマリプロバイダ(パスワードディレクトリプロバイダ17a)より取得したユーザ一覧のみを、ディレクトリサービスサービスインタフェース部13aに対して出力する(S209)。当該ユーザ一覧は、ディレクトリサービスインタフェース部13aによって、クライアント30に対して送信される(S210)。
一方、取得条件において、追加プロバイダに対する検索が不要とされていない場合は、ステップS211に進み、パスワード・指紋マージディレクトリプロバイダ16aは、追加プロバイダである指紋ディレクトリプロバイダ18aのユーザ一覧取得関数(queryUser)を呼び出すことにより、指紋ディレクトリプロバイダ18aに対してユーザ一覧の提供を要求する。なお、パスワード・指紋マージディレクトリプロバイダ16aは、指紋ディレクトリプロバイダ18aが追加プロバイダであること、及び指紋ディレクトリプロバイダ18aを呼び出すための手順等については、追加プロバイダ管理テーブル193及び認証プロバイダ管理テーブル191等を参照して判断する。
ステップS211に続いてステップS212に進み、指紋ディレクトリプロバイダ18aは、ユーザ一覧取得関数の引数に指定された取得条件に合致するユーザ情報を指紋DB182より検索し、検索されたユーザ情報の一覧(ユーザ一覧)をパスワード・指紋マージディレクトリプロバイダ16aに出力する(S213)。
図21は、指紋DBより検索されたユーザ一覧の例を示す図である。図21に示されるように、検索されたユーザ一覧には、ユーザ毎に社員ID、指紋特徴データ及び指紋特徴データの登録年月日等が含まれている。ここで、社員IDは、各ユーザを一意に識別するための情報である。すなわち、外部認証におけるユーザ情報と指紋DB182におけるユーザ情報とは、社員IDによって予め対応づけられているということができる。
指紋DB182より検索されるユーザ一覧は、外部認証サーバ40と指紋DB182とにおいてエントリされているユーザが同じ場合には、パスワードディレクトリプロバイダ17aより検索されたユーザ一覧と同一ユーザに係るものである。但し、外部認証サーバ40と指紋DB182とにおいては、管理されている情報が異なるのが一般的である。したがって、ステップS213において、パスワード・指紋マージディレクトリプロバイダ16aは、同一ユーザについて、パスワードディレクトリプロバイダ17aからは得られなかった情報(例えば、指紋特徴データや、指紋特徴データが登録された年月日等)を、指紋ディレクトリプロバイダ18aから取得したことになる。
ステップS213に続いてステップS214に進み、パスワード・指紋マージディレクトリプロバイダ16aは、プライマリプロバイダ(パスワードディレクトリプロバイダ17a)より取得したユーザ一覧と、追加プロバイダ(指紋ディレクトリプロバイダ18a)より取得したユーザ一覧とを、社員IDに基づいて各ユーザの同一性を判別してマージする(以下、マージされたユーザ一覧を「マージユーザ一覧」という。)。
図22は、マージユーザ一覧の例を示す図である。図22のマージユーザ一覧においては、プライマリプロバイダと追加プロバイダより取得された情報がユーザごとにマージされている。このように、単に、二つの情報を縦方向に連結するのではなく、ユーザごとにマージすることで、マージユーザ一覧を受け取った側(クライアント30)においてマージ一覧の取り扱いを容易にすることができる。
ステップS214に続いてステップS215に進み、パスワード・指紋マージディレクトリプロバイダ16aがマージユーザ一覧をディレクトリサービスインタフェース部13aに対して出力すると、ディレクトリサービスインタフェース部13aは、マージユーザ情報をクライアント30に送信する(S216)。
以上によって、クライアント30は、マージユーザ情報を取得したことになる。ここでマージユーザ情報は、外部認証サーバ40及び指紋DB182においてそれぞれ独立して管理されているユーザ情報が統合的に提供されたものであるため、いずれか一方より取得されたユーザ情報に比べより豊富な情報が含まれている。また、マージユーザ情報は、外部認証サーバ40においてのみ管理されているユーザのユーザ情報及び指紋DB182においてのみ管理されているユーザのユーザ情報も含み得るため、クライアント30は、取得条件に合致するより多くのユーザに関しての情報を取得することができる。
なお、上記においては、認証サーバ10が汎用的なコンピュータによって実現された例について説明したが、認証サーバ10を特定の用途に特化した機器、例えば、プリンタ等の画像処理装置等によって実現してもよい。近年の画像処理装置には、融合機、又は複合機と呼ばれる、プリンタ、コピー、又はファクシミリ等の複合サービスに固有の処理を行う複数のアプリケーションを有し、コンピュータと同等の情報処理を実行することができるものが存在する。したがって、このような融合機を用いて、本実施の形態における認証サーバ10を実現しても本発明の効果を同様に得ることができる。
図23は、本発明による融合機の一実施例の構成図を示す。融合機1000は、白黒ラインプリンタ1015と、カラーラインプリンタ1016と、スキャナやファクシミリなどのハードウェアリソース1017と、ソフトウェア群1020と、融合機起動部1050とを有するように構成される。また、ソフトウェア群1020はアプリケーション1030とプラットフォーム1040とを有するように構成される。
プラットフォーム1040は、アプリケーション1030からの処理要求を解釈してハードウェア資源の獲得要求を発生するコントロールサービスと、1つ以上のハードウェア資源の管理を行ってコントロールサービスからの獲得要求を調停するシステムリソースマネージャ(以下、SRMという)1043と、オペレーティングシステム(以下、OSという)1041とを有するように構成されている。
コントロールサービスは、システムコントロールサービス(以下、SCSという)1042、エンジンコントロールサービス(以下、ECSという)1044、メモリコントロールサービス(以下、MCSという)1045、オペレーションパネルコントロールサービス(以下、OCSという)1046、ファックスコントロールサービス(以下、FCSという)1047、ネットワークコントロールサービス(以下、NCSという)1048、ユーザ情報管理サービス(以下、UCSという)1049など一つ以上のサービスモジュールを有するように構成されている。
なお、プラットフォーム1040は予め定義されている関数によりアプリケーション1030からの処理要求を受信可能とするアプリケーションプログラムインタフェース(以下、APIという)を有するように構成されている。
OS1041は、ユニックス(UNIX(登録商標))などのオペレーティングシステムであって、プラットフォーム1040及びアプリケーション1030の各ソフトウェアをプロセスとして並列実行する。
SRM1043のプロセスは、SCS1042と共にシステムの制御及びリソースの管理を行うものである。例えばSRM1043のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、ハードディスク装置(HDD)ファイル、ホストI/O(セントロインタフェース、ネットワークインタフェース、IEEE101394インタフェース、RS21032Cインタフェースなど)のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する。
例えば、SRM1043は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判定し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に通知する。また、SRM1043は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、例えばプリンタエンジンによる紙搬送と作像動作、メモリ確保、ファイル生成などの要求内容を直接実施している。
SCS1042のプロセスは、アプリケーション管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリケーション制御を行う。ECS1044のプロセスは、白黒ラインプリンタ1015、カラーラインプリンタ1016、ハードウェアリソース1017のエンジンの制御を行う。
MCS1045のプロセスは、画像メモリの取得及び解放、ハードディスク装置(HDD)の利用、画像データの圧縮及び伸張などを行う。OCS1046のプロセスは、オペレータと本体制御との間の情報伝達手段となるオペレーションパネルの制御を行う。
FCS1047のプロセスは、システムコントローラの各アプリケーション層からPSTNまたはISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読み取り、ファクシミリ受信印刷、融合送受信を行うためのアプリケーションを提供する。
NCS1048のプロセスは、ネットワークI/Oを必要とするアプリケーションに対し、共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。
UCS1049のプロセスは、ユーザ情報及び/又はユーザの所属するグループ情報の管理を行うものであり、要求に応じたユーザ情報及び/又はユーザの所属するグループ情報が格納されている記憶装置及び/又はネットワークを介して接続された他の装置を判定し、判定した記憶装置及び/又はネットワークを介して接続された他の装置からユーザ情報及び/又はユーザの所属するグループ情報を取得して各アプリケーションに供給する。
また、UCS1049のプロセスは、ユーザ情報及び/又はユーザの所属するグループ情報の管理を行うとともに、ユーザの認証を行うようにしてもよい。
上述した各種認証プロバイダ(例えば、パスワード・指紋マージプロバイダ、パスワード認証プロバイダ、指紋認証プロバイダ等)は、UCS1049に実装される。
また、アプリケーション1030は、プリンタ、コピー、ファクシミリ、スキャナなどの画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うものである。アプリケーション1030は、ページ記述言語(PDL、PCL)及びポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ1031と、コピー用アプリケーションであるコピーアプリ1032と、ファクシミリ用アプリケーションであるファックスアプリ1033と、スキャナ用アプリケーションであるスキャナアプリ1034とを有している。
融合機起動部1050は、融合機1000の電源投入時に最初に実行され、アプリケーション1030やプラットフォーム1040を起動するものである。例えば融合機起動部1050は、コントロールサービスやアプリケーションのプログラムを後述するフラッシュメモリから読み出し、読み出した各プログラムをSRAMまたはSDRAM上に確保したメモリ領域に転送して起動するものである。
図24は、本発明による融合機の一実施例のハードウェア構成図を示す。図24の融合機1000は、コントローラボード1060と、オペレーションパネル1070と、ファックスコントロールユニット(以下、FCUという)1080と、USBデバイス1090と、IEEE101394デバイス1100と、エンジン部1110とを有するように構成される。
オペレーションパネル1070は、コントローラボード1060のASIC1062に直接接続されている。また、FCU1080、USBデバイス1090、IEEE101394デバイス1100及びエンジン部1110は、コントローラボード1060のASIC1062にPCIバス(Peripheral Component Interconnect bus)などで接続されている。
また、コントローラボード1060は、CPU1061と、ASIC1062と、SRAM(Static RAM)1063と、SDRAM(Synchronous DRAM)1064と、フラッシュメモリ1065と、HDD1066とを有するように構成される。コントローラボード1060は、CPU1061、SRAM1063、SDRAM1064、フラッシュメモリ1065、HDD1066などをASIC1062に接続するように構成されている。
CPU1061は、融合機1000の全体制御を行うものである。CPU1061は、OS1041上でプラットフォーム1040を形成するSCS1042、SRM1043、ECS1044、MCS1045、OCS1046、FCS1047及びNCS1048をそれぞれプロセスとして起動して実行させると共に、アプリケーション1030を形成するプリンタアプリ1031、コピーアプリ1032、ファックスアプリ1033及びスキャナアプリ1034等を起動して実行させる。
ASIC1062は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。SRAM1063及びSDRAM1064の物理メモリ領域には、カーネルやプロセスなどの仮想メモリ領域がマッピングされる。
以下、図25から図27を用いて、UCS1049の構成例について説明する。図25は、UCSの構成を説明するための図(その1)である。
図25に示すように、UCS1049は、マージプロバイダ1013と、1つ以上のサブプロバイダ1014とから構成される。マージプロバイダ1013は、本実施の形態におけるパスワード・指紋マージプロバイダ16及び16a等のマージプロバイダを抽象的に表現したものである。サブプロバイダ1014は、マージプロバイダによって連携される認証プロバイダ、すなわち、本実施の形態におけるパスワード認証プロバイダ17及び指紋認証プロバイダ18等を抽象的に表現したものである。したがって、サブプロバイダ1014のうちの一つはプライマリプロバイダということになる。
図25に示される構成をとることによって、UCS1049は、上述したように、サブプロバイダ1014が提供するユーザ情報及び/又はユーザの所属するグループ情報等をマージプロバイダ1013においてマージし、例えば、融合機1000のアプリケーション1030などに、マージしたユーザ情報及び/又はユーザの所属するグループ情報等を提供することができる。
図26は、UCSの構成を説明するための図(その2)である。図26に示すように、UCS1049は、サブプロバイダ1014を含まず、マージプロバイダ1013のみから構成される。図26に示される構成をとることによって、例えば他の装置に実装されているサブプロバイダ1014が提供するユーザ情報及び/又はユーザの所属するグループ情報をマージプロバイダ1013においてマージし、例えば、融合機1000のアプリケーション1030などに、マージしたユーザ情報及び/又はユーザの所属するグループ情報を提供することができる。
図27は、UCSの構成を説明するための図(その3)である。図27に示すように、UCS1049は、マージプロバイダ1013を含まず、少なくとも1つ以上のサブプロバイダ1014から構成される。図27に示される構成をとることによって、例えば他の装置に実装されているマージプロバイダ1013からの要求に応じてユーザ情報及び/又はユーザの所属するグループ情報を提供することができる。
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
第一の実施の形態における認証システムの構成例を示す図である。 マージ情報管理DBを構成する認証プロバイダ管理テーブルの構成例を示す図である。 マージ情報管理DBを構成するマージプロバイダ管理テーブルの構成例を示す図である。 マージ情報管理DBを構成する追加プロバイダ管理テーブルの構成例を示す図である。 マージ情報管理DBを構成する認証プロバイダマージテーブルの構成例を示す図である。 外部認証サーバにおけるユーザ管理テーブルの構成例を示す図である。 指紋DBを構成する指紋特徴データ管理テーブルの構成例を示す図である。 本発明の実施の形態における認証サーバのハードウェア構成例を示す図である。 プライマリ認証の際の認証サーバの処理を説明するためのシーケンス図である。 通常のチケットのデータ構造の例を示す図である。 マージチケットのデータ構造の例を示す図である。 追加認証の際の認証サーバの処理を説明するためのシーケンス図である。 追加認証の際の認証サーバの処理を説明するためのシーケンス図である。 チケットの第一の利用方法を説明するためのシーケンス図である。 マージ認証情報データの構成例を示す図である。 チケットの第二の利用方法を説明するためのシーケンス図である。 内部アプリケーションに認証機能を提供する場合の認証サーバの機能構成例を示す図である。 第二の実施の形態における認証システムの構成例を示す図である。 ユーザ情報の提供が要求された際の認証サーバの処理を説明するためのシーケンス図である。 外部認証サーバより検索されたユーザ一覧の例を示す図である。 指紋DBより検索されたユーザ一覧の例を示す図である。 マージユーザ一覧の例を示す図である。 本発明による融合機の一実施例の構成図である。 本発明による融合機の一実施例のハードウェア構成図である。 UCSの構成を説明するための図(その1)である。 UCSの構成を説明するための図(その2)である。 UCSの構成を説明するための図(その3)である。
符号の説明
1、2 認証システム
10 認証サーバ
11 認証サービスモジュール
12、12a SOAPスタブ
13 プロバイダ呼び分け手段
13a ディレクトリサービスインタフェース部
14、14a 認証プロバイダA
15、15a 認証プロバイダB
16、16a パスワード・指紋マージプロバイダ
17、17a パスワード認証プロバイダ
18、18a 指紋認証プロバイダ
19 マージ情報管理DB
20 端末
22 SOAPプロキシ
23 クライアントアプリケーション
24 指紋読み取り装置ドライバ
25 指紋読み取り装置
40 外部認証サーバ
100 ドライブ装置
101 記憶媒体
102 補助記憶装置
103 メモリ装置
104 演算処理装置
105 インタフェース装置
181 指紋認証ライブラリ
182 指紋DB
1000 融合機
1013 マージプロバイダ
1014 サブプロバイダ
1015 白黒ラインプリンタ
1016 カラーラインプリンタ
1017 ハードウェアリソース
1020 ソフトウェア群
1030 アプリケーション
1031 プリンタアプリ
1032 コピーアプリ
1033 ファックスアプリ
1034 スキャナアプリ
1040 プラットフォーム
1041 オペレーティングシステム(OS)
1042 システムコントロールサービス(SCS)
1043 システムリソースマネージャ(SRM)
1044 エンジンコントロールサービス(ECS)
1045 メモリコントロールサービス(MCS)
1046 オペレーションパネルコントロールサービス(OCS)
1047 ファックスコントロールサービス(FCS)
1048 ネットワークコントロールサービス(NCS)
1049 ユーザ情報管理サービス(UCS)
1050 融合機起動部
1060 コントローラボード
1061 CPU
1062 ASIC(Application Specific Integrated Circuit)
1063 SRAM(Static RAM)
1064 SDRAM(Synchronous DRAM)
1065 フラッシュメモリ
1066 ハードディスク装置(HDD)
1070 オペレーションパネル
1080 ファックスコントロールユニット(FCU)
1090 USBデバイス
1100 IEEE1394デバイス
1110 エンジン部
B バス

Claims (32)

  1. ユーザに係る情報の提供を行う情報提供手段を連携させる連携手段を有する情報提供装置であって、
    前記連携手段は、ユーザに係る情報の提供要求に応じ、
    第一の情報管理手段において管理されているユーザに係る第一の情報を第一の情報提供手段に取得させ、
    第二の情報管理手段において所定の識別情報によって前記第一の情報に予め対応付けられて管理されているユーザに係る第二の情報を第二の情報提供手段に取得させ、
    前記第一及び第二の情報を前記所定の識別情報に基づいて統合した情報を提供することを特徴とする情報提供装置。
  2. 前記ユーザに係る情報の提供要求には検索条件が指定されており、
    前記連携手段は、前記第一及び第二の情報提供手段に前記検索条件に合致するユーザに係る情報を取得させることを特徴とする請求項1記載の情報提供装置。
  3. 前記連携手段は、前記第一及び第二の情報提供手段により取得された情報をユーザごとに統合することを特徴とする請求項1又は2記載の情報提供装置。
  4. 前記第一及び第二の情報提供手段を更に有することを特徴とする請求項1乃至3いずれか一項記載の情報提供装置。
  5. 複数の前記情報提供手段の中から前記第一の情報提供手段を識別する情報を管理する第一の情報提供手段識別情報管理手段と、
    複数の前記情報提供手段の中から前記第二の情報提供手段を識別する情報を管理する第二の情報提供手段識別情報管理手段とを更に有することを特徴とする請求項1乃至4いずれか一項記載の情報提供装置。
  6. 前記情報提供手段のそれぞれの呼び出し情報が登録された呼び出し情報管理手段を更に有し、
    前記連携手段は、前記呼び出し情報管理手段に基づいて前記第一及び第二の情報提供手段を呼び出すことにより、該情報提供手段にユーザに係る情報を取得させることを特徴とする請求項1乃至5いずれか一項記載の情報提供装置。
  7. ユーザに係る情報の提供を行う情報提供手段を連携させる情報提供装置における情報提供方法あって、
    前記ユーザに係る情報の提供要求に応じ、第一の情報管理手段において管理されているユーザに係る第一の情報を第一の情報提供手段に取得させる第一の情報取得手順と、
    第二の情報管理手段において所定の識別情報によって前記第一の情報に予め対応付けられて管理されているユーザに係る第二の情報を第二の情報提供手段に取得させる第二の情報取得手順と、
    前記第一及び第二の情報を前記所定の識別情報に基づいて統合する情報統合手順とを有することを特徴とする情報提供方法。
  8. 前記ユーザに係る情報の提供要求には検索条件が指定されており、
    前記情報統合手順は、前記第一及び第二の情報提供手段に前記検索条件に合致するユーザに係る情報を取得させることを特徴とする請求項7記載の情報提供方法。
  9. 前記情報統合手順は、前記第一及び第二の情報提供手段により取得された情報をユーザごとに統合することを特徴とする請求項7又は8記載の情報提供装置。
  10. ユーザに係る情報の提供を行う情報提供手段を連携させる情報提供装置に、
    前記ユーザに係る情報の提供要求に応じ、第一の情報管理手段において管理されているユーザに係る第一の情報を第一の情報提供手段に取得させる第一の情報取得手順と、
    第二の情報管理手段において所定の識別情報によって前記第一の情報に予め対応付けられて管理されているユーザに係る第二の情報を第二の情報提供手段に取得させる第二の情報取得手順と、
    前記第一及び第二の情報を前記所定の識別情報に基づいて統合する情報統合手順とを実行させるための情報提供プログラム。
  11. 請求項10記載の情報提供プログラムを記録したコンピュータ読み取り可能な記録媒体。
  12. ユーザの認証を行う認証手段を連携させる連携手段を有するユーザ認証装置であって、
    前記連携手段は、
    ユーザに関する第一の認証要求に応じ、該第一の認証要求において指定された第一のユーザ識別情報に基づく認証を第一の認証手段に行わせ、
    前記第一の認証手段に認証されているユーザに関する第二の認証要求に応じ、前記第一のユーザ識別情報に予め対応づけられている第二のユーザ識別情報に基づく認証を第二の認証手段に行わせることを特徴とするユーザ認証装置。
  13. 前記第一及び第二の認証手段を更に有することを特徴とする請求項12記載のユーザ認証装置。
  14. 前記第一のユーザ識別情報と前記第二のユーザ識別情報とを対応づけて管理するユーザ識別情報対応管理手段を更に有し、
    前記連携手段は、前記第一のユーザ識別情報に基づいて前記ユーザ識別情報対応管理手段から前記第二のユーザ識別情報を検索することを特徴とする請求項12又は13記載のユーザ認証装置。
  15. 前記連携手段は、前記第一のユーザ識別情報と前記第二のユーザ識別情報とを対応づけて管理するユーザ識別情報対応管理手段を有し、前記第一のユーザ識別情報に基づいて前記ユーザ識別情報対応管理手段から前記第二のユーザ識別情報を検索することを特徴とする請求項12又は13記載のユーザ認証装置。
  16. 複数の前記認証手段の中から前記第一の認証手段を識別する情報を管理する第一の認証手段識別情報管理手段と、
    複数の前記認証手段の中から前記第二の認証手段を識別する情報を管理する第二の認証手段識別情報管理手段とを更に有することを特徴とする請求項12乃至15いずれか一項記載のユーザ認証装置。
  17. 前記認証手段の呼び出し情報が登録された呼び出し情報管理手段を更に有し、
    前記連携手段は、前記呼び出し情報管理手段に基づいて前記第一及び第二の認証手段を呼び出すことにより、該認証手段に前記ユーザを認証させることを特徴とする請求項12乃至16いずれか一項記載のユーザ認証装置。
  18. 前記第一の認証手段は、前記第一の認証手段が前記ユーザを認証したことを証明する電子的な証明書である第一のチケットを生成し、
    前記第二の認証手段は、前記第二の認証手段が前記ユーザを認証したことを証明する電子的な証明書である第二のチケットを生成し、
    前記ユーザ認証装置は、前記第一の認証要求に対する応答として前記第一のチケットを含む情報を提供し、前記第二の認証要求に対する応答として前記第二のチケットを含む情報を提供することを特徴とする請求項12乃至17いずれか一項記載のユーザ認証装置。
  19. 前記連携手段は、前記第一のチケットと前記第二のチケットとを統合するマージチケットを生成し、
    前記ユーザ認証装置は、前記第一の認証要求に対する応答として、前記第一のチケットが統合された前記マージチケットを提供し、前記第二の認証要求に対する応答として、前記第二のチケットが更に統合された前記マージチケットを提供することを特徴とする請求項18記載のユーザ認証装置。
  20. 前記マージチケットを暗号化して提供することを特徴とする請求項19記載のユーザ認証装置。
  21. 前記マージチケット、前記第一のチケット及び前記第二のチケットのうち少なくとも一つは、有効期限を有することを特徴とする請求項19又は20記載のユーザ認証装置。
  22. 前記マージチケット、前記第一のチケット及び前記第二のチケットのうち少なくとも一つは、改竄チェック用のコードを有することを特徴とする請求項19乃至21いずれか一項記載のユーザ認証装置。
  23. 前記マージチケット、前記第一のチケット及び前記第二のチケットのうち少なくとも一つは、それぞれが利用可能な対象を示す有効範囲を有することを特徴とする請求項19乃至22いずれか一項記載のユーザ認証装置。
  24. 前記第一の認証手段は、パスワードに基づいてユーザの認証を行い、
    前記第二の認証手段は、ユーザの指紋に基づいてユーザの認証を行うことを特徴とする請求項12乃至23いずれか一項記載のユーザ認証装置。
  25. 前記連携手段は、前記マージチケットの解読要求に応じ、前記マージチケットに統合されている前記第一のチケットについては前記第一の認証手段に解読させ、前記マージチケットに統合されている前記第二のチケットについては前記第二の認証手段に解読させることを特徴とする請求項19乃至24いずれか一項記載のユーザ認証装置。
  26. 前記連携手段の機能は、SOAPのRPCによって呼び出すことが可能なことを特徴とする請求項12乃至25いずれか一項記載のユーザ認証装置。
  27. ユーザの認証を行う認証手段を連携させるユーザ認証装置におけるユーザ認証方法であって、
    ユーザに関する第一の認証要求に応じ、該第一の認証要求において指定された第一のユーザ識別情報に基づく認証を第一の認証手段に行わせる第一の認証手順と、
    前記第一の認証手段に認証されているユーザに関する第二の認証要求に応じ、前記第一のユーザ識別情報に予め対応づけられている第二のユーザ識別情報に基づく認証を第二の認証手段に行わせる第二の認証手順とを有することを特徴とするユーザ認証方法。
  28. 前記第二の認証手順は、前記第一のユーザ識別情報に基づいて前記第一のユーザ識別情報と前記第二のユーザ識別情報とを対応づけて管理するユーザ識別情報対応管理手段より前記第二のユーザ識別情報を検索することを特徴とする請求項27記載のユーザ認証方法。
  29. 前記第一の認証手順は、複数の前記認証手段の中から前記第一の認証手段を識別する情報を管理する第一の認証手段識別情報管理手段に基づいて前記第一の認証手段を識別し、
    前記第二の認証手順は、複数の前記認証手段の中から前記第二の認証手段を識別する情報を管理する第二の認証手段識別情報管理手段に基づいて前記第二の認証手段を識別することを特徴とする請求項27又は28記載のユーザ認証方法。
  30. 前記第一及び第二の認証手順は、前記認証手段の呼び出し情報が登録された呼び出し情報管理手段に基づいて、前記第一又は第二の認証手段を呼び出すことにより、該認証手段に前記ユーザを認証させることを特徴とする請求項27乃至29いずれか一項記載のユーザ認証方法。
  31. ユーザの認証を行う認証手段を連携させるユーザ認証装置に、
    ユーザに関する第一の認証要求に応じ、該第一の認証要求において指定された第一のユーザ識別情報に基づく認証を第一の認証手段に行わせる第一の認証手順と、
    前記第一の認証手段に認証されているユーザに関する第二の認証要求に応じ、前記第一のユーザ識別情報に予め対応づけられている第二のユーザ識別情報に基づく認証を第二の認証手段に行わせる第二の認証手順とを実行させるためのユーザ認証プログラム。
  32. 請求項31記載のユーザ認証プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2004032085A 2003-03-20 2004-02-09 ユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体 Expired - Fee Related JP4676703B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004032085A JP4676703B2 (ja) 2003-03-20 2004-02-09 ユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体
EP04005652A EP1475937A3 (en) 2003-03-20 2004-03-10 Information providing device, method, program and recording medium, and user authentication device, method, program and recording medium
EP05020675A EP1608125A1 (en) 2003-03-20 2004-03-10 User authentication device, method, program and recording medium
US10/803,896 US7617399B2 (en) 2003-03-20 2004-03-19 Information providing device, method, program and recording medium, and user authentication device, method, program and recording medium
CNB2004100302101A CN100371846C (zh) 2003-03-20 2004-03-22 信息提供以及用户验证设备、方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003078993 2003-03-20
JP2004032085A JP4676703B2 (ja) 2003-03-20 2004-02-09 ユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2004303202A true JP2004303202A (ja) 2004-10-28
JP4676703B2 JP4676703B2 (ja) 2011-04-27

Family

ID=32993011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004032085A Expired - Fee Related JP4676703B2 (ja) 2003-03-20 2004-02-09 ユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体

Country Status (4)

Country Link
US (1) US7617399B2 (ja)
EP (2) EP1608125A1 (ja)
JP (1) JP4676703B2 (ja)
CN (1) CN100371846C (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008544335A (ja) * 2005-04-15 2008-12-04 パーキンエルマー・シンガポール・ピーティーイー・リミテッド ソフトウェアコンポーネントとソフトウェアアプリケーションとを一体化可能なコンピュータシステム
JP2010186250A (ja) * 2009-02-10 2010-08-26 Nippon Telegr & Teleph Corp <Ntt> 分散情報アクセスシステム、分散情報アクセス方法及びプログラム
JP2013186614A (ja) * 2012-03-07 2013-09-19 Nec Software Chubu Ltd 認証情報照合装置、認証情報照合方法、プログラムおよび記録媒体
KR101409348B1 (ko) * 2013-03-26 2014-06-20 (주)아펙스플랫폼 통합 사용자 인증 정보를 이용한 사용자 인증 및 관리 방법
US8767237B2 (en) 2010-10-22 2014-07-01 Fuji Xerox Co., Ltd. Printing authentication system, printing device, device management apparatus and non-transitory computer readable recording medium
JP2014134978A (ja) * 2013-01-10 2014-07-24 Ricoh Co Ltd 認証管理装置、認証システム、認証管理方法およびプログラム
JP2017539017A (ja) * 2014-11-18 2017-12-28 オース0,インコーポレイテッド サービスとしてのアイデンティティインフラストラクチャ

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6631247B1 (en) 1999-09-29 2003-10-07 Ricoh Co., Ltd. Method and system for remote diagnostic, control and information collection based on various communication modes for sending messages to a resource manager
JP2007142948A (ja) * 2005-11-21 2007-06-07 Konica Minolta Business Technologies Inc データ入出力システム
JP4826270B2 (ja) * 2006-02-03 2011-11-30 富士ゼロックス株式会社 電子チケット発行管理システム、発行側システム、プログラム
US20080215346A1 (en) * 2007-03-02 2008-09-04 Neteller Plc Systems and methods for identity verification
US8078515B2 (en) * 2007-05-04 2011-12-13 Michael Sasha John Systems and methods for facilitating electronic transactions and deterring fraud
US11257080B2 (en) 2007-05-04 2022-02-22 Michael Sasha John Fraud deterrence for secure transactions
US8839386B2 (en) 2007-12-03 2014-09-16 At&T Intellectual Property I, L.P. Method and apparatus for providing authentication
JP2011191888A (ja) * 2010-03-12 2011-09-29 Canon Inc 画像形成装置、制御方法、及びプログラム
DE102010044518A1 (de) * 2010-09-07 2012-03-08 Siemens Aktiengesellschaft Verfahren zur Zertifikats-basierten Authentisierung
JP5620781B2 (ja) * 2010-10-14 2014-11-05 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
JP5342020B2 (ja) * 2011-09-27 2013-11-13 株式会社野村総合研究所 グループ定義管理システム
US9959539B2 (en) 2012-06-29 2018-05-01 Apple Inc. Continual authorization for secured functions
US9819676B2 (en) 2012-06-29 2017-11-14 Apple Inc. Biometric capture for unauthorized user identification
US10212158B2 (en) * 2012-06-29 2019-02-19 Apple Inc. Automatic association of authentication credentials with biometrics
US9832189B2 (en) * 2012-06-29 2017-11-28 Apple Inc. Automatic association of authentication credentials with biometrics
US10331866B2 (en) 2013-09-06 2019-06-25 Apple Inc. User verification for changing a setting of an electronic device
US20150073998A1 (en) 2013-09-09 2015-03-12 Apple Inc. Use of a Biometric Image in Online Commerce
CN104715181A (zh) * 2013-12-17 2015-06-17 深圳富泰宏精密工业有限公司 应用软件的登入系统及方法
US20150220931A1 (en) 2014-01-31 2015-08-06 Apple Inc. Use of a Biometric Image for Authorization
JP6354336B2 (ja) * 2014-05-29 2018-07-11 ブラザー工業株式会社 クライアント装置、サービス実行システム、及びプログラム
JP6451086B2 (ja) * 2014-05-29 2019-01-16 ブラザー工業株式会社 中継装置、サービス実行システム、及びプログラム
CN104468322A (zh) * 2014-10-27 2015-03-25 东莞宇龙通信科技有限公司 一种发送通知的方法及装置
EP3284093B1 (en) * 2015-04-14 2021-08-04 Cambou, Bertrand, F. Memory circuits using a blocking state
CN105681580A (zh) * 2016-03-17 2016-06-15 北京小米移动软件有限公司 事件提醒方法、装置和终端设备
US9948744B1 (en) 2016-10-14 2018-04-17 International Business Machines Corporation Mobile device identification
US10505733B2 (en) * 2017-09-25 2019-12-10 Citrix Systems, Inc. Generating and managing a composite identity token for multi-service use
CN108923931B (zh) * 2018-06-27 2021-06-22 努比亚技术有限公司 一种电子凭证处理方法、设备及计算机可读存储介质
US10796308B2 (en) * 2018-06-29 2020-10-06 Ncr Corporation Transaction terminal biometric integration
CN110837633B (zh) * 2019-10-16 2021-10-08 支付宝(杭州)信息技术有限公司 智能凭证实现方法、系统及可读存储介质
EP4243768A1 (en) 2020-11-12 2023-09-20 Alkermes Pharma Ireland Limited Immediate release multilayer tablet

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07253990A (ja) * 1994-03-15 1995-10-03 Hitachi Ltd 戸籍情報と除籍情報との統合検索システム
JPH11296532A (ja) * 1998-04-08 1999-10-29 Nippon Telegr & Teleph Corp <Ntt> 異種データ項目結合検索方法および装置と異種データ項目検索プログラムを記録した記録媒体
JP2001216270A (ja) * 2000-01-31 2001-08-10 Netmarks Inc 認証局、認証システム及び認証方法
JP2002073556A (ja) * 2000-08-25 2002-03-12 Nippon Telegr & Teleph Corp <Ntt> 認証システム
JP2002149459A (ja) * 2000-11-10 2002-05-24 Mitsubishi Electric Corp 冗長化データベース管理・検索システム
JP2002189702A (ja) * 2000-10-13 2002-07-05 Matsushita Electric Ind Co Ltd 個人認証情報出力装置
JP2003050783A (ja) * 2001-05-30 2003-02-21 Fujitsu Ltd 複合認証システム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69326364T2 (de) * 1992-02-04 2000-02-24 Ricoh Kk Informationsverarbeitungsapparat und -verfahren unter Verwendung eines zusätzlichen zweckmässigen Informationspakets
US5535276A (en) * 1994-11-09 1996-07-09 Bell Atlantic Network Services, Inc. Yaksha, an improved system and method for securing communications using split private key asymmetric cryptography
JPH08235114A (ja) * 1995-02-28 1996-09-13 Hitachi Ltd サーバアクセス方法と課金情報管理方法
US7047416B2 (en) * 1998-11-09 2006-05-16 First Data Corporation Account-based digital signature (ABDS) system
US6715082B1 (en) * 1999-01-14 2004-03-30 Cisco Technology, Inc. Security server token caching
US6317834B1 (en) * 1999-01-29 2001-11-13 International Business Machines Corporation Biometric authentication system with encrypted models
US6615264B1 (en) * 1999-04-09 2003-09-02 Sun Microsystems, Inc. Method and apparatus for remotely administered authentication and access control
EP1254547B1 (en) * 2000-02-08 2005-11-23 Swisscom Mobile AG Single sign-on process
JP3619958B2 (ja) * 2000-06-13 2005-02-16 富士通株式会社 危機管理システム及びコンピュータ
US7254619B2 (en) * 2000-10-13 2007-08-07 Matsushita Electric Industrial Co., Ltd. Apparatus for outputting individual authentication information connectable to a plurality of terminals through a network
US20020095588A1 (en) * 2001-01-12 2002-07-18 Satoshi Shigematsu Authentication token and authentication system
WO2002087272A1 (en) * 2001-04-25 2002-10-31 Nokia Corporation Authentication in a communication system
JP3863739B2 (ja) * 2001-07-16 2006-12-27 矢崎総業株式会社 防水式低挿入力コネクタ
EP1349032B1 (en) * 2002-03-18 2003-11-19 Ubs Ag Secure user authentication over a communication network

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07253990A (ja) * 1994-03-15 1995-10-03 Hitachi Ltd 戸籍情報と除籍情報との統合検索システム
JPH11296532A (ja) * 1998-04-08 1999-10-29 Nippon Telegr & Teleph Corp <Ntt> 異種データ項目結合検索方法および装置と異種データ項目検索プログラムを記録した記録媒体
JP2001216270A (ja) * 2000-01-31 2001-08-10 Netmarks Inc 認証局、認証システム及び認証方法
JP2002073556A (ja) * 2000-08-25 2002-03-12 Nippon Telegr & Teleph Corp <Ntt> 認証システム
JP2002189702A (ja) * 2000-10-13 2002-07-05 Matsushita Electric Ind Co Ltd 個人認証情報出力装置
JP2002149459A (ja) * 2000-11-10 2002-05-24 Mitsubishi Electric Corp 冗長化データベース管理・検索システム
JP2003050783A (ja) * 2001-05-30 2003-02-21 Fujitsu Ltd 複合認証システム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008544335A (ja) * 2005-04-15 2008-12-04 パーキンエルマー・シンガポール・ピーティーイー・リミテッド ソフトウェアコンポーネントとソフトウェアアプリケーションとを一体化可能なコンピュータシステム
JP2010186250A (ja) * 2009-02-10 2010-08-26 Nippon Telegr & Teleph Corp <Ntt> 分散情報アクセスシステム、分散情報アクセス方法及びプログラム
US8767237B2 (en) 2010-10-22 2014-07-01 Fuji Xerox Co., Ltd. Printing authentication system, printing device, device management apparatus and non-transitory computer readable recording medium
JP2013186614A (ja) * 2012-03-07 2013-09-19 Nec Software Chubu Ltd 認証情報照合装置、認証情報照合方法、プログラムおよび記録媒体
JP2014134978A (ja) * 2013-01-10 2014-07-24 Ricoh Co Ltd 認証管理装置、認証システム、認証管理方法およびプログラム
KR101409348B1 (ko) * 2013-03-26 2014-06-20 (주)아펙스플랫폼 통합 사용자 인증 정보를 이용한 사용자 인증 및 관리 방법
WO2014157892A1 (ko) * 2013-03-26 2014-10-02 (주)아펙스플랫폼 통합 사용자 인증 정보를 이용한 사용자 인증 및 관리 방법
JP2017539017A (ja) * 2014-11-18 2017-12-28 オース0,インコーポレイテッド サービスとしてのアイデンティティインフラストラクチャ

Also Published As

Publication number Publication date
US7617399B2 (en) 2009-11-10
EP1475937A2 (en) 2004-11-10
JP4676703B2 (ja) 2011-04-27
US20040187009A1 (en) 2004-09-23
CN100371846C (zh) 2008-02-27
EP1608125A1 (en) 2005-12-21
EP1475937A3 (en) 2004-12-15
CN1532661A (zh) 2004-09-29

Similar Documents

Publication Publication Date Title
JP4676703B2 (ja) ユーザ認証装置、ユーザ認証方法、ユーザ認証プログラム及び記録媒体
RU2506632C2 (ru) Устройство обработки информации, способ его управления и компьютерно-считываемый носитель информации
JP4676779B2 (ja) 情報処理装置、資源管理装置、属性変更許否判定方法、属性変更許否判定プログラム及び記録媒体
US7562217B2 (en) Web service provider and authentication service provider
US8732848B2 (en) File-distribution apparatus and recording medium having file-distribution authorization program recorded therein
US20090241107A1 (en) License file issuance apparatus, image processing apparatus, license file issuance method, application installation method, and storage medium
US20040080771A1 (en) Image forming apparatus that can operate without wasteful use of resources thereof and unnecessary authentication
US10051154B2 (en) Information processing apparatus, control method in information processing apparatus, and image processing apparatus
US10305961B2 (en) Information processing apparatus, information processing apparatus control method, and storage medium storing program
JP2005278144A (ja) 通信装置、サービス提供方法、サービス提供プログラム及び記録媒体
JP5012525B2 (ja) セキュリティポリシーサーバ、セキュリティポリシー管理システム及びセキュリティポリシー管理プログラム
US10713098B2 (en) Information processing apparatus and cookie information management method
JP4476025B2 (ja) 画像形成装置
JP2001306528A (ja) コンテンツ配信方法およびシステムとコンテンツ配信プログラムを記録した記録媒体
JP2007249575A (ja) 情報処理装置、コンピュータ読み取り可能な可搬性記録媒体、情報処理方法、情報処理プログラム及び情報処理システム
JP6772009B2 (ja) 情報処理装置および情報処理装置における制御方法、およびプログラムと画像処理装置
JP4999300B2 (ja) スキャン装置、スキャンサービス利用装置、認証サービス提供装置、スキャンサービスプログラム、スキャンサービス利用プログラム、認証サービスプログラム、記録媒体、スキャン方法、スキャンサービス利用方法及び認証サービス提供方法
JP2008176594A (ja) 情報配信管理システム、情報配信管理サーバ、プログラム
US20040128501A1 (en) Service offering system for allowing a client having no account to access a managed object with a limited right
JP2006338530A (ja) アクセス制御装置、資源操作装置、アクセス制御プログラム及び資源操作プログラム
JP2017027272A (ja) 情報処理システム、情報処理方法、及びプログラム
JP2004252955A (ja) 併合情報提供装置、情報提供装置、管理装置、併合情報提供方法、情報提供方法、管理方法、併合情報提供プログラム、情報提供プログラム、管理プログラム及び記録媒体
JP5295336B2 (ja) 情報処理装置、情報処理方法及びそのプログラム
JP2005018748A (ja) 認証サービス提供方法、認証サービス提供プログラム、記録媒体及び認証サービス提供装置
JP2008023937A (ja) 画像形成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100326

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110111

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110128

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

Free format text: PAYMENT UNTIL: 20140204

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees