JP2018060373A - Information processing device, information processing method and program - Google Patents

Information processing device, information processing method and program Download PDF

Info

Publication number
JP2018060373A
JP2018060373A JP2016197548A JP2016197548A JP2018060373A JP 2018060373 A JP2018060373 A JP 2018060373A JP 2016197548 A JP2016197548 A JP 2016197548A JP 2016197548 A JP2016197548 A JP 2016197548A JP 2018060373 A JP2018060373 A JP 2018060373A
Authority
JP
Japan
Prior art keywords
application
component
listener
operating environment
request
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
JP2016197548A
Other languages
Japanese (ja)
Other versions
JP6768439B2 (en
Inventor
高橋 健太郎
Kentaro Takahashi
健太郎 高橋
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2016197548A priority Critical patent/JP6768439B2/en
Publication of JP2018060373A publication Critical patent/JP2018060373A/en
Application granted granted Critical
Publication of JP6768439B2 publication Critical patent/JP6768439B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To improve operability of UI components by using an event acquisition function which is unable to be used by applications with general authority.SOLUTION: An information processing device comprises an operating environment in which applications may operate. A first application and a second application may operate in the operating environment, wherein the first application has authority to register a listener in the operating environment to notify an event due to a user operation outside of an area of components to the components constituting a screen, wherein the second application has no such authority, and the second application has a requesting means to request the listener registration for the first application when the components constituting the screen of the second application is the components requiring notification of the event due to the user operation outside the area of the components. The first application has a registration means to request, in response to the request from the second application, the listener registration in the operation environment.SELECTED DRAWING: Figure 3

Description

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

従来、機器で動作するソフトウェアのセキュリティが重要となっている。しかし、セキュリティを厳しくすると利便性が損なわれるという側面がある。例えば、グラフィカルユーザインタフェースに関し、ソフトウェアでプログラムされたプルダウン部品は、ユーザの操作に応じて動作する。画面上に表示されているプルダウン部品が自身の領域外のタッチ操作に応じて閉じることで、操作性のよいプルダウン部品が実現できる。一方、ユーザの操作をすべてプルダウン部品が取得できるようにすると、セキュリティホールが生じうるという課題がある。   Conventionally, the security of software operating on devices has been important. However, there is an aspect in which convenience is lost when security is tightened. For example, for a graphical user interface, a pull-down component programmed with software operates in response to a user operation. A pull-down component with good operability can be realized by closing the pull-down component displayed on the screen in response to a touch operation outside its own area. On the other hand, there is a problem that if a pull-down component can acquire all user operations, a security hole may occur.

この課題に対し、特許文献1では、ユーザの操作を特定のモジュールだけが処理する仕組みが考案されている。特許文献1では、2つのOSが一つの機器上で動作する環境下において、画面上のタッチイベントを2つのOSのどちらか片方だけで処理する。このとき、タッチイベントの処理を別のOSに対して隠蔽することで、イベントを横取りして盗み見る動作を防いでいる。しかし、イベント処理を完全に隠蔽すると、正当な目的でイベントを取得したい場合に対応できない。   In response to this problem, Patent Document 1 devises a mechanism in which only specific modules process user operations. In Patent Document 1, in an environment where two OSs operate on one device, a touch event on the screen is processed by only one of the two OSs. At this time, by concealing the processing of the touch event from another OS, an operation of intercepting and stealing the event is prevented. However, if event processing is completely concealed, it is not possible to deal with a case where an event is to be acquired for a legitimate purpose.

特開2014−135054号公報JP 2014-133504 A

本発明は上記の課題を鑑みてなされたものであり、システム上で動作するアプリケーションの権限を制限しつつ、そのアプリケーションの画面を構成するUI部品がシステムにて発生したイベントを取得して応答できるようにする。   The present invention has been made in view of the above problems, and can restrict the authority of an application operating on the system and can acquire and respond to an event generated in the system by a UI component constituting the screen of the application. Like that.

上記課題を解決するために本願発明は以下の構成を有する。すなわち、アプリケーションが動作する動作環境を備える情報処理装置であって、画面を構成する部品に対し当該部品の領域外におけるユーザ操作によるイベントを通知するためのリスナを前記動作環境に登録できる権限を有する第1のアプリケーションと、前記権限を有しない第2のアプリケーションとが前記動作環境にて動作し、前記第2のアプリケーションは、前記第2のアプリケーションの画面を構成する部品が当該部品の領域外におけるユーザ操作によるイベントの通知を要する部品である場合に、前記第1のアプリケーションに対して前記リスナの登録を要求する要求手段を有し、前記第1のアプリケーションは、前記第2のアプリケーションからの要求に応じて、前記動作環境に前記リスナの登録の要求を行う登録手段を有する。   In order to solve the above problems, the present invention has the following configuration. That is, an information processing apparatus having an operating environment in which an application operates, and has an authority to register a listener for notifying a component constituting a screen of an event caused by a user operation outside the region of the component in the operating environment. A first application and a second application that does not have the authority operate in the operating environment, and the second application is configured such that a part constituting the screen of the second application is outside the area of the part. In the case of a component that requires notification of an event by a user operation, it has request means for requesting the first application to register the listener, and the first application is a request from the second application. And a registration means for requesting registration of the listener in the operating environment. .

本発明によれば、権限を制限されたアプリケーションでもシステムの機能を利用するUI部品を利用でき、アプリケーションの利便性が向上する。   According to the present invention, a UI component that uses system functions can be used even in an application whose authority is restricted, and the convenience of the application is improved.

情報処理装置のハードウェア構成の一例を示す概略図。Schematic which shows an example of the hardware constitutions of information processing apparatus. 情報処理装置上に構築するソフトウェア構成の一例を示す模式図。The schematic diagram which shows an example of the software structure constructed | assembled on information processing apparatus. 本願発明に係るソフトウェアが備える機能の構成例を示す模式図。The schematic diagram which shows the structural example of the function with which the software which concerns on this invention is provided. アプリケーションの実行処理を示すフローチャート。The flowchart which shows the execution process of an application. UI部品作成処理を示すフローチャート。The flowchart which shows UI component creation processing. AWTイベントリスナ登録処理を示すフローチャート。The flowchart which shows an AWT event listener registration process. ユーザが画面をタッチした時の処理を示すフローチャート。The flowchart which shows a process when a user touches a screen. UI部品のプルダウンが開いた状態と閉じた状態を示す図。The figure which shows the state which the pull-down of UI components opened and closed. 権限リストの記述例を示す図。The figure which shows the example of a description of an authority list. 第2の実施形態に係るUI部品リスナ登録手段の呼び出し処理のフローチャート。The flowchart of the calling process of the UI component listener registration means which concerns on 2nd Embodiment.

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

<第1の実施形態>
[システム構成]
(ハードウェア構成)
図1は、本願発明を適用可能な一般的な情報処理装置101のハードウェア構成の一例を示す図である。情報処理装置101は、ハードウェア構成として、CPU11、入力装置12、記憶装置13、表示装置14、及び外部接続IFを含み、各構成要素は、バス10を介して通信可能に接続される。
<First Embodiment>
[System configuration]
(Hardware configuration)
FIG. 1 is a diagram illustrating an example of a hardware configuration of a general information processing apparatus 101 to which the present invention can be applied. The information processing apparatus 101 includes, as a hardware configuration, a CPU 11, an input device 12, a storage device 13, a display device 14, and an external connection IF, and each component is communicably connected via the bus 10.

CPU11は、記憶装置13に記憶されている後述するアプリケーションやプログラム実行環境等の各々に対応するプログラムに基づき処理を行うことにより、後述する各機能、又はフローチャート等を実現する。入力装置12は、情報を入力するキーボードやマウスなどが該当する。記憶装置13は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、ハードディスク装置等を含み、上述した各プログラム以外に、プログラムに基づく処理で用いられるデータ等を記憶する。表示装置14は、画面等を表示するディスプレイである。なお、入力装置12と表示装置14が一体となったタッチパネルディスプレイなどが用いられてもよい。外部接続IF15は、ネットワークインタフェースや外部機器との各種接続インタフェースである。   The CPU 11 realizes each function, flowchart, or the like described later by performing processing based on a program corresponding to each of an application, a program execution environment, and the like, which will be described later, stored in the storage device 13. The input device 12 corresponds to a keyboard or a mouse for inputting information. The storage device 13 includes, for example, a ROM (Read Only Memory), a RAM (Random Access Memory), a hard disk device, and the like, and stores data used in processing based on the program in addition to the above-described programs. The display device 14 is a display that displays a screen or the like. A touch panel display in which the input device 12 and the display device 14 are integrated may be used. The external connection IF 15 is a network interface or various connection interfaces with external devices.

なお、CPU11は、プログラムを実行することで各種手段として機能することが可能である。また、CPU11と協調して動作するASIC(Application Specific Integrated Circuit)などの制御回路がこれらの手段として機能してもよい。また、CPU11と情報処理装置101の動作を制御する制御回路との協調によってこれらの手段が実現されてもよい。また、CPU11は単一のものである必要はなく、複数であってもよい。この場合、複数のCPU11は分散して処理を実行することが可能である。また、複数のCPU11は単一のコンピュータに配置されていてもよいし、物理的に異なる複数のコンピュータに配置されていてもよい。なお、CPU11がプログラムを実行することで実現する手段が専用の回路によって実現されてもよい。   The CPU 11 can function as various means by executing a program. A control circuit such as an ASIC (Application Specific Integrated Circuit) that operates in cooperation with the CPU 11 may function as these means. These means may be realized by cooperation between the CPU 11 and a control circuit that controls the operation of the information processing apparatus 101. Further, the CPU 11 does not have to be a single one and may be a plurality. In this case, the plurality of CPUs 11 can perform processing in a distributed manner. Further, the plurality of CPUs 11 may be disposed on a single computer, or may be disposed on a plurality of physically different computers. Note that the means realized by the CPU 11 executing the program may be realized by a dedicated circuit.

(ソフトウェア構成)
図2は、情報処理装置101のソフトウェア構成の一例を示す図である。情報処理装置101において、オペレーティングシステム(OS)201、仮想マシン202、アプリケーションフレームワーク203、及び各種アプリケーション(システムアプリケーション204、アプリケーション205)が階層構造にて構成されている。OS201は、システム全体の基盤となるソフトウェアである。例えば、OS201の例としては、Linux(登録商標)などのOSが挙げられる。仮想マシン202は、OS201上のプロセスでありながら、自身の上でアプリケーションが動作する動作環境を提供するソフトウェアである。仮想マシン202の例としては、Java(登録商標)VM(Virtual Machine)などが挙げられる。アプリケーションフレームワーク203は、仮想マシン202上で動作するプログラムであり中間コードによって構成される。アプリケーションフレームワーク203は、各種アプリケーションのライフサイクルを管理する。
(Software configuration)
FIG. 2 is a diagram illustrating an example of a software configuration of the information processing apparatus 101. In the information processing apparatus 101, an operating system (OS) 201, a virtual machine 202, an application framework 203, and various applications (system application 204, application 205) are configured in a hierarchical structure. The OS 201 is software that is the basis of the entire system. For example, an OS such as Linux (registered trademark) is an example of the OS 201. The virtual machine 202 is software that provides an operating environment in which an application operates on itself while being a process on the OS 201. An example of the virtual machine 202 is a Java (registered trademark) VM (Virtual Machine). The application framework 203 is a program that operates on the virtual machine 202 and is configured by intermediate code. The application framework 203 manages the life cycle of various applications.

システムアプリケーション204とアプリケーション205は、アプリケーションフレームワーク203上で動作するアプリケーションである。システムアプリケーション204は、システムの権限で動作する。一方、アプリケーション205は、制限された権限で実行される。図3において、2つのアプリケーション205が示されているが、この構成に限定するものではなく、更に多くのアプリケーション205が動作可能であってよい。   The system application 204 and the application 205 are applications that operate on the application framework 203. The system application 204 operates with system authority. On the other hand, the application 205 is executed with limited authority. In FIG. 3, two applications 205 are shown, but the present invention is not limited to this configuration, and more applications 205 may be operable.

次に、情報処理装置101のシステム上でアプリケーションの権限を管理する構成について説明する。図3は、図2にて示したソフトウェア構成において、権限に関する機能とイベントに関する機能を司る部位を示す図である。なお、各アプリケーションは図3に示す機能以外も備えており、これらに関しては、本願発明と直接関係ないため説明を省略する。   Next, a configuration for managing application authority on the system of the information processing apparatus 101 will be described. FIG. 3 is a diagram illustrating a part that controls a function related to authority and a function related to an event in the software configuration illustrated in FIG. 2. Each application has functions other than those shown in FIG. 3, and the description thereof is omitted because it is not directly related to the present invention.

仮想マシン202は、イベント管理手段301、および権限管理手段302を備える。イベント管理手段301は、情報処理装置101への入力をイベントとして管理する。入力の具体例として、タッチパネル上でのユーザによるタッチ操作や、情報処理装置101が備えるハードキーの押下などがある。これらの入力は、タッチイベント、ハードキーイベントとしてイベント管理手段301で管理される。なお、イベントとして管理される入力は上記に限定するものではなく、例えば、入力装置12や外部接続IF15を介した各種ユーザ操作など他の操作であってよい。   The virtual machine 202 includes event management means 301 and authority management means 302. The event management unit 301 manages an input to the information processing apparatus 101 as an event. Specific examples of the input include a touch operation by a user on the touch panel and a press of a hard key provided in the information processing apparatus 101. These inputs are managed by the event management unit 301 as touch events and hard key events. The input managed as an event is not limited to the above, and may be other operations such as various user operations via the input device 12 or the external connection IF 15, for example.

権限管理手段302は、仮想マシン202上で動作するアプリケーションの権限を管理する。例えば、アプリケーションがタッチイベントを取得して処理するためにイベント管理手段301にリスナを登録する場合、権限管理手段302にて管理されている情報に基づいて、そのアプリケーションがリスナの登録権限を有しているか否かが確認される。リスナ(イベントリスナ)とは、イベントを監視し、何かしらのイベントが起きた際に対応付けられた処理を実行するように制御するオブジェクトである。ここでの処理とは、関数やメソッドなどが該当する。ここで、処理の実行の起因となるイベントを誰でも取得できると、暗証番号やパスワードを盗むキーロガーのような悪質なプログラムの動作も許してしまう。そのため、権限のないプログラム(アプリケーション)はイベント管理手段301へのリスナ登録をできないように制御される。つまり、仮想マシン202の権限管理手段302は、各アプリケーションの権限を管理し、リスナの登録の要求の際に、要求元のアプリケーションの権限を確認する。   The authority management unit 302 manages the authority of the application operating on the virtual machine 202. For example, when an application registers a listener in the event management unit 301 in order to acquire and process a touch event, the application has listener registration authority based on information managed by the authority management unit 302. It is confirmed whether or not. A listener (event listener) is an object that monitors an event and controls to execute a process associated with the event when some event occurs. The process here corresponds to a function or a method. Here, if anyone can acquire the event that causes the execution of the process, the operation of a malicious program such as a key logger stealing a password or password is allowed. Therefore, an unauthorized program (application) is controlled so that listener registration in the event management unit 301 cannot be performed. In other words, the authority management unit 302 of the virtual machine 202 manages the authority of each application, and confirms the authority of the requesting application when requesting registration of the listener.

アプリケーションフレームワーク203は、FW内権限管理手段303を備える。FW内権限管理手段303は、アプリケーションフレームワーク203上で動作するアプリケーションの権限を管理する。これにより、アプリケーションフレームワーク203独自のフォーマットでアプリ権限リスト307の書式を規定することや、独自の権限を追加することが容易になっている。実際の権限の管理は、仮想マシン202の標準機能として備わっている権限管理手段302を利用して行う。   The application framework 203 includes FW authority management means 303. The intra-FW authority management unit 303 manages the authority of an application operating on the application framework 203. This makes it easy to define the format of the application authority list 307 in a format unique to the application framework 203 and to add a unique authority. Actual authority management is performed using authority management means 302 provided as a standard function of the virtual machine 202.

システムアプリケーション204は、UI部品リスナ登録手段304、およびシステム権限リスト305を備える。UI部品リスナ登録手段304は、システムアプリケーション204の機能の一つであり、アプリケーション205が備えるUI部品ライブラリ306からのみ利用される。システム権限リスト305は、システムアプリケーション204が有する権限のリストである。本実施形態では、システムアプリケーション204は、後述するlistenToAllAWTEvents権限を有するものとする。この権限を有することで、システムアプリケーション204は、仮想マシン202上のイベントを取得するリスナを仮想マシン202に登録できる。   The system application 204 includes a UI component listener registration unit 304 and a system authority list 305. The UI component listener registration unit 304 is one of the functions of the system application 204 and is used only from the UI component library 306 provided in the application 205. The system authority list 305 is a list of authorities that the system application 204 has. In the present embodiment, it is assumed that the system application 204 has a listenToAllAEVENTs authority to be described later. By having this authority, the system application 204 can register a listener for acquiring an event on the virtual machine 202 in the virtual machine 202.

アプリケーション205は、UI部品ライブラリ306、およびアプリ権限リスト307を備える。UI部品ライブラリ306は、アプリケーション205が表示装置14等において画面を描画するときに用いるライブラリである。アプリケーション205の開発者は、予め各種UI部品が定義されたUI部品ライブラリ306を利用することで、詳細を知ることなく容易に部品を利用できる。アプリ権限リスト307は、アプリケーション205が有する権限のリストである。本実施形態では、システムアプリケーション204が有する権限と比較して、アプリケーション205が有する権限は制限されたものであるとし、アプリケーション205は、listenToAllAWTEvents権限を有しないものとする。従って、アプリケーション205は、例えば、UI部品の領域以外に対するユーザ操作のイベントを取得するリスナを仮想マシン202に直接登録できないように制限されている。   The application 205 includes a UI component library 306 and an application authority list 307. The UI component library 306 is a library used when the application 205 draws a screen on the display device 14 or the like. By using the UI component library 306 in which various UI components are defined in advance, the developer of the application 205 can easily use the components without knowing details. The application authority list 307 is a list of authorities that the application 205 has. In the present embodiment, it is assumed that the authority of the application 205 is limited as compared to the authority of the system application 204, and the application 205 does not have the listenToAllAEVENTs authority. Therefore, for example, the application 205 is restricted so that a listener that acquires an event of a user operation for a region other than the UI component area cannot be directly registered in the virtual machine 202.

アプリケーション205のアプリ権限リスト307とシステムアプリケーション204のシステム権限リスト305の記載例を図9に示す。図9において、コード901では、環境変数user.homeとして設定されたディレクトリのファイルに対する読み込み(read)、書き込み(write)、実行(execute)、削除(delete)の権限が記載され、これらの動作が許可されている。また、コード902では、任意のソケットでの受付(accept)、接続(connect)、待受(listen)、名前解決(resolve)の権限が記載され、これらの動作が許可されている。   A description example of the application authority list 307 of the application 205 and the system authority list 305 of the system application 204 is shown in FIG. In FIG. 9, in the code 901, the environment variable user. The authority of reading (reading), writing (writing), executing (execute), and deleting (delete) for the files in the directory set as home is described, and these operations are permitted. In the code 902, the authority of acceptance (accept), connection (connect), standby (listen), and name resolution (resolve) at an arbitrary socket is described, and these operations are permitted.

ここまで、情報処理装置101の構成について説明した。本実施形態において、仮想マシン202はJava仮想マシン(JavaVM)とし、アプリケーションフレームワーク203はOSGi(Open Services Gateway initiative;登録商標)として、以下説明を行う。   So far, the configuration of the information processing apparatus 101 has been described. In the present embodiment, the virtual machine 202 is assumed to be a Java virtual machine (Java VM), and the application framework 203 is assumed to be OSGi (Open Services Gateway initiative; registered trademark).

本実施形態では、UI部品ライブラリ306が備えるプルダウン部品を用いるアプリケーション205を対象として説明を行う。プルダウン部品の例を図8に示す。プルダウン部品は、画面を構成するUI部品であり、プルダウンボタン801とプルダウンメニュー802から構成される。プルダウンボタン801の領域内をタッチすると、プルダウンメニュー802が表示される。プルダウンメニュー802を表示した状態でプルダウンボタン801の領域内、あるいはプルダウンボタン801の外の領域をタッチすると、プルダウンボタン801は閉じた状態に戻る。   In the present embodiment, a description will be given for the application 205 that uses a pull-down component included in the UI component library 306. An example of the pull-down component is shown in FIG. The pull-down component is a UI component that configures the screen, and includes a pull-down button 801 and a pull-down menu 802. When the area of the pull-down button 801 is touched, a pull-down menu 802 is displayed. When the area inside the pull-down button 801 or the area outside the pull-down button 801 is touched while the pull-down menu 802 is displayed, the pull-down button 801 returns to the closed state.

ここで、プルダウンメニュー802が閉じた状態に戻るためには、部品の中か外の領域をタッチしたイベントが発生したことをプルダウンボタン801が認識する必要がある。しかし、OS201と仮想マシン202の実装によっては、部品の外の領域がタッチされたイベントを容易に取得できない。例えば、Unix系OSで一般的なX−Window Systemに対応した実装では、部品が独立したウィンドウとして処理される。この場合、各部品には自身の領域内のイベントしか通知されない。その結果、各部品は、部品の領域外がタッチされたイベントが発生したことを認識することができない。   Here, in order to return to the closed state of the pull-down menu 802, the pull-down button 801 needs to recognize that an event has occurred in which an area inside or outside the part is touched. However, depending on the implementation of the OS 201 and the virtual machine 202, an event in which an area outside the component is touched cannot be easily acquired. For example, in the implementation corresponding to the X-Window System that is common in the Unix-based OS, the components are processed as independent windows. In this case, each component is notified only of events within its own area. As a result, each component cannot recognize that an event has occurred where the outside of the component area has been touched.

領域外のイベントを取得するためには、仮想マシン202のイベント管理手段301にリスナを登録する必要がある。リスナの登録処理はUI部品ライブラリ306が行うが、UI部品ライブラリ306の権限はアプリケーション205のものである。つまり、アプリ権限リスト307において、イベント管理手段301へリスナを登録する権限を記載する必要がある。ここでのリスナを登録する権限とは、Java(登録商標)が標準で定義されている権限であり、listenToAllAWTEventsとして知られている。以降、listenToAllAWTEvents権限を要するリスナ登録を、AWTイベントリスナの登録と記す。   In order to acquire an event outside the area, it is necessary to register a listener in the event management unit 301 of the virtual machine 202. The listener registration process is performed by the UI component library 306, and the authority of the UI component library 306 is that of the application 205. That is, in the application authority list 307, it is necessary to describe the authority to register the listener in the event management unit 301. The authority to register a listener here is an authority defined by Java (registered trademark) as a standard, and is known as listenToAllAWEvents. Hereinafter, listener registration that requires listenToAllAWTEvents authority will be referred to as AWT event listener registration.

一方、listenToAllAWTEvents権限をアプリケーション205に与えると、その権限により悪質な動作も可能になってしまう。そのため、アプリケーション205の権限を制限したまま、UI部品ライブラリ306がAWTイベントリスナを登録できる方法が必要となる。そこで、本実施形態では、仮想マシン202と同じシステムの権限で動作するシステムアプリケーション204とUI部品ライブラリ306を連携させる。ここでは、便宜上、システムアプリケーション204を「第1のアプリケーション」とも称し、アプリケーション205を「第2のアプリケーション」とも称する。   On the other hand, if the listenToAllAWTEvents right is given to the application 205, a malicious operation is enabled by the right. Therefore, there is a need for a method in which the UI component library 306 can register an AWT event listener while restricting the authority of the application 205. Therefore, in this embodiment, the system application 204 that operates with the same system authority as that of the virtual machine 202 is linked to the UI component library 306. Here, for convenience, the system application 204 is also referred to as a “first application”, and the application 205 is also referred to as a “second application”.

[処理フロー]
図4、図5を用いて、情報処理装置101の動作について説明する。図4は、アプリケーションの実行処理を示すフローチャートである。図5は、UI部品を作成する処理を示すフローチャートである。図6は、AWTイベントリスナの登録処理を示すフローチャートである。いずれの処理も、情報処理装置101のCPU11が記憶装置13等に格納されたプログラムを読み出して実行する事により実現される。
[Processing flow]
The operation of the information processing apparatus 101 will be described with reference to FIGS. FIG. 4 is a flowchart showing application execution processing. FIG. 5 is a flowchart illustrating processing for creating a UI component. FIG. 6 is a flowchart showing registration processing of an AWT event listener. Both processes are realized by the CPU 11 of the information processing apparatus 101 reading and executing a program stored in the storage device 13 or the like.

アプリケーション205を実行する処理の流れについて、図4を用いて説明する。アプリケーション205の実行が開始されると本処理フローが開始される。   The flow of processing for executing the application 205 will be described with reference to FIG. When the execution of the application 205 is started, this processing flow is started.

S401にて、アプリケーションフレームワーク203は、FW内権限管理手段303を用いて、開始されたアプリケーション205のアプリ権限リスト307を取得する。   In S 401, the application framework 203 acquires the application authority list 307 of the started application 205 using the intra-FW authority management unit 303.

S402にて、アプリケーションフレームワーク203は、仮想マシン202の権限管理手段302にアプリケーション205の権限を登録する。   In step S <b> 402, the application framework 203 registers the authority of the application 205 in the authority management unit 302 of the virtual machine 202.

S403にて、アプリケーション205は、画面を表示するために、UI部品ライブラリ306によりUI部品を作成する。このとき、アプリケーション205は、UI部品ライブラリ306の機能を利用してUI部品を作成するだけであり、リスナ登録などの作成処理の詳細はアプリケーション205に対しては隠蔽される。本処理工程の詳細は、図5を用いて説明する。そして、本処理フローを終了する。   In step S <b> 403, the application 205 creates a UI component using the UI component library 306 in order to display a screen. At this time, the application 205 only creates a UI component using the function of the UI component library 306, and details of creation processing such as listener registration are hidden from the application 205. Details of this processing step will be described with reference to FIG. Then, this processing flow ends.

次に、図4のS403におけるUI部品の作成処理の詳細について、図5を用いて説明する。UI部品ライブラリ306が作成するUI部品としては、プルダウン部品、ラベル部品、ボタン部品、テキスト入力部品などがあるが、これらに限定するものではない。例えばラベル部品について、異なる見栄えのラベル部品が複数種類用意されている。どのUI部品を作成するかは、アプリケーション205の指示に従う。   Next, details of the UI component creation processing in S403 in FIG. 4 will be described with reference to FIG. UI parts created by the UI part library 306 include pull-down parts, label parts, button parts, text input parts, and the like, but are not limited thereto. For example, a plurality of types of label parts having different appearances are prepared for the label parts. Which UI component is to be created follows the instructions of the application 205.

S501にて、UI部品ライブラリ306は、指示されたUI部品のインスタンスを作成する。   In step S501, the UI component library 306 creates an instance of the specified UI component.

S502にて、UI部品ライブラリ306は、作成したUI部品がイベントに反応する部品か否かを確認する。例えば、作成したUI部品がラベル部品であれば文字や画像を表示するだけであり、イベントに反応する必要はない。一方、ボタン部品であれば、自身がタッチされた際に選択されたことを示す描画に変化すると同時に紐付けられた処理を行うために、イベントに反応するUI部品である。イベントに反応するUI部品か否かの情報は予め定義され、その情報が保持されているものとする。イベントに反応するUI部品である場合は(S502にてYES)S503へ進み、イベントに反応しないUI部品である場合は(S502にてNO)本処理フローを終了する。   In step S502, the UI component library 306 confirms whether the created UI component is a component that reacts to an event. For example, if the created UI component is a label component, only characters and images are displayed, and there is no need to react to an event. On the other hand, in the case of a button component, it is a UI component that reacts to an event in order to perform a linked process at the same time it changes to a drawing indicating that it has been selected when it is touched. Information regarding whether or not the UI component reacts to an event is defined in advance, and the information is retained. If it is a UI part that reacts to an event (YES in S502), the process proceeds to S503. If it is a UI part that does not react to an event (NO in S502), the process flow ends.

S503にて、UI部品ライブラリ306は、UI部品自身の領域内のイベントを知るためのリスナの登録を仮想マシン202に要求する。自身の領域内のイベントを取得するリスナの登録に、特別な権限は必要ない。したがって、ここでは、仮想マシン202は、UI部品ライブラリ306の要求に応じてリスナを登録することとなる。ここでのリスナの登録は、システムアプリケーション204のUI部品リスナ登録手段304を介して要求(呼び出し)してもよいし、仮想マシン202に直接要求(呼び出し)してもよい。   In step S <b> 503, the UI component library 306 requests the virtual machine 202 to register a listener to know events in the area of the UI component itself. No special authority is required for registering listeners to get events in their area. Accordingly, here, the virtual machine 202 registers a listener in response to a request from the UI component library 306. The listener registration here may be requested (called) via the UI component listener registration unit 304 of the system application 204 or may be directly requested (called) to the virtual machine 202.

S504にて、UI部品ライブラリ306は、作成したUI部品が自身の領域外におけるイベントに反応するUI部品か否かを確認する。例えば、プルダウン部品であれば、自身の領域外のイベントに反応するUI部品となる。ここでの自身の領域外におけるイベントに反応するUI部品か否かは予め定義され、その情報が保持されているものとする。自身の領域外のイベントに反応するUI部品である場合は(S504にてYES)S505へ進み、自身の領域外のイベントに反応するUI部品でない場合は(S504にてNO)本処理フローを終了する。   In step S504, the UI component library 306 confirms whether the created UI component is a UI component that reacts to an event outside its own area. For example, a pull-down component is a UI component that reacts to an event outside its own area. Here, it is assumed that whether or not the UI component responds to an event outside its own area is defined in advance and that information is held. If it is a UI part that reacts to an event outside its own area (YES in S504), the process proceeds to S505. If it is not a UI part that reacts to an event outside its own area (NO in S504), this process flow ends. To do.

S505にて、UI部品ライブラリ306は、AWTイベントリスナの登録処理を行う。本処理の詳細は、図6を用いて説明する。そして、本処理フローを終了する。   In step S505, the UI component library 306 performs AWT event listener registration processing. Details of this processing will be described with reference to FIG. Then, this processing flow ends.

次に、図5のS505のAWTイベントリスナ登録処理の詳細について、図6を用いて説明する。   Next, details of the AWT event listener registration process in S505 of FIG. 5 will be described with reference to FIG.

S601にて、UI部品ライブラリ306は、部品の領域外におけるイベントを取得できる所定の動作環境か否かを確認する。例えば、情報処理装置101が独自のウィンドウシステムを備える場合、または、Windows(登録商標)用の仮想マシン202の場合は、部品の領域外のイベントを取得できる動作環境(仕様)となる。一方、Unix系OSで一般的なX−Window Systemに対応した実装では、部品の領域外のイベントを取得できない動作環境となる。ここでの動作環境に関する情報は、予め保持されており、この情報に基づいて判断してよい。UI部品の領域外のイベントを取得できない場合(S601にてNO)S602へ進み、部品の領域外のイベントを取得できる環境である場合(S601にてYES)本処理フローを終了する。   In step S601, the UI component library 306 confirms whether or not there is a predetermined operating environment in which an event outside the component area can be acquired. For example, when the information processing apparatus 101 has a unique window system, or in the case of a Windows (registered trademark) virtual machine 202, an operating environment (specification) in which an event outside the component area can be acquired. On the other hand, the mounting corresponding to the general X-Window System in the Unix-based OS becomes an operating environment in which events outside the component area cannot be acquired. Information on the operating environment here is stored in advance, and determination may be made based on this information. If an event outside the UI component area cannot be acquired (NO in S601), the process proceeds to S602, and if it is an environment in which an event outside the component area can be acquired (YES in S601), the process flow ends.

S602にて、UI部品ライブラリ306は、システムアプリケーション204のUI部品リスナ登録手段304を呼び出し、UI部品の領域外のイベントを取得するためのリスナの登録を要求する。   In step S602, the UI component library 306 calls the UI component listener registration unit 304 of the system application 204 and requests registration of a listener for acquiring an event outside the UI component area.

S603にて、UI部品リスナ登録手段304は、アプリケーション205のUI部品ライブラリ306からの要求に応じて、仮想マシン202のリスナ登録機能を呼び出し、リスナの登録を要求する。この登録機能は、仮想マシン202が標準的に備えるAPI(Application Programming Interface)である。   In step S <b> 603, the UI component listener registration unit 304 calls the listener registration function of the virtual machine 202 in response to a request from the UI component library 306 of the application 205 and requests listener registration. This registration function is an API (Application Programming Interface) that the virtual machine 202 includes as a standard.

S604にて、仮想マシン202は、登録を要求してきたアプリケーションがリスナ登録の権限を有しているか否かを確認する。上述したように、システムアプリケーション204のUI部品リスナ登録手段304は、システムアプリケーション204として動作しており、リスナ登録の権限を有する。   In step S604, the virtual machine 202 confirms whether or not the application that has requested registration has the authority for listener registration. As described above, the UI component listener registration unit 304 of the system application 204 operates as the system application 204 and has a listener registration authority.

S605にて、仮想マシン202は、リスナの登録を要求したアプリケーションがその権限を有しているか否かを判定する。権限を有している場合は(S605にてYES)S606へ進み、権限を有していない場合は(S605にてNO)S607へ進む。   In step S605, the virtual machine 202 determines whether the application that requested registration of the listener has the authority. If the user has authority (YES in S605), the process proceeds to S606. If the user does not have authority (NO in S605), the process proceeds to S607.

S606にて、仮想マシン202は、AWTイベントリスナをイベント管理手段301にて登録する。そして、本処理フローを終了する。   In S606, the virtual machine 202 registers the AWT event listener in the event management unit 301. Then, this processing flow ends.

S607にて、仮想マシン202は、要求されたリスナの登録を行わずに例外処理を行う。そして、本処理フローを終了する。図6のようにUI部品ライブラリ306からUI部品リスナ登録手段304を経由してリスナの登録を要求する限り、S605で登録権限が無いと判定される場合は生じない。しかし、アプリケーション205がUI部品の領域外に関するイベントのリスナを登録するために仮想マシン202のリスナ登録機能を直接呼び出した場合などは、リスナ登録権限がないために登録せずに例外処理を行われる。   In step S607, the virtual machine 202 performs exception processing without registering the requested listener. Then, this processing flow ends. As long as the registration of the listener is requested from the UI component library 306 via the UI component listener registration unit 304 as shown in FIG. 6, the case where it is determined in S605 that there is no registration authority does not occur. However, when the application 205 directly calls the listener registration function of the virtual machine 202 in order to register a listener for an event related to the outside of the UI component area, the exception processing is performed without registering because there is no listener registration authority. .

以下、情報処理装置101が備える入力装置12の1つであるタッチパネルをユーザがタッチしたときの処理について、図7を用いて説明する。本処理は、情報処理装置101のCPU11が記憶装置13等に格納されたプログラムを読み出して実行する事により実現される。   Hereinafter, processing when a user touches a touch panel, which is one of the input devices 12 included in the information processing apparatus 101, will be described with reference to FIG. This process is realized by the CPU 11 of the information processing apparatus 101 reading and executing a program stored in the storage device 13 or the like.

S701にて、情報処理装置101は、入力手段を介したユーザによる画面のタッチ操作を受け付ける。   In step S <b> 701, the information processing apparatus 101 receives a screen touch operation by the user via the input unit.

タッチ操作により、OS201を経由して仮想マシン202に入力が通知され、S702にて、イベント管理手段301は、タッチイベントを生成する。   By the touch operation, an input is notified to the virtual machine 202 via the OS 201, and in step S702, the event management unit 301 generates a touch event.

S703にて、仮想マシン202は、タッチイベントの座標が画面に表示中のUI部品の領域内か否かを確認する。UI部品の領域内であれば(S703にてYES)S704へ進み、UI部品の領域外であれば(S703にてNO)S705へ進む。なお、1の画面内に複数のUI部品が含まれている場合には、それぞれのUI部品についてタッチイベントの座標が領域内か否かを判定してよい。   In step S <b> 703, the virtual machine 202 confirms whether the coordinates of the touch event are within the area of the UI component being displayed on the screen. If it is within the UI part area (YES in S703), the process proceeds to S704. If it is outside the UI part area (NO in S703), the process proceeds to S705. When a plurality of UI parts are included in one screen, it may be determined whether or not the coordinates of the touch event are within the region for each UI part.

S704にて、仮想マシン202は、タッチイベントが領域内で行われているUI部品のリスナにイベントを通知する。これに伴って、UI部品に対応付けられた処理が実行される。   In step S704, the virtual machine 202 notifies the event to the listener of the UI component in which the touch event is performed in the area. Along with this, processing associated with the UI component is executed.

S705にて、仮想マシン202は、AWTリスナにイベントを通知する。つまり、自身の領域外にてタッチイベントが発生したことが通知される。これに伴って、例えば、図8に示すようなプルダウン部品であれば、プルダウンメニュー802が閉じる動作が実行される。そして、本処理フローを終了する。   In S705, the virtual machine 202 notifies the event to the AWT listener. That is, it is notified that a touch event has occurred outside its own area. Accordingly, for example, in the case of a pull-down component as shown in FIG. 8, an operation of closing the pull-down menu 802 is executed. Then, this processing flow ends.

なお、上記では、プルダウン部品を例に挙げて説明したがこれに限定するものではなく、他のUI部品を対象としてもよい。また、ユーザ操作の例としてタッチ操作を例に挙げて説明したが、これに限定するものではなく、例えばキーボタンの押下やフリック操作など他のユーザ操作であってもよい。   In the above description, the pull-down component is described as an example. However, the present invention is not limited to this, and other UI components may be targeted. In addition, the touch operation has been described as an example of the user operation, but the present invention is not limited to this, and may be another user operation such as pressing a key button or a flick operation.

以上、アプリケーション205の権限を制限したまま、UI部品ライブラリ306がAWTイベントリスナを登録できる方法について説明した。本実施形態により、アプリケーションの権限を制限して悪質な動作を防ぎつつ、アプリケーションの利便性を高めることが可能となる。   As described above, the method by which the UI component library 306 can register the AWT event listener while restricting the authority of the application 205 has been described. According to the present embodiment, it is possible to improve the convenience of the application while restricting the authority of the application to prevent malicious operations.

<第2の実施形態>
第1の実施形態では、AWTリスナを登録する際に、アプリケーション205のUI部品ライブラリ306からシステムアプリケーション204のUI部品リスナ登録手段304を呼び出す仕組みについて説明した。このとき、システムアプリケーション204が備えるUI部品リスナ登録手段304の存在をアプリケーション205の開発者は知ることがない前提であった。つまり、UI部品リスナ登録手段304は、非公開の構成としていた。しかし、もし悪意のある開発者にUI部品リスナ登録手段304の存在を知られてしまうと、攻撃用のプログラムからUI部品リスナ登録手段304を利用されてしまう危険がある。
<Second Embodiment>
In the first embodiment, the mechanism for calling the UI component listener registration unit 304 of the system application 204 from the UI component library 306 of the application 205 when registering the AWT listener has been described. At this time, it is assumed that the developer of the application 205 does not know the existence of the UI component listener registration unit 304 included in the system application 204. That is, the UI component listener registration unit 304 has a private configuration. However, if a malicious developer is informed of the presence of the UI component listener registration unit 304, there is a risk that the UI component listener registration unit 304 may be used by an attack program.

そこで、本実施形態では、UI部品リスナ登録手段304の内部で呼び出し元を確認し、UI部品ライブラリ306からの呼び出し以外を拒否する方法について説明する。つまり、UI部品リスナ登録手段304は、AWTイベントリスナの登録の要求元がUI部品ライブラリであれば、リスナ登録を仮想マシン202に対して要求する。   Therefore, in the present embodiment, a method of confirming the caller inside the UI component listener registration unit 304 and rejecting other than the call from the UI component library 306 will be described. In other words, the UI component listener registration unit 304 requests the virtual machine 202 to register the listener if the request source for registration of the AWT event listener is the UI component library.

図10は、システムアプリケーション204のUI部品リスナ登録手段304が呼び出し元を確認する処理のフローチャートである。ここでは、第1の実施形態にて説明した図6のS602にてUI部品リスナ登録手段304が呼び出された際に実行される場合を例に挙げて説明する。   FIG. 10 is a flowchart of processing in which the UI component listener registration unit 304 of the system application 204 confirms the caller. Here, a case where the UI component listener registration unit 304 is called in S602 of FIG. 6 described in the first embodiment will be described as an example.

アプリケーション205のUI部品ライブラリ306から呼び出されると、S1001にて、UI部品リスナ登録手段304は、その時点のスタックを取得する。ここでのスタックとは、関数の呼び出しをフレームとして積んだものである。スタックを上から走査することで、どのような関数を経由してUI部品リスナ登録手段304が呼び出されたのかを確認することができる。   When called from the UI part library 306 of the application 205, in step S1001, the UI part listener registration unit 304 acquires the stack at that time. The stack here is a stack of function calls as a frame. By scanning the stack from above, it is possible to confirm via which function the UI component listener registration unit 304 is called.

S1002にて、UI部品リスナ登録手段304は、現時点においてスタックの1つ下に積まれたフレームを取得する。UI部品リスナ登録手段304が正当に呼び出された場合、1つ下のフレームはUI部品ライブラリ306の特定の関数となる。特定の関数とは、例えばプルダウン部品の作成関数である。ここでは、第1の実施形態と同様、プルダウン部品を例に挙げて説明するが、これ以外のUI部品であれば、そのUI部品の作成関数となる。ここでのUI部品ライブラリ306の特定の関数は、予め定義され、その情報が管理されているものとする。   In step S <b> 1002, the UI component listener registration unit 304 acquires a frame that is currently stacked one level below the stack. When the UI component listener registration unit 304 is properly called, the next lower frame becomes a specific function of the UI component library 306. The specific function is, for example, a pull-down component creation function. Here, as in the first embodiment, a pull-down component will be described as an example. However, if it is a UI component other than this, it becomes a creation function of the UI component. Here, it is assumed that the specific function of the UI component library 306 is defined in advance and that information is managed.

S1003にて、UI部品リスナ登録手段304は、取得したフレームがUI部品ライブラリ306か否かを確認する。フレームがUI部品ライブラリ306である場合(S1003にてYES)図6のS603へ進み、フレームがUI部品ライブラリ306でない場合(S1003にてNO)S1004へ進む。S603以降の処理については、第1の実施形態にて述べた処理と同様であるため、説明を省略する。   In step S <b> 1003, the UI component listener registration unit 304 confirms whether the acquired frame is the UI component library 306. If the frame is the UI parts library 306 (YES in S1003), the process proceeds to S603 in FIG. 6, and if the frame is not the UI parts library 306 (NO in S1003), the process proceeds to S1004. Since the processing after S603 is the same as the processing described in the first embodiment, description thereof is omitted.

S1004にて、UI部品リスナ登録手段304は、登録処理を行わずに例外処理を行う。そして、本処理フローを終了する。この場合、図6のS603以降の処理は省略される。   In step S1004, the UI component listener registration unit 304 performs exception processing without performing registration processing. Then, this processing flow ends. In this case, the processing after S603 in FIG. 6 is omitted.

なお、本実施形態では、図6のS602にてUI部品リスナ登録手段304が呼び出された場合を例に挙げて説明したが、他の経路(UI部品ライブラリ306以外)にて呼び出された場合にも本処理が行われることとなる。このとき、他の経路(UI部品ライブラリ306以外)からUI部品リスナ登録手段304が呼び出されている場合には、リスナは登録されず例外処理が行われる。   In this embodiment, the case where the UI component listener registration unit 304 is called in S602 in FIG. 6 has been described as an example. However, when the UI component listener registration unit 304 is called in another route (other than the UI component library 306). This processing is also performed. At this time, if the UI component listener registration unit 304 is called from another route (other than the UI component library 306), the listener is not registered and exception processing is performed.

本実施形態により、第1の実施形態の効果に加え、よりセキュリティを向上させることが可能となる。   According to the present embodiment, in addition to the effects of the first embodiment, it is possible to further improve the security.

<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
<Other embodiments>
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

202…仮想マシン、203…アプリケーションフレームワーク、204…システムアプリケーション、301…イベント管理手段、302…権限管理手段、303…FW内権限管理手段、304…UI部品リスナ登録手段、306…UI部品ライブラリ 202 ... Virtual machine, 203 ... Application framework, 204 ... System application, 301 ... Event management unit, 302 ... Authority management unit, 303 ... Authority management unit in FW, 304 ... UI component listener registration unit, 306 ... UI component library

Claims (8)

アプリケーションが動作する動作環境を備える情報処理装置であって、
画面を構成する部品に対し当該部品の領域外におけるユーザ操作によるイベントを通知するためのリスナを前記動作環境に登録できる権限を有する第1のアプリケーションと、
前記権限を有しない第2のアプリケーションと、
が前記動作環境にて動作し、
前記第2のアプリケーションは、前記第2のアプリケーションの画面を構成する部品が当該部品の領域外におけるユーザ操作によるイベントの通知を要する部品である場合に、前記第1のアプリケーションに対して前記リスナの登録を要求する要求手段を有し、
前記第1のアプリケーションは、前記第2のアプリケーションからの要求に応じて、前記動作環境に前記リスナの登録の要求を行う登録手段を有する
ことを特徴とする情報処理装置。
An information processing apparatus having an operating environment in which an application operates,
A first application having the authority to register in the operating environment a listener for notifying an event by a user operation outside the region of the component to a component constituting the screen;
A second application not having the authority;
Operates in the operating environment,
The second application is configured such that when a component constituting the screen of the second application is a component that requires an event notification by a user operation outside the region of the component, the listener's Having request means for requesting registration;
The information processing apparatus according to claim 1, wherein the first application includes registration means for requesting registration of the listener in the operating environment in response to a request from the second application.
前記動作環境は、
アプリケーションの権限に関する情報を管理する管理手段と、
前記リスナの登録の要求を受け付けた際に、前記管理手段にて管理している情報に基づいて、当該要求の要求元が前記リスナの登録の権限を有しているか否かを判定し、当該判定の結果により前記リスナを登録する否かを制御する制御手段と
を有することを特徴とする請求項1に記載の情報処理装置。
The operating environment is
A management means for managing information about application permissions;
When receiving a request for registration of the listener, it is determined whether the request source of the request has authority to register the listener based on information managed by the management unit, The information processing apparatus according to claim 1, further comprising: a control unit that controls whether or not to register the listener based on a determination result.
前記第2のアプリケーションは、前記動作環境が、画面を構成する部品に対し当該部品の領域外におけるユーザ操作によるイベントの通知を行う仕様である所定の動作環境であるか否かを判定する手段を更に有し、
前記要求手段は、前記動作環境が前記所定の動作環境でないと判定された場合に、前記第1のアプリケーションに対して前記リスナの登録を要求することを特徴とする請求項1に記載の情報処理装置。
The second application includes means for determining whether or not the operating environment is a predetermined operating environment that is a specification for notifying an event by a user operation outside a region of the component to a component constituting the screen. In addition,
The information processing apparatus according to claim 1, wherein the request unit requests the first application to register the listener when it is determined that the operating environment is not the predetermined operating environment. apparatus.
前記第1のアプリケーションは、前記リスナの登録の要求を受け付けた際に、当該要求の要求元を確認する確認手段を更に有し、
前記要求手段は、前記確認手段にて前記要求元が前記第2のアプリケーションの前記要求手段であると確認された際に、前記動作環境に前記リスナの登録の要求を行うことを特徴とする請求項1乃至3のいずれか一項に記載の情報処理装置。
The first application further includes confirmation means for confirming a request source of the request when receiving a request for registration of the listener,
The requesting unit makes a request for registration of the listener to the operating environment when the requesting unit confirms that the request source is the requesting unit of the second application. Item 4. The information processing device according to any one of Items 1 to 3.
領域外におけるユーザ操作によるイベントの通知を要する部品は、プルダウン部品であることを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置。   The information processing apparatus according to any one of claims 1 to 4, wherein a component that requires notification of an event by a user operation outside the area is a pull-down component. 前記動作環境は、Java仮想マシンによる動作環境であり、
前記リスナは、AWTイベントリスナであることを特徴とする請求項1乃至5のいずれか一項に記載の情報処理装置。
The operating environment is an operating environment by a Java virtual machine,
The information processing apparatus according to claim 1, wherein the listener is an AWT event listener.
アプリケーションが動作する動作環境を備える情報処理装置の制御方法であって、
画面を構成する部品に対し当該部品の領域外におけるユーザ操作によるイベントを通知するためのリスナを前記動作環境に登録できる権限を有する第1のアプリケーションと、
前記権限を有しない第2のアプリケーションと、
が前記動作環境にて動作し、
前記第2のアプリケーションにおいて、前記第2のアプリケーションの画面を構成する部品が当該部品の領域外におけるユーザ操作によるイベントの通知を要する部品である場合に、前記第1のアプリケーションに対して前記リスナの登録を要求する要求工程を有し、
前記第1のアプリケーションにおいて、前記第2のアプリケーションからの要求に応じて、前記動作環境に前記リスナの登録の要求を行う登録工程を有する
ことを特徴とする情報処理装置の制御方法。
A method for controlling an information processing apparatus including an operating environment in which an application operates,
A first application having the authority to register in the operating environment a listener for notifying an event by a user operation outside the region of the component to a component constituting the screen;
A second application not having the authority;
Operates in the operating environment,
In the second application, when the component constituting the screen of the second application is a component that requires notification of an event by a user operation outside the region of the component, the listener's Has a request process to request registration;
The information processing apparatus control method according to claim 1, further comprising: a registration step of requesting registration of the listener in the operating environment in response to a request from the second application.
アプリケーションが動作する動作環境を備えるコンピュータに、
画面を構成する部品に対し当該部品の領域外におけるユーザ操作によるイベントを通知するためのリスナを前記動作環境に登録できる権限を有する第1のアプリケーションと、
前記権限を有しない第2のアプリケーションと、
を前記動作環境にて動作させ、
前記第2のアプリケーションにおいて、前記第2のアプリケーションの画面を構成する部品が当該部品の領域外におけるユーザ操作によるイベントの通知を要する部品である場合に、前記第1のアプリケーションに対して前記リスナの登録を要求する要求手段として機能させ、
前記第1のアプリケーションにおいて、前記第2のアプリケーションからの要求に応じて、前記動作環境に前記リスナの登録の要求を行う登録手段として機能させる
ことを特徴とするプログラム。
To a computer with an operating environment where the application runs
A first application having the authority to register in the operating environment a listener for notifying an event by a user operation outside the region of the component to a component constituting the screen;
A second application not having the authority;
In the operating environment,
In the second application, when the component constituting the screen of the second application is a component that requires notification of an event by a user operation outside the region of the component, the listener's Function as a request means to request registration,
A program that causes the first application to function as a registration unit that makes a request for registration of the listener in the operating environment in response to a request from the second application.
JP2016197548A 2016-10-05 2016-10-05 Information processing equipment, information processing methods, and programs Active JP6768439B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016197548A JP6768439B2 (en) 2016-10-05 2016-10-05 Information processing equipment, information processing methods, and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016197548A JP6768439B2 (en) 2016-10-05 2016-10-05 Information processing equipment, information processing methods, and programs

Publications (2)

Publication Number Publication Date
JP2018060373A true JP2018060373A (en) 2018-04-12
JP6768439B2 JP6768439B2 (en) 2020-10-14

Family

ID=61908572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016197548A Active JP6768439B2 (en) 2016-10-05 2016-10-05 Information processing equipment, information processing methods, and programs

Country Status (1)

Country Link
JP (1) JP6768439B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111736785A (en) * 2020-05-29 2020-10-02 北京百度网讯科技有限公司 Control method, device and equipment for screen projection playing and computer storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111736785A (en) * 2020-05-29 2020-10-02 北京百度网讯科技有限公司 Control method, device and equipment for screen projection playing and computer storage medium
CN111736785B (en) * 2020-05-29 2023-12-22 阿波罗智联(北京)科技有限公司 Method, device, equipment and computer storage medium for controlling screen throwing playing

Also Published As

Publication number Publication date
JP6768439B2 (en) 2020-10-14

Similar Documents

Publication Publication Date Title
JP5789624B2 (en) System and method for event management
KR101506683B1 (en) Apparatus and method for supporting multiple operating systems
US10108787B2 (en) View-based expiration of shared content
US20100242110A1 (en) Widget Security
US9667703B1 (en) System, method and computer program product for generating remote views in a virtual mobile device platform
US10963532B2 (en) Systems and methods for rendering weblinks inside a remote application using an embedded browser
US9104837B1 (en) Exposing subset of host file systems to restricted virtual machines based on upon performing user-initiated actions against host files
KR20090075691A (en) Virtual deletion in merged registry keys
US11803636B2 (en) Security system and method
US11886696B2 (en) Application hotspot on endpoint device
US20110179364A1 (en) Methods, systems, and computer program products for automating operations on a plurality of objects
US11151273B2 (en) Controlling installation of unauthorized drivers on a computer system
JP2015184827A (en) Browsing sharing server, browsing sharing system, browsing sharing method, and browsing sharing program
JP6768439B2 (en) Information processing equipment, information processing methods, and programs
CN114041275B (en) Confidential lifecycle management on a serverless platform
US20230195507A1 (en) Local to remote application switching
WO2023278167A1 (en) Redirection of attachments based on risk and context
KR20180060360A (en) Method and Apparatus of providing user-defined UI in administrative management program provided in cloud computing
JP2006268125A (en) Application server and its program
US20230367892A1 (en) Secure embedded web browser
JP2001154899A (en) Device for managing file and medium for recording program
Arthur et al. Privacy‐aware shared UI toolkit for nomadic environments
JP5066112B2 (en) Information processing device
US20240171543A1 (en) Protectively displaying specific fields in specific views of a secure interface
JP2023025427A (en) Remote ui management method for image processing apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190926

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200728

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200923

R151 Written notification of patent or utility model registration

Ref document number: 6768439

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151