JP2018005379A - Information processing system, information processing apparatus, and information processing method - Google Patents

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

Info

Publication number
JP2018005379A
JP2018005379A JP2016128645A JP2016128645A JP2018005379A JP 2018005379 A JP2018005379 A JP 2018005379A JP 2016128645 A JP2016128645 A JP 2016128645A JP 2016128645 A JP2016128645 A JP 2016128645A JP 2018005379 A JP2018005379 A JP 2018005379A
Authority
JP
Japan
Prior art keywords
information
authentication
job
application
flow
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
JP2016128645A
Other languages
Japanese (ja)
Other versions
JP6696326B2 (en
Inventor
亮佑 吉橋
Ryosuke Yoshihashi
亮佑 吉橋
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 JP2016128645A priority Critical patent/JP6696326B2/en
Publication of JP2018005379A publication Critical patent/JP2018005379A/en
Priority to JP2020076892A priority patent/JP6981497B2/en
Application granted granted Critical
Publication of JP6696326B2 publication Critical patent/JP6696326B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To authenticate a device before executing a series of processing.SOLUTION: An information processing system includes a job information storage unit 150, an authentication service unit 120, an application management unit 111, and a logic processing unit 112. The job information storage unit stores processing flow information in which application ID and an execution order are defined, in association with a job ID, for each of a series of processing using an electronic file. The authentication service unit includes: receiving means of receiving an execution request including user specification information, flow ID, and authentication information, from a device 20; and authentication means of authenticating the device, on the basis of the authentication information included in the execution request. The application management unit acquires processing flow information associated with the flow ID included in the execution request when the authentication means authenticates the device successfully. The logic processing unit executes each of applications identified by the application IDs defined in the processing flow information, in the execution order, to execute the series of processing using the electronic file based on the user specification information.SELECTED DRAWING: Figure 4

Description

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

近年、複数の機能(例えば、スキャンやプリント、メール配信等)を組み合わせた機能を提供するサービスが知られるようになった。例えば、スキャンにより生成された電子データをメール配信するサービス等が知られている。このようなサービスは、各機能を実現する1以上の処理が一連の処理としてジョブ実行されることにより実現される。   In recent years, services that provide a function combining a plurality of functions (for example, scanning, printing, mail distribution, etc.) have become known. For example, a service that distributes electronic data generated by scanning is known. Such a service is realized by executing a job as a series of one or more processes for realizing each function.

また、1以上の処理を一連の処理として表した処理情報等が含まれる指示書に基づいて、当該一連の処理を実行する画像形成装置が知られている(例えば特許文献1参照)。   There is also known an image forming apparatus that executes a series of processes based on an instruction sheet including processing information representing one or more processes as a series of processes (see, for example, Patent Document 1).

上記のようなサービスは、例えば、機器に搭載されたアプリケーションを用いて、一連の処理を実行させることで利用することができる。ここで、機器に搭載されたアプリケーションが一連の処理を実行する場合には、不正利用の防止等の観点から当該アプリケーションの認証を行うことが好ましい。   The service as described above can be used by, for example, executing a series of processes using an application installed in a device. Here, when an application installed in a device executes a series of processes, it is preferable to authenticate the application from the viewpoint of preventing unauthorized use.

本発明の実施の形態は、上記の点に鑑みてなされたもので、一連の処理の実行前に機器を認証することを目的とする。   The embodiment of the present invention has been made in view of the above points, and an object thereof is to authenticate a device before executing a series of processes.

上記目的を達成するため、本発明の実施の形態は、1以上の情報処理装置を含み、所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する1以上の前記プログラムを識別するプログラム識別情報と、1以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、前記情報処理システムに接続される1以上の機器のうちの一の機器から、電子データに関する情報と、前記フロー識別情報と、前記一の機器の認証を行うための認証情報とを含む第1の要求を受信する第1の受信手段と、前記第1の受信手段により受信された前記第1の要求に含まれる前記認証情報に基づいて、前記一の機器の認証を行う認証手段と、前記認証手段による前記認証が成功した場合、前記記憶手段に記憶されているフロー情報のうち、前記第1の受信手段により受信された前記第1の要求に含まれる前記フロー識別情報と関連付けて前記記憶手段に記憶されている前記フロー情報を取得する取得手段と、前記取得手段により取得された前記フロー情報に定義されている前記プログラム識別情報に識別されるプログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って実行させることで、前記第1の受信手段により受信された前記第1の要求に含まれる前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、を有する。   In order to achieve the above object, an embodiment of the present invention is an information processing system that includes one or more information processing apparatuses and includes a plurality of programs that respectively execute predetermined processing, and a series of electronic data For each process, program identification information for identifying one or more of the programs that execute each of the series of processes and flow information in which the execution order of the one or more of the programs is defined are identified. Storage means for storing in association with the flow identification information, information about electronic data from one of the one or more devices connected to the information processing system, the flow identification information, and the one device First receiving means for receiving a first request including authentication information for performing authentication, and the authentication included in the first request received by the first receiving means. Authentication means for authenticating the one device based on the information, and when the authentication by the authentication means is successful, the flow information stored in the storage means is received by the first receiving means. An acquisition unit that acquires the flow information stored in the storage unit in association with the flow identification information included in the first request, and the flow information that is defined by the acquisition unit Each of the programs identified by the program identification information is executed according to the execution order defined in the flow information, so that the electronic data included in the first request received by the first reception unit Execution means for executing the series of processes using electronic data based on information.

本発明の実施の形態によれば、一連の処理の実行前に機器を認証することができる。   According to the embodiment of the present invention, it is possible to authenticate a device before executing a series of processes.

本実施形態に係る情報処理システムの一例のシステム構成を示す図である。It is a figure showing the system configuration of an example of the information processing system concerning this embodiment. 本実施形態に係るサービス提供システムの一例のハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of an example of the service provision system which concerns on this embodiment. 本実施形態に係る機器の一例のハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of an example of the apparatus which concerns on this embodiment. 本実施形態に係る情報処理システムの一例の機能構成を示す図である。It is a figure which shows the function structure of an example of the information processing system which concerns on this embodiment. 本実施形態に係るロジック処理部の一例の機能構成を示す図である。It is a figure which shows the function structure of an example of the logic process part which concerns on this embodiment. 型変換情報テーブルの一例を示す図である。It is a figure which shows an example of a type | mold conversion information table. 本実施形態に係るジョブ管理部の一例の機能構成を示す図である。It is a figure which shows the function structure of an example of the job management part which concerns on this embodiment. 処理フロー情報の一例を示す図である。It is a figure which shows an example of process flow information. サービス利用の全体処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the whole process of service utilization. サービス利用画面の一例を示す図である。It is a figure which shows an example of a service utilization screen. 処理フローの実行処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the execution process of a processing flow. ジョブ情報の一例を示す図である。It is a figure which shows an example of job information. 参照可能アプリケーションの登録処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the registration process of a referable application. 参照情報の一例を示す図である。It is a figure which shows an example of reference information. ジョブ情報の参照処理の一例を示すシーケンス図である。FIG. 10 is a sequence diagram illustrating an example of a job information reference process. ジョブ情報の参照画面の一例を示す図である。It is a figure which shows an example of the reference screen of job information. ジョブ情報の参照処理の他の例(その1)を示すシーケンス図である。FIG. 11 is a sequence diagram illustrating another example (part 1) of job information reference processing. ジョブ情報の他の例を示す図である。It is a figure which shows the other example of job information. ジョブ情報の参照処理の他の例(その2)を示すシーケンス図である。FIG. 10 is a sequence diagram illustrating another example (part 2) of the job information reference process.

以下、本発明の実施形態について、図面を参照しながら詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

<システム構成>
まず、本実施形態に係る情報処理システム1のシステム構成について、図1を参照しながら説明する。図1は、本実施形態に係る情報処理システム1の一例のシステム構成を示す図である。
<System configuration>
First, the system configuration of the information processing system 1 according to the present embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating a system configuration of an example of an information processing system 1 according to the present embodiment.

図1に示す情報処理システム1は、サービス提供システム10と、機器20とを含み、インターネット等の広域的なネットワークN1を介して通信可能に接続されている。   An information processing system 1 shown in FIG. 1 includes a service providing system 10 and a device 20, and is communicably connected via a wide area network N1 such as the Internet.

サービス提供システム10は、一台以上の情報処理装置で実現され、ネットワークN1を介して、種々の機能をそれぞれ実現する複数の処理のうちの1以上の処理を組み合わせた一連の処理により実現される各種のサービスを提供する。   The service providing system 10 is realized by one or more information processing apparatuses, and is realized by a series of processes that combine one or more processes among a plurality of processes that realize various functions via the network N1. Provide various services.

ここで、機能とは、文書ファイルや画像ファイル等の電子ファイルに関する機能である。機能には、例えば、プリント、スキャン、ファクシミリ送信、データ形式の変換、メール配信、OCR(Optical character recognition)処理、加工や圧縮・解凍、リポジトリへの格納等が挙げられる。   Here, the function is a function related to an electronic file such as a document file or an image file. Functions include, for example, printing, scanning, facsimile transmission, data format conversion, mail delivery, OCR (Optical character recognition) processing, processing, compression / decompression, storage in a repository, and the like.

本実施形態に係るサービス提供システム10が提供するサービスの具体例については後述する。なお、以降では、一連の処理を「処理フロー」とも表す。   Specific examples of services provided by the service providing system 10 according to the present embodiment will be described later. Hereinafter, a series of processing is also referred to as “processing flow”.

機器20は、ユーザが使用する各種の電子機器である。すなわち、機器20は、例えば、MFP(Multifunction Peripheral)等の画像形成装置、PC(パーソナルコンピュータ)、プロジェクタ、電子黒板、デジタルカメラ等である。ユーザは、機器20を用いて、サービス提供システム10が提供する各種のサービスを利用することができる。   The device 20 is various electronic devices used by the user. That is, the device 20 is, for example, an image forming apparatus such as an MFP (Multifunction Peripheral), a PC (Personal Computer), a projector, an electronic blackboard, a digital camera, or the like. The user can use various services provided by the service providing system 10 using the device 20.

なお、以降では、複数の機器20について、各々を区別するときは、「機器20」、「機器20」等と添え字を用いて記載する。 Hereinafter, when distinguishing each of the plurality of devices 20, they are described using a subscript such as “device 20 1 ”, “device 20 2 ”, and the like.

また、図1に示す情報処理システム1の構成は一例であって、他の構成であっても良い。例えば、本実施形態に係る情報処理システム1には、電子データの入力及び出力の少なくとも一方を行う各種機器が含まれ、これらの機器がサービス提供システム10により提供されるサービスを利用しても良い。   The configuration of the information processing system 1 illustrated in FIG. 1 is an example, and other configurations may be used. For example, the information processing system 1 according to the present embodiment includes various devices that perform at least one of input and output of electronic data, and these devices may use services provided by the service providing system 10. .

<ハードウェア構成>
次に、本実施形態に係る情報処理システム1に含まれるサービス提供システム10のハードウェア構成について、図2を参照しながら説明する。図2は、本実施形態に係るサービス提供システム10の一例のハードウェア構成を示す図である。
<Hardware configuration>
Next, the hardware configuration of the service providing system 10 included in the information processing system 1 according to the present embodiment will be described with reference to FIG. FIG. 2 is a diagram illustrating a hardware configuration of an example of the service providing system 10 according to the present embodiment.

図2に示すサービス提供システム10は、入力装置11と、表示装置12と、外部I/F13と、RAM(Random Access Memory)14とを有する。また、サービス提供システム10は、ROM(Read Only Memory)15と、CPU(Central Processing Unit)16と、通信I/F17と、HDD(Hard Disk Drive)18とを有する。これらの各ハードウェアは、それぞれがバスBで接続されている。   A service providing system 10 illustrated in FIG. 2 includes an input device 11, a display device 12, an external I / F 13, and a RAM (Random Access Memory) 14. The service providing system 10 includes a ROM (Read Only Memory) 15, a CPU (Central Processing Unit) 16, a communication I / F 17, and an HDD (Hard Disk Drive) 18. Each of these hardware is connected by a bus B.

入力装置11は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置12は、ディスプレイ等を含み、サービス提供システム10による処理結果を表示する。なお、入力装置11及び表示装置12の少なくとも一方は、必要なときにサービス提供システム10に接続して利用する形態であっても良い。   The input device 11 includes a keyboard, a mouse, a touch panel, and the like, and is used by a user to input each operation signal. The display device 12 includes a display and the like, and displays a processing result by the service providing system 10. Note that at least one of the input device 11 and the display device 12 may be connected to the service providing system 10 when necessary.

通信I/F17は、サービス提供システム10をネットワークN1に接続するインタフェースである。これにより、サービス提供システム10は、通信I/F17を介して通信を行うことができる。   The communication I / F 17 is an interface that connects the service providing system 10 to the network N1. Thereby, the service providing system 10 can perform communication via the communication I / F 17.

HDD18は、プログラムやデータを格納している不揮発性の記憶装置である。HDD18に格納されるプログラムやデータには、サービス提供システム10全体を制御する基本ソフトウェアであるOS(Operating System)、OS上において各種機能を提供するアプリケーションソフトウェア等がある。   The HDD 18 is a nonvolatile storage device that stores programs and data. The programs and data stored in the HDD 18 include an OS (Operating System) that is basic software for controlling the entire service providing system 10 and application software that provides various functions on the OS.

なお、サービス提供システム10は、HDD18に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置(例えばソリッドステートドライブ:SSD)を利用するものであっても良い。また、HDD18は、格納しているプログラムやデータを所定のファイルシステム及び/又はDBにより管理している。   The service providing system 10 may use a drive device (for example, a solid state drive: SSD) that uses a flash memory as a storage medium instead of the HDD 18. The HDD 18 manages stored programs and data by a predetermined file system and / or DB.

外部I/F13は、外部装置とのインタフェースである。外部装置には、記録媒体13a等がある。これにより、サービス提供システム10は、外部I/F13を介して記録媒体13aの読み取りや書き込みを行うことができる。記録媒体13aには、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。   The external I / F 13 is an interface with an external device. The external device includes a recording medium 13a. Thereby, the service providing system 10 can read and write to the recording medium 13a via the external I / F 13. Examples of the recording medium 13a include a flexible disk, a CD, a DVD, an SD memory card, and a USB memory.

ROM15は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM15には、サービス提供システム10の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定等のプログラムやデータが格納されている。RAM14は、プログラムやデータを一時保持する揮発性の半導体メモリである。   The ROM 15 is a non-volatile semiconductor memory that can retain programs and data even when the power is turned off. The ROM 15 stores programs and data such as BIOS (Basic Input / Output System), OS settings, and network settings that are executed when the service providing system 10 is activated. The RAM 14 is a volatile semiconductor memory that temporarily stores programs and data.

CPU16は、ROM15やHDD18等の記憶装置からプログラムやデータをRAM14上に読み出し、処理を実行することで、サービス提供システム10全体の制御や機能を実現する演算装置である。   The CPU 16 is an arithmetic device that realizes control and functions of the entire service providing system 10 by reading a program and data from a storage device such as the ROM 15 and the HDD 18 onto the RAM 14 and executing processing.

本実施形態に係るサービス提供システム10は、図2に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。   The service providing system 10 according to the present embodiment has the hardware configuration shown in FIG.

次に、本実施形態に係る情報処理システム1に含まれる機器20が画像形成装置である場合のハードウェア構成について、図3を参照しながら説明する。図3は、本実施形態に係る機器20の一例のハードウェア構成を示す図である。   Next, a hardware configuration when the device 20 included in the information processing system 1 according to the present embodiment is an image forming apparatus will be described with reference to FIG. FIG. 3 is a diagram illustrating a hardware configuration of an example of the device 20 according to the present embodiment.

図3に示す機器20は、コントローラ21と、操作パネル22と、外部I/F23と、通信I/F24と、プリンタ25と、スキャナ26とを有する。また、コントローラ21は、CPU31と、RAM32と、ROM33と、NVRAM34と、HDD35とを有する。   The device 20 illustrated in FIG. 3 includes a controller 21, an operation panel 22, an external I / F 23, a communication I / F 24, a printer 25, and a scanner 26. The controller 21 includes a CPU 31, a RAM 32, a ROM 33, an NVRAM 34, and an HDD 35.

ROM33は、各種プログラムやデータを格納している不揮発性の半導体メモリである。RAM32は、プログラムやデータを一時保持する揮発性の半導体メモリである。NVRAM34は、例えば設定情報等を格納している。また、HDD35は、各種プログラムやデータを格納している不揮発性の記憶装置である。   The ROM 33 is a nonvolatile semiconductor memory that stores various programs and data. The RAM 32 is a volatile semiconductor memory that temporarily stores programs and data. The NVRAM 34 stores setting information, for example. The HDD 35 is a non-volatile storage device that stores various programs and data.

CPU31は、ROM33やNVRAM34、HDD35等からプログラムやデータ、設定情報等をRAM32上に読み出し、処理を実行することで、機器20全体の制御や機能を実現する演算装置である。   The CPU 31 is an arithmetic unit that realizes control and functions of the entire device 20 by reading programs, data, setting information, and the like from the ROM 33, the NVRAM 34, the HDD 35, and the like onto the RAM 32 and executing processing.

操作パネル22は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部I/F23は、外部装置とのインタフェースである。外部装置には、記録媒体23a等がある。これにより、機器20は、外部I/F23を介して記録媒体23aの読み取り及び/又は書き込みを行うことができる。なお、記録媒体23aには、例えば、ICカード、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。   The operation panel 22 includes an input unit that receives input from a user and a display unit that performs display. The external I / F 23 is an interface with an external device. The external device includes a recording medium 23a. Thereby, the device 20 can read and / or write the recording medium 23a via the external I / F 23. Examples of the recording medium 23a include an IC card, a flexible disk, a CD, a DVD, an SD memory card, and a USB memory.

通信I/F24は、機器20をネットワークに接続するインタフェースである。これにより、機器20は、通信I/F24を介して通信を行うことができる。プリンタ25は、印刷データを印刷する印刷装置である。スキャナ26は、原稿を読み取って電子ファイル(画像ファイル)を生成する読取装置である。   The communication I / F 24 is an interface that connects the device 20 to a network. Thereby, the device 20 can perform communication via the communication I / F 24. The printer 25 is a printing device that prints print data. The scanner 26 is a reading device that reads an original and generates an electronic file (image file).

本実施形態に係る機器20は、図3に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。   The device 20 according to the present embodiment has the hardware configuration shown in FIG.

<サービス提供システムが提供するサービス>
ここで、本実施形態に係るサービス提供システム10が提供するサービスについて説明する。なお、以降では、機器20が画像形成装置であるものとして説明する。
<Services provided by the service providing system>
Here, services provided by the service providing system 10 according to the present embodiment will be described. In the following description, it is assumed that the device 20 is an image forming apparatus.

本実施形態に係るサービス提供システム10は、機器20において原稿をスキャンして生成された電子ファイル(画像ファイル)をOCR処理して、ユーザにより指定されたメールアドレス宛にメール配信するサービスを提供する。   The service providing system 10 according to the present embodiment provides a service that performs OCR processing on an electronic file (image file) generated by scanning a document in the device 20 and distributes the mail to a mail address designated by the user. .

以降では、本実施形態に係るサービス提供システム10は、上述したサービス(「スキャン To メール配信」サービス)を提供するものとして説明する。   Hereinafter, the service providing system 10 according to the present embodiment will be described as providing the above-described service (“scan to mail delivery” service).

ただし、サービス提供システム10が提供するサービスは、これに限られない。サービス提供システム10は、例えば、機器20において原稿をスキャンして生成された電子ファイルを圧縮して、リポジトリへ格納するサービスを提供しても良い。また、サービス提供システム10は、例えば、機器20において原稿をスキャンして生成された電子ファイルを加工(例えば、当該電子ファイルに所定の文言を付加)して、ファクシミリ送信するサービスを提供しても良い。   However, the service provided by the service providing system 10 is not limited to this. For example, the service providing system 10 may provide a service for compressing an electronic file generated by scanning a document in the device 20 and storing the compressed electronic file. In addition, the service providing system 10 may provide a service for processing an electronic file generated by scanning a document in the device 20 (for example, adding a predetermined word to the electronic file) and transmitting by facsimile. good.

また、例えば、機器20が電子黒板等である場合には、本実施形態に係るサービス提供システム10は、電子黒板である機器20により生成された電子ファイルを加工して、メール配信するサービス等を提供しても良い。   Further, for example, when the device 20 is an electronic blackboard or the like, the service providing system 10 according to the present embodiment provides a service that processes an electronic file generated by the device 20 that is an electronic blackboard and distributes it by mail. May be provided.

<機能構成>
次に、本実施形態に係る情報処理システム1の機能構成について、図4を参照しながら説明する。図4は、本実施形態に係る情報処理システム1の一例の機能構成を示す図である。
<Functional configuration>
Next, the functional configuration of the information processing system 1 according to the present embodiment will be described with reference to FIG. FIG. 4 is a diagram illustrating a functional configuration of an example of the information processing system 1 according to the present embodiment.

図4に示す機器20は、例えばCPU31等により実行されるクライアントアプリケーション210を有する。クライアントアプリケーション210は、サービス提供システム10が提供するサービスを利用するためのアプリケーションプログラムである。ユーザは、機器20にインストールされたクライアントアプリケーション210を用いて、サービス提供システム10が提供する「スキャン To メール配信」サービスを利用することができる。なお、クライアントアプリケーション210には、当該クライアントアプリケーション210を識別するアプリIDが付与されている。   The apparatus 20 illustrated in FIG. 4 includes a client application 210 that is executed by, for example, the CPU 31 or the like. The client application 210 is an application program for using a service provided by the service providing system 10. The user can use the “scan to mail delivery” service provided by the service providing system 10 using the client application 210 installed in the device 20. Note that an application ID for identifying the client application 210 is assigned to the client application 210.

図4に示すサービス提供システム10は、入出力サービス処理部110と、認証サービス部120と、ドキュメントサービス部130とを有する。これら各機能部は、サービス提供システム10にインストールされた1以上のプログラムが、CPU16に実行させる処理により実現される。   The service providing system 10 illustrated in FIG. 4 includes an input / output service processing unit 110, an authentication service unit 120, and a document service unit 130. Each of these functional units is realized by a process that the CPU 16 causes one or more programs installed in the service providing system 10 to execute.

また、図5に示すサービス提供システム10は、アプリ情報記憶部140と、ジョブ情報記憶部150と、参照情報記憶部160とを有する。これら各記憶部は、HDD18を用いて実現可能である。なお、これら各記憶部のうちの少なくとも一の記憶部が、サービス提供システム10とネットワークN1を介して接続される記憶装置等を用いて実現されていても良い。   The service providing system 10 illustrated in FIG. 5 includes an application information storage unit 140, a job information storage unit 150, and a reference information storage unit 160. Each of these storage units can be realized using the HDD 18. Note that at least one of these storage units may be realized by using a storage device or the like connected to the service providing system 10 via the network N1.

入出力サービス処理部110は、サービス提供システム10が提供するサービスに関する処理を行う。ここで、入出力サービス処理部110は、アプリ管理部111と、ロジック処理部112と、ジョブ管理部113とを有する。   The input / output service processing unit 110 performs processing related to services provided by the service providing system 10. Here, the input / output service processing unit 110 includes an application management unit 111, a logic processing unit 112, and a job management unit 113.

アプリ管理部111は、アプリ情報記憶部140に記憶されているアプリ情報1000と、参照情報記憶部160に記憶されている参照情報を管理する。   The application management unit 111 manages application information 1000 stored in the application information storage unit 140 and reference information stored in the reference information storage unit 160.

なお、アプリ情報1000とは、一連の処理により実現されるサービスを提供するためのアプリケーションである。すなわち、サービス提供システム10が提供する各種のサービス(例えば、「スキャン To メール配信」サービス)は、アプリ情報1000により提供される。また、参照情報とは、クライアントアプリケーション210やアプリ情報1000等が、他のクライアントアプリケーション210やアプリ情報1000等により実行されたジョブの情報(ジョブ情報)を参照可能であるか否かを判定するための情報である。   The application information 1000 is an application for providing a service realized by a series of processes. In other words, various services provided by the service providing system 10 (for example, “scan to mail delivery” service) are provided by the application information 1000. The reference information is used to determine whether the client application 210, the application information 1000, or the like can refer to information (job information) of a job executed by the other client application 210, the application information 1000, or the like. Information.

また、アプリ管理部111は、ロジック処理部112からの要求に応じて、アプリ情報1000に含まれる処理フロー情報1100を返信する。なお、処理フロー情報1100とは、アプリ情報1000により提供されるサービスを実現する一連の処理が定義された情報である。   In addition, the application management unit 111 returns processing flow information 1100 included in the application information 1000 in response to a request from the logic processing unit 112. The process flow information 1100 is information that defines a series of processes for realizing a service provided by the application information 1000.

ロジック処理部112は、クライアントアプリケーション210からの要求に応じて、アプリ情報1000に含まれる処理フロー情報1100をアプリ管理部111から取得する。そして、ロジック処理部112は、アプリ管理部111から取得した処理フロー情報1100に基づいて、当該アプリ情報1000が提供するサービスを実現する一連の処理(処理フロー)を実行する。これにより、本実施形態に係るサービス提供システム10は、各種のサービス(例えば、「スキャン To メール配信」サービス)を提供することができる。   In response to a request from the client application 210, the logic processing unit 112 acquires processing flow information 1100 included in the application information 1000 from the application management unit 111. Then, based on the processing flow information 1100 acquired from the application management unit 111, the logic processing unit 112 executes a series of processing (processing flow) for realizing the service provided by the application information 1000. Thereby, the service providing system 10 according to the present embodiment can provide various services (for example, “scan to mail delivery” service).

ジョブ管理部113は、ジョブ情報記憶部150に記憶されているジョブ情報を管理する。なお、ジョブ情報とは、ジョブに関する各種情報(例えば、ジョブの作成日や状態等)が含まれる情報である。また、ジョブとは、各種のサービスを実現する一連の処理(処理フロー)を1つの実行単位とした概念である。   The job management unit 113 manages job information stored in the job information storage unit 150. Note that the job information is information including various information related to the job (for example, job creation date and status). A job is a concept that uses a series of processing (processing flow) for realizing various services as one execution unit.

認証サービス部120は、クライアントアプリケーション210が入出力サービス処理部110に各種要求を行う際に、様々な認証方式により認証を行う。   The authentication service unit 120 performs authentication by various authentication methods when the client application 210 makes various requests to the input / output service processing unit 110.

ドキュメントサービス部130は、処理フロー情報1100に基づく一連の処理(処理フロー)に含まれる所定の処理を実行する。ここで、ドキュメントサービス部130は、OCR処理部131と、メール配信部132とを有する。   The document service unit 130 executes predetermined processing included in a series of processing (processing flow) based on the processing flow information 1100. Here, the document service unit 130 includes an OCR processing unit 131 and a mail delivery unit 132.

OCR処理部131は、電子ファイル(画像ファイル)に対してOCR処理を行う。メール配信部132は、電子ファイルを添付したメールを作成して、当該メールを指定されたメールアドレス宛に配信する。   The OCR processing unit 131 performs OCR processing on an electronic file (image file). The mail delivery unit 132 creates a mail with an electronic file attached, and delivers the mail to a designated mail address.

なお、ドキュメントサービス部130は、例えば、電子ファイルのデータ形式を所定のデータに変換するデータ変換部、電子ファイルを圧縮又は解凍する圧縮・解凍部等を有していても良い。   Note that the document service unit 130 may include, for example, a data conversion unit that converts the data format of the electronic file into predetermined data, a compression / decompression unit that compresses or decompresses the electronic file, and the like.

このように、ドキュメントサービス部130には、一連の処理(処理フロー)に含まれる所定の処理を実行する種々の機能部が含まれる。したがって、ドキュメントサービス部130は、これら種々の機能を提供するプログラム(モジュール)群により実現される。   As described above, the document service unit 130 includes various functional units that execute predetermined processing included in a series of processing (processing flow). Accordingly, the document service unit 130 is realized by a group of programs (modules) that provide these various functions.

アプリ情報記憶部140は、アプリ情報1000を記憶する。アプリ情報1000は、当該アプリ情報1000を識別するアプリIDと関連付けてアプリ情報記憶部140に記憶されている。したがって、アプリIDは、クライアントアプリケーション210及びアプリ情報1000を識別する識別情報である。   The application information storage unit 140 stores application information 1000. The application information 1000 is stored in the application information storage unit 140 in association with an application ID that identifies the application information 1000. Therefore, the application ID is identification information that identifies the client application 210 and the application information 1000.

ここで、アプリ情報1000には、処理フロー情報1100が含まれる。例えば、「スキャン To メール配信」サービスを提供するアプリ情報1000には、当該サービスを実現する一連の処理が定義された処理フロー情報1100が含まれる。すなわち、「スキャン To メール配信」サービスを提供するアプリ情報1000には、スキャンにより生成された電子ファイルをOCR処理した後、指定されたメールアドレス宛にメール配信する処理が定義された処理フロー情報1100が含まれる。   Here, the application information 1000 includes processing flow information 1100. For example, the application information 1000 that provides the “scan to mail delivery” service includes processing flow information 1100 in which a series of processes for realizing the service is defined. That is, the application information 1000 that provides the “scan to mail delivery” service includes processing flow information 1100 in which a process of delivering an email addressed to a specified email address after OCR processing of an electronic file generated by scanning is defined. Is included.

なお、アプリ情報1000には、2以上の処理フロー情報1100が含まれていても良い。例えば、「スキャン To メール配信」を提供するアプリ情報1000には、英語でOCR処理した後、メール配信する処理が定義された処理フロー情報1100Aと、日本語でOCR処理した後、メール配信する処理が定義された処理フロー情報1100Bとが含まれていても良い。   Note that the application information 1000 may include two or more processing flow information 1100. For example, the application information 1000 that provides “scan to email delivery” includes processing flow information 1100A in which processing for delivering mail is defined after performing OCR processing in English, and processing for delivering email after performing OCR processing in Japanese May be included in the processing flow information 1100B in which is defined.

処理フロー情報1100は、上述したように、アプリ情報1000により提供されるサービスを実現する一連の処理(処理フロー)が定義された情報である。処理フロー情報1100には、当該処理フロー情報1100を識別するフローIDが付与されている。なお、処理フロー情報1100の詳細については後述する。   As described above, the processing flow information 1100 is information in which a series of processing (processing flow) for realizing the service provided by the application information 1000 is defined. The process flow information 1100 is assigned a flow ID for identifying the process flow information 1100. Details of the processing flow information 1100 will be described later.

ジョブ情報記憶部150は、ジョブ情報を記憶する。参照情報記憶部160は、参照情報を記憶する。ジョブ情報及び参照情報の詳細については後述する。   The job information storage unit 150 stores job information. The reference information storage unit 160 stores reference information. Details of the job information and the reference information will be described later.

なお、入出力サービス処理部110、認証サービス部120、及びドキュメントサービス部130は、それぞれが異なる情報処理装置により実現されていても良い。   The input / output service processing unit 110, the authentication service unit 120, and the document service unit 130 may be realized by different information processing apparatuses.

ここで、ロジック処理部112の詳細な機能構成について、図5を参照しながら説明する。図5は、本実施形態に係るロジック処理部112の一例の機能構成図である。   Here, a detailed functional configuration of the logic processing unit 112 will be described with reference to FIG. FIG. 5 is a functional configuration diagram of an example of the logic processing unit 112 according to the present embodiment.

図5に示すロジック処理部112は、フロー実行部301と、コンポーネント管理部302と、コンポーネント群303と、型変換管理部304と、型変換群305とを有する。また、ロジック処理部112は、型変換情報テーブル3000を有する。   The logic processing unit 112 illustrated in FIG. 5 includes a flow execution unit 301, a component management unit 302, a component group 303, a type conversion management unit 304, and a type conversion group 305. The logic processing unit 112 has a type conversion information table 3000.

フロー実行部301は、認証サービス部120を介して、クライアントアプリケーション210からアプリケーションの実行要求を受信すると、当該実行要求に対応するアプリ情報1000に含まれる処理フロー情報1100をアプリ管理部111から取得する。そして、フロー実行部301は、アプリ管理部111から取得した処理フロー情報1100に基づく一連の処理(処理フロー)を実行する。   When the flow execution unit 301 receives an application execution request from the client application 210 via the authentication service unit 120, the flow execution unit 301 acquires processing flow information 1100 included in the application information 1000 corresponding to the execution request from the application management unit 111. . The flow execution unit 301 executes a series of processing (processing flow) based on the processing flow information 1100 acquired from the application management unit 111.

ここで、処理フロー情報1100に基づく一連の処理は、当該一連の処理に含まれる各処理を実行するためのコンポーネントを組み合わせることにより実行される。なお、コンポーネントは、所定の機能を実現する処理を実行するためのプログラムやモジュール等により実現され、例えばクラスや関数等で定義される。   Here, a series of processes based on the process flow information 1100 is executed by combining components for executing each process included in the series of processes. The component is realized by a program, a module, or the like for executing processing for realizing a predetermined function, and is defined by, for example, a class or a function.

コンポーネント管理部302は、コンポーネントを管理する。コンポーネント管理部302は、フロー実行部301からの要求に応じて、コンポーネントを生成すると共に、生成したコンポーネントをフロー実行部301に返信する。なお、コンポーネントの生成とは、例えばクラスや関数等で定義されたコンポーネントを、メモリ(例えばRAM14)上に展開することである。   The component management unit 302 manages components. The component management unit 302 generates a component in response to a request from the flow execution unit 301 and returns the generated component to the flow execution unit 301. The generation of a component means that a component defined by, for example, a class or a function is expanded on a memory (for example, the RAM 14).

コンポーネント群303は、コンポーネントの集合である。コンポーネント群303には、OCRコンポーネント1310と、メール配信コンポーネント1320とが含まれる。   The component group 303 is a set of components. The component group 303 includes an OCR component 1310 and a mail delivery component 1320.

OCRコンポーネント1310は、電子ファイルをOCR処理するためのコンポーネントである。OCRコンポーネント1310は、ドキュメントサービス部130のOCR処理部131にOCR処理を要求することにより、電子ファイルのOCR処理を行う。   The OCR component 1310 is a component for performing OCR processing on an electronic file. The OCR component 1310 performs OCR processing of an electronic file by requesting the OCR processing unit 131 of the document service unit 130 for OCR processing.

メール配信コンポーネント1320は、指定されたメールアドレス宛にメール配信するためのコンポーネントである。メール配信コンポーネント1320は、ドキュメントサービス部130のメール配信部132にメール配信処理を要求することにより、指定されたメールアドレス宛にメールを配信する。   The mail delivery component 1320 is a component for delivering mail to a designated mail address. The mail delivery component 1320 delivers mail to a designated mail address by requesting mail delivery processing 132 of the document service unit 130 for mail delivery processing.

このように、各コンポーネントは、ドキュメントサービス部130を利用して、所定の機能を実現する処理を実行する。なお、コンポーネント群303には、上記のコンポーネント以外にも、例えば、電子ファイルのデータ形式を所定のデータ形式に変換するための変換コンポーネント、電子ファイルを圧縮するための圧縮コンポーネント等の各種のコンポーネントが含まれる。   In this way, each component uses the document service unit 130 to execute processing for realizing a predetermined function. In addition to the above components, the component group 303 includes various components such as a conversion component for converting the data format of the electronic file into a predetermined data format and a compression component for compressing the electronic file. included.

また、コンポーネント群303に含まれる各コンポーネントは、コンポーネント共通I/F1300を有する。コンポーネント共通I/F1300は、各コンポーネントに対して共通に定義されたAPI(Application Programming Interface)であり、コンポーネントを生成するためのAPIと、コンポーネントの処理を実行するためのAPIとが含まれる。   Each component included in the component group 303 has a component common I / F 1300. The component common I / F 1300 is an API (Application Programming Interface) commonly defined for each component, and includes an API for generating a component and an API for executing processing of the component.

このように、各コンポーネントがコンポーネント共通I/F1300を有することで、コンポーネントの追加等に伴う影響を局所化することができる。すなわち、例えば、フロー実行部301やコンポーネント管理部302等に影響を与えることなく、コンポーネントの追加等を行うことができる。これにより、本実施形態に係るサービス提供システム10では、所定の機能の追加等(すなわち、当該機能を実現する処理を実行するためのコンポーネントの追加等)に伴う開発工数を削減することができる。   As described above, since each component has the component common I / F 1300, it is possible to localize the influence caused by the addition of the component. That is, for example, a component can be added without affecting the flow execution unit 301, the component management unit 302, and the like. Thereby, in the service providing system 10 according to the present embodiment, it is possible to reduce the number of development man-hours associated with the addition of a predetermined function (that is, the addition of a component for executing a process for realizing the function).

型変換管理部304は、データ型の型変換を管理する。ここで、各コンポーネントは、自身が扱えるデータ型が予め決まっている。したがって、型変換管理部304は、コンポーネントからの要求に応じて、例えば図6に示す型変換情報テーブル3000を参照して、型変換群305に含まれる型変換を生成する。   The type conversion management unit 304 manages type conversion of data types. Here, the data type that each component can handle is determined in advance. Therefore, the type conversion management unit 304 generates a type conversion included in the type conversion group 305 with reference to, for example, the type conversion information table 3000 illustrated in FIG. 6 in response to a request from the component.

そして、型変換管理部304は、生成された型変換に型変換処理の実行を要求する。なお、型変換は、データ型の型変換処理を実行するプログラムやモジュール等により実現され、例えばクラスや関数等で定義される。また、型変換の生成とは、例えばクラスや関数等で定義された型変換を、メモリ(例えばRAM14上)に展開することである。   Then, the type conversion management unit 304 requests the generated type conversion to execute the type conversion process. The type conversion is realized by a program, a module, or the like that executes a data type type conversion process, and is defined by, for example, a class or a function. The generation of the type conversion is to develop the type conversion defined by, for example, a class or a function in a memory (for example, on the RAM 14).

なお、データ型には、例えば、ストリームデータを示すデータ型「InputStream」、記憶装置等に格納されている電子ファイルのパス(アドレス)を示す「LocalFilePath」、及び電子ファイルの実体を示す「File」等が挙げられる。   The data type includes, for example, a data type “InputStream” indicating stream data, “LocalFilePath” indicating a path (address) of an electronic file stored in a storage device or the like, and “File” indicating an entity of the electronic file. Etc.

ここで、型変換情報テーブル3000について、図6を参照しながら説明する。図6は、型変換情報テーブルの一例を示す図である。   Here, the type conversion information table 3000 will be described with reference to FIG. FIG. 6 is a diagram illustrating an example of the type conversion information table.

図6に示す型変換情報テーブル3000は、データ項目として、変換前のデータ型と、変換後のデータ型と、生成する型変換とを有する。すなわち、型変換情報テーブル3000に格納されている型変換情報は、変換前のデータ型及び変換後のデータ型毎に、当該変換前のデータ型を、当該変換後のデータ型に変換するための型変換が関連付けられた情報である。   The type conversion information table 3000 shown in FIG. 6 has, as data items, a data type before conversion, a data type after conversion, and a type conversion to be generated. That is, the type conversion information stored in the type conversion information table 3000 is used to convert the data type before conversion into the data type after conversion for each data type before conversion and after conversion. Information associated with type conversion.

型変換群305は、型変換の集合である。型変換群305には、データ型「InputStream」を「LocalFilePath」に変換するための第1の型変換1410が含まれる。なお、型変換群305には、これ以外にも、例えば、データ型「LocalFilePath」を「File」に変換するための第2の型変換等が含まれる。   The type conversion group 305 is a set of type conversions. The type conversion group 305 includes a first type conversion 1410 for converting the data type “InputStream” to “LocalFilePath”. In addition, the type conversion group 305 includes, for example, a second type conversion for converting the data type “LocalFilePath” to “File”.

また、型変換群305に含まれる各型変換は、型変換共通I/F1400を有する。型変換共通I/F1400は、各型変換に対して共通に定義されたAPIであり、型変換を生成するためのAPIと、型変換の型変換処理を実行するためのAPIとが含まれる。   Each type conversion included in the type conversion group 305 has a type conversion common I / F 1400. The type conversion common I / F 1400 is an API commonly defined for each type conversion, and includes an API for generating type conversion and an API for executing type conversion processing of type conversion.

このように、各型変換が型変換共通I/F1400を有することで、型変換の追加等に伴う影響を局所化することができる。すなわち、例えば、型変換管理部304等に影響を与えることなく、型変換の追加等を行うことができる。これにより、本実施形態に係るサービス提供システム10では、型変換の追加等に伴う開発工数を削減することができる。   As described above, since each type conversion has the type conversion common I / F 1400, it is possible to localize the influence caused by the addition of the type conversion. That is, for example, type conversion can be added without affecting the type conversion management unit 304 or the like. Thereby, in the service providing system 10 according to the present embodiment, it is possible to reduce the development man-hour associated with the addition of type conversion and the like.

ここで、ジョブ管理部113の詳細な機能構成について、図7を参照しながら説明する。図7は、本実施形態に係るジョブ管理部113の一例の機能構成を示す図である。   Here, a detailed functional configuration of the job management unit 113 will be described with reference to FIG. FIG. 7 is a diagram illustrating a functional configuration of an example of the job management unit 113 according to the present embodiment.

図7に示すジョブ管理部113は、ジョブ情報管理部401と、アクセス制御部402とを有する。   The job management unit 113 illustrated in FIG. 7 includes a job information management unit 401 and an access control unit 402.

ジョブ情報管理部401は、ロジック処理部112からジョブ情報の登録要求を受信すると、ジョブ情報を作成して、ジョブ情報記憶部150に記憶する。これにより、ジョブ情報がサービス提供システム10に登録される。   Upon receiving the job information registration request from the logic processing unit 112, the job information management unit 401 creates job information and stores it in the job information storage unit 150. As a result, the job information is registered in the service providing system 10.

また、ジョブ情報管理部401は、アクセス制御部402からジョブ情報の取得要求を受信すると、ジョブ情報をジョブ情報記憶部150から取得する。そして、ジョブ情報管理部401は、取得したジョブ情報をアクセス制御部402に返信する。   When the job information management unit 401 receives a job information acquisition request from the access control unit 402, the job information management unit 401 acquires job information from the job information storage unit 150. Then, the job information management unit 401 returns the acquired job information to the access control unit 402.

アクセス制御部402は、認証サービス部120を介して、クライアントアプリケーション210からジョブ情報の参照要求を受信すると、ジョブの情報取得要求をジョブ情報管理部401に送信する。   When the access control unit 402 receives a job information reference request from the client application 210 via the authentication service unit 120, the access control unit 402 transmits a job information acquisition request to the job information management unit 401.

また、アクセス制御部402は、ジョブ情報管理部401からジョブ情報が返信されると、アプリ管理部111を介して、参照情報に含まれるアプリID(後述する参照可能アプリID)を取得する。そして、アクセス制御部402は、ジョブ情報管理部401から返信されたジョブ情報をクライアントアプリケーション210が参照可能か否かを判定するためのアクセス権チェックを行う。   Further, when job information is returned from the job information management unit 401, the access control unit 402 acquires an application ID (referenceable application ID described later) included in the reference information via the application management unit 111. Then, the access control unit 402 performs an access right check for determining whether or not the client application 210 can refer to the job information returned from the job information management unit 401.

なお、参照情報には、クライアントアプリケーション210又はアプリ情報1000のアプリIDと、当該クライアントアプリケーション210又はアプリ情報1000が参照可能な他のアプリケーションのアプリID(参照可能アプリID)が関連付けられている。   The reference information is associated with the application ID of the client application 210 or the application information 1000 and the application ID (referenceable application ID) of another application that can be referred to by the client application 210 or the application information 1000.

これにより、クライアントアプリケーション210等が、他のアプリケーション(他のクライアントアプリケーション210や他のアプリ情報1000)のジョブ情報を参照する場合のアクセス制御が行われる。   Accordingly, access control is performed when the client application 210 or the like refers to job information of another application (another client application 210 or other application information 1000).

ここで、「スキャン To メール配信」サービスを提供するアプリ情報1000に含まれる処理フロー情報1100について、図8を参照しながら説明する。図8は、処理フロー情報1100の一例を示す図である。   Here, the processing flow information 1100 included in the application information 1000 that provides the “scan to mail delivery” service will be described with reference to FIG. FIG. 8 is a diagram illustrating an example of the processing flow information 1100.

図8に示す処理フロー情報1100は、「スキャン To メール配信」サービスを実現する一連の処理(処理フロー)が定義された情報である。すなわち、図8に示す処理フロー情報1100には、フローID1101と、「スキャン To メール配信」サービスを実現する一連の処理を構成する各処理をそれぞれ示す処理定義1102及び処理定義1103とが定義されている。   The processing flow information 1100 illustrated in FIG. 8 is information in which a series of processing (processing flow) for realizing the “scan to mail delivery” service is defined. That is, the process flow information 1100 shown in FIG. 8 includes a flow ID 1101 and a process definition 1102 and a process definition 1103 that indicate each process that constitutes a series of processes for realizing the “scan to mail delivery” service. Yes.

フローID1101は、図8に示す処理フロー情報1100を識別するフローIDである。   The flow ID 1101 is a flow ID for identifying the processing flow information 1100 illustrated in FIG.

処理定義1102及び処理定義1103は、「コンポーネント名:処理内容?オプションパラメータ」の形式で定義される。なお、オプションパラメータは、例えば、コンポーネント名及び処理内容で示されるコンポーネントが処理を行うのに必要である場合に限り、定義されていれば良い(すなわち、オプションパラメータの定義は任意である。)。また、複数のオプションパラメータを定義する場合には、オプションパラメータ同士を「&」で結合することにより定義する。   The process definition 1102 and the process definition 1103 are defined in the format of “component name: process content? Option parameter”. For example, the option parameter may be defined only when the component indicated by the component name and the processing content is necessary for processing (that is, the option parameter may be defined arbitrarily). In addition, when defining a plurality of option parameters, the option parameters are defined by connecting them with “&”.

処理定義1102には、「ocr:ocr_process」が定義されている。これは、OCRコンポーネント1310によりOCR処理を行うこと意味している。なお、処理定義1102には、オプションパラメータは定義されていない。   The process definition 1102 defines “ocr: ocr_process”. This means that the OCR component 1310 performs OCR processing. Note that no option parameter is defined in the process definition 1102.

処理定義1103には、「mail:send」が定義されている。これは、メール配信コンポーネント1320によりメール配信処理を行うことを意味している。   In the process definition 1103, “mail: send” is defined. This means that the mail distribution component 1320 performs mail distribution processing.

また、処理定義1103には、「?mail_address=null&filename=null」が定義されている。これは、「mail_address」に指定されたメールアドレス宛に、「filename」に指定されたファイル名の電子ファイルをメール配信することを意味している。なお、図8に示す例では、「mail_address」及び「filename」には値が指定されていない(すなわち、nullである。)。   In the process definition 1103, “? Mail_address = null & filename = null” is defined. This means that the electronic file having the file name specified in “filename” is delivered by mail to the mail address specified in “mail_address”. In the example illustrated in FIG. 8, no value is specified for “mail_address” and “filename” (that is, null).

このように、処理フロー情報1100には、一連の処理(処理フロー)を構成する各処理の処理定義が定義されている。これにより、本実施形態に係るサービス提供システム10は、処理フロー情報1100に含まれる各処理定義に従って、各コンポーネントによる処理を行うことで、アプリ情報1000により提供されるサービスを実現する一連の処理を実行することができる。   As described above, the process definition of each process constituting a series of processes (process flows) is defined in the process flow information 1100. As a result, the service providing system 10 according to the present embodiment performs a series of processing for realizing the service provided by the application information 1000 by performing processing by each component in accordance with each processing definition included in the processing flow information 1100. Can be executed.

なお、図8に示す処理フロー情報1100に含まれる各処理定義に定義された処理は、上から順に実行される。すなわち、図8に示す処理フロー情報1100に基づく一連の処理では、処理定義1102に定義された処理、処理定義1103に定義された処理の順で実行される。ただし、これに限られず、処理フロー情報1100には、例えば、各処理定義に定義された処理の実行順を示す情報が定義されていても良い。   Note that the processes defined in each process definition included in the process flow information 1100 illustrated in FIG. 8 are executed in order from the top. That is, in the series of processes based on the process flow information 1100 illustrated in FIG. 8, the processes defined in the process definition 1102 and the processes defined in the process definition 1103 are executed in this order. However, the present invention is not limited to this, and the process flow information 1100 may define, for example, information indicating the execution order of processes defined in each process definition.

<処理の詳細>
次に、本実施形態に係る情報処理システム1の処理の詳細について説明する。まず、機器20のユーザが、「スキャン To メール配信」サービスを利用する場合の全体的な処理について、図9を参照しながら説明する。図9は、サービス利用の全体処理の一例を示すシーケンス図である。
<Details of processing>
Next, details of processing of the information processing system 1 according to the present embodiment will be described. First, the overall process when the user of the device 20 uses the “scan to mail delivery” service will be described with reference to FIG. FIG. 9 is a sequence diagram showing an example of the overall service use process.

まず、クライアントアプリケーション210は、例えば図10に示すサービス利用画面2100を表示する(ステップS901)。このようなサービス利用画面2100は、例えば、ユーザがサービス利用画面2100の表示操作を行うことにより表示される。   First, the client application 210 displays a service use screen 2100 shown in FIG. 10, for example (step S901). Such a service use screen 2100 is displayed, for example, when the user performs a display operation of the service use screen 2100.

図10に示すサービス利用画面2100には、ファイル名入力欄2101と、メールアドレス入力欄2102と、スキャン実行ボタン2103とが含まれる。   The service use screen 2100 shown in FIG. 10 includes a file name input field 2101, a mail address input field 2102, and a scan execution button 2103.

ファイル名入力欄2101は、メールに添付する電子ファイル(すなわち、スキャンにより生成された電子ファイルをOCR処理した電子ファイル)のファイル名をユーザが指定する入力エリアである。メールアドレス入力欄2102は、メールの配信先となるメールアドレスをユーザが指定する入力エリアである。スキャン実行ボタン2103は、原稿のスキャンを実行して、サービスの利用を開始するためのボタンである。   A file name input field 2101 is an input area for the user to specify a file name of an electronic file attached to a mail (that is, an electronic file obtained by performing OCR processing on an electronic file generated by scanning). An e-mail address input field 2102 is an input area for the user to specify an e-mail address as a mail delivery destination. The scan execution button 2103 is a button for executing scanning of a document and starting use of the service.

ここで、図10に示すサービス利用画面2100において、ユーザにより、ファイル名入力欄2101及びメールアドレス入力欄2102にファイル名及びメールアドレスが指定された上で、スキャン実行ボタン2103を押下してスキャン実行操作がなされたものとする。   Here, in the service use screen 2100 shown in FIG. 10, the user designates the file name and the mail address in the file name input field 2101 and the mail address input field 2102, and then presses the scan execution button 2103 to execute the scan It is assumed that the operation has been performed.

すると、クライアントアプリケーション210は、原稿をスキャナ26で読み取ることで画像ファイル(スキャン画像ファイル)を作成する(ステップS902)。   Then, the client application 210 creates an image file (scanned image file) by reading the document with the scanner 26 (step S902).

ここで、クライアントアプリケーション210は、認証サービス部120との間の認証方式が「アプリ認証」である場合、クライアントIDとクライアントシークレットとを含む処理フローの実行要求を認証サービス部120に送信する(ステップS903)。   Here, when the authentication method with the authentication service unit 120 is “application authentication”, the client application 210 transmits a processing flow execution request including the client ID and the client secret to the authentication service unit 120 (step S1). S903).

