JP2017091207A - Information providing system, information providing program, and information providing method - Google Patents

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

Info

Publication number
JP2017091207A
JP2017091207A JP2015220446A JP2015220446A JP2017091207A JP 2017091207 A JP2017091207 A JP 2017091207A JP 2015220446 A JP2015220446 A JP 2015220446A JP 2015220446 A JP2015220446 A JP 2015220446A JP 2017091207 A JP2017091207 A JP 2017091207A
Authority
JP
Japan
Prior art keywords
information processing
processing apparatus
information
consent
user
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
JP2015220446A
Other languages
Japanese (ja)
Other versions
JP6582898B2 (en
Inventor
孝夫 小倉
Takao Ogura
孝夫 小倉
郁也 森川
Ikuya Morikawa
郁也 森川
淳二 高木
Junji Takagi
淳二 高木
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015220446A priority Critical patent/JP6582898B2/en
Publication of JP2017091207A publication Critical patent/JP2017091207A/en
Application granted granted Critical
Publication of JP6582898B2 publication Critical patent/JP6582898B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce a labor of a user accompanied by agreement.SOLUTION: In an information providing method, a first information processor 31 requests a second information processor 32 to make an approval about acquisition of attribute information 38 of a user, and the second information processor 32 requests the user to make an agreement with provision of the attribute information 38 to the first information processor 31, and when agreement 74 of the user is obtained, the second information processor 32 notifies the first information processor 31 of an agreement identifier indicating that the agreement 34 is obtained, and the first information processor 31 notifies a third information processor 33 holding the attribute information 38 of an agreement identifier, and the third information processor 33 requests the second information processor 32 to confirm validity of the notified agreement identifier, and when validity is confirmed, the third information processor 33 notifies the first information processor 31 of the attribute information 38.SELECTED DRAWING: Figure 9

Description

本発明は、情報提供システム、情報提供プログラム、及び情報提供方法に関する。   The present invention relates to an information providing system, an information providing program, and an information providing method.

近年、複数のwebサービスを連携させて新たなサービスを提供するサービス連携が普及しつつある。そのようなサービス連携としては、例えばTwitter(登録商標)でつぶやいたデータをFacebook(登録商標)へ反映させるサービスがある。このサービスではTwitterからFacebookにデータを渡してもよいとの同意をユーザから取得する必要があり、これを実現するために例えばOAuthプロトコルが使用される。   In recent years, service cooperation that provides a new service by linking a plurality of web services is becoming widespread. As such service cooperation, for example, there is a service for reflecting data tweeted on Twitter (registered trademark) on Facebook (registered trademark). The service needs to get consent from users to pass data from Twitter to Facebook, for example using the OAuth protocol.

この他に、あるwebサービスのユーザ認証を別のサービスが代理で行う認証連携と呼ばれるサービス形態もある。代理でユーザ認証を行うサービス事業者は、IdP(Identity Provider)と呼ばれ、認証が成功した場合には依頼元に住所や氏名等のユーザの属性情報を提供する。   In addition to this, there is a service form called authentication cooperation in which user authentication of a web service is performed on behalf of another service. A service provider that performs user authentication on behalf of an agent is called an IdP (Identity Provider), and provides user attribute information such as an address and a name to the requester when the authentication is successful.

一方、IdPに認証を依頼するサービス事業者は、RP(Relying Party)と呼ばれ、認証が成功した際にIdPから提供されるユーザの属性情報を利用して当該ユーザにサービスを提供する。   On the other hand, a service provider who requests authentication from the IdP is called an RP (Relying Party), and provides services to the user by using user attribute information provided from the IdP when authentication is successful.

この認証連携においては、IdPからRPにユーザの属性情報を渡してもよいとの同意をユーザから取得する必要があり、これを実現するためのプロトコルとしてOpenID ConnectやSAML(Security Assertion Markup Language)がある。   In this authentication linkage, it is necessary to obtain consent from the user that the attribute information of the user may be passed from the IdP to the RP, and OpenID Connect and SAML (Security Assertion Markup Language) are protocols for realizing this. is there.

特開2013−88901号公報JP 2013-88901 A

ところで、前述のサービス連携や認証連携が混在する場合には、サービス間でユーザの複数の属性情報が受け渡される場面が想定される。   By the way, when the above-mentioned service cooperation and authentication cooperation coexist, the scene where several attribute information of a user is passed between services is assumed.

しかしながら、その場合には属性情報の受け渡しをするたびにユーザに同意を求める必要があるため、ユーザが複数の同意をしなければならず、同意に伴うユーザの負担が増す。   However, in that case, since it is necessary to ask the user for consent every time the attribute information is transferred, the user must make a plurality of consents, and the burden on the user accompanying the consent increases.

一つの側面では、本発明は、同意に伴うユーザの負担を軽減することを目的とする。   In one aspect, an object of the present invention is to reduce a user's burden associated with consent.

一つの側面では、本発明は、第1の情報処理装置、第2の情報処理装置、及び第3の情報処理装置を備えた情報提供システムであって、前記第1の情報処理装置は、前記第3の情報処理装置が保有するユーザの属性情報を取得することについての承認を求める承認依頼を前記第2の情報処理装置に通知し、前記属性情報の取得について前記ユーザの同意が得られたことを示す同意識別子が前記第2の情報処理装置から通知されたときに、前記同意識別子を前記第3の情報処理装置に通知する第1の通知部を有し、前記第2の情報処理装置は、前記第3の情報処理装置からの依頼を受けて、前記第3の情報処理装置から通知された前記同意識別子の正当性を確認する確認部と、前記承認依頼を受けたときに前記属性情報を前記第1の情報処理装置に提供することについての前記同意を前記ユーザに要求し、前記同意が得られたときに前記同意識別子を前記第1の情報処理装置に通知する第2の通知部とを有し、前記第3の情報処理装置は、前記属性情報を記憶した記憶部と、通知された前記同意識別子の前記正当性についての確認を前記第2の情報処理装置に依頼する依頼部と、前記確認部によって前記正当性が確認されたときに前記第1の情報処理装置に前記属性情報を通知し、前記正当性が確認されないときには前記第1の情報処理装置に前記属性情報を通知しない第3の通知部を有する情報提供システムが提供される。   In one aspect, the present invention is an information providing system including a first information processing device, a second information processing device, and a third information processing device, wherein the first information processing device includes: An approval request for approval for acquiring the attribute information of the user held by the third information processing apparatus is notified to the second information processing apparatus, and the consent of the user is obtained for the acquisition of the attribute information. A second notification unit that notifies the third information processing apparatus of the consent identifier when a consent identifier indicating that the second information processing apparatus is notified from the second information processing apparatus; Receives a request from the third information processing apparatus and confirms the validity of the consent identifier notified from the third information processing apparatus, and the attribute when receiving the approval request. Information about the first information processing device A second notification unit that requests the user to give the consent for providing the information to the user, and notifies the first information processing apparatus of the consent identifier when the consent is obtained. The information processing apparatus includes a storage unit that stores the attribute information, a request unit that requests the second information processing apparatus to confirm the validity of the notified consent identifier, and the confirmation unit A third notification unit that notifies the first information processing apparatus of the attribute information when the validity is confirmed, and does not notify the attribute information to the first information processing apparatus when the validity is not confirmed; An information providing system is provided.

同意に伴うユーザの負担を軽減することができる。   The burden on the user accompanying the consent can be reduced.

図1は、サービス連携と認証連携とが混在したシステムについて模式的に示す図である。FIG. 1 is a diagram schematically illustrating a system in which service cooperation and authentication cooperation are mixed. 図2は、サービス連携と認証連携とが混在したシステムにおける処理の流れについて説明するためのシーケンス図(その1)である。FIG. 2 is a sequence diagram (part 1) for explaining the flow of processing in a system in which service cooperation and authentication cooperation are mixed. 図3は、サービス連携と認証連携とが混在したシステムにおける処理の流れについて説明するためのシーケンス図(その2)である。FIG. 3 is a sequence diagram (No. 2) for explaining the flow of processing in a system in which service cooperation and authentication cooperation are mixed. 図4は、サービス連携と認証連携とが混在したシステムにおいて、同意要求をまとめた場合の処理の流れについて説明するためのシーケンス図(その1)である。FIG. 4 is a sequence diagram (No. 1) for explaining the flow of processing when consent requests are collected in a system in which service cooperation and authentication cooperation are mixed. 図5は、サービス連携と認証連携とが混在したシステムにおいて、同意要求をまとめた場合の処理の流れについて説明するためのシーケンス図(その2)である。FIG. 5 is a sequence diagram (No. 2) for explaining the flow of processing when consent requests are collected in a system in which service cooperation and authentication cooperation are mixed. 図6は、第1実施形態に係る情報提供システムの全体構成例を示す図である。FIG. 6 is a diagram illustrating an example of the overall configuration of the information providing system according to the first embodiment. 図7は、第1実施形態における第1〜第3の情報処理装置と端末の各々の機能構成例を示す図である。FIG. 7 is a diagram illustrating a functional configuration example of each of the first to third information processing apparatuses and the terminal according to the first embodiment. 図8は、第1実施形態における同意テーブルの一例を示す図である。FIG. 8 is a diagram illustrating an example of the consent table in the first embodiment. 図9は、第1実施形態に係る情報提供システムの動作の一例を示すシーケンス図(その1)である。FIG. 9 is a sequence diagram (part 1) illustrating an example of the operation of the information providing system according to the first embodiment. 図10は、第1実施形態に係る情報提供システムの動作の一例を示すシーケンス図(その2)である。FIG. 10 is a sequence diagram (part 2) illustrating an example of the operation of the information providing system according to the first embodiment. 図11は、第1実施形態における許可応答の一例を示す図である。FIG. 11 is a diagram illustrating an example of a permission response according to the first embodiment. 図12は、第1実施形態における第2の情報処理装置の処理内容について示すフローチャート(その1)である。FIG. 12 is a flowchart (part 1) illustrating the processing contents of the second information processing apparatus according to the first embodiment. 図13は、第1実施形態における第2の情報処理装置の処理内容について示すフローチャート(その2)である。FIG. 13 is a flowchart (part 2) illustrating the processing content of the second information processing apparatus according to the first embodiment. 図14は、第1実施形態における第2の情報処理装置の処理内容について示すフローチャート(その3)である。FIG. 14 is a flowchart (part 3) illustrating the processing contents of the second information processing apparatus according to the first embodiment. 図15は、第1実施形態における第2の情報処理装置の処理内容について示すフローチャート(その4)である。FIG. 15 is a flowchart (part 4) illustrating the processing contents of the second information processing apparatus according to the first embodiment. 図16は、第2実施形態に係る情報提供システムの動作の一例を示すシーケンス図(その1)である。FIG. 16 is a sequence diagram (part 1) illustrating an example of the operation of the information providing system according to the second embodiment. 図17は、第2実施形態に係る情報提供システムの動作の一例を示すシーケンス図(その2)である。FIG. 17 is a sequence diagram (part 2) illustrating an example of the operation of the information providing system according to the second embodiment. 図18は、第2実施形態に係る同意テーブルの一例を示す図である。FIG. 18 is a diagram illustrating an example of the consent table according to the second embodiment. 図19は、CSRF攻撃について説明するためのシーケンス図19 is a sequence diagram for explaining a CSRF attack. 図20は、第1及び第2実施形態に係る情報提供プログラムを実行するコンピュータのハードウェア構成図である。FIG. 20 is a hardware configuration diagram of a computer that executes the information providing program according to the first and second embodiments.

本実施形態の説明に先立ち、サービス連携と認証連携とが混在したシステムについて説明する。   Prior to the description of this embodiment, a system in which service cooperation and authentication cooperation are mixed will be described.

図1は、サービス連携と認証連携とが混在したシステムについて模式的に示す図である。   FIG. 1 is a diagram schematically illustrating a system in which service cooperation and authentication cooperation are mixed.

このシステム10は、第1〜第3の情報処理装置1〜3と、ユーザが操作する端末4とを有しており、第1〜第3の情報処理装置1〜3が連携して新たなサービスをユーザに提供する。   This system 10 includes first to third information processing apparatuses 1 to 3 and a terminal 4 operated by a user, and the first to third information processing apparatuses 1 to 3 cooperate to create a new one. Providing services to users.

以下では、RP(Relying Party)が第1の情報処理装置1を用いてクラウドソーシング等のサービスを提供し、IdP(Identity Provider)が第2の情報処理装置2を用いて認証サービスを行う場合を想定する。   In the following, RP (Relying Party) provides services such as crowdsourcing using the first information processing apparatus 1 and IdP (Identity Provider) provides authentication services using the second information processing apparatus 2. Suppose.

このうち、第2の情報処理装置2は、ユーザの属性情報7が記憶された記憶部2aを有しており、認証が成功した場合には第1の情報処理装置1にユーザの属性情報7を提供する。   Among these, the second information processing apparatus 2 has a storage unit 2a in which user attribute information 7 is stored. When the authentication is successful, the second information processing apparatus 2 stores the user attribute information 7 in the first information processing apparatus 1. I will provide a.

そして、第3の情報処理装置3は、ユーザの過去の履歴を第1の情報処理装置1に提供する履歴サービスに使用され、ユーザの属性情報8として履歴が記憶された記憶部3aを有する。このように履歴サービスを行うサービス事業者はAP(Attribute Provider)と呼ばれる。   The third information processing device 3 is used for a history service that provides the user's past history to the first information processing device 1, and includes a storage unit 3 a in which the history is stored as user attribute information 8. A service provider that provides a history service in this way is called an AP (Attribute Provider).

各属性情報7、8は特に限定されない。以下では、ユーザに関連する任意の情報を属性情報7、8と呼ぶ。   Each attribute information 7 and 8 is not particularly limited. Hereinafter, arbitrary information related to the user is referred to as attribute information 7 and 8.

例えば、属性情報7には、ユーザの氏名、住所、生年月日、及びメールアドレスが含まれるものとする。また、属性情報8には、ユーザが過去に取得したTOEIC(Test of English for International Communication:登録商標)等の語学スコア記録証や看護師免許等の資格情報が含まれるものとする。   For example, the attribute information 7 includes the user's name, address, date of birth, and mail address. Further, the attribute information 8 includes language score record certificates such as TOEIC (Test of English for International Communication: registered trademark) acquired by the user in the past and qualification information such as a nurse license.

また、第1の情報処理装置1と第2の情報処理装置2との間や、第2の情報処理装置2と第3の情報処理装置3との間の通信プロトコルはOpenID connectであり、第1の情報処理装置1と第3の情報処理装置3との間の通信プロトコルはOAuth 2.0であるとする。   The communication protocol between the first information processing apparatus 1 and the second information processing apparatus 2 and between the second information processing apparatus 2 and the third information processing apparatus 3 is OpenID connect. Assume that the communication protocol between one information processing apparatus 1 and the third information processing apparatus 3 is OAuth 2.0.

次に、第1〜第3の情報処理装置1〜3が連携して提供するサービスの一例について説明する。   Next, an example of a service provided in cooperation by the first to third information processing apparatuses 1 to 3 will be described.

この例では、第1の情報処理装置1が翻訳アルバイトの募集をしており、ユーザがそのアルバイトに応募することを考える。   In this example, it is assumed that the first information processing apparatus 1 is recruiting for a translation part-time job and the user applies for that part-time job.

アルバイトに応募するため、ユーザは、端末4を操作することにより第1の情報処理装置1にサービス要求9を通知する。   In order to apply for a part-time job, the user operates the terminal 4 to notify the first information processing apparatus 1 of the service request 9.

サービス要求9を受けた第1の情報処理装置1は、ユーザと連絡を取るために、第2の情報処理装置2が保有する属性情報7としてメールアドレスを要求する。このとき、第2の情報処理装置2は、メールアドレスを第1の情報処理装置1に提供してよいとの同意をユーザから得るために、端末4に対して同意要求11を通知する。   The first information processing apparatus 1 that has received the service request 9 requests a mail address as the attribute information 7 held by the second information processing apparatus 2 in order to contact the user. At this time, the second information processing apparatus 2 notifies the consent request 11 to the terminal 4 in order to obtain consent from the user that the mail address may be provided to the first information processing apparatus 1.

また、第3の情報処理装置3は、属性情報8として語学スコア記録証を保有しているものとする。そして、その記録証がユーザのものであるかどうかを確認するために、第3の情報処理装置3は第2の情報処理装置2に対して属性情報7のうち氏名と住所とを要求する。   Further, it is assumed that the third information processing apparatus 3 has a language score recording certificate as the attribute information 8. Then, the third information processing apparatus 3 requests the name and address of the attribute information 7 from the second information processing apparatus 2 in order to confirm whether the record certificate belongs to the user.

このとき、第2の情報処理装置2は、氏名と住所とを第3の情報処理装置3に提供してよいとの同意をユーザから得るために、端末4に対して同意要求12を通知する。   At this time, the second information processing device 2 notifies the terminal 4 of the consent request 12 in order to obtain consent from the user that the name and address may be provided to the third information processing device 3. .

更に、第3の情報処理装置3は、第1の情報処理装置1に対して属性情報8として語学スコア記録証を提供する。このとき、第3の情報処理装置3は、語学スコア記録証を第1の情報処理装置1に提供してよいとの同意をユーザから得るために、端末4に対して同意要求13を通知する。   Further, the third information processing apparatus 3 provides a language score recording certificate as attribute information 8 to the first information processing apparatus 1. At this time, the third information processing device 3 notifies the consent request 13 to the terminal 4 in order to obtain an agreement from the user that the language score recording certificate may be provided to the first information processing device 1. .

このように、この例では同意要求11〜13の三つの全てにユーザが同意しなければならず、ユーザの負担が大きい。   Thus, in this example, the user must agree to all three of the consent requests 11 to 13, and the burden on the user is large.

同意に伴うユーザの負担を減らすには、これらの同意要求11〜13を単純に一つにまとめればよいと考えられる。これが可能かどうかを検討するため、次に同意要求11〜13がOpenID ConnectとOAuth 2.0のそれぞれのプロトコルにおいてどのように通知されるのかについて説明する。   In order to reduce the burden on the user accompanying the consent, it is considered that these consent requests 11 to 13 should be simply combined into one. In order to examine whether this is possible, how the consent requests 11 to 13 are notified in the respective protocols of OpenID Connect and OAuth 2.0 will be described next.

図2及び図3は、システム10における処理の流れについて説明するためのシーケンス図である。   2 and 3 are sequence diagrams for explaining the flow of processing in the system 10.

なお、図2及び図3において、実線で示す処理はOpenID Connectに即した処理を示し、一点鎖線で示す処理はOAuth 2.0に即した処理を示す。また、点線で示す処理は、これらのプロトコルで規定されていない処理を示す。   2 and 3, the process indicated by a solid line indicates a process according to OpenID Connect, and the process indicated by an alternate long and short dash line indicates a process according to OAuth 2.0. Moreover, the process shown with a dotted line shows the process which is not prescribed | regulated by these protocols.

また、図2及び図3において、図1で説明したのと同じ要素には図1におけるのと同じ符号を付し、以下ではその説明を省略する。   2 and 3, the same elements as those described in FIG. 1 are denoted by the same reference numerals as those in FIG. 1, and the description thereof is omitted below.

以下、図2及び図3に示す処理をステップ番号に沿って説明する。   In the following, the process illustrated in FIGS. 2 and 3 will be described in order of step number.

(S1)まず、第1の情報処理装置1が募集している翻訳アルバイトに応募するために、ユーザが端末4を操作することにより、第1の情報処理装置1にサービス要求9を通知する。   (S1) First, in order to apply for the translation part-time job recruited by the first information processing apparatus 1, the user operates the terminal 4 to notify the first information processing apparatus 1 of the service request 9.

(S2)そのサービス要求9を受けて、第1の情報処理装置1が第2の情報処理装置2に対して許可要求を通知する。   (S2) In response to the service request 9, the first information processing apparatus 1 notifies the second information processing apparatus 2 of a permission request.

この許可要求は、HTTP(Hypertext Transfer Protocol)リクエストであって、端末4により第2の情報処理装置2にリダイレクトされる。   This permission request is an HTTP (Hypertext Transfer Protocol) request and is redirected to the second information processing apparatus 2 by the terminal 4.

また、そのHTTPヘッダにはscopeパラメータが設定される。scopeパラメータは、第2の情報処理装置2が保有している複数の属性情報7のうち、第1の情報処理装置1が要求するものを特定するパラメータである。本ステップでは、そのscopeパラメータに、複数の属性情報7のうち当該ユーザのメールアドレスを指定する。   The scope parameter is set in the HTTP header. The scope parameter is a parameter for specifying what is requested by the first information processing apparatus 1 among the plurality of attribute information 7 held by the second information processing apparatus 2. In this step, the mail address of the user among the plurality of attribute information 7 is designated in the scope parameter.

(S3)第2の情報処理装置2は、ユーザが第2の情報処理装置2を利用する権限があるかを確認するための認証を行う。   (S3) The second information processing apparatus 2 performs authentication for confirming whether the user has authority to use the second information processing apparatus 2.

この認証は、例えばパスワード認証で行われ、ユーザが端末3を介して自分の認証IDであるA_IDとパスワードPWとを第2の情報処理装置2に送信することで行われる。   This authentication is performed by, for example, password authentication, and is performed by the user transmitting his / her authentication ID A_ID and password PW to the second information processing apparatus 2 via the terminal 3.

(S4)ステップS3の認証が成功した場合、属性情報7(メールアドレス)を第1の情報処理装置1に提供してよいとの同意をユーザから得るために、第2の情報処理装置2が端末4に同意要求11を通知する。   (S4) When the authentication in step S3 is successful, the second information processing apparatus 2 obtains an agreement from the user that the attribute information 7 (mail address) may be provided to the first information processing apparatus 1. The consent request 11 is notified to the terminal 4.

(S5)ユーザは、属性情報7(メールアドレス)の提供に同意するときは、端末4を操作して第2の情報処理装置2に同意を通知する。   (S5) When the user agrees to provide the attribute information 7 (mail address), the user operates the terminal 4 to notify the second information processing apparatus 2 of the consent.

(S6)ステップS5で同意を受けたとき、第2の情報処理装置2は、ステップS2の許可要求に対する応答として、第1の情報処理装置1に許可応答を返す。その許可応答は、HTTPレスポンスであって、端末4によりリダイレクトされて第1の情報処理装置1に通知される。   (S6) When the consent is received in step S5, the second information processing apparatus 2 returns a permission response to the first information processing apparatus 1 as a response to the permission request in step S2. The permission response is an HTTP response that is redirected by the terminal 4 and notified to the first information processing apparatus 1.

また、この許可応答には許可コード(Authorization Code)が付加される。許可コードは、第2の情報処理装置2が生成した記号列であって、HTTPレスポンスのLocationヘッダに指定される。また、許可コードは、属性情報7(メールアドレス)の提供を受けるためのアクセストークンと後で交換される。   Further, an authorization code is added to this authorization response. The permission code is a symbol string generated by the second information processing apparatus 2 and is specified in the Location header of the HTTP response. The permission code is exchanged later with an access token for receiving provision of attribute information 7 (mail address).

(S7)第1の情報処理装置1は、第2の情報処理装置2に対してアクセストークン要求を通知する。アクセストークン要求は、第2の情報処理装置2から属性情報7(メールアドレス)を得る際に必要となるアクセストークンを要求するHTTPリクエストである。   (S7) The first information processing apparatus 1 notifies the second information processing apparatus 2 of an access token request. The access token request is an HTTP request for requesting an access token necessary for obtaining the attribute information 7 (mail address) from the second information processing apparatus 2.

また、そのHTTPヘッダのgrant_typeパラメータには、前述の許可コードが格納される。   Further, the grant code is stored in the grant_type parameter of the HTTP header.

(S8)第2の情報処理装置2は、そのアクセストークン要求に含まれている許可コードを検証する。   (S8) The second information processing apparatus 2 verifies the permission code included in the access token request.

そして、検証に成功した場合には、第2の情報処理装置2が第1の情報処理装置1にアクセストークン応答を返す。   When the verification is successful, the second information processing apparatus 2 returns an access token response to the first information processing apparatus 1.

アクセストークン応答は、許可コードと引き換えにアクセストークンを第1の情報処理装置1に渡すためのHTTPレスポンスである。アクセストークンは、第2の情報処理装置2が生成した記号列であって、HTTPヘッダのaccess_tokenパラメータに指定される。   The access token response is an HTTP response for passing the access token to the first information processing apparatus 1 in exchange for an authorization code. The access token is a symbol string generated by the second information processing apparatus 2 and is specified in the access_token parameter of the HTTP header.

また、アクセストークンは、第2の情報処理装置2が所有する複数の属性情報7のうちの一つを特定するためのIDとしての機能も兼ねる。   The access token also functions as an ID for specifying one of the plurality of attribute information 7 owned by the second information processing apparatus 2.

なお、有効期限が切れたアクセストークンの代替となるリフレッシュトークンもアクセストークン応答に含めてもよい。これについては、後述の各アクセストークン応答でも同様である。   Note that a refresh token that replaces an access token that has expired may also be included in the access token response. The same applies to each access token response described later.

(S9)第1の情報処理装置1は、第2の情報処理装置2にアクセストークンを渡すことにより、第2の情報処理装置2にデータ要求を通知する。この場合に要求するデータは、前述のようにユーザの属性情報7(メールアドレス)である。   (S9) The first information processing apparatus 1 notifies the second information processing apparatus 2 of the data request by passing the access token to the second information processing apparatus 2. The data requested in this case is the user attribute information 7 (mail address) as described above.

また、このデータ要求はHTTPリクエストであって、そのHTTPヘッダのaccess_tokenパラメータに上記のアクセストークンが指定される。   This data request is an HTTP request, and the access token is specified in the access_token parameter of the HTTP header.

(S10)第2の情報処理装置2は、第1の情報処理装置1から渡されたアクセストークンと、自身がステップS8で発行したアクセストークンとの同一性を確認する。   (S10) The second information processing apparatus 2 confirms the identity between the access token passed from the first information processing apparatus 1 and the access token issued by itself in step S8.

そして、両者の同一性が確認できた場合には、第2の情報処理装置2は、そのアクセストークンが示すIDに対応する属性情報7(メールアドレス)を特定する。その後、その属性情報7(メールアドレス)をデータ応答に乗せて第2の情報処理装置2に通知する。   When the identity of both can be confirmed, the second information processing apparatus 2 specifies attribute information 7 (mail address) corresponding to the ID indicated by the access token. Thereafter, the attribute information 7 (mail address) is put on the data response and notified to the second information processing apparatus 2.

ここまでのステップにより、第1の情報処理装置1が属性情報7(メールアドレス)を取得できたことになる。   Through the steps so far, the first information processing apparatus 1 has acquired the attribute information 7 (mail address).

次に、第1の情報処理装置1は、以下のようにして第3の情報処理装置3が保有する属性情報8(語学スコア記録証)の取得を試みる。   Next, the first information processing apparatus 1 tries to acquire attribute information 8 (language score record certificate) held by the third information processing apparatus 3 as follows.

(S11)まず、第1の情報処理装置1が第3の情報処理装置3に対して許可要求を通知する。   (S11) First, the first information processing apparatus 1 notifies the third information processing apparatus 3 of a permission request.

この許可要求は、第3の情報処理装置3が保有している属性情報8(語学スコア記録証)の提供を要求するHTTPリクエストであり、端末4から第3の情報処理装置3にリダイレクトされる。   This permission request is an HTTP request for requesting provision of attribute information 8 (language score recording certificate) held by the third information processing apparatus 3 and is redirected from the terminal 4 to the third information processing apparatus 3. .

また、第3の情報処理装置3が保有している複数の属性情報8のうち、第1の情報処理装置1が要求する情報が当該ユーザの語学スコア記録証であることを特定するために、HTTPヘッダのscopeパラメータにはその語学スコア記録証が指定される。   Moreover, in order to specify that the information requested by the first information processing device 1 among the plurality of attribute information 8 held by the third information processing device 3 is the language score record of the user, The language score record is specified in the scope parameter of the HTTP header.

(S12)第3の情報処理装置3は、語学スコア記録証がユーザ本人のものであることを確認するための属性情報7(氏名、住所)を第2の情報処理装置2から取得すべく、その属性情報7(氏名、住所)の提供を要求する許可要求を第2の情報処理装置2に通知する。   (S12) The third information processing apparatus 3 acquires attribute information 7 (name, address) from the second information processing apparatus 2 for confirming that the language score recording certificate belongs to the user. A permission request for requesting provision of the attribute information 7 (name, address) is notified to the second information processing apparatus 2.

この許可要求もHTTPリクエストであり、端末4から第2の情報処理装置2にリダイレクトされる。   This permission request is also an HTTP request and is redirected from the terminal 4 to the second information processing apparatus 2.

更に、第2の情報処理装置2が保有している複数の属性情報7のうち、第3の情報処理装置3が要求する情報が当該ユーザの氏名と住所であることを特定するために、HTTPヘッダのscopeパラメータにはその氏名と住所が指定される。   Furthermore, in order to specify that the information requested by the third information processing device 3 among the plurality of attribute information 7 held by the second information processing device 2 is the name and address of the user, HTTP The name and address are specified in the scope parameter of the header.

(S13)第2の情報処理装置2は、属性情報7(氏名、住所)を第3の情報処理装置3に提供してよいとの同意をユーザから得るために、端末4に同意要求12を通知する。   (S13) The second information processing apparatus 2 sends an agreement request 12 to the terminal 4 in order to obtain consent from the user that the attribute information 7 (name, address) may be provided to the third information processing apparatus 3. Notice.

(S14)ユーザは、属性情報7(氏名、住所)の提供に同意するときは、端末4を操作して第2の情報処理装置2に同意を通知する。   (S14) When the user agrees to provide the attribute information 7 (name, address), the user operates the terminal 4 to notify the second information processing apparatus 2 of the consent.

(S15)ステップS14でユーザの同意が得られた場合には、第2の情報処理装置2は、ステップS12の許可要求に対する応答として第3の情報処理装置3に許可応答を返す。この許可応答もHTTPレスポンスであり、端末4により第3の情報処理装置3にリダイレクトされる。   (S15) When the user's consent is obtained in step S14, the second information processing apparatus 2 returns a permission response to the third information processing apparatus 3 as a response to the permission request in step S12. This permission response is also an HTTP response and is redirected by the terminal 4 to the third information processing apparatus 3.

また、その許可応答のLocationヘッダには、第2の情報処理装置2が生成した記号列が許可コードとして指定される。その許可コードは、属性情報7(氏名、住所)の提供を受けるためのアクセストークンと後で交換される。   In addition, a symbol string generated by the second information processing apparatus 2 is specified as a permission code in the Location header of the permission response. The authorization code is later exchanged with an access token for receiving provision of attribute information 7 (name, address).

(S16)第3の情報処理装置3は、第2の情報処理装置2に対してアクセストークン要求を通知する。このアクセストークン要求は、第2の情報処理装置2から属性情報7(氏名、住所)を得る際に必要となるアクセストークンを要求するHTTPリクエストである。   (S16) The third information processing apparatus 3 notifies the second information processing apparatus 2 of an access token request. This access token request is an HTTP request for requesting an access token necessary for obtaining the attribute information 7 (name, address) from the second information processing apparatus 2.

また、そのアクセストークンのHTTPヘッダのgrant_typeフィールドには、ステップS15で第2の情報処理装置2が発行した許可コードが格納される。   Also, the grant code issued by the second information processing apparatus 2 in step S15 is stored in the grant_type field of the HTTP header of the access token.

(S17)第2の情報処理装置2は、そのアクセストークンに含まれている許可コードを検証し、検証に成功した場合には第3の情報処理装置3にアクセストークン応答を返す。   (S17) The second information processing apparatus 2 verifies the permission code included in the access token, and returns an access token response to the third information processing apparatus 3 if the verification is successful.

アクセストークン応答は、許可コードと引き換えにアクセストークンを第3の情報処理装置3に渡すためのHTTPレスポンスである。そして、第2の情報処理装置2が生成した記号列で表されるアクセストークンが、HTTPヘッダのaccess_tokenパラメータに指定される。   The access token response is an HTTP response for passing the access token to the third information processing apparatus 3 in exchange for an authorization code. Then, the access token represented by the symbol string generated by the second information processing apparatus 2 is specified in the access_token parameter of the HTTP header.

このアクセストークンは、第2の情報処理装置2が所有する複数の属性情報7のうちの一つを特定するためのIDとしての機能も兼ねる。   This access token also functions as an ID for specifying one of the plurality of attribute information 7 owned by the second information processing apparatus 2.

(S18)第3の情報処理装置3は、アクセストークンを第2の情報処理装置2に渡すことにより、第2の情報処理装置2にデータ要求を通知する。この場合に要求するデータは、前述のようにユーザの属性情報7(氏名、住所)である。   (S18) The third information processing apparatus 3 notifies the data request to the second information processing apparatus 2 by passing the access token to the second information processing apparatus 2. The data requested in this case is the user attribute information 7 (name, address) as described above.

(S19)第2の情報処理装置2は、第3の情報処理装置3から渡されたアクセストークンと、自身がステップS17で発行したアクセストークンとの同一性を確認する。   (S19) The second information processing device 2 confirms the identity between the access token passed from the third information processing device 3 and the access token issued by itself in step S17.

そして、その同一性が確認できた場合には、第2の情報処理装置2は、アクセストークンが示すIDに対応した属性情報7(氏名、住所)を特定する。その後、その属性情報7(氏名、住所)をデータ応答に乗せて第3の情報処理装置3に通知する。   When the identity can be confirmed, the second information processing apparatus 2 specifies attribute information 7 (name, address) corresponding to the ID indicated by the access token. Thereafter, the attribute information 7 (name, address) is put on the data response and notified to the third information processing apparatus 3.

ここまでのステップにより、第3の情報処理装置3が属性情報7(氏名、住所)を取得できたことになる。   Through the steps so far, the third information processing apparatus 3 has acquired the attribute information 7 (name, address).

(S20)第3の情報処理装置3は、属性情報8(語学スコア記録証)を第3の情報処理装置3に提供してよいとの同意をユーザから得るために、端末4に同意要求13を通知する。   (S20) The third information processing device 3 requests the consent request 13 from the terminal 4 in order to obtain an agreement from the user that the attribute information 8 (language score record certificate) may be provided to the third information processing device 3. To be notified.

(S21)ユーザは、属性情報8(語学スコア記録証)の提供に同意するときは、端末4を操作して第3の情報処理装置3に同意を通知する。   (S21) When the user agrees to provide the attribute information 8 (language score record certificate), the user operates the terminal 4 to notify the third information processing apparatus 3 of the consent.

(S22)ステップS21で同意が得られたときは、第1の情報処理装置1は、ステップS11の許可要求に対する応答として第1の情報処理装置1に許可応答を返す。この許可応答もHTTPレスポンスであり、端末4により第1の情報処理装置1にリダイレクトされる。   (S22) When consent is obtained in step S21, the first information processing apparatus 1 returns a permission response to the first information processing apparatus 1 as a response to the permission request in step S11. This permission response is also an HTTP response, and is redirected to the first information processing apparatus 1 by the terminal 4.

また、このHTTPレスポンスのLocationヘッダには、第3の情報処理装置3が生成した記号列が許可コードとして格納される。この許可コードは、属性情報8(語学スコア記録証)の提供を受けるためのアクセストークンと後で交換される。   Further, a symbol string generated by the third information processing apparatus 3 is stored as a permission code in the Location header of the HTTP response. This authorization code is later exchanged for an access token for receiving provision of attribute information 8 (language score record certificate).

(S23)第1の情報処理装置1は、第3の情報処理装置3に対してアクセストークン要求を通知する。このアクセストークン要求は、第3の情報処理装置3から属性情報8(語学スコア記録証)を得る際に必要となるアクセストークンを要求するHTTPリクエストである。   (S23) The first information processing apparatus 1 notifies the third information processing apparatus 3 of an access token request. This access token request is an HTTP request for requesting an access token necessary for obtaining the attribute information 8 (language score recording certificate) from the third information processing apparatus 3.

また、そのアクセストークンのHTTPヘッダのgrant_typeフィールドには、ステップS22で第3の情報処理装置3が発行した許可コードが格納される。   In addition, the grant code issued by the third information processing apparatus 3 in step S22 is stored in the grant_type field of the HTTP header of the access token.

(S24)第3の情報処理装置3は、そのアクセストークンに含まれている許可コードを検証し、検証に成功した場合には第1の情報処理装置1にアクセストークン応答を返す。   (S24) The third information processing device 3 verifies the permission code included in the access token and returns an access token response to the first information processing device 1 if the verification is successful.

アクセストークン応答は、許可コードと引き換えにアクセストークンを第1の情報処理装置1に渡すためのHTTPレスポンスである。そして、第3の情報処理装置3が生成した記号列で表されるアクセストークンが、そのHTTPレスポンスのaccess_tokenパラメータに指定される。   The access token response is an HTTP response for passing the access token to the first information processing apparatus 1 in exchange for an authorization code. Then, the access token represented by the symbol string generated by the third information processing apparatus 3 is specified in the access_token parameter of the HTTP response.

そのアクセストークンは、第3の情報処理装置3が所有する複数の属性情報8(語学スコア記録証)のうちの一つを特定するためのIDとしての機能も兼ねる。   The access token also functions as an ID for specifying one of a plurality of attribute information 8 (language score record certificate) owned by the third information processing apparatus 3.

(S25)第1の情報処理装置1は、アクセストークンを第3の情報処理装置3に渡すことにより、第3の情報処理装置3にデータ要求を通知する。この場合に要求するデータはユーザの属性情報8(語学スコア記録証)である。   (S25) The first information processing apparatus 1 notifies the third information processing apparatus 3 of the data request by passing the access token to the third information processing apparatus 3. The data requested in this case is user attribute information 8 (language score record certificate).

(S26)第3の情報処理装置3は、第1の情報処理装置1が提示したアクセストークンと、自身がステップS24で発行したアクセストークンとの同一性を確認する。   (S26) The third information processing device 3 confirms the identity between the access token presented by the first information processing device 1 and the access token issued by itself in step S24.

そして、両者の同一性が確認できた場合には、第3の情報処理装置3は、アクセストークンが示すIDに対応した属性情報8(語学スコア記録証)を特定する。その後、その属性情報8(語学スコア記録証)をデータ応答に乗せて第1の情報処理装置1に通知する。   When the identity of both can be confirmed, the third information processing device 3 specifies attribute information 8 (language score record certificate) corresponding to the ID indicated by the access token. Thereafter, the attribute information 8 (language score recording certificate) is put on the data response and notified to the first information processing apparatus 1.

ここまでのステップにより、第1の情報処理装置1が属性情報8(語学スコア記録証)を取得できたことになる。   By the steps so far, the first information processing apparatus 1 has acquired the attribute information 8 (language score record certificate).

(S27)第1の情報処理装置1は、ユーザの属性情報8(語学スコア記録証)に基づいて、翻訳アルバイトの採用の可否を決定し、その結果をサービス応答として端末4に通知する。   (S27) The first information processing apparatus 1 determines whether or not to adopt the translation part-time job based on the user attribute information 8 (language score record certificate), and notifies the terminal 4 of the result as a service response.

以上により、このシステム10における基本処理を終了する。   Thus, the basic processing in this system 10 is finished.

上記したように、ユーザが同意すべき同意要求11〜13は、ステップS4、S13、S20においてユーザに通知される。これらの複数の同意要求11〜13にいちいち同意するのはユーザにとって煩わしい。   As described above, the consent requests 11 to 13 to which the user should agree are notified to the user in steps S4, S13, and S20. It is troublesome for the user to agree to the plurality of consent requests 11 to 13 one by one.

そこで、これらの同意要求11〜14をステップS4にまとめることで、ユーザの負担を減らすことを考える。   Therefore, it is considered to reduce the burden on the user by collecting these consent requests 11 to 14 in step S4.

図4及び図5は、このように同意要求をまとめた場合の処理の流れについて説明するためのシーケンス図である。なお、図4及び図5において、図2及び図3で説明したのと同じ要素とステップには同じ符号を付し、以下ではその説明を省略する。   4 and 5 are sequence diagrams for explaining the flow of processing when the consent requests are collected in this way. 4 and 5, the same elements and steps as those described in FIGS. 2 and 3 are denoted by the same reference numerals, and the description thereof is omitted below.

以下では、第1〜第3の情報処理装置1〜3の各々を使用するサービス事業者間で予め契約等の取り決めをしておくことで、どの情報処理装置にどの属性情報を提供するのかが事前に決められているものとする。   In the following, it is determined which attribute information is provided to which information processing device by making a contract or the like in advance between service providers using each of the first to third information processing devices 1 to 3. It is assumed that it has been decided in advance.

例えば、属性情報7のメールアドレスを第1の情報処理装置1に提供することと、属性情報7の氏名と住所とを第3の情報処理装置3に提供することが事前に決められているものとする。また、属性情報8の語学スコア記録証を第1の情報処理装置1に提供することも事前に決められているものとする。   For example, it is determined in advance that the mail address of the attribute information 7 is provided to the first information processing apparatus 1 and the name and address of the attribute information 7 are provided to the third information processing apparatus 3. And In addition, it is assumed that the language score record certificate of the attribute information 8 is provided in advance to the first information processing apparatus 1.

このように事前に決めておくことで、第2の情報処理装置2は、ステップS2の許可要求を受けた時点で、後で同意要求11〜13を通知する必要があると判断できる。   By determining in advance as described above, the second information processing apparatus 2 can determine that it is necessary to notify the consent requests 11 to 13 later when the permission request in step S2 is received.

そこで、第2の情報処理装置2は、ステップS4においてユーザに同意要求11を要求する際に、残りの同意要求12、13も合わせてユーザに要求し、ステップS13、S14、S20、S21はスキップする。   Therefore, when the second information processing apparatus 2 requests the consent request 11 from the user in step S4, the second information processing apparatus 2 also requests the remaining consent requests 12 and 13 from the user, and skips steps S13, S14, S20, and S21. To do.

また、ユーザは、これら三つの同意要求11〜13について同意するか否かをステップS5で一度に判断する。   In addition, the user determines at a time in step S5 whether or not to agree on these three consent requests 11-13.

そして、三つの同意要求11〜13の全てに同意する場合のみ、ステップS5においてユーザが第2の情報処理装置2に同意を通知する。   And only when it agrees with all three consent requests 11-13, a user notifies consent to the 2nd information processor 2 in Step S5.

その同意を受けた第2の情報処理装置2は、ユーザが提供に同意した属性情報7、8を同意済み属性として記憶しておく。この例では、属性情報7(メールアドレス、氏名、住所)と属性情報8(語学スコア記録証)とが同意済み属性として記憶される。   The second information processing apparatus 2 that has received the consent stores the attribute information 7 and 8 that the user has agreed to provide as the agreed attributes. In this example, attribute information 7 (email address, name, address) and attribute information 8 (language score recording certificate) are stored as agreed attributes.

そして、ステップS6の許可応答において、第2の情報処理装置2が第1の情報処理装置1に対して同意済み属性(メールアドレス、氏名、住所、語学スコア記録証)を通知する。その通知を受けた第1の情報処理装置1は、当該通知に含まれる同意済み属性(メールアドレス、氏名、住所、語学スコア記録証)をステップS11の許可要求のscopeパラメータに指定することで、最終的にステップS26でその属性を第3の情報処理装置3から取得できる。   Then, in the permission response in step S6, the second information processing device 2 notifies the first information processing device 1 of the agreed attributes (email address, name, address, language score record certificate). Upon receiving the notification, the first information processing apparatus 1 specifies the agreed attributes (e-mail address, name, address, language score record certificate) included in the notification in the scope parameter of the permission request in step S11, Finally, the attribute can be acquired from the third information processing apparatus 3 in step S26.

以上説明したような処理によれば、ステップS4において三つの同意要求11〜13を一度にユーザに通知したことで、ステップS5においてユーザが一度に同意を通知でき、ユーザの負担軽減を図ることができる。   According to the processing described above, by notifying the user of the three consent requests 11 to 13 at a time in step S4, the user can notify the consent at a time in step S5, thereby reducing the burden on the user. it can.

しかし、この処理には次のようなセキュリティ上の問題がある。   However, this process has the following security problems.

例えば、悪意のある第1の情報処理装置1が、ステップS11の許可要求のscopeパラメータに、同意済み属性(メールアドレス、氏名、住所、語学スコア記録証)には含まれないユーザが未同意の属性情報8(例えば看護師免許)を指定する可能性がある。この場合には、第3の情報処理装置3が保有する属性情報8のうち、ユーザが同意していない情報を第1の情報処理装置1が不正に取得することになる。   For example, the malicious first information processing apparatus 1 has not consented to a user who is not included in the agreed attributes (email address, name, address, language score record certificate) in the scope parameter of the permission request in step S11. There is a possibility that attribute information 8 (for example, a nurse's license) is designated. In this case, among the attribute information 8 held by the third information processing apparatus 3, the first information processing apparatus 1 illegally acquires information that the user does not agree with.

以下に、このようなセキュリティ上の問題を解決しつつ、ユーザに複数の同意を要求することがない各実施形態について説明する。   In the following, embodiments will be described in which such a security problem is solved and a plurality of consents are not requested from the user.

(第1実施形態)
図6は、第1実施形態に係る情報提供システムの全体構成例を示す図である。
(First embodiment)
FIG. 6 is a diagram illustrating an example of the overall configuration of the information providing system according to the first embodiment.

図6に示すように、この情報提供システムは、第1〜第3の情報処理装置31〜33と端末34とを有しており、これらがネットワーク36を介して相互に接続される。   As illustrated in FIG. 6, the information providing system includes first to third information processing apparatuses 31 to 33 and a terminal 34, which are connected to each other via a network 36.

このうち、第1の情報処理装置31は例えばユーザにサービスを提供するRPが使用し、第2の情報処理装置32は例えば代理でユーザ認証を行うIdPが使用する。そして、第3の情報処理装置33は、ユーザの属性を提供するAPが使用する。   Among these, the first information processing device 31 is used by, for example, an RP that provides services to the user, and the second information processing device 32 is used by, for example, an IdP that performs user authentication on behalf of the user. The third information processing apparatus 33 is used by an AP that provides user attributes.

各情報処理装置の数は特に限定されず、第1の情報処理装置31と第3の情報処理装置33の数はそれぞれ複数であってもよい。   The number of information processing devices is not particularly limited, and the number of first information processing devices 31 and third information processing devices 33 may be plural.

また、端末34は、ユーザが操作することにより第1の情報処理装置31からサービスを受けるものであって、例えばPC(Personal Computer)、タブレット端末、及びスマートフォン等である。   The terminal 34 receives a service from the first information processing apparatus 31 when operated by the user, and is a PC (Personal Computer), a tablet terminal, a smartphone, or the like, for example.

端末34の数も特に限定されず、ユーザの人数に応じて複数の端末34を設けてもよい。   The number of terminals 34 is not particularly limited, and a plurality of terminals 34 may be provided according to the number of users.

そして、これらの各部を接続するネットワーク36としては、例えばインターネット、LAN(Local Area Network)、WAN(Wide Area Network)、及びVPN(Virtual Private Network)等を採用し得る。   As the network 36 for connecting these units, for example, the Internet, a LAN (Local Area Network), a WAN (Wide Area Network), a VPN (Virtual Private Network), or the like may be employed.

図7は、第1〜第3の情報処理装置31〜33と端末34の各々の機能構成例を示す図である。   FIG. 7 is a diagram illustrating a functional configuration example of each of the first to third information processing devices 31 to 33 and the terminal 34.

図7に示すように、端末34は、ネットワーク36上の情報リソースを扱うためのwebブラウザ35を有する。   As shown in FIG. 7, the terminal 34 has a web browser 35 for handling information resources on the network 36.

一方、第1の情報処理装置31は、第1のメッセージ制御部41と、連携管理部42と、サービスアプリケーション43と、第1の記憶部44とを有する。   On the other hand, the first information processing apparatus 31 includes a first message control unit 41, a cooperation management unit 42, a service application 43, and a first storage unit 44.

このうち、第1メッセージ制御部41は、第1の通知部の一例であって、OAuthやOpenID Connect等の通信プロトコルに従って他の装置との間でメッセージの送受信を行う。   Among these, the 1st message control part 41 is an example of a 1st notification part, Comprising: A message is transmitted / received between other apparatuses according to communication protocols, such as OAuth and OpenID Connect.

例えば、第1のメッセージ制御部41は、第3の情報処理装置33が保有するユーザの後述の属性情報38を取得することについての承認を求める承認依頼を第2の情報処理装置32に通知する。また、第1のメッセージ制御部41は、属性情報38の取得についてユーザの同意が得られたことを示す後述の同意IDが第2の情報処理装置32から通知されたときに、その同意IDを第3の情報処理装置33に通知する。   For example, the first message control unit 41 notifies the second information processing apparatus 32 of an approval request for approval for acquiring the attribute information 38 described later of the user held by the third information processing apparatus 33. . Also, the first message control unit 41, when a later-described consent ID indicating that the user's consent has been obtained for the acquisition of the attribute information 38 is notified from the second information processing apparatus 32, the consent ID is given. The third information processing apparatus 33 is notified.

一方、連携管理部42は、第1〜第3の情報処理装置31〜33のうちのどれがサービスの連携に関与するのかを特定する連携IDを前述の承認依頼に付加する。   On the other hand, the cooperation management unit 42 adds a cooperation ID that specifies which of the first to third information processing apparatuses 31 to 33 is involved in the cooperation of the service to the above-described approval request.

また、サービスアプリケーション43は、ネットワーク36を介してユーザにサービスを提供するプログラムである。そのサービス内容は特に限定されない。以下では、サービスアプリケーション43が翻訳アルバイトを募集するサービスを提供する場合について説明する。   The service application 43 is a program that provides a service to the user via the network 36. The service content is not particularly limited. Hereinafter, a case where the service application 43 provides a service for recruiting a translation part-time job will be described.

また、第1の記憶部44は、第1のメッセージ制御部41が受信した前述の同意IDを記憶する。   The first storage unit 44 stores the above-described consent ID received by the first message control unit 41.

一方、第2の情報処理装置32は、第2のメッセージ制御部51、認証部52、第2の記憶部53、制御部54、及び同意テーブル55を有する。   On the other hand, the second information processing apparatus 32 includes a second message control unit 51, an authentication unit 52, a second storage unit 53, a control unit 54, and an agreement table 55.

このうち、第2のメッセージ制御部51は、第2の通知部の一例であって、OpenID Connectに従って他の装置との間でメッセージの送受信を行う。   Among these, the 2nd message control part 51 is an example of a 2nd notification part, Comprising: A message is transmitted / received between other apparatuses according to OpenID Connect.

例えば、第2のメッセージ制御部51は、第1の情報処理装置31から前述の承認依頼を受けたときに、属性情報38を第1の情報処理装置31に提供することについての同意をユーザに要求する。そして、その同意が得られたときに、第1の情報処理装置31は同意IDを第1の情報処理装置31に通知する。   For example, when the second message control unit 51 receives the above-described approval request from the first information processing device 31, the second message control unit 51 gives the user consent to provide the attribute information 38 to the first information processing device 31. Request. When the consent is obtained, the first information processing device 31 notifies the first information processing device 31 of the consent ID.

また、認証部52は、前述の承認依頼を受けたときに、第1の情報処理装置31や第3の情報処理装置33の代わりにユーザの認証を行う。認証方法は特に限定されず、例えばパスワード認証で認証を行い得る。   The authentication unit 52 authenticates the user instead of the first information processing apparatus 31 and the third information processing apparatus 33 when receiving the above-described approval request. The authentication method is not particularly limited, and for example, authentication can be performed by password authentication.

そして、第2の記憶部53には、ユーザ認証に必要なユーザIDとパスワード等の認証情報39が予め登録される。   In the second storage unit 53, authentication information 39 such as a user ID and password required for user authentication is registered in advance.

その他に、ユーザの氏名、住所、及びメールアドレス等の複数の属性情報37も認証テーブル53に格納される。なお、属性情報37はこれらに限定されない。以下では、ユーザに関連する任意の情報を属性情報37と呼ぶ。   In addition, a plurality of attribute information 37 such as the user's name, address, and mail address is also stored in the authentication table 53. The attribute information 37 is not limited to these. Hereinafter, arbitrary information related to the user is referred to as attribute information 37.

制御部54は、ユーザが同意していない属性情報38が第1の情報処理装置31に取得されるのを防ぐ機能を有し、前述の同意IDを生成する生成部54aと、その同意IDの正当性を確認する確認部54bとを有する。   The control unit 54 has a function of preventing the attribute information 38 that the user has not agreed to be acquired by the first information processing apparatus 31, the generation unit 54 a that generates the above-described consent ID, and the agreement ID And a confirmation unit 54b for confirming validity.

そして、同意テーブル55は、同意IDの正当性を確認するのに使用されるものであって、例えば図8のような属性を有する。   The consent table 55 is used to confirm the validity of the consent ID, and has attributes as shown in FIG. 8, for example.

図8は、同意テーブル55の一例を示す図である。   FIG. 8 is a diagram illustrating an example of the consent table 55.

この例では、同意テーブル55には、「同意ID」、「ユーザセッション」、「連携ID」、「連携元」、及び「状態チェックフラグ」の各属性が設定される。   In this example, in the consent table 55, attributes of “consent ID”, “user session”, “cooperation ID”, “cooperation source”, and “state check flag” are set.

このうち、「同意ID」は、各情報処理装置31〜33を流れるメッセージに一意に付加される記号列であって、同意識別子の一例である。   Among these, the “consent ID” is a symbol string uniquely added to a message flowing through each of the information processing apparatuses 31 to 33, and is an example of a consent identifier.

確認部54b(図7参照)は、後述のように同意テーブル55に同意IDが存在するかを確認し、その確認を終了した場合には「状態チェックフラグ」が「1」とし、確認が行われていない場合には状態チェックフラグが「0」とする。   As will be described later, the confirmation unit 54b (see FIG. 7) confirms whether the consent ID exists in the consent table 55. When the confirmation is completed, the “status check flag” is set to “1”, and the confirmation is performed. If not, the status check flag is set to “0”.

また、「ユーザセッション」は、第2の情報処理装置32と端末34との間で確立されたセッションである。そして、「連携ID」は、第1〜第3の情報処理装置31〜33のうち、どの情報処理装置が連携してユーザにサービスを提供するのかを特定するIDであって、連携識別子の一例である。   The “user session” is a session established between the second information processing apparatus 32 and the terminal 34. The “cooperation ID” is an ID that identifies which information processing device of the first to third information processing devices 31 to 33 cooperates to provide a service to the user, and is an example of a cooperation identifier. It is.

更に、「連携元」は、OAuthやOpenID Connectプロトコルに従って第2の情報処理装置32に対して前述の承認依頼を通知してきた要求元の情報処理装置を示す。   Further, “cooperation source” indicates the requesting information processing apparatus that has notified the second information processing apparatus 32 of the approval request according to the OAuth or OpenID Connect protocol.

再び図7を参照する。   Refer to FIG. 7 again.

第3の情報処理装置33は、第3のメッセージ制御部61、第3の記憶部62、サービスアプリケーション63、及び管理部64を有する。   The third information processing apparatus 33 includes a third message control unit 61, a third storage unit 62, a service application 63, and a management unit 64.

このうち、第3の記憶部62は、ユーザの複数の属性情報38を記憶する。その属性情報38は、例えばユーザが過去に取得した資格等であり、語学スコア記録証や看護師免許等が含まれる。なお、属性情報38はこれらに限定されず、ユーザに関連する任意の情報を属性情報38とし得る。   Among these, the 3rd memory | storage part 62 memorize | stores the some attribute information 38 of a user. The attribute information 38 is, for example, a qualification acquired by the user in the past, and includes a language score record certificate, a nurse license, and the like. The attribute information 38 is not limited to these, and any information related to the user can be used as the attribute information 38.

また、第3のメッセージ制御部61は、第3の通知部の一例であって、OAuthやOpenID Connect等の通信プロトコルに従って他の装置との間でメッセージの送受信を行う。   The third message control unit 61 is an example of a third notification unit, and transmits and receives messages to and from other devices according to a communication protocol such as OAuth or OpenID Connect.

また、サービスアプリケーション63は、第3の記憶部62に記憶されている属性情報38を第1の情報処理装置31に提供するプログラムである。例えば、サービスアプリケーション63は、ユーザの過去の履歴として属性情報38に含まれる語学スコア記録証や看護師免許を提供する履歴サービスを実現するプログラムである。   The service application 63 is a program that provides the attribute information 38 stored in the third storage unit 62 to the first information processing apparatus 31. For example, the service application 63 is a program that implements a history service that provides a language score record certificate and a nurse license included in the attribute information 38 as the user's past history.

そして、管理部64は、ユーザが同意していない属性情報38が第1の情報処理装置31に取得されるのを防ぐ機能を有し、依頼部64aと判断部64bとを有する。   The management unit 64 has a function of preventing the first information processing apparatus 31 from acquiring the attribute information 38 that the user has not agreed to, and includes a request unit 64a and a determination unit 64b.

このうち、依頼部64aは、第1の情報処理装置31から通知された同意IDの正当性についての確認を第2の情報処理装置32に依頼する。   Among these, the request unit 64 a requests the second information processing apparatus 32 to confirm the validity of the consent ID notified from the first information processing apparatus 31.

そして、その正当性が第2の情報処理装置32の確認部54bによって確認されたときに、第3のメッセージ制御部61が第1の情報処理装置31に属性情報38を通知する。なお、同意IDの正当性が確認されないときは、第3のメッセージ制御部61は第1の情報処理装置31に属性情報38を通知しない。   Then, when the validity is confirmed by the confirmation unit 54 b of the second information processing device 32, the third message control unit 61 notifies the first information processing device 31 of the attribute information 38. When the validity of the consent ID is not confirmed, the third message control unit 61 does not notify the first information processing apparatus 31 of the attribute information 38.

また、判断部64bは、ユーザが未同意の属性情報38を提供するのを防ぐために、第2の情報処理装置32から属性情報38の提供についてユーザの同意が得られとの情報が通知されたとき、その属性情報38が第1の情報処理装置31が要求するものと同一かを判断する。   In addition, the determination unit 64b is notified of the information that the user's consent has been obtained for the provision of the attribute information 38 from the second information processing device 32 in order to prevent the user from providing the unacknowledged attribute information 38. At this time, it is determined whether the attribute information 38 is the same as that requested by the first information processing apparatus 31.

次に、本実施形態に係る情報提供システムの動作について説明する。   Next, the operation of the information providing system according to this embodiment will be described.

図9及び図10は、本実施形態に係る情報提供システムの動作の一例を示すシーケンス図である。   9 and 10 are sequence diagrams illustrating an example of the operation of the information providing system according to the present embodiment.

以下では、ユーザが端末34を操作することにより、第1の情報処理装置31が募集している翻訳アルバイトに応募する場合を例にして説明する。この場合、ユーザの英語力を確認するために、第1の情報処理装置31は第3の情報処理装置33から属性情報38として語学スコア記録証を要求する。   Hereinafter, a case where a user operates the terminal 34 to apply for a translation part-time job recruited by the first information processing apparatus 31 will be described as an example. In this case, in order to confirm the user's English ability, the first information processing device 31 requests a language score recording certificate from the third information processing device 33 as the attribute information 38.

更に、第1の情報処理装置31は、ユーザと連絡を取るために、第2の情報処理装置32に対して属性情報37としてメールアドレスを要求するものとする。また、第3の情報処理装置33は、語学スコア記録証がユーザ本人のものであるかを確認するために、第2の情報処理装置32に対して氏名と住所とを要求するものとする。   Furthermore, the first information processing apparatus 31 requests a mail address as attribute information 37 from the second information processing apparatus 32 in order to contact the user. The third information processing device 33 requests the second information processing device 32 for a name and an address in order to confirm whether or not the language score recording certificate belongs to the user.

なお、図9及び図10において、実線で示す処理はOpenID Connectに即した処理を示し、一点鎖線で示す処理はOAuth 2.0に即した処理を示す。また、点線で示す処理は、これらのプロトコルで規定されていない処理を示す。   In FIGS. 9 and 10, the process indicated by the solid line indicates a process conforming to OpenID Connect, and the process indicated by the alternate long and short dash line indicates a process conforming to OAuth 2.0. Moreover, the process shown with a dotted line shows the process which is not prescribed | regulated by these protocols.

以下、図9及び図10に示す処理をステップ番号に沿って説明する。   In the following, the process illustrated in FIGS. 9 and 10 will be described in order of step number.

(S50)まず、第1の情報処理装置31が募集している翻訳アルバイトに応募するために、ユーザが端末34を操作することにより、webブラウザ35から第1の情報処理装置31にサービス要求を通知する。   (S50) First, in order to apply for a translation part-time job recruited by the first information processing apparatus 31, the user operates the terminal 34, thereby making a service request from the web browser 35 to the first information processing apparatus 31. Notice.

(S51)そのサービス要求を受けて、第1の情報処理装置31の第1のメッセージ制御部41が、第2の情報処理装置32に対して承認依頼70を通知する。   (S51) Upon receiving the service request, the first message control unit 41 of the first information processing apparatus 31 notifies the second information processing apparatus 32 of the approval request 70.

承認依頼70は、属性情報37(メールアドレス)と属性情報38(語学スコア記録証)とを第1の情報処理装置31が取得してよいとの承認を第2の情報処理装置32に求めるHTTPリクエストであり、端末34から第2の情報処理装置32にリダイレクトされる。   The approval request 70 is an HTTP requesting the second information processing device 32 for approval that the first information processing device 31 may acquire the attribute information 37 (mail address) and the attribute information 38 (language score recording certificate). This request is redirected from the terminal 34 to the second information processing apparatus 32.

なお、この承認依頼70には、第3の情報処理装置33が属性情報37(氏名、住所)を取得してよいとの承認を第2の情報処理装置32に求める依頼も含まれる。   The approval request 70 includes a request for requesting the second information processing apparatus 32 to approve that the third information processing apparatus 33 may acquire the attribute information 37 (name, address).

また、この例ではHTTPヘッダにFEDパラメータを設け、そのFEDパラメータに連携IDの値を指定する。   In this example, an FED parameter is provided in the HTTP header, and the value of the linkage ID is specified in the FED parameter.

連携IDは、前述のように第1〜第3の情報処理装置31〜33のうちどの情報処理装置が連携してユーザにサービスを提供するのかを示すIDであって、連携管理部42によりHTTPヘッダに付加される。   The cooperation ID is an ID indicating which information processing apparatus of the first to third information processing apparatuses 31 to 33 cooperates to provide a service to the user as described above. It is added to the header.

連携に関与する第1〜第3の情報処理装置31〜33とFEDパラメータの値との対応関係は特に限定されない。   The correspondence relationship between the first to third information processing devices 31 to 33 involved in the cooperation and the value of the FED parameter is not particularly limited.

例えば、第1〜第3の情報処理装置31〜33の全てが連携する場合には、FED=001とし得る。   For example, when all of the first to third information processing apparatuses 31 to 33 are linked, FED = 001 can be set.

一方、第3の情報処理装置33が連携に関与せずに、第1の情報処理装置31と第2の情報処理装置32のみが連携する場合には、HTTPヘッダにFEDパラメータを含めない。   On the other hand, when only the first information processing apparatus 31 and the second information processing apparatus 32 cooperate without the third information processing apparatus 33 participating in the cooperation, the FED parameter is not included in the HTTP header.

本例では、第1〜第3の情報処理装置31〜33の全てが連携するため、FED=001とする。   In this example, since all of the first to third information processing apparatuses 31 to 33 cooperate, FED = 001.

なお、各属性情報37、38のうちのどの情報を各情報処理装置31〜33のうちのどの情報処理装置に提供するかは、各情報処理装置31〜33の間で予め取り決められている。   In addition, which information of the information processing devices 31 to 33 is provided to which information of the attribute information 37 and 38 is determined in advance among the information processing devices 31 to 33.

よって、FEDパラメータにより連携に関与する情報処理装置が分かれば、各属性情報37、38のうちのどの情報を各情報処理装置31〜33のうちのどの情報処理装置に提供するかを判断できる。したがって、提供を求める属性情報を承認依頼70のscopeパラメータに指定しなくても、第2の情報処理装置32は、FEDパラメータを参照することでどの属性情報をどの情報処理装置に提供すべきかを判断できる。   Therefore, if the information processing apparatus involved in the cooperation is known by the FED parameter, it is possible to determine which information of the attribute information 37 and 38 is provided to which of the information processing apparatuses 31 to 33. Therefore, even if the attribute information to be provided is not specified in the scope parameter of the approval request 70, the second information processing apparatus 32 refers to the FED parameter to determine which attribute information should be provided to which information processing apparatus. I can judge.

例えば、FED=001の場合には、属性情報37(メールアドレス)と属性情報38(語学スコア記録証)とを第1の情報処理装置31に提供し、かつ、第3の情報処理装置33に属性情報37(氏名、住所)を提供することを予め決めておく。これにより、第2の情報処理装置32は、FED=001のときの各属性情報37、58の提供先がどの情報処理装置であるかを判断できる。   For example, when FED = 001, the attribute information 37 (mail address) and attribute information 38 (language score record certificate) are provided to the first information processing apparatus 31 and the third information processing apparatus 33 is provided. It is predetermined to provide the attribute information 37 (name, address). Thereby, the second information processing apparatus 32 can determine which information processing apparatus is the provision destination of the attribute information 37 and 58 when FED = 001.

(S52)第2の情報処理装置32の制御部54が、承認依頼70に付加されたFEDパラメータの値を同意テーブル55(図8参照)の「連携ID」に格納する。   (S52) The control unit 54 of the second information processing apparatus 32 stores the value of the FED parameter added to the approval request 70 in the “cooperation ID” of the consent table 55 (see FIG. 8).

これと共に、制御部54は、同意テーブル55の「連携元」に「第1の情報処理装置31」を格納する。前述のように、「連携元」は、承認依頼70を要求してきた要求元の情報処理装置であって、その承認依頼70の送信元URLから制御部54が判断する。   At the same time, the control unit 54 stores “first information processing apparatus 31” in “cooperation source” of the consent table 55. As described above, the “cooperation source” is a request source information processing apparatus that has requested the approval request 70, and the control unit 54 determines from the transmission source URL of the approval request 70.

(S53)第2の情報処理装置32の認証部52は、ユーザが第2の情報処理装置32と第3の情報処理装置33の各々を利用する権限があるかを確認するために、端末34に対して認証要求71を通知する。   (S53) The authentication unit 52 of the second information processing device 32 confirms whether the user has authority to use each of the second information processing device 32 and the third information processing device 33. Is notified of the authentication request 71.

また、第2の情報処理装置32の第2のメッセージ制御部51が端末34との間でユーザセッションを確立し、そのユーザセッションに対応したcookieを生成する。そして、第2のメッセージ制御部51が認証要求71にそのcookieを付加し、端末34のwebブラウザ35がそのcookieを受け取る。   Further, the second message control unit 51 of the second information processing apparatus 32 establishes a user session with the terminal 34 and generates a cookie corresponding to the user session. Then, the second message control unit 51 adds the cookie to the authentication request 71, and the web browser 35 of the terminal 34 receives the cookie.

なお、webブラウザ35は、以降のステップで第2の情報処理装置32にアクセスするときは、このcookieを第2の情報処理装置32の第2のメッセージ制御部51に渡す。   The web browser 35 passes this cookie to the second message control unit 51 of the second information processing device 32 when accessing the second information processing device 32 in the subsequent steps.

(S54)ユーザは、第2の情報処理装置32にログインするための認証ID(A_ID)とパスワード(PW)を端末34のwebブラウザ35に入力する。そして、その認証IDとパスワード(PW)とが、認証情報72としてwebブラウザ35から第2の情報処理装置32に通知される。   (S54) The user inputs an authentication ID (A_ID) and a password (PW) for logging in to the second information processing apparatus 32 to the web browser 35 of the terminal 34. Then, the authentication ID and the password (PW) are notified as authentication information 72 from the web browser 35 to the second information processing apparatus 32.

なお、この例ではシングルサイオンを採用するため、第3の情報処理装置33にログインするための認証は、第2の情報処理装置32にログインするための認証が成功すれば不要である。   In this example, since single scion is adopted, authentication for logging in to the third information processing apparatus 33 is unnecessary if the authentication for logging in to the second information processing apparatus 32 is successful.

その後、認証部52は、その認証情報72が第2の記憶部53に予め登録されている認証情報39と等しいかどうかを確認し、両者が等しい場合に認証が成功したと判断する。   Thereafter, the authentication unit 52 confirms whether or not the authentication information 72 is equal to the authentication information 39 registered in advance in the second storage unit 53, and determines that the authentication has succeeded when both are equal.

(S55)ステップS54の認証が成功した場合、第2の情報処理装置32の第2のメッセージ制御部51が端末34に同意要求73を通知する。   (S55) When the authentication in step S54 is successful, the second message control unit 51 of the second information processing device 32 notifies the terminal 34 of the consent request 73.

その同意要求73は、第1〜第3の情報処理装置31〜33のいずれかに属性情報37や属性情報38を提供してよいとの同意をユーザに求める要求である。   The consent request 73 is a request for asking the user for consent that the attribute information 37 or the attribute information 38 may be provided to any of the first to third information processing apparatuses 31 to 33.

ここで、提供すべき属性情報37、38と、提供先の第1〜第3の情報処理装置31〜33とは、ステップS52で同意テーブル55に格納されている連携IDに基づいて第2のメッセージ制御部51が判断する。   Here, the attribute information 37 and 38 to be provided and the first to third information processing apparatuses 31 to 33 as the provision destinations are set based on the cooperation ID stored in the agreement table 55 in step S52. The message control unit 51 determines.

例えば、連携IDのFEDパラメータが001の場合は、第2のメッセージ制御部51が第1〜第3の情報処理装置31〜33の全てがサービスに関与すると判断する。そして、第2のメッセージ制御部51が、その同意要求73に、属性情報37(メールアドレス)と属性情報38(語学スコア記録証)とを第1の情報処理装置31に提供してよいとの同意を含める。また、第2のメッセージ制御部51は、その同意要求73に、第3の情報処理装置33に属性情報37(氏名、住所)を提供してもよいとの同意も含める。   For example, when the FED parameter of the cooperation ID is 001, the second message control unit 51 determines that all of the first to third information processing devices 31 to 33 are involved in the service. Then, the second message control unit 51 may provide the first information processing device 31 with the attribute information 37 (mail address) and the attribute information 38 (language score record certificate) in the consent request 73. Include consent. Further, the second message control unit 51 includes an agreement that the attribute information 37 (name, address) may be provided to the third information processing apparatus 33 in the consent request 73.

(S56)ユーザは、属性情報37(メールアドレス、氏名、住所)と属性情報38(語学スコア記録証)の提供に同意するときは、端末34を操作して第2の情報処理装置32に同意74を通知する。   (S56) When the user agrees to provide attribute information 37 (email address, name, address) and attribute information 38 (language score record certificate), the user operates the terminal 34 and agrees with the second information processing apparatus 32. 74 is notified.

このように複数の属性情報37、38の提供についての同意を一度で済ますことで、ユーザの負担軽減を実現することができる。   As described above, the user's burden can be reduced by once consenting to the provision of the plurality of pieces of attribute information 37 and 38.

なお、同意74には、ステップS53で第2の情報処理装置32から渡されたcookieがwebブラウザ35により付加される。   Note that the cookie passed from the second information processing apparatus 32 in step S53 is added to the consent 74 by the web browser 35.

(S57)上記の同意74を受けて、第2の情報処理装置32の生成部54bが同意IDを生成する。その同意IDは、制御部54によって同意テーブル55の属性「同意ID」に格納される。ここでは、例えば同意ID = ID00xyzとする。   (S57) Upon receiving the consent 74, the generation unit 54b of the second information processing apparatus 32 generates an agreement ID. The consent ID is stored in the attribute “consent ID” of the consent table 55 by the control unit 54. Here, for example, consent ID = ID00xyz.

更に、制御部54が、同意74に含まれるcookieに対応したユーザセッションを同意テーブル55の「ユーザセッション」に格納する。   Further, the control unit 54 stores the user session corresponding to the cookie included in the consent 74 in the “user session” of the consent table 55.

(S58)第2の情報処理装置32の第2のメッセージ制御部51は、ステップS51の承認依頼70に対する応答を第1の情報処理装置31に通知するために、第1の情報処理装置31に許可応答75を返す。   (S58) The second message control unit 51 of the second information processing apparatus 32 notifies the first information processing apparatus 31 to notify the first information processing apparatus 31 of a response to the approval request 70 in step S51. A permission response 75 is returned.

その許可応答75はHTTPレスポンスであって、端末34により第1の情報処理装置31にリダイレクトされる。このリダイレクトの際、そのHTTPヘッダには、ステップS53で第2の情報処理装置32から端末34に渡されたcookieが、端末34により付加される。   The permission response 75 is an HTTP response and is redirected to the first information processing apparatus 31 by the terminal 34. At the time of this redirection, the cookie passed from the second information processing apparatus 32 to the terminal 34 in step S53 is added by the terminal 34 to the HTTP header.

更に、そのHTTPヘッダには、ステップS57で生成した同意IDが第2のメッセージ制御部51により付加される。   Further, the consent ID generated in step S57 is added to the HTTP header by the second message control unit 51.

図11は、許可応答75の一例を示す図である。   FIG. 11 is a diagram illustrating an example of the permission response 75.

この例では、HTTPヘッダにconsentIDパラメータ75aを設け、そのconsentIDパラメータに同意IDのID00xyzを指定する。   In this example, the consentID parameter 75a is provided in the HTTP header, and the consent ID ID00xyz is specified in the consentID parameter.

また、このHTTPレスポンスには許可コード75bも付加される。許可コード75bは、第2の情報処理装置32が生成した記号列であって、HTTPレスポンスのLocationヘッダに指定される。その許可コードは、第2の情報処理装置32から属性情報37(メールアドレス)の提供を受けるためのアクセストークンと後で交換される。   In addition, a permission code 75b is also added to this HTTP response. The permission code 75b is a symbol string generated by the second information processing apparatus 32, and is specified in the Location header of the HTTP response. The permission code is later exchanged with an access token for receiving provision of attribute information 37 (mail address) from the second information processing apparatus 32.

再び図9を参照する。   Refer to FIG. 9 again.

(S59)第1の情報処理装置31の連携管理部42は、許可応答75に付加されている同意IDを第1の記憶部44に格納する。   (S59) The cooperation management unit 42 of the first information processing apparatus 31 stores the consent ID added to the permission response 75 in the first storage unit 44.

(S60)第1の情報処理装置31の第1のメッセージ制御部41は、第2の情報処理装置32に対してアクセストークン要求を通知する。   (S60) The first message control unit 41 of the first information processing device 31 notifies the second information processing device 32 of an access token request.

アクセストークン要求は、第2の情報処理装置32から属性情報37(メールアドレス)を得る際に必要となるアクセストークンを要求するHTTPリクエストであって、そのHTTPヘッダのgrant_typeパラメータには前述の許可コードが指定される。   The access token request is an HTTP request for requesting an access token necessary for obtaining the attribute information 37 (mail address) from the second information processing apparatus 32, and the grant code type parameter of the HTTP header includes the above-described permission code. Is specified.

(S61)第2の情報処理装置32の第2のメッセージ制御部51は、そのアクセストークン要求に含まれている許可コードの正当性を検証する。   (S61) The second message control unit 51 of the second information processing apparatus 32 verifies the validity of the permission code included in the access token request.

そして、検証に成功した場合には、第2のメッセージ制御部51が第1の情報処理装置31にアクセストークン応答を返す。   When the verification is successful, the second message control unit 51 returns an access token response to the first information processing apparatus 31.

アクセストークン応答は、許可コードをアクセストークンに交換し、そのアクセストークンを第1の情報処理装置31に通知するためのHTTPレスポンスである。アクセストークンは、第2のメッセージ制御部51が生成した記号列であって、HTTPヘッダのaccess_tokenパラメータに指定される。   The access token response is an HTTP response for exchanging the authorization code for an access token and notifying the first information processing apparatus 31 of the access token. The access token is a symbol string generated by the second message control unit 51, and is specified in the access_token parameter of the HTTP header.

また、アクセストークンは、第2の情報処理装置32が所有する複数の属性情報37のうち、提供を許可する属性情報37を特定するIDとしての機能も有する。   The access token also has a function as an ID that identifies the attribute information 37 that is permitted to be provided among the plurality of attribute information 37 owned by the second information processing apparatus 32.

なお、有効期限が切れたアクセストークンの代替となるリフレッシュトークンもアクセストークン応答に含めてもよい。これについては、後述の各アクセストークン応答でも同様である。   Note that a refresh token that replaces an access token that has expired may also be included in the access token response. The same applies to each access token response described later.

(S62)第1の情報処理装置31の第1のメッセージ制御部41は、第2の情報処理装置32にアクセストークンを渡すことにより、第2の情報処理装置32にデータ要求を通知する。この場合に要求するデータは、ユーザの属性情報37(メールアドレス)である。   (S62) The first message control unit 41 of the first information processing device 31 notifies the second information processing device 32 of the data request by passing the access token to the second information processing device 32. The data requested in this case is user attribute information 37 (mail address).

また、このデータ要求はHTTPリクエストであって、そのHTTPヘッダのaccess_tokenパラメータに上記のアクセストークンが指定される。   This data request is an HTTP request, and the access token is specified in the access_token parameter of the HTTP header.

(S63)第2の情報処理装置32の第2のメッセージ制御部51は、第1の情報処理装置31から渡されたアクセストークンと、自身がステップS61で発行したアクセストークンとの同一性を確認する。   (S63) The second message control unit 51 of the second information processing device 32 confirms the identity between the access token passed from the first information processing device 31 and the access token issued by itself in step S61. To do.

そして、その同一性が確認できた場合には、第2のメッセージ制御部51は、アクセストークンに対応した属性情報37(メールアドレス)を特定する。その後、その属性情報37(メールアドレス)をデータ応答に乗せて第2の情報処理装置32に通知する。   If the identity can be confirmed, the second message control unit 51 identifies attribute information 37 (email address) corresponding to the access token. Thereafter, the attribute information 37 (mail address) is put on the data response and notified to the second information processing apparatus 32.

ここまでのステップにより、第1の情報処理装置31が属性情報37(メールアドレス)を取得できたことになる。   Through the steps so far, the first information processing apparatus 31 has acquired the attribute information 37 (mail address).

次に、第1の情報処理装置31は、以下のようにして第3の情報処理装置33が保有する属性情報38(語学スコア記録証)の取得を試みる。   Next, the first information processing apparatus 31 tries to acquire the attribute information 38 (language score record certificate) held by the third information processing apparatus 33 as follows.

(S64)まず、第1の情報処理装置31の第1のメッセージ制御部41が、第3の情報処理装置33に対して許可要求76を通知する。   (S64) First, the first message control unit 41 of the first information processing apparatus 31 notifies the third information processing apparatus 33 of a permission request 76.

この許可要求76は、第3の情報処理装置33が保有している属性情報38(語学スコア記録証)の提供についての許可を要求するHTTPリクエストであり、端末34によって第3の情報処理装置33にリダイレクトされる。   This permission request 76 is an HTTP request for requesting permission for provision of attribute information 38 (language score recording certificate) held by the third information processing apparatus 33. Redirected to

また、第3の情報処理装置33が保有している複数の属性情報38のうち、第1の情報処理装置31が要求する情報が語学スコア記録証であることを通知するために、HTTPヘッダのscopeパラメータにはその語学スコア記録証が指定される。   In order to notify that the information requested by the first information processing device 31 among the plurality of attribute information 38 held by the third information processing device 33 is a language score record certificate, The scope parameter specifies the language score record.

更に、第1の情報処理装置31の連携管理部42は、記憶部44に格納しておいた同意IDをそのHTTPヘッダのconsentIDパラメータに指定する。これにより、同意IDが第3の情報処理装置33に通知されることになる。   Furthermore, the cooperation management unit 42 of the first information processing apparatus 31 designates the consent ID stored in the storage unit 44 in the consentID parameter of the HTTP header. Thereby, the consent ID is notified to the third information processing apparatus 33.

(S65)第3の情報処理装置33の管理部64は、同意IDを第3の記憶部62に格納する。   (S65) The management unit 64 of the third information processing apparatus 33 stores the consent ID in the third storage unit 62.

(S66)管理部64の依頼部64aは、第1の情報処理装置31から通知された同意IDの正当性を確認するために、第3のメッセージ制御部61を介して第2の情報処理装置32に対して確認依頼77を通知する。   (S66) The request unit 64a of the management unit 64 checks the validity of the consent ID notified from the first information processing device 31 via the third message control unit 61. 32 is notified of confirmation request 77.

その確認依頼77は、属性情報37(氏名、住所)の取得についての許可を第2の情報処理装置32に要求する許可要求も兼ねたHTTPリクエストであり、そのHTTPヘッダのscopeパラメータには氏名と住所が指定される。   The confirmation request 77 is an HTTP request that also serves as a permission request that requests the second information processing apparatus 32 for permission to acquire the attribute information 37 (name and address), and the scope parameter of the HTTP header includes the name and the name. An address is specified.

また、第2の情報処理装置32に同意IDを通知するために、HTTPヘッダのconsentIDパラメータには、第3の記憶部62に格納した同意IDが同意管理部64により指定される。   In addition, in order to notify the second information processing apparatus 32 of the consent ID, the consent ID stored in the third storage unit 62 is specified by the consent management unit 64 in the consentID parameter of the HTTP header.

なお、その確認依頼77は端末34から第2の情報処理装置32にリダイレクトされる。そのリダイレクトの際、端末34のwebブラウザ35によって確認依頼77にcookieが付加される。   The confirmation request 77 is redirected from the terminal 34 to the second information processing apparatus 32. At the time of the redirect, a cookie is added to the confirmation request 77 by the web browser 35 of the terminal 34.

(S67)第2の情報処理装置32の確認部54bは、確認依頼77に付加された同意IDの正当性を確認する。同意IDの正当性とは、その同意IDがステップS57で生成されたものであることを言う。   (S67) The confirmation unit 54b of the second information processing apparatus 32 confirms the validity of the consent ID added to the confirmation request 77. The validity of the consent ID means that the consent ID is generated in step S57.

同意IDの正当性を確認するために、確認部54bは、確認依頼77の同意ID(ID00xyz)が同意テーブル55に存在するか否かを確認する。そして、同意IDが同意テーブル55に存在した場合、同意IDの正当性が確認されたことになる。   In order to confirm the validity of the consent ID, the confirmation unit 54 b confirms whether the consent ID (ID00xyz) of the confirmation request 77 exists in the consent table 55. If the consent ID exists in the consent table 55, the validity of the consent ID is confirmed.

ここで、このように同意IDの正当性が確認された場合は、属性情報38の提供についてのユーザの同意が既に済んでいることになる。   Here, when the validity of the consent ID is confirmed in this way, the user's consent for providing the attribute information 38 has already been completed.

一方、同意IDの正当性が確認されない場合は、ユーザが同意していない状態で第1の情報処理装置31が第3の情報処理装置33の属性情報38を不正に取得しようとしていることになる。よって、この場合には第2の情報処理装置32から第1の情報処理装置31にエラーメッセージを通知し、これ以降の処理は行わない。これにより、ユーザが同意していない状態で第1の情報処理装置31が第3の情報処理装置33の属性情報38を不正に取得するのを防止することができる。   On the other hand, if the validity of the consent ID is not confirmed, the first information processing apparatus 31 is attempting to illegally acquire the attribute information 38 of the third information processing apparatus 33 without the user consenting. . Therefore, in this case, an error message is notified from the second information processing device 32 to the first information processing device 31, and the subsequent processing is not performed. Thereby, it is possible to prevent the first information processing apparatus 31 from illegally acquiring the attribute information 38 of the third information processing apparatus 33 in a state where the user does not agree.

また、確認部54bが、確認依頼77に付加されたcookieに基づいてユーザセッションを特定し、そのユーザセッションが同意テーブル55に存在するかどうかを確認してもよい。   Further, the confirmation unit 54 b may identify a user session based on the cookie added to the confirmation request 77 and confirm whether or not the user session exists in the consent table 55.

その確認の結果、ユーザセッションが同意テーブル55に存在しないと判断された場合には、ステップS56で同意74を通知したのとは別の端末34が使用されており、ユーザが入れ替わっている可能性がある。よって、この場合にも第2の情報処理装置32から第1の情報処理装置31にエラーメッセージを通知し、これ以降の処理は行わない。これにより、ユーザのなりすましを防止することができる。   As a result of the confirmation, if it is determined that the user session does not exist in the consent table 55, the terminal 34 different from the one that has notified the consent 74 in step S56 is used, and the user may be switched. There is. Therefore, also in this case, the error message is notified from the second information processing device 32 to the first information processing device 31, and the subsequent processing is not performed. Thereby, a user's impersonation can be prevented.

(S68)ステップS67で同意IDの正当性が確認された場合には、第2の情報処理装置32の第2のメッセージ制御部51が第3の情報処理装置33に応答通知78を通知する。   (S68) When the validity of the consent ID is confirmed in step S67, the second message control unit 51 of the second information processing apparatus 32 notifies the third information processing apparatus 33 of a response notification 78.

その応答通知78は、確認依頼77に応答するためのHTTPレスポンスであり、端末34から第3の情報処理装置33にリダイレクトされる。   The response notification 78 is an HTTP response for responding to the confirmation request 77 and is redirected from the terminal 34 to the third information processing apparatus 33.

そして、その応答通知78には、ユーザが属性情報38(語学スコア記録証)の提供に同意した旨の情報が含まれる。   The response notification 78 includes information indicating that the user has agreed to provide the attribute information 38 (language score record certificate).

ここで、第3の情報処理装置33の判断部64bは、応答通知78においてユーザが提出に同意したとされる属性情報38と、許可要求76において第3の情報処理装置33が提供を求める属性情報38とが同一かどうかを判断する。   Here, the determination unit 64b of the third information processing device 33 uses the attribute information 38 that the user agrees to submit in the response notification 78 and the attribute that the third information processing device 33 requests to provide in the permission request 76. It is determined whether the information 38 is the same.

これらの属性情報38が同一でない場合には、ユーザが提供に同意していない属性情報38(例えば看護師免許)を第3の情報処理装置33が不正に取得しようとしていることになる。   If these pieces of attribute information 38 are not the same, the third information processing apparatus 33 intends to illegally acquire the attribute information 38 (for example, a nurse's license) that the user has not agreed to provide.

よって、この場合には第3の情報処理装置33のメッセージ制御部61から第1の情報処理装置31にエラーメッセージを通知し、これ以降の処理は行わない。これにより、ユーザが提供に同意していない属性情報38が第1の情報処理装置31に不正に取得されるのを防止することができる。   Therefore, in this case, an error message is notified from the message control unit 61 of the third information processing apparatus 33 to the first information processing apparatus 31, and the subsequent processing is not performed. Thereby, it is possible to prevent the attribute information 38 that the user has not agreed to provide from being illegally acquired by the first information processing apparatus 31.

なお、この応答通知78は、第2の情報処理装置32の属性情報37(氏名、住所)を第3の情報処理装置33に提供するのを許可する許可通知も兼ねる。そのため、応答通知78のHTTPヘッダには、属性情報37(氏名、住所)の提供を受けるために必要なアクセストークンと後で交換される許可コードが付加される。   The response notification 78 also serves as a permission notification for permitting the third information processing device 33 to provide the attribute information 37 (name, address) of the second information processing device 32. Therefore, an authorization code that is exchanged later with an access token necessary for receiving provision of the attribute information 37 (name, address) is added to the HTTP header of the response notification 78.

(S69)第3の情報処理装置33の第3のメッセージ制御部61は、第2の情報処理装置32に対してアクセストークン要求を通知する。このアクセストークン要求は、第2の情報処理装置32から属性情報37(氏名、住所)を得る際に必要となるアクセストークンを要求するHTTPリクエストである。   (S69) The third message control unit 61 of the third information processing apparatus 33 notifies the second information processing apparatus 32 of an access token request. This access token request is an HTTP request for requesting an access token necessary for obtaining attribute information 37 (name, address) from the second information processing apparatus 32.

更に、そのHTTPリクエストのヘッダには、アクセストークンに引き換えられるステップS68の許可コードが付加される。   Furthermore, the permission code of step S68 that is exchanged for an access token is added to the header of the HTTP request.

(S70)第2の情報処理装置32の第2のメッセージ制御部51は、そのアクセストークン要求に含まれている許可コードの正当性を検証し、検証に成功した場合には第3の情報処理装置33にアクセストークン応答を返す。   (S70) The second message control unit 51 of the second information processing device 32 verifies the validity of the permission code included in the access token request. An access token response is returned to the device 33.

アクセストークン応答は、許可コードと引き換えにアクセストークンを第3の情報処理装置33に通知するためのHTTPレスポンスである。そして、第2のメッセージ制御部51が生成した記号列で表されるアクセストークンが、HTTPヘッダのaccess_tokenパラメータに指定される。   The access token response is an HTTP response for notifying the third information processing apparatus 33 of the access token in exchange for the authorization code. Then, the access token represented by the symbol string generated by the second message control unit 51 is specified in the access_token parameter of the HTTP header.

このアクセストークンは、第2の情報処理装置32が所有する複数の属性情報37のうち、提供を許可する属性情報37を特定するためのIDとしての機能も兼ねる。   This access token also functions as an ID for identifying the attribute information 37 that is permitted to be provided among the plurality of attribute information 37 owned by the second information processing apparatus 32.

(S71)第3の情報処理装置33の第3のメッセージ制御部61は、アクセストークンを第2の情報処理装置32に渡すことにより、第2の情報処理装置32にデータ要求を通知する。この場合に要求するデータは、前述のようにユーザの属性情報37(氏名、住所)である。   (S71) The third message control unit 61 of the third information processing device 33 notifies the second information processing device 32 of the data request by passing the access token to the second information processing device 32. The data requested in this case is the user attribute information 37 (name, address) as described above.

(S72)第2の情報処理装置32の第2のメッセージ制御部51は、第3の情報処理装置33から渡されたアクセストークンと、自身がステップS70で発行したアクセストークンとの同一性を確認する。   (S72) The second message control unit 51 of the second information processing device 32 confirms the identity of the access token passed from the third information processing device 33 and the access token issued by itself in step S70. To do.

そして、その同一性が確認できた場合には、第2のメッセージ制御部51は、第3の情報処理装置33から通知されたアクセストークンに対応する属性情報37(氏名、住所)を特定する。その後、第2のメッセージ制御部51は、その属性情報37(氏名、住所)をデータ応答に乗せて第3の情報処理装置33に通知する。   When the identity can be confirmed, the second message control unit 51 identifies attribute information 37 (name, address) corresponding to the access token notified from the third information processing apparatus 33. Thereafter, the second message control unit 51 notifies the third information processing apparatus 33 of the attribute information 37 (name, address) on the data response.

ここまでのステップにより、第3の情報処理装置33が属性情報37(氏名、住所)を取得できたことになる。   Through the steps so far, the third information processing apparatus 33 has acquired the attribute information 37 (name, address).

(S73)第3の情報処理装置33の第3のメッセージ制御部61は、ステップS68における応答通知78を受けて、第1の情報処理装置31に許可応答79を通知する。   (S73) Upon receiving the response notification 78 in step S68, the third message control unit 61 of the third information processing device 33 notifies the first information processing device 31 of the permission response 79.

この許可応答79は、属性情報38(語学スコア記録証)の取得を第3の情報処理装置33に許可するHTTPレスポンスであり、端末34により第1の情報処理装置31にリダイレクトされる。   This permission response 79 is an HTTP response that permits the third information processing apparatus 33 to acquire the attribute information 38 (language score record certificate), and is redirected to the first information processing apparatus 31 by the terminal 34.

このHTTPレスポンスのLocationヘッダには、第3のメッセージ制御部61が生成した記号列が許可コードとして格納される。この許可コードは、属性情報38(語学スコア記録証)の提供を受けるためのアクセストークンと後で交換される。   In the Location header of this HTTP response, the symbol string generated by the third message control unit 61 is stored as a permission code. This authorization code is later exchanged with an access token for receiving provision of attribute information 38 (language score record certificate).

なお、ステップS68で判断部64bが許可要求76と応答通知78のそれぞれに含まれる属性情報38が同一でないと判断した場合には、前述のようにユーザが提供に同意していない属性情報38を第1の情報処理装置31が不正に取得しようとしていることになる。よって、この場合には、第3のメッセージ制御部61はこの許可応答79を第1の情報処理装置31に通知しない。   When the determination unit 64b determines in step S68 that the attribute information 38 included in each of the permission request 76 and the response notification 78 is not the same, the attribute information 38 that the user has not agreed to provide is provided as described above. That is, the first information processing apparatus 31 is trying to obtain it illegally. Therefore, in this case, the third message control unit 61 does not notify the first information processing apparatus 31 of the permission response 79.

これにより、ユーザが提供に同意していない属性情報38(例えば看護師免許)が第1の情報処理装置31に不正に取得されるのを防止できる。   Thereby, it is possible to prevent the attribute information 38 (for example, a nurse's license) that the user has not agreed to provide from being illegally acquired by the first information processing apparatus 31.

(S74)第1の情報処理装置31の第1のメッセージ制御部41は、第3の情報処理装置33に対してアクセストークン要求を通知する。このアクセストークン要求は、第3の情報処理装置33から属性情報38(語学スコア記録証)を得る際に必要となるアクセストークンを要求するHTTPリクエストである。   (S74) The first message control unit 41 of the first information processing apparatus 31 notifies the third information processing apparatus 33 of an access token request. This access token request is an HTTP request for requesting an access token necessary for obtaining the attribute information 38 (language score recording certificate) from the third information processing apparatus 33.

また、そのアクセストークンのHTTPヘッダのgrant_typeフィールドには、ステップS73で第3の情報処理装置33が発行した許可コードが格納される。   In addition, the grant code issued by the third information processing apparatus 33 in step S73 is stored in the grant_type field of the HTTP header of the access token.

(S75)第3の情報処理装置33の第3のメッセージ制御部61は、そのアクセストークンに含まれている許可コードの正当性を検証し、検証に成功した場合には第1の情報処理装置31にアクセストークン応答を返す。   (S75) The third message control unit 61 of the third information processing apparatus 33 verifies the validity of the permission code included in the access token, and if the verification is successful, the first information processing apparatus 61 An access token response is returned to 31.

アクセストークン応答は、許可コードと引き換えにアクセストークンを第1の情報処理装置31に通知するためのHTTPレスポンスである。そして、第3の情報処理装置33が生成した記号列で表されるアクセストークンが、そのHTTPレスポンスのaccess_tokenパラメータに指定される。   The access token response is an HTTP response for notifying the first information processing apparatus 31 of an access token in exchange for an authorization code. Then, the access token represented by the symbol string generated by the third information processing apparatus 33 is specified in the access_token parameter of the HTTP response.

アクセストークンは、第3の情報処理装置33が所有する複数の属性情報38のうち、提供を許可する属性情報38(語学スコア記録証)を特定するIDとしての機能も有する。   The access token also has a function as an ID for identifying the attribute information 38 (language score recording certificate) that is permitted to be provided among the plurality of attribute information 38 owned by the third information processing apparatus 33.

(S76)第1の情報処理装置31の第1のメッセージ制御部41は、アクセストークンを第3の情報処理装置33に渡すことにより、第3の情報処理装置33にデータ要求を通知する。この場合に要求するデータはユーザの属性情報38(語学スコア記録証)である。   (S76) The first message control unit 41 of the first information processing device 31 notifies the third information processing device 33 of the data request by passing the access token to the third information processing device 33. The data requested in this case is user attribute information 38 (language score record certificate).

(S77)第3の情報処理装置33の第3のメッセージ制御部61は、第1の情報処理装置31が提示したアクセストークンと、自身がステップS75で発行したアクセストークンとの同一性を確認する。   (S77) The third message control unit 61 of the third information processing device 33 confirms the identity between the access token presented by the first information processing device 31 and the access token issued by itself in step S75. .

そして、その同一性が確認できた場合には、第3のメッセージ制御部61は、アクセストークンに対応した属性情報38(語学スコア記録証)を特定する。その後、その属性情報38(語学スコア記録証)をデータ応答に乗せて第1の情報処理装置31に通知する。   If the identity is confirmed, the third message control unit 61 specifies attribute information 38 (language score record certificate) corresponding to the access token. Thereafter, the attribute information 38 (language score record certificate) is put on the data response and notified to the first information processing apparatus 31.

ここまでのステップにより、第1の情報処理装置31が属性情報38(語学スコア記録証)を取得できたことになる。   By the steps so far, the first information processing apparatus 31 has acquired the attribute information 38 (language score record certificate).

なお、前述のようにステップS67で同意IDの正当性が確認されない場合にはステップS67以降の処理を行わないため、本ステップS77において第3のメッセージ制御部61が第1の情報処理装置31に属性情報38(語学スコア記録証)を通知することはない。   As described above, if the validity of the consent ID is not confirmed in step S67, the process from step S67 onward is not performed, and therefore the third message control unit 61 in the first information processing apparatus 31 in step S77. The attribute information 38 (language score certificate) is not notified.

これにより、ユーザが同意していない状態で第1の情報処理装置31が第3の情報処理装置33の属性情報38を不正に取得するのを防止できる。   Thereby, it is possible to prevent the first information processing apparatus 31 from illegally acquiring the attribute information 38 of the third information processing apparatus 33 in a state where the user does not agree.

同様に、ステップS68において、許可要求76と応答通知78の各々に含まれる属性情報38が一致しない場合にも、本ステップS77において第3のメッセージ制御部61が第1の情報処理装置31に属性情報38(語学スコア記録証)を通知することはない。   Similarly, when the attribute information 38 included in each of the permission request 76 and the response notification 78 does not match in step S68, the third message control unit 61 assigns the attribute to the first information processing apparatus 31 in this step S77. Information 38 (language score record certificate) is not notified.

その結果、ユーザが提供に同意していない属性情報38が第1の情報処理装置31に取得されるのを防止することが可能となる。   As a result, it is possible to prevent the attribute information 38 that the user has not agreed to provide from being acquired by the first information processing apparatus 31.

(S78)第1の情報処理装置31のサービスアプリケーション31は、ユーザの属性情報38(語学スコア記録証)に基づいて、翻訳アルバイトの採用の可否を決定する。そして、その結果をサービス応答として端末34に通知する。   (S78) The service application 31 of the first information processing apparatus 31 determines whether or not the translation part-time job can be adopted based on the user attribute information 38 (language score record certificate). Then, the result is notified to the terminal 34 as a service response.

以上により、本実施形態に係る情報提供システムにおける基本処理を終了する。   Thus, the basic process in the information providing system according to the present embodiment is completed.

この情報提供システムによれば、ステップS55で連携IDに基づいて全ての情報処理装置31〜33がサービスに関与すると第2のメッセージ制御部51が判断したとき、同意要求73に複数の属性情報37、38の提供についての同意を含める。   According to this information providing system, when the second message control unit 51 determines that all the information processing apparatuses 31 to 33 are involved in the service based on the cooperation ID in step S55, the consent request 73 includes a plurality of attribute information 37. , Including consent for 38 offers.

そのため、ユーザは、ステップS56において複数の属性情報37、38の提供についての同意を一度で済ますことができる。これにより、それぞれの属性情報37、38ごとにユーザに同意を求める場合と比較して、同意に伴うユーザの負担軽減を実現することができる。   Therefore, the user can complete an agreement about provision of a plurality of attribute information 37 and 38 at a time in step S56. Thereby, compared with the case where consent is requested | required of a user for each attribute information 37 and 38, the burden of the user accompanying consent can be implement | achieved.

更に、ステップS67において確認依頼77に付加された同意IDの正当性を確認することで、属性情報38の提供についてユーザが同意済みかどうかを確認できる。そのため、ユーザが同意していない状態で第1の情報処理装置31が第3の情報処理装置33の属性情報38を不正に取得するのを防止することができる。   Further, by confirming the validity of the consent ID added to the confirmation request 77 in step S67, it is possible to confirm whether or not the user has consented to the provision of the attribute information 38. Therefore, it is possible to prevent the first information processing apparatus 31 from illegally acquiring the attribute information 38 of the third information processing apparatus 33 in a state where the user does not agree.

しかも、このようにシステムにOpenID ConnectとOAuth 2.0の二つのプロトコルが混在していても、上記のようにメッセージに同意IDを付加してユーザの同意を管理することで、各プロトコルを一つのプロトコルのように扱うこともできる。   In addition, even if two protocols, OpenID Connect and OAuth 2.0, are mixed in the system in this way, each protocol can be managed as a single protocol by adding consent IDs to messages and managing user consent as described above. Can also be handled.

次に、図9と図10の各処理を実現するための第2の情報処理装置32の処理内容について説明する。   Next, processing contents of the second information processing apparatus 32 for realizing the processes of FIGS. 9 and 10 will be described.

図12〜図15は、第2の情報処理装置32の処理内容について示すフローチャートである。   12 to 15 are flowcharts showing the processing contents of the second information processing apparatus 32.

なお、第2の情報処理装置32の処理内容は、第2の情報処理装置32が受信するメッセージの種類によって異なる。そこで、以下ではメッセージごとに処理内容を説明する。   Note that the processing content of the second information processing apparatus 32 differs depending on the type of message received by the second information processing apparatus 32. Therefore, the processing contents will be described below for each message.

<承認依頼70を受信したとき>
図12は、承認依頼70(図9参照)を受信したときの第2の情報処理装置32の処理内容を示すフローチャートである。
<When the approval request 70 is received>
FIG. 12 is a flowchart showing the processing contents of the second information processing apparatus 32 when the approval request 70 (see FIG. 9) is received.

この場合は、連携IDのFEDパラメータの値により処理が異なる。   In this case, processing differs depending on the value of the FED parameter of the linkage ID.

まず、FEDパラメータがない場合について説明する。   First, a case where there is no FED parameter will be described.

前述のように、FEDパラメータがない場合は、第1の情報処理装置31と第2の情報処理装置32のみが連携してサービスを提供し、第3の情報処理装置33はサービスに関与しない。   As described above, when there is no FED parameter, only the first information processing apparatus 31 and the second information processing apparatus 32 cooperate to provide a service, and the third information processing apparatus 33 is not involved in the service.

この場合は、ステップS100において、ステップS53、S54のユーザ認証が済んでいるか否かを認証部52が判断する。   In this case, in step S100, the authentication unit 52 determines whether the user authentication in steps S53 and S54 has been completed.

そして、認証済みである(YES)と判断された場合にはステップS103に移る。そのステップS103では、第2の情報処理装置32が保有する属性情報37のみの提供についてユーザに同意を求める同意要求を第2のメッセージ制御部51が端末34に通知する。   If it is determined that the authentication has been completed (YES), the process proceeds to step S103. In step S103, the second message control unit 51 notifies the terminal 34 of an agreement request for requesting consent from the user for providing only the attribute information 37 held by the second information processing apparatus 32.

一方、ステップS100において認証済みではない(NO)と判断された場合にはステップS53に移る。   On the other hand, if it is determined in step S100 that the authentication has not been completed (NO), the process proceeds to step S53.

そのステップS53では、図9を参照して説明したように、端末34に対して認証要求71を通知する。   In step S53, as described with reference to FIG. 9, the authentication request 71 is notified to the terminal.

次に、FED=001の場合について説明する。   Next, the case where FED = 001 will be described.

前述のように、FED=001の場合は、第1〜第3の情報処理装置31〜33の全てが連携してユーザにサービスを提供する。   As described above, when FED = 001, all of the first to third information processing apparatuses 31 to 33 cooperate to provide a service to the user.

この場合は、ステップS101において、ステップS55のユーザ認証が済んでいるか否かを認証部52が判断する。   In this case, in step S101, the authentication unit 52 determines whether or not the user authentication in step S55 has been completed.

ここで、認証済みではない(NO)と判断された場合にはステップS52に移る。   If it is determined that authentication has not been completed (NO), the process proceeds to step S52.

図9を参照して説明したように、ステップS52においては、制御部54が、承認依頼70に付加されたFEDパラメータの値を同意テーブル55(図8参照)の「連携ID」に格納する。これと共に、制御部54は、同意テーブル55の「連携元」に「第1の情報処理装置31」を格納する。   As described with reference to FIG. 9, in step S52, the control unit 54 stores the value of the FED parameter added to the approval request 70 in the “cooperation ID” of the consent table 55 (see FIG. 8). At the same time, the control unit 54 stores “first information processing apparatus 31” in “cooperation source” of the consent table 55.

次に、図9で説明したステップS53に移り、端末34に対して認証要求71を通知する。   Next, the process proceeds to step S53 described with reference to FIG. 9, and the authentication request 71 is notified to the terminal 34.

一方、ステップS101において認証済みである(YES)と判断された場合にはステップS102に移る。   On the other hand, if it is determined in step S101 that the authentication has been completed (YES), the process proceeds to step S102.

この場合は、第2の情報処理装置32が承認依頼70を受信した時点で、既にステップS55のユーザ認証が済んでいることになる。しかし、図9のシーケンスでは、第2の情報処理装置32が承認依頼70を受信した後にステップS55が行われており、これらが逆の順序で起こることは想定されない。よって、この場合には想定外の事態が生じたとして、制御部54が第1の情報処理装置31にエラーメッセージを送信する。   In this case, when the second information processing apparatus 32 receives the approval request 70, the user authentication in step S55 has already been completed. However, in the sequence of FIG. 9, step S55 is performed after the second information processing apparatus 32 receives the approval request 70, and it is not assumed that these occur in the reverse order. Therefore, in this case, the control unit 54 transmits an error message to the first information processing apparatus 31 because an unexpected situation has occurred.

<確認依頼77を受信したとき>
図13は、確認依頼77(図10参照)を受信したときの第2の情報処理装置32の処理内容を示すフローチャートである。
<When confirmation request 77 is received>
FIG. 13 is a flowchart showing the processing contents of the second information processing apparatus 32 when the confirmation request 77 (see FIG. 10) is received.

まず、ステップS110において、ステップS53、S54のユーザ認証が済んでいるか否かを認証部52が判断する。   First, in step S110, the authentication unit 52 determines whether or not the user authentication in steps S53 and S54 has been completed.

そして、認証済みである(YES)と判断された場合にはステップS67に移る。   If it is determined that the authentication has been completed (YES), the process proceeds to step S67.

図9を参照して説明したように、ステップS67においては、確認依頼77に含まれる同意IDが同意テーブル55に存在するか否かが制御部54の確認部54bで確認される。   As described with reference to FIG. 9, in step S <b> 67, whether or not the consent ID included in the confirmation request 77 exists in the consent table 55 is confirmed by the confirmation unit 54 b of the control unit 54.

そして、同意IDが同意テーブル55に存在する(YES)と判断された場合にはステップS111に移る。   If it is determined that the consent ID exists in the consent table 55 (YES), the process proceeds to step S111.

ステップS111においては、確認部54bが、同意テーブル55の「状態チェックフラグ」を「1」にセットする。   In step S111, the confirmation unit 54b sets the “status check flag” in the consent table 55 to “1”.

次に、ステップS68に移る。ステップS68では、図10を参照して説明したように、第2の情報処理装置32の第2のメッセージ制御部51が第3の情報処理装置33に応答通知78を返す。   Next, the process proceeds to step S68. In step S <b> 68, as described with reference to FIG. 10, the second message control unit 51 of the second information processing device 32 returns a response notification 78 to the third information processing device 33.

一方、ステップS110において認証済みではない(NO)と判断された場合にはステップS112に移る。   On the other hand, if it is determined in step S110 that the authentication has not been completed (NO), the process proceeds to step S112.

この場合は、第2の情報処理装置32に確認依頼77が通知された時点で、ステップS54のユーザ認証が行われていないことになる。しかし、図9〜図10のシーケンスによれば、ステップS53、S54のユーザ認証が行われた後に第2の情報処理装置32に確認依頼77が通知される。よって、想定外の事態が生じたとして、この場合には制御部54が第1の情報処理装置31にエラーメッセージを送信する。   In this case, when the confirmation request 77 is notified to the second information processing apparatus 32, the user authentication in step S54 is not performed. However, according to the sequence of FIGS. 9 to 10, the confirmation request 77 is notified to the second information processing apparatus 32 after the user authentication in steps S53 and S54 is performed. Therefore, assuming that an unexpected situation has occurred, in this case, the control unit 54 transmits an error message to the first information processing apparatus 31.

<認証情報72を受信したとき>
図14は、認証情報72(図9参照)を受信したときの第2の情報処理装置32の処理内容を示すフローチャートである。
<When the authentication information 72 is received>
FIG. 14 is a flowchart showing the processing contents of the second information processing apparatus 32 when the authentication information 72 (see FIG. 9) is received.

まず、ステップS121において、ステップS54(図9参照)の認証が成功したかどうかを認証部52が判断する。そして、認証が成功したとき(YES)は、ステップS122に移る。   First, in step S121, the authentication unit 52 determines whether or not the authentication in step S54 (see FIG. 9) is successful. Then, when the authentication is successful (YES), the process proceeds to step S122.

そのステップS122においては、制御部54が、承認依頼70に付加されているFEDパラメータの値が「001」であるか否かを判断する。   In step S122, the control unit 54 determines whether or not the value of the FED parameter added to the approval request 70 is “001”.

そして、「001」である(YES)と判断された場合にはステップS55に移る。   Then, if it is determined as “001” (YES), the process proceeds to step S55.

前述のように、FED=001のときは、第1〜第3の情報処理装置31〜33の全てが連携することにより、属性情報37(メールアドレス、氏名、住所)と属性情報38(語学スコア記録証)とが提供先に提供されることが予め決められている。   As described above, when FED = 001, the attribute information 37 (mail address, name, address) and attribute information 38 (language score) are obtained by cooperation of all of the first to third information processing apparatuses 31 to 33. (Record certificate) is provided in advance to the provider.

よって、ステップS55では、図9を参照して説明したように、これらの属性情報37、38の提供についてユーザに同意を求める同意要求73を端末34に通知する。   Therefore, in step S55, as described with reference to FIG. 9, the terminal 34 is notified of an agreement request 73 for asking the user for consent to provide the attribute information 37 and 38.

一方、ステップS121において、認証が失敗したとき(NO)は、ステップS123に移り、認証が失敗した旨の通知を端末34に通知する。   On the other hand, if the authentication fails in step S121 (NO), the process proceeds to step S123, and a notification that the authentication has failed is sent to the terminal 34.

また、ステップS122においてFEDパラメータの値が「001」ではない(NO)と判断された場合にはステップS124に移る。   If it is determined in step S122 that the FED parameter value is not “001” (NO), the process proceeds to step S124.

本例では、FEDパラメータの値が「001」であるか、FEDパラメータ自体が存在しないかの二通りしか想定していないため、FEDパラメータの値が「001」ではない場合にはFEDパラメータが存在しないということになる。   In this example, there are only two assumptions: the FED parameter value is “001” or the FED parameter itself does not exist. Therefore, if the FED parameter value is not “001”, the FED parameter exists. It means not.

また、FEDパラメータが存在しない場合には、前述のように第1の情報処理装置31と第2の情報処理装置32のみが連携する。よって、この場合には、第2の情報処理装置32が保有する属性情報37のみの提供についてユーザに同意を求める同意要求を端末34に通知する。   When there is no FED parameter, only the first information processing apparatus 31 and the second information processing apparatus 32 cooperate as described above. Therefore, in this case, the terminal 34 is notified of an consent request for requesting consent from the user for providing only the attribute information 37 held by the second information processing apparatus 32.

<同意74を受信したとき>
図15は、同意74(図9参照)を受信したときの第2の情報処理装置32の処理内容を示すフローチャートである。
<When consent 74 is received>
FIG. 15 is a flowchart showing the processing contents of the second information processing apparatus 32 when the consent 74 (see FIG. 9) is received.

まず、ステップS130において、ユーザが属性情報37、38の提供に同意したか否かを同意74に基づいて制御部54が判断する。   First, in step S130, the control unit 54 determines whether or not the user has agreed to provide the attribute information 37 and 38 based on the consent 74.

ここで、同意した(YES)と判断した場合にはステップS131に移る。   If it is determined that the agreement has been made (YES), the process proceeds to step S131.

そのステップS131においては、第2の情報処理装置32の確認部54bが、同意テーブル55におけるFEDパラメータの値が「001」であるか否かを判断する。   In step S131, the confirmation unit 54b of the second information processing apparatus 32 determines whether or not the value of the FED parameter in the consent table 55 is “001”.

そして、「001」である(YES)と判断された場合にはステップS57に移る。   Then, if it is determined as “001” (YES), the process proceeds to step S57.

図9を参照して説明したように、ステップS57においては、制御部54が同意IDを生成し、その同意IDを同意テーブル55に格納する。   As described with reference to FIG. 9, in step S <b> 57, the control unit 54 generates an agreement ID and stores the agreement ID in the agreement table 55.

また、これと共に、同意74に含まれるcookieに対応したユーザセッションを第2のメッセージ制御部51が同意テーブル55に格納する。   At the same time, the second message control unit 51 stores the user session corresponding to the cookie included in the consent 74 in the consent table 55.

次に、ステップS58に移り、第2のメッセージ制御部51が許可応答75に同意IDを付加し、その許可応答75を端末34に通知する。   Next, the process proceeds to step S58, where the second message control unit 51 adds a consent ID to the permission response 75 and notifies the terminal 34 of the permission response 75.

一方、ステップS130においてユーザが同意していない(NO)と判断した場合にはステップS135に移る。   On the other hand, if it is determined in step S130 that the user does not agree (NO), the process proceeds to step S135.

この場合は、ユーザが属性情報37(氏名、住所、メールアドレス)と属性情報38(語学スコア記録証)の提出に同意していないことになる。よって、この場合には、第2のメッセージ制御部51が第1の情報処理装置31にエラーメッセージを送信する。   In this case, the user does not agree to submit the attribute information 37 (name, address, mail address) and attribute information 38 (language score record certificate). Therefore, in this case, the second message control unit 51 transmits an error message to the first information processing apparatus 31.

また、ステップS131においてFEDパラメータの値が「001」ではない(NO)と判断された場合にはステップS134に移る。   If it is determined in step S131 that the value of the FED parameter is not “001” (NO), the process proceeds to step S134.

この場合にはFEDパラメータが存在しないことになるため、前述のように第1の情報処理装置31と第2の情報処理装置32のみが連携し、第3の情報処理装置33はサービスに関与しない。   In this case, since there is no FED parameter, only the first information processing device 31 and the second information processing device 32 cooperate as described above, and the third information processing device 33 is not involved in the service. .

よって、この場合には、第1の情報処理装置31が第3の情報処理装置33に属性情報38を要求することは想定されないので、第1の情報処理装置31が属性情報38を不正に取得するのを防止するための同意IDは不要である。そのため、第2の情報処理装置32の第2のメッセージ制御部51は、許可応答75に同意IDを付加せずに、当該許可応答75を第1の情報処理装置31に通知する。   Therefore, in this case, since it is not assumed that the first information processing device 31 requests the attribute information 38 from the third information processing device 33, the first information processing device 31 illegally acquires the attribute information 38. No consent ID is required to prevent this from happening. Therefore, the second message control unit 51 of the second information processing device 32 notifies the first information processing device 31 of the permission response 75 without adding the consent ID to the permission response 75.

(第2実施形態)
第1実施形態では、図11に示したように、OAuthやOpenID Connect等の既存のプロトコルでは規定されていないconsentIDをメッセージに追加することにより、ユーザが同意していない属性情報38が不正に取得されるのを防止した。
(Second Embodiment)
In the first embodiment, as shown in FIG. 11, attribute information 38 that the user does not agree to is obtained illegally by adding a consentID that is not defined by existing protocols such as OAuth and OpenID Connect to the message. It was prevented from being done.

これに対し、本実施形態では、既存のプロトコルでは規定されてないパラメータを追加せずに、属性情報38が不正に取得されるのを防止する。   On the other hand, in this embodiment, the attribute information 38 is prevented from being illegally acquired without adding a parameter that is not defined in the existing protocol.

図16及び図17は、本実施形態に係る情報提供システムの動作の一例を示すシーケンス図である。   16 and 17 are sequence diagrams illustrating an example of the operation of the information providing system according to the present embodiment.

なお、図16及び図17において、第1実施形態で説明したのと同じ要素とステップには第1実施形態におけるのと同じ符号を付し、以下ではその説明を簡略化する。   16 and 17, the same elements and steps as those described in the first embodiment are denoted by the same reference numerals as those in the first embodiment, and the description thereof will be simplified below.

また、第1実施形態と同様に、図16及び図17において実線で示す処理はOpenID Connectに即した処理を示し、一点鎖線で示す処理はOAuth 2.0に即した処理を示す。また、点線で示す処理は、これらのプロトコルで規定されていない処理を示す。   Similarly to the first embodiment, the process indicated by a solid line in FIGS. 16 and 17 indicates a process according to OpenID Connect, and the process indicated by a one-dot chain line indicates a process according to OAuth 2.0. Moreover, the process shown with a dotted line shows the process which is not prescribed | regulated by these protocols.

本実施形態では、以下のようにしてOAuth 2.0で規定されているstateパラメータを同意IDとして使用する。   In the present embodiment, the state parameter defined in OAuth 2.0 is used as the consent ID as follows.

以下、図16及び図17に示す処理をステップ番号に沿って説明する。   In the following, the process illustrated in FIGS. 16 and 17 will be described in order of step number.

(S50)まず、ユーザが端末34を操作することにより、第1の情報処理装置31にサービス要求を通知する。   (S50) First, when the user operates the terminal 34, the first information processing apparatus 31 is notified of a service request.

(S51)そのサービス要求を受けて、第1の情報処理装置31の第1のメッセージ制御部41が第2の情報処理装置32に対して承認依頼70を通知する。   (S51) In response to the service request, the first message control unit 41 of the first information processing apparatus 31 notifies the second information processing apparatus 32 of the approval request 70.

本実施形態では、第1のメッセージ制御部41がその承認依頼70のHTTPヘッダにstateパラメータを設定する。stateパラメータは、後述のCSRF(Cross Site Request Forgery)攻撃への対策としてOAuth 2.0で規定されている記号列である。   In the present embodiment, the first message control unit 41 sets a state parameter in the HTTP header of the approval request 70. The state parameter is a symbol string defined in OAuth 2.0 as a countermeasure against a CSRF (Cross Site Request Forgery) attack described later.

stateパラメータの生成方法は特に限定されない。以下では、第1実施形態で説明した連携IDと同意IDとを結合した記号列をstateパラメータとする。   The method for generating the state parameter is not particularly limited. Hereinafter, a symbol string obtained by combining the cooperation ID and the consent ID described in the first embodiment is used as a state parameter.

例えばstate=RID00xyzとした場合、先頭の「R」が連携IDであり、後続の「ID00xyz」が同意IDである。   For example, when state = RID00xyz, the leading “R” is the linkage ID, and the subsequent “ID00xyz” is the consent ID.

なお、連携IDの「R」は、第1〜第3の情報処理装置31〜33の全てが連携することを示す。第3の情報処理装置33が連携に関与せずに、第1の情報処理装置31と第2の情報処理装置32のみが連携する場合には、先頭の「R」を省くものとする。   The cooperation ID “R” indicates that all of the first to third information processing apparatuses 31 to 33 cooperate. When only the first information processing apparatus 31 and the second information processing apparatus 32 cooperate with each other without the third information processing apparatus 33 participating in the cooperation, the leading “R” is omitted.

(S90)第2の情報処理装置32の制御部54が、承認依頼70に付加されたstateパラメータを同意テーブル55に格納する。   (S90) The control unit 54 of the second information processing apparatus 32 stores the state parameter added to the approval request 70 in the consent table 55.

図18は、本実施形態に係る同意テーブル55の一例を示す図である。   FIG. 18 is a diagram illustrating an example of the consent table 55 according to the present embodiment.

本実施形態では、同意テーブル55には「state」、「ユーザセッション」、「連携元」、及び「状態チェックフラグ」の各属性が設定される。   In the present embodiment, each attribute of “state”, “user session”, “cooperation source”, and “state check flag” is set in the consent table 55.

これらのうち、属性「state」にstateパラメータの値(RID00xyz)が格納される。   Among these, the value of the state parameter (RID00xyz) is stored in the attribute “state”.

なお、第1実施形態と同様に、本ステップでは制御部54が同意テーブル55の「連携元」に「第1の情報処理装置31」を格納する。   As in the first embodiment, in this step, the control unit 54 stores “first information processing apparatus 31” in “cooperation source” of the consent table 55.

(S53)第2の情報処理装置32は、端末34に対して認証要求71を通知する。なお、その認証要求71には、端末34のユーザセッションに対応したcookieが第2のメッセージ制御部51により付加される。   (S53) The second information processing apparatus 32 notifies the authentication request 71 to the terminal 34. Note that a cookie corresponding to the user session of the terminal 34 is added to the authentication request 71 by the second message control unit 51.

(S54)ユーザの操作のもとで、webブラウザ35は、第2の情報処理装置32にログインするための認証IDとパスワードとを認証情報72として第2の情報処理装置32に通知する。   (S54) Under the operation of the user, the web browser 35 notifies the second information processing apparatus 32 of the authentication ID and password for logging in to the second information processing apparatus 32 as the authentication information 72.

(S55)ステップS54の認証が成功した場合、第2の情報処理装置32の第2のメッセージ制御部51が端末34に同意要求を通知する。   (S55) If the authentication in step S54 is successful, the second message control unit 51 of the second information processing apparatus 32 notifies the terminal 34 of the consent request.

その同意要求は、属性情報37(メールアドレス)と属性情報38(語学スコア記録証)とを第1の情報処理装置31に提供してよいとの同意と、第3の情報処理装置33に属性情報37(氏名、住所)を提供してもよいとの同意をユーザに要求するものである。   The consent request indicates that the attribute information 37 (email address) and attribute information 38 (language score record certificate) may be provided to the first information processing apparatus 31, and the attribute to the third information processing apparatus 33. The user is requested to agree that the information 37 (name, address) may be provided.

(S56)ユーザは、属性情報37(メールアドレス、氏名、住所)と属性情報38(語学スコア記録証)の提供に同意するときは、端末34を操作して第2の情報処理装置32に同意74を通知する。   (S56) When the user agrees to provide attribute information 37 (email address, name, address) and attribute information 38 (language score record certificate), the user operates the terminal 34 and agrees with the second information processing apparatus 32. 74 is notified.

第1実施形態で説明したように、このように複数の属性情報37、38の提供についての同意を一度で済ますことで、ユーザの負担軽減を実現することができる。   As described in the first embodiment, it is possible to reduce the burden on the user by once agreeing to provide the plurality of attribute information 37 and 38 in this way.

なお、その同意74には、ステップS53で第2の情報処理装置32から渡されたcookieがwebブラウザ35により付加される。   Note that the cookie passed from the second information processing apparatus 32 in step S53 is added to the consent 74 by the web browser 35.

(S91)第2の情報処理装置32の第2のメッセージ制御部51が、同意74に含まれるcookieに対応したユーザセッションを同意テーブル55の属性「ユーザセッション」に格納する。   (S91) The second message control unit 51 of the second information processing apparatus 32 stores the user session corresponding to the cookie included in the consent 74 in the attribute “user session” of the consent table 55.

(S58)第2の情報処理装置32の第2のメッセージ制御部51は、端末34に許可応答75をHTTPレスポンスで返す。   (S58) The second message control unit 51 of the second information processing apparatus 32 returns a permission response 75 to the terminal 34 as an HTTP response.

その許可応答75のHTTPヘッダには、同意テーブル55にあるstateパラメータと、ステップS91で生成したcookieとが第2のメッセージ制御部51により付加される。   The second message control unit 51 adds the state parameter in the consent table 55 and the cookie generated in step S91 to the HTTP header of the permission response 75.

前述のように、stateパラメータは、連携IDと同意IDとが連結された記号列である。よって、本ステップにより、その記号列の一部が同意IDとして第1の情報処理装置31に通知されることになる。   As described above, the state parameter is a symbol string in which the cooperation ID and the consent ID are concatenated. Therefore, by this step, a part of the symbol string is notified to the first information processing apparatus 31 as the consent ID.

更に、第2のメッセージ制御部51は、アクセストークンと後で交換される許可コードをHTTPヘッダに付加する。   Further, the second message control unit 51 adds a permission code exchanged later with the access token to the HTTP header.

(S92)第1の情報処理装置31の連携管理部42は、許可応答75に付加されているstateパラメータを第1の記憶部44に格納する。   (S92) The cooperation management unit 42 of the first information processing apparatus 31 stores the state parameter added to the permission response 75 in the first storage unit 44.

(S60)第1の情報処理装置31の第1のメッセージ制御部41は、第2の情報処理装置32に対してアクセストークン要求を通知する。そのアクセストークン要求のHTTPヘッダには、第1のメッセージ制御部41により前述の許可コードが格納される。   (S60) The first message control unit 41 of the first information processing device 31 notifies the second information processing device 32 of an access token request. The above-mentioned permission code is stored by the first message control unit 41 in the HTTP header of the access token request.

(S61)第2の情報処理装置32の第2のメッセージ制御部51は、そのアクセストークン要求に含まれている許可コードの正当性を検証する。   (S61) The second message control unit 51 of the second information processing apparatus 32 verifies the validity of the permission code included in the access token request.

そして、検証に成功した場合には、第2のメッセージ制御部51が第1の情報処理装置31にアクセストークン応答を返し、第2の情報処理装置32にアクセストークンを渡す。   If the verification is successful, the second message control unit 51 returns an access token response to the first information processing apparatus 31 and passes the access token to the second information processing apparatus 32.

(S62)第1の情報処理装置31の第1のメッセージ制御部41は、第2の情報処理装置32にアクセストークンを渡すことにより、第2の情報処理装置32にデータ要求を通知する。この場合に要求するデータは、ユーザの属性情報37(メールアドレス)である。   (S62) The first message control unit 41 of the first information processing device 31 notifies the second information processing device 32 of the data request by passing the access token to the second information processing device 32. The data requested in this case is user attribute information 37 (mail address).

(S63)第2の情報処理装置32の第2のメッセージ制御部51は、第1の情報処理装置31から渡されたアクセストークンと、自身がステップS61で発行したアクセストークンとの同一性を確認する。   (S63) The second message control unit 51 of the second information processing device 32 confirms the identity between the access token passed from the first information processing device 31 and the access token issued by itself in step S61. To do.

その同一性が確認できた場合には、第2の情報処理装置32は、属性情報37(メールアドレス)をデータ応答に乗せて第2の情報処理装置32に通知する。   If the identity can be confirmed, the second information processing apparatus 32 notifies the second information processing apparatus 32 of the attribute information 37 (mail address) on the data response.

ここまでのステップにより、第1の情報処理装置31が属性情報37(メールアドレス)を取得できたことになる。   Through the steps so far, the first information processing apparatus 31 has acquired the attribute information 37 (mail address).

次に、第1の情報処理装置31は、以下のようにして第3の情報処理装置33が保有する属性情報38(語学スコア記録証)の取得を試みる。   Next, the first information processing apparatus 31 tries to acquire the attribute information 38 (language score record certificate) held by the third information processing apparatus 33 as follows.

(S64)まず、第1の情報処理装置31の第1のメッセージ制御部41が、第3の情報処理装置33に対して許可要求76を通知する。   (S64) First, the first message control unit 41 of the first information processing apparatus 31 notifies the third information processing apparatus 33 of a permission request 76.

この許可要求は、第3の情報処理装置33が保有している属性情報38(語学スコア記録証)の提供を要求するHTTPリクエストであって、scopeパラメータにはその語学スコア記録証が指定される。   This permission request is an HTTP request for requesting provision of attribute information 38 (language score record certificate) held by the third information processing apparatus 33, and the language score record certificate is designated in the scope parameter. .

更に、第1の情報処理装置31の第1のメッセージ制御部41は、記憶部44に格納しておいたstateパラメータをHTTPヘッダに付加することにより、そのstateパラメータを第3の情報処理装置33に渡す。   Further, the first message control unit 41 of the first information processing device 31 adds the state parameter stored in the storage unit 44 to the HTTP header, thereby the third information processing device 33. To pass.

前述のようにstateパラメータの一部は同意IDとして機能するため、本ステップにより同意IDが第3の情報処理装置33に通知されることになる。   As described above, a part of the state parameter functions as the consent ID, so the consent ID is notified to the third information processing apparatus 33 by this step.

(S93)第3の情報処理装置33の管理部64が、その同意IDを含むstateパラメータを第3の記憶部62に格納する。   (S93) The management unit 64 of the third information processing apparatus 33 stores the state parameter including the consent ID in the third storage unit 62.

(S66)管理部64の依頼部64aは、第1の情報処理装置31から通知された同意IDの正当性を確認するために、第3のメッセージ制御部61を介して第2の情報処理装置32に対して確認依頼77を通知する。   (S66) The request unit 64a of the management unit 64 checks the validity of the consent ID notified from the first information processing device 31 via the third message control unit 61. 32 is notified of confirmation request 77.

その確認依頼77は、属性情報37(氏名、住所)の取得についての許可を第2の情報処理装置32に要求する許可要求も兼ねたHTTPリクエストであり、そのHTTPヘッダのscopeパラメータには氏名と住所が指定される。   The confirmation request 77 is an HTTP request that also serves as a permission request that requests the second information processing apparatus 32 for permission to acquire the attribute information 37 (name and address), and the scope parameter of the HTTP header includes the name and the name. An address is specified.

また、第2の情報処理装置32に同意IDを通知するために、HTTPヘッダのconsentIDパラメータには、第3の記憶部62に格納したstateパラメータが同意管理部64により指定される。   Further, in order to notify the second information processing apparatus 32 of the consent ID, the consent management unit 64 designates the state parameter stored in the third storage unit 62 as the consentID parameter of the HTTP header.

なお、その確認依頼77は端末34から第2の情報処理装置32にリダイレクトされる。そのリダイレクトの際、端末34のwebブラウザ35によって確認依頼77にcookieが付加される。   The confirmation request 77 is redirected from the terminal 34 to the second information processing apparatus 32. At the time of the redirect, a cookie is added to the confirmation request 77 by the web browser 35 of the terminal 34.

(S67)第2の情報処理装置32の確認部54bは、確認依頼77に付加された同意IDの正当性を確認するために、その同意IDを一部に含むsateパラメータのチェックを行う。   (S67) In order to confirm the validity of the consent ID added to the confirmation request 77, the confirmation unit 54b of the second information processing apparatus 32 checks the sate parameter including a part of the consent ID.

本実施形態における同意IDの正当性とは、確認依頼77で通知されたstateパラメータが、ステップS50において第1の情報処理装置31が自ら生成して依頼承認70に付加したstateパラメータと同一であることをいう。   In the present embodiment, the validity of the consent ID is the same as the state parameter notified by the confirmation request 77 and generated by the first information processing apparatus 31 and added to the request approval 70 in step S50. That means.

同意IDの正当性を確認するために、確認部54bは、確認依頼77のstateパラメータ(RID00xyz)が同意テーブル55に存在するか否かを確認する。そして、stateパラメータが同意テーブル55に存在した場合、同意IDの正当性が確認されたことになる。   In order to confirm the validity of the consent ID, the confirmation unit 54b confirms whether or not the state parameter (RID00xyz) of the confirmation request 77 exists in the consent table 55. If the state parameter is present in the consent table 55, the validity of the consent ID is confirmed.

ここで、このように同意IDの正当性が確認された場合は、ユーザの同意74を受けて第2の情報処理装置32が通知する許可応答75に含まれるstateパラメータと、確認依頼77に含まれるstateパラメータとが同一ということになる。   Here, when the validity of the consent ID is confirmed in this way, the state parameter included in the permission response 75 notified by the second information processing apparatus 32 in response to the user's consent 74 and the confirmation request 77 are included. The state parameter is the same.

よって、この場合にはユーザの同意を属性情報38の提供についてのユーザの同意が既に済んでいることになる。   Therefore, in this case, the user's consent for providing the attribute information 38 has already been completed.

一方、同意IDの正当性が確認されない場合は、ユーザが同意していない状態で第1の情報処理装置31が第3の情報処理装置33の属性情報38を不正に取得しようとしていることになる。したがって、この場合には第2の情報処理装置32から第1の情報処理装置31にエラーメッセージを通知し、これ以降の処理は行わない。これにより、ユーザが同意していない状態で第1の情報処理装置31が第3の情報処理装置33の属性情報38を不正に取得するのを防止することができる。   On the other hand, if the validity of the consent ID is not confirmed, the first information processing apparatus 31 is attempting to illegally acquire the attribute information 38 of the third information processing apparatus 33 without the user consenting. . Therefore, in this case, an error message is notified from the second information processing device 32 to the first information processing device 31, and the subsequent processing is not performed. Thereby, it is possible to prevent the first information processing apparatus 31 from illegally acquiring the attribute information 38 of the third information processing apparatus 33 in a state where the user does not agree.

また、第1実施形態と同様に、確認部54bが、確認依頼77に付加されたcookieに基づいてユーザセッションを特定し、そのユーザセッションが同意テーブル55に存在するかどうかを確認してもよい。   As in the first embodiment, the confirmation unit 54b may identify a user session based on the cookie added to the confirmation request 77 and confirm whether the user session exists in the consent table 55. .

ステップS67で同意IDの正当性が確認された場合には、第1実施形態と同様にしてステップS68〜S78を行う。これにより、ステップS77において第1の情報処理装置31が属性情報38(語学スコア記録証)を取得することができる。   If the validity of the consent ID is confirmed in step S67, steps S68 to S78 are performed as in the first embodiment. Thereby, in step S77, the first information processing apparatus 31 can acquire the attribute information 38 (language score record certificate).

以上説明した本実施形態によれば、OAuthやOpenID Connect等の既存のプロトコルで規定されているstateパラメータを承認依頼70に付加することにより、既存のプロトコルの範疇で第1の情報処理装置31の不正を検出できる。   According to the present embodiment described above, by adding a state parameter defined in an existing protocol such as OAuth or OpenID Connect to the approval request 70, the first information processing apparatus 31 is included in the category of the existing protocol. Can detect fraud.

しかも、そのstateパラメータとして同意IDと連携IDとを結合した記号列を使用することで、連携ID用のパラメータをHTTPヘッダに追加することなしに、各情報処理装置31〜33のどれが連携するのかを確認できる。   In addition, by using a symbol string obtained by combining the agreement ID and the cooperation ID as the state parameter, any of the information processing apparatuses 31 to 33 cooperates without adding a parameter for the cooperation ID to the HTTP header. Can be confirmed.

更に、そのstateパラメータは、以下のようにCSRF攻撃への対策ともなる。   In addition, the state parameter is a countermeasure against CSRF attacks as follows.

図19は、CSRF攻撃について説明するためのシーケンス図である。   FIG. 19 is a sequence diagram for explaining the CSRF attack.

なお、図19において、図16及び図17で説明したのと同じ要素とステップにはこれらの図におけるのと同じ符号を付し、以下ではその説明を省略する。   In FIG. 19, the same elements and steps as described in FIGS. 16 and 17 are denoted by the same reference numerals as those in FIGS.

図19の例では端末34が二台あり、ユーザセッションがUser001sで表される端末が攻撃者により操作され、ユーザセッションがUser002sで表される端末が被害者により操作されているものとする。   In the example of FIG. 19, it is assumed that there are two terminals 34, a terminal whose user session is represented by User001s is operated by an attacker, and a terminal whose user session is represented by User002s is operated by a victim.

このとき、攻撃者の端末34は、OAuth 2.0の仕様に反して、ステップS140において許可要求76を第3の情報処理装置33にリダイレクトさせずに、何らかの手法で被害者の端末34に許可要求76を渡す。   At this time, contrary to the OAuth 2.0 specification, the attacker's terminal 34 does not redirect the permission request 76 to the third information processing apparatus 33 in step S140, but uses the permission request 76 to the victim's terminal 34 by some method. give.

そして、被害者の端末34は、OAuth 2.0の仕様に従って、ステップS141において許可要求76を本来のリダイレクト先である第3の情報処理装置33にリダイレクトする。   Then, the victim's terminal 34 redirects the permission request 76 to the third information processing apparatus 33 that is the original redirect destination in step S141 in accordance with the OAuth 2.0 specification.

その結果、これ以降のステップでは、被害者の端末34と各情報処理装置31〜33との間でユーザセッションが確立されることになる。これにより、例えばアクセストークンとユーザセッションとが対応付けられている場合、各情報処理装置31〜33に攻撃者が保有しているアカウントに対するアクセストークンが、被害者のユーザセッションと対応付くことになる。これにより、攻撃者のアカウントに被害者のリソースを登録させる等の不正を行うことができる。   As a result, in the subsequent steps, a user session is established between the victim's terminal 34 and each of the information processing apparatuses 31 to 33. Thereby, for example, when the access token and the user session are associated with each other, the access token corresponding to the account held by the attacker in each of the information processing apparatuses 31 to 33 is associated with the victim's user session. . As a result, fraud such as registering the victim's resource in the attacker's account can be performed.

本実施形態では、これを防止するために、図18に示すように、同意テーブル55においてstateパラメータとユーザセッションとを対応させる。   In the present embodiment, in order to prevent this, as shown in FIG. 18, the state parameter is associated with the user session in the consent table 55.

これにより、ステップS67で確認依頼77のstateパラメータが同意テーブル55に存在しても、ユーザセッションが同意テーブル55にない場合にはCSRF攻撃を受けている可能性があると判断でき、CSRF攻撃に対するシステムの堅牢性が増す。   As a result, even if the state parameter of the confirmation request 77 exists in the consent table 55 in step S67, it can be determined that there is a possibility that the user session is not in the consent table 55, the CSRF attack may have occurred. Increases system robustness.

(ハードウェア構成)
上記した第1実施形態と第2実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の各実施形態と同様の機能を有するプログラムを実行するコンピュータの一例について説明する。
(Hardware configuration)
The various processes described in the first embodiment and the second embodiment described above can be realized by executing a prepared program on a computer. Therefore, in the following, an example of a computer that executes a program having the same function as each of the above embodiments will be described.

図20は、第1及び第2実施形態に係る情報提供プログラムを実行するコンピュータのハードウェア構成図である。   FIG. 20 is a hardware configuration diagram of a computer that executes the information providing program according to the first and second embodiments.

以下では、第1〜第3の情報処理装置31〜33と端末34のそれぞれにコンピュータ100を用意する。   Below, the computer 100 is prepared for each of the first to third information processing apparatuses 31 to 33 and the terminal 34.

コンピュータ100の台数は特に限定されない。例えば、複数のコンピュータ100が第1の情報処理装置31の処理を実行してもよい。これについては、第2及び第3の情報処理装置32、33についても同様である。   The number of computers 100 is not particularly limited. For example, a plurality of computers 100 may execute the processing of the first information processing apparatus 31. The same applies to the second and third information processing devices 32 and 33.

そのコンピュータ100は、各種演算処理を実行するCPU(Central Processing Unit)101と、データ入力を受け付ける入力装置102と、モニタ103とを有する。   The computer 100 includes a CPU (Central Processing Unit) 101 that executes various arithmetic processes, an input device 102 that receives data input, and a monitor 103.

また、コンピュータ100は、記憶媒体110からプログラムを読み取る媒体読取装置104と、各種装置と接続するためのインタフェース装置105と、他の装置と有線または無線により接続するための通信装置106とを有する。   The computer 100 also includes a medium reading device 104 that reads a program from the storage medium 110, an interface device 105 for connecting to various devices, and a communication device 106 for connecting to other devices by wire or wirelessly.

更に、コンピュータ100は、各種情報を一時記憶するRAM(Random Access Memory)107と、ハードディスク装置108とを有する。なお、各装置101〜108は、バス109に接続される。   The computer 100 further includes a RAM (Random Access Memory) 107 for temporarily storing various information and a hard disk device 108. Each device 101 to 108 is connected to the bus 109.

上記のハードディスク装置108には、第1〜第3の情報処理装置31〜33と端末34のそれぞれの機能を実現するための情報提供プログラムが記憶される。   The hard disk device 108 stores information providing programs for realizing the functions of the first to third information processing devices 31 to 33 and the terminal 34.

例えば、第1の情報処理装置31用のハードディスク装置108には、第1のメッセージ制御部41、第1の連携管理部42、サービスアプリケーション43、及び第1の記憶部44の各部の機能を有する情報提供プログラムが記憶される。   For example, the hard disk device 108 for the first information processing device 31 has the functions of the first message control unit 41, the first cooperation management unit 42, the service application 43, and the first storage unit 44. An information providing program is stored.

また、第2の情報処理装置32用のハードディスク装置108には、第2のメッセージ制御部51、認証部52、第2の記憶部53、制御部54、及び同意テーブル55の各部の機能を有する情報提供プログラムが記憶される。   Further, the hard disk device 108 for the second information processing device 32 has the functions of the second message control unit 51, the authentication unit 52, the second storage unit 53, the control unit 54, and the consent table 55. An information providing program is stored.

更に、第3の情報処理装置33用のハードディスク装置108には、第3のメッセージ制御部61、第3の記憶部62、サービスアプリケーション63、及び管理部64の各部の機能を有する情報提供プログラムが記憶される。   Further, the hard disk device 108 for the third information processing apparatus 33 includes an information providing program having functions of the third message control unit 61, the third storage unit 62, the service application 63, and the management unit 64. Remembered.

そして、端末34用のハードディスク装置108には、webブラウザ35としての機能を有する情報提供プログラムが記憶される。   The hard disk device 108 for the terminal 34 stores an information providing program having a function as the web browser 35.

一方、入力装置102は、例えばユーザからパスワードの入力を受け付けたり、コンピュータ100の管理者から管理情報の入力を受け付けたりする。モニタ103は、例えば認証のためのパスワード入力画面を表示したり、コンピュータ100の管理者がメンテナンス等を行う場合に各種情報を表示したりする。   On the other hand, the input device 102 accepts input of a password from a user, for example, or accepts input of management information from an administrator of the computer 100. The monitor 103 displays a password input screen for authentication, for example, and displays various information when the administrator of the computer 100 performs maintenance or the like.

インタフェース装置105には、例えば不図示の印刷装置等が接続される。通信装置106は、ネットワーク35に接続され、第1〜第3の情報処理装置31〜33と端末34のそれぞれの間の通信を行う。   For example, a printing device (not shown) is connected to the interface device 105. The communication device 106 is connected to the network 35 and performs communication between each of the first to third information processing devices 31 to 33 and the terminal 34.

また、CPU101は、ハードディスク装置108に記憶された前述の情報提供プログラムを読み出して、RAM107に展開して実行する。これにより、CPU101やRAM107等のハードウェア資源と情報提供プログラムとが協働して図7に示した第1〜第3の情報処理装置33と端末34の各機能が実現される。   Further, the CPU 101 reads out the above-described information providing program stored in the hard disk device 108, expands it in the RAM 107, and executes it. Accordingly, the hardware resources such as the CPU 101 and the RAM 107 and the information providing program cooperate to realize the functions of the first to third information processing apparatuses 33 and the terminal 34 shown in FIG.

また、上記の情報提供プログラムをコンピュータ100が読み取り可能な記録媒体110に記憶させておき、コンピュータ100に記録媒体110の情報提供プログラムを読み取らせるようにしてもよい。   The information providing program may be stored in the recording medium 110 that can be read by the computer 100, and the computer 100 may be caused to read the information providing program in the recording medium 110.

そのような記録媒体110としては、例えばCD-ROM(Compact Disc - Read Only Memory)、DVD(Digital Versatile Disc)、及びUSB(Universal Serial Bus)メモリ等の可搬型記憶媒体がある。また、フラッシュメモリ等の半導体メモリやハードディスクドライブを記憶媒体110として使用してもよい。これらの記憶媒体110は、物理的な形態を持たない搬送波のような一時的な媒体ではない。   Examples of such a recording medium 110 include portable storage media such as a CD-ROM (Compact Disc-Read Only Memory), a DVD (Digital Versatile Disc), and a USB (Universal Serial Bus) memory. Further, a semiconductor memory such as a flash memory or a hard disk drive may be used as the storage medium 110. These storage media 110 are not temporary media such as carrier waves having no physical form.

更に、公衆回線、インターネット、及びLAN等に接続された装置にこの情報処理プログラムを記憶させておき、コンピュータ100がこれらから情報処理プログラムを読み出して実行するようにしてもよい。   Furthermore, the information processing program may be stored in a device connected to a public line, the Internet, a LAN, or the like, and the computer 100 may read and execute the information processing program from these.

以上説明した各実施形態に関し、更に以下の付記を開示する。   The following additional notes are disclosed for each embodiment described above.

(付記1) 第1の情報処理装置、第2の情報処理装置、及び第3の情報処理装置を備えた情報提供システムであって、
前記第1の情報処理装置は、
前記第3の情報処理装置が保有するユーザの属性情報を取得することについての承認を求める承認依頼を前記第2の情報処理装置に通知し、前記属性情報の取得について前記ユーザの同意が得られたことを示す同意識別子が前記第2の情報処理装置から通知されたときに、前記同意識別子を前記第3の情報処理装置に通知する第1の通知部、
を有し、
前記第2の情報処理装置は、
前記第3の情報処理装置からの依頼を受けて、前記第3の情報処理装置から通知された前記同意識別子の正当性を確認する確認部と、
前記承認依頼を受けたときに前記属性情報を前記第1の情報処理装置に提供することについての前記同意を前記ユーザに要求し、前記同意が得られたときに前記同意識別子を前記第1の情報処理装置に通知する第2の通知部と、
を有し、
前記第3の情報処理装置は、
前記属性情報を記憶した記憶部と、
通知された前記同意識別子の前記正当性についての確認を前記第2の情報処理装置に依頼する依頼部と、
前記確認部によって前記正当性が確認されたときに前記第1の情報処理装置に前記属性情報を通知し、前記正当性が確認されないときには前記第1の情報処理装置に前記属性情報を通知しない第3の通知部、
を有する、
ことを特徴とする情報提供システム。
(Supplementary Note 1) An information providing system including a first information processing device, a second information processing device, and a third information processing device,
The first information processing apparatus includes:
An approval request for approval for acquiring the attribute information of the user held by the third information processing apparatus is notified to the second information processing apparatus, and the user's consent is obtained for the acquisition of the attribute information. A first notification unit for notifying the third information processing apparatus of the consent identifier when a consent identifier indicating that the second information processing apparatus is notified from the second information processing apparatus;
Have
The second information processing apparatus
A confirmation unit that receives a request from the third information processing apparatus and confirms the validity of the consent identifier notified from the third information processing apparatus;
When the approval request is received, the user is requested to give the consent for providing the attribute information to the first information processing apparatus, and the consent identifier is obtained when the consent is obtained. A second notification unit for notifying the information processing apparatus;
Have
The third information processing apparatus
A storage unit storing the attribute information;
A request unit that requests the second information processing apparatus to confirm the validity of the notified consent identifier;
When the validity is confirmed by the confirmation unit, the attribute information is notified to the first information processing apparatus, and when the validity is not confirmed, the attribute information is not notified to the first information processing apparatus. 3 notification sections,
Having
An information providing system characterized by that.

(付記2) 前記第1の通知部は、前記第2の情報処理装置から前記同意識別子が通知された場合に、前記属性情報の提供についての許可を求める要求を前記第3の情報処理装置に通知し、
前記第2の通知部は、前記確認部により前記正当性が確認されたときに、前記属性情報の提供についてユーザが同意した旨の情報を前記第3の情報処理装置に通知し、
前記第3の情報処理装置は、前記第2の通知部から通知された前記情報における前記属性情報と、前記第1の通知部から要求された前記属性情報とが一致しているかを判断する判断部を有し、
前記第3の通知部は、前記判断部によって前記属性情報が一致していないと判断されたときには、前記第1の情報処理装置に前記属性情報を通知しないことを特徴とする付記1に記載の情報提供システム。
(Supplementary Note 2) When the consent identifier is notified from the second information processing device, the first notification unit sends a request for permission to provide the attribute information to the third information processing device. Notify
When the validity is confirmed by the confirmation unit, the second notification unit notifies the third information processing apparatus of information indicating that the user has agreed to provide the attribute information,
The third information processing apparatus determines whether the attribute information in the information notified from the second notification unit matches the attribute information requested from the first notification unit. Part
The third notification unit does not notify the attribute information to the first information processing apparatus when the determination unit determines that the attribute information does not match. Information provision system.

(付記3) 前記ユーザが操作する端末を更に有し、
前記確認部は、前記端末と前記第2の情報処理装置との間で確立されたユーザセッションと、前記同意をした前記ユーザのユーザセッションとの同一性を確認し、
前記第2の通知部は、前記ユーザセッションの前記同一性がないときには、前記ユーザが提供に同意した前記属性情報を前記第3の情報処理装置に通知しないことを特徴とする付記1又は付記2に記載の情報提供システム。
(Additional remark 3) It has further the terminal which the said user operates,
The confirmation unit confirms the identity of the user session established between the terminal and the second information processing apparatus and the user session of the user who has made the consent,
The second notifying unit does not notify the third information processing apparatus of the attribute information agreed to be provided by the user when the user session does not have the same identity. Information providing system described in 1.

(付記4) 前記第2の情報処理装置は、前記第3の情報処理装置が保有するのとは別の属性情報を記憶した別の記憶部を有し、
前記同意には、前記別の属性情報を前記第3の情報処理装置に提供することについての同意が含まれることを特徴とする付記1乃至付記3のいずれかに記載の情報提供システム。
(Additional remark 4) The said 2nd information processing apparatus has another memory | storage part which memorize | stored the attribute information different from the said 3rd information processing apparatus,
The information providing system according to any one of supplementary notes 1 to 3, wherein the consent includes consent to provide the other attribute information to the third information processing apparatus.

(付記5) 前記第1の情報処理装置は、前記第1乃至第3の情報処理装置のうちのどれが連携して前記ユーザにサービスを提供するのかを特定する連携識別子を前記承認依頼に付加する連携管理部を有し、
前記第2の通知部は、前記連携識別子に基づいて第1乃至第3の情報処理装置の全てが連携することが確認できた場合に、前記別の記憶部に記憶された前記別の属性情報を前記第3の情報処理装置に提供することについての同意を前記同意に含めることを特徴とする付記4に記載の情報提供システム。
(Supplementary Note 5) The first information processing apparatus adds, to the approval request, a cooperation identifier that specifies which of the first to third information processing apparatuses cooperates to provide the service to the user. Have a linked management department
The second notification unit, when it is confirmed that all of the first to third information processing apparatuses are linked based on the linkage identifier, the other attribute information stored in the different storage unit The information providing system according to appendix 4, wherein consent for providing the third information processing apparatus to the third information processing apparatus is included in the consent.

(付記6) 前記第1の通知部は前記承認依頼に記号列を付加し、
前記第2の通知部は、前記記号列の一部を前記同意識別子として前記第1の情報処理装置に通知することを特徴とする付記1に記載の情報提供システム。
(Appendix 6) The first notification unit adds a symbol string to the approval request,
The information providing system according to appendix 1, wherein the second notification unit notifies the first information processing apparatus of a part of the symbol string as the consent identifier.

(付記7) 前記記号列のうち、前記同意識別子を除いた残りの部分は、前記第1乃至第3の情報処理装置のうちのどれが連携して前記ユーザにサービスを提供するのかを特定する連携識別子であることを特徴とする付記6に記載の情報提供システム。   (Supplementary Note 7) The remaining part of the symbol string excluding the consent identifier specifies which of the first to third information processing apparatuses cooperates to provide the service to the user. The information providing system according to appendix 6, wherein the information providing system is a linkage identifier.

(付記8) 前記第2の情報処理装置は、前記承認依頼を受けて前記ユーザの認証を行う認証部を有することを特徴とする付記1に記載の情報提供システム。   (Supplementary note 8) The information providing system according to supplementary note 1, wherein the second information processing apparatus includes an authentication unit that receives the approval request and authenticates the user.

(付記9) 前記確認部は、前記第2の通知部が前記第1の情報処理装置に通知した前記同意識別子を記憶したテーブルを用い、前記テーブルの前記同意識別子と、前記第3の情報処理装置から通知された前記同意識別子とが同一であるかどうかを確認することにより、前記正当性の確認を行うことを特徴とする付記1に記載の情報提供システム。   (Additional remark 9) The said confirmation part uses the table which memorize | stored the said consent identifier which the said 2nd notification part notified to the said 1st information processing apparatus, The said consent identifier of the said table, and said 3rd information processing The information providing system according to claim 1, wherein the validity is confirmed by confirming whether or not the consent identifier notified from the apparatus is the same.

(付記10) 第1の情報処理装置が、ユーザの属性情報を取得することについての承認を第2の情報処理装置に依頼し、
前記依頼を受けた前記第2の情報処理装置が、前記属性情報を前記第1の情報処理装置に提供することについての同意を前記ユーザに要求し、
前記ユーザの同意が得られたとき、前記第2の情報処理装置が、前記同意が得られたことを示す同意識別子を前記第1の情報処理装置に通知し、
前記同意識別子の通知を受けた前記第1の情報処理装置が、前記属性情報を保有する第3の情報処理装置に前記同意識別子を通知し、
前記同意識別子の通知を受けた前記第3の情報処理装置が、前記第2の情報処理装置に対し、通知された前記同意識別子の正当性の確認を依頼し、
前記正当性が確認されたときに前記第3の情報処理装置が前記第1の情報処理装置に前記属性情報を通知し、前記正当性が確認されないときには前記第3の情報処理装置が前記第1の情報処理装置に前記属性情報を通知しないことを特徴とする情報提供方法。
(Supplementary Note 10) The first information processing apparatus requests the second information processing apparatus to approve the acquisition of the attribute information of the user,
The second information processing apparatus that has received the request requests the user to agree to provide the attribute information to the first information processing apparatus,
When the user's consent is obtained, the second information processing apparatus notifies the first information processing apparatus of an consent identifier indicating that the consent has been obtained,
The first information processing apparatus that has received the notification of the consent identifier notifies the consent information to the third information processing apparatus that holds the attribute information;
The third information processing apparatus that has received the notification of the consent identifier requests the second information processing apparatus to confirm the validity of the notified consent identifier,
When the validity is confirmed, the third information processing apparatus notifies the attribute information to the first information processing apparatus, and when the validity is not confirmed, the third information processing apparatus The information providing method is characterized in that the attribute information is not notified to the information processing apparatus.

(付記11) 前記同意識別子の通知を受けた前記第1の情報処理装置が、前記第3の情報処理装置に対し、前記属性情報の提供について許可を求める要求を通知し、
前記正当性が確認された場合、前記第2の情報処理装置が、前記属性情報の提供についてユーザが同意した旨の情報を第3の情報処理装置に通知し、
前記第3の情報処理装置は、前記第2の情報処理装置から通知された前記情報における前記属性情報と、前記第1の情報処理装置から要求された前記属性情報とが一致していない場合には、前記第1の情報処理装置に前記属性情報を通知しないことを特徴とする付記10に記載の情報提供方法。
(Supplementary Note 11) The first information processing apparatus that has received the notification of the consent identifier notifies the third information processing apparatus of a request for permission for provision of the attribute information,
When the validity is confirmed, the second information processing apparatus notifies the third information processing apparatus of information that the user has agreed to provide the attribute information,
The third information processing apparatus, when the attribute information in the information notified from the second information processing apparatus does not match the attribute information requested from the first information processing apparatus. 11. The information providing method according to appendix 10, wherein the attribute information is not notified to the first information processing apparatus.

(付記12) 第1の情報処理装置が、ユーザの属性情報を取得することについての承認を第2の情報処理装置に依頼する処理と、
前記依頼を受けた前記第2の情報処理装置が、前記属性情報を前記第1の情報処理装置に提供することについての同意を前記ユーザに要求する処理と、
前記ユーザの同意が得られたとき、前記第2の情報処理装置が、前記同意が得られたことを示す同意識別子を前記第1の情報処理装置に通知する処理と、
前記同意識別子の通知を受けた前記第1の情報処理装置が、前記属性情報を保有する第3の情報処理装置に前記同意識別子を通知する処理と、
前記同意識別子の通知を受けた前記第3の情報処理装置が、前記第2の情報処理装置に対し、通知された前記同意識別子の正当性の確認を依頼する処理と、
前記正当性が確認されたときに前記第3の情報処理装置が前記第1の情報処理装置に前記属性情報を通知し、前記正当性が確認されないときには前記第3の情報処理装置が前記第1の情報処理装置に前記属性情報を通知しない処理と、
をコンピュータに実行させる情報提供プログラム。
(Supplementary Note 12) A process in which the first information processing apparatus requests the second information processing apparatus to approve the acquisition of user attribute information;
The second information processing apparatus that has received the request requests the user to give consent for providing the attribute information to the first information processing apparatus;
When the user's consent is obtained, the second information processing device notifies the first information processing device of an agreement identifier indicating that the consent has been obtained;
The first information processing apparatus that has received the notification of the consent identifier notifies the third information processing apparatus that holds the attribute information of the consent identifier;
The third information processing apparatus that has received the notification of the consent identifier requests the second information processing apparatus to confirm the validity of the notified consent identifier;
When the validity is confirmed, the third information processing apparatus notifies the attribute information to the first information processing apparatus, and when the validity is not confirmed, the third information processing apparatus A process of not reporting the attribute information to the information processing apparatus of
Information providing program that causes a computer to execute

1〜3…第1〜第3の情報処理装置、2a、3a…記憶部、4…端末、7、8…属性情報、9…サービス要求、10…システム、31〜33…第1〜第3の情報処理装置、34…端末、35…webブラウザ、36…ネットワーク、37、38…属性情報、39…認証情報、41…第1のメッセージ制御部、42…連携管理部、43…サービスアプリケーション、44…第1の記憶部、51…第2のメッセージ制御部、52…認証部、53…第2の記憶部、54…制御部、54a…生成部、54b…確認部、55…同意テーブル、61…第3のメッセージ制御部、62…第3の記憶部、63…サービスアプリケーション、64…管理部、64a…依頼部、64b…判断部。 DESCRIPTION OF SYMBOLS 1-3 ... 1st-3rd information processing apparatus, 2a, 3a ... Memory | storage part, 4 ... Terminal, 7, 8 ... Attribute information, 9 ... Service request, 10 ... System, 31-33 ... 1st-3rd Information processing apparatus 34 ... Terminal 35 ... Web browser 36 ... Network 37 37 ... Attribute information 39 ... Authentication information 41 ... First message control unit 42 ... Cooperation management unit 43 ... Service application 44 ... first storage unit, 51 ... second message control unit, 52 ... authentication unit, 53 ... second storage unit, 54 ... control unit, 54a ... generation unit, 54b ... confirmation unit, 55 ... consent table, 61 ... third message control unit, 62 ... third storage unit, 63 ... service application, 64 ... management unit, 64a ... request unit, 64b ... determination unit.

Claims (6)

第1の情報処理装置、第2の情報処理装置、及び第3の情報処理装置を備えた情報提供システムであって、
前記第1の情報処理装置は、
前記第3の情報処理装置が保有するユーザの属性情報を取得することについての承認を求める承認依頼を前記第2の情報処理装置に通知し、前記属性情報の取得について前記ユーザの同意が得られたことを示す同意識別子が前記第2の情報処理装置から通知されたときに、前記同意識別子を前記第3の情報処理装置に通知する第1の通知部、
を有し、
前記第2の情報処理装置は、
前記第3の情報処理装置からの依頼を受けて、前記第3の情報処理装置から通知された前記同意識別子の正当性を確認する確認部と、
前記承認依頼を受けたときに前記属性情報を前記第1の情報処理装置に提供することについての前記同意を前記ユーザに要求し、前記同意が得られたときに前記同意識別子を前記第1の情報処理装置に通知する第2の通知部と、
を有し、
前記第3の情報処理装置は、
前記属性情報を記憶した記憶部と、
通知された前記同意識別子の前記正当性についての確認を前記第2の情報処理装置に依頼する依頼部と、
前記確認部によって前記正当性が確認されたときに前記第1の情報処理装置に前記属性情報を通知し、前記正当性が確認されないときには前記第1の情報処理装置に前記属性情報を通知しない第3の通知部、
を有する、
ことを特徴とする情報提供システム。
An information providing system including a first information processing device, a second information processing device, and a third information processing device,
The first information processing apparatus includes:
An approval request for approval for acquiring the attribute information of the user held by the third information processing apparatus is notified to the second information processing apparatus, and the user's consent is obtained for the acquisition of the attribute information. A first notification unit for notifying the third information processing apparatus of the consent identifier when a consent identifier indicating that the second information processing apparatus is notified from the second information processing apparatus;
Have
The second information processing apparatus
A confirmation unit that receives a request from the third information processing apparatus and confirms the validity of the consent identifier notified from the third information processing apparatus;
When the approval request is received, the user is requested to give the consent for providing the attribute information to the first information processing apparatus, and the consent identifier is obtained when the consent is obtained. A second notification unit for notifying the information processing apparatus;
Have
The third information processing apparatus
A storage unit storing the attribute information;
A request unit that requests the second information processing apparatus to confirm the validity of the notified consent identifier;
When the validity is confirmed by the confirmation unit, the attribute information is notified to the first information processing apparatus, and when the validity is not confirmed, the attribute information is not notified to the first information processing apparatus. 3 notification sections,
Having
An information providing system characterized by that.
前記第1の通知部は、前記第2の情報処理装置から前記同意識別子が通知された場合に、前記属性情報の提供についての許可を求める要求を前記第3の情報処理装置に通知し、
前記第2の通知部は、前記確認部により前記正当性が確認されたときに、前記属性情報の提供についてユーザが同意した旨の情報を前記第3の情報処理装置に通知し、
前記第3の情報処理装置は、前記第2の通知部から通知された前記情報における前記属性情報と、前記第1の通知部から要求された前記属性情報とが一致しているかを判断する判断部を有し、
前記第3の通知部は、前記判断部によって前記属性情報が一致していないと判断されたときには、前記第1の情報処理装置に前記属性情報を通知しないことを特徴とする請求項1に記載の情報提供システム。
The first notification unit notifies the third information processing device of a request for permission for provision of the attribute information when the consent identifier is notified from the second information processing device.
When the validity is confirmed by the confirmation unit, the second notification unit notifies the third information processing apparatus of information indicating that the user has agreed to provide the attribute information,
The third information processing apparatus determines whether the attribute information in the information notified from the second notification unit matches the attribute information requested from the first notification unit. Part
The said 3rd notification part does not notify the said attribute information to a said 1st information processing apparatus, when it is judged that the said attribute information does not correspond by the said judgment part. Information provision system.
前記ユーザが操作する端末を更に有し、
前記確認部は、前記端末と前記第2の情報処理装置との間で確立されたユーザセッションと、前記同意をした前記ユーザのユーザセッションとの同一性を確認し、
前記第2の通知部は、前記ユーザセッションの前記同一性がないときには、前記ユーザが提供に同意した前記属性情報を前記第3の情報処理装置に通知しないことを特徴とする請求項1又は請求項2に記載の情報提供システム。
A terminal operated by the user;
The confirmation unit confirms the identity of the user session established between the terminal and the second information processing apparatus and the user session of the user who has made the consent,
The said 2nd notification part does not notify the said 3rd information processing apparatus of the said attribute information which the said user agreed to provide, when the said user session does not have the said identity. Item 3. The information providing system according to Item 2.
前記第1の通知部は前記承認依頼に記号列を付加し、
前記第2の通知部は、前記記号列の一部を前記同意識別子として前記第1の情報処理装置に通知することを特徴とする請求項1乃至請求項3のいずれか1項に記載の情報提供システム。
The first notification unit adds a symbol string to the approval request,
The information according to any one of claims 1 to 3, wherein the second notification unit notifies the first information processing apparatus of a part of the symbol string as the consent identifier. Offer system.
第1の情報処理装置が、ユーザの属性情報を取得することについての承認を第2の情報処理装置に依頼し、
前記依頼を受けた前記第2の情報処理装置が、前記属性情報を前記第1の情報処理装置に提供することについての同意を前記ユーザに要求し、
前記ユーザの同意が得られたとき、前記第2の情報処理装置が、前記同意が得られたことを示す同意識別子を前記第1の情報処理装置に通知し、
前記同意識別子の通知を受けた前記第1の情報処理装置が、前記属性情報を保有する第3の情報処理装置に前記同意識別子を通知し、
前記同意識別子の通知を受けた前記第3の情報処理装置が、前記第2の情報処理装置に対し、通知された前記同意識別子の正当性の確認を依頼し、
前記正当性が確認されたときに前記第3の情報処理装置が前記第1の情報処理装置に前記属性情報を通知し、前記正当性が確認されないときには前記第3の情報処理装置が前記第1の情報処理装置に前記属性情報を通知しないことを特徴とする情報提供方法。
The first information processing apparatus requests the second information processing apparatus to approve the acquisition of the attribute information of the user;
The second information processing apparatus that has received the request requests the user to agree to provide the attribute information to the first information processing apparatus,
When the user's consent is obtained, the second information processing apparatus notifies the first information processing apparatus of an consent identifier indicating that the consent has been obtained,
The first information processing apparatus that has received the notification of the consent identifier notifies the consent information to the third information processing apparatus that holds the attribute information;
The third information processing apparatus that has received the notification of the consent identifier requests the second information processing apparatus to confirm the validity of the notified consent identifier,
When the validity is confirmed, the third information processing apparatus notifies the attribute information to the first information processing apparatus, and when the validity is not confirmed, the third information processing apparatus The information providing method is characterized in that the attribute information is not notified to the information processing apparatus.
第1の情報処理装置が、ユーザの属性情報を取得することについての承認を第2の情報処理装置に依頼する処理と、
前記依頼を受けた前記第2の情報処理装置が、前記属性情報を前記第1の情報処理装置に提供することについての同意を前記ユーザに要求する処理と、
前記ユーザの同意が得られたとき、前記第2の情報処理装置が、前記同意が得られたことを示す同意識別子を前記第1の情報処理装置に通知する処理と、
前記同意識別子の通知を受けた前記第1の情報処理装置が、前記属性情報を保有する第3の情報処理装置に前記同意識別子を通知する処理と、
前記同意識別子の通知を受けた前記第3の情報処理装置が、前記第2の情報処理装置に対し、通知された前記同意識別子の正当性の確認を依頼する処理と、
前記正当性が確認されたときに前記第3の情報処理装置が前記第1の情報処理装置に前記属性情報を通知し、前記正当性が確認されないときには前記第3の情報処理装置が前記第1の情報処理装置に前記属性情報を通知しない処理と、
をコンピュータに実行させる情報提供プログラム。
A process in which the first information processing apparatus requests the second information processing apparatus to approve the acquisition of user attribute information;
The second information processing apparatus that has received the request requests the user to give consent for providing the attribute information to the first information processing apparatus;
When the user's consent is obtained, the second information processing device notifies the first information processing device of an agreement identifier indicating that the consent has been obtained;
The first information processing apparatus that has received the notification of the consent identifier notifies the third information processing apparatus that holds the attribute information of the consent identifier;
The third information processing apparatus that has received the notification of the consent identifier requests the second information processing apparatus to confirm the validity of the notified consent identifier;
When the validity is confirmed, the third information processing apparatus notifies the attribute information to the first information processing apparatus, and when the validity is not confirmed, the third information processing apparatus A process of not reporting the attribute information to the information processing apparatus of
Information providing program that causes a computer to execute
JP2015220446A 2015-11-10 2015-11-10 Information providing system, information providing program, and information providing method Active JP6582898B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015220446A JP6582898B2 (en) 2015-11-10 2015-11-10 Information providing system, information providing program, and information providing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015220446A JP6582898B2 (en) 2015-11-10 2015-11-10 Information providing system, information providing program, and information providing method

Publications (2)

Publication Number Publication Date
JP2017091207A true JP2017091207A (en) 2017-05-25
JP6582898B2 JP6582898B2 (en) 2019-10-02

Family

ID=58769113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015220446A Active JP6582898B2 (en) 2015-11-10 2015-11-10 Information providing system, information providing program, and information providing method

Country Status (1)

Country Link
JP (1) JP6582898B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017199145A (en) * 2016-04-26 2017-11-02 キヤノン株式会社 Server unit, system, information processing method and program
JP2020119458A (en) * 2019-01-28 2020-08-06 キヤノン株式会社 Management device and control method thereof
JP2021114086A (en) * 2020-01-17 2021-08-05 富士通株式会社 Information processing system, information processing apparatus, information processing method, and information processing program
JP7310616B2 (en) 2020-01-20 2023-07-19 富士通株式会社 Server device, data processing method, and communication program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014085945A (en) * 2012-10-25 2014-05-12 Canon Inc Image forming apparatus, and information processing method and program
JP2014092823A (en) * 2012-10-31 2014-05-19 Ricoh Co Ltd System and service provision device
JP2014146132A (en) * 2013-01-28 2014-08-14 Nippon Telegr & Teleph Corp <Ntt> Access permission management system and access permission management method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014085945A (en) * 2012-10-25 2014-05-12 Canon Inc Image forming apparatus, and information processing method and program
JP2014092823A (en) * 2012-10-31 2014-05-19 Ricoh Co Ltd System and service provision device
JP2014146132A (en) * 2013-01-28 2014-08-14 Nippon Telegr & Teleph Corp <Ntt> Access permission management system and access permission management method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017199145A (en) * 2016-04-26 2017-11-02 キヤノン株式会社 Server unit, system, information processing method and program
JP2020119458A (en) * 2019-01-28 2020-08-06 キヤノン株式会社 Management device and control method thereof
JP7170550B2 (en) 2019-01-28 2022-11-14 キヤノン株式会社 Management device and its control method
JP2021114086A (en) * 2020-01-17 2021-08-05 富士通株式会社 Information processing system, information processing apparatus, information processing method, and information processing program
JP7294158B2 (en) 2020-01-17 2023-06-20 富士通株式会社 Information processing system, information processing device, information processing method, and information processing program
JP7310616B2 (en) 2020-01-20 2023-07-19 富士通株式会社 Server device, data processing method, and communication program

Also Published As

Publication number Publication date
JP6582898B2 (en) 2019-10-02

Similar Documents

Publication Publication Date Title
US10805085B1 (en) PKI-based user authentication for web services using blockchain
TWI400922B (en) Authentication of a principal in a federation
KR101534890B1 (en) Trusted device-specific authentication
KR101150108B1 (en) Peer-to-peer authentication and authorization
RU2308755C2 (en) System and method for providing access to protected services with one-time inputting of password
US8819800B2 (en) Protecting user information
US7257636B2 (en) Inter-working method of wireless internet networks (gateways)
TW480862B (en) Dynamic connection to multiple origin servers in a transcoding proxy
US8209394B2 (en) Device-specific identity
US8869258B2 (en) Facilitating token request troubleshooting
WO2010075761A1 (en) Method, server and system for providing resource for an access user
CN101218576B (en) Method and system for managing access to a network
CN110138718A (en) Information processing system and its control method
JP2019185775A (en) Authority authentication method for block chain infrastructure, terminal, and server using the same
TW201027384A (en) Digital rights management (DRM)-enabled policy management for an identify provider in a federated environment
JP6582898B2 (en) Information providing system, information providing program, and information providing method
JP2007095076A (en) Method for granting privilege and sharing resource in telecommunications system
JP5827680B2 (en) One-time password with IPsec and IKE version 1 authentication
US8793773B2 (en) System and method for providing reputation reciprocity with anonymous identities
WO2022246997A1 (en) Service processing method and apparatus, server, and storage medium
JP2010506511A (en) Client-based anonymous
US20110131417A1 (en) Identity based network policy enablement
JP2005327189A (en) Server, authentication exchange system, request relaying method
TW201030637A (en) A method providing internet service and service integration platform system
JP7238558B2 (en) Authentication mediation device and authentication mediation program

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180215

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180220

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180706

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190708

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190819

R150 Certificate of patent or registration of utility model

Ref document number: 6582898

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150