JP2020087197A - Information processing system, information processing program and information processing method - Google Patents

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

Info

Publication number
JP2020087197A
JP2020087197A JP2018223799A JP2018223799A JP2020087197A JP 2020087197 A JP2020087197 A JP 2020087197A JP 2018223799 A JP2018223799 A JP 2018223799A JP 2018223799 A JP2018223799 A JP 2018223799A JP 2020087197 A JP2020087197 A JP 2020087197A
Authority
JP
Japan
Prior art keywords
information
external service
service
external
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018223799A
Other languages
Japanese (ja)
Inventor
康治 福田
Koji Fukuda
康治 福田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2018223799A priority Critical patent/JP2020087197A/en
Publication of JP2020087197A publication Critical patent/JP2020087197A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Abstract

To provide an information processing system, an information processing program and an information processing method that allows easy addition of cooperation setting with an external service.SOLUTION: An information processing system comprises: a component setting reception unit; an external service coordination component; and an approval service unit. The component setting reception unit receives registration of external service coordination fixing information and external service coordination variation information (external service coordination information) which is information to be coordinated with the external service. The external service coordination component manages the external service coordination information. The approval service unit acquires a token from the external service using the external service coordination information. With this configuration, a developer can set external service coordination information from a component development screen of a developer site using an API of the external service. In addition, the developer can quickly add the external service coordination information on the basis of the information received on the API.SELECTED DRAWING: Figure 4

Description

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

特許文献1には、クライアントIDやクライアントシークレットといった外部サービスと連携する際、ユーザによるサービス利用時の認可手続きの回数を減らす技術が開示されている。 Patent Document 1 discloses a technique of reducing the number of authorization procedures when a user uses a service when linking with an external service such as a client ID or a client secret.

しかしながら、特許文献1に開示される従来技術では、連携する外部サービスを追加する方法が開示されていないため、外部サービスを容易に追加するというニーズに対応できないという課題があった。 However, the conventional technique disclosed in Patent Document 1 does not disclose a method of adding a linked external service, and thus has a problem that it is not possible to meet the need to easily add an external service.

本発明は、上記課題に鑑み、外部サービスとの連携設定を容易に追加できる。 In view of the above problem, the present invention can easily add a cooperation setting with an external service.

上記課題に鑑み、本発明に係る情報処理システムは、外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるコンポーネント設定受付部と、前記外部サービス連携情報を管理する外部サービス連携コンポーネントと、前記外部サービス連携情報を用いて、前記外部サービスからトークンを取得する認可サービス部と、を備える。 In view of the above problems, the information processing system according to the present invention includes a component setting reception unit that receives registration of external service cooperation information that is information that cooperates with an external service, and an external service cooperation component that manages the external service cooperation information. An authorization service unit that acquires a token from the external service using the external service cooperation information.

本発明によれば、外部サービスとの連携設定を容易に追加できるという効果を奏する。 According to the present invention, it is possible to easily add a link setting with an external service.

本発明の実施の形態に係る情報処理システム1の構成図である。It is a block diagram of the information processing system 1 which concerns on embodiment of this invention. コンピュータシステム500のハードウェア構成図である。3 is a hardware configuration diagram of a computer system 500. FIG. サービス提供システム50の処理ブロック図である。4 is a processing block diagram of the service providing system 50. FIG. 外部サービス103を追加するための機能について説明するための図である。It is a figure for demonstrating the function for adding the external service 103. 開発サイトの画面表示例を示す図である。It is a figure which shows the example of a screen display of a development site. ユーザサイト102にアクセスしたときに表示される外部サービス連携の画面(マイページ)を示す図である。It is a figure which shows the screen (my page) of external service cooperation displayed when the user site 102 is accessed. フェデレーション情報の一例を示す図である。It is a figure which shows an example of federation information. 外部サービス連携固定情報90の一例を示す図である。It is a figure which shows an example of the external service cooperation fixed information 90. ユーザ情報の一例を示す図である。It is a figure which shows an example of user information. 外部サービス連携変動情報91の一例を示す図である。It is a figure which shows an example of the external service cooperation change information 91. コンポーネントの登録動作を説明するためのシーケンスチャートである。7 is a sequence chart for explaining a component registration operation. 外部サービスからトークンを取得する認可動作を説明するためのシーケンスチャートである。It is a sequence chart for explaining an authorization operation for acquiring a token from an external service. 情報処理システム1の変形例に係る構成例を示す図である。It is a figure showing the example of composition concerning the modification of information processing system 1. 情報処理システム1の変形例によるコンポーネントの登録動作を説明するためのシーケンスチャートである。9 is a sequence chart for explaining a component registration operation according to a modified example of the information processing system 1. 情報処理システム1の変形例が外部サービスからトークンを取得する認可動作を説明するためのシーケンスチャートである。A modified example of the information processing system 1 is a sequence chart for explaining an authorization operation for acquiring a token from an external service.

以下、本発明を実施するための形態について図面を用いて説明する。 Embodiments for carrying out the present invention will be described below with reference to the drawings.

図1は本発明の実施の形態に係る情報処理システム1の構成図である。情報処理システム1は、サービス提供システム50及び外部サービスシステム30を備える。 FIG. 1 is a configuration diagram of an information processing system 1 according to an embodiment of the present invention. The information processing system 1 includes a service providing system 50 and an external service system 30.

サービス提供システム50は、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24及び他サービス提供装置25を備える。 The service providing system 50 includes an access control device 21, a print service providing device 22, a scan service providing device 23, a management setting service providing device 24, and another service providing device 25.

アクセス制御装置21は、プリントサービス提供装置22が提供するプリントサービス、スキャンサービス提供装置23が提供するスキャンサービス、管理設定サービス提供装置24が提供する管理設定サービスなどへのログインを制御する。 The access control device 21 controls login to a print service provided by the print service providing device 22, a scan service provided by the scan service providing device 23, a management setting service provided by the management setting service providing device 24, and the like.

アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24及び他サービス提供装置25は、ネットワークN2に接続されている。ネットワークN2は、アクセス制御装置21を介して、インターネット等のネットワークN4に接続されている。ネットワークN2はアクセス制御装置21によってセキュリティが保護されている。 The access control device 21, the print service providing device 22, the scan service providing device 23, the management setting service providing device 24, and the other service providing device 25 are connected to the network N2. The network N2 is connected to the network N4 such as the Internet via the access control device 21. The security of the network N2 is protected by the access control device 21.

ネットワークN4には、オフィス内のファイアウォールFWが接続される。ファイアウォールFWには、ネットワークN1が接続される。ネットワークN1は、ファイアウォールFWの内側(例えばオフィス内など)に存在するプライベートネットワークである。ファイアウォールFWは、ネットワークN1とネットワークN4との接点に設置され、不正なアクセスを検出及び遮断する。 A firewall FW in the office is connected to the network N4. The network N1 is connected to the firewall FW. The network N1 is a private network existing inside the firewall FW (for example, in an office). The firewall FW is installed at a contact point between the network N1 and the network N4, and detects and blocks unauthorized access.

ネットワークN1には、クライアント端末11と、携帯端末12と、複合機などの画像形成装置14と、プロジェクタ15と、電子黒板等のその他の機器16とが接続されている。 A client terminal 11, a mobile terminal 12, an image forming apparatus 14 such as a multifunction peripheral, a projector 15, and other equipment 16 such as an electronic blackboard are connected to the network N1.

クライアント端末11は、端末装置の一例である。クライアント端末11は、一般的なOSなどが搭載された情報処理装置である。クライアント端末11は、無線による通信の手段又は有線による通信の手段を備える。クライアント端末11は、ユーザが操作可能な端末である。当該端末は、タブレットPC(Personal Computer)、ノートPCなどである。携帯端末12は、端末装置の一例である。携帯端末12は、無線による通信の手段又は有線による通信の手段を備える。携帯端末12は、ユーザが携帯可能な端末である。当該端末は、スマートフォン、携帯電話、タブレットPC、ノートPCなどである。画像形成装置14は、画像形成機能を備える装置である。当該装置は、複合機、コピー機、スキャナ、プリンタ、レーザプリンタなどである。画像形成装置14は無線による通信の手段又は有線による通信の手段を備える。プロジェクタ15は、画像を投影する装置である。プロジェクタ15は無線による通信の手段又は有線による通信の手段を備える。 The client terminal 11 is an example of a terminal device. The client terminal 11 is an information processing device equipped with a general OS and the like. The client terminal 11 includes a wireless communication unit or a wired communication unit. The client terminal 11 is a terminal that can be operated by the user. The terminal is a tablet PC (Personal Computer), a notebook PC, or the like. The mobile terminal 12 is an example of a terminal device. The mobile terminal 12 includes a wireless communication unit or a wired communication unit. The mobile terminal 12 is a terminal that the user can carry. The terminal is a smartphone, a mobile phone, a tablet PC, a notebook PC, or the like. The image forming apparatus 14 is an apparatus having an image forming function. The device is a multifunction peripheral, a copier, a scanner, a printer, a laser printer, or the like. The image forming apparatus 14 includes a wireless communication unit or a wired communication unit. The projector 15 is a device that projects an image. The projector 15 includes a wireless communication unit or a wired communication unit.

