JP2013093058A - Apparatus, history information recording method, and program - Google Patents

Apparatus, history information recording method, and program Download PDF

Info

Publication number
JP2013093058A
JP2013093058A JP2013022133A JP2013022133A JP2013093058A JP 2013093058 A JP2013093058 A JP 2013093058A JP 2013022133 A JP2013022133 A JP 2013022133A JP 2013022133 A JP2013022133 A JP 2013022133A JP 2013093058 A JP2013093058 A JP 2013093058A
Authority
JP
Japan
Prior art keywords
log
history information
information
job
communication
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
JP2013022133A
Other languages
Japanese (ja)
Other versions
JP5500280B2 (en
Inventor
Hiroyuki Tanaka
浩行 田中
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 JP2013022133A priority Critical patent/JP5500280B2/en
Publication of JP2013093058A publication Critical patent/JP2013093058A/en
Application granted granted Critical
Publication of JP5500280B2 publication Critical patent/JP5500280B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Facsimiles In General (AREA)

Abstract

PROBLEM TO BE SOLVED: To properly record log information on processing to be executed by an application.SOLUTION: An apparatus capable of executing an application program, includes history information recording means, and processing execution means. In response to a processing execution request from the application program, the history information recording means records, in a storage, history information on the processing including identification information on the execution request. If the history information can be recorded in the storage, the processing execution means executes processing based on the execution request.

Description

本発明は、機器、履歴情報記録方法、及びプログラムに関し、特にアプリケーションが実行する処理に関する履歴情報を記録する機器、履歴情報記録方法、及びプログラムに関する。   The present invention relates to a device, a history information recording method, and a program, and more particularly, to a device, history information recording method, and program for recording history information related to processing executed by an application.

近年では、主に複合機又は融合機と呼ばれる画像形成装置において、その出荷後に、公開されたAPI(Application Program Interface)を利用して新たなアプリケーションの開発及びインストールが可能とされているものがある(例えば、特許文献1)。斯かる画像形成装置では、当該画像形成装置のベンダによって開発されたアプリケーションのみならず、サードベンダによって開発されたアプリケーションをインストールすることが可能となり、画像形成装置の機能の拡張性を著しく向上させることができる。   In recent years, there are some image forming apparatuses that are mainly called multifunction peripherals or multi-functional peripherals, and that are capable of developing and installing new applications using published API (Application Program Interface) after shipment. (For example, patent document 1). In such an image forming apparatus, it is possible to install not only an application developed by the vendor of the image forming apparatus but also an application developed by a third vendor, thereby significantly improving the expandability of the functions of the image forming apparatus. Can do.

しかしながら、不特定のアプリケーションがインストールされることにより、画像形成装置のセキュリティが低下する可能性が有る。各アプリケーションが不正なアプリケーションであるか否かを事前に判断するのは困難だからである。特に、近年の画像形成装置は大規模記憶装置を備え、当該大規模記憶装置内に各種の機密情報(ユーザの個人情報、スキャンされた機密文書の画像データ等)を管理可能となっている。このような機密情報等が不特定のアプリケーションによって不正にアクセスされるのは好ましくない。   However, the installation of an unspecified application may reduce the security of the image forming apparatus. This is because it is difficult to determine in advance whether or not each application is an unauthorized application. In particular, recent image forming apparatuses include a large-scale storage device, and various kinds of confidential information (user personal information, scanned confidential document image data, etc.) can be managed in the large-scale storage device. It is not preferable that such confidential information is illegally accessed by an unspecified application.

斯かる不正なアプリケーションの存在を検知するための手段として、ログ情報の記録は有効である。但し、従来は、ログ情報の記録を実現するためにアプリケーションに何らかの実装(例えば、ログの記録関数の呼び出し等)が必要とされていた。しかし、このような仕組みの場合、アプリケーション内に適切に当該実装が行われなければ、ログ情報の記録漏れが発生する。その結果、不正なアプリケーションの存在を検知できないという問題がある。   Recording of log information is effective as a means for detecting the presence of such an unauthorized application. However, conventionally, some implementation (for example, a call of a log recording function) is required for an application in order to realize recording of log information. However, in the case of such a mechanism, if the implementation is not properly performed in the application, the log information may be missed. As a result, there is a problem that the presence of an unauthorized application cannot be detected.

本発明は、上記の点に鑑みてなされたものであって、アプリケーションが実行する処理に関する履歴情報を適切に記録することのできる機器、履歴情報記録方法、及びプログラムの提供を目的とする。   The present invention has been made in view of the above points, and an object of the present invention is to provide a device, a history information recording method, and a program that can appropriately record history information related to processing executed by an application.

そこで上記課題を解決するため、本発明は、アプリケーションプログラムを実行可能な機器であって、前記アプリケーションプログラムからの処理の実行要求に応じ、該実行要求に係る識別情報を含めて前記処理に関する履歴情報を記憶装置に記録する履歴情報記録手段と、前記履歴情報を前記記憶装置に記録できる場合に、前記実行要求に基づく処理を実行する処理実行手段とを有することを特徴とする。   Accordingly, in order to solve the above-described problem, the present invention is a device capable of executing an application program, and in response to a process execution request from the application program, includes history information related to the process including identification information related to the execution request. Is recorded in a storage device, and when the history information can be recorded in the storage device, a process execution unit that executes a process based on the execution request is provided.

このような機器では、アプリケーションが実行する処理に関する履歴情報を適切に記録することができる。   In such a device, history information relating to processing executed by the application can be appropriately recorded.

本発明によれば、アプリケーションが実行する処理に関する履歴情報を適切に記録することのできる機器、履歴情報記録方法、及びプログラムを提供することができる。   According to the present invention, it is possible to provide a device, a history information recording method, and a program that can appropriately record history information related to processing executed by an application.

本発明の実施の形態におけるシステム構成例を示す図である。It is a figure which shows the system configuration example in embodiment of this invention. 本発明の実施の形態における機器のハードウェア構成例を示す図である。It is a figure which shows the hardware structural example of the apparatus in embodiment of this invention. 第一の実施の形態における機器のソフトウェア構成例を示す図である。It is a figure which shows the software structural example of the apparatus in 1st embodiment. 第一の実施の形態における機器の処理概要を説明するためのフローチャートである。It is a flowchart for demonstrating the process outline | summary of the apparatus in 1st embodiment. 第一の実施の形態における機器の処理手順を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the process sequence of the apparatus in 1st embodiment. 第二の実施の形態における機器のソフトウェア構成例を示す図である。It is a figure which shows the software structural example of the apparatus in 2nd embodiment. 第二の実施の形態における機器の処理概要を説明するためのフローチャートである。It is a flowchart for demonstrating the process outline | summary of the apparatus in 2nd embodiment. 第二の実施の形態における機器の処理手順を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the process sequence of the apparatus in 2nd embodiment.

以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態におけるシステム構成例を示す図である。図1において、ログ収集サーバ10と、機器20a、機器20b及び機器20c(以下、総称する場合「機器20」という。)とは、オフィスにおけるLAN(Local Area Network)等のネットワーク15(有線又は無線の別は問わない。)を介して接続されている。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing an example of a system configuration in the embodiment of the present invention. In FIG. 1, a log collection server 10 and devices 20a, 20b, and 20c (hereinafter collectively referred to as “device 20”) are a network 15 (wired or wireless) such as a LAN (Local Area Network) in an office. The connection is not limited.)