なお、クライアントIDは、例えば、クライアントアプリケーション210のアプリIDである。また、クライアントシークレットは、クライアントIDに対するパスワード等である。すなわち、処理フローの実行要求には、認証情報として、クライアントIDとクライアントシークレットとが含まれている。   The client ID is, for example, the application ID of the client application 210. The client secret is a password for the client ID. That is, the processing flow execution request includes a client ID and a client secret as authentication information.

また、処理フローの実行要求には、フローID、スキャン画像ファイル、及びユーザ指定情報も含まれる。なお、ユーザ指定情報とは、ファイル名入力欄2101及びメールアドレス入力欄2102にそれぞれ指定されたファイル名及びメールアドレスである。   The processing flow execution request also includes a flow ID, a scanned image file, and user designation information. The user designation information is the file name and mail address designated in the file name input field 2101 and mail address input field 2102, respectively.

例えば、ファイル名入力欄2101に「test.pdf」、メールアドレス入力欄2102に「hoge@hogehoge.co.jp」が指定されたとする。この場合、ユーザ指定情報は、「mail_address=hoge@hogehoge.co.jp」と、「filename=test.pdf」とを含む情報である。   For example, it is assumed that “test.pdf” is specified in the file name input field 2101 and “hoge@hogehoge.co.jp” is specified in the mail address input field 2102. In this case, the user designation information is information including “mail_address=hoge@hogehoge.co.jp” and “filename = test.pdf”.