ネットワークN4にはアクセス制御装置31が接続される。アクセス制御装置31には、ネットワークN3が接続される。ネットワークN3は、クラウドサービスに代表されるような外部サービスシステム30を構成するネットワークである。ネットワークN3は、アクセス制御装置31によってセキュリティが保護されている。ネットワークN3には外部サービス提供装置32が接続されている。アクセス制御装置31は、外部サービス提供装置32が提供する外部サービスへのログインを制御する。 An access control device 31 is connected to the network N4. The network N3 is connected to the access control device 31. The network N3 is a network forming an external service system 30 represented by a cloud service. The security of the network N3 is protected by the access control device 31. The external service providing device 32 is connected to the network N3. The access control device 31 controls login to an external service provided by the external service providing device 32.

情報処理システム1は、OAuthと呼ばれるAPI(Application Programming Interface)認可の標準的技術を利用している。サービス提供システム50は、OAuthのコンシューマに相当する。外部サービスシステム30は、OAuthのサービスプロバイダに相当する。外部サービスシステム30がWebAPI(Application Programming Interface)を公開し、ユーザは、WebAPIを通じて、自身の権限の範囲内で、外部サービスシステム30に保存されているリソースへのアクセス、そのリソースを扱うサービスへのアクセスなどが可能である。また、サービス提供システム50のプリントサービス提供装置22などは、ユーザから委譲された権限に基づく認可トークンを利用することで、ユーザから委譲された権限の範囲内で、外部サービスシステム30に保存されているリソースへのアクセス、そのリソースを扱うサービスへのアクセスなどが可能となる。 The information processing system 1 uses a standard technology called API (Application Programming Interface) authorization called OAuth. The service providing system 50 corresponds to an OAuth consumer. The external service system 30 corresponds to an OAuth service provider. The external service system 30 publishes a Web API (Application Programming Interface), and the user can access the resource stored in the external service system 30 and access to the service that handles the resource, within his or her authority through the Web API. You can access it. Further, the print service providing apparatus 22 and the like of the service providing system 50, by using the authorization token based on the authority delegated by the user, are stored in the external service system 30 within the scope of the authority delegated by the user. It is possible to access existing resources and services that handle the resources.

図1に示されるクライアント端末11、携帯端末12、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、及び他サービス提供装置25は、図2に示すコンピュータシステムにより実現される。また、図1に示されるアクセス制御装置31及び外部サービス提供装置32は、図2に示すコンピュータシステムにより実現される。 The client terminal 11, mobile terminal 12, access control device 21, print service providing device 22, scan service providing device 23, management setting service providing device 24, and other service providing device 25 shown in FIG. It is realized by the system. The access control device 31 and the external service providing device 32 shown in FIG. 1 are realized by the computer system shown in FIG.

図2はコンピュータシステム500のハードウェア構成図である。コンピュータシステム500は、入力装置501、表示装置502、外部I/F503、RAM(Random Access Memory)504、ROM(Read Only Memory)505、CPU(Central Processing Unit)506、通信I/F507、及びHDD(Hard Disk Drive)508を備える。これらは、バスBによって相互に接続されている。入力装置501は、キーボード、マウス、タッチパネルなどであり、ユーザが各操作信号を入力するのに用いられる。表示装置502は、コンピュータシステム500による処理結果を表示するディスプレイであり。通信I/F507は、コンピュータシステム500をネットワークN1〜N4に接続するインタフェースである。これにより、コンピュータシステム500は、通信I/F507を介してデータ通信を行うことができる。HDD508は、プログラム、データなどを格納する不揮発性の記憶装置である。格納されるプログラム、データなどには、例えばコンピュータシステム500全体を制御する基本ソフトウェアであるOS(Operating System)、OS上において各種機能を提供するアプリケーションソフトウェアなどがある。HDD508は格納しているプログラム、データなどを、所定のファイルシステム、DB(データベース)などにより管理している。 FIG. 2 is a hardware configuration diagram of the computer system 500. The computer system 500 includes an input device 501, a display device 502, an external I/F 503, a RAM (Random Access Memory) 504, a ROM (Read Only Memory) 505, a CPU (Central Processing Unit) 506, a communication I/F 507, and an HDD ( Hard Disk Drive) 508. These are connected to each other by a bus B. The input device 501 is a keyboard, a mouse, a touch panel, or the like, and is used by the user to input each operation signal. The display device 502 is a display that displays a processing result by the computer system 500. The communication I/F 507 is an interface that connects the computer system 500 to the networks N1 to N4. Accordingly, the computer system 500 can perform data communication via the communication I/F 507. The HDD 508 is a non-volatile storage device that stores programs, data, and the like. The stored programs and data include, for example, an OS (Operating System) that is basic software that controls the entire computer system 500, application software that provides various functions on the OS, and the like. The HDD 508 manages stored programs, data, etc. by a predetermined file system, DB (database), and the like.

外部I/F503は、外部装置である記録媒体503aとのインタフェースである。これにより、コンピュータシステム500は、外部I/F503を介して記録媒体503aの読み取り、書き込みなどを行うことができる。記録媒体503aには、フレキシブルディスク、CD(Compact Disk)、DVD(Digital Versatile Disk)、SDメモリカード(SD Memory card)、USBメモリ(Universal Serial Bus memory)などである。ROM505は、電源を切ってもプログラム、データなどを保持できる不揮発性の半導体メモリ(記憶装置)である。ROM505には、コンピュータシステム500の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM504は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。CPU506は、ROM505やHDD508などの記憶装置からプログラムやデータをRAM504上に読み出し、処理を実行することで、コンピュータシステム500全体の制御や機能を実現する演算装置である。 The external I/F 503 is an interface with a recording medium 503a that is an external device. As a result, the computer system 500 can read and write the recording medium 503a via the external I/F 503. The recording medium 503a is a flexible disk, a CD (Compact Disk), a DVD (Digital Versatile Disk), an SD memory card (SD Memory card), a USB memory (Universal Serial Bus memory), or the like. The ROM 505 is a nonvolatile semiconductor memory (storage device) that can retain programs, data, and the like even when the power is turned off. The ROM 505 stores programs and data such as a BIOS (Basic Input/Output System) executed when the computer system 500 is activated, OS settings, and network settings. The RAM 504 is a volatile semiconductor memory (storage device) that temporarily holds programs and data. The CPU 506 is an arithmetic unit that realizes control and functions of the entire computer system 500 by reading programs and data from a storage device such as the ROM 505 and the HDD 508 onto the RAM 504 and executing processing.

図1に示されるクライアント端末11、携帯端末12、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、及び他サービス提供装置25は、図2に示される構成によって、後述する各種処理を実現できる。また、図1に示されるアクセス制御装置31、外部サービス提供装置32は、図2に示される構成によって、後述する各種処理を実現できる。 The client terminal 11, mobile terminal 12, access control device 21, print service providing device 22, scan service providing device 23, management setting service providing device 24, and other service providing device 25 shown in FIG. 1 are shown in FIG. Various processes described later can be realized by the configuration. Further, the access control device 31 and the external service providing device 32 shown in FIG. 1 can realize various processes described later by the configuration shown in FIG.

サービス提供システム50の機能は、図3に示す処理ブロックにより実現される。図3はサービス提供システム50の処理ブロック図である。サービス提供システム50は、プログラムを実行することにより、サービスアプリ51、プラットフォーム52、管理データ記憶部53及びプラットフォームAPI54を実現している。 The functions of the service providing system 50 are realized by the processing blocks shown in FIG. FIG. 3 is a processing block diagram of the service providing system 50. The service providing system 50 realizes a service application 51, a platform 52, a management data storage unit 53, and a platform API 54 by executing a program.