機器20は、コピー、ファクシミリ、プリンタ、及びスキャナ等の複数の機能を一台の筐体において実現する画像形成装置(複合機)である。   The device 20 is an image forming apparatus (multifunction machine) that realizes a plurality of functions such as copying, facsimile, printer, and scanner in a single casing.

ログ収集サーバ10は、機器20において生成される各種のログ情報を収集し、一元的に管理するコンピュータである。なお、ログ収集サーバ10は複数台存在してもよい。   The log collection server 10 is a computer that collects and centrally manages various types of log information generated in the device 20. A plurality of log collection servers 10 may exist.

図2は、本発明の実施の形態における機器のハードウェア構成例を示す図である。図2において、機器20は、コントローラ201、スキャナ202、プリンタ203、モデム204、ネットワークインタフェース205、及び操作パネル206等のハードウェアを有する。   FIG. 2 is a diagram illustrating a hardware configuration example of a device according to the embodiment of the present invention. In FIG. 2, the device 20 includes hardware such as a controller 201, a scanner 202, a printer 203, a modem 204, a network interface 205, and an operation panel 206.

コントローラ201は、CPU211、RAM212、ROM213、及びHDD214等を有する。ROM213には、各種のプログラムやプログラムによって利用されるデータ等が記録されている。RAM212は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU211は、RAM212にロードされたプログラムを処理することにより、後述される機能を実現する。HDD214は、各種のデータ(例えば、スキャンされた画像データ)を保存するために利用される。   The controller 201 includes a CPU 211, a RAM 212, a ROM 213, an HDD 214, and the like. The ROM 213 stores various programs and data used by the programs. The RAM 212 is used as a storage area for loading a program, a work area for the loaded program, and the like. The CPU 211 realizes functions to be described later by processing a program loaded in the RAM 212. The HDD 214 is used to store various data (for example, scanned image data).

スキャナ202は、原稿より画像データを読み取るためのハードウェアである。プリンタ203は、画像データを印刷用紙に印刷するためのハードウェアである。モデム204は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。ネットワークインタフェース205は、ネットワーク15に接続するためのハードウェアである。操作パネル206は、ユーザからの入力の受け付けや、ユーザに対する情報の通知等を行うめのボタン、液晶パネル等を備えたハードウェアである。   The scanner 202 is hardware for reading image data from a document. The printer 203 is hardware for printing image data on printing paper. The modem 204 is hardware for connecting to a telephone line, and is used to execute transmission / reception of image data by FAX communication. The network interface 205 is hardware for connecting to the network 15. The operation panel 206 is hardware including a button, a liquid crystal panel, and the like for receiving input from the user and notifying the user of information.

図3は、第一の実施の形態における機器のソフトウェア構成例を示す図である。第一の実施の形態では、通信ログ(通信履歴)の記録について説明する。図3において、機器20は、SDKアプリ30、SDKプラットフォーム40、ログサービス51及びソケットライブラリ52等のソフトウェアを含む。これらの各ソフトウェアは、RAM212にロードされ、CPU211に処理を実行させることによりその機能を実現する。   FIG. 3 is a diagram illustrating a software configuration example of the device according to the first embodiment. In the first embodiment, recording of a communication log (communication history) will be described. In FIG. 3, the device 20 includes software such as an SDK application 30, an SDK platform 40, a log service 51, and a socket library 52. Each of these software is loaded into the RAM 212 and realizes its function by causing the CPU 211 to execute processing.

ログサービス51は、後述されるSDKアプリ30によって行われる通信(特に、暗号化通信)に関するログをログ記憶領域60に記録する。ログサービス51は、また、ログ記憶領域60に記録されているログのログ収集サーバ10への転送をも制御する。なお、ログ記憶領域60は、RAM212又はHDD214に設けられたログ記録用の記録領域である。ソケットライブラリ52は、いわゆるソケットライブラリであり、TCP/IP通信において利用するAPIを上位モジュールに対して提供する。   The log service 51 records a log related to communication (particularly encrypted communication) performed by the SDK application 30 described later in the log storage area 60. The log service 51 also controls transfer of logs recorded in the log storage area 60 to the log collection server 10. The log storage area 60 is a log recording area provided in the RAM 212 or the HDD 214. The socket library 52 is a so-called socket library, and provides an API used in TCP / IP communication to the upper module.

SDKプラットフォーム40は、SDKアプリ30の実行環境を提供するソフトウェアプラットフォームである。同図では、SDK共通処理モジュール401、JVM(Java(登録商標) Virtual Machine)402、JSSE403、通信サービス404、及び通信ログサービス405等がSDKプラットフォーム40に含まれている。   The SDK platform 40 is a software platform that provides an execution environment for the SDK application 30. In the drawing, an SDK common processing module 401, a JVM (Java (registered trademark) Virtual Machine) 402, a JSSE 403, a communication service 404, a communication log service 405, and the like are included in the SDK platform 40.

JVM402は、Java(登録商標)バイトコードをOS上で動作可能なネイティブコードに変換して実行する。なお、JVM402より上に図示されているソフトウェアは、Java(登録商標)のバイトコードによって実装されたものである。JSSE403は、Java(登録商標)標準の暗号化通信(SSL(Secure Socket Layer)等)のフレームワーク及び実装である。   The JVM 402 converts a Java (registered trademark) bytecode into a native code operable on the OS and executes it. The software illustrated above the JVM 402 is implemented by Java (registered trademark) bytecode. JSSE403 is a framework and implementation of Java (registered trademark) standard encrypted communication (SSL (Secure Socket Layer), etc.).

通信サービス404及び通信ログサービス405は、OSGi(Open Service Gateway initiative)フレームワーク上で動作するバンドルである。OSGiフレームワークは、OSGiアライアンスによる標準化技術であり、Java(登録商標)言語に基づいたオープンなソフトウェア部品化技術に基づいて作成されたソフトウェア部品の実行環境を提供するソフトウェアプラットフォームである。OSGiフレームワーク上において、Java(登録商標)言語のソフトウェアは「バンドル」と呼ばれるソフトウェア部品の形で実装される。一つのバンドルは、一つのJAR(Java(登録商標) ARchive)ファイルによって構成され、それぞれ独立して動的に(装置の再起動を要することなく)インストール可能である。通信サービス404は、HTTP(HyperText Transfer Protocol)、FTP(File Transfer Protocol)、SNMP(Simple Network Management Protocol)、LDAP(Lightweight Directory Access Protocol)等のいわゆるアプリケーション層の通信プロトコルに関する通信処理を制御するとともに、当該通信処理に関するインタフェースをSDKアプリ30に提供する。通信サービス404は、SDKアプリ30より暗号化通信が要求された場合は、JSSE403を利用して暗号化通信を行う。通信ログサービス405は、SDKアプリ30より通信要求が発生した際のログ(通信ログ)の記録処理を制御する。   The communication service 404 and the communication log service 405 are bundles that operate on an OSGi (Open Service Gateway initiative) framework. The OSGi framework is a standardized technology by the OSGi Alliance, and is a software platform that provides an execution environment for software components created based on an open software componentization technology based on the Java (registered trademark) language. On the OSGi framework, Java (registered trademark) language software is implemented in the form of software components called “bundles”. One bundle is constituted by one JAR (Java (registered trademark) ARchive) file, and can be installed dynamically independently (without restarting the apparatus). The communication service 404 controls communication processing related to a communication protocol of a so-called application layer such as HTTP (HyperText Transfer Protocol), FTP (File Transfer Protocol), SNMP (Simple Network Management Protocol), and LDAP (Lightweight Directory Access Protocol). An interface related to the communication processing is provided to the SDK application 30. The communication service 404 performs encrypted communication using the JSSE 403 when the SDK application 30 requests encrypted communication. The communication log service 405 controls a log (communication log) recording process when a communication request is generated from the SDK application 30.

その他、SDKプラットフォーム40には、Java(登録商標)の標準のクラスや、機器20用に拡張されたクラスに関するクラスライブラリ等も含まれる。例えば、同図には、セキュリティマネージャ406がJVM402の一部として示されている。セキュリティマネージャ406は、Java(登録商標)標準のSecurityManagerクラスを拡張したクラスによって実装されている。したがって、セキュリティマネージャ406は、予めポリシーファイルに定義されたアクセス制御情報に基づいて、SDKアプリ30による、ファイル、ネットワークソケット、及びプリンタ等のリソースへのアクセスを制限する。すなわち、SDKプラットフォーム40は、各種リソースへのアクセスが発生する際に、セキュリティマネージャ406に対する呼び出しが発生するように構成されている。セキュリティマネージャ406は、その呼び出しに応じてリソースへのアクセスの可否を判断する。斯かる仕組みを用いて、本実施の形態では、セキュリティマネージャ406が、SDKアプリ30による暗号化通信の実行を検知する。   In addition, the SDK platform 40 includes a standard class of Java (registered trademark), a class library related to a class extended for the device 20, and the like. For example, in the figure, a security manager 406 is shown as part of the JVM 402. The security manager 406 is implemented by a class that extends the Java (Registered Trademark) standard SecurityManager class. Accordingly, the security manager 406 restricts access to resources such as files, network sockets, and printers by the SDK application 30 based on access control information defined in advance in the policy file. That is, the SDK platform 40 is configured such that a call to the security manager 406 occurs when access to various resources occurs. The security manager 406 determines whether to access the resource according to the call. Using this mechanism, in this embodiment, the security manager 406 detects execution of encrypted communication by the SDK application 30.

SDKアプリ30は、SDKプラットフォーム40において公開されている専用のSDK(ソフトウェア開発キット)を使用して作成されたアプリケーション(以下「SDKアプリ」という。)である。SDKプラットフォーム40上には複数のSDKアプリ30をインストール可能である。   The SDK application 30 is an application (hereinafter referred to as “SDK application”) created using a dedicated SDK (software development kit) published on the SDK platform 40. A plurality of SDK applications 30 can be installed on the SDK platform 40.

以下、第一の実施の形態における機器20の処理手順について説明する。図4は、第一の実施の形態における機器の処理概要を説明するためのフローチャートである。   Hereinafter, the processing procedure of the device 20 in the first embodiment will be described. FIG. 4 is a flowchart for explaining an outline of processing of the device in the first embodiment.

機器20において、通信を開始するSDKアプリ30は、通信処理の実行要求をSDKプラットフォーム40に対して行う(S101)。続いて、機器20は、SDKアプリ30によって行われる通信が暗号化通信であるか否かを判定する(S102)。暗号化通信である場合(S102でYES)、機器20は、ログ情報の記録の準備を行う(S103)。具体的にはログ情報として記録する項目の値を判定する。例えば、通信に利用される通信プロトコル及び暗号化プロトコルが判定される。続いて、機器20は通信用のソケットをオープンし(S106)、ログ情報を記録する(S107)。続いて、機器20は、SDKアプリ30によって指定されたプロトコルによって通信処理を行う(S109)。   In the device 20, the SDK application 30 that starts communication makes a communication processing execution request to the SDK platform 40 (S101). Subsequently, the device 20 determines whether or not the communication performed by the SDK application 30 is encrypted communication (S102). If it is encrypted communication (YES in S102), the device 20 prepares for recording log information (S103). Specifically, the value of an item to be recorded as log information is determined. For example, a communication protocol and an encryption protocol used for communication are determined. Subsequently, the device 20 opens a communication socket (S106) and records log information (S107). Subsequently, the device 20 performs communication processing using a protocol specified by the SDK application 30 (S109).

一方、暗号化通信でない場合(S102でNO)、機器20は、機器内通信であるか否かを判定する(S104)。機器内通信とは、機器20内部におけるプログラム間の通信(例えば、プロセス間通信)をいう。機器内通信でない場合(S104でNO)、機器20は、ログ情報の記録の準備として、通信に利用される通信プロトコルを判定する(S105)。なお、暗号化通信ではないため、暗号化プロトコルの値は、「無し」とされる。続いて、ステップS106〜S109が実行される。   On the other hand, if it is not encrypted communication (NO in S102), the device 20 determines whether it is intra-device communication (S104). In-device communication refers to communication between programs within the device 20 (for example, inter-process communication). If it is not intra-device communication (NO in S104), the device 20 determines a communication protocol used for communication as preparation for recording log information (S105). Since it is not encrypted communication, the value of the encryption protocol is “none”. Subsequently, steps S106 to S109 are executed.

また、機器内通信の場合(S104でYES)、機器20はソケットをオープンし(S108)、SDKアプリ30によって指定されたプロトコルによって通信処理を行う(S109)。したがって、機器内通信の場合ログ情報の記録は行われない。これは、機器内通信については、セキュリティ上の観点より重要度が低いからと考えられるからである(すなわち、機器20の外部との通信の方が重要度が高いと考えるからである。)。また、機器内通信の全てについてまでログ情報を記録した場合、短期間でログ記憶領域60を消費してしまうからである。なお、ログ記憶領域60の消費を更に抑制したい場合、暗号化通信についてのみログ情報を記録するようにしてもよい。通信内容を暗号化するということは、その通信自体が重要なものであると考えられる。したがって、暗号化通信についてのみログ情報を記録することで、ログ記憶領域60の消費を抑制しつつ、重要な通信に関するログ情報を記録することができる。   In the case of intra-device communication (YES in S104), the device 20 opens a socket (S108), and performs communication processing according to the protocol specified by the SDK application 30 (S109). Therefore, log information is not recorded in the case of intra-device communication. This is because the in-device communication is considered to be less important from the viewpoint of security (that is, the communication with the outside of the device 20 is considered to be more important). In addition, when log information is recorded for all intra-device communications, the log storage area 60 is consumed in a short period of time. If it is desired to further suppress consumption of the log storage area 60, log information may be recorded only for encrypted communication. Encrypting the communication content is considered to be important. Therefore, by recording log information only for encrypted communication, it is possible to record log information related to important communication while suppressing consumption of the log storage area 60.

続いて、図4においてその概要を説明した処理手順について更に詳細に説明する。図5は、第一の実施の形態における機器の処理手順を説明するためのシーケンス図である。   Next, the processing procedure whose outline has been described with reference to FIG. 4 will be described in more detail. FIG. 5 is a sequence diagram for explaining the processing procedure of the device in the first embodiment.

SDKアプリ30が通信サービス404に対して所望の通信プロトコル(HTTP、FTP、SNMP、LDAP等)による暗号化通信の実行を要求すると、通信サービス404は、JSSE403に対して暗号化通信の実行を要求する(S201)。なお、図中では、便宜上通信サービス404は省略されている。SDKアプリ30からの通信サービス404に対する要求は、例えば所望の通信プロトコルに応じたクラスのメソッドの呼び出しによって実現される。すなわち、通信サービス404内には通信プロトコルごとにクラスが存在する。   When the SDK application 30 requests the communication service 404 to execute encrypted communication using a desired communication protocol (HTTP, FTP, SNMP, LDAP, etc.), the communication service 404 requests the JSSE 403 to execute encrypted communication. (S201). In the figure, the communication service 404 is omitted for convenience. A request for the communication service 404 from the SDK application 30 is realized, for example, by calling a method of a class corresponding to a desired communication protocol. That is, a class exists for each communication protocol in the communication service 404.

また、通信サービス404からJSSE403に対する要求は、JSSE403に含まれるクラスのうち、SDKアプリ30より要求された通信に応じたクラスのメソッドの呼び出しによって実現される。例えば、SDKアプリ30の所望の通信プロトコルや、クライアントとしての通信かサーバとしての通信か等に応じて呼び出されるクラス(JSSE403のクラス)が異なる。   A request from the communication service 404 to the JSSE 403 is realized by calling a method of a class corresponding to the communication requested by the SDK application 30 among the classes included in the JSSE 403. For example, the class (JSSE 403 class) to be called differs depending on the desired communication protocol of the SDK application 30, the communication as a client or the communication as a server, and the like.

JSSE403において呼び出されたクラスは、呼び出されたこと(通信要求の発生)をセキュリティマネージャ406に通知する(S202)。続いて、セキュリティマネージャ406は、通信で使用される通信プロトコル及び暗号化プロトコルを判定する(S203)。当該判定は、スタックトレースによって行われる。すなわち、クラス間の呼び出し関係(呼び出しの階層状態)は、RAM212内に形成されるスタック(コールスタック)内に記録されている。セキュリティマネージャ406は、コールスタックを参照し、JSSE403からの呼び出しの経路を遡ることによって、JSSE403において呼び出されたクラス(クラス名)、通信サービス404において呼び出されたクラス(クラス名)を把握する。通信サービス404において呼び出されたクラス名によって使用される通信プロトコルが判定され、JSSE403において呼び出されたクラス名によって、暗号化通信が要求されていること及び暗号化通信に使用される暗号化プロトコルが判定される。なお、暗号化通信が要求されていない場合は、JSSE403のクラスに対する呼び出しは行われない。したがって、セキュリティマネージャ406は、コールスタック内に暗号化通信に関するクラス(JSSE403のクラス)が含まれていない場合は、暗号化通信でないと判定する。   The class called in JSSE 403 notifies the security manager 406 that it has been called (generation of a communication request) (S202). Subsequently, the security manager 406 determines a communication protocol and an encryption protocol used for communication (S203). This determination is made by stack trace. That is, the call relationship between classes (call hierarchy state) is recorded in a stack (call stack) formed in the RAM 212. The security manager 406 refers to the call stack and traces the call path from the JSSE 403 to grasp the class (class name) called in the JSSE 403 and the class (class name) called in the communication service 404. The communication protocol used by the class name called in the communication service 404 is determined. The class name called in the JSSE 403 determines that the encrypted communication is requested and the encryption protocol used for the encrypted communication. Is done. When encrypted communication is not requested, no call is made to the JSSE 403 class. Therefore, the security manager 406 determines that it is not encrypted communication when the class (JSSE403 class) related to encrypted communication is not included in the call stack.

暗号化通信の場合、セキュリティマネージャ406は、判定された通信プロトコル及び暗号化プロトコルの識別情報(例えば、プロトコル名)をログ情報として通信ログサービス405に通知する(S204)。通信ログサービス405は、当該ログ情報の記録をSDK共通処理モジュール401を介してログサービス51に要求する(S205、S206)。   In the case of encrypted communication, the security manager 406 notifies the communication log service 405 of the determined communication protocol and identification information (eg, protocol name) of the encrypted protocol as log information (S204). The communication log service 405 requests the log service 51 to record the log information via the SDK common processing module 401 (S205, S206).

続いて、ログサービス51は、ログ記憶領域60の空き容量等を確認し、ログ情報の記録(書き込み)の可否を判定する(S207)。ログ記憶領域60に十分空き容量が有る場合、ログサービス51はログ記憶領域60にログ情報を記録する(S208)。この際、ログサービス51は、通信プロトコル及び暗号化プロトコルの識別情報に加え、時刻情報、及びログID等を記録する。ログIDは、各ログ(一回の書き込み分のログ)に対して一意なIDである。続いて、ログサービス51は、ログ情報の記録に成功したことをSDK共通処理モジュール401に応答する(S209)。SDK共通処理モジュール401は、ログ情報の記録に成功したため通信処理が可能であることをセキュリティマネージャ406に通知する(S210)。セキュリティマネージャ406は、当該通知を受けて、ステップS202において通知された通信要求に係る処理を許可する旨の応答をJSSE403に対して行う(S211)。JSSE403は、セキュリティマネージャ406からの許可を受けて、SDKアプリ30によって要求された通信処理(通信の開始、データの送受信、又は通信の終了等)をソケットライブラリ52を用いて実行する(S212)。JSSE403は、ソケットライブラリ52より処理結果(処理の成否)を示す情報が返却されると(S213)、当該情報をSDKアプリ30に返却する(S214)。   Subsequently, the log service 51 checks the free capacity of the log storage area 60, and determines whether or not log information can be recorded (written) (S207). When the log storage area 60 has sufficient free space, the log service 51 records log information in the log storage area 60 (S208). At this time, the log service 51 records time information, a log ID, and the like in addition to the identification information of the communication protocol and the encryption protocol. The log ID is a unique ID for each log (log for one write). Subsequently, the log service 51 responds to the SDK common processing module 401 that the log information has been successfully recorded (S209). The SDK common processing module 401 notifies the security manager 406 that communication processing is possible because the log information has been successfully recorded (S210). Upon receiving the notification, the security manager 406 sends a response to the JSSE 403 to permit the processing related to the communication request notified in step S202 (S211). The JSSE 403 receives the permission from the security manager 406 and executes communication processing (communication start, data transmission / reception, communication end, etc.) requested by the SDK application 30 using the socket library 52 (S212). When information indicating the processing result (success / failure of processing) is returned from the socket library 52 (S213), the JSSE 403 returns the information to the SDK application 30 (S214).

一方、ステップS207において、ログサービス51は、ログ記憶領域60がログフル又はニアフル(空き容量が所定値以下)の状態であり、ログ情報の書き込みは不可能又は適切ではないと判定した場合、ログ情報の記録に失敗したことをSDK共通処理モジュール401に応答する(S221)。SDK共通処理モジュール401は、ログ情報の記録に失敗したため通信処理が不可能であることをセキュリティマネージャ406に通知する(S222)。セキュリティマネージャ406は、当該通知を受けて、ステップS202において通知された通信要求に係る処理を許可しない旨の応答をJSSE403に対して行う(S223)。JSSE403は、セキュリティマネージャ406からの不許可の応答を受けて、要求された通信処理は実行できないことをSDK30に応答する(S224)。   On the other hand, when the log service 51 determines in step S207 that the log storage area 60 is in a log full or near full state (the free capacity is equal to or less than a predetermined value) and log information cannot be written or is not appropriate, Response to the SDK common processing module 401 (S221). The SDK common processing module 401 notifies the security manager 406 that the communication processing is impossible because the log information recording has failed (S222). Upon receiving the notification, the security manager 406 makes a response to the JSSE 403 that the process related to the communication request notified in step S202 is not permitted (S223). In response to the non-permission response from the security manager 406, the JSSE 403 responds to the SDK 30 that the requested communication process cannot be executed (S224).

ところで、ログ記憶領域60がログフル又はニアフルの状態となった場合には、ログサービス51が、ログ記録領域60に記録されているログ情報をログ収集サーバ10に転送するようにしてもよい。この場合、転送済みのログ情報をログ記憶領域60より削除することで、ログ記憶領域60の空き容量を確保することができ、通信処理を実行させることが可能となる。但し、ログ収集サーバ10側がログフル又はニアフルの場合、ステップS221以降の処理が実行される。   Incidentally, when the log storage area 60 is in a log full or near full state, the log service 51 may transfer the log information recorded in the log recording area 60 to the log collection server 10. In this case, by deleting the transferred log information from the log storage area 60, the free capacity of the log storage area 60 can be secured and the communication process can be executed. However, if the log collection server 10 side is log full or near full, the processing from step S221 is executed.

なお、ログ収集サーバ10へのログ情報の転送は、定期的に行われてもよいし、ログ情報の記録の度に逐次行われてもよい。いずれのタイミングで転送するかについては、操作パネル206を介して管理者等によって設定可能としてもよい。この場合、設定内容(転送するタイミングを示す情報)はHDD214に保存される。ログサービス51は、当該設定内容を参照して、ログ情報の転送のタイミングを判定する。   Note that the transfer of log information to the log collection server 10 may be performed periodically or sequentially each time the log information is recorded. The timing at which data is transferred may be set by an administrator or the like via the operation panel 206. In this case, the setting content (information indicating the transfer timing) is stored in the HDD 214. The log service 51 refers to the setting content and determines the transfer timing of the log information.

上述したように、第一の実施の形態の機器20によれば、暗号化通信に関して、SDKアプリ30からの明示的なログ情報の記録要求が無くてもログ情報を強制的に記録することができる。したがって、ログの記録漏れを防止することができ、不正なSDKアプリ30の存在の検知の可能性を向上させることができる。   As described above, according to the device 20 of the first embodiment, log information can be forcibly recorded even when there is no explicit log information recording request from the SDK application 30 regarding encrypted communication. it can. Therefore, it is possible to prevent a log record from being missed and to improve the possibility of detecting the presence of an unauthorized SDK application 30.

また、暗号化通信についてログ情報を記録するため、ログ情報の蓄積量の急速な肥大化を抑制しつつ、セキュリティ上重要な通信に関するログ情報を記録することができる。また、ログ情報の記録が不可能な場合は、通信処理の実行は許可されないため、不正な処理の痕跡が残されないまま当該不正な処理が実行されてしまうといった事態の発生を防止することができる。   Further, since log information is recorded for encrypted communication, it is possible to record log information related to communication important for security while suppressing rapid enlargement of the amount of accumulated log information. In addition, when log information cannot be recorded, execution of communication processing is not permitted, and therefore, it is possible to prevent the occurrence of a situation in which the unauthorized processing is performed without leaving a trace of unauthorized processing. .

次に、第二の実施の形態としてジョブログ(ジョブ履歴)の記録について説明する。第二の実施の形態では、第一の実施の形態と異なる点について説明する。したがって、特に言及しない点については第一の実施の形態と同様でよい。   Next, recording of a job log (job history) will be described as a second embodiment. In the second embodiment, differences from the first embodiment will be described. Accordingly, the points not particularly mentioned may be the same as those in the first embodiment.

図6は、第二の実施の形態における機器のソフトウェア構成例を示す図である。図6中、図3と同一部分には同一符号を付し、その説明は省略する。   FIG. 6 is a diagram illustrating a software configuration example of the device according to the second embodiment. In FIG. 6, the same parts as those in FIG.

同図のSDKプラットフォーム40には、ジョブサービス407、アプリケーションマネージャ408、ジョブ制御モジュール409、認証マネージャ410、及びジョブログマネージャ411等が含まれている。   The SDK platform 40 shown in the figure includes a job service 407, an application manager 408, a job control module 409, an authentication manager 410, a job log manager 411, and the like.

ジョブサービス407は、実行が要求されたジョブ(印刷、スキャン、コピー、FAX送信等)に関して、機器20のハードウェアの制御を行う。アプリケーションマネージャ408は、SDKアプリ30に関する情報(アプリケーション情報)を管理する。例えば、SDKアプリ30のインストール時には、SDKアプリ30のプロダクトIDとSDKアプリ30の識別名(アプリ名)との対応情報がアプリケーションマネージャ408に登録される。アプリケーションマネージャ408は、当該対応情報をHDD214に記録して管理する。なお、プロダクトIDとは、SDKアプリ30の製品ごとに割り当てられるIDである。   The job service 407 controls the hardware of the device 20 with respect to a job requested to be executed (printing, scanning, copying, FAX transmission, etc.). The application manager 408 manages information (application information) related to the SDK application 30. For example, when the SDK application 30 is installed, correspondence information between the product ID of the SDK application 30 and the identification name (application name) of the SDK application 30 is registered in the application manager 408. The application manager 408 manages the correspondence information by recording it in the HDD 214. The product ID is an ID assigned to each product of the SDK application 30.

ジョブ制御モジュール409、認証マネージャ410、及びジョブログマネージャ411は、OSGiフレームワーク上で動作するバンドルである。ジョブ制御モジュール409は、SDKアプリ30よりジョブの実行要求を受け付ける。認証マネージャ410は、機器20のユーザのログイン時の認証を行う。機器20のHDD214にはユーザ情報(例えば、ユーザ名及びパスワード)が記録されており、認証マネージャ410は操作パネル206に表示されたログイン画面に入力された情報(ユーザ名及びパスワード等)に基づいて認証を行い、認証されたユーザのユーザ名又はユーザIDをRAM212内に保持する。認証されたユーザは、ログインユーザとして機器20のSDKアプリ30を利用して機器20にジョブを実行させることができる。ジョブログマネージャ411は、SDKアプリ30よりジョブの実行要求が発生した際のログ(ジョブログ)の記録処理を制御する。   The job control module 409, the authentication manager 410, and the job log manager 411 are bundles that operate on the OSGi framework. The job control module 409 receives a job execution request from the SDK application 30. The authentication manager 410 performs authentication when the user of the device 20 logs in. User information (for example, a user name and password) is recorded in the HDD 214 of the device 20, and the authentication manager 410 is based on information (user name, password, and the like) input on the login screen displayed on the operation panel 206. Authentication is performed, and the user name or user ID of the authenticated user is stored in the RAM 212. The authenticated user can cause the device 20 to execute a job using the SDK application 30 of the device 20 as a login user. The job log manager 411 controls log (job log) recording processing when a job execution request is generated from the SDK application 30.

以下、第二の実施の形態における機器20の処理手順について説明する。図7は、第二の実施の形態における機器の処理概要を説明するためのフローチャートである。   Hereinafter, the processing procedure of the device 20 in the second embodiment will be described. FIG. 7 is a flowchart for explaining an outline of processing of the device in the second embodiment.

機器20において、SDKアプリ30は、ユーザによって操作パネル206を介して実行を指示されたジョブ(印刷、スキャン、コピー、又はFAX送信等)の実行要求をSDKプラットフォーム40に対して行う(S301)。当該ジョブの実行要求に応じ、ジョブサービス407は、ジョブログに出力するジョブ情報を生成する(S311)。ジョブ情報には、例えば、ジョブの実行条件に関する情報(パラメータ)が含まれる。ジョブの実行条件に関するパラメータは、例えば、ジョブの実行指示の際にユーザによって入力される。ジョブ情報の生成に成功すると(S312でYES)、ジョブサービス407は、生成されたジョブ情報をジョブログマネージャ411に通知する(S313)。   In the device 20, the SDK application 30 issues an execution request to the SDK platform 40 for a job (such as printing, scanning, copying, or FAX transmission) instructed to be executed by the user via the operation panel 206 (S301). In response to the job execution request, the job service 407 generates job information to be output to the job log (S311). The job information includes, for example, information (parameters) related to job execution conditions. The parameter relating to the job execution condition is input by the user when the job execution instruction is given, for example. If the job information is successfully generated (YES in S312), the job service 407 notifies the job log manager 411 of the generated job information (S313).

また、認証マネージャ410は、ジョブ実行要求時のログインユーザのユーザ情報(ユーザ名等)をRAM212より取得する(S321)。ユーザ情報の取得に成功した場合(S322でYES)、認証マネージャ410は、ユーザ情報をジョブログマネージャ411に通知する(S323)。   Further, the authentication manager 410 acquires user information (user name and the like) of the login user at the time of job execution request from the RAM 212 (S321). When acquisition of user information is successful (YES in S322), the authentication manager 410 notifies the job log manager 411 of user information (S323).

また、アプリケーションマネージャ408は、ジョブ実行要求元のSDKアプリ30のアプリケーション情報(プロダクトID)を取得する(S331)。プロダクトIDの取得に成功した場合(S332でYES)、アプリケーションマネージャ408は、プロダクトIDをジョブログマネージャ411に通知する(S333)。   In addition, the application manager 408 acquires application information (product ID) of the SDK application 30 that is the job execution request source (S331). If acquisition of the product ID is successful (YES in S332), the application manager 408 notifies the job log manager 411 of the product ID (S333).

ジョブログマネージャ411は、ジョブ情報、ユーザ情報、及びプロダクトIDの通知を受け付けると、受け付けた情報を含むログ情報を生成する(S341)。続いて、ログサービス51は、ログ記憶領域60の空き容量等を確認し、ログ情報の記録の可否をチェックする(S342)。ログ情報の記録が可能な場合(S343でYES)、ジョブサービス407は要求されたジョブの実行を制御する(S344)。また、ログサービス51は、ログ情報をログ記憶領域60に記録する(S345)。当該ログ情報には、ジョブ情報、ユーザ情報、及びプロダクトIDが含まれている。したがって、「誰が(ユーザ情報)何を使って(プロダクトID)何をしたか(ジョブ情報)」を示す情報がジョブログとして記録される。   Upon receiving the job information, user information, and product ID notification, the job log manager 411 generates log information including the received information (S341). Subsequently, the log service 51 confirms the free capacity of the log storage area 60, and checks whether or not log information can be recorded (S342). If log information can be recorded (YES in S343), the job service 407 controls the execution of the requested job (S344). Further, the log service 51 records log information in the log storage area 60 (S345). The log information includes job information, user information, and product ID. Therefore, information indicating “who (user information) what was used (product ID) and what was done (job information)” is recorded as a job log.

なお、ジョブ情報の生成に失敗した場合(S312でNO)、ユーザ情報の取得に失敗した場合(S322でNO)、プロダクトIDの取得に失敗した場合(S332でNO)、又はログ情報の記録が不可能な場合(S343でNO)は、ジョブの実行及びログ情報の記録は実行されない。   If job information generation has failed (NO in S312), user information acquisition has failed (NO in S322), product ID acquisition has failed (NO in S332), or log information has been recorded. If it is not possible (NO in S343), job execution and log information recording are not executed.

続いて、図7においてその概要を説明した処理手順について更に詳細に説明する。図8は、第二の実施の形態における機器の処理手順を説明するためのシーケンス図である。   Next, the processing procedure whose outline has been described with reference to FIG. 7 will be described in more detail. FIG. 8 is a sequence diagram for explaining the processing procedure of the device in the second embodiment.

ステップS401において、SDKアプリ30は、ユーザによって操作パネル206を介して実行を指示されたジョブ(印刷、スキャン、コピー、又はFAX送信等)の実行要求をジョブ制御モジュール409に対して出力する。当該実行要求にはジョブの実行条件(ジョブ条件)に関するパラメータが含まれている。続いて、ジョブ制御モジュール409は、ジョブ条件のパラメータをジョブサービス407に設定することにより、ジョブの実行をジョブサービス407に要求する(S402)。   In step S <b> 401, the SDK application 30 outputs an execution request for a job (such as printing, scanning, copying, or FAX transmission) instructed to be executed by the user via the operation panel 206 to the job control module 409. The execution request includes a parameter related to a job execution condition (job condition). Subsequently, the job control module 409 requests the job service 407 to execute the job by setting the job condition parameter in the job service 407 (S402).

続いて、ジョブサービス407は、ジョブの実行を開始する旨の通知(ジョブ実行通知)を認証マネージャ410及びアプリケーションマネージャ408に対して行う(S403、S405)。また、ジョブサービス407は、ジョブ条件を含むジョブ情報を生成し、当該ジョブ情報をジョブログマネージャ411に通知する(S408)。   Subsequently, the job service 407 notifies the authentication manager 410 and the application manager 408 that the job execution is started (job execution notification) (S403, S405). Further, the job service 407 generates job information including job conditions, and notifies the job log manager 411 of the job information (S408).

ジョブ実行通知(S403)を受けた認証マネージャ410は、現在のログインユーザのユーザ情報(ユーザ名等)をRAM212より取得し、ジョブログマネージャ411に通知する(S404)。   Upon receiving the job execution notification (S403), the authentication manager 410 acquires user information (user name, etc.) of the current login user from the RAM 212, and notifies the job log manager 411 (S404).

また、ジョブ実行通知(S405)を受けたアプリケーションマネージャ408は、当該ジョブ実行通知に係るスレッドの属性情報に基づいてジョブ要求元のJSDKアプリ30のプロダクトIDを取得する(S406)。本実施の形態では、スレッドの属性情報としてスレッドグループを用いる。スレッドグループ(ThreadGroup)とは、Java(登録商標)標準の仕組みであり、スレッド(Thread)やスレッドグループの集合である。一つ以上のスレッドを一つのスレッドグループに関連付けることができる。また、スレッドグループには、名前(スレッドグループ名)を付加することができる。そして、各スレッド内では、当該スレッドが属するスレッドグループを識別することができる。   The application manager 408 that has received the job execution notification (S405) acquires the product ID of the JSDK application 30 that is the job request source based on the thread attribute information related to the job execution notification (S406). In this embodiment, a thread group is used as thread attribute information. A thread group (ThreadGroup) is a Java (registered trademark) standard mechanism, and is a set of threads and thread groups. One or more threads can be associated with a thread group. A name (thread group name) can be added to the thread group. In each thread, the thread group to which the thread belongs can be identified.

本実施の形態では、SDKアプリ30ごとにスレッド及びスレッドグループが生成される。すなわち、一つのSDKアプリ30に対して一つのスレッドグループが割り当てられ、当該スレッドグループのスレッドグループ名には、当該SDKアプリ30の識別名(アプリ名)が設定される。また、本実施の形態において、ジョブ制御モジュール409、ジョブサービス407、アプリケーションマネージャ408は、それぞれ独立したプロセス又はスレッドとして動作するプログラムではなく、SDKアプリ30と同一スレッド上で動作するプログラムモジュール(関数又はクラスの集合)である。したがって、アプリケーションマネージャ408は、自らのスレッドが属するスレッドグループのスレッドグループ名に基づいてジョブ要求元のSDKアプリ30のアプリ名を取得する。また、アプリケーションマネージャ408は、取得されたアプリ名と、SDKアプリ30のインストール時に生成されるアプリ名とプロダクトIDとの対応情報とに基づいて、ジョブ要求元のSDKアプリ30のプロダクトIDを取得する。アプリケーションマネージャ408は、取得されたプロダクトIDをジョブ要求元のSDKアプリ30の識別情報としてジョブログマネージャ411に通知する(S407)。   In the present embodiment, a thread and a thread group are generated for each SDK application 30. That is, one thread group is assigned to one SDK application 30, and the identification name (application name) of the SDK application 30 is set as the thread group name of the thread group. In this embodiment, the job control module 409, the job service 407, and the application manager 408 are not programs that operate as independent processes or threads, but program modules (functions or functions) that operate on the same thread as the SDK application 30. Class set). Therefore, the application manager 408 acquires the application name of the SDK application 30 that is the job request source based on the thread group name of the thread group to which its own thread belongs. Also, the application manager 408 acquires the product ID of the SDK application 30 that is the job request source, based on the acquired application name and the correspondence information between the application name generated when the SDK application 30 is installed and the product ID. . The application manager 408 notifies the job log manager 411 of the acquired product ID as identification information of the SDK application 30 that is the job request source (S407).

ジョブログマネージャ411は、ジョブ情報、ユーザ情報、及びプロダクトIDの通知を受け付けると、受け付けた情報を含むログ情報を生成する(S409)。続いて、ジョブログマネージャ411は、生成されたログ情報の記録をSDK共通処理モジュール401を介してログサービス51に要求する(S410、S411)。続いて、ログサービス51は、ログ記憶領域60の空き容量等を確認し、ログ情報の記録(書き込み)の可否を判定する(S412)。ログ記憶領域60に十分空き容量が有る場合、ログサービス51はログ記憶領域60にログ情報を記録する(S413)。この際、ログサービス51は、ジョブ情報、ユーザ情報、及びプロダクトID等に加え、時刻情報、及びログID等を記録する。   Upon receiving the job information, user information, and product ID notification, the job log manager 411 generates log information including the received information (S409). Subsequently, the job log manager 411 requests the log service 51 to record the generated log information via the SDK common processing module 401 (S410, S411). Subsequently, the log service 51 confirms the free capacity of the log storage area 60 and the like, and determines whether log information can be recorded (written) (S412). When the log storage area 60 has sufficient free space, the log service 51 records log information in the log storage area 60 (S413). At this time, the log service 51 records time information, log ID, and the like in addition to job information, user information, product ID, and the like.

続いて、ログサービス51は、ログ情報の記録に成功したことをSDK共通処理モジュール401に応答する(S414)。SDK共通処理モジュール401は、ログ情報の記録に成功したため、ジョブの実行が可能であることをジョブサービス407に通知する(S415)。ジョブサービス407は、当該通知を受けて、SDKアプリ30によって要求されたジョブの実行を制御する(S416)。続いて、ジョブサービス407は、ジョブの実行状態(実行結果)を示す情報をジョブ制御モジュール409を介してSDKアプリ30に返却する(S417、S418)。   Subsequently, the log service 51 responds to the SDK common processing module 401 that the log information has been successfully recorded (S414). The SDK common processing module 401 notifies the job service 407 that the job can be executed because the log information has been successfully recorded (S415). Upon receiving the notification, the job service 407 controls the execution of the job requested by the SDK application 30 (S416). Subsequently, the job service 407 returns information indicating the execution state (execution result) of the job to the SDK application 30 via the job control module 409 (S417, S418).

なお、ステップS412において、ログサービス51が、ログ情報の書き込みは不可能又は適切ではないと判定した場合、第一の実施の形態と同様にログ記録領域60に記録されているログ情報をログ収集サーバ10に転送し、転送されたログ情報をログ記録領域60から削除するようにしてもよい。また、ログ情報を転送するタイミングについても第一の実施の形態と同様に選択可能としてもよい。   In step S412, if the log service 51 determines that writing of log information is impossible or inappropriate, the log information recorded in the log recording area 60 is collected as in the first embodiment. The log information transferred to the server 10 may be deleted from the log recording area 60. Also, the timing for transferring the log information may be selectable as in the first embodiment.

上述したように第二の実施の形態の機器20によれば、ジョブの実行に関して、SDKアプリ30からの明示的なログ情報の記録要求が無くてもログ情報を強制的に記録することができる。したがって、ログの記録漏れを防止することができ、不正なSDKアプリ30の存在の検知の可能性を向上させることができる。また、ログ情報の記録が不可能な場合は、ジョブは実行されないため、不正な処理の痕跡が残されないまま当該不正な処理が実行されてしまうといった事態の発生を防止することができる。   As described above, according to the device 20 of the second embodiment, log information can be forcibly recorded even when there is no explicit log information recording request from the SDK application 30 regarding job execution. . Therefore, it is possible to prevent a log record from being missed and to improve the possibility of detecting the presence of an unauthorized SDK application 30. Further, when log information cannot be recorded, the job is not executed, so that it is possible to prevent a situation in which the illegal process is executed without leaving a trace of the illegal process.

なお、第一の実施の形態においても、第二の実施の形態と同様の仕組みによって、暗号化通信処理時のログインユーザや、暗号化通信処理の要求元のSDKアプリ30の識別名等をログ情報に含めて記録するようにしてもよい。   In the first embodiment, the log-in user at the time of encrypted communication processing, the identification name of the SDK application 30 requesting the encrypted communication processing, and the like are also logged by the same mechanism as in the second embodiment. Information may be included and recorded.

以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。   As mentioned above, although the Example of this invention was explained in full detail, this invention is not limited to such specific embodiment, In the range of the summary of this invention described in the claim, various deformation | transformation・ Change is possible.

10 ログ収集サーバ
15 ネットワーク
20 機器
30 SDKアプリ
40 SDKプラットフォーム
51 ログサービス
52 ソケットライブラリ
60 ログ記憶領域
201 コントローラ
202 スキャナ
203 プリンタ
204 モデム
205 ネットワークインタフェース
206 操作パネル
211 CPU
212 RAM
213 ROM
214 HDD
401 SDK共通処理モジュール
402 JVM
403 JSSE
404 通信サービス
405 通信ログサービス
406 セキュリティマネージャ
407 ジョブサービス
408 アプリケーションマネージャ
409 ジョブ制御モジュール
410 認証マネージャ
411 ジョブログマネージャ
10 log collection server 15 network 20 device 30 SDK application 40 SDK platform 51 log service 52 socket library 60 log storage area 201 controller 202 scanner 203 printer 204 modem 205 network interface 206 operation panel 211 CPU
212 RAM
213 ROM
214 HDD
401 SDK common processing module 402 JVM
403 JSSE
404 Communication service 405 Communication log service 406 Security manager 407 Job service 408 Application manager 409 Job control module 410 Authentication manager 411 Job log manager

特開2005−269619号公報JP 2005-269619 A

Claims (6)

アプリケーションプログラムを実行可能な機器であって、
前記アプリケーションプログラムからの処理の実行要求に応じ、該実行要求に係る識別情報を含めて前記処理に関する履歴情報を記憶装置に記録する履歴情報記録手段と、
前記履歴情報を前記記憶装置に記録できる場合に、前記実行要求に基づく処理を実行する処理実行手段と、
を有することを特徴とする機器。
A device capable of executing an application program,
In response to a process execution request from the application program, history information recording means for recording history information regarding the process including identification information related to the execution request in a storage device;
Processing execution means for executing processing based on the execution request when the history information can be recorded in the storage device;
A device characterized by comprising:
前記履歴情報記録手段は、前記実行要求に係るユーザの識別情報を前記履歴情報に含めることを特徴とする請求項1記載の機器。   The device according to claim 1, wherein the history information recording means includes user identification information related to the execution request in the history information. 前記履歴情報記録手段は、前記実行要求に係るアプリケーションプログラムの識別情報を前記履歴情報に含めることを特徴とする請求項1又は2記載の機器。   The device according to claim 1, wherein the history information recording unit includes identification information of an application program related to the execution request in the history information. 前記履歴情報記録手段は、前記処理のパラメータを前記履歴情報に含めることを特徴とする請求項1乃至3いずれか一項記載の機器。   The device according to claim 1, wherein the history information recording unit includes a parameter of the process in the history information. アプリケーションプログラムを実行可能な機器が実行する履歴情報記録方法であって、
前記アプリケーションプログラムからの処理の実行要求に応じ、該実行要求に係る識別情報を含めて前記処理に関する履歴情報を記憶装置に記録する履歴情報記録手順と、
前記履歴情報を前記記憶装置に記録できる場合に、前記実行要求に基づく処理を実行する処理実行手順と、
を有することを特徴とする履歴情報記録方法。
A history information recording method executed by a device capable of executing an application program,
In response to a process execution request from the application program, a history information recording procedure for recording history information regarding the process including identification information related to the execution request in a storage device;
A process execution procedure for executing a process based on the execution request when the history information can be recorded in the storage device;
A history information recording method comprising:
アプリケーションプログラムを実行可能な機器に、
前記アプリケーションプログラムからの処理の実行要求に応じ、該実行要求に係る識別情報を含めて前記処理に関する履歴情報を記憶装置に記録する履歴情報記録手順と、
前記履歴情報を前記記憶装置に記録できる場合に、前記実行要求に基づく処理を実行する処理実行手順と、
を実行させるためのプログラム。
To a device that can execute application programs,
In response to a process execution request from the application program, a history information recording procedure for recording history information regarding the process including identification information related to the execution request in a storage device;
A process execution procedure for executing a process based on the execution request when the history information can be recorded in the storage device;
A program for running
JP2013022133A 2013-02-07 2013-02-07 Device, history information recording method, and program Active JP5500280B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013022133A JP5500280B2 (en) 2013-02-07 2013-02-07 Device, history information recording method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013022133A JP5500280B2 (en) 2013-02-07 2013-02-07 Device, history information recording method, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2012127252A Division JP5201280B2 (en) 2012-06-04 2012-06-04 Device, history information recording method, program, and history information recording system

Publications (2)

Publication Number Publication Date
JP2013093058A true JP2013093058A (en) 2013-05-16
JP5500280B2 JP5500280B2 (en) 2014-05-21

Family

ID=48616084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013022133A Active JP5500280B2 (en) 2013-02-07 2013-02-07 Device, history information recording method, and program

Country Status (1)

Country Link
JP (1) JP5500280B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017084052A (en) * 2015-10-27 2017-05-18 京セラドキュメントソリューションズ株式会社 Image processing apparatus and program therefor
JP7436847B2 (en) 2020-09-23 2024-02-22 株式会社デンソーウェーブ information processing equipment
US11954519B2 (en) 2020-12-07 2024-04-09 Ricoh Company, Ltd. Information processing apparatus, method, and recording medium controlling execution of a process based on the amount of a type of log data stored

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01166209A (en) * 1987-09-30 1989-06-30 Hitachi Ltd Operation control method for computer system
JPH09330190A (en) * 1996-06-12 1997-12-22 Ricoh Co Ltd Network print system
JPH1124967A (en) * 1997-07-03 1999-01-29 Nec Eng Ltd Operation history recording device
JP2007102416A (en) * 2005-10-03 2007-04-19 Fuji Xerox Co Ltd Electronic equipment
JP2008065490A (en) * 2006-09-05 2008-03-21 Konica Minolta Business Technologies Inc Image forming apparatus, log management method for the same and log management program
JP2008085733A (en) * 2006-09-28 2008-04-10 Sharp Corp Image processor
JP2009073036A (en) * 2007-09-20 2009-04-09 Canon Inc Image processing system, memory medium, and program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01166209A (en) * 1987-09-30 1989-06-30 Hitachi Ltd Operation control method for computer system
JPH09330190A (en) * 1996-06-12 1997-12-22 Ricoh Co Ltd Network print system
JPH1124967A (en) * 1997-07-03 1999-01-29 Nec Eng Ltd Operation history recording device
JP2007102416A (en) * 2005-10-03 2007-04-19 Fuji Xerox Co Ltd Electronic equipment
JP2008065490A (en) * 2006-09-05 2008-03-21 Konica Minolta Business Technologies Inc Image forming apparatus, log management method for the same and log management program
JP2008085733A (en) * 2006-09-28 2008-04-10 Sharp Corp Image processor
JP2009073036A (en) * 2007-09-20 2009-04-09 Canon Inc Image processing system, memory medium, and program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017084052A (en) * 2015-10-27 2017-05-18 京セラドキュメントソリューションズ株式会社 Image processing apparatus and program therefor
JP7436847B2 (en) 2020-09-23 2024-02-22 株式会社デンソーウェーブ information processing equipment
US11954519B2 (en) 2020-12-07 2024-04-09 Ricoh Company, Ltd. Information processing apparatus, method, and recording medium controlling execution of a process based on the amount of a type of log data stored

Also Published As

Publication number Publication date
JP5500280B2 (en) 2014-05-21

Similar Documents

Publication Publication Date Title
JP5072715B2 (en) History information recording device, history information recording method, program, and history information recording system
JP4827523B2 (en) Information processing apparatus, information processing method, and control program
US20120096465A1 (en) Image forming apparatus, log management method, and storage medium
US20160006796A1 (en) Information processing system
US10051154B2 (en) Information processing apparatus, control method in information processing apparatus, and image processing apparatus
US9064122B2 (en) Job processing system, job processing method, and non-transitory computer-readable medium
US7904613B2 (en) Network device, network device management method, network device management system
JP4969480B2 (en) Image forming apparatus, information processing method, and information processing program
JP5500280B2 (en) Device, history information recording method, and program
US20100179965A1 (en) Image processing apparatus and image processing method
US9250840B2 (en) Image forming apparatus capable of executing applications, image forming method, and recording medium
JP2004288025A (en) Service processor, service processing system, original data storing method of service processing system, and service processing program
US8452194B2 (en) System, image processing apparatus, image forming apparatus, and method thereof
JP5517606B2 (en) Processing server, control method thereof, policy server, and computer program
JP2010160740A (en) Management apparatus, information processing apparatus, log processing method and program
JP2009037589A (en) Program determining apparatus, program determining method and program
JP2009205262A (en) Application program installation device, application program installation method, program, and recording medium
JP5201280B2 (en) Device, history information recording method, program, and history information recording system
KR101502906B1 (en) Method of managing file in WevDAV embeded image forming apparatus and image forming system for performing thereof
JP2009020609A (en) Image forming apparatus, program control method, and program
JP2007216552A (en) IMAGE FORMING APPARATUS AND Web PAGE FILE ACQUISITION PROGRAM
US20080256614A1 (en) Network terminal management apparatus, method and program
JP2012156758A (en) Image forming apparatus, program management method, program management program, and record medium
JP6413219B2 (en) Information processing system, conversion transmission system, and conversion transmission method
JP2017027272A (en) 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: 20130207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131112

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140109

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140225

R151 Written notification of patent or utility model registration

Ref document number: 5500280

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151