次に、認証サービス部120は、処理フローの実行要求を受信すると、当該実行要求に含まれるクライアントID及びクライアントシークレットに基づいて、アプリ認証を行う(ステップS904)。すなわち、認証サービス部120は、当該実行要求に含まれるクライアントID及びクライアントシークレットの組が、予め決められたクライアントID及びクライアントシークレットの組と一致するか否かを判定することで、アプリ認証を行う。   Next, when receiving the processing flow execution request, the authentication service unit 120 performs application authentication based on the client ID and the client secret included in the execution request (step S904). That is, the authentication service unit 120 performs application authentication by determining whether or not the combination of the client ID and the client secret included in the execution request matches a predetermined combination of the client ID and the client secret. .

そして、認証サービス部120は、アプリ認証に成功した場合、処理フローの実行要求をロジック処理部112に送信する(ステップS905)。なお、処理フローの実行要求には、フローIDと、スキャン画像ファイルと、ユーザ指定情報と、アプリIDとが含まれる。   Then, when the application authentication is successful, the authentication service unit 120 transmits a process flow execution request to the logic processing unit 112 (step S905). The processing flow execution request includes a flow ID, a scanned image file, user-specified information, and an application ID.

なお、認証サービス部120は、上記のステップS904でアプリ認証に失敗した場合、例えば、アプリ認証に失敗したことを示す通知をクライアントアプリケーション210に返信する。   Note that if the application authentication fails in step S904 described above, the authentication service unit 120 returns, for example, a notification indicating that the application authentication has failed to the client application 210.

クライアントアプリケーション210は、認証サービス部120との間の認証方式が「ユーザ認証」である場合、テナントIDと、ユーザIDと、パスワードとを含む処理フローの実行要求を認証サービス部120に送信する(ステップS906)。   When the authentication method with the authentication service unit 120 is “user authentication”, the client application 210 transmits a processing flow execution request including a tenant ID, a user ID, and a password to the authentication service unit 120 ( Step S906).

なお、テナントIDは、例えば、クライアントアプリケーション210が搭載された機器20のユーザが属するグループや会社等の組織を識別する識別情報である。また、ユーザIDは、例えば、クライアントアプリケーション210が搭載された機器20のユーザを識別する識別情報である。すなわち、処理フローの実行要求には、認証情報として、テナントIDと、ユーザIDと、パスワードとが含まれている。   The tenant ID is, for example, identification information for identifying an organization such as a group or a company to which the user of the device 20 on which the client application 210 is installed belongs. The user ID is identification information for identifying the user of the device 20 on which the client application 210 is mounted, for example. That is, the processing flow execution request includes the tenant ID, user ID, and password as authentication information.

テナントID、ユーザID、及びパスワードは、例えば、図10に示すサービス利用画面2100において、ユーザにより入力されても良い。なお、処理フローの実行要求には、上記と同様に、フローID、スキャン画像ファイル、及びユーザ指定情報も含まれる。   For example, the tenant ID, the user ID, and the password may be input by the user on the service use screen 2100 illustrated in FIG. The processing flow execution request includes a flow ID, a scanned image file, and user-specified information, as described above.

次に、認証サービス部120は、処理フローの実行要求を受信すると、当該実行要求に含まれるテナントID、ユーザID、及びパスワードに基づいて、ユーザ認証を行う(ステップS907)。すなわち、認証サービス部120は、当該実行要求に含まれるテナントID、ユーザID、及びパスワードの組が、予め決められたテナントID、ユーザID、及びパスワードの組と一致するか否かを判定することで、ユーザ認証を行う。   Next, when receiving the processing flow execution request, the authentication service unit 120 performs user authentication based on the tenant ID, user ID, and password included in the execution request (step S907). That is, the authentication service unit 120 determines whether the set of tenant ID, user ID, and password included in the execution request matches a predetermined set of tenant ID, user ID, and password. Then, user authentication is performed.

そして、認証サービス部120は、ユーザ認証に成功した場合、処理フローの実行要求をロジック処理部112に送信する(ステップS908)。なお、処理フローの実行要求には、フローIDと、スキャン画像ファイルと、ユーザ指定情報と、ユーザIDとが含まれる。   If the user authentication is successful, the authentication service unit 120 transmits a process flow execution request to the logic processing unit 112 (step S908). The processing flow execution request includes a flow ID, a scanned image file, user designation information, and a user ID.

なお、認証サービス部120は、上記のステップS907でユーザ認証に失敗した場合、例えば、ユーザ認証に失敗したことを示す通知をクライアントアプリケーション210に返信する。   Note that if the user authentication fails in step S907 described above, the authentication service unit 120 returns, for example, a notification indicating that the user authentication has failed to the client application 210.

クライアントアプリケーション210は、認証サービス部120との間の認証方式が「アクセストークン認証」である場合、アクセストークンを含む処理フローの実行要求を認証サービス部120に送信する(ステップS909)。   When the authentication method with the authentication service unit 120 is “access token authentication”, the client application 210 transmits a process flow execution request including the access token to the authentication service unit 120 (step S909).

なお、アクセストークンは、例えば、OAuthによる認証に用いられるトークンである。すなわち、処理フローの実行要求には、認証情報として、アクセストークンが含まれている。なお、処理フローの実行要求には、上記と同様に、フローID、スキャン画像ファイル、及びユーザ指定情報も含まれる。   The access token is a token used for authentication by OAuth, for example. That is, the processing flow execution request includes an access token as authentication information. The processing flow execution request includes a flow ID, a scanned image file, and user-specified information, as described above.

次に、認証サービス部120は、処理フローの実行要求を受信すると、当該実行要求に含まれるアクセストークンに基づいて、アクセストークン認証を行う(ステップS910)。すなわち、認証サービス部120は、当該実行要求に含まれるアクセストークンが正当であるか否かを判定することで、アクセストークン認証を行う。   Next, when receiving the execution request for the processing flow, the authentication service unit 120 performs access token authentication based on the access token included in the execution request (step S910). That is, the authentication service unit 120 performs access token authentication by determining whether or not the access token included in the execution request is valid.

そして、認証サービス部120は、アクセストークン認証に成功した場合、処理フローの実行要求をロジック処理部112に送信する(ステップS911)。なお、処理フローの実行要求には、フローID、スキャン画像ファイル、ユーザ指定情報、及びアクセストークンに関連付けられたユーザIDが含まれる。   If the access token authentication is successful, the authentication service unit 120 transmits a processing flow execution request to the logic processing unit 112 (step S911). The process flow execution request includes a flow ID, a scanned image file, user designation information, and a user ID associated with an access token.

なお、認証サービス部120は、上記のステップS910でアクセストークン認証に失敗した場合、例えば、アクセストークン認証に失敗したことを示す通知をクライアントアプリケーション210に返信する。   Note that if the access token authentication fails in step S910 described above, the authentication service unit 120 returns, for example, a notification indicating that the access token authentication has failed to the client application 210.

最後に、ロジック処理部112は、処理フローの実行処理を行う(ステップS9126)。すなわち、ロジック処理部112は、当該実行要求に含まれるフローIDの処理フロー情報1100に基づく一連の処理を実行する。   Finally, the logic processing unit 112 performs processing flow execution processing (step S9126). That is, the logic processing unit 112 executes a series of processing based on the processing flow information 1100 of the flow ID included in the execution request.

そして、ロジック処理部112は、処理フローの実行処理の処理結果をクライアントアプリケーション210に返信する。これにより、本実施形態に係るサービス提供システム10は、機器20に対して、「スキャン To メール配信」サービスを提供することができる。   Then, the logic processing unit 112 returns the processing result of the processing flow execution process to the client application 210. Thereby, the service providing system 10 according to the present embodiment can provide the “scan to mail delivery” service to the device 20.

ここで、クライアントアプリケーション210と認証サービス部120との間の認証方式が「アプリ認証」、「ユーザ認証」、又は「アクセストークン認証」のいずれであるかは、例えば、クライアントアプリケーション210毎に予め決められている。したがって、クライアントアプリケーション210は、例えば、認証方式の指定を含む処理フローの実行要求を認証サービス部120に送信する。ただし、例えば、図10に示すサービス利用画面2100において、いずれの認証方式を利用するかをユーザが選択することができても良い。   Here, whether the authentication method between the client application 210 and the authentication service unit 120 is “application authentication”, “user authentication”, or “access token authentication” is determined for each client application 210 in advance, for example. It has been. Therefore, for example, the client application 210 transmits a processing flow execution request including designation of an authentication method to the authentication service unit 120. However, for example, the user may be able to select which authentication method to use on the service use screen 2100 shown in FIG.

以上のように、本実施形態に係る情報処理システム1では、サービス提供システム10が機器20に対してサービスを提供する前に、種々の認証方式により機器20との間で認証を行う。すなわち、本実施形態に係る情報処理システム1では、機器20に搭載されたクライアントアプリケーション210が一連の処理を実行させる前に、当該クライアントアプリケーション210の認証を行う。これにより、本実施形態に係るサービス提供システム10は、正当な利用者(機器20に搭載されたクライアントアプリケーション210又は機器20のユーザ)に限り、サービスを提供することができる。   As described above, in the information processing system 1 according to the present embodiment, before the service providing system 10 provides a service to the device 20, authentication is performed with the device 20 by various authentication methods. In other words, in the information processing system 1 according to the present embodiment, the client application 210 installed in the device 20 authenticates the client application 210 before executing a series of processes. Thereby, the service providing system 10 according to the present embodiment can provide a service only to an authorized user (the client application 210 installed in the device 20 or the user of the device 20).

以降では、処理フローの実行処理(図9のステップS912の処理)の詳細について、図11を参照しながら説明する。図11は、本実施形態に係る処理フローの実行処理の一例を示すシーケンス図である。   Hereinafter, the details of the process flow execution process (the process of step S912 in FIG. 9) will be described with reference to FIG. FIG. 11 is a sequence diagram illustrating an example of processing flow execution processing according to the present embodiment.

フロー実行部301は、処理フローの実行要求を受信すると、ジョブ情報の登録要求をジョブ情報管理部401に送信する(ステップS1101)。ここで、クライアントアプリケーション210と認証サービス部120との間の認証方式が「アプリ認証」であった場合、ジョブ情報の登録要求には、アプリIDと、フローIDとが含まれる。一方、クライアントアプリケーション210と認証サービス部120との間の認証方式が「ユーザ認証」又は「アクセストークン認証」であった場合、ジョブ情報の登録要求には、ユーザIDと、フローIDとが含まれる。   Upon receiving the processing flow execution request, the flow execution unit 301 transmits a job information registration request to the job information management unit 401 (step S1101). When the authentication method between the client application 210 and the authentication service unit 120 is “application authentication”, the job information registration request includes an application ID and a flow ID. On the other hand, when the authentication method between the client application 210 and the authentication service unit 120 is “user authentication” or “access token authentication”, the job information registration request includes a user ID and a flow ID. .

ジョブ情報管理部401は、ジョブ情報の登録要求を受信すると、ジョブ情報を作成して、ジョブ情報記憶部150に記憶する(ステップS1102)。そして、ジョブ情報管理部401は、登録結果をフロー実行部301に返信する。これにより、ジョブ情報がサービス提供システム10に登録される。なお、ジョブ情報管理部401から返信される登録結果には、ジョブIDが含まれる。   Upon receiving the job information registration request, the job information management unit 401 creates job information and stores it in the job information storage unit 150 (step S1102). Then, the job information management unit 401 returns the registration result to the flow execution unit 301. As a result, the job information is registered in the service providing system 10. The registration result returned from the job information management unit 401 includes a job ID.

ここで、ジョブ情報記憶部150に記憶されたジョブ情報について、図12を参照しながら説明する。図12は、ジョブ情報の一例を示す図である。   Here, the job information stored in the job information storage unit 150 will be described with reference to FIG. FIG. 12 is a diagram illustrating an example of job information.

図12に示すように、ジョブ情報は、ジョブIDと、アプリ名と、フローIDと、作成日と、状態と、アプリIDと、ユーザIDとを有する。   As shown in FIG. 12, the job information includes a job ID, an application name, a flow ID, a creation date, a state, an application ID, and a user ID.

ジョブIDは、ジョブを識別する識別情報である。アプリ名は、アプリIDに対応するアプリケーション(クライアントアプリケーション210又はアプリ情報1000)の名称である。フローIDは、ジョブ情報の登録要求に含まれるフローIDである。作成日は、ジョブ情報が作成された年月日である。   The job ID is identification information for identifying a job. The application name is the name of the application (client application 210 or application information 1000) corresponding to the application ID. The flow ID is a flow ID included in the job information registration request. The creation date is the date on which the job information is created.

状態は、ジョブの状態である。状態には、例えば、ジョブが実行される前であることを示す「accepted」、ジョブが実行中であることを示す「processing」がある。また、状態には、例えば、ジョブの実行中にエラーが発生したことを示す「error」、ジョブの実行が正常終了したことを示す「completed」等がある。なお、ジョブ情報管理部401は、状態を「accepted」としてジョブ情報を作成する。   The status is the status of the job. The status includes, for example, “accepted” indicating that the job is not being executed and “processing” indicating that the job is being executed. The status includes, for example, “error” indicating that an error has occurred during execution of the job, “completed” indicating that execution of the job has ended normally, and the like. Note that the job information management unit 401 creates job information with the state “accepted”.

アプリIDは、ジョブ情報の登録要求に含まれていたアプリIDである。なお、ジョブ情報の登録要求にアプリIDが含まれない場合(すなわち、クライアントアプリケーション210と認証サービス部120との間の認証方式が「アプリ認証」であった場合)、アプリIDは、設定されない。   The application ID is an application ID included in the job information registration request. If the application ID is not included in the job information registration request (that is, if the authentication method between the client application 210 and the authentication service unit 120 is “application authentication”), the application ID is not set.

ユーザIDは、ジョブ情報の登録要求に含まれていたユーザIDである。なお、ジョブ情報の登録要求にユーザIDが含まれない場合(すなわち、クライアントアプリケーション210と認証サービス部120との間の認証方式が「ユーザ認証」又は「アクセストークン認証」であった場合)、ユーザIDは、設定されない。   The user ID is a user ID included in the job information registration request. Note that when the user ID is not included in the job information registration request (that is, when the authentication method between the client application 210 and the authentication service unit 120 is “user authentication” or “access token authentication”), the user The ID is not set.

このように、ジョブ情報管理部401は、ジョブID、アプリ名、フローID、作成日、状態、アプリID、及びユーザID等が含まれるジョブ情報を作成する。そして、ジョブ情報管理部401は、作成したジョブ情報をジョブ情報記憶部150に記憶させる。   As described above, the job information management unit 401 creates job information including a job ID, an application name, a flow ID, a creation date, a state, an application ID, a user ID, and the like. Then, the job information management unit 401 stores the created job information in the job information storage unit 150.

次に、フロー実行部301は、処理フロー情報の取得要求をアプリ管理部111に送信する(ステップS1103)。なお、処理フロー情報の取得要求には、フローIDが含まれる。   Next, the flow execution unit 301 transmits a process flow information acquisition request to the application management unit 111 (step S1103). The process flow information acquisition request includes a flow ID.

アプリ管理部111は、処理フロー情報の取得要求を受信すると、当該取得要求に含まれるフローIDの処理フロー情報1100をアプリ情報記憶部140から取得する(ステップS1104)。そして、アプリ管理部111は、アプリ情報記憶部140から取得した処理フロー情報1100をフロー実行部301に返信する。ここで、以降では、アプリ管理部111は、図8に示す処理フロー情報1100をフロー実行部301に返信したものとして説明する。   Upon receiving the processing flow information acquisition request, the application management unit 111 acquires the processing flow information 1100 of the flow ID included in the acquisition request from the application information storage unit 140 (step S1104). Then, the application management unit 111 returns the processing flow information 1100 acquired from the application information storage unit 140 to the flow execution unit 301. Hereafter, description will be made assuming that the application management unit 111 returns the processing flow information 1100 illustrated in FIG. 8 to the flow execution unit 301.

次に、フロー実行部301は、アプリ管理部111から返信された処理フロー情報1100に基づいて、コンポーネントの取得要求をコンポーネント管理部302に送信する(ステップS1105)。すなわち、フロー実行部301は、図8に示す処理フロー情報1100の処理定義1102に定義されている「ocr:ocr_process」を含むコンポーネントの取得要求をコンポーネント管理部302に送信する。   Next, the flow execution unit 301 transmits a component acquisition request to the component management unit 302 based on the processing flow information 1100 returned from the application management unit 111 (step S1105). That is, the flow execution unit 301 transmits a component acquisition request including “ocr: ocr_process” defined in the process definition 1102 of the process flow information 1100 illustrated in FIG. 8 to the component management unit 302.

コンポーネント管理部302は、コンポーネントの取得要求を受信すると、当該取得要求に含まれる「ocr:ocr_process」に対応するOCRコンポーネント1310を生成する(ステップS1106)。なお、OCRコンポーネント1310の生成は、コンポーネント共通I/F1300を用いて行うことができる。   Upon receiving the component acquisition request, the component management unit 302 generates an OCR component 1310 corresponding to “ocr: ocr_process” included in the acquisition request (step S1106). The OCR component 1310 can be generated using the component common I / F 1300.

そして、コンポーネント管理部302は、生成したOCRコンポーネント1310をフロー実行部301に返信する。すなわち、コンポーネント管理部302は、例えば、OCRコンポーネント1310が展開されたメモリ(例えばRAM14)上のアドレスをフロー実行部301に返信する。   Then, the component management unit 302 returns the generated OCR component 1310 to the flow execution unit 301. That is, for example, the component management unit 302 returns the address on the memory (for example, the RAM 14) in which the OCR component 1310 is expanded to the flow execution unit 301.

フロー実行部301は、OCRコンポーネント1310が返信されると、コンポーネントの処理実行要求を、当該OCRコンポーネント1310に送信する(ステップS1107)。なお、コンポーネントの処理実行要求には、データと、パラメータとが含まれる。   When the OCR component 1310 is returned, the flow execution unit 301 transmits a component processing execution request to the OCR component 1310 (step S1107). The component processing execution request includes data and parameters.

ここで、ステップS1107において、データとは、データ型「InputStream」として、認証サービス部120から受信した電子ファイル(処理フローの実行要求に含まれるスキャン画像ファイル)である。すなわち、フロー実行部301は、処理フロー実行要求に含まれるスキャン画像ファイルを、単に「データ」として(データ型を意識することなく)、OCRコンポーネント1310に送信する。以降では、このようにデータ型を意識しない電子ファイル等を、単に「データ」と表す。   Here, in step S1107, the data is an electronic file (scanned image file included in the execution request for the processing flow) received from the authentication service unit 120 as the data type “InputStream”. That is, the flow execution unit 301 simply transmits the scan image file included in the processing flow execution request to the OCR component 1310 as “data” (without considering the data type). Hereinafter, an electronic file or the like that is not conscious of the data type is simply represented as “data”.

また、処理定義1102にはオプションパラメータが定義されていないため、ステップS1107において、パラメータには、nullが指定される。   Since no option parameter is defined in the process definition 1102, null is designated as the parameter in step S1107.

OCRコンポーネント1310は、コンポーネントの処理実行要求を受信すると、型変換要求を型変換管理部304に送信する(ステップS1108)。なお、当該型変換要求には、データと、OCRコンポーネント1310が扱うことができるデータ型を示す「LocalFilePath」の指定とが含まれる。   Upon receiving the component processing execution request, the OCR component 1310 transmits a type conversion request to the type conversion management unit 304 (step S1108). The type conversion request includes data and designation of “LocalFilePath” indicating a data type that can be handled by the OCR component 1310.

型変換管理部304は、型変換要求を受信すると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする(ステップS1109)。   When receiving the type conversion request, the type conversion management unit 304 checks whether or not the data type of the data included in the type conversion request matches the designated data type (step S1109).

ここで、型変換要求に含まれるデータのデータ型は「InputStream」である一方、指定されたデータ型は「LocalFilePath」である。したがって、型変換管理部304は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致しないものと判断する。   Here, the data type of the data included in the type conversion request is “InputStream”, while the designated data type is “LocalFilePath”. Therefore, the type conversion management unit 304 determines that the data type of the data included in the type conversion request does not match the specified data type.

すると、型変換管理部304は、型変換情報テーブル3000を参照して、データ型「InputStream」を「LocalFilePath」に変換するための型変換を特定する(ここでは、第1の型変換1410が特定される。)。そして、型変換管理部304は、特定した第1の型変換1410を生成する(ステップS1110)。なお、第1の型変換1410の生成は、型変換共通I/F1400を用いて行うことができる。   Then, the type conversion management unit 304 refers to the type conversion information table 3000 and specifies type conversion for converting the data type “InputStream” to “LocalFilePath” (here, the first type conversion 1410 specifies). .) Then, the type conversion management unit 304 generates the identified first type conversion 1410 (step S1110). The first type conversion 1410 can be generated using the type conversion common I / F 1400.

次に、型変換管理部304は、型変換処理の実行要求を第1の型変換1410に送信する(ステップS1111)。なお、当該実行要求には、データが含まれる。   Next, the type conversion management unit 304 transmits an execution request for the type conversion process to the first type conversion 1410 (step S1111). The execution request includes data.

第1の型変換1410は、型変換の実行要求を受信すると、当該実行要求に含まれるデータのデータ型を「InputStream」から「LocalFilePath」に変換する型変換処理を行う(ステップS1112)。そして、第1の型変換1410は、データ型が変換されたデータを型変換管理部304に返信する。   Upon receiving the type conversion execution request, the first type conversion 1410 performs a type conversion process for converting the data type of the data included in the execution request from “InputStream” to “LocalFilePath” (step S1112). Then, the first type conversion 1410 returns the data whose data type has been converted to the type conversion management unit 304.

型変換管理部304は、第1の型変換1410からデータを受信すると、当該データをOCRコンポーネント1310に送信する(ステップS1113)。   When receiving the data from the first type conversion 1410, the type conversion management unit 304 transmits the data to the OCR component 1310 (step S1113).

OCRコンポーネント1310は、型変換管理部304からデータを受信すると、当該データに対して処理を実行する(ステップS1114)。すなわち、OCRコンポーネント1310は、ドキュメントサービス部130のOCR処理部131により、当該データ(データ型「LocalFilePath」)により示されるスキャン画像ファイルのOCR処理を行う。   When the OCR component 1310 receives data from the type conversion management unit 304, the OCR component 1310 executes processing on the data (step S1114). That is, the OCR component 1310 uses the OCR processing unit 131 of the document service unit 130 to perform OCR processing of the scanned image file indicated by the data (data type “LocalFilePath”).

そして、OCRコンポーネント1310は、処理結果を示すデータをフロー実行部301に返信する。なお、ここで返信されるデータは、OCRコンポーネント1310によりOCR処理されたスキャン画像ファイルを示すデータ(データ型「LocalFilePath」)である。   Then, the OCR component 1310 returns data indicating the processing result to the flow execution unit 301. Note that the data returned here is data (data type “LocalFilePath”) indicating a scanned image file that has been OCR processed by the OCR component 1310.

次に、フロー実行部301は、処理フロー情報1100に基づいて、コンポーネントの取得要求をコンポーネント管理部302に送信する(ステップS1115)。すなわち、フロー実行部301は、図8に示す処理フロー情報1100の処理定義1103に定義されている「mail:send」を含むコンポーネントの取得要求をコンポーネント管理部302に送信する。   Next, the flow execution unit 301 transmits a component acquisition request to the component management unit 302 based on the processing flow information 1100 (step S1115). That is, the flow execution unit 301 transmits a component acquisition request including “mail: send” defined in the process definition 1103 of the process flow information 1100 illustrated in FIG. 8 to the component management unit 302.

コンポーネント管理部302は、コンポーネントの取得要求を受信すると、当該取得要求に含まれる「mail:send」に対応するメール配信コンポーネント1320を生成する(ステップS1116)。なお、メール配信コンポーネント1320の生成は、コンポーネント共通I/F1300を用いて行うことができる。   Upon receiving the component acquisition request, the component management unit 302 generates a mail delivery component 1320 corresponding to “mail: send” included in the acquisition request (step S1116). The mail delivery component 1320 can be generated using the component common I / F 1300.

そして、コンポーネント管理部302は、生成したメール配信コンポーネント1320をフロー実行部301に返信する。すなわち、コンポーネント管理部302は、例えば、メール配信コンポーネント1320が展開されたメモリ(例えばRAM14)上のアドレスをフロー実行部301に返信する。   Then, the component management unit 302 returns the generated mail delivery component 1320 to the flow execution unit 301. That is, for example, the component management unit 302 returns the address on the memory (for example, the RAM 14) where the mail delivery component 1320 is expanded to the flow execution unit 301.

フロー実行部301は、メール配信コンポーネント1320が返信されると、コンポーネントの処理実行要求を、当該メール配信コンポーネント1320に送信する(ステップS1117)。なお、コンポーネントの処理実行要求には、データと、パラメータとが含まれる。   When the mail delivery component 1320 is returned, the flow execution unit 301 transmits a component processing execution request to the mail delivery component 1320 (step S1117). The component processing execution request includes data and parameters.

ここで、ステップS1117において、パラメータには、処理定義1103のオプションパラメータ「mail_address=null&filename=null」と、ユーザ指定情報とが含まれる。   Here, in step S 1117, the parameters include an optional parameter “mail_address = null & filename = null” of the process definition 1103 and user designation information.

メール配信コンポーネント1320は、コンポーネントの処理実行要求を受信すると、型変換要求を型変換管理部304に送信する(ステップS1118)。なお、当該型変換要求には、データと、メール配信コンポーネント1320が扱うことができるデータ型を示す「LocalFilePath」の指定とが含まれる。   Upon receiving the component processing execution request, the mail delivery component 1320 transmits a type conversion request to the type conversion management unit 304 (step S1118). The type conversion request includes data and designation of “LocalFilePath” indicating a data type that can be handled by the mail delivery component 1320.

型変換管理部304は、型変換要求を受信すると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする(ステップS1119)。   When receiving the type conversion request, the type conversion management unit 304 checks whether or not the data type of the data included in the type conversion request matches the designated data type (step S1119).

ここで、型変換要求に含まれるデータのデータ型は「LocalFilePath」であり、指定されたデータ型も「LocalFilePath」である。したがって、型変換管理部304は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するものと判断する。   Here, the data type of the data included in the type conversion request is “LocalFilePath”, and the specified data type is also “LocalFilePath”. Therefore, the type conversion management unit 304 determines that the data type of the data included in the type conversion request matches the designated data type.

すると、型変換管理部304は、型変換要求に含まれるデータをメール配信コンポーネント1320に送信する(ステップS1120)。このように、データ型のチェック(ステップS1118の処理)において、データのデータ型と、指定されたデータ型とが一致すると判断された場合には、型変換管理部304は、型変換の生成を行わない。   Then, the type conversion management unit 304 transmits data included in the type conversion request to the mail delivery component 1320 (step S1120). As described above, in the data type check (processing in step S1118), when it is determined that the data type of the data matches the designated data type, the type conversion management unit 304 generates the type conversion. Not performed.

メール配信コンポーネント1320は、型変換管理部304からデータを受信すると、パラメータに基づいて、当該データに対して処理を実行する(ステップS1121)。すなわち、メール配信コンポーネント1320は、ドキュメントサービス部130のメール配信部132により、当該データにより示される電子ファイルを、パラメータに基づいて、メール配信する。   When the mail delivery component 1320 receives data from the type conversion management unit 304, the mail delivery component 1320 executes processing on the data based on the parameters (step S1121). That is, the mail delivery component 1320 delivers the electronic file indicated by the data by the mail delivery unit 132 of the document service unit 130 based on the parameters.

より具体的には、メール配信コンポーネント1320は、まず、パラメータに含まれるオプションパラメータにユーザ指定情報を定義して「mail_address=hoge@hogehoge.co.jp&filename=test.pdf」とする。次に、メール配信コンポーネント1320は、メール配信部132により、当該データにより示される電子ファイル(すなわち、OCR処理後のスキャン画像ファイル)のファイル名を「test.pdf」とした電子ファイルを添付したメールを作成する。最後に、メール配信コンポーネント1320は、メール配信部132により、作成したメールを「hoge@hogehoge.co.jp」宛に配信(送信)する。   More specifically, the mail delivery component 1320 first defines user designation information in the option parameter included in the parameter, and sets it as “mail_address=hoge@hogehoge.co.jp&filename=test.pdf”. Next, the mail delivery component 1320 causes the mail delivery unit 132 to attach an electronic file with the file name “test.pdf” of the electronic file indicated by the data (that is, the scanned image file after the OCR process). Create Finally, the mail delivery component 1320 delivers (sends) the created mail to “hoge@hogehoge.co.jp” by the mail delivery unit 132.

そして、メール配信コンポーネント1320は、処理結果を示すデータをフロー実行部301に返信する。なお、ここで返信されるデータは、例えば、メール配信コンポーネント1320により正常にメールが配信されたことを示す情報等である。   Then, the mail delivery component 1320 returns data indicating the processing result to the flow execution unit 301. Note that the data returned here is, for example, information indicating that the mail is normally distributed by the mail distribution component 1320.

フロー実行部201は、メール配信コンポーネント1320からデータを受信すると、ジョブ情報の更新要求をジョブ情報管理部401に送信する(ステップS1122)。なお、ジョブ情報の更新要求には、上記のステップS1102で返信されたジョブIDが含まれる。   When receiving data from the mail delivery component 1320, the flow execution unit 201 transmits a job information update request to the job information management unit 401 (step S1122). The job information update request includes the job ID returned in step S1102.

ジョブ情報管理部401は、ジョブ情報の更新要求を受信すると、ジョブ情報記憶部150に記憶されているジョブ情報のうち、当該更新要求に含まれるジョブIDのジョブ情報を更新する(ステップS1123)。すなわち、ジョブ情報管理部401は、当該ジョブIDのジョブ情報に含まれる状態を、「completed」に更新する。これにより、ジョブの実行が正常終了したことが管理される。   When receiving the job information update request, the job information management unit 401 updates the job information of the job ID included in the update request among the job information stored in the job information storage unit 150 (step S1123). That is, the job information management unit 401 updates the state included in the job information of the job ID to “completed”. As a result, it is managed that the job execution has ended normally.

以上のように、本実施形態に係るサービス提供システム10は、処理フロー情報1100に基づいて、各コンポーネントによる処理をそれぞれ行うことで、一連の処理(処理フロー)を実行する。これにより、本実施形態に係るサービス提供システム10は、当該一連の処理により実現されるサービスを提供することができる。   As described above, the service providing system 10 according to the present embodiment executes a series of processing (processing flow) by performing processing by each component based on the processing flow information 1100. Thereby, the service providing system 10 according to the present embodiment can provide a service realized by the series of processes.

なお、例えば、一連の処理の実行中にエラー等が発生した場合、フロー実行部301は、ジョブ情報の更新要求をジョブ情報管理部401に送信して、ジョブ情報の状態を「error」に更新する。   For example, when an error or the like occurs during the execution of a series of processing, the flow execution unit 301 transmits a job information update request to the job information management unit 401 and updates the status of the job information to “error”. To do.

以降では、クライアントアプリケーション210がジョブ情報を参照する場合について説明する。クライアントアプリケーション210は、ジョブ情報を参照することで、例えば、エラー原因の解析等を行うことができるようになる。   Hereinafter, a case where the client application 210 refers to job information will be described. By referring to the job information, the client application 210 can analyze the cause of the error, for example.

まず、ジョブ情報の参照が可能なアプリケーション(他のクライアントアプリケーションやアプリ情報1000)を登録する処理について、図13を参照しながら説明する。図13は、参照可能アプリケーションの登録処理の一例を示すシーケンス図である。   First, a process of registering an application (other client application or application information 1000) that can reference job information will be described with reference to FIG. FIG. 13 is a sequence diagram illustrating an example of registration processing of a referable application.

まず、クライアントアプリケーション210は、参照可能アプリケーションの登録要求を認証サービス部120に送信する(ステップS1301)。このような登録要求は、例えば、ユーザが参照可能アプリケーションの登録操作を行うことにより送信することができる。   First, the client application 210 transmits a registration request for a referable application to the authentication service unit 120 (step S1301). Such a registration request can be transmitted, for example, when a user performs a registration operation of a referable application.

なお、参照可能アプリケーションの登録要求には、クライアントアプリケーション210のアプリIDと、ジョブ情報を参照することが可能なアプリケーションのアプリID(参照可能アプリID)と、テナントIDと、ユーザIDと、パスワードとが含まれる。   The registration request for the referenceable application includes the application ID of the client application 210, the application ID of the application that can refer to the job information (referenceable application ID), the tenant ID, the user ID, and the password. Is included.

認証サービス部120は、参照可能アプリケーションの登録要求を受信すると、当該登録要求に含まれるテナントID、ユーザID、及びパスワードに基づいて、ユーザ認証を行う(ステップS1302)。すなわち、認証サービス部120は、当該登録要求に含まれるテナントID、ユーザID、及びパスワードの組が、予め決められたテナントID、ユーザID、及びパスワードの組と一致するか否かを判定することで、ユーザ認証を行う。   When receiving the registration request for the referable application, the authentication service unit 120 performs user authentication based on the tenant ID, the user ID, and the password included in the registration request (step S1302). That is, the authentication service unit 120 determines whether the set of tenant ID, user ID, and password included in the registration request matches a predetermined set of tenant ID, user ID, and password. Then, user authentication is performed.

そして、認証サービス部120は、ユーザ認証に成功した場合、参照可能アプリケーションの登録要求をアプリ管理部111に送信する(ステップS1303)。なお、参照可能アプリケーションの登録要求には、クライアントアプリケーション210のアプリIDと、参照可能アプリIDとが含まれる。   If the user authentication is successful, the authentication service unit 120 transmits a request for registering a referenceable application to the application management unit 111 (step S1303). The registration request for the referenceable application includes the application ID of the client application 210 and the referenceable application ID.

アプリ管理部111は、参照可能アプリケーションの登録要求を受信すると、当該登録要求に含まれるアプリIDと参照可能IDとを関連付けた参照情報を作成し、参照情報記憶部160に記憶する(ステップS1304)。そして、アプリ管理部111は、登録結果をクライアントアプリケーション210に返信する。これにより、参照情報がサービス提供システム10に登録される。   Upon receiving the request for registering a referenceable application, the application management unit 111 creates reference information in which the application ID included in the registration request is associated with the referenceable ID, and stores the reference information in the reference information storage unit 160 (step S1304). . Then, the application management unit 111 returns the registration result to the client application 210. Thereby, the reference information is registered in the service providing system 10.

ここで、参照情報記憶部160に記憶された参照情報について、図14を参照しながら説明する。図14は、参照情報の一例を示す図である。   Here, reference information stored in the reference information storage unit 160 will be described with reference to FIG. FIG. 14 is a diagram illustrating an example of reference information.

図14に示すように、参照情報は、アプリIDと、参照可能アプリIDとを有する。アプリIDは、ジョブ情報の参照を行うアプリケーション(クライアントアプリケーション210又はアプリ情報1000)のアプリIDである。参照可能アプリIDは、ジョブ情報を参照することが可能な他のアプリケーション(クライアントアプリケーション210又はアプリ情報1000)のアプリIDである。   As illustrated in FIG. 14, the reference information includes an application ID and a referenceable application ID. The application ID is an application ID of an application (client application 210 or application information 1000) that refers to job information. The referable application ID is an application ID of another application (client application 210 or application information 1000) that can refer to the job information.

このように、参照情報記憶部160に記憶されている参照情報には、アプリIDと、当該アプリIDのアプリケーションがジョブ情報を参照することができる他のアプリケーションのアプリIDとが関連付けられている。これにより、後述するように、クライアントアプリケーション210が、他のクライアントアプリケーション210又はアプリ情報1000のジョブ情報を参照する場合のアクセス制御を行うことができる。   As described above, the reference information stored in the reference information storage unit 160 is associated with the application ID and the application ID of another application with which the application with the application ID can refer to the job information. Thereby, as will be described later, it is possible to perform access control when the client application 210 refers to the job information of another client application 210 or the application information 1000.

次に、クライアントアプリケーション210やアプリ情報1000等がジョブ情報を参照する場合の処理について、説明する。まず、認証サービス部120との間の認証方式が「アプリ認証」であるクライアントアプリケーション210がジョブ情報を参照する場合の処理について、図15を参照しながら説明する。図15は、ジョブ情報の参照処理の一例を示すシーケンス図である。   Next, processing when the client application 210, the application information 1000, and the like refer to job information will be described. First, processing when a client application 210 whose authentication method with the authentication service unit 120 is “application authentication” refers to job information will be described with reference to FIG. 15. FIG. 15 is a sequence diagram illustrating an example of a job information reference process.

まず、クライアントアプリケーション210は、ジョブ情報の参照要求を認証サービス部120に送信する(ステップS1501)。このような参照要求は、例えば図16に示すジョブ情報の参照画面3100において、ユーザがジョブID入力欄3101にジョブIDを入力した上で、参照ボタン3102を押下することにより行うことができる。   First, the client application 210 transmits a job information reference request to the authentication service unit 120 (step S1501). Such a reference request can be made by, for example, pressing a reference button 3102 after the user inputs a job ID in the job ID input field 3101 on the job information reference screen 3100 shown in FIG.

なお、ジョブ情報の参照要求には、ジョブID入力欄3101に入力されたジョブIDと、クライアントシークレットとが含まれる。   Note that the job information reference request includes the job ID input in the job ID input field 3101 and the client secret.

認証サービス部120は、ジョブ情報の参照要求を受信すると、当該参照要求に含まれるクライアントID及びクライアントシークレットに基づいて、アプリ認証を行う(ステップS1502)。すなわち、認証サービス部120は、当該参照要求に含まれるクライアントID及びクライアントシークレットの組が、予め決められたクライアントID及びクライアントシークレットの組と一致するか否かを判定することで、アプリ認証を行う。   Upon receiving the job information reference request, the authentication service unit 120 performs application authentication based on the client ID and the client secret included in the reference request (step S1502). That is, the authentication service unit 120 performs application authentication by determining whether or not the combination of the client ID and the client secret included in the reference request matches a predetermined combination of the client ID and the client secret. .

そして、認証サービス部120は、アプリ認証に成功した場合、ジョブ情報の参照要求をアクセス制御部402に送信する(ステップS1503)。なお、ジョブ情報の参照要求には、ジョブIDと、アプリIDとが含まれる。   Then, when the application authentication is successful, the authentication service unit 120 transmits a job information reference request to the access control unit 402 (step S1503). The job information reference request includes a job ID and an application ID.

なお、認証サービス部120は、上記のステップS1502でアプリ認証に失敗した場合、例えば、アプリ認証に失敗したことを示す通知をクライアントアプリケーション210に返信する。   Note that if the application authentication fails in step S1502 described above, the authentication service unit 120 returns, for example, a notification indicating that the application authentication has failed to the client application 210.

アクセス制御部402は、ジョブ情報の参照要求を受信すると、ジョブ情報の取得要求をジョブ情報管理部401に送信する(ステップS1504)。なお、ジョブ情報の取得要求には、ジョブIDが含まれる。   Upon receiving the job information reference request, the access control unit 402 transmits a job information acquisition request to the job information management unit 401 (step S1504). The job information acquisition request includes a job ID.

ジョブ情報管理部401は、ジョブ情報の取得要求を受信すると、当該取得要求に含まれるジョブIDのジョブ情報をジョブ情報記憶部150から取得する(ステップS1505)。例えば、ジョブ情報の取得要求に含まれるジョブIDが「ジョブ4」である場合、ジョブ情報管理部401は、ジョブID「ジョブ4」のジョブ情報をジョブ情報記憶部150から取得する。なお、ジョブ情報の取得要求に複数のジョブIDが含まれる場合、ジョブ情報管理部401は、複数のジョブ情報をジョブ情報記憶部150から取得する。   Upon receiving the job information acquisition request, the job information management unit 401 acquires job information of the job ID included in the acquisition request from the job information storage unit 150 (step S1505). For example, when the job ID included in the job information acquisition request is “job 4”, the job information management unit 401 acquires the job information of the job ID “job 4” from the job information storage unit 150. When a plurality of job IDs are included in the job information acquisition request, the job information management unit 401 acquires a plurality of job information from the job information storage unit 150.

そして、ジョブ情報管理部401は、取得したジョブ情報をアクセス制御部402に返信する。   Then, the job information management unit 401 returns the acquired job information to the access control unit 402.

次に、アクセス制御部402は、アクセス権のチェックを行う(ステップS1506)。すなわち、アクセス制御部402は、ジョブ情報の参照要求に含まれるアプリIDと、上記のステップS1502で取得されたジョブ情報に含まれるアプリIDとが一致するか否かを判定する。   Next, the access control unit 402 performs access right check (step S1506). In other words, the access control unit 402 determines whether or not the application ID included in the job information reference request matches the application ID included in the job information acquired in step S1502.

そして、アクセス制御部402は、ジョブ情報の参照要求に含まれるアプリIDと、上記のステップS1502で取得されたジョブ情報に含まれるアプリIDとが一致すると判定した場合、ジョブ情報をクライアントアプリケーション210に返信する。   If the access control unit 402 determines that the application ID included in the job information reference request matches the application ID included in the job information acquired in step S1502, the access control unit 402 sends the job information to the client application 210. Send back.

一方、アクセス制御部402は、これらのアプリIDが一致しないと判定した場合、参照可能アプリIDの取得要求をアプリ管理部111に送信する(ステップS1508)。なお、参照可能アプリIDの取得要求には、ジョブ情報の参照要求に含まれるアプリIDが含まれる。   On the other hand, if the access control unit 402 determines that these application IDs do not match, the access control unit 402 transmits an acquisition request for a referenceable application ID to the application management unit 111 (step S1508). The acquisition request for the referenceable application ID includes the application ID included in the job information reference request.

なお、上記のステップS1502で複数のジョブ情報が取得された場合、これらのジョブ情報のうち、上記のステップS1506でアプリIDが一致しないと判定されたジョブ情報について、ステップS1508以降の処理を行えば良い。   If a plurality of pieces of job information are acquired in step S1502, the job information determined in step S1506 that the application IDs do not match among these pieces of job information can be processed in steps S1508 and subsequent steps. good.

次に、アプリ管理部111は、参照可能アプリIDの取得要求を受信すると、当該取得要求に含まれるアプリIDの参照情報を取得する(ステップS1508)。そして、アプリ管理部111は、取得した参照情報に含まれる参照可能アプリIDをアクセス制御部402に返信する。   Next, when receiving an acquisition request for a referenceable application ID, the application management unit 111 acquires reference information for an application ID included in the acquisition request (step S1508). Then, the application management unit 111 returns a referenceable application ID included in the acquired reference information to the access control unit 402.

次に、アクセス制御部402は、アクセス権のチェックを行う(ステップS1509)。すなわち、アクセス制御部402は、上記のステップS1502で取得されたジョブ情報含まれるアプリIDと、参照可能アプリIDのうちの少なくとも一の参照可能アプリIDとが一致するか否かを判定する。   Next, the access control unit 402 performs access right check (step S1509). That is, the access control unit 402 determines whether or not the application ID included in the job information acquired in step S1502 matches at least one referenceable application ID of the referenceable application IDs.

そして、アクセス制御部402は、当該アプリIDと、参照可能アプリIDのうちの少なくとも一の参照可能アプリIDとが一致すると判定した場合、ジョブ情報をクライアントアプリケーション210に返信する。   If the access control unit 402 determines that the application ID matches at least one of the referable application IDs, the access control unit 402 returns job information to the client application 210.

一方、アクセス制御部402は、当該アプリIDと、全ての参照可能アプリIDとが一致しないと判定した場合、ジョブ情報の参照が許可されていないことを示す通知をクライアントアプリケーション210に返信する。したがって、この場合、クライアントアプリケーション210は、ジョブ情報を参照することができない。   On the other hand, if the access control unit 402 determines that the application ID and all referenceable application IDs do not match, the access control unit 402 returns a notification indicating that reference to job information is not permitted to the client application 210. Therefore, in this case, the client application 210 cannot refer to the job information.

クライアントアプリケーション210は、アクセス制御部402からジョブ情報が返信された場合、例えば図16に示すジョブ情報の参照画面3100のジョブ情報欄3103にジョブ情報を表示する(ステップS1510)。これにより、クライアントアプリケーション210は、当該クライアントアプリケーション210のアプリIDが含まれるジョブ情報と、参照可能アプリIDが含まれるジョブ情報とを表示することができる。したがって、機器20のユーザは、クライアントアプリケーション210により表示されたジョブ情報を参照することで、例えば、エラーが発生したジョブのエラー原因解析等を行うことができるようになる。   When job information is returned from the access control unit 402, the client application 210 displays the job information, for example, in the job information column 3103 of the job information reference screen 3100 shown in FIG. 16 (step S1510). Accordingly, the client application 210 can display job information including the application ID of the client application 210 and job information including the referable application ID. Accordingly, by referring to the job information displayed by the client application 210, the user of the device 20 can perform error cause analysis of a job in which an error has occurred, for example.

このように、本実施形態に係る情報処理システム1では、機器20に搭載されたクライアントアプリケーション210がジョブ情報を参照する際に、当該ジョブ情報を参照する権限があるか否かを判定する。これにより、本実施形態に係る情報処理システム1では、サービス提供システム10は、参照権限があるジョブ情報に限り、クライアントアプリケーション210に表示させることができる。   As described above, in the information processing system 1 according to the present embodiment, when the client application 210 installed in the device 20 refers to the job information, it is determined whether or not there is an authority to refer to the job information. Thereby, in the information processing system 1 according to the present embodiment, the service providing system 10 can display only the job information having the reference authority on the client application 210.

次に、認証サービス部120との間の認証方式が「ユーザ認証」であるクライアントアプリケーション210がジョブ情報を参照する場合の処理について、図17を参照しながら説明する。図17は、ジョブ情報の参照処理の他の例(その1)を示すシーケンス図である。   Next, processing when the client application 210 whose authentication method with the authentication service unit 120 is “user authentication” refers to job information will be described with reference to FIG. FIG. 17 is a sequence diagram illustrating another example (part 1) of the job information reference process.

まず、クライアントアプリケーション210は、ジョブ情報の参照要求を認証サービス部120に送信する(ステップS1701)。なお、ジョブ情報の参照要求には、ジョブIDと、テナントIDと、ユーザIDと、パスワードとが含まれる。テナントID、ユーザID、及びパスワードは、例えば図16に示すジョブ情報の参照画面3100において、ユーザにより入力等されても良い。   First, the client application 210 transmits a job information reference request to the authentication service unit 120 (step S1701). The job information reference request includes a job ID, a tenant ID, a user ID, and a password. The tenant ID, user ID, and password may be input by the user on the job information reference screen 3100 shown in FIG. 16, for example.

認証サービス部120は、ジョブ情報の参照要求を受信すると、当該参照要求に含まれるテナントID、ユーザID、及びパスワードに基づいて、ユーザ認証を行う(ステップS1702)。すなわち、認証サービス部120は、当該参照要求に含まれるテナントID、ユーザID、及びパスワードの組が、予め決められたテナントID、ユーザID、及びパスワードの組と一致するか否かを判定することで、ユーザ認証を行う。   Upon receiving the job information reference request, the authentication service unit 120 performs user authentication based on the tenant ID, user ID, and password included in the reference request (step S1702). That is, the authentication service unit 120 determines whether the set of tenant ID, user ID, and password included in the reference request matches a predetermined set of tenant ID, user ID, and password. Then, user authentication is performed.

そして、認証サービス部120は、ユーザ認証に成功した場合、ジョブ情報の参照要求をアクセス制御部402に送信する(ステップS1703)。なお、ジョブ情報の参照要求には、ジョブIDと、ユーザIDとが含まれる。   If the user authentication is successful, the authentication service unit 120 transmits a job information reference request to the access control unit 402 (step S1703). The job information reference request includes a job ID and a user ID.

なお、認証サービス部120は、上記のステップS1702でユーザ認証に失敗した場合、例えば、ユーザ認証に失敗したことを示す通知をクライアントアプリケーション210に返信する。   If the user authentication fails in step S1702 described above, the authentication service unit 120 returns, for example, a notification indicating that the user authentication has failed to the client application 210.

アクセス制御部402は、ジョブ情報の参照要求を受信すると、ジョブ情報の取得要求をジョブ情報管理部401に送信する(ステップS1704)。なお、ジョブ情報の取得要求には、ジョブIDが含まれる。   Upon receiving the job information reference request, the access control unit 402 transmits a job information acquisition request to the job information management unit 401 (step S1704). The job information acquisition request includes a job ID.

ジョブ情報管理部401は、ジョブ情報の取得要求を受信すると、当該取得要求に含まれるジョブIDのジョブ情報をジョブ情報記憶部150から取得する(ステップS1705)。そして、ジョブ情報管理部401は、取得したジョブ情報をアクセス制御部402に返信する。   Upon receiving the job information acquisition request, the job information management unit 401 acquires job information of the job ID included in the acquisition request from the job information storage unit 150 (step S1705). Then, the job information management unit 401 returns the acquired job information to the access control unit 402.

次に、アクセス制御部402は、アクセス権のチェックを行う(ステップS1706)。すなわち、アクセス制御部402は、ジョブ情報の参照要求に含まれるユーザIDと、上記のステップS1702で取得されたジョブ情報に含まれるユーザIDとが一致するか否かを判定する。   Next, the access control unit 402 performs access right check (step S1706). That is, the access control unit 402 determines whether or not the user ID included in the job information reference request matches the user ID included in the job information acquired in step S1702.

そして、アクセス制御部402は、ジョブ情報の参照要求に含まれるユーザIDと、上記のステップS1702で取得されたジョブ情報に含まれるユーザIDとが一致すると判定した場合、ジョブ情報をクライアントアプリケーション210に返信する。   If the access control unit 402 determines that the user ID included in the job information reference request matches the user ID included in the job information acquired in step S1702, the access control unit 402 sends the job information to the client application 210. Send back.

一方、アクセス制御部402は、これらのユーザIDが一致しないと判定した場合、ジョブ情報の参照が許可されていないことを示す通知をクライアントアプリケーション210に返信する。したがって、この場合、クライアントアプリケーション210は、ジョブ情報を参照することができない。   On the other hand, when the access control unit 402 determines that these user IDs do not match, the access control unit 402 returns a notification indicating that reference to the job information is not permitted to the client application 210. Therefore, in this case, the client application 210 cannot refer to the job information.

クライアントアプリケーション210は、アクセス制御部402からジョブ情報が返信された場合、ジョブ情報を表示する(ステップS1707)。これにより、クライアントアプリケーション210は、機器20のユーザのユーザIDが含まれるジョブ情報を表示することができる。   When the job information is returned from the access control unit 402, the client application 210 displays the job information (step S1707). Accordingly, the client application 210 can display job information including the user ID of the user of the device 20.

なお、図17では、クライアントアプリケーション210と認証サービス部120との間の認証方式が「ユーザ認証」である場合について説明したが、ステップS1703以降は、当該認証方式が「アクセストークン認証」である場合も同様に適用することができる。なお、この場合、ステップS1701のジョブ情報の参照要求には、ジョブIDと、アクセストークンとが含まれる点、及びステップS1702でアクセストークン認証を行う点が図17と異なる。   In FIG. 17, the case where the authentication method between the client application 210 and the authentication service unit 120 is “user authentication” has been described. However, after step S1703, the authentication method is “access token authentication”. Can be applied similarly. In this case, the job information reference request in step S1701 includes a job ID and an access token, and the point that access token authentication is performed in step S1702 is different from FIG.

ここで、図12に示すように、ジョブ情報記憶部150に記憶されているジョブ情報には、ユーザIDが含まれているが、ユーザIDに代えて(又はユーザIDに加えて)、テナントIDが含まれていても良い。すなわち、例えば、図18に示すように、ジョブ情報記憶部150に記憶されているジョブ情報には、ユーザIDに代えて、テナントIDが含まれていても良い。   Here, as shown in FIG. 12, the job information stored in the job information storage unit 150 includes a user ID, but instead of the user ID (or in addition to the user ID), the tenant ID May be included. That is, for example, as shown in FIG. 18, the job information stored in the job information storage unit 150 may include a tenant ID instead of the user ID.

この場合において、認証サービス部120との間の認証方式が「ユーザ認証」であるクライアントアプリケーション210がジョブ情報を参照する場合の処理について、図19を参照しながら説明する。図19は、ジョブ情報の参照処理の他の例(その2)を示すシーケンス図である。   In this case, processing when the client application 210 whose authentication method with the authentication service unit 120 is “user authentication” refers to job information will be described with reference to FIG. FIG. 19 is a sequence diagram illustrating another example (part 2) of the job information reference process.

まず、クライアントアプリケーション210は、ジョブ情報の参照要求を認証サービス部120に送信する(ステップS1901)。なお、ジョブ情報の参照要求には、ジョブIDと、テナントIDと、ユーザIDと、パスワードとが含まれる。テナントID、ユーザID、及びパスワードは、例えば図16に示すジョブ情報の参照画面3100において、ユーザにより入力等されても良い。   First, the client application 210 transmits a job information reference request to the authentication service unit 120 (step S1901). The job information reference request includes a job ID, a tenant ID, a user ID, and a password. The tenant ID, user ID, and password may be input by the user on the job information reference screen 3100 shown in FIG. 16, for example.

認証サービス部120は、ジョブ情報の参照要求を受信すると、当該参照要求に含まれるテナントID、ユーザID、及びパスワードに基づいて、ユーザ認証を行う(ステップS1902)。すなわち、認証サービス部120は、当該参照要求に含まれるテナントID、ユーザID、及びパスワードの組が、予め決められたテナントID、ユーザID、及びパスワードの組と一致するか否かを判定することで、ユーザ認証を行う。   Upon receiving the job information reference request, the authentication service unit 120 performs user authentication based on the tenant ID, user ID, and password included in the reference request (step S1902). That is, the authentication service unit 120 determines whether the set of tenant ID, user ID, and password included in the reference request matches a predetermined set of tenant ID, user ID, and password. Then, user authentication is performed.

そして、認証サービス部120は、ユーザ認証に成功した場合、ジョブ情報の参照要求をアクセス制御部402に送信する(ステップS1903)。なお、ジョブ情報の参照要求には、ジョブIDと、テナントIDとが含まれる。   If the user authentication is successful, the authentication service unit 120 transmits a job information reference request to the access control unit 402 (step S1903). The job information reference request includes a job ID and a tenant ID.

なお、認証サービス部120は、上記のステップS1702でユーザ認証に失敗した場合、例えば、ユーザ認証に失敗したことを示す通知をクライアントアプリケーション210に返信する。   If the user authentication fails in step S1702 described above, the authentication service unit 120 returns, for example, a notification indicating that the user authentication has failed to the client application 210.

アクセス制御部402は、ジョブ情報の参照要求を受信すると、ジョブ情報の取得要求をジョブ情報管理部401に送信する(ステップS1904)。なお、ジョブ情報の取得要求には、ジョブIDが含まれる。   Upon receiving the job information reference request, the access control unit 402 transmits a job information acquisition request to the job information management unit 401 (step S1904). The job information acquisition request includes a job ID.

ジョブ情報管理部401は、ジョブ情報の取得要求を受信すると、当該取得要求に含まれるジョブIDのジョブ情報をジョブ情報記憶部150から取得する(ステップS1905)。そして、ジョブ情報管理部401は、取得したジョブ情報をアクセス制御部402に返信する。   Upon receiving the job information acquisition request, the job information management unit 401 acquires job information of the job ID included in the acquisition request from the job information storage unit 150 (step S1905). Then, the job information management unit 401 returns the acquired job information to the access control unit 402.

次に、アクセス制御部402は、アクセス権のチェックを行う(ステップS1906)。すなわち、アクセス制御部402は、ジョブ情報の参照要求に含まれるテナントIDと、上記のステップS1902で取得されたジョブ情報に含まれるテナントIDとが一致するか否かを判定する。   Next, the access control unit 402 performs access right check (step S1906). In other words, the access control unit 402 determines whether or not the tenant ID included in the job information reference request matches the tenant ID included in the job information acquired in step S1902.

そして、アクセス制御部402は、ジョブ情報の参照要求に含まれるテナントIDと、上記のステップS1902で取得されたジョブ情報に含まれるテナントIDとが一致すると判定した場合、ジョブ情報をクライアントアプリケーション210に返信する。   If the access control unit 402 determines that the tenant ID included in the job information reference request matches the tenant ID included in the job information acquired in step S1902, the job control unit 402 sends the job information to the client application 210. Send back.

一方、アクセス制御部402は、これらのテナントIDが一致しないと判定した場合、ジョブ情報の参照が許可されていないことを示す通知をクライアントアプリケーション210に返信する。したがって、この場合、クライアントアプリケーション210は、ジョブ情報を参照することができない。   On the other hand, if the access control unit 402 determines that these tenant IDs do not match, the access control unit 402 returns a notification indicating that reference to job information is not permitted to the client application 210. Therefore, in this case, the client application 210 cannot refer to the job information.

クライアントアプリケーション210は、アクセス制御部402からジョブ情報が返信された場合、ジョブ情報を表示する(ステップS1907)。これにより、クライアントアプリケーション210は、機器20のユーザのテナントIDが含まれるジョブ情報を表示することができる。   When the job information is returned from the access control unit 402, the client application 210 displays the job information (step S1907). Accordingly, the client application 210 can display job information including the tenant ID of the user of the device 20.

<まとめ>
以上のように、本実施形態に係る情報処理システム1は、クライアントアプリケーション210が、サービスを実現する一連の処理を実行させる際に、当該クライアントアプリケーション210の認証を行う。しかも、本実施形態に係る情報処理システム1では、クライアントアプリケーション210に応じて、様々な認証方式により認証を行うことができる。
<Summary>
As described above, the information processing system 1 according to the present embodiment authenticates the client application 210 when the client application 210 executes a series of processes for realizing a service. Moreover, in the information processing system 1 according to the present embodiment, authentication can be performed by various authentication methods according to the client application 210.

したがって、本実施形態に係る情報処理システム1では、正当なユーザ(クライアントアプリケーション210や機器20のユーザ)に限り、サービス提供システム10が提供するサービスを利用させるようにすることができる。   Therefore, in the information processing system 1 according to the present embodiment, only a legitimate user (a user of the client application 210 or the device 20) can use a service provided by the service providing system 10.

また、本実施形態に係る情報処理システム1では、クライアントアプリケーション210等が、他のアプリケーション(他のクライアントアプリケーション210やアプリ情報1000等)により実行された一連の処理のジョブ情報を参照することができる。しかも、本実施形態に係る情報処理システム1では、クライアントアプリケーション210等がジョブ情報を参照するための権限を有しているか否かを判定することで、アクセス制御を行う。これにより、本実施形態に係る情報処理システム1では、正当なユーザ(クライアントアプリケーション210やアプリ情報1000等)に限り、ジョブ情報の参照を許可することができる。   In the information processing system 1 according to the present embodiment, the client application 210 and the like can refer to job information of a series of processes executed by other applications (the other client application 210 and the application information 1000 and the like). . Moreover, in the information processing system 1 according to the present embodiment, access control is performed by determining whether or not the client application 210 or the like has the authority to refer to job information. Thereby, in the information processing system 1 according to the present embodiment, only legitimate users (such as the client application 210 and the application information 1000) can be permitted to refer to job information.

本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。   The present invention is not limited to the specifically disclosed embodiments, and various modifications and changes can be made without departing from the scope of the claims.

1 情報処理システム
10 サービス提供システム
20 機器
110 入出力サービス処理部
111 アプリ管理部
112 ロジック処理部
113 ジョブ管理部
120 認証サービス部
130 ドキュメントサービス部
140 アプリ情報記憶部
150 ジョブ情報記憶部
160 参照情報記憶部
210 クライアントアプリケーション
301 フロー実行部
302 コンポーネント管理部
303 コンポーネント群
304 型変換管理部
305 型変換群
401 ジョブ情報管理部
402 アクセス制御部
DESCRIPTION OF SYMBOLS 1 Information processing system 10 Service provision system 20 Apparatus 110 Input / output service processing part 111 Application management part 112 Logic processing part 113 Job management part 120 Authentication service part 130 Document service part 140 Application information storage part 150 Job information storage part 160 Reference information storage Unit 210 client application 301 flow execution unit 302 component management unit 303 component group 304 type conversion management unit 305 type conversion group 401 job information management unit 402 access control unit

特許第4039191号公報Japanese Patent No. 4039191

Claims (9)

1以上の情報処理装置を含み、所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、
電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する1以上の前記プログラムを識別するプログラム識別情報と、1以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、
前記情報処理システムに接続される1以上の機器のうちの一の機器から、電子データに関する情報と、前記フロー識別情報と、前記一の機器の認証を行うための認証情報とを含む第1の要求を受信する第1の受信手段と、
前記第1の受信手段により受信された前記第1の要求に含まれる前記認証情報に基づいて、前記一の機器の認証を行う認証手段と、
前記認証手段による前記認証が成功した場合、前記記憶手段に記憶されているフロー情報のうち、前記第1の受信手段により受信された前記第1の要求に含まれる前記フロー識別情報と関連付けて前記記憶手段に記憶されている前記フロー情報を取得する取得手段と、
前記取得手段により取得された前記フロー情報に定義されている前記プログラム識別情報に識別されるプログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って実行させることで、前記第1の受信手段により受信された前記第1の要求に含まれる前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、
を有する情報処理システム。
An information processing system that includes one or more information processing apparatuses and includes a plurality of programs that respectively execute predetermined processes,
Flow information in which, for each series of processes using electronic data, program identification information for identifying one or more of the programs that execute each of the series of processes and the execution order of the one or more of the programs are defined. Storing means in association with the flow identification information for identifying the flow information;
1st including the information regarding electronic data, the said flow identification information, and the authentication information for authenticating the said one apparatus from one apparatus of the one or more apparatuses connected to the said information processing system First receiving means for receiving the request;
Authentication means for authenticating the one device based on the authentication information included in the first request received by the first receiving means;
When the authentication by the authentication means is successful, the flow information stored in the storage means is associated with the flow identification information included in the first request received by the first receiving means. Obtaining means for obtaining the flow information stored in the storage means;
By causing each program identified by the program identification information defined in the flow information obtained by the obtaining means to be executed according to the execution order defined in the flow information, the first receiving means Execution means for executing the series of processes using electronic data based on information related to the electronic data included in the first request received by:
An information processing system having
前記認証情報は、
前記一の機器に搭載され、前記第1の要求を送信するアプリケーションプログラムを識別するアプリ識別情報と、該アプリ識別情報に対する第1のパスワードとを含み、
前記認証手段は、
前記認証情報に含まれる前記アプリ識別情報と、前記第1のパスワードとに基づいて、前記一の機器の認証を行う、請求項1に記載の情報処理システム。
The authentication information is:
Including application identification information for identifying an application program installed in the one device and transmitting the first request, and a first password for the application identification information,
The authentication means includes
The information processing system according to claim 1, wherein authentication of the one device is performed based on the application identification information included in the authentication information and the first password.
前記認証情報は、
前記一の機器を利用するユーザを識別するユーザ識別情報と、該ユーザが属するグループを識別するグループ識別情報と、前記ユーザ識別情報及び前記グループ識別情報に対する第2のパスワードとを含み、
前記認証手段は、
前記認証情報に含まれる前記ユーザ識別情報と、前記グループ識別情報と、前記第2のパスワードとに基づいて、前記一の機器の認証を行う、請求項1に記載の情報処理システム。
The authentication information is:
User identification information for identifying a user who uses the one device, group identification information for identifying a group to which the user belongs, and a second password for the user identification information and the group identification information,
The authentication means includes
The information processing system according to claim 1, wherein authentication of the one device is performed based on the user identification information, the group identification information, and the second password included in the authentication information.
前記認証情報は、
OAuthによるアクセストークンを含み、
前記認証手段は、
前記認証情報に含まれるアクセストークンに基づいて、前記一の機器の認証を行う、請求項1に記載の情報処理システム。
The authentication information is:
Including an access token by OAuth,
The authentication means includes
The information processing system according to claim 1, wherein authentication of the one device is performed based on an access token included in the authentication information.
前記一連の処理を示すジョブのジョブ識別情報と、前記ジョブの実行状態とを含むジョブ情報を記憶するジョブ情報記憶手段と、
前記情報処理システムに接続される1以上の機器のうちの一の機器から、前記ジョブ識別情報と、前記認証情報とを含む第2の要求を受信する第2の受信手段と、
前記第2の受信手段により受信された前記第2の要求に含まれる前記ジョブ識別情報の前記ジョブ情報を取得するジョブ情報取得手段と、
前記ジョブ情報取得手段により取得された前記ジョブ情報を、前記第2の要求の要求元の前記一の機器に送信する送信手段と、を有し、
前記認証手段は、
前記第2の受信手段により受信された前記第2の要求に含まれる前記認証情報に基づいて、前記一の機器の認証を行い、
前記ジョブ情報取得手段は、
前記認証手段による前記認証が成功した場合、前記第2の受信手段により受信された前記第2の要求に含まれる前記ジョブ識別情報の前記ジョブ情報を取得する、請求項1乃至4の何れか一項に記載の情報処理システム。
Job information storage means for storing job information including job identification information of the job indicating the series of processes and an execution state of the job;
Second receiving means for receiving a second request including the job identification information and the authentication information from one of the one or more devices connected to the information processing system;
Job information acquisition means for acquiring the job information of the job identification information included in the second request received by the second reception means;
Transmission means for transmitting the job information acquired by the job information acquisition means to the one device requesting the second request,
The authentication means includes
Based on the authentication information included in the second request received by the second receiving means, the one device is authenticated,
The job information acquisition unit includes:
5. The job information of the job identification information included in the second request received by the second receiving unit is acquired when the authentication by the authenticating unit is successful. 6. Information processing system according to item.
前記ジョブ情報には、さらに、前記情報処理システムに接続される1以上の機器にそれぞれ搭載されたアプリケーションプログラムのうち、前記一連の処理を実行させたアプリケーションプログラムを識別する第1のアプリ識別情報が含まれ、
前記第2の受信手段は、
前記情報処理システムに接続される1以上の機器のうちの一の機器から、前記ジョブ識別情報と、前記認証情報と、前記一の機器に搭載されたアプリケーションプログラムを識別する第2のアプリ識別情報を含む第2の要求を受信し、
前記送信手段は、
前記ジョブ情報取得手段により取得された前記ジョブ情報に含まれる前記第1のアプリ識別情報と、前記第2の要求に含まれる前記第2のアプリ識別情報とが一致する場合、前記ジョブ情報を、前記第2の要求の要求元の前記一の機器に送信する、請求項5に記載の情報処理システム。
The job information further includes first application identification information for identifying an application program that has executed the series of processes among application programs installed in one or more devices connected to the information processing system. Included,
The second receiving means includes
Second application identification information for identifying the job identification information, the authentication information, and an application program installed in the one device from one of the one or more devices connected to the information processing system Receives a second request containing
The transmission means includes
When the first application identification information included in the job information acquired by the job information acquisition unit matches the second application identification information included in the second request, the job information is The information processing system according to claim 5, wherein the information is transmitted to the one device that is a request source of the second request.
前記機器に搭載されたアプリケーションプログラムを識別するアプリ識別情報と、該アプリケーションプログラムが前記ジョブ情報を参照することができる他のアプリケーションプログラムを識別する参照可能アプリ識別情報とを含む参照情報を記憶する参照情報記憶手段を有し、
前記送信手段は、
前記ジョブ情報取得手段により取得された前記ジョブ情報に含まれる前記第1のアプリ識別情報と、前記第2の要求に含まれる前記第2のアプリ識別情報とが一致する場合、又は、前記第1のアプリ識別情報と、前記第2のアプリ識別情報に対応する前記参照情報に含まれる前記参照可能アプリ識別情報とが一致する場合、前記ジョブ情報を、前記第2の要求の要求元の前記一の機器に送信する、請求項6に記載の情報処理システム。
Reference for storing reference information including application identification information for identifying an application program installed in the device and referenceable application identification information for identifying another application program with which the application program can refer to the job information Having information storage means;
The transmission means includes
When the first application identification information included in the job information acquired by the job information acquisition unit matches the second application identification information included in the second request, or the first If the application identification information of the second application identification information matches the referenceable application identification information included in the reference information corresponding to the second application identification information, the job information is changed to the one of the request sources of the second request. The information processing system according to claim 6, wherein the information processing system is transmitted to the device.
所定の処理をそれぞれ実行する複数のプログラムを有する情報処理装置であって、
電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する1以上の前記プログラムを識別するプログラム識別情報と、1以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、
前記情報処理装置に接続される1以上の機器のうちの一の機器から、電子データに関する情報と、前記フロー識別情報と、前記一の機器の認証を行うための認証情報とを含む第1の要求を受信する第1の受信手段と、
前記第1の受信手段により受信された前記第1の要求に含まれる前記認証情報に基づいて、前記一の機器の認証を行う認証手段と、
前記認証手段による前記認証が成功した場合、前記記憶手段に記憶されているフロー情報のうち、前記第1の受信手段により受信された前記第1の要求に含まれる前記フロー識別情報と関連付けて前記記憶手段に記憶されている前記フロー情報を取得する取得手段と、
前記取得手段により取得された前記フロー情報に定義されている前記プログラム識別情報に識別されるプログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って実行させることで、前記第1の受信手段により受信された前記第1の要求に含まれる前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、
を有する情報処理装置。
An information processing apparatus having a plurality of programs for executing predetermined processes,
Flow information in which, for each series of processes using electronic data, program identification information for identifying one or more of the programs that execute each of the series of processes and the execution order of the one or more of the programs are defined. Storing means in association with the flow identification information for identifying the flow information;
1st including the information regarding electronic data, the said flow identification information, and the authentication information for authenticating the said one apparatus from one apparatus of the one or more apparatuses connected to the said information processing apparatus First receiving means for receiving the request;
Authentication means for authenticating the one device based on the authentication information included in the first request received by the first receiving means;
When the authentication by the authentication means is successful, the flow information stored in the storage means is associated with the flow identification information included in the first request received by the first receiving means. Obtaining means for obtaining the flow information stored in the storage means;
By causing each program identified by the program identification information defined in the flow information obtained by the obtaining means to be executed according to the execution order defined in the flow information, the first receiving means Execution means for executing the series of processes using electronic data based on information related to the electronic data included in the first request received by:
An information processing apparatus.
1以上の情報処理装置を含み、所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムに用いられる情報処理方法であって、電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する1以上の前記プログラムを識別するプログラム識別情報と、1以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段を有する情報処理システムにおいて、
前記情報処理システムに接続される1以上の機器のうちの一の機器から、電子データに関する情報と、前記フロー識別情報と、前記一の機器の認証を行うための認証情報とを含む第1の要求を受信する第1の受信手順と、
前記第1の受信手順により受信された前記第1の要求に含まれる前記認証情報に基づいて、前記一の機器の認証を行う認証手順と、
前記認証手順による前記認証が成功した場合、前記記憶手段に記憶されているフロー情報のうち、前記第1の受信手順により受信された前記第1の要求に含まれる前記フロー識別情報と関連付けて前記記憶手段に記憶されている前記フロー情報を取得する取得手順と、
前記取得手順により取得された前記フロー情報に定義されている前記プログラム識別情報に識別されるプログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って実行させることで、前記第1の受信手順により受信された前記第1の要求に含まれる前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手順と、
を有する情報処理方法。
An information processing method used in an information processing system including a plurality of programs each including one or more information processing apparatuses and executing predetermined processing, wherein each series of processing using electronic data Flow information in which program identification information for identifying one or more of the programs executing the respective processes and the execution order of the one or more of the programs are defined is stored in association with the flow identification information for identifying the flow information. In an information processing system having storage means,
1st including the information regarding electronic data, the said flow identification information, and the authentication information for authenticating the said one apparatus from one apparatus of the one or more apparatuses connected to the said information processing system A first receiving procedure for receiving the request;
An authentication procedure for authenticating the one device based on the authentication information included in the first request received by the first reception procedure;
When the authentication by the authentication procedure is successful, the flow information stored in the storage unit is associated with the flow identification information included in the first request received by the first reception procedure. An acquisition procedure for acquiring the flow information stored in the storage means;
By causing each program identified by the program identification information defined in the flow information acquired by the acquisition procedure to be executed according to the execution order defined in the flow information, the first reception procedure An execution procedure for executing the series of processes using electronic data based on information related to the electronic data included in the first request received by:
An information processing method comprising:
JP2016128645A 2016-06-29 2016-06-29 Information processing system, information processing apparatus, and information processing method Active JP6696326B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016128645A JP6696326B2 (en) 2016-06-29 2016-06-29 Information processing system, information processing apparatus, and information processing method
JP2020076892A JP6981497B2 (en) 2016-06-29 2020-04-23 Information processing system, information processing device, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016128645A JP6696326B2 (en) 2016-06-29 2016-06-29 Information processing system, information processing apparatus, and information processing method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020076892A Division JP6981497B2 (en) 2016-06-29 2020-04-23 Information processing system, information processing device, and information processing method

Publications (2)

Publication Number Publication Date
JP2018005379A true JP2018005379A (en) 2018-01-11
JP6696326B2 JP6696326B2 (en) 2020-05-20

Family

ID=60949268

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016128645A Active JP6696326B2 (en) 2016-06-29 2016-06-29 Information processing system, information processing apparatus, and information processing method

Country Status (1)

Country Link
JP (1) JP6696326B2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004310517A (en) * 2003-04-08 2004-11-04 Fuji Xerox Co Ltd Printing system and print job management method
JP2012178086A (en) * 2011-02-28 2012-09-13 Kyocera Document Solutions Inc Mobile printing system and image forming device
US20140129607A1 (en) * 2012-11-08 2014-05-08 Ricoh Company, Ltd. Information processing apparatus, information processing system, and information processing method
JP2015032043A (en) * 2013-07-31 2015-02-16 株式会社リコー Service providing system, service providing method, and program
JP2015172824A (en) * 2014-03-11 2015-10-01 株式会社リコー Information processing system and authentication information providing method
JP2015194871A (en) * 2014-03-31 2015-11-05 京セラドキュメントソリューションズ株式会社 Image forming system, server, image forming apparatus, terminal, image forming method, and program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004310517A (en) * 2003-04-08 2004-11-04 Fuji Xerox Co Ltd Printing system and print job management method
JP2012178086A (en) * 2011-02-28 2012-09-13 Kyocera Document Solutions Inc Mobile printing system and image forming device
US20140129607A1 (en) * 2012-11-08 2014-05-08 Ricoh Company, Ltd. Information processing apparatus, information processing system, and information processing method
JP2015032043A (en) * 2013-07-31 2015-02-16 株式会社リコー Service providing system, service providing method, and program
JP2015172824A (en) * 2014-03-11 2015-10-01 株式会社リコー Information processing system and authentication information providing method
JP2015194871A (en) * 2014-03-31 2015-11-05 京セラドキュメントソリューションズ株式会社 Image forming system, server, image forming apparatus, terminal, image forming method, and program

Also Published As

Publication number Publication date
JP6696326B2 (en) 2020-05-20

Similar Documents

Publication Publication Date Title
US9608972B2 (en) Service providing system and data providing method that convert a process target data into output data with a data format that a service receiving apparatus is able to output
US9537849B2 (en) Service provision system, service provision method, and computer program product
US9164710B2 (en) Service providing system and service providing method
EP2950230A1 (en) Information processing system, method of processing information, information processing apparatus, and program
US20110001995A1 (en) Form printing system, control method and computer-readable medium
US10530943B2 (en) Information processing system configured to maintain application state information associated with an application, information processing apparatus, and information processing method
US20120096465A1 (en) Image forming apparatus, log management method, and storage medium
JP2014081779A (en) Device management system, peripheral device, and control method therefor
JP2015103917A (en) Server related to authentication and setting when scanning, image processing apparatus, service method, and image processing method
JP6772578B2 (en) Information processing system, information processing device, and information processing method
US20150040189A1 (en) Service provision system, service provision method, and computer program product
JP2015032043A (en) Service providing system, service providing method, and program
US20190289157A1 (en) Information processing system, information processing method and non-transitory computer-readable storage medium
JP7146422B2 (en) Information processing device and cookie information management method
US20150081834A1 (en) Information processing system and method
JP6981497B2 (en) Information processing system, information processing device, and information processing method
JP6696326B2 (en) Information processing system, information processing apparatus, and information processing method
JP6780364B2 (en) Information processing system, information processing device, and information processing method
JP6303316B2 (en) Service providing system, service providing method and program
JP7115119B2 (en) Information processing device, license management system, and license management program
JP6724630B2 (en) Information processing system, information processing apparatus, information processing method, and information processing program
JP2015032041A (en) Service providing system, service providing method, and program
JP6919219B2 (en) Information processing system, information processing device, and information processing method
JP6686731B2 (en) Information processing system, information processing apparatus, and information processing method
JP2023048780A (en) Information processing apparatus, information processing system, information processing method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190403

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200406

R151 Written notification of patent or utility model registration

Ref document number: 6696326

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151