サービスアプリ51は、プリントサービスアプリ61、スキャンサービスアプリ62、管理設定サービスアプリ63、1つ以上のその他のサービスアプリ64を一例として備える。プリントサービスアプリ61はプリントサービスを提供するアプリケーションである。スキャンサービスアプリ62はスキャンサービスを提供するアプリケーションである。管理設定サービスアプリ63は管理設定サービスを提供するアプリケーションである。また、その他のサービスアプリ64は何らかのサービスを提供するアプリケーションである。 The service application 51 includes a print service application 61, a scan service application 62, a management setting service application 63, and one or more other service applications 64 as an example. The print service application 61 is an application that provides a print service. The scan service application 62 is an application that provides a scan service. The management setting service application 63 is an application that provides a management setting service. The other service application 64 is an application that provides some kind of service.

プラットフォームAPI54は、プリントサービスアプリ61、スキャンサービスアプリ62、管理設定サービスアプリ63、その他のサービスアプリ64などのサービスアプリ51が、プラットフォーム52を利用するためのインタフェースである。プラットフォームAPI54は、サービスアプリ51からの要求をプラットフォーム52が受信するために設けられた予め定義されたインタフェースであり、例えば関数やクラス等により構成される。なお、サービス提供システム50を複数の情報処理装置に分散して構成する場合、プラットフォームAPI54には、ネットワーク経由で利用可能な例えばWebAPIを利用できる。 The platform API 54 is an interface for the service application 51 such as the print service application 61, the scan service application 62, the management setting service application 63, and the other service application 64 to use the platform 52. The platform API 54 is a predefined interface provided for the platform 52 to receive a request from the service application 51, and is composed of, for example, a function or a class. When the service providing system 50 is configured by being distributed to a plurality of information processing devices, the platform API 54 can use, for example, a Web API that can be used via a network.

プラットフォーム52は、機器通信部72、データ処理部74、コンポーネント情報管理部105、及び認証サービス部104を備える。 The platform 52 includes a device communication unit 72, a data processing unit 74, a component information management unit 105, and an authentication service unit 104.

認証サービス部104は、クライアント端末11、画像形成装置14などのオフィス機器からのログイン要求に基づいて、認証を実行する。オフィス機器は、クライアント端末11、携帯端末12、画像形成装置14、プロジェクタ15、その他の機器16などの総称である。機器通信部72は、オフィス機器、外部サービスシステム30などとの通信を実行する。また認証サービス部104は、オフィス機器と、図1に示す外部サービスシステム30とのセッションを管理する。データ処理部74は、サービスアプリ51からの要求に基づいてデータ処理を実行する。 The authentication service unit 104 executes authentication based on a login request from an office device such as the client terminal 11 or the image forming apparatus 14. The office equipment is a generic term for the client terminal 11, the mobile terminal 12, the image forming apparatus 14, the projector 15, and other equipment 16. The device communication unit 72 executes communication with office devices, the external service system 30, and the like. The authentication service unit 104 also manages a session between the office device and the external service system 30 shown in FIG. The data processing unit 74 executes data processing based on the request from the service application 51.

管理データ記憶部53は、組織管理情報記憶部81、ユーザ情報記憶部82、認可設定情報記憶部84、外部サービス情報記憶部85、認可トークン情報記憶部86、データ管理情報記憶部87、及びデータストレージ88を一例として備える。 The management data storage unit 53 includes an organization management information storage unit 81, a user information storage unit 82, an authorization setting information storage unit 84, an external service information storage unit 85, an authorization token information storage unit 86, a data management information storage unit 87, and data. The storage 88 is provided as an example.

組織管理情報記憶部81は、組織管理情報を記憶する。ユーザ情報記憶部82は、ユーザ管理情報を記憶する。認可設定情報記憶部84は、認可設定情報を記憶する。外部サービス情報記憶部85は、外部サービス情報を記憶する。認可トークン情報記憶部86は、認可トークン情報を記憶する。データ管理情報記憶部87はデータ管理情報を記憶する。データストレージ88はその他のデータ等を記憶する。 The organization management information storage unit 81 stores organization management information. The user information storage unit 82 stores user management information. The authorization setting information storage unit 84 stores authorization setting information. The external service information storage unit 85 stores external service information. The authorization token information storage unit 86 stores authorization token information. The data management information storage unit 87 stores data management information. The data storage 88 stores other data and the like.

サービス提供システム50は、例えば認証や非同期変換といった機能を備えるクラウド基盤と、クラウド基盤の機能を利用してプリントサービス等のサービス提供を行うサービス群と、各サービスの管理設定を行う管理設定サービスとして機能する。クラウド基盤は、例えばプラットフォーム52、管理データ記憶部53、プラットフォームAPI54によって構成される。サービス群は、例えばサービスアプリ51によって構成される。管理設定サービスは、例えば管理設定サービスアプリ63によって構成される。クラウド基盤が備える認証の機能は、例えば認証サービス部104と、認証用データベースとにより構成される。認証用データベースは、組織管理情報記憶部81、ユーザ情報記憶部82、認可設定情報記憶部84、外部サービス情報記憶部85、認可トークン情報記憶部86などにより構成される。クラウド基盤が備える非同期変換の機能は、例えばデータ処理部74と、データ管理情報記憶部87と、データストレージ88により構成される。サービスアプリ51などのサービス群は、サービス提供システム50のクラウド基盤が備える認証、非同期変換などの機能を利用し、サービスの提供を行う。また、サービス群は、図1に示す外部サービスシステム30の機能と連携してサービスを提供する場合、クラウド基盤が備える認証の機能を介して、外部サービスシステム30にアクセスするための認可トークンを取得する。管理設定サービスアプリ63が行う管理設定には、認可処理の管理設定が含まれる。管理設定サービスアプリ63は、認可手続きを行う為のUI(User Interface)を備える。管理設定サービスアプリ63は、認証サービス部104と連携し、後述の認可設定情報を登録する。 The service providing system 50 is, for example, a cloud platform having functions such as authentication and asynchronous conversion, a group of services that provide services such as print services using the cloud platform functions, and a management setting service that performs management settings for each service. Function. The cloud platform is composed of, for example, the platform 52, the management data storage unit 53, and the platform API 54. The service group includes, for example, the service application 51. The management setting service is configured by the management setting service application 63, for example. The authentication function of the cloud infrastructure is configured by, for example, the authentication service unit 104 and the authentication database. The authentication database includes an organization management information storage unit 81, a user information storage unit 82, an authorization setting information storage unit 84, an external service information storage unit 85, an authorization token information storage unit 86, and the like. The asynchronous conversion function provided in the cloud infrastructure is configured by, for example, the data processing unit 74, the data management information storage unit 87, and the data storage 88. The service group such as the service application 51 uses the functions of the cloud infrastructure of the service providing system 50, such as authentication and asynchronous conversion, to provide services. In addition, when the service group provides a service in cooperation with the function of the external service system 30 illustrated in FIG. 1, the service group acquires an authorization token for accessing the external service system 30 through the authentication function of the cloud platform. To do. The management setting performed by the management setting service application 63 includes the management setting for the authorization process. The management setting service application 63 has a UI (User Interface) for performing an authorization procedure. The management setting service application 63 cooperates with the authentication service unit 104 to register authorization setting information, which will be described later.

なお、図1に示す外部サービスシステム30は、サービス提供システム50の外部のシステムであり、クラウドサービスなどを提供する。本実施の形態では、外部サービスシステム30が提供するサービス(機能)を、外部サービスと呼んでいる。外部サービスには、クラウドサービスとして提供されているオンラインストレージサービス、スキャン文書の保管サービス、スキャン文書の管理サービスなどが含まれる。また外部サービスシステム30は、サービス提供システム50の認証サービス部104からの要求に応じて認可トークンを発行する認可サーバとしての機能を備える。また、外部サービスシステム30には、WebAPIが整備されている。外部サービスシステム30のWebAPIは、認可トークンを利用した処理の要求を受け付け、サービス提供システム50のサービスアプリ51にサービスを提供するために利用される。 The external service system 30 shown in FIG. 1 is an external system of the service providing system 50 and provides cloud services and the like. In the present embodiment, the service (function) provided by the external service system 30 is called an external service. The external services include an online storage service provided as a cloud service, a scan document storage service, and a scan document management service. The external service system 30 also has a function as an authorization server that issues an authorization token in response to a request from the authentication service unit 104 of the service providing system 50. The external service system 30 has a Web API. The WebAPI of the external service system 30 is used to receive a request for processing using an authorization token and provide a service to the service application 51 of the service providing system 50.

図3に示すサービス提供システム50では、認可クライアントとしての機能を、認証サービス部104が備えることで、複数のサービスアプリ51が共通に利用する組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報、及び認可トークン情報を、一元管理することができ、セキュリティ性の向上と共に管理コストを低減できる。また、サービス提供システム50では、認可設定情報、外部サービス情報、認可トークンなどの認可情報の管理処理と、認可処理とを、認証サービス部104に一元化することで、ユーザによる一度の認可手続きにより、サービスアプリ51によらず、複数のサービスを連携させる様々なマッシュアップサービスを提供できる。 In the service providing system 50 illustrated in FIG. 3, since the authentication service unit 104 includes the function as the authorization client, the organization management information, the user management information, the device management information, and the authorization setting commonly used by the plurality of service applications 51 are provided. Information, external service information, and authorization token information can be centrally managed, which improves security and reduces management costs. Further, in the service providing system 50, the management process of the authorization setting information, the external service information, the authorization information such as the authorization token, and the authorization process are centralized in the authentication service unit 104, so that the user can perform a single authorization procedure. It is possible to provide various mashup services for linking a plurality of services regardless of the service application 51.

なお、サービス提供システム50は、組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報など、永続的に保存が必要となる情報を、例えば図2に示すHDD508に保存する。また、サービス提供システム50は、認可トークン情報など有効期限が決まっており、組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報などの、他の情報よりライフサイクルが短い情報を、HDD508に替えて、例えばRAM504に(オンメモリ上に)保存するように構成してもよい。このように、ライフサイクルが短い情報が、オンメモリ上に保存されることによって、認可トークン情報の読み出し、書き込みなどは、高速になり、レスポンスが高速化する。 The service providing system 50 saves information that needs to be permanently saved, such as organization management information, user management information, device management information, authorization setting information, and external service information, in the HDD 508 shown in FIG. 2, for example. Further, the service providing system 50 has a fixed expiration date such as authorization token information and has a shorter life cycle than other information such as organization management information, user management information, device management information, authorization setting information, and external service information. May be stored in the RAM 504 (on-memory) instead of the HDD 508. In this way, by storing the information having a short life cycle in the on-memory, the reading and writing of the authorization token information becomes faster, and the response becomes faster.

なお、サービスアプリ51、管理設定サービスアプリ63、認証サービス部104、データ処理部74、組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報、認可トークン情報などの詳細は、特許文献1に開示されるため、詳細な説明を割愛する。また、認可設定情報の登録の手順、認可トークン情報の保存の手順、外部サービスを利用する処理手順などの詳細は、特許文献1に開示されるため、詳細な説明を割愛する。 Details of the service application 51, management setting service application 63, authentication service unit 104, data processing unit 74, organization management information, user management information, device management information, authorization setting information, external service information, authorization token information, etc. The detailed description is omitted because it is disclosed in Patent Document 1. Details of the procedure for registering the authorization setting information, the procedure for storing the authorization token information, the procedure for using the external service, and the like are disclosed in Japanese Patent Application Laid-Open No. 2004-242, so detailed description will be omitted.

以下では本発明の特徴的な機能(外部サービスを容易に追加するための機能)について説明する。図4は外部サービス103を追加するための機能について説明するための図である。以下では「外部サービス103」を単位に「外部サービス」と称する場合がある。 The characteristic functions of the present invention (functions for easily adding external services) will be described below. FIG. 4 is a diagram for explaining a function for adding the external service 103. Hereinafter, the "external service 103" may be referred to as an "external service".

開発サイト100は、ワークフローを構成するコンポーネントと開発するUIである。図5は開発サイトの画面表示例を示す図である。図5に示されるように、開発サイトの画面には、外部サービス連携固定情報90と外部サービス連携変動情報91が表示される。 The development site 100 is a UI that develops with the components that make up the workflow. FIG. 5 is a diagram showing a screen display example of the development site. As shown in FIG. 5, external service cooperation fixed information 90 and external service cooperation change information 91 are displayed on the screen of the development site.

外部サービス連携固定情報90は、外部サービスと連携するために必要な外部サービス連携情報の一つである。外部サービス連携情報は外部サービスと連携する情報である。外部サービス連携固定情報90には、外部サービス識別子、クライアントID、クライアントシークレット、認可要求エンドポイントなどが含まれる。外部サービス識別子は、外部サービスを識別する識別子である。クライアントID及びクライアントシークレットは、外部サービスから発行されるクレデンシャルな情報である。クライアントIDは、クライアントと識別する情報である。クライアントシークレットは、クライアントIDの本人性を保証する為の秘密情報であり、パスワードのような役割を果たす情報である。認可要求エンドポイントは、エンドポイントである外部サービスのAPIに関する情報である。その他、外部サービス連携固定情報90にはトークン取得エンドポイント、トークン破棄エンドポイントなどが含まれる。 The external service cooperation fixed information 90 is one of the external service cooperation information necessary to cooperate with the external service. The external service cooperation information is information that cooperates with the external service. The external service cooperation fixed information 90 includes an external service identifier, a client ID, a client secret, an authorization request endpoint, and the like. The external service identifier is an identifier that identifies an external service. The client ID and the client secret are credential information issued by the external service. The client ID is information for identifying the client. The client secret is secret information for guaranteeing the identity of the client ID, and is information that plays a role like a password. The authorization request endpoint is information regarding the API of the external service that is the endpoint. In addition, the external service cooperation fixed information 90 includes a token acquisition endpoint, a token destruction endpoint, and the like.

外部サービス連携変動情報91は、外部サービスと連携するために必要な外部サービス連携情報の一つである。外部サービス連携変動情報91には、スコープ情報、公開するコンポーネント情報などが含まれる。スコープ情報は、連携する外部サービスの全ての権限を取得することはできないため、例えばGoogle(登録商標)のサービスの内、Gメール(登録商標)、Googleカレンダー(登録商標)などの一部のサービスを指定する情報である。スコープは、例えば、Gメール(登録商標)へのアクセス許可、Googleカレンダー(登録商標)への上書き許可など、外部サービスに連携するユーザに許可を求める範囲を示す情報である。必要なスコープ情報は、外部サービスと連携する情報を利用するコンポーネントによって異なる。そのため、そのコンポーネントが変動情報としてスコープ情報を管理する。公開するコンポーネント情報は、ユーザが外部サービスに登録したクレデンシャルな情報が、SI-Cloud上の全てコンポーネントに使われることを防ぐため、それぞれのユーザが申請したコンポーネントなら使える範囲(公開範囲)を設定するパラメータである。 The external service cooperation variation information 91 is one of the external service cooperation information necessary to cooperate with the external service. The external service cooperation variation information 91 includes scope information, component information to be disclosed, and the like. Since the scope information cannot acquire all the authority of the linked external service, for example, some services such as Gmail (registered trademark) and Google Calendar (registered trademark) among the services of Google (registered trademark) Is information for specifying. The scope is, for example, information indicating a range for which permission is requested from a user who cooperates with an external service, such as permission to access Gmail (registered trademark) and permission to overwrite Google Calendar (registered trademark). The necessary scope information differs depending on the component that uses the information linked with the external service. Therefore, the component manages the scope information as the variation information. For the component information to be published, in order to prevent the credential information registered by the user in the external service from being used for all components on SI-Cloud, set the range (public range) that can be used by the components requested by each user. It is a parameter.

なお図5では、外部サービス連携変動情報91の一例として、スコープ情報と公開するコンポーネント情報とが示されるが、外部サービス連携変動情報91には、これらの情報以外にも、外部サービス識別子などを含めてもよい。外部サービス連携変動情報91に含まれる情報を具体例については後述する。 In FIG. 5, the scope information and the component information to be disclosed are shown as an example of the external service cooperation variation information 91. However, the external service cooperation variation information 91 includes an external service identifier and the like in addition to these pieces of information. May be. A specific example of the information included in the external service cooperation variation information 91 will be described later.

コンポーネント情報管理部105は、ワークフローを構成するコンポーネントの情報を管理する。コンポーネントは、外部サービスの機能を利用するものもあり、コンポーネント情報管理部105は、コンポーネントのニーズに合わせて、外部サービスの必要なスコープ情報を管理している。コンポーネント情報管理部105は、コンポーネントに登録した外部サービスと連携するため情報を、他のコンポーネントからも参照できるようにするための情報を持つ。コンポーネント情報管理部105は、外部サービス連携コンポーネント1051、コンポーネント設定受付部1054及び外部サービス連携変動情報91を備える。コンポーネント設定受付部1054は、参照コンポーネント1052及び管理コンポーネント1053を備える。 The component information management unit 105 manages information on components that make up the workflow. Some components use the function of the external service, and the component information management unit 105 manages the necessary scope information of the external service according to the needs of the component. The component information management unit 105 has information for coordinating with an external service registered in the component so that the component can be referenced by other components. The component information management unit 105 includes an external service cooperation component 1051, a component setting reception unit 1054, and external service cooperation change information 91. The component setting reception unit 1054 includes a reference component 1052 and a management component 1053.

ユーザサイト102は、エンドユーザが利用するサイトであり、SI-Cloudのアカウントと外部サービスとの連携設定を行うためのUIを、ユーザに提供する。図6はユーザサイト102にアクセスしたときに表示される外部サービス連携の画面(マイページ)を示す図である。マイページに表示されるメニューの中から「外部サービス連携」が選択されると、図5の右側に示されるような表示画面が現れる。この表示画面には、連携可能な外部サービスが表示される。外部サービスの種類は、例えば、GoogleDrive(登録商標)、ROPC、FTPなどである。画面に表示される「連携する」というボタンが押されることで、OAuthのフローに沿って、連携する外部サービスからトークンと取得するためのフローが実行される。 The user site 102 is a site used by the end user, and provides the user with a UI for setting the linkage between the SI-Cloud account and the external service. FIG. 6 is a diagram showing a screen (my page) of external service cooperation displayed when the user site 102 is accessed. When “External service cooperation” is selected from the menu displayed on My Page, a display screen as shown on the right side of FIG. 5 appears. External services that can be linked are displayed on this display screen. The type of external service is, for example, GoogleDrive (registered trademark), ROPC, FTP, or the like. By clicking the "Collaborate" button displayed on the screen, the flow for acquiring the token from the external service to be linked is executed according to the OAuth flow.

認証サービス部104は、SI-CloudのユーザID管理、ID認証機能などを保持し、外部サービスと連携するための外部サービス設定情報を管理し、さらに、管理するユーザID(ユーザ情報の1つ)に紐づけて、フェデレーション情報(外部サービスと連携情報)を管理する。外部サービス設定情報は、図4に示される外部連携固定情報に相当する。外部連携固定情報とユーザ情報の詳細は子術する。認証サービス部104では、外部サービスと連携した結果を連携要求したユーザと紐づけて、フェデレーション情報として登録される。フェデレーション情報は、図5の開発画面にアクセスしたユーザの情報(ユーザ情報)に、外部サービスと連携するためのトークン情報を紐付けて管理するための情報である。フェデレーションとは、一度認証を通った後にその認証情報を使って許可されているすべてのサービスを使えるようにする仕組みのことである。 The authentication service unit 104 holds SI-Cloud user ID management, an ID authentication function, and the like, manages external service setting information for linking with an external service, and further manages a user ID (one of user information). Manage federation information (external service and cooperation information) by linking to. The external service setting information corresponds to the external cooperation fixed information shown in FIG. Details of external cooperation fixed information and user information will be subdivided. In the authentication service unit 104, the result of cooperation with the external service is associated with the user who requested the cooperation, and is registered as federation information. The federation information is information for managing the information (user information) of the user who accessed the development screen of FIG. 5 by associating the token information for linking with the external service. Federation is a mechanism that allows you to use all the permitted services by using the authentication information after passing authentication once.

認証サービス部104は、認可サービス部1041及びデータ格納部1042を備える。認可サービス部1041は、外部サービス識別子のデータと外部サービスとを連携するために、OAuthのロジックを持つ。認可サービス部1041は、外部サービス連携情報を用いて、外部サービスからトークンを取得する。データ格納部1042には、フェデレーション情報、外部サービル連携固定情報及びユーザ情報が格納される。 The authentication service unit 104 includes an authorization service unit 1041 and a data storage unit 1042. The authorization service unit 1041 has an OAuth logic in order to link the data of the external service identifier and the external service. The authorization service unit 1041 acquires the token from the external service using the external service cooperation information. The data storage unit 1042 stores federation information, external service linkage fixed information, and user information.

フェデレーション情報の具体例を図7に示す。図7はフェデレーション情報の一例を示す図である。フェデレーション情報には、ユーザID、外部サービス識別子、アクセストークン、リフレッシュトークンなどが含まれる。ユーザIDには、外部サービスを利用するユーザの識別するための情報として、例えば、User0001、User0002などが登録される。外部サービス識別子には、外部サービスの内容を識別するための情報として、例えば、Google(登録商標)、office365(登録商標)などが登録される。アクセストークン及びリフレッシュトークンのそれぞれは、ユーザIDに登録されるユーザが利用する外部サービス毎に登録されている。 A specific example of federation information is shown in FIG. FIG. 7 is a diagram showing an example of federation information. The federation information includes a user ID, an external service identifier, an access token, a refresh token, and the like. In the user ID, for example, User0001, User0002, etc. are registered as information for identifying the user who uses the external service. In the external service identifier, for example, Google (registered trademark), office365 (registered trademark), or the like is registered as information for identifying the content of the external service. Each of the access token and the refresh token is registered for each external service used by the user registered in the user ID.

図4に示される外部サービス連携固定情報90の具体例を図8に示す。図8は外部サービス連携固定情報90の一例を示す図である。外部サービス連携固定情報90に含まれる情報は、前述した通り、外部サービス識別子、クライアントID、クライアントシークレットなどである。外部サービス識別子には、外部サービスの内容を識別するための情報として、例えば、Google(登録商標)、office365(登録商標)などが登録される。クライアントIDには、外部サービスを提供するクライアントを識別するための情報として、例えば、client1、client2などが登録される。クライアントシークレットには、外部サービスを提供するクライアントが個別に設定したパスワード(Secret1、Secret2)などが登録される。 A specific example of the external service cooperation fixed information 90 shown in FIG. 4 is shown in FIG. FIG. 8 is a diagram showing an example of the external service cooperation fixed information 90. The information included in the external service cooperation fixed information 90 is the external service identifier, the client ID, the client secret, etc., as described above. In the external service identifier, for example, Google (registered trademark), office365 (registered trademark), or the like is registered as information for identifying the content of the external service. In the client ID, for example, client1 and client2 are registered as information for identifying the client that provides the external service. The password (Secret1, Secret2) etc. individually set by the client providing the external service is registered in the client secret.

図4に示されるユーザ情報の具体例を図9に示す。図9はユーザ情報の一例を示す図である。ユーザ情報は、SI-Cloudに登録されているユーザを識別するための情報であり、例えばユーザID(User0001、User0002)、ユーザの姓名などを含む。ユーザ情報には、ユーザID、ユーザの姓名以外にも、パスワードなどを含めてもよい。 FIG. 9 shows a specific example of the user information shown in FIG. FIG. 9 is a diagram showing an example of user information. The user information is information for identifying a user registered in SI-Cloud, and includes, for example, a user ID (User0001, User0002), a user's first and last name, and the like. The user information may include a password as well as the user ID and the user's first and last name.

図4に示される外部サービス連携変動情報91の具体例を図10に示す。図10は外部サービス連携変動情報91の一例を示す図である。外部サービス連携固定情報90に含まれる情報は、外部サービス識別子、スコープ情報、オーナーコンポーネント、参照可能コンポーネントなどが含まれる。外部サービス識別子には、外部サービスの内容を識別するための情報として、例えば、Google(登録商標)、office365(登録商標)などが登録される。スコープ情報には、例えば、Google(登録商標)が提供する複数のサービスの内、外部連携を指定するサービス(Mail、storegeなど)が登録される。 A specific example of the external service cooperation variation information 91 shown in FIG. 4 is shown in FIG. FIG. 10 is a diagram showing an example of the external service cooperation variation information 91. The information included in the external service cooperation fixed information 90 includes an external service identifier, scope information, an owner component, a referable component, and the like. In the external service identifier, for example, Google (registered trademark), office365 (registered trademark), or the like is registered as information for identifying the content of the external service. In the scope information, for example, among a plurality of services provided by Google (registered trademark), services (Mail, store, etc.) that specify external cooperation are registered.

次に図11及び図12を用いて、情報処理システム1の動作を説明する。図11はコンポーネントの登録動作を説明するためのシーケンスチャートである。ステップS1において、開発者が開発サイト100のコンポーネント開発画面で、外部サービス連携情報を登録する。これにより、外部サービス連携変動情報が、管理コンポーネントと通じて、コンポーネント情報管理部105に登録される(ステップS2)。外部サービス連携情報の内、外部サービス連携固定情報が、管理コンポーネントから認証サービス部104に登録される(ステップS3)。ステップS4では、参照を許可する開発サイト100に、許可したことを示す情報が送信され、開発者は参照が許可されたことを知得する(ステップS5)。 Next, the operation of the information processing system 1 will be described with reference to FIGS. 11 and 12. FIG. 11 is a sequence chart for explaining the component registration operation. In step S1, the developer registers the external service cooperation information on the component development screen of the development site 100. Thereby, the external service cooperation variation information is registered in the component information management unit 105 through the management component (step S2). Of the external service cooperation information, the external service cooperation fixed information is registered in the authentication service unit 104 from the management component (step S3). In step S4, the information indicating the permission is transmitted to the development site 100 that permits the reference, and the developer knows that the reference is permitted (step S5).

次にステップS6において、開発者が開発サイト100のコンポーネント開発画面で、外部サービス設定を公開するコンポーネントを設定すると、管理コンポーネントに公開するコンポーネントが設定され(ステップS7)、さらに管理コンポーネントは、参照コンポーネントに、外部サービス連携変動情報の参照を許可し(ステップS8)、許可した旨をコンポーネント開発画面に通知する(ステップS9)。 Next, in step S6, when the developer sets a component to publish the external service setting on the component development screen of the development site 100, the component to be published to the management component is set (step S7), and the management component is the reference component. Then, the external service cooperation variation information is permitted to be referred to (step S8), and the permission is notified to the component development screen (step S9).

図12は外部サービスからトークンを取得する認可動作を説明するためのシーケンスチャートである。ステップS11において、外部サービスを利用するエンドユーザがユーザサイト102で連携要求(ログイン)を行うと、ステップS12において、ユーザサイト102からコンポーネント情報管理部105に対して、連携情報の取得が行われる。ステップS13において、外部サービス連携コンポーネント1051は、外部サービス連携変動情報91を参照して、外部サービス連携変動情報91内のスコープ情報を取得し(ステップS14)、ユーザサイト102に対してスコープ情報を送信する(ステップS15)。 FIG. 12 is a sequence chart for explaining an authorization operation for acquiring a token from an external service. In step S11, when the end user who uses the external service makes a cooperation request (login) at the user site 102, the cooperation information is acquired from the user site 102 to the component information management unit 105 in step S12. In step S13, the external service cooperation component 1051 refers to the external service cooperation change information 91, acquires the scope information in the external service cooperation change information 91 (step S14), and transmits the scope information to the user site 102. Yes (step S15).

ステップS16において、エンドユーザからの認可要求として、ログイン情報、外部サービス識別子、スコープ情報が送信されると、認証サービス部104がユーザを特定して(ステップS17)、ユーザ情報を取得する(ステップS18)。ステップS19において、認証サービス部104が外部サービス連携固定情報を参照して、外部サービス識別子などの設定情報を取得する(ステップS20)。これにより認可要求URLが生成され(ステップS21)、生成された認可要求URLがユーザサイトに送信される(ステップS22)。認可要求URLには、例えばGoogle(登録商標)などの外部サービスなどが記述される。 In step S16, when the login information, the external service identifier, and the scope information are transmitted as the authorization request from the end user, the authentication service unit 104 identifies the user (step S17) and acquires the user information (step S18). ). In step S19, the authentication service unit 104 refers to the external service cooperation fixed information and acquires the setting information such as the external service identifier (step S20). As a result, the authorization request URL is generated (step S21), and the generated authorization request URL is transmitted to the user site (step S22). The authorization request URL describes an external service such as Google (registered trademark).

ユーザが認可要求URLにリダイレクトすると(ステップS23)、認可要求が外部サービス103に送信される(ステップS24)。これにより外部サービス103にリダイレクトされ(ステップS25)、ユーザが認証サービス部に対してコールバックを行う(ステップS26)。コールバックの中には例えばGoogle(登録商標)が発行した一時コードが含まれる。一時コードは、Google(登録商標)などからアクセストークン、リフレッシュトークンを取得するための情報である。 When the user redirects to the authorization request URL (step S23), the authorization request is sent to the external service 103 (step S24). As a result, the user is redirected to the external service 103 (step S25), and the user calls back to the authentication service unit (step S26). The callback includes a temporary code issued by Google (registered trademark), for example. The temporary code is information for obtaining an access token and a refresh token from Google (registered trademark) or the like.

認証サービス部はユーザ情報を参照し(ステップS27)、ユーザを特定するログイン情報をユーザ情報の中から取得する(ステップS28)。さらに認証サービス部は外部サービス連携固定情報を参照し(ステップS29)、設定情報を取得する(ステップS30)。さらに認証サービス部は、外部サービス103に対してトークンの送信を要求する(ステップS31)。トークンには一時コードが含まれるため、外部サービス103からアクセストークン及びリフレッシュトークンが発行される(ステップS32)。このようにして連携設定が完了すると、ステップS33において認証サービス部は、認証サービスが管理するユーザに紐づく形で、フェデレーション情報(外部サービスにアクセスするためのアクセストークンやリフレッシュトークン)を保存する(ステップS33)。 The authentication service unit refers to the user information (step S27), and acquires login information that identifies the user from the user information (step S28). Further, the authentication service unit refers to the external service cooperation fixed information (step S29) and acquires the setting information (step S30). Further, the authentication service unit requests the external service 103 to transmit the token (step S31). Since the token includes a temporary code, the external service 103 issues an access token and a refresh token (step S32). When the linkage setting is completed in this way, in step S33, the authentication service unit stores the federation information (access token or refresh token for accessing an external service) in a form associated with the user managed by the authentication service ( Step S33).

図13は情報処理システム1の変形例に係る構成例を示す図である。図4に示す構成例との違いは、図13では、コンポーネント情報管理部105が、外部サービス連携固定情報と外部サービス連携変動情報とを、外部サービス連携情報91Aとして保持するように構成されている点である。すなわち、トークン取得に必要な情報、すなわち外部サービスと連携する外部サービス連携情報91Aが、コンポーネント情報管理部105に保持されていることである。そして、フェデレーション情報の生成は、認可サービス部1041で行われるため、トークン取得に必要な情報、すなわち外部サービスと連携する外部サービス連携情報91Aは、認可要求のタイミングで認証サービス部104に送信され、認証サービス部104はこの情報を一時情報として管理する。外部サービス連携固定情報と外部サービス連携変動情報が、クラウド上の認証サービス部104に一時的に保持されるため、秘匿性が向上する。 FIG. 13 is a diagram showing a configuration example according to a modified example of the information processing system 1. 13 is different from the configuration example shown in FIG. 4 in that the component information management unit 105 is configured to hold the external service cooperation fixed information and the external service cooperation variable information as external service cooperation information 91A. It is a point. That is, the information necessary for token acquisition, that is, the external service cooperation information 91A that cooperates with the external service is held in the component information management unit 105. Since the generation of the federation information is performed by the authorization service unit 1041, the information necessary for token acquisition, that is, the external service cooperation information 91A that cooperates with the external service is transmitted to the authentication service unit 104 at the timing of the authorization request. The authentication service unit 104 manages this information as temporary information. Since the external service cooperation fixed information and the external service cooperation variable information are temporarily held in the authentication service unit 104 on the cloud, confidentiality is improved.

次に図14及び図15を用いて、図13に示される構成を備えた情報処理システム1の動作を説明する。図14は情報処理システム1の変形例によるコンポーネントの登録動作を説明するためのシーケンスチャートである。ステップS11において、開発者が開発サイト100のコンポーネント開発画面で、外部サービス連携情報91Aを登録する。 Next, the operation of the information processing system 1 having the configuration shown in FIG. 13 will be described with reference to FIGS. 14 and 15. FIG. 14 is a sequence chart for explaining the component registration operation according to the modification of the information processing system 1. In step S11, the developer registers the external service cooperation information 91A on the component development screen of the development site 100.

これにより、外部サービス連携情報91Aが、管理コンポーネントと通じて、コンポーネント情報管理部105に登録される(ステップS21)。これにより、管理コンポーネントから認証サービス部104に外部サービス連携情報91Aが一時情報として格納される(ステップS31)。 As a result, the external service cooperation information 91A is registered in the component information management unit 105 through the management component (step S21). As a result, the external service cooperation information 91A is stored as temporary information from the management component in the authentication service unit 104 (step S31).

ステップS4では、参照を許可する開発サイト100に、許可したことを示す情報が送信され、開発者は参照が許可されたことを知得する(ステップS5)。ステップS6において、開発者が開発サイト100のコンポーネント開発画面で、外部サービス設定を公開するコンポーネントを設定すると、管理コンポーネントに公開するコンポーネントが設定され(ステップS7)、さらに管理コンポーネントは、参照コンポーネントに、外部サービス連携情報91Aの参照を許可し(ステップS81)、許可した旨をコンポーネント開発画面に通知する(ステップS9)。 In step S4, the information indicating the permission is transmitted to the development site 100 that permits the reference, and the developer knows that the reference is permitted (step S5). In step S6, when the developer sets a component to expose the external service setting on the component development screen of the development site 100, the component to be disclosed to the management component is set (step S7), and the management component is the reference component. Reference to the external service cooperation information 91A is permitted (step S81), and notification of the permission is notified to the component development screen (step S9).

図15は情報処理システム1の変形例が外部サービスからトークンを取得する認可動作を説明するためのシーケンスチャートである。ステップS11において、外部サービスを利用するエンドユーザがユーザサイト102で連携要求(ログイン)を行うと、ステップS12において、ユーザサイト102からコンポーネント情報管理部105に対して、連携情報の取得が行われる。 FIG. 15 is a sequence chart for explaining the authorization operation for acquiring the token from the external service in the modification of the information processing system 1. In step S11, when the end user who uses the external service makes a cooperation request (login) at the user site 102, the cooperation information is acquired from the user site 102 to the component information management unit 105 in step S12.

ステップS130、140において、外部サービス連携コンポーネント1051は、外部サービス連携情報91Aを取得し、取得した外部サービス連携情報91Aをユーザサイト102へ送信する(ステップS150)。 In steps S130 and 140, the external service cooperation component 1051 acquires the external service cooperation information 91A, and transmits the acquired external service cooperation information 91A to the user site 102 (step S150).

ステップS160において、エンドユーザからの認可要求として、ログイン情報、外部サービス識別子、外部サービス連携情報が送信されると、認証サービス部104がユーザを特定して(ステップS17)、ユーザ情報を取得する(ステップS18)。 In step S160, when the login information, the external service identifier, and the external service cooperation information are transmitted as the authorization request from the end user, the authentication service unit 104 identifies the user (step S17) and acquires the user information ( Step S18).

認証サービス部104は、ユーザ情報、外部サービス連携情報を一時情報として保持し(ステップS190)、ユーザ情報に基づき認可要求URLを生成する(ステップS210)。生成された認可要求URLがユーザサイトに送信される(ステップS22)。 The authentication service unit 104 holds the user information and the external service cooperation information as temporary information (step S190), and generates an authorization request URL based on the user information (step S210). The generated authorization request URL is transmitted to the user site (step S22).

ユーザが認可要求URLにリダイレクトすると(ステップS23)、認可要求が外部サービス103に送信される(ステップS24)。これにより外部サービス103にリダイレクトされ(ステップS250)、ユーザが認証サービス部に対してコールバックを行う(ステップS260)。認証サービス部はユーザ情報を参照し(ステップS27)、ユーザを特定するログイン情報をユーザ情報の中から取得する(ステップS28)。 When the user redirects to the authorization request URL (step S23), the authorization request is sent to the external service 103 (step S24). As a result, the user is redirected to the external service 103 (step S250), and the user calls back to the authentication service unit (step S260). The authentication service unit refers to the user information (step S27), and acquires login information that identifies the user from the user information (step S28).

さらに認証サービス部は、一時情報(外部サービス連携情報)を参照し(ステップS290、S300)、外部サービス103に対してトークンの送信を要求し(ステップS31)、外部サービス103からはアクセストークン及びリフレッシュトークンが発行される(ステップS32)。このようにして連携設定が完了すると、ステップS33において認証サービス部は、認証サービスが管理するユーザに紐づく形で、フェデレーション情報(外部サービスにアクセスするためのアクセストークンやリフレッシュトークン)を保存する(ステップS33)。 Furthermore, the authentication service unit refers to the temporary information (external service cooperation information) (steps S290 and S300), requests the external service 103 to send a token (step S31), and the external service 103 accesses the access token and refreshes. A token is issued (step S32). When the linkage setting is completed in this way, in step S33, the authentication service unit stores the federation information (access token or refresh token for accessing an external service) in a form associated with the user managed by the authentication service ( Step S33).

以上に説明したように本発明の実施の形態に係る情報処理システム1は、外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるコンポーネントと、外部サービス連携情報を管理する外部サービス連携コンポーネント1051と、外部サービス連携情報を用いて、外部サービスからトークンを取得する認可サービス部とを備えるように構成されている。外部サービス連携情報の登録を受け付けるコンポーネントは、参照コンポーネント1052及び管理コンポーネント1053である。外部サービス連携情報は、外部サービス連携固定情報90及び外部サービス連携変動情報91である。この構成により、外部サービスシステム30のWebAPIを利用して、開発者サイトのUIから、外部サービス連携情報を設定(登録)することが可能となる。そのため、開発者はWebAPIで受け付けた情報を元に、外部サービス連携情報(外部サービスとの連携設定)を即座に追加することが可能となり、外部サービスと連携するコンポーネントを即座に開発することが可能となる。 As described above, the information processing system 1 according to the embodiment of the present invention includes a component that receives registration of external service cooperation information that is information that cooperates with an external service, and an external service cooperation component that manages the external service cooperation information. 1051 and an authorization service unit that acquires a token from an external service using the external service cooperation information. Components that accept registration of external service cooperation information are a reference component 1052 and a management component 1053. The external service cooperation information is the external service cooperation fixed information 90 and the external service cooperation change information 91. With this configuration, it is possible to set (register) the external service cooperation information from the UI of the developer site by using the WebAPI of the external service system 30. Therefore, the developer can immediately add the external service link information (link setting with the external service) based on the information received by the WebAPI, and can immediately develop the component that links with the external service. Becomes

また実施の形態に係る情報処理プログラムは、コンピュータに、外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるステップと、外部サービス連携情報を管理するステップと、外部サービス連携情報を用いて、外部サービスからトークンを取得するステップと、を実行させる。実施の形態に係る情報処理プログラムによれば、外部サービス連携情報を即座に追加することが可能となり、外部サービスと連携するコンポーネントを即座に開発することが可能となる。 The information processing program according to the embodiment uses a computer to receive registration of external service cooperation information, which is information that cooperates with an external service, a step of managing the external service cooperation information, and the external service cooperation information. , Obtaining a token from an external service, and executing the steps. According to the information processing program according to the embodiment, it becomes possible to immediately add external service cooperation information, and it is possible to immediately develop a component that cooperates with an external service.

また実施の形態に係る情報処理方法は、コンピュータで実行される情報処理方法であって、外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるステップと、外部サービス連携情報を管理するステップと、外部サービス連携情報を用いて、外部サービスからトークンを取得するステップと、を含む。実施の形態に係る情報処理方法によれば、外部サービス連携情報を即座に追加することが可能となり、外部サービスと連携するコンポーネントを即座に開発することが可能となる。 An information processing method according to an embodiment is a computer-implemented information processing method, which includes a step of receiving registration of external service cooperation information, which is information that cooperates with an external service, and a step of managing external service cooperation information. And a step of using the external service cooperation information to obtain a token from the external service. According to the information processing method according to the embodiment, it is possible to immediately add external service cooperation information, and it is possible to immediately develop a component that cooperates with an external service.

1 情報処理システム、11 クライアント端末、12 携帯端末、14 画像形成装置、15 プロジェクタ、16 機器、21 アクセス制御装置、22 プリントサービス提供装置、23 スキャンサービス提供装置、24 管理設定サービス提供装置、25 他サービス提供装置、30 外部サービス、30 外部サービスシステム、31 アクセス制御装置、32 外部サービス提供装置、50 サービス提供システム、51 サービスアプリ、52 プラットフォーム、53 管理データ記憶部、54 プラットフォームAPI、61 プリントサービスアプリ、62 スキャンサービスアプリ、63 管理設定サービスアプリ、64 サービスアプリ、72 機器通信部、74 データ処理部、81 組織管理情報記憶部、82 ユーザ情報記憶部、84 認可設定情報記憶部、85 外部サービス情報記憶部、86 認可トークン情報記憶部、87 データ管理情報記憶部、88 データストレージ、90 外部サービス連携固定情報、91 外部サービス連携変動情報、100 開発サイト、102 ユーザサイト、103 外部サービス、104 認証サービス部、105 コンポーネント情報管理部、500 コンピュータシステム、501 入力装置、502 表示装置、503 外部I/F、503a 記録媒体、504 RAM、505 ROM、506 CPU、507 通信I/F、508 HDD、1041 認可サービス部、1042 データ格納部、1051 外部サービス連携コンポーネント、1052 参照コンポーネント、1053 管理コンポーネント、1054 コンポーネント設定受付部。 1 information processing system, 11 client terminal, 12 mobile terminal, 14 image forming device, 15 projector, 16 device, 21 access control device, 22 print service providing device, 23 scan service providing device, 24 management setting service providing device, 25 etc. Service providing device, 30 external service, 30 external service system, 31 access control device, 32 external service providing device, 50 service providing system, 51 service app, 52 platform, 53 management data storage unit, 54 platform API, 61 print service app , 62 scan service application, 63 management setting service application, 64 service application, 72 device communication section, 74 data processing section, 81 organization management information storage section, 82 user information storage section, 84 authorization setting information storage section, 85 external service information Storage unit, 86 Authorization token information storage unit, 87 Data management information storage unit, 88 Data storage, 90 External service cooperation fixed information, 91 External service cooperation variable information, 100 Development site, 102 User site, 103 External service, 104 Authentication service Part, 105 component information management part, 500 computer system, 501 input device, 502 display device, 503 external I/F, 503a recording medium, 504 RAM, 505 ROM, 506 CPU, 507 communication I/F, 508 HDD, 1041 authorization Service unit, 1042 data storage unit, 1051 external service cooperation component, 1052 reference component, 1053 management component, 1054 component setting reception unit.

特開2014−92823号公報JP, 2014-92823, A

Claims (9)

外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるコンポーネント設定受付部と、
前記外部サービス連携情報を管理する外部サービス連携コンポーネントと、
前記外部サービス連携情報を用いて、前記外部サービスからトークンを取得する認可サービス部と、
を備える情報処理システム。
A component setting reception unit that receives registration of external service cooperation information that is information that cooperates with an external service,
An external service cooperation component that manages the external service cooperation information,
An authorization service unit that acquires a token from the external service using the external service cooperation information,
An information processing system including.
前記外部サービス連携コンポーネントは前記外部サービス連携情報をユーザサイトに設定する請求項1に記載の情報処理システム。 The information processing system according to claim 1, wherein the external service cooperation component sets the external service cooperation information in a user site. 前記コンポーネント設定受付部は、前記外部サービス連携情報を、他のコンポーネントに公開する請求項1又は2に記載の情報処理システム。 The information processing system according to claim 1 or 2, wherein the component setting reception unit publishes the external service cooperation information to another component. エンドユーザが外部サービス連携するためのUIであるユーザサイトを備える請求項1から3の何れか一項に記載の情報処理システム。 The information processing system according to any one of claims 1 to 3, further comprising a user site that is a UI for an end user to cooperate with an external service. 前記認可サービス部は、前記外部サービスから取得したアクセストークン及びリフレッシュトークンをフェデレーション情報として、当該フェデレーション情報にユーザ情報を紐づけて管理する請求項1から4の何れか一項に記載の情報処理システム。 The information processing system according to any one of claims 1 to 4, wherein the authorization service unit manages the access token and the refresh token acquired from the external service as federation information by associating the federation information with user information. .. 前記外部サービス連携情報は、前記認可サービス部が前記外部サービスからトークン取得するとき、内容が変化する変動情報と、内容が変化しない固定情報とを含む請求項1から4の何れか一項に記載の情報処理システム。 5. The external service cooperation information includes variable information whose contents change when the authorization service unit acquires a token from the external service, and fixed information whose contents do not change, according to any one of claims 1 to 4. Information processing system. 前記認可サービス部は、認可要求時に受け取った外部サービス連携情報を一時情報として管理する請求項1から6の何れか一項に記載の情報処理システム。 The information processing system according to any one of claims 1 to 6, wherein the authorization service unit manages external service cooperation information received at the time of authorization request as temporary information. コンピュータに、
外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるステップと、
前記外部サービス連携情報を管理するステップと、
前記外部サービス連携情報を用いて、前記外部サービスからトークンを取得するステップと、
を実行させる情報処理プログラム。
On the computer,
A step of accepting registration of external service cooperation information, which is information that cooperates with an external service,
Managing the external service cooperation information,
Acquiring a token from the external service using the external service cooperation information,
An information processing program for executing.
コンピュータで実行される情報処理方法であって、
外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるステップと、
前記外部サービス連携情報を管理するステップと、
前記外部サービス連携情報を用いて、前記外部サービスからトークンを取得するステップと、
を含む情報処理方法。
An information processing method executed by a computer,
A step of accepting registration of external service cooperation information, which is information that cooperates with an external service,
Managing the external service cooperation information,
Acquiring a token from the external service using the external service cooperation information,
Information processing method including.
JP2018223799A 2018-11-29 2018-11-29 Information processing system, information processing program and information processing method Pending JP2020087197A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018223799A JP2020087197A (en) 2018-11-29 2018-11-29 Information processing system, information processing program and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018223799A JP2020087197A (en) 2018-11-29 2018-11-29 Information processing system, information processing program and information processing method

Publications (1)

Publication Number Publication Date
JP2020087197A true JP2020087197A (en) 2020-06-04

Family

ID=70908380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018223799A Pending JP2020087197A (en) 2018-11-29 2018-11-29 Information processing system, information processing program and information processing method

Country Status (1)

Country Link
JP (1) JP2020087197A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7096939B1 (en) * 2021-09-08 2022-07-06 プロパティエージェント株式会社 System, face recognition platform and information processing method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014092823A (en) * 2012-10-31 2014-05-19 Ricoh Co Ltd System and service provision device
JP2017059219A (en) * 2015-09-18 2017-03-23 株式会社リコー Information processing system, information processing apparatus, and information processing method
JP2018129079A (en) * 2013-07-30 2018-08-16 株式会社リコー Service providing system, data providing method, and program
JP2018156405A (en) * 2017-03-17 2018-10-04 株式会社リコー Service cooperation system, service cooperation method, and server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014092823A (en) * 2012-10-31 2014-05-19 Ricoh Co Ltd System and service provision device
JP2018129079A (en) * 2013-07-30 2018-08-16 株式会社リコー Service providing system, data providing method, and program
JP2017059219A (en) * 2015-09-18 2017-03-23 株式会社リコー Information processing system, information processing apparatus, and information processing method
JP2018156405A (en) * 2017-03-17 2018-10-04 株式会社リコー Service cooperation system, service cooperation method, and server

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7096939B1 (en) * 2021-09-08 2022-07-06 プロパティエージェント株式会社 System, face recognition platform and information processing method

Similar Documents

Publication Publication Date Title
JP6056384B2 (en) System and service providing apparatus
JP6439370B2 (en) Information processing system, information processing method, information processing apparatus, and program
US8166404B2 (en) System and/or method for authentication and/or authorization
US7647625B2 (en) System and/or method for class-based authorization
US9294466B2 (en) System and/or method for authentication and/or authorization via a network
EP3203709B1 (en) Cloud service server and method for managing cloud service server
US8856957B1 (en) Federated identity broker
US9672382B2 (en) Managing access of user information by third party applications
US20070079357A1 (en) System and/or method for role-based authorization
JP6907619B2 (en) Information processing system, information processing method, and information processing equipment
JP2014170458A (en) Relay device, communication system, and program
JP5991143B2 (en) Information processing apparatus, system, and information registration method
JP6075011B2 (en) Information processing apparatus, system, and information providing method
JP2020087197A (en) Information processing system, information processing program and information processing method
JP2015026231A (en) Service provision system, image provision method, and program
US10866711B1 (en) Providing account information to applications
JP6163170B2 (en) Service cooperation system, service cooperation apparatus, terminal device, service cooperation method, and service cooperation program
KR100583617B1 (en) A Photograph-Community Service System and A Service Method thereof
JP2017084378A (en) Cloud service provision system and cloud service provision method
Willard et al. Data transfer project: from theory to practice
Barclay et al. Innovative applications of blockchain technology in crime and security
JP6304408B2 (en) Information processing apparatus, information providing method, and program
Wilson et al. Sample Application with Custom API
KR100906129B1 (en) Customized design support system for companies
Esnaashari Users’ decisions about the security of mobile applications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220805

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20221004