JP3914193B2 - 認証を得て暗号通信を行う方法、認証システムおよび方法 - Google Patents

認証を得て暗号通信を行う方法、認証システムおよび方法 Download PDF

Info

Publication number
JP3914193B2
JP3914193B2 JP2003315625A JP2003315625A JP3914193B2 JP 3914193 B2 JP3914193 B2 JP 3914193B2 JP 2003315625 A JP2003315625 A JP 2003315625A JP 2003315625 A JP2003315625 A JP 2003315625A JP 3914193 B2 JP3914193 B2 JP 3914193B2
Authority
JP
Japan
Prior art keywords
application
service component
authentication
service
key
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.)
Expired - Fee Related
Application number
JP2003315625A
Other languages
English (en)
Other versions
JP2005086428A (ja
Inventor
信貴 福原
克司 野間
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.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute 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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2003315625A priority Critical patent/JP3914193B2/ja
Publication of JP2005086428A publication Critical patent/JP2005086428A/ja
Application granted granted Critical
Publication of JP3914193B2 publication Critical patent/JP3914193B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

本発明は、Webサービスを利用したシステムにおけるセキュリティを向上させるための技術に関する。
Web関連技術の1つにWebサービス技術がある。Webサービス技術は、XML(eXtensible Markup Language)形式のメッセージ交換により、ネットワーク上に存在するアプリケーションを連携させる技術をいう。また、Webサービス技術を用いたアプリケーションをWebサービスという。通常のWebサイトは、Webブラウザなどを用いたユーザに対して直接サービス(情報)を提供するのに対して、Webサービスは、ユーザのコンピュータ上のアプリケーションに対して所定のサービスを提供する。
Webサービスに関しては、実用化に向けた検討が進められているが、例えば、Webサービスを用いたときのセキュリティに関しては、必ずしも十分に検討されている訳ではない。
また、従来のセキュリティ技術では、暗号および認証はそれぞれ別々に行われていることが多い。さらに、認証に関しては、どのような認証を行うかは各アプリケーションの自由であり、標準化されていない。従って、種々のアプリケーションを利用したいユーザは、それぞれのアプリケーションの仕様に合わせるために、それぞれに適した処理プログラムを開発しなければならない。
そこで、本発明の目的は、Webサービスを利用したシステムのセキュリティを向上させることである。
本発明の他の目的は、アプリケーションに依存しない認証システムを提供することである。
本発明の別の目的は、暗号技術と認証技術とを組み合わせて、安全性の高いシステムを提供することである。
本発明のさらに別の目的は、Webシステムが稼動する環境であればファイアーウォールの影響を受けない、位置透過性の高い認証サーバに関する技術を提供することである。
本発明のまた別の目的は、シングルサインオンで種々のサービスの提供が受けられるような認証技術を提供することである。
本発明の一つの実施態様に従う認証を得て暗号通信を行う方法は、第1の情報処理装置上で動作しているアプリケーションが、認証サーバへ認証要求を送信し、前記認証サーバが前記アプリケーションを認証すると、暗号化および復号化に用いる鍵を前記第1の情報処理装置へ送信し、第2の情報処理装置が、前記第1の情報処理装置から、前記第2の情報処理装置上で動作しているサービスコンポーネントに対するサインオン要求を受け付けると、前記認証サーバへ前記サービスコンポーネントの認証要求を送信し、前記認証サーバが前記サービスコンポーネントを認証すると、前記暗号化および復号化に用いる鍵と同一の鍵を前記第2の情報処理装置へ送信し、前記アプリケーションおよび前記サービスコンポーネントは、それぞれが前記認証サーバから取得した鍵を用いて、相互に暗号通信を行う。
本発明の一つの実施態様に従う認証システムは、一以上のアプリケーションの識別情報と、前記一以上のアプリケーションのそれぞれを認証するための情報とを対応付けて記憶した第1の記憶手段と、一以上のサービスコンポーネントの識別情報と、前記一以上のサービスコンポーネントのそれぞれを認証するための情報とを対応付けて記憶した第2の記憶手段と、あるアプリケーションから、当該アプリケーションの識別情報を含む認証要求を受け付け、前記第1の記憶手段を参照して当該アプリケーションを認証するための処理を行う手段と、前記アプリケーションが認証されたときは、前記アプリケーションが認証済みであることを示す認証済み情報と、暗号化および復号化に用いる鍵とを前記アプリケーションへ送信する手段と、あるサービスコンポーネントから、当該サービスコンポーネントの識別情報を含む認証要求を受け付け、前記第2の記憶手段を参照して当該サービスコンポーネントを認証するための処理を行う手段と、前記サービスコンポーネントが認証されたときは、前記アプリケーションへ送信した鍵と同一の鍵を前記サービスコンポーネントへ送信する手段と、を備える。
好適な実施形態では、前記サービスコンポーネントからの認証要求には、前記アプリケーションの認証済み情報をさらに含む。そして、前記認証システムは、一以上のアプリケーションの識別情報と、前記一以上のアプリケーションのそれぞれがアクセス可能な一以上のサービスコンポーネントの識別情報とを対応付けて記憶した第3の記憶手段と、前記第3の記憶手段を参照し、前記サービスコンポーネントからの認証要求に含まれる前記認証済み情報に基づいて、前記一のアプリケーションと前記一のサービスコンポーネントとが対応付けられているか判定する手段と、をさらに備える。前記サービスコンポーネントへ送信する手段は、前記判定により前記アプリケーションと前記サービスコンポーネントとが対応付けられているときに、前記アプリケーションへ送信した鍵と同一の鍵を送信する。
好適な実施形態では、前記第1の記憶手段に記憶された認証するための情報は復号鍵である。そして、前記アプリケーションからの認証要求は暗号化されていて、前記アプリケーションを認証するための処理は、前記暗号化されている認証要求を前記復号鍵で復号化する。
好適な実施形態では、前記第2の記憶手段に記憶された認証するための情報は復号鍵である。そして、前記サービスコンポーネントからの認証要求は暗号化されていて、前記サービスコンポーネントを認証するための処理は、前記暗号化されている認証要求を前記復号鍵で復号化する。
本発明の一つの実施態様に従う情報処理装置は、前記情報処理装置上で動作しているプログラムの認証要求を、認証サーバへ送信する手段と、前記認証サーバで前記プログラムが認証されたとき、前記認証サーバから暗号化および復号化に用いる鍵を取得する手段と、他の情報処理装置上で動作しているサービスを提供するプログラムに対するサインオン要求を送信する手段と、前記他の情報処理装置からサインオンを許可することを示す情報を受信する手段と、サインオンが許可されると、前記サービス提供プログラムに対するメッセージを前記鍵を用いて暗号化し、暗号化された情報を前記他の情報処理装置へ送信する手段と、暗号化された、前記サービス提供プログラムからのメッセージを受信し、前記鍵を用いて復号化する手段と、を備える。
本発明の一つの実施態様に従う情報処理装置は、当該情報処理装置上で動作しているサービス提供プログラムに対する、他の情報処理装置上で動作しているプログラムからのサインオン要求を受信する手段と、前記サービス提供プログラムの認証要求を、認証サーバへ送信する手段と、前記認証サーバで前記サービス提供プログラムが認証されたとき、前記認証サーバから暗号化および復号化に用いる鍵を取得する手段と、前記鍵を取得すると、サインオンを許可することを示す情報を、前記他の情報処理装置に対して送信する手段と、前記他の情報処理装置上で動作するプログラムに対するメッセージを前記鍵を用いて暗号化し、暗号化された情報を前記他の情報処理装置へ送信する手段と、暗号化された、前記他の情報処理装置上で動作するプログラムからメッセージを受信し、前記鍵を用いて復号化する手段と、を備える。
本発明の一つの実施態様に従うサービス提供装置は、第1の情報処理装置で動作するアプリケーションと、第2の情報処理装置で動作するサービスコンポーネントとが、相互に通信を行うためのセッションを確立しているときに、前記セッションを識別するためのセッション情報と、前記セッションに固有な鍵で暗号化されたアプリケーションからのリクエスト情報とを含むメッセージを受信する手段と、前記セッションに固有な鍵を記憶するための記憶手段と、前記セッションを識別するための情報に基づいて、前記鍵を取得するための要求を前記第2の情報処理装置へ送信する手段と、前記第2の情報処理装置から前記鍵を取得すると、取得した鍵を前記記憶手段に格納する手段と、前記鍵を用いて、前記暗号化されている前記アプリケーションからのリクエスト情報を復号化する手段と、前記復号化されたアプリケーションからのリクエスト情報に基づいて所定の処理を行い、前記リクエストに対するレスポンス情報を生成する手段と、前記レスポンス情報を、前記鍵で暗号化する手段と、前記暗号化されたレスポンス情報を、前記第1の情報処理装置へ送信する手段と、を備える。
以下、本発明の一実施形態に係る所定の業務サービスを提供するためのシステムついて、図面を用いて説明する。図1は、本システムの全体構成を示す図である。このシステムは、ユーザ端末1と、認証サーバ2と、サービスを提供する業務サーバ3、4とが、それぞれインターネットなどのネットワーク9を介して接続されている。
図1では、ユーザ端末1が一台、業務サーバが二台、それぞれ示されているが、それぞれの台数はこれらに限定されない。例えば、ユーザ端末は複数台存在してもよいし、業務サーバは一台または三台以上であってもよい。
ユーザ端末1、認証サーバ2および業務サーバ3、4は、いずれも、例えばプロセッサおよび記憶装置などを有する汎用的なコンピュータシステムにより構成され、以下に説明するユーザ端末1および各サーバ2,3,4内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
また、本実施形態では、1台以上のユーザ端末と1台以上の業務サーバにより、所定のグループが形成されている。そして、各ユーザ端末は、同一グループ内の業務サーバと通信を行い、各業務サーバが提供するサービスを利用することができる。また、各業務サーバは同一グループ内のユーザ端末と通信を行い、各ユーザ端末に対してサービスを提供する。図1の例では、ユーザ端末1および業務サーバ3,4が同一グループに属している。また、ユーザ端末と業務サーバとの通信は、セッションを確立して行う。
ユーザ端末1は、所定の処理を行うアプリケーションプログラム(AP)11と、認証サーバ2および業務サーバ3,4との間で通信を行うセッション管理部12と、ユーザ端末1が属するグループ内の他のユーザ端末および業務サーバに固有な、復号化に用いる復号鍵を記憶した固有鍵記憶部13とを備える。
AP11は、業務サーバ3,4で動作するサービスコンポーネント32,42が提供する所定のサービスを利用する。AP11は、ユーザ端末1上で動作している。サービスコンポーネント32,42が提供するサービスを利用するために、AP11はサービスコンポーネント32,42と、後述する手順でセッションを確立し、処理を依頼したり、処理結果を受領したりするためのメッセージの交換を行う。
固有鍵記憶部13は、ユーザ端末1に固有な暗号鍵が記憶されている。この暗号鍵は、認証サーバ2から後述するセッション鍵を取得するためのリクエストを暗号化するために用いる。なお、暗号化の方式は、公開鍵暗号方式であってもよいし、秘密鍵暗号方式であってもよい。
セッション管理部12は、業務サーバ3,4で動作しているサービスコンポーネント32,42とAP11との間のセッションを管理するための処理を行う。例えば、セッション管理部12は、AP11とサービスコンポーネント32,42とのセッションを確立するために、AP11の認証を得るための処理を行う。認証サーバ2でAP11が認証されたときには、セッション管理部12は、サービスコンポーネント32,42とのセッションで使用する暗号鍵(セッション鍵)を認証サーバ2から取得する。
また、セッション管理部12は、AP11が業務サーバ3,4へサインオンし、セッションを確立するための処理を行う。セッション管理部12の詳細な処理は後述する。
認証サーバ2は、ユーザ端末1で動作するAP11および業務サーバ3,4で動作するサービスコンポーネント32,42の認証を行う。また、ユーザ端末1からのサインオン要求を受け付けた業務サーバ3,4からの問い合わせに対して、サインオンを許可するかどうかの判定を行う。さらに、認証されたAP11およびサービスコンポーネント32、42が相互に通信を行うためのセッションの管理を行う。
認証サーバ2は、ユーザ端末1のAP11および業務サーバ3、4のサービスコンポーネント32,42の認証を行うWebサービスである認証Webサービス21と、ユーザ端末1から業務サーバ3,4へサインオン要求があったときに、サインオンを許可するかどうかを判断するWebサービスである検証Webサービス22と、ユーザ端末1上のAP11に対して与えられているアクセスする権限を示すアクセス権限記憶部23と、セッション情報記憶部24と、個別鍵記憶部25とを備える。
認証Webサービス21は、ユーザ端末1から認証要求を含むメッセージを受け付けて、AP11を認証するための処理を行う。また、同様に、業務サーバ3,4からの認証要求を含むメッセージを受け付けて、サービスコンポーネント32、42を認証するための処理を行う。例えば、認証Webサービス21は、受け付けたメッセージに含まれている認証要求が、正当なAP11またはサービスコンポーネント32からのものであるかを確認する。なお、本実施形態では、後述するように暗号化されたメッセージを、あらかじめ保持している各AP11等に固有の復号鍵で復号できたときに認証を与えているが、認証方法はこれに限定されず、任意の認証法を適用することができる。
さらに、認証Webサービス21は、認証要求に含まれているセッションに関する情報をセッション情報記憶部24に格納する。
検証Webサービス22は、サインオン要求を受けた業務サーバ3,4からの問い合わせに対して、そのサインオンを認め、セッションを確立させるための所定の要件を満たすか判断をする。例えば、検証Webサービス22は、サインオン要求に係るAP11が、サインオン要求に係るサービスコンポーネント32,42に対してアクセス権限を有するかどうかを、アクセス権限記憶部23を参照して判定する。
アクセス権限記憶部23は、APが利用可能なWebサービスが登録されている。アクセス権限記憶部23は、例えば、図2に示すように、AP11の識別情報であるAP−ID231と、業務サーバの識別情報であるサーバID232と、Webサービスの識別情報であるWebサービスID233とが対応付けて記憶されている。
セッション情報記憶部24は、認証サーバ2が管理するセッション、例えば確立されているセッションおよび確立要求があったセッションに関する情報を記憶する。セッション情報記憶部24は、例えば、図3に示すように、データ項目として、セッションの識別情報であるセッションID241と、AP11が認証済みであることを示す認証ID242と、このセッションを使ってサービスの提供を受けるAP11のAP−ID243と、このセッションを使ってサービスを提供するWebサービスのサービスID244と、このセッションで用いられる暗号鍵であるセッション鍵245と、認証Webサービス21が認証を与えた認証時刻246と、この認証の有効期限247とを有する。有効期限247は、例えば、AP11セッションの確立要求があったときに、その確立要求をいつまで有効とするかを示す期限である。従って、この有効期限247が経過した後でサービスコンポーネント32、42からサインオン要求があったときは、このサインオンに係るセッションの確立は許可されない。
固有鍵記憶部25は、暗号化されたメッセージを受信したときに、それを復号するための復号鍵が記憶されている。ここに記憶されている復号鍵は、認証サーバ2と同一グループに属するすべてのユーザ端末1のAP11あるいは業務サーバ3,4のサービスコンポーネント32,42に固有な復号鍵である。例えば、固有鍵記憶部25には、APまたはサービスコンポーネントの識別情報とそれぞれの復号鍵とが対応付けて記憶されている。なお、暗号化の方式は、公開鍵暗号方式であってもよいし、秘密鍵暗号方式であってもよい。
再び図1を参照すると、業務サーバ3,4は、ユーザ端末1に対して、所定の業務に係るサービスを提供する。業務サーバ3と業務サーバ4とは、それぞれが備えているサービスコンポーネント32とサービスコンポーネント42の提供するサービスの内容が異なる以外は、同様の構成を備えている。従って、以下の業務サーバ3,4に共通する構成の説明は、まとめて行う。
業務サーバ3、4は、サインオン処理部31、41と、所定の業務処理を行うサービスコンポーネント32、42と、セッション情報記憶部33、43と、セッションインタフェース部34,44と、グループ管理テーブル35,35と、個別鍵記憶部36、46とを備える。
サインオン処理部31は、ユーザ端末1からサインオンを要求するメッセージを受け付けて、サインオンを許可するかを判定するための処理を行う。例えば、サインオン処理部31、41は、認証サーバ2へサービスコンポーネント32,42の認証を要求し、サインオン要求をしたAP11がサービスコンポーネント32、42へのアクセス権限を有するかの問い合わせるためのメッセージを生成し、送信する。
サービスコンポーネント32およびサービスコンポーネント42は、それぞれ、所定の業務サービスを提供するWebサービスである。サービスコンポーネント32およびサービスコンポーネント42は、所定のプログラムを業務サーバ3,4がそれぞれ実行することにより、各サーバ3,4上に実現される。ここで、サービスコンポーネント32が提供するサービスをサービスA,サービスコンポーネント42が提供するサービスをサービスBとする。
セッション情報記憶部33、43は、サービスコンポーネント32,42のセッションに関する情報を記憶する。例えば、認証サーバ2のセッション情報記憶部24と同様のデータ項目を有する。
セッションインタフェース部34,44は、確立されたセッションを用いたメッセージの送信および受信を行う。例えば、セッションインタフェース部34,44は、セッションを用いて送信するメッセージをセッション鍵で暗号化し、暗号化されたメッセージを受信したときはセッション鍵で復号化する。ここで、セッション鍵を用いた暗号方式は、共通の鍵で暗号化および復号化を行う秘密鍵暗号方式を用いる。しかし、暗号鍵と復号鍵が異なる公開鍵暗号方式を適用してもよい。また、セッションインタフェース部34,44は、セッション情報を共有するための処理(図6参照)を行う。
グループ管理テーブル35,35は、サービスコンポーネント32,42が属するグループの識別情報であるグループIDと、このグループに属するすべてのAPのAP−ID、およびこのグループに属するすべてのサービスコンポーネントのサービスIDとが記憶されている。
個別鍵記憶部36,46は、業務サーバ3,4に固有な暗号鍵が記憶されている。この暗号鍵は、認証サーバ2からセッション鍵を取得するためのリクエストを暗号化するために用いる。
次に、図4〜図6に示すフローチャートを用いて、本システムの詳細な処理手順について説明する。
図4は、AP11の認証を行うための処理手順の一例を示すフローチャートである。まず、ユーザ端末1では、セッション管理部12が、認証サーバ2に対してAP11の認証を要求するためのメッセージを生成する(S11)。この認証要求100には、例えば、認証後に確立するセッションを一意に識別するためのセッションID101と、この認証要求100に対する返信メッセージを暗号化するためのレスポンス用鍵102とが含まれる。
次に、セッション管理部12は、ここで生成された認証要求100を、AP11に固有な暗号鍵で暗号化する(S12)。そして、ユーザ端末1は、暗号化された認証要求100とAP−ID105とを含むメッセージを、認証サーバ2へ送信する。
認証サーバ2では、認証要求100を含むメッセージを受信すると、認証Webサービス21が暗号化されている認証要求100を復号化する(S21)。この復号化は、認証Webサービス21が、受信したメッセージに含まれているAP−ID105と対応付けて記憶されている復号鍵を個別鍵記憶部25から取得し、この復号鍵を用いて行う。
ここで復号化に成功すれば(S21:Yes)、この認証要求は正当なAP11からのものであると判断し、認証ID103を付与して認証する(S22)。一方、復号化できない場合は(S21:No)、認証サーバ2は、この認証要求に対して認証を与えないことを示すエラー通知をユーザ端末1へ返信する。
認証されたときは、認証Webサービス21は、さらに、この後で確立されるセッションで暗号化に用いられる暗号鍵(以下、セッション鍵という)104を生成する(S23)。
そして、認証Webサービス21は、認証要求に含まれていたセッションID101および認証ID103と、生成されたセッション鍵104とを含む返信用メッセージ110を生成し、認証要求に含まれていたレスポンス用鍵102で暗号化する(S24)。暗号化された返信用メッセージ110は、ユーザ端末1へ送信される。
ユーザ端末1では、セッション管理部12がこの返信用メッセージを受信し、復号化し(S13)、認証ID103およびセッション鍵104を取得する。
次に、図5は、図4に示す処理で認証を受けたAP11が、業務サーバ3のサービスコンポーネント32にサインオンするときの処理手順の一例を示すフローチャートである。
セッション管理部12は、AP11が利用したいWebサービス(ここではサービスコンポーネント32)に対するサインオン要求を生成する(S31)。このサインオン要求150には、例えば、セッションID101と、認証ID103と、このサインオン要求150に対する返信メッセージを暗号化するためのレスポンス用鍵151が含まれる。
次に、セッション管理部12は、ここで生成されたサインオン要求150を、固有か義気億部13に記憶されているAP11に固有な暗号鍵で暗号化する(S32)。そして、ユーザ端末1は、暗号化されたサインオン要求150とAP11の識別情報であるAP−ID155とを含むメッセージを、業務サーバ3へ送信する。
業務サーバ3では、サインオン要求150を含むメッセージを受信すると、サインオン処理部31が、暗号化されているサインオン要求150を復号化する(S41)。この復号化は、サインオン処理部31が、受信したメッセージ含まれているAP−ID155と対応付けて記憶されている復号鍵を個別鍵記憶部36から取得し、この復号鍵を用いて行う。
ここで復号化に成功すれば(S41:Yes)、このサインオン要求は正当なAP11からのものであると判断できる。正当なAP11からのサインオン要求であるときは、ステップS42以降の処理を行う。一方、復号化できない場合は(S41:No)、業務サーバ3は、このサインオン要求が正当なAP11からのものではないとみなし、サインオンを拒否することを通知するためのメッセージをユーザ端末1へ返信する。
正当なAP11からのサインオン要求であるとき、サインオン処理部31は、サービスコンポーネント32について、Webサーバ2による認証を得るために、サービスコンポーネント32の認証要求200を生成する(S42)。この認証要求200には、例えば、サインオン要求150を復号して得たセッションID101と、認証ID103と、この認証要求200に対する返信メッセージを暗号化するためのレスポンス用の復号鍵201とを含む。
そして、サインオン処理部31は、ここで生成された認証要求200をサービスコンポーネント32に固有な暗号鍵で暗号化する(S43)。業務サーバ3は、ここで暗号化された認証要求200とサービスコンポーネント32の識別情報であるサービスID202とを含むメッセージを、認証サーバ2へ送信する。
認証サーバ2では、認証要求200を含むメッセージを受信すると、認証Webサービス21が暗号化されている認証要求200を復号化する(S51)。この復号化は、認証Webサービス21が、受信したメッセージ含まれているサービスID202と対応付けて記憶されている復号鍵を個別鍵記憶部25から取得し、この復号鍵を用いて行う。
ここで復号化に成功すれば(S51:Yes)、この認証要求は正当なサービスコンポーネント32からのものであると判断する。そして、正当なサービスコンポーネント32からの認証要求であるときは、検証Webサービス22が、ステップS52以降の処理を行う。一方、復号化できない場合は(S51:No)、認証サーバ2は、この認証要求に対して認証を与えないことを示すエラー通知を業務サーバ3へ返信する。
正当なサービスコンポーネント32からの認証要求に対して、検証Webサービス22は、復号化された認証要求200に含まれているセッション鍵101または認証ID103に基づいて、セッション情報記憶部23を参照する。そして、サインオンを要求しているAP(ここでは、AP11)のAP−ID243を特定する。さらに、検証Webサービス22は、このAP11がサービスコンポーネント32に対してアクセスする権限を有するかどうかを、ここで特定したAP−ID243およびサービスID202に基づいてアクセス権限記憶部23を参照して判断する(S52)。このとき、検証Webサービス22は、有効期限247が経過していないか、確認してもよい。
ここで、アクセス権限があるときは(S52:Yes)、検証Webサービス22は、サインオンを許可することを通知するためのメッセージを生成する。このとき、検証Webサービス22は、セッション情報記憶部24からセッション鍵101に対応するセッション鍵245を取得し、メッセージに含める。そして、検証Webサービス22は、このメッセージをレスポンス用の復号鍵201で暗号化し、業務サーバ3へ送信する(S53)。なお、このとき、サービスID202をセッション情報記憶部24のサービスID244へ登録する。
一方、アクセス権限がないときは(S52:No)、サインオンを許可しないことを示すメッセージを業務サーバ3に対して送信する。
サインオン処理部31は、暗号化されたメッセージ(サインオン許可を示すメッセージ)を受信するとそれを復号し、セッション鍵を取得する(S44)。そして、サインオン処理部31は、ユーザ端末1のサインオン許可を示すメッセージを生成し、それをレスポンス用鍵151で暗号化する。そして、サインオン処理31は、暗号化されたメッセージをユーザ端末1に対して送信する(S45)。
なお、このときサインオン処理部31は、セッション情報記憶部33にここで取得したセッション鍵を含む、このセッションに関する情報を登録する。
ユーザ端末1は、暗号化されたメッセージ(サインオン許可を示すメッセージ)を受信するとそれを復号し、サインオン完了を確認する。
以上のような処理により、AP11とサービスコンポーネント32との間のセッションが確立する。従って、AP11とサービスコンポーネント32とは、それぞれ、このセッションを用いて、セッション鍵を使って暗号化してメッセージの送受信を行うことができる。
上述のように、AP11とサービスコンポーネント32とはセッションを確立して通信を行っている。このとき、本実施形態では、AP11が、このセッションに参加していないサービスコンポーネント42に対してサービスの提供を要求した場合であっても、サービスコンポーネント42がセッションに参加して、AP11に対して所定のサービスを提供する。以下では、図6を用いて、サービスコンポーネント42がセッションに参加するための処理手順の一例について説明する。
図6の例では、まず、業務サーバ4がユーザ端末1からメッセージ300を受信する(S61)。この受信したメッセージは、AP11とサービスコンポーネント32との間のセッションに係るメッセージである。すなわち、このメッセージ300は、セッションID301と、AP11が属しているグループの識別情報であるグループID302と、このセッションに固有なセッション鍵で暗号化されたメッセージ本文303とを含む。
ここで、セッションインタフェース部44は、グループID302に基づいて、グループ管理テーブル35を参照し、このメッセージ300が同一グループ内のAPからのものであるかを判定する(S62)。ここで、同一グループのAPからのメッセージでないときは(S62:No)、セッションインタフェース部44は、そのメッセージを破棄する。
同一グループのAPからのメッセージであるとき(S62:Yes)、セッションインタフェース部44は、セッションID301に基づいて、セッション情報記憶部43に、このセッションのセッション鍵が格納されているか確認する(S63)。
ここで、このセッションのセッション鍵がセッション情報記憶部43に格納されているときは(S63:Yes)、サービスコンポーネント42はすでにこのセッションに参加しているということであり、ステップS66へ進む。
セッション情報記憶部43にセッション鍵が格納されていないとき(S63:No)、セッションインタフェース部44は、セッション鍵を含む、このセッションに関する情報の取得要求310を生成し、業務サーバ3へ送信する(S64)。このセッション情報の取得要求310には、セッションID301とサービスコンポーネント42のサービスID311とが含まれる。
業務サーバ3では、このセッション情報の取得要求310を受信すると、セッションインタフェース部34が、セッションID301に基づいて、セッション情報記憶部33に、このセッションに関する情報が格納されているかどうかを確認する(S71)。
そして、このセッションのセッション情報があるときは(S71:Yes)、セッションインタフェース部34が、サービスID311に基づいてグループ管理テーブル35を参照し、サービスコンポーネント42が同一グループに属するかを確認する(S72)。ここで、さらに、認証サーバ2の検証Webサービス22に対して、セッションID301とサービスID311を送信してAP11がサービスコンポーネント42に対してアクセス権限を有するかの確認を要求してもよい。
サービスコンポーネント32とサービスコンポーネント42とが同一グループであるときは(S72:Yes)、このセッションに関する情報をセッションID301をキーにしてセッション情報記憶部33から取得し、業務サーバ4へ送信する(S73)。
セッションインタフェース44は、受信したセッション情報をセッション情報記憶部43へ格納する(S65)。これにより、業務サーバ4もセッション情報を共有することができる。この結果、サービスコンポーネント42は、AP11とサービスコンポーネント32との間ですでに確立されているセッションに新たに参加することができる。
セッションインタフェース部44は、取得したセッション情報に含まれているセッション鍵を用いて、メッセージ本文303を復号する(S66)。そして、サービスコンポーネント42が、復号されたメッセージ本文303に含まれている情報に基づいて所定の処理を行い、これに対する応答メッセージを生成する(S67)。この応答メッセージは、セッションインタフェース部44がセッション鍵で暗号化してユーザ端末1へ送信する(S68)。
これにより、AP11は、サービスコンポーネント42が提供するサービスの提供を受けることができる。また、これ以降、AP11は、サービスコンポーネント42のサービスを利用できる。
なお、図6の例では、業務サーバ4は、業務サーバ3からセッション情報を取得したが、認証サーバ2から取得するようにしてもよい。この場合、認証サーバ2がステップS71〜S73までの処理を行うために必要な構成を備える。
これにより、複数のサービスコンポーネント32,42が複数の業務サーバ3,4に分散しているときであっても、業務サーバ3,4は、同一のセッション情報を共有することができる。従って、ユーザは、いずれかの業務サーバへ一度サインオンすれば、同一グループ内のすべてのサービスコンポーネント(Webサービス)を自由に利用することができるようになり、シングルサインオンが実現できる。
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
例えば、上述した認証サーバ2、および業務サーバ3,4は、それら3つを纏めて一つの情報処理装置で集中的に実現することもできるし、それらのいずれか2つを一つの情報処理装置で実現することもできる。
本発明の一実施形態に係るシステムの全体構成を示す図である。 アクセス権限記憶部のデータ項目の一例を示す図である。 セッション情報記憶部のデータ項目の一例を示す図である。 AP11の認証を得るための処理手順を示すフローチャートである。 AP11がサインオンするための処理手順を示すフローチャートである。 セッションに参加していないサービスコンポーネントがセッションに参加して、サービスを提供するための処理手順を示すフローチャートである。
符号の説明
1…ユーザ端末、2…認証サーバ、3,4…業務サーバ、9…ネットワーク、11…AP、12…セッション管理部、21…認証Webサービス、22…検証Webサービス、31,41…サインオン処理部、32,42…サービスコンポーネント、34,44…セッションインタフェース

Claims (8)

  1. 一以上のアプリケーションの識別情報と、前記一以上のアプリケーションのそれぞれを認証するための情報とを対応付けて記憶した第1の記憶手段と、
    一以上のサービスコンポーネントの識別情報と、前記一以上のサービスコンポーネントのそれぞれを認証するための情報とを対応付けて記憶した第2の記憶手段と、
    あるアプリケーションから、当該アプリケーションの識別情報を含む認証要求を受け付け、前記第1の記憶手段を参照して当該アプリケーションを認証するための処理を行う手段と、
    前記アプリケーションが認証されたときは、前記アプリケーションが認証済みであることを示す認証済み情報と、暗号化および復号化に用いる鍵とを前記アプリケーションへ送信する手段と、
    あるサービスコンポーネントから、当該サービスコンポーネントの識別情報を含む認証要求を受け付け、前記第2の記憶手段を参照して当該サービスコンポーネントを認証するための処理を行う手段と、
    前記サービスコンポーネントが認証されたときは、前記アプリケーションへ送信した鍵と同一の鍵を前記サービスコンポーネントへ送信する手段と、を備える認証システム。
  2. 前記サービスコンポーネントからの認証要求には、前記アプリケーションの認証済み情報をさらに含み、
    前記認証システムは、
    一以上のアプリケーションの識別情報と、前記一以上のアプリケーションのそれぞれがアクセス可能な一以上のサービスコンポーネントの識別情報とを対応付けて記憶した第3の記憶手段と、
    前記第3の記憶手段を参照し、前記サービスコンポーネントからの認証要求に含まれる前記認証済み情報に基づいて、前記一のアプリケーションと前記一のサービスコンポーネントとが対応付けられているか判定する手段と、をさらに備え、
    前記サービスコンポーネントへ送信する手段は、前記判定により前記アプリケーションと前記サービスコンポーネントとが対応付けられているときに、前記アプリケーションへ送信した鍵と同一の鍵を送信する請求項1記載の認証システム。
  3. 前記第1の記憶手段に記憶された認証するための情報は復号鍵であり、
    前記アプリケーションからの認証要求は暗号化されていて、
    前記アプリケーションを認証するための処理は、前記暗号化されている認証要求を前記復号鍵で復号化する請求項2記載の認証システム。
  4. 前記第2の記憶手段に記憶された認証するための情報は復号鍵であり、
    前記サービスコンポーネントからの認証要求は暗号化されていて、
    前記サービスコンポーネントを認証するための処理は、前記暗号化されている認証要求を前記復号鍵で復号化する請求項1記載の認証システム。
  5. 前記アプリケーションの認証の有効期限を示す情報を記憶した第3の記憶手段と、
    前記サービスコンポーネントからの認証要求を受けたときに、前記第3の記憶手段を参照して有効期限が経過しているかを確認する手段とをさらに備え、
    前記サービスコンポーネントを認証するための処理を行う手段は、前記サービスコンポーネントからの認証要求が前記有効期限を経過していないときに処理を行う請求項1記載の認証システム。
  6. 一以上のアプリケーションの識別情報と、前記一以上のアプリケーションのそれぞれを認証するための情報とを対応付けて、第1の記憶手段に格納し、
    一以上のサービスコンポーネントの識別情報と、前記一以上のサービスコンポーネントのそれぞれを認証するための情報とを対応付けて、第2の記憶手段に格納し、
    あるアプリケーションから、当該アプリケーションの識別情報を含む認証要求を受け付け、前記第1の記憶手段を参照して当該アプリケーションを認証するための処理を行い、
    前記アプリケーションが認証されたときは、前記アプリケーションが認証済みであることを示す認証済み情報と、暗号化および復号化に用いる鍵とを前記アプリケーションへ送信し、
    あるサービスコンポーネントから、当該サービスコンポーネントの識別情報を含む認証要求を受け付け、前記第2の記憶手段を参照して当該サービスコンポーネントを認証するための処理を行い、
    前記サービスコンポーネントが認証されたときは、前記アプリケーションへ送信した鍵と同一の鍵を前記サービスコンポーネントへ送信する、アプリケーションおよびサービスコンポーネントの認証方法。
  7. コンピュータに実行されると、
    一以上のアプリケーションの識別情報と、前記一以上のアプリケーションのそれぞれを認証するための情報とを対応付けて、第1の記憶手段に格納し、
    一以上のサービスコンポーネントの識別情報と、前記一以上のサービスコンポーネントのそれぞれを認証するための情報とを対応付けて、第2の記憶手段に格納し、
    あるアプリケーションから、当該アプリケーションの識別情報を含む認証要求を受け付け、前記第1の記憶手段を参照して当該アプリケーションを認証するための処理を行い、
    前記アプリケーションが認証されたときは、前記アプリケーションが認証済みであることを示す認証済み情報と、暗号化および復号化に用いる鍵とを前記アプリケーションへ送信し、
    あるサービスコンポーネントから、当該サービスコンポーネントの識別情報を含む認証要求を受け付け、前記第2の記憶手段を参照して当該サービスコンポーネントを認証するための処理を行い、
    前記サービスコンポーネントが認証されたときは、前記アプリケーションへ送信した鍵と同一の鍵を前記サービスコンポーネントへ送信する、アプリケーションおよびサービスコンポーネントの認証のためのコンピュータプログラム。
  8. 前記アプリケーションの認証の有効期限を示す情報を記憶した記憶手段と、
    前記サービスコンポーネントからの認証要求を受けたとき、前記アプリケーションを認証した時から所定の期間が経過していないときに、前記第2の記憶手段を参照して当該サービスコンポーネントを認証するための処理を行い、前記所定の期間が経過していたときは、前記サービスコンポーネントを認証するための処理を行わない、請求項7記載のコンピュータプログラム。
JP2003315625A 2003-09-08 2003-09-08 認証を得て暗号通信を行う方法、認証システムおよび方法 Expired - Fee Related JP3914193B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003315625A JP3914193B2 (ja) 2003-09-08 2003-09-08 認証を得て暗号通信を行う方法、認証システムおよび方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003315625A JP3914193B2 (ja) 2003-09-08 2003-09-08 認証を得て暗号通信を行う方法、認証システムおよび方法

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2006298369A Division JP2007043750A (ja) 2006-11-02 2006-11-02 認証を得て暗号通信を行う方法、認証システムおよび方法
JP2006298370A Division JP2007074745A (ja) 2006-11-02 2006-11-02 認証を得て暗号通信を行う方法、認証システムおよび方法

Publications (2)

Publication Number Publication Date
JP2005086428A JP2005086428A (ja) 2005-03-31
JP3914193B2 true JP3914193B2 (ja) 2007-05-16

Family

ID=34415828

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003315625A Expired - Fee Related JP3914193B2 (ja) 2003-09-08 2003-09-08 認証を得て暗号通信を行う方法、認証システムおよび方法

Country Status (1)

Country Link
JP (1) JP3914193B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007140975A (ja) * 2005-11-18 2007-06-07 Ntt Communications Kk サービス提供システム、連携情報提供サーバ、認証サーバ、サービス提供サーバ、サービス提供方法、およびプログラム
US8788807B2 (en) 2006-01-13 2014-07-22 Qualcomm Incorporated Privacy protection in communication systems
JP4990560B2 (ja) * 2006-06-01 2012-08-01 株式会社三菱東京Ufj銀行 電子署名検証システム
GB2468337C (en) * 2009-03-04 2014-08-20 Michael Ian Hawkes Method and apparatus for securing network communications
JPWO2011114536A1 (ja) * 2010-03-19 2013-06-27 あすなろ株式会社 サービス仲介システム
EP2369808A1 (en) * 2010-03-22 2011-09-28 Thomson Telecom Belgium Method of securing access to data or a service that is accessible via a device implementing the method and corresponding device
US8918853B2 (en) * 2011-06-29 2014-12-23 Sharp Laboratories Of America, Inc. Method and system for automatic recovery from lost security token on embedded device
JP6904183B2 (ja) 2017-09-12 2021-07-14 富士通株式会社 情報処理装置、プログラム及び情報処理方法

Also Published As

Publication number Publication date
JP2005086428A (ja) 2005-03-31

Similar Documents

Publication Publication Date Title
CA2463034C (en) Method and system for providing client privacy when requesting content from a public server
CN100580657C (zh) 分布式单一注册服务
US8413221B2 (en) Methods and apparatus for delegated authentication
US11134069B2 (en) Method for authorizing access and apparatus using the method
CN1701561B (zh) 基于地址的验证系统及其装置和程序
JP4674044B2 (ja) クライアントが許可を検証できるキー管理プロトコルを設けるためのシステムおよび方法
US20060126848A1 (en) Key authentication/service system and method using one-time authentication code
US20100024013A1 (en) Authenticating a Client Using Linked Authentication Credentials
JP2005102163A (ja) 機器認証システム、機器認証サーバ、端末機器、機器認証方法、機器認証プログラム、及び記憶媒体
JP2009086802A (ja) 認証仲介方法およびシステム
US7975293B2 (en) Authentication system, authentication method and terminal device
JP2001186122A (ja) 認証システム及び認証方法
JP3914193B2 (ja) 認証を得て暗号通信を行う方法、認証システムおよび方法
JP2007074745A (ja) 認証を得て暗号通信を行う方法、認証システムおよび方法
JP4499575B2 (ja) ネットワークセキュリティ方法およびネットワークセキュリティシステム
CN112035820B (zh) 一种用于Kerberos加密环境下的数据解析方法
JP2007043750A (ja) 認証を得て暗号通信を行う方法、認証システムおよび方法
JPH08335207A (ja) ネットワークユーザ認証方法
KR100883899B1 (ko) 스마트 카드를 이용한 삼자간 키 교환 방법, 그 기록 매체및 스마트 카드를 이용한 삼자간 키 교환 시스템
Rogers Introducing Orthus, a Dual Headed Authentication Protocol
FI115097B (fi) Todentaminen dataviestinnässä
KR101510473B1 (ko) 컨텐츠 제공자에 제공되는 회원 정보의 보안을 강화한 인증방법 및 시스템

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061102

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: 20070109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070201

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110209

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120209

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130209

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130209

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140209

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees