JP2010152690A - Information providing apparatus, information providing portal system, information providing method and information providing program - Google Patents

Information providing apparatus, information providing portal system, information providing method and information providing program Download PDF

Info

Publication number
JP2010152690A
JP2010152690A JP2008330742A JP2008330742A JP2010152690A JP 2010152690 A JP2010152690 A JP 2010152690A JP 2008330742 A JP2008330742 A JP 2008330742A JP 2008330742 A JP2008330742 A JP 2008330742A JP 2010152690 A JP2010152690 A JP 2010152690A
Authority
JP
Japan
Prior art keywords
information
session
service module
service
information providing
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.)
Pending
Application number
JP2008330742A
Other languages
Japanese (ja)
Inventor
Wafu Ueno
和風 上野
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2008330742A priority Critical patent/JP2010152690A/en
Publication of JP2010152690A publication Critical patent/JP2010152690A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an information providing apparatus, an information providing method and an information providing program that prevent users from manipulating data and reduce processing loads on user devices and the information providing apparatus. <P>SOLUTION: The information providing apparatus is configured to store policy information about each service module, generate a main session ID and a service session ID when connecting the information providing apparatus with a user device, verify whether a service session ID included in request information from the user device is valid on the basis of information in a session information storage part, refer to an identification information storage part for a service module name included in the request information to acquire identification information about the corresponding service module, and call and execute the service module according to the session information corresponding to the service session ID and the identification information. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、利用者のリクエストに対して、返答する情報提供装置、情報提供ポータルシステム、情報提供方法及び情報提供プログラムに関する。   The present invention relates to an information providing apparatus, an information providing portal system, an information providing method, and an information providing program that respond to a user's request.

利用者装置のリクエストに対して、返答する情報提供装置としては例えばwebサーバ等が、利用者装置としては例えばwebブラウザ等が、提供される情報としてはwebページ等がある。   For example, a web server or the like is an example of an information providing device that responds to a request from a user device, a web browser or the like is an example of a user device, and a web page is an example of provided information.

webサーバは、HTML文書や画像などの情報を蓄積しておき、webブラウザのリクエストに応じて、インターネットなどのネットワークを通じて、これらの情報を送信する。これは、以下のような手順により行われる。   The web server accumulates information such as HTML documents and images, and transmits such information through a network such as the Internet in response to a request from the web browser. This is performed according to the following procedure.

利用者がwebブラウザ上でURL(Uniform Resource Locator)を指定する。なお、URLとは、インターネット上に存在する情報資源(文書や画像など)の場所を指し示す記述方式であり、情報の種類やサーバ名、ポート番号、フォルダ名、ファイル名などで構成される(例えば、「www.test01.example02.com/sample03/index.html」等)。webブラウザは、URLからドメインを抽出する。なお、ドメインとは、インターネット上に存在するコンピュータやネットワークにおける共通して管理される領域を意味し、その識別子をドメイン名(例えば、「www.test01.example02.com」等)という。webブラウザは、抽出したドメインにリクエスト情報を送信する。なお、リクエスト情報とは、メソッド、URL、要求するデータ等を含んだ情報である。   A user specifies a URL (Uniform Resource Locator) on a web browser. The URL is a description method that indicates the location of information resources (documents, images, etc.) existing on the Internet, and is composed of information type, server name, port number, folder name, file name, etc. (for example, , “Www.test01.example02.com/sample03/index.html”). The web browser extracts the domain from the URL. The domain means a commonly managed area in a computer or network existing on the Internet, and the identifier is called a domain name (for example, “www.test01.example02.com” or the like). The web browser transmits request information to the extracted domain. The request information is information including a method, URL, requested data, and the like.

webサーバは、動的にwebページを生成し、レスポンス情報をwebブラウザに送信する。なお、レスポンス情報とは、ステータス・コードやレスポンス・フレーズ、応答するデータ等を含む情報である。なお、webページは、表示を担当するHTMLの部分と、実行可能なJava(登録商標)script等のwebブラウザ上で稼動するスクリプトの部分から構成されてもよい。なお、スクリプトは、他のwebページの情報にアクセスできる。但し、アクセスできる範囲は、同じドメインから配信されたwebページに限定される。この限定は、Same Origin Policyと呼ばれる。つまり、ドメイン「www.test01.example02.com」のwebページは、同一ドメイン内のwebページにはアクセスできるが、異なるドメイン「www.test02.example02.com」内のwebページにアクセスすることはできない。   The web server dynamically generates a web page and sends response information to the web browser. The response information is information including a status code, a response phrase, response data, and the like. The web page may be composed of an HTML portion in charge of display and a script portion that runs on a web browser such as an executable Java (registered trademark) script. The script can access information on other web pages. However, the accessible range is limited to web pages distributed from the same domain. This limitation is called Same Origin Policy. In other words, a web page in the domain “www.test01.example02.com” can access a web page in the same domain, but cannot access a web page in a different domain “www.test02.example02.com”. .

利用者のwebページ間の挙動を追跡し、webページが異なるドメイン間でもアクセスすることを可能にする方法として、セッションIDを利用する方法がある。なお、セッションとは、一連の通信のことを意味し、例えば、接続を確立してから切断するまでが一つのセッションとすることもできる。セッションIDとは、このセッションを一意に特定する識別子のことを意味する。また、セッションIDは、利用者とサービス提供者以外の第三者が推測できない情報を利用する。セッションIDの発行手順は以下の通りである。webサーバがリクエスト情報を送信した利用者の正当性を検証する。正当性が認められれば(認証)、webサーバは、利用者に対してセッションIDを生成し、割り当てる。さらに、webサーバは、利用者とセッションIDを記憶部に記憶する。webサーバは、webブラウザに対して、「ドメイン・URLのパス・プロトコルが指定と一致するページを有効期限内に訪れる際には、必ずこのセッションIDをリクエスト情報に含めよ」という指示をレスポンス情報に含める。以降、webサーバは、リクエスト情報に含まれるセッションIDを用いて一連の通信を識別することができる。   There is a method of using a session ID as a method for tracking a user's behavior between web pages and allowing the web pages to be accessed even between different domains. Note that a session means a series of communications, and for example, a period from establishment of a connection to disconnection may be one session. The session ID means an identifier that uniquely identifies this session. The session ID uses information that cannot be guessed by a third party other than the user and the service provider. The session ID issuance procedure is as follows. The web server verifies the legitimacy of the user who sent the request information. If the validity is recognized (authentication), the web server generates and assigns a session ID to the user. Further, the web server stores the user and the session ID in the storage unit. The web server responds to the web browser by instructing the response information to “include this session ID in the request information when visiting a page whose domain / URL path / protocol matches the specification within the validity period”. Include in Thereafter, the web server can identify a series of communications using the session ID included in the request information.

ここで、主モジュールと複数のサービスモジュールから構成され、情報を提供するポータルについて考える。なお、サービスモジュールは、webサーバが提供する情報の少なくとも一部を提供する。ポータルは、サービスモジュールを追加、削除することで機能を容易に変更することができる。例えば、利用者の要望に応じてサービスモジュールを追加することなどが考えられる。このような場合には、複数のサービスモジュールは、一つのセッションIDを共有する。この場合には、Same Origin Policyにかかわらず、webページは異なるドメインに存在する他のwebページにもアクセスが可能となる。   Here, consider a portal that is composed of a main module and a plurality of service modules and provides information. The service module provides at least part of information provided by the web server. The portal can easily change its function by adding or deleting service modules. For example, it is conceivable to add a service module according to the user's request. In such a case, the plurality of service modules share one session ID. In this case, regardless of the Same Origin Policy, the web page can also access other web pages existing in different domains.

しかし、一般的に、開発費の大小や開発者の技術レベルの差異によりサービスモジュールは主モジュールに比べて、セキュリティホールが存在する可能性が高い。一つのセッションIDを共有する場合には、複数のサービスモジュールの内の一つのサービスモジュールに欠陥があれば、攻撃者にセッションIDを盗難され、利用者になりすまされ、ポータル全体に被害が及ぶ可能性がある。   However, in general, the service module is more likely to have a security hole than the main module due to the difference in the development cost and the technical level of the developer. When sharing one session ID, if one of the service modules is defective, the attacker can steal the session ID, impersonate the user, and damage the entire portal. there is a possibility.

非特許文献1記載の技術は、1ドメインに1サービスモジュールが対応するという構成である。なお、以下、サービスモジュールが対応する個別のドメインのことをサービスドメインという。セッションIDは、サービスモジュール毎に個別のIDを利用する。このような構成とすることで、上記、ポータル全体に被害が及ばないようにしている。各サービスモジュールは、Same Origin Policyにより、ドメインが異なる他のサービスモジュールにアクセスできない。なお、Same Origin Policyを用いず、セッションIDが異なっても、他のドメインに対しアクセスできる構成とすることは、従来技術同様、ポータル全体に被害が及ぶ可能性がある。そこで非特許文献1記載の技術では、サービスモジュール間のデータの通信は利用者のwebブラウザ上で実行されるスクリプトを利用し、利用者装置を経由して行う。
Collin Jackson, Helen J. Wang," Subspace: Secure Cross-Domain Communication for Web Mashups", [on line], May 8-12 2007, the International World Wide Web Conference Committee (IW3C2), Banff, Alberta, Canada,[平成2008年12月9日検索], インターネット< http://www2007.org/papers/paper801.pdf >
The technology described in Non-Patent Document 1 has a configuration in which one service module corresponds to one domain. Hereinafter, an individual domain corresponding to a service module is referred to as a service domain. The session ID uses an individual ID for each service module. By adopting such a configuration, damage to the entire portal is prevented. Each service module cannot access other service modules in different domains according to Same Origin Policy. In addition, even if the session ID is different and the same origin policy is not used, it is possible that damage to the entire portal is caused as in the case of the prior art, if the configuration allows access to other domains. Therefore, in the technology described in Non-Patent Document 1, data communication between service modules is performed via a user device using a script executed on the user's web browser.
Collin Jackson, Helen J. Wang, "Subspace: Secure Cross-Domain Communication for Web Mashups", [on line], May 8-12 2007, the International World Wide Web Conference Committee (IW3C2), Banff, Alberta, Canada, [ Retrieved on December 9, 2008], Internet <http://www2007.org/papers/paper801.pdf>

しかし、非特許文献1記載の技術では、データが利用者の利用者装置(例えば、「webブラウザ」等)を経由するため、利用者によるデータの改竄の可能性があるという問題がある。また、各サービスモジュールは、他のサービスモジュールからデータを取得したい場合には、他のサービスモジュールを起動し、スクリプトによって情報を共有しなければならないため、webサーバ及びwebブラウザに対する処理上の負荷が増大するという問題がある。また、通信量が増大するという問題がある。   However, the technique described in Non-Patent Document 1 has a problem that data may be falsified by the user because the data passes through the user device (for example, “web browser”). In addition, when each service module wants to acquire data from another service module, it must start the other service module and share information by a script, so that the processing load on the web server and web browser is increased. There is a problem of increasing. There is also a problem that the amount of communication increases.

本発明は、セキュリティを高めたまま、スクリプトを利用せずにサービスモジュール間のデータ通信を行い、利用者によるデータの改竄を防ぎ、利用者装置及び情報提供装置に対する処理上の負荷を軽減する情報提供装置、情報提供方法及び情報提供プログラムを提供することを目的とする。   The present invention performs information communication between service modules without using a script while enhancing security, prevents falsification of data by a user, and reduces processing load on the user device and the information providing device. An object is to provide a providing device, an information providing method, and an information providing program.

本発明の情報提供技術は、サービスモジュールに対する利用者装置のリクエストに返答し、情報提供装置のドメインとサービスモジュールの少なくとも一部のドメインとが異なり、サービスモジュール名とサービスモジュールの識別情報を記憶し、各サービスモジュール名とそのサービスモジュールの権限をポリシー情報として記憶し、利用者装置と情報提供装置間において接続を確立する際に、その接続を一意に識別する主セッションID、及び、利用者装置と各サービスモジュールとの接続を一意に識別するサービスセッションIDを生成し、主セッションIDから得ることができる値、サービスセッションIDから得ることができる値及び対応するポリシー情報をセッション情報として記憶し、利用者装置からのリクエスト情報に含まれるサービスセッションIDの有効性をセッション情報記憶部の情報を用いて検証し、リクエスト情報に含まれるサービスモジュール名を用いて、識別情報記憶部を参照して対応するサービスモジュールの識別情報を取得し、サービスセッションIDに対応付けられるセッション情報と識別情報を用いて、サービスモジュールを呼び出し、実行し、ポリシーに従って情報提供装置が提供する情報の少なくとも一部を提供する。   The information providing technology of the present invention responds to a request of a user device for a service module, and the domain of the information providing device is different from at least a part of the domain of the service module, and stores the service module name and the service module identification information. The main session ID that stores the name of each service module and the authority of the service module as policy information, and uniquely identifies the connection when establishing a connection between the user device and the information providing device, and the user device A service session ID for uniquely identifying the connection between the service module and each service module, storing a value obtainable from the main session ID, a value obtainable from the service session ID, and corresponding policy information as session information, Included in request information from user devices The validity of the service session ID is verified using the information in the session information storage unit, and the identification information of the corresponding service module is obtained by referring to the identification information storage unit using the service module name included in the request information. The service module is called and executed using the session information and identification information associated with the service session ID, and at least a part of the information provided by the information providing apparatus is provided according to the policy.

本発明の情報提供装置及び情報提供方法によれば、スクリプトを利用せずにサービスモジュール間のデータ通信を行うことができるため、利用者による改竄を防止できる。また、利用者装置及び情報提供装置の処理上の負荷を軽減できる。また、通信量を軽減することができる。   According to the information providing apparatus and the information providing method of the present invention, data communication between service modules can be performed without using a script, so that falsification by a user can be prevented. In addition, the processing load on the user device and the information providing device can be reduced. In addition, the amount of communication can be reduced.

ここで、本発明の実施例について説明する。   Here, examples of the present invention will be described.

[情報提供ポータルシステム10]
図1は、利用者装置3と情報提供ポータルシステム10の関係を示す。図2は、情報提供ポータルシステム10の構成例を示す。情報提供ポータルシステム10は、主モジュール100と、一つ以上のサービスモジュール200n(1≦n≦N)から構成され、利用者装置3(例えば、webブラウザ等)の求めに応じて、ネットワーク5(例えば、LANやインターネット等)を介して、情報を提供するシステムである。なお、利用者装置3は、webブラウザ等を意味してもよいし、それを実装するコンピュータ等を意味してもよい。主モジュール100は、情報提供ポータルシステムが情報を提供するために必要となるモジュールである。詳細は後述する。
[Information provision portal system 10]
FIG. 1 shows the relationship between the user device 3 and the information providing portal system 10. FIG. 2 shows a configuration example of the information providing portal system 10. The information providing portal system 10 is composed of a main module 100 and one or more service modules 200n (1 ≦ n ≦ N), and in response to a request from a user device 3 (for example, a web browser), a network 5 ( For example, it is a system that provides information via a LAN or the Internet. The user device 3 may mean a web browser or the like, or a computer or the like that implements it. The main module 100 is a module necessary for the information providing portal system to provide information. Details will be described later.

<サービスモジュール200n>
サービスモジュール200nは、情報提供装置1が提供する情報の少なくとも一部を提供する。例えば、主モジュール100の実行部160に呼び出され、実行部160において実行され、情報提供装置の提供するwebページの一部を作成する。
<Service module 200n>
The service module 200n provides at least a part of the information provided by the information providing apparatus 1. For example, it is called by the execution unit 160 of the main module 100 and executed by the execution unit 160 to create a part of a web page provided by the information providing apparatus.

主モジュール100は、情報提供ポータルシステム10を構成する情報提供装置1上に実装される。なお、主モジュールが実装される情報提供装置100も、情報提供ポータルシステム10の一部を構成する。サービスモジュール200nは、主モジュール100と同じドメイン上に実装されてもよいし(例えば、サービスモジュール2001及び2002)、主モジュール100と異なるドメイン上に実装されてもよい(例えば、サービスモジュール2005)。なお、全てのサービスモジュールが、主モジュールと異なるドメインに実装されてもよい。以下、主モジュールが実装されるドメインを「主ドメイン」、サービスモジュールが実装されるドメインを「サービスドメイン」という。よって、主ドメインと各サービスドメインは同一ドメインの場合もあれば、異なるドメインの場合もある。但し、主ドメインとサービスドメインの少なくとも一部は異なる。このとき、Same Origin Policyにより、異なるドメイン内のモジュールは、スクリプトを利用して、互いにアクセスすることはできない。例えば、各サービスモジュール200nは図示しない記憶部208n等を有してもよく、利用者の個人情報等を各記憶部208nに記憶してもよい。異なるドメイン内のモジュールは、スクリプトを利用して、他の記憶部にアクセスすることはできないため、個人情報等を安全に管理することができる。サービスドメインを管理するDNS(Domain Name System)サーバには、サービスドメインに対応するIPアドレスとして情報提供装置1のIPアドレスが登録されている。このような構成とすることで、サービスドメインにアクセスしようとした利用者装置3は、情報提供装置1にアクセスする。   The main module 100 is mounted on the information providing apparatus 1 constituting the information providing portal system 10. Note that the information providing apparatus 100 on which the main module is mounted also constitutes a part of the information providing portal system 10. The service module 200n may be mounted on the same domain as the main module 100 (for example, service modules 2001 and 2002), or may be mounted on a different domain from the main module 100 (for example, service module 2005). Note that all service modules may be mounted in a different domain from the main module. Hereinafter, the domain in which the main module is mounted is referred to as “main domain”, and the domain in which the service module is mounted is referred to as “service domain”. Therefore, the main domain and each service domain may be the same domain or different domains. However, at least a part of the main domain and the service domain are different. At this time, modules in different domains cannot access each other using a script according to Same Origin Policy. For example, each service module 200n may have a storage unit 208n (not shown) or the like, and may store user personal information or the like in each storage unit 208n. Modules in different domains cannot access other storage units using a script, so that personal information and the like can be managed safely. In a DNS (Domain Name System) server that manages a service domain, the IP address of the information providing apparatus 1 is registered as an IP address corresponding to the service domain. With such a configuration, the user device 3 trying to access the service domain accesses the information providing device 1.

[情報提供装置1]
図3は、情報提供装置1の処理フロー例を示す。情報提供装置1は、通信部7、記憶部8、制御部9、主モジュール100及びサービスモジュール200nを有する。主モジュール100は、識別情報記憶部105、認証部110、ポリシー記憶部120、生成部130、セッション情報記憶部140、検証部150、実行部160を備える。
なお、本実施例は発明の内容を限定するものではない。例えば、サービスモジュール200nを設けなくともよく、外部のサービスモジュールのみを用いてもよい。
[Information providing apparatus 1]
FIG. 3 shows an example of the processing flow of the information providing apparatus 1. The information providing apparatus 1 includes a communication unit 7, a storage unit 8, a control unit 9, a main module 100, and a service module 200n. The main module 100 includes an identification information storage unit 105, an authentication unit 110, a policy storage unit 120, a generation unit 130, a session information storage unit 140, a verification unit 150, and an execution unit 160.
Note that this embodiment does not limit the content of the invention. For example, the service module 200n may not be provided, and only an external service module may be used.

<通信部7、記憶部8及び制御部9>
情報提供装置1は、利用者装置3からリクエスト情報が送信されるのを待つ(s1)。利用者装置3からリクエスト情報が送信されると、情報提供装置1は、ネットワーク5及び通信部7を介して、利用者装置3からのリクエスト情報を受信する(s7)。以下、特に記述しなくとも、情報提供装置1及び利用者装置3と通信する際には、通信部7を介して行われるものとする。通信部7は、例えば、LANアダプタ等により構成され、LANやインターネット等からなるネットワーク5と接続される。
<Communication unit 7, storage unit 8 and control unit 9>
The information providing apparatus 1 waits for request information to be transmitted from the user apparatus 3 (s1). When the request information is transmitted from the user device 3, the information providing device 1 receives the request information from the user device 3 via the network 5 and the communication unit 7 (s7). Hereinafter, it is assumed that the communication with the information providing apparatus 1 and the user apparatus 3 is performed via the communication unit 7 even if not specifically described. The communication unit 7 is configured by, for example, a LAN adapter or the like, and is connected to a network 5 including a LAN, the Internet, or the like.

記憶部8は、受信したリクエスト情報を一時的に記憶してもよい。以下、特に示さない限り、入出力される各データや演算過程の各データは、逐一、記憶部8に格納・読み出され、各演算処理が進められる。但し、必ずしも記憶部8に記憶しなければならないわけではなく、各部間で直接データを受け渡してもよい。なお、後述するポリシー記憶部120及びセッション情報記憶部140は、記憶部9の一部として設けてもよいし、別に設けてもよい。   The storage unit 8 may temporarily store the received request information. Hereinafter, unless otherwise indicated, each input / output data and each data in the calculation process are stored / read out in the storage unit 8 one by one, and each calculation process proceeds. However, it is not always necessary to store the data in the storage unit 8, and data may be directly transferred between the units. Note that a policy storage unit 120 and a session information storage unit 140, which will be described later, may be provided as a part of the storage unit 9, or may be provided separately.

制御部9は、情報提供装置1において、各処理を制御、実行する。例えば、通信部7を介して、リクエスト情報を受信した際に、制御部9は、主モジュール100を起動させてもよい。   The control unit 9 controls and executes each process in the information providing apparatus 1. For example, when the request information is received via the communication unit 7, the control unit 9 may activate the main module 100.

検証部150は、利用者装置3からのリクエスト情報にサービスセッションIDが含まれるか否か検証する。初めてのアクセスの際には、サービスセッションIDはリクエスト情報に含まれないため、情報を提供する前に処理を認証部110に移す。サービスセッションIDがリクエスト情報に含まれる場合の処理については、後述する。   The verification unit 150 verifies whether the service session ID is included in the request information from the user device 3. In the first access, since the service session ID is not included in the request information, the processing is transferred to the authentication unit 110 before providing the information. Processing when the service session ID is included in the request information will be described later.

<識別情報記憶部105>
識別情報記憶部105は、予め各サービスモジュールの識別子(例えば、各サービスモジュールのURL等。以下、「サービスモジュール名」という)とサービスモジュールの識別情報を記憶しておく。図4は、識別情報記憶部105に記憶されるデータ例を示す。例えば、識別情報としては、IPアドレス等が考えられる。他にMACアドレス等、サービスモジュールが実装される機器(サーバ等)を識別できる情報であればよい。例えば、図4の2行目、3行目のドメインは「module2.portal.com」であり、同一である。このように一つのサービスドメインに複数のサービスモジュールや識別情報が対応してもよい。また、3行目、4行目の識別情報は、「192.168.200.△△△」であり、同一である。このように一つ識別情報に複数のサービスドメインやサービスモジュールが対応してもよい。
<Identification information storage unit 105>
The identification information storage unit 105 stores in advance an identifier of each service module (for example, the URL of each service module, etc., hereinafter referred to as “service module name”) and service module identification information. FIG. 4 shows an example of data stored in the identification information storage unit 105. For example, an IP address or the like can be considered as the identification information. Any other information such as a MAC address may be used as long as it can identify a device (such as a server) on which the service module is mounted. For example, the domains in the second and third lines in FIG. 4 are “module2.portal.com” and are the same. In this way, a plurality of service modules and identification information may correspond to one service domain. The identification information on the third and fourth lines is “192.168.200.ΔΔΔ”, which is the same. Thus, a plurality of service domains and service modules may correspond to one identification information.

<認証部110>
図5は、認証部110の処理フロー例を示す。認証部110は、利用者を認証する(s110)。例えば、リクエスト情報を送信した利用者装置3に対し、認証情報を要求する(s112)。認証情報としては、例えば、利用者IDとパスワード、指紋情報等の生体認証に用いる認証情報が考えられる。利用者装置3は、認証情報を情報提供装置1へ送信する。認証部110は、認証情報を受信し(s114)、図示していない認証情報データベース等を参照し、利用者装置3の正当性を確認する(s116)。正当性が確認できない場合には、エラーを出力する(s117)。また、利用者装置3の要求を拒否してもよいし、再度認証情報を要求してもよい。正当性が確認できる場合には、生成部130に処理を移す(s118)。
<Authentication unit 110>
FIG. 5 shows a processing flow example of the authentication unit 110. The authentication unit 110 authenticates the user (s110). For example, authentication information is requested to the user apparatus 3 that transmitted the request information (s112). As the authentication information, for example, authentication information used for biometric authentication such as a user ID, a password, and fingerprint information can be considered. The user device 3 transmits authentication information to the information providing device 1. The authentication unit 110 receives the authentication information (s114), refers to an authentication information database (not shown), etc., and confirms the validity of the user device 3 (s116). If the validity cannot be confirmed, an error is output (s117). Further, the request from the user device 3 may be rejected, or the authentication information may be requested again. If the validity can be confirmed, the process proceeds to the generation unit 130 (s118).

なお、非特許文献1記載の技術を用いて、利用者を認証する場合には、各サービスモジュールに利用者装置がアクセスする際に、各サービスモジュールにより認証を行う必要があり、処理量及び通信量が増大する。また、前述の通り、サービスモジュールは主モジュールに比べて、セキュリティホールが存在する可能性が高く、攻撃者に狙われやすい。主モジュールに認証部110を有することによって、集中管理することによりセキュリティを高めることができる。また、認証を一括することにより処理量及び通信量を軽減することができる。   In addition, when authenticating a user using the technology described in Non-Patent Document 1, when a user apparatus accesses each service module, it is necessary to perform authentication by each service module, and the processing amount and communication The amount increases. Further, as described above, the service module is more likely to have a security hole than the main module, and is easily targeted by an attacker. By having the authentication unit 110 in the main module, security can be enhanced by centralized management. In addition, the amount of processing and the amount of communication can be reduced by performing authentication collectively.

なお、本実施例は発明の内容を限定するものではない。必ずしも認証部110は、認証情報を要求せずともよい。例えば、リクエスト情報を受信した際に得られる送信元IPアドレス等によって認証してもよい。この場合、上記「利用者」とは、必ずしも「利用者自身」を意味せずともよく、例えば、「利用者装置」を意味してもよい。また、例えば、利用者装置の正当性を確認する必要がない場合には、認証部110を設けなくともよい。   Note that this embodiment does not limit the content of the invention. The authentication unit 110 does not necessarily request authentication information. For example, authentication may be performed using a source IP address obtained when request information is received. In this case, the “user” does not necessarily mean “user itself”, and may mean “user device”, for example. Further, for example, if it is not necessary to confirm the validity of the user device, the authentication unit 110 may not be provided.

<ポリシー記憶部120>
ポリシー記憶部120は、サービスモジュール名とそのサービスモジュールの権限をポリシー情報として予め記憶しておく。図6は、ポリシー記憶部120に記憶されるデータ例を示す。権限としては、アクセスできる範囲や処理内容等がある。例えば、図6に沿って説明すると、サービスモジュール「module1.portal.com」は、サービスモジュール「module2.portal.com」に対して、書込みをする権限を有していることを意味する。また、例えば、アクセスできる範囲には、サービスモジュールだけではなく、サービスモジュールの有するデータ項目まで、範囲を限定することも可能である。例えば、主モジュールは、あるサービスモジュール200nからデータ項目「年齢」だけを「読込み」をすることができるといった構成とすることも可能である。
<Policy storage unit 120>
The policy storage unit 120 stores in advance the service module name and the authority of the service module as policy information. FIG. 6 shows an example of data stored in the policy storage unit 120. The authority includes an accessible range and processing contents. For example, referring to FIG. 6, this means that the service module “module1.portal.com” has the authority to write to the service module “module2.portal.com”. Further, for example, the accessible range can be limited not only to the service module but also to the data items of the service module. For example, the main module may be configured to “read” only the data item “age” from a certain service module 200n.

<生成部130>
図7は、生成部130の処理フロー例を示す。生成部130は、利用者装置3と情報提供装置1間において接続を確立する際に、その接続を一意に識別する主セッションID、及び、利用者装置3と各サービスモジュール200nとの接続を一意に識別するサービスセッションIDを生成する(s130)。例えば、生成部130は、リクエスト情報から用いるサービスモジュール名を特定し(s131)、対応する主セッションID及びサービスセッションIDを生成し(s133)、さらに、ポリシー記憶部120を参照し、特定したサービスモジュール名に対応するポリシー情報を取得し(s135)、主セッションIDから得ることができる値、サービスセッションIDから得ることができる値及びポリシー情報をセッション情報記憶部140に出力する(s137)。なお、以下、主セッションIDから得ることができる値、サービスセッションIDから得ることができる値及びこれに対応するポリシー情報を併せてセッション情報という。なお、主セッションIDから得ることができる値、サービスセッションIDから得ることができる値とは、主セッションID、サービスセッションID自体であってもよいし、そこから得ることができる値であってもよい。例えば、主セッションID、サービスセッションIDから得ることができるハッシュ値や暗号処理した値等が考えられる。サービスセッションIDは、サービスモジュール間で、共有させないため、非特許文献同様、ポータル全体に被害が及ぶことはない。
<Generator 130>
FIG. 7 shows a processing flow example of the generation unit 130. When establishing a connection between the user device 3 and the information providing device 1, the generation unit 130 uniquely identifies the main session ID for uniquely identifying the connection, and the connection between the user device 3 and each service module 200n. A service session ID to be identified is generated (s130). For example, the generation unit 130 specifies a service module name to be used from the request information (s131), generates a corresponding main session ID and service session ID (s133), and further refers to the policy storage unit 120 to specify the specified service Policy information corresponding to the module name is acquired (s135), and a value obtainable from the main session ID, a value obtainable from the service session ID, and policy information are output to the session information storage unit 140 (s137). Hereinafter, the value that can be obtained from the main session ID, the value that can be obtained from the service session ID, and the policy information corresponding thereto are collectively referred to as session information. The value that can be obtained from the main session ID and the value that can be obtained from the service session ID may be the main session ID, the service session ID itself, or a value that can be obtained therefrom. Good. For example, a hash value that can be obtained from the main session ID and the service session ID, a cryptographically processed value, and the like are conceivable. Since the service session ID is not shared between the service modules, the entire portal is not damaged like the non-patent literature.

情報提供装置1は、サービスセッションIDとともに、「ドメイン・URLのパス・プロトコルが指定と一致するページを有効期限内に訪れる際には、必ずこのサービスセッションIDをリクエスト情報に含めよ」という指示をレスポンス情報に加える。
例えば、クッキー(Cookie)等を用いて、以降のリクエスト情報にはサービスセッションIDを付加する。なお、主セッションIDもリクエスト情報に含めるよう指示してもよい。
The information providing apparatus 1 instructs the service information to include the service session ID when requesting a page whose domain / URL path / protocol matches the specification within the expiration date. Add to response information.
For example, a service session ID is added to subsequent request information using a cookie or the like. The main session ID may be instructed to be included in the request information.

<セッション情報記憶部140>
セッション情報記憶部140は、セッション情報を記憶する(s140)。図8は、セッション情報記憶部140に記憶されるデータ例を示す。例えば、主セッションIDが「osdkmasgaso」であり、かつ、サービスセッションIDが「agq3qvw4tq24」である接続は、サービスモジュール「module1.portal.com」は、サービスモジュール「module2.portal.com」に対して、書込みをすることができる。主セッションIDは、主モジュール(または、情報提供装置1)と利用者装置3とのセッションを管理し、サービスセッションIDは、サービスモジュール200nと利用者装置3とのセッションを管理する。よって、複数のサービスモジュール200nを呼び出す場合には、一つの主セッションIDに複数のサービスセッションIDが対応することとなる。また、情報提供装置1は、リクエスト情報にサービスセッションIDのみ含まれる場合であっても、セッション情報記憶部140のデータから、主セッションIDを特定することができる。なお、ポリシー情報として主セッションID、サービスセッションIDから得ることができるハッシュ値や暗号処理した値等を用いた場合には、セッション情報記憶部140が覗き見られた場合であっても、攻撃者は主セッションID、サービスセッションIDが分からない。よって、攻撃者が利用者になりすますことを防止できる。また、ハッシュ値等を用いて記憶する情報量を軽減してもよい。
<Session information storage unit 140>
The session information storage unit 140 stores session information (s140). FIG. 8 shows an example of data stored in the session information storage unit 140. For example, for a connection whose main session ID is “osdkmasgaso” and whose service session ID is “agq3qvw4tq24”, the service module “module1.portal.com” corresponds to the service module “module2.portal.com”. You can write. The main session ID manages a session between the main module (or information providing apparatus 1) and the user apparatus 3, and the service session ID manages a session between the service module 200n and the user apparatus 3. Therefore, when calling a plurality of service modules 200n, a plurality of service session IDs correspond to one main session ID. Further, the information providing apparatus 1 can identify the main session ID from the data in the session information storage unit 140 even when only the service session ID is included in the request information. If policy information includes a hash value or a cryptographically processed value that can be obtained from the main session ID and service session ID, even if the session information storage unit 140 is peeped, the attacker Does not know the main session ID and service session ID. Therefore, it is possible to prevent an attacker from impersonating a user. Further, the amount of information stored using a hash value or the like may be reduced.

<検証部150>
図9は、検証部150の処理フロー例を示す。検証部150は、利用者装置3からのリクエスト情報に含まれるサービスセッションIDの有効性をセッション情報記憶部の情報を用いて検証する(s150)。例えば、検証部150は、利用者装置3からのリクエスト情報に含まれるサービスセッションIDがセッション情報記憶部に存在するか否か確認することにより有効性を検証する。検証部150は、リクエスト情報を入力され、前述の通り利用者装置3からのリクエスト情報にサービスセッションIDが含まれるか否か検証する(s151)。前述の通り含まれない場合には、処理を認証部110に移す(s153)。サービスセッションIDがリクエスト情報に含まれる場合には、セッション情報記憶部140を参照し、このサービスセッションIDが存在するか否か確認し(s155)、存在する場合には処理を実行部160に移し(s157)、存在しない場合には処理を認証部に移す(s153)。なお、認証部に処理を移す前に、「セッションの有効期限が切れた」旨のメッセージを利用者装置3に送信してもよい。なお、セッション情報記憶部140にサービスセッションIDのハッシュ値等が記憶されている場合には、同じハッシュ関数等を用いて、リクエスト情報に含まれるサービスセッションIDからハッシュ値を求め、同様に有効性を検証する。
<Verification unit 150>
FIG. 9 shows a processing flow example of the verification unit 150. The verification unit 150 verifies the validity of the service session ID included in the request information from the user device 3 using the information in the session information storage unit (s150). For example, the verification unit 150 verifies the validity by checking whether or not the service session ID included in the request information from the user device 3 exists in the session information storage unit. The verification unit 150 receives the request information and verifies whether or not the service session ID is included in the request information from the user device 3 as described above (s151). If not included as described above, the process proceeds to the authentication unit 110 (s153). When the service session ID is included in the request information, the session information storage unit 140 is referred to check whether or not this service session ID exists (s155), and if it exists, the process proceeds to the execution unit 160. (S157) If it does not exist, the process proceeds to the authentication unit (s153). Note that a message indicating that the session has expired may be transmitted to the user device 3 before the processing is transferred to the authentication unit. If the session information storage unit 140 stores a hash value or the like of the service session ID, the hash value is obtained from the service session ID included in the request information using the same hash function or the like. To verify.

<実行部160>
図10は、実行部160の処理フロー例を示す。実行部160は、リクエスト情報に含まれるサービスモジュール名を用いて、識別情報記憶部105を参照して対応するサービスモジュールの識別情報を取得する。また、サービスセッションIDに対応付けられるセッション情報と識別情報を用いて、サービスモジュールを呼び出し、実行する。ポリシーに従って情報提供装置が提供する情報の少なくとも一部を提供する(s160)。例えば、実行部160は、リクエスト情報が入力され、リクエスト情報に含まれるURLからサービスモジュール名を抽出し、識別情報記憶部105を参照し、サービスモジュールの識別情報を取得する(s161)。さらに、リクエスト情報に含まれるサービスセッションIDから、セッション情報記憶部140を参照し、ポリシー情報を取得する(s162)。但し、セッション情報記憶部140を参照せずに、生成部130から直接セッション情報を受け取る構成としてもよい。リクエスト情報がポリシー情報に従っているか確認し(s163)、リクエスト情報がポリシー情報に従っている場合には、サービスモジュールを呼び出し、実行する(s165)。処理結果をレスポンス情報の少なくとも一部として出力する(s166)。従っていない場合には、エラーを出力する(s167)。
<Execution unit 160>
FIG. 10 shows a processing flow example of the execution unit 160. The execution unit 160 refers to the identification information storage unit 105 using the service module name included in the request information and acquires the identification information of the corresponding service module. Also, the service module is called and executed using the session information and identification information associated with the service session ID. According to the policy, at least a part of the information provided by the information providing apparatus is provided (s160). For example, the execution unit 160 receives the request information, extracts the service module name from the URL included in the request information, refers to the identification information storage unit 105, and acquires the service module identification information (s161). Furthermore, from the service session ID included in the request information, the session information storage unit 140 is referred to and policy information is acquired (s162). However, it may be configured to receive session information directly from the generation unit 130 without referring to the session information storage unit 140. Whether the request information conforms to the policy information is confirmed (s163). If the request information conforms to the policy information, the service module is called and executed (s165). The processing result is output as at least part of the response information (s166). If not, an error is output (s167).

情報提供装置1は、レスポンス情報を利用者装置3に送信し、情報を提供する。なお、一つのセッションの間に、複数のサービスモジュールにアクセスしてもよい。その際は、生成部130において、対応する複数のサービスセッションIDを生成する。   The information providing apparatus 1 transmits response information to the user apparatus 3 to provide information. A plurality of service modules may be accessed during one session. In that case, the generation unit 130 generates a plurality of corresponding service session IDs.

このような構成とすることで、各サービスモジュールに対し、サービスセッションIDを設け、非特許文献1記載の従来技術と同等のセキュリティを有することができる。さらに、スクリプトを利用せずにサービスモジュール間のデータ通信を行うことができるため、利用者による改竄を防止できる。また、利用者装置及び情報提供装置の処理上の負荷を軽減できる。また、通信量を軽減することができる。   With such a configuration, a service session ID is provided for each service module, and security equivalent to that of the prior art described in Non-Patent Document 1 can be provided. Furthermore, since data communication between service modules can be performed without using a script, tampering by the user can be prevented. In addition, the processing load on the user device and the information providing device can be reduced. In addition, the amount of communication can be reduced.

<ハードウェア構成>
図11は、本実施例における情報提供装置1のハードウェア構成を例示したブロック図である。
図11に例示するように、この例の情報提供装置1は、CPU(Central Processing Unit)11、入力部12、出力部13、補助記憶装置14、ROM(Read Only Memory)15、RAM(Random Access Memory)16及びバス17を有している。
<Hardware configuration>
FIG. 11 is a block diagram illustrating a hardware configuration of the information providing apparatus 1 according to the present embodiment.
As illustrated in FIG. 11, the information providing apparatus 1 of this example includes a CPU (Central Processing Unit) 11, an input unit 12, an output unit 13, an auxiliary storage device 14, a ROM (Read Only Memory) 15, and a RAM (Random Access). Memory) 16 and a bus 17.

この例のCPU11は、制御部11a、演算部11b及びレジスタ11cを有し、レジスタ11cに読み込まれた各種プログラムに従って様々な演算処理を実行する。また、入力部12は、データが入力される入力インターフェース、キーボード、マウス等であり、出力部13は、データが出力される出力インターフェース等である。補助記憶装置14は、例えば、ハードディスク、MO(Magneto-Optical disc)、半導体メモリ等であり、情報提供装置1としてコンピュータを機能させるためのプログラムが格納されるプログラム領域14a及び各種データが格納されるデータ領域14bを有している。また、RAM16は、SRAM (Static Random Access Memory)、DRAM (Dynamic Random Access Memory)等であり、上記のプログラムが格納されるプログラム領域16a及び各種データが格納されるデータ領域16bを有している。また、バス17は、CPU11、入力部12、出力部13、補助記憶装置14、ROM15及びRAM16を通信可能に接続する。   The CPU 11 in this example includes a control unit 11a, a calculation unit 11b, and a register 11c, and executes various calculation processes according to various programs read into the register 11c. The input unit 12 is an input interface for inputting data, a keyboard, a mouse, and the like, and the output unit 13 is an output interface for outputting data. The auxiliary storage device 14 is, for example, a hard disk, an MO (Magneto-Optical disc), a semiconductor memory, or the like, and stores a program area 14a in which a program for causing the computer to function as the information providing device 1 is stored and various data. It has a data area 14b. The RAM 16 is an SRAM (Static Random Access Memory), a DRAM (Dynamic Random Access Memory), or the like, and has a program area 16a in which the above programs are stored and a data area 16b in which various data are stored. The bus 17 connects the CPU 11, the input unit 12, the output unit 13, the auxiliary storage device 14, the ROM 15, and the RAM 16 so that they can communicate with each other.

なお、このようなハードウェアの具体例としては、例えば、パーソナルコンピュータの他、サーバ装置やワークステーション等を例示できる。   In addition, as a specific example of such hardware, a server apparatus, a workstation, etc. other than a personal computer can be illustrated, for example.

<プログラム構成>
上述のように、プログラム領域14a,16aには、本実施例の情報提供装置1の各処理を実行するための各プログラムが格納される。情報提供名プログラムを構成する各プログラムは、単一のプログラム列として記載されていてもよく、また、少なくとも一部のプログラムが別個のモジュールとしてライブラリに格納されていてもよい。また、各プログラムが単体でそれぞれの機能を実現してもよいし、各プログラムがさらに他のライブラリを読み出して各機能を実現するものでもよい。
<Program structure>
As described above, each program for executing each process of the information providing apparatus 1 according to the present embodiment is stored in the program areas 14a and 16a. Each program constituting the information providing name program may be described as a single program sequence, or at least a part of the program may be stored in the library as a separate module. In addition, each program may realize each function alone, or each program may read each other library to realize each function.

<ハードウェアとプログラムとの協働>
CPU11(図11)は、読み込まれたOS(Operating System)プログラムに従い、補助記憶装置14のプログラム領域14aに格納されている上述のプログラムをRAM16のプログラム領域16aに書き込む。同様にCPU11は、補助記憶装置14のデータ領域14bに格納されている各種データを、RAM16のデータ領域16bに書き込む。そして、このプログラムやデータが書き込まれたRAM16上のアドレスがCPU11のレジスタ11cに格納される。CPU11の制御部11aは、レジスタ11cに格納されたこれらのアドレスを順次読み出し、読み出したアドレスが示すRAM16上の領域からプログラムやデータを読み出し、そのプログラムが示す演算を演算部11bに順次実行させ、その演算結果をレジスタ11cに格納していく。
<Cooperation between hardware and program>
The CPU 11 (FIG. 11) writes the above-described program stored in the program area 14 a of the auxiliary storage device 14 in the program area 16 a of the RAM 16 in accordance with the read OS (Operating System) program. Similarly, the CPU 11 writes various data stored in the data area 14 b of the auxiliary storage device 14 in the data area 16 b of the RAM 16. The address on the RAM 16 where the program and data are written is stored in the register 11c of the CPU 11. The control unit 11a of the CPU 11 sequentially reads these addresses stored in the register 11c, reads a program and data from the area on the RAM 16 indicated by the read address, causes the calculation unit 11b to sequentially execute the operation indicated by the program, The calculation result is stored in the register 11c.

図1は、このようにCPU11に上述のプログラムが読み込まれて実行されることにより構成される情報提供装置1の機能構成を例示したブロック図である。   FIG. 1 is a block diagram illustrating a functional configuration of the information providing apparatus 1 configured by reading and executing the above-described program in the CPU 11 as described above.

ここで、記憶部8、ポリシー記憶部120及びセッション情報記憶部140は、補助記憶装置14、RAM16、レジスタ11c、その他のバッファメモリやキャッシュメモリ等の何れか、あるいはこれらを併用した記憶領域に相当する。また、通信部7と、記憶部8と、制御部9と、認証部110と、生成部130と、検証部150と、実行部160は、CPU11に情報提供プログラムを実行させることにより構成されるものである。
また、本形態の情報提供装置1は、各制御部9の制御のもと各処理を実行する。
Here, the storage unit 8, the policy storage unit 120, and the session information storage unit 140 correspond to any one of the auxiliary storage device 14, the RAM 16, the register 11 c, other buffer memory and cache memory, or a storage area using these in combination. To do. The communication unit 7, the storage unit 8, the control unit 9, the authentication unit 110, the generation unit 130, the verification unit 150, and the execution unit 160 are configured by causing the CPU 11 to execute an information providing program. Is.
Further, the information providing apparatus 1 according to the present embodiment executes each process under the control of each control unit 9.

[変形例1]認証用サービスモジュール
実施例1と異なる部分についてのみ説明する。変形例1の情報提供装置1は、認証部110を有さない。情報提供ポータルシステム10は、認証用サービスモジュール2003を有する。さらに、認証処理を分散するために認証用サービスモジュール2004等を有してもよい。
[Modification 1] Authentication Service Module Only the differences from the first embodiment will be described. The information providing apparatus 1 according to the first modification does not include the authentication unit 110. The information providing portal system 10 includes an authentication service module 2003. Furthermore, an authentication service module 2004 or the like may be provided in order to distribute authentication processing.

認証用サービスモジュール2003等は、利用者を認証する。例えば、このような構成とした場合、検証部150は、リクエスト情報を入力され、利用者装置3からのリクエスト情報にサービスセッションIDが含まれるか否か検証する。含まれない場合、または、含まれるが、セッション情報記憶部140に存在しない場合には、認証用サービスモジュール2003を呼び出す。認証用サービスモジュールの呼び出し方法は、実施例1と同様であってもよいし、他の方法であってもよい。他の方法としては、認証用サービスモジュールの識別情報は、別途記憶部8に記憶しておき、識別情報記憶部105を参照せずに、呼び出してもよい。次に、実行部160において、認証用サービスモジュールを実行する。認証処理は、認証部130と同様である。   The authentication service module 2003 or the like authenticates the user. For example, in the case of such a configuration, the verification unit 150 receives the request information and verifies whether the request information from the user device 3 includes the service session ID. If it is not included, or if it is included but does not exist in the session information storage unit 140, the authentication service module 2003 is called. The method for calling the authentication service module may be the same as that in the first embodiment or may be another method. As another method, the identification information of the authentication service module may be separately stored in the storage unit 8 and called without referring to the identification information storage unit 105. Next, the execution unit 160 executes the authentication service module. The authentication process is the same as that of the authentication unit 130.

このような構成とすることで複数の認証処理を行うことが可能となり、処理を分散することができる。また、モジュール毎に認証の強度を容易に変更することができる。例えば、一つの認証用サービスモジュールでは、利用者ID、パスワードのみで認証可能だが、他の認証用サービスモジュールでは、利用者ID、パスワードに加え、バイオメトリクス認証情報等を必要としてもよい。なお、認証用サービスモジュールは、主ドメイン内であっても、主ドメイン外であってもよい。   With such a configuration, a plurality of authentication processes can be performed, and the processes can be distributed. In addition, the strength of authentication can be easily changed for each module. For example, one authentication service module can authenticate only with the user ID and password, but other authentication service modules may require biometric authentication information in addition to the user ID and password. The authentication service module may be in the main domain or outside the main domain.

[変形例2]ユーザIDによるアクセス制限
実施例1と異なる部分についてのみ説明する。変形例2の情報提供装置1は、ポリシー記憶部120に記憶されるデータが実施例1とは異なる。図12は、変形例2のポリシー情報記憶部120に記憶されるデータ例を示す。ポリシー記憶部120は、利用者名とサービスモジュール名の組合せとその組合せに対する権限を表すポリシー情報を記憶する。図12を用いて説明する。例えば、図12に沿って説明すると、利用者「user_A」の場合には、サービスモジュール「module1.portal.com」は、サービスモジュール「module2.portal.com」に対して、読込みをする権限は有さず、書込みをする権限を有している。一方、利用者「user_B」の場合には、サービスモジュール「module1.portal.com」は、サービスモジュール「module2.portal.com」に対して、書込みをする権限は有さず、読込みをする権限を有していることを意味する。
[Modification 2] Access Restriction by User ID Only the parts different from the first embodiment will be described. The information providing apparatus 1 according to the second modification differs from the first embodiment in the data stored in the policy storage unit 120. FIG. 12 shows an example of data stored in the policy information storage unit 120 of the second modification. The policy storage unit 120 stores policy information indicating a combination of a user name and a service module name and authority for the combination. This will be described with reference to FIG. For example, referring to FIG. 12, in the case of the user “user_A”, the service module “module1.portal.com” is authorized to read the service module “module2.portal.com”. I have the right to write. On the other hand, in the case of the user “user_B”, the service module “module1.portal.com” does not have the right to write to the service module “module2.portal.com”, and has the right to read. It means having.

例えば、生成部130は、主セッションID及びサービスセッションIDを生成する際に、リクエスト情報から用いるサービスモジュール名と利用者を特定し、対応する主セッションID及びサービスセッションIDを生成する。さらに、ポリシー記憶部120を参照し、特定したサービスモジュール名と利用者の組合せに対応するポリシー情報を取得し、主セッションID及びサービスセッションID、及びポリシー情報をセッション情報記憶部140に出力する。   For example, when generating the main session ID and the service session ID, the generation unit 130 specifies a service module name and a user to be used from the request information, and generates a corresponding main session ID and service session ID. Further, the policy storage unit 120 is referred to, policy information corresponding to the identified combination of service module name and user is acquired, and the main session ID, service session ID, and policy information are output to the session information storage unit 140.

このような構成とすることで利用者毎に柔軟にポリシーを設定することができる。ポリシー情報の設定変更は、利用者側が行ってもよいし、情報提供装置の管理者が行ってもよい。利用者が行う構成とする場合には、例えば、保護者が未成年者の有害なサイトへのアクセスを制限することができる。また、管理者側が行う構成とする場合には、特定のサービスに申し込みをしている利用者のみに、そのサービスを受けることができるように設定することができる。また、サービスモジュール毎にポリシーを設定することで、ポータルが提供できるサービスの組合せのバリエーションを多数用意することができる。用意したサービスの組合せを選択する構成としてもよい。   With such a configuration, a policy can be set flexibly for each user. The policy information setting change may be performed by the user or by the administrator of the information providing apparatus. In the case of a configuration that is performed by a user, for example, a guardian can restrict access to a harmful site by a minor. Moreover, when it is set as the structure which an administrator performs, it can set so that only the user who applied for a specific service can receive the service. Also, by setting a policy for each service module, it is possible to prepare many variations of service combinations that can be provided by the portal. It is good also as a structure which selects the combination of the prepared service.

利用者装置3と情報提供ポータルシステム10の関係を示す図。The figure which shows the relationship between the user apparatus 3 and the information provision portal system 10. FIG. 情報提供ポータルシステム10の構成例を示す図。The figure which shows the structural example of the information provision portal system. 情報提供装置1の処理フロー例を示す図。The figure which shows the example of a processing flow of the information provision apparatus 1. FIG. 識別情報記憶部105に記憶されるデータ例を示す図。The figure which shows the example of data memorize | stored in the identification information storage part 105. FIG. 認証部110の処理フロー例を示す図。The figure which shows the example of a processing flow of the authentication part 110. FIG. ポリシー記憶部120に記憶されるデータ例を示す図。The figure which shows the example of data memorize | stored in the policy memory | storage part. 生成部130の処理フロー例を示す図。The figure which shows the example of a processing flow of the production | generation part. セッション情報記憶部140に記憶されるデータ例を示す図。The figure which shows the example of data memorize | stored in the session information storage part 140. FIG. 検証部150の処理フロー例を示す図。The figure which shows the example of a processing flow of the verification part 150. FIG. 実行部160の処理フロー例を示す図。The figure which shows the example of a processing flow of the execution part 160. 本実施例における情報提供装置1のハードウェア構成を例示したブロック図。The block diagram which illustrated the hardware constitutions of the information provision apparatus 1 in a present Example. 変形例2のポリシー情報記憶部120に記憶されるデータ例を示す図。The figure which shows the example of data memorize | stored in the policy information storage part 120 of the modification 2.

符号の説明Explanation of symbols

1 情報提供装置 10 情報提供ポータルシステム
7 通信部 8 記憶部
9 制御部 105 識別情報記憶部
110 認証部 120 ポリシー記憶部
130 生成部 140 セッション情報記憶部
150 検証部 160 実行部
DESCRIPTION OF SYMBOLS 1 Information provision apparatus 10 Information provision portal system 7 Communication part 8 Storage part 9 Control part 105 Identification information storage part 110 Authentication part 120 Policy storage part 130 Generation part 140 Session information storage part 150 Verification part 160 Execution part

Claims (8)

サービスモジュールに対する利用者装置のリクエストに返答する情報提供装置であって、
当該情報提供装置のドメインとサービスモジュールの少なくとも一部のドメインとが異なり、
各サービスモジュール名とサービスモジュールの識別情報を記憶する識別情報記憶部と、
各サービスモジュール名とそのサービスモジュールの権限をポリシー情報として記憶するポリシー記憶部と、
利用者装置と情報提供装置間において接続を確立する際に、その接続を一意に識別する主セッションID、及び、利用者装置と各サービスモジュールとの接続を一意に識別するサービスセッションIDを生成する生成部と、
前記主セッションIDから得ることができる値、前記サービスセッションIDから得ることができる値及び対応するポリシー情報をセッション情報として記憶するセッション情報記憶部と、
前記利用者装置からのリクエスト情報に含まれるサービスセッションIDの有効性をセッション情報記憶部の情報を用いて検証する検証部と、
前記リクエスト情報に含まれるサービスモジュール名を用いて、前記識別情報記憶部を参照して対応するサービスモジュールの識別情報を取得し、前記サービスセッションIDに対応付けられるセッション情報と前記識別情報を用いて、サービスモジュールを呼び出し、実行し、ポリシーに従って情報提供装置が提供する情報の少なくとも一部を提供する実行部と、を有する
ことを特徴とする情報提供装置。
An information providing device that responds to a request from a user device for a service module,
The domain of the information providing device is different from at least a part of the domain of the service module,
An identification information storage unit for storing each service module name and identification information of the service module;
A policy storage unit for storing each service module name and the authority of the service module as policy information;
When establishing a connection between the user device and the information providing device, a main session ID for uniquely identifying the connection and a service session ID for uniquely identifying the connection between the user device and each service module are generated. A generator,
A session information storage unit that stores a value obtainable from the main session ID, a value obtainable from the service session ID, and corresponding policy information as session information;
A verification unit that verifies the validity of the service session ID included in the request information from the user device using information in the session information storage unit;
Using the service module name included in the request information, the identification information of the corresponding service module is obtained by referring to the identification information storage unit, and the session information and the identification information associated with the service session ID are used. And an execution unit that calls and executes the service module and provides at least part of the information provided by the information providing apparatus according to the policy.
請求項1記載の情報提供装置であって、
利用者認証用サービスモジュールを有し、
前記実行部は、前記リクエスト情報にサービスセッションIDが含まれないか、または、サービスセッションIDが含まれるが有効ではない場合には、予め定められた識別情報から利用者認証用サービスモジュールを呼び出し、実行し、利用者を認証する
ことを特徴とする情報提供装置。
The information providing device according to claim 1,
Has a user authentication service module,
The execution unit, when the request information does not include a service session ID, or if the service session ID is included but is not valid, calls the user authentication service module from the predetermined identification information, An information providing device that executes and authenticates a user.
請求項1または2記載の情報提供装置であって、
前記ポリシー記憶部は、利用者名とサービスモジュール名の組合せとその組合せに対する権限を表すポリシー情報を記憶する、
ことを特徴とする情報提供装置。
The information providing device according to claim 1 or 2,
The policy storage unit stores policy information representing a combination of a user name and a service module name and authority for the combination.
An information providing apparatus characterized by that.
サービスモジュールに対する利用者装置のリクエストに返答する情報提供ポータルシステムであって、
情報提供ポータルシステムが提供する情報の少なくとも一部を提供する1以上のサービスモジュールと、情報提供装置を有し、当該情報提供装置のドメインとサービスモジュールの少なくとも一部のドメインとが異なり、
前記情報提供装置は、
サービスモジュール名とサービスモジュールの識別情報を記憶する識別情報記憶部と、
各サービスモジュール名とそのサービスモジュールの権限をポリシー情報として記憶するポリシー記憶部と、
利用者装置と情報提供ポータルシステム間において接続を確立する際に、その接続を一意に識別する主セッションID、及び、利用者装置と各サービスモジュールとの接続を一意に識別するサービスセッションIDを生成する生成部と、
前記主セッションIDから得ることができる値、前記サービスセッションIDから得ることができる値及び対応するポリシー情報をセッション情報として記憶するセッション情報記憶部と、
前記利用者装置からのリクエスト情報に含まれるサービスセッションIDの有効性をセッション情報記憶部の情報を用いて検証する検証部と、
前記リクエスト情報に含まれるサービスモジュール名を用いて、前記識別情報記憶部を参照して対応するサービスモジュールの識別情報を取得し、前記サービスセッションIDに対応付けられるセッション情報と前記識別情報を用いて、サービスモジュールを呼び出し、実行し、ポリシーに従って情報提供ポータルシステムが提供する情報の少なくとも一部を提供する実行部を備える、
ことを特徴とする情報提供ポータルシステム。
An information providing portal system that responds to a user device request for a service module,
One or more service modules that provide at least a part of information provided by the information providing portal system and an information providing apparatus, and a domain of the information providing apparatus is different from a domain of at least a part of the service module,
The information providing apparatus includes:
An identification information storage unit for storing a service module name and service module identification information;
A policy storage unit for storing each service module name and the authority of the service module as policy information;
When establishing a connection between the user device and the information providing portal system, a main session ID for uniquely identifying the connection and a service session ID for uniquely identifying the connection between the user device and each service module are generated. A generator to
A session information storage unit that stores a value obtainable from the main session ID, a value obtainable from the service session ID, and corresponding policy information as session information;
A verification unit that verifies the validity of the service session ID included in the request information from the user device using information in the session information storage unit;
Using the service module name included in the request information, the identification information of the corresponding service module is obtained by referring to the identification information storage unit, and the session information associated with the service session ID and the identification information are used. An execution unit that calls and executes a service module and provides at least part of information provided by the information providing portal system according to a policy;
An information provision portal system characterized by this.
サービスモジュールに対する利用者方法のリクエストに返答する情報提供方法であって、
当該情報提供方法を実現する情報提供装置のドメインとサービスモジュールの少なくとも一部のドメインとが異なり、
識別情報記憶部はサービスモジュール名とサービスモジュールの識別情報を記憶し、
ポリシー記憶部は各サービスモジュール名とそのサービスモジュールの権限をポリシー情報として記憶し、
利用者方法と情報提供方法を実現する装置間において接続を確立する際に、その接続を一意に識別する主セッションID、及び、利用者方法と各サービスモジュールとの接続を一意に識別するサービスセッションIDを生成する生成ステップと、
前記主セッションIDから得ることができる値、前記サービスセッションIDから得ることができる値及び対応するポリシー情報をセッション情報として記憶するセッション情報記憶ステップと、
前記利用者方法からのリクエスト情報に含まれるサービスセッションIDの有効性をセッション情報記憶部の情報を用いて検証する検証ステップと、
前記リクエスト情報に含まれるサービスモジュール名を用いて、前記識別情報記憶部を参照して対応するサービスモジュールの識別情報を取得し、前記サービスセッションIDに対応付けられるセッション情報と前記識別情報を用いて、サービスモジュールを呼び出し、実行し、ポリシーに従って情報提供方法が提供する情報の少なくとも一部を提供する実行ステップと、を有する
ことを特徴とする情報提供方法。
An information providing method for responding to a user method request for a service module,
The domain of the information providing apparatus that realizes the information providing method is different from the domain of at least a part of the service module,
The identification information storage unit stores service module name and service module identification information,
The policy storage unit stores each service module name and the authority of the service module as policy information,
When establishing a connection between a user method and an apparatus that implements the information providing method, a main session ID that uniquely identifies the connection, and a service session that uniquely identifies the connection between the user method and each service module A generation step of generating an ID;
A session information storage step of storing a value obtainable from the main session ID, a value obtainable from the service session ID, and corresponding policy information as session information;
A verification step of verifying the validity of the service session ID included in the request information from the user method using information in the session information storage unit;
Using the service module name included in the request information, the identification information of the corresponding service module is obtained by referring to the identification information storage unit, and the session information and the identification information associated with the service session ID are used. And an execution step of calling and executing the service module and providing at least a part of the information provided by the information providing method according to the policy.
請求項5記載の情報提供方法であって、
当該情報提供方法を実現する情報提供ポータルシステムは利用者認証用サービスモジュールを有し、
前記リクエスト情報にサービスセッションIDが含まれないか、または、サービスセッションIDが含まれるが有効ではない場合には、予め定められた識別情報を用いて利用者認証用サービスモジュールを呼び出し、実行し、利用者を認証する認証ステップを有する
ことを特徴とする情報提供方法。
An information providing method according to claim 5, wherein
The information provision portal system for realizing the information provision method has a service module for user authentication,
If the request information does not include a service session ID, or if the service session ID is included but is not valid, the service module for user authentication is called and executed using predetermined identification information, An information providing method comprising an authentication step of authenticating a user.
請求項5または6記載の情報提供方法であって、
前記ポリシー記憶部は、利用者名とサービスモジュール名の組合せとその組合せに対する権限を表すポリシー情報を記憶する、
ことを特徴とする情報提供方法。
The information providing method according to claim 5 or 6, comprising:
The policy storage unit stores policy information representing a combination of a user name and a service module name and authority for the combination.
An information providing method characterized by the above.
請求項1から3記載の何れかの情報提供装置としてコンピュータを機能させるための情報提供プログラム。   An information providing program for causing a computer to function as the information providing apparatus according to claim 1.
JP2008330742A 2008-12-25 2008-12-25 Information providing apparatus, information providing portal system, information providing method and information providing program Pending JP2010152690A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008330742A JP2010152690A (en) 2008-12-25 2008-12-25 Information providing apparatus, information providing portal system, information providing method and information providing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008330742A JP2010152690A (en) 2008-12-25 2008-12-25 Information providing apparatus, information providing portal system, information providing method and information providing program

Publications (1)

Publication Number Publication Date
JP2010152690A true JP2010152690A (en) 2010-07-08

Family

ID=42571701

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008330742A Pending JP2010152690A (en) 2008-12-25 2008-12-25 Information providing apparatus, information providing portal system, information providing method and information providing program

Country Status (1)

Country Link
JP (1) JP2010152690A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012226610A (en) * 2011-04-20 2012-11-15 Canon Inc Information processing system, information processing apparatus, and control method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012226610A (en) * 2011-04-20 2012-11-15 Canon Inc Information processing system, information processing apparatus, and control method thereof

Similar Documents

Publication Publication Date Title
EP3424178B1 (en) Deterministic reproduction of client/server computer state or output sent to one or more client computers
KR101076911B1 (en) System and method for providing security to an application
JP6643373B2 (en) Information processing system, control method and program therefor
CN112422532B (en) Service communication method, system and device and electronic equipment
US8869258B2 (en) Facilitating token request troubleshooting
US20100043065A1 (en) Single sign-on for web applications
CN112769826B (en) Information processing method, device, equipment and storage medium
CN104378376A (en) SOA-based single-point login method, authentication server and browser
US10681023B2 (en) Self-service portal for provisioning passwordless access
US20170041504A1 (en) Service providing system, information processing apparatus, program, and method for generating service usage information
JPWO2011089788A1 (en) Confidential information leakage prevention system, confidential information leakage prevention method, and confidential information leakage prevention program
JP6572750B2 (en) Authentication control program, authentication control device, and authentication control method
JP2018092446A (en) Authentication approval system, information processing apparatus, authentication approval method, and program
CN112559994B (en) Access control method, device, equipment and storage medium
JP2018502394A (en) Computer-readable storage medium for legacy integration and method and system for using the same
US8127033B1 (en) Method and apparatus for accessing local computer system resources from a browser
CN109962892A (en) A kind of authentication method and client, server logging in application
JP4573559B2 (en) Distributed authentication system, load distribution apparatus and authentication server, and load distribution program and authentication program
CN113992446B (en) Cross-domain browser user authentication method, system and computer storage medium
JP2010152690A (en) Information providing apparatus, information providing portal system, information providing method and information providing program
KR101815145B1 (en) Certificate sharing method between cross domain
JP2011128731A (en) Federated load balancing system, federated load balancing device, service provision device, federated load balancing method, and program thereof
CN112511565B (en) Request response method and device, computer readable storage medium and electronic equipment
JP6722746B2 (en) Terminal
JP6438256B2 (en) Terminal device, authentication server, authentication system, authentication method, and authentication program