JP2010282242A - Access control system, access control method, and access control program - Google Patents

Access control system, access control method, and access control program Download PDF

Info

Publication number
JP2010282242A
JP2010282242A JP2007286570A JP2007286570A JP2010282242A JP 2010282242 A JP2010282242 A JP 2010282242A JP 2007286570 A JP2007286570 A JP 2007286570A JP 2007286570 A JP2007286570 A JP 2007286570A JP 2010282242 A JP2010282242 A JP 2010282242A
Authority
JP
Japan
Prior art keywords
responsibility
execution
access
policy
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007286570A
Other languages
Japanese (ja)
Inventor
Masayuki Nakae
政行 中江
Takayuki Sasaki
貴之 佐々木
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2007286570A priority Critical patent/JP2010282242A/en
Priority to PCT/JP2008/063979 priority patent/WO2009025166A1/en
Publication of JP2010282242A publication Critical patent/JP2010282242A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Storage Device Security (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To solve the following problem of a conventional access control system: an interpretable access policy includes only a definition of conditions related to an access entity/access object/action or the like, and a definition of accessibility, and does not include the definition of a task, so that it is difficult to implement an access policy including the definition of the task. <P>SOLUTION: A monitoring means 105 controls the accessibility to an input/output event transmitted from a virtualizing means 103, and calls out, in addition thereto, a proper task implementation means 107 via a task implementation interface 108, in response to a task implementation instruction from a policy interpretation part 106. The task implementation interface 108 specifies the implementation means 107 to implement the duty, referring to a task management table 1081, in response to an input from the monitoring means 105 such as the input/output event and a task name/parameter. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、アクセス制御システム、アクセス制御方法およびアクセス制御用プログラムに関し、特に、アクセス制御において、アクセス要求の可否判定に加えて、暗号化やログ記録などの付帯条件としての責務を遂行することができるアクセス制御システム、アクセス制御方法およびアクセス制御用プログラムに関する。   The present invention relates to an access control system, an access control method, and an access control program. In particular, in access control, in addition to determining whether or not an access request can be made, it can fulfill duties as incidental conditions such as encryption and log recording. The present invention relates to an access control system, an access control method, and an access control program.

増加の一途をたどるサーバ装置の電力消費量や運用コストの低減、さらに企業内パーソナルコンピュータ(PC)の集中管理やシンクライアント化などといったニーズから、マシン仮想化技術が注目されつつある。しかし、仮想マシンに対するセキュリティ対策技術が不十分であったことから、近年、いくつかの仮想マシン向けアクセス制御システムが提案されている。   Machine virtualization technology is attracting attention due to needs such as a reduction in power consumption and operation costs of server devices, which are steadily increasing, and centralized management of personal computers (PCs) in enterprises and thin clients. However, due to insufficient security countermeasure techniques for virtual machines, several virtual machine access control systems have been proposed in recent years.

一例として、特許文献1に記載されているアクセス制御システムがある。特許文献1に記載されているシステムでは、ユーザ端末上に、「秘密」・「一般」の2種に分類された仮想マシンと、両仮想マシン間の通信を監視・制御するセキュリティゲートウェイとが備えられている。そして、セキュリティゲートウェイが、一般仮想マシンから秘密仮想マシンへのデータ送信のみを認めるように動作することによって、秘密仮想マシン内で扱われる業務データが一般仮想マシンに漏えいすることを防止する。   As an example, there is an access control system described in Patent Document 1. In the system described in Patent Literature 1, a virtual machine classified into two types of “secret” and “general” and a security gateway that monitors and controls communication between both virtual machines are provided on a user terminal. It has been. The security gateway operates so as to allow only data transmission from the general virtual machine to the secret virtual machine, thereby preventing business data handled in the secret virtual machine from leaking to the general virtual machine.

また、情報漏えい防止や業務監査などの目的で、アクセス時に入出力されるデータの暗号化や、アクセス時のログ記録などといった対策の実施が求められている。仮想マシンに対して、アクセス可否の制御機能に加えて、IP暗号化機能をもつアクセス制御システムの一例として、非特許文献1に記載されているセキュアメッセージルータ(Secure Messaging Router ;SMR)がある。しかし、SMRにおけるアクセスポリシーに記載されるものは、アクセス可否に関するルールであり、暗号化の実施要否は記載されず、アクセスポリシーは任意の通信に対して適用される。   Also, for the purpose of information leakage prevention and business auditing, measures such as encryption of data input / output at the time of access and log recording at the time of access are required. As an example of an access control system having an IP encryption function in addition to a function for controlling whether to access a virtual machine, there is a secure messaging router (SMR) described in Non-Patent Document 1. However, what is described in the access policy in SMR is a rule relating to whether access is possible, and does not indicate whether encryption is necessary or not, and the access policy is applied to any communication.

暗号化やログ記録などの対策の要否や、実施に際するパラメータ設定(暗号鍵など)は、本来、アクセス可否判定と同様に、アクセス主体・アクセス客体・アクションなどに関する条件を伴う。例えば、アクセス客体やアクション(通信の方向性など)に付随するリスクと、対策実施のコストとを考慮して、対策実施の要否や組み合わせ方などを柔軟に定義できることが求められる。具体的には、社内のPCまたはサーバ装置において稼動する仮想マシンに対して、社外への通信については広くログを記録し、特に関係会社など重要な情報がやり取りされる通信について暗号化を施すが、社内への通信についてはログ記録も暗号化も行わないというように定義できることが好ましい。また、セキュリティ管理者の視点からは、アクセス可否の制御も、上記対策の一種であり、実際に社外の特定のWebサーバに対する通信を遮断することが広く行われている。   Necessity of measures such as encryption and log recording, and parameter setting (encryption key, etc.) for implementation are inherently accompanied by conditions related to the access subject, the access object, the action, etc., as in the access permission determination. For example, it is required to be able to flexibly define the necessity and combination of countermeasures in consideration of the risks associated with access objects and actions (communication direction, etc.) and the cost of countermeasures. Specifically, for a virtual machine running on an in-house PC or server device, a wide log is recorded for communication outside the company, and encryption is performed for communication in which important information such as affiliated companies is exchanged. It is preferable that the in-house communication can be defined so that neither log recording nor encryption is performed. From the security manager's point of view, access permission / inhibition control is also a type of the above measures, and it is widely performed to actually block communication with a specific Web server outside the company.

このような状況を鑑みると、アクセスポリシーは、アクセス主体・アクセス客体・アクションなどに関する条件の定義、アクセス可否の定義、そして実施すべき対策の定義とを、一体として記述できることが望ましい。例えば、OASIS標準の1つであるXACML(eXtensible Access Control Markup Language )は、「責務(Obligation)」として実施すべき対策に関する定義を、上記の条件の定義やアクセス可否の定義とともに記述できる構文を備えている。   In view of this situation, it is desirable that the access policy can integrally describe the definition of conditions related to the access subject, access object, action, etc., the definition of accessibility, and the definition of countermeasures to be implemented. For example, XACML (eXtensible Access Control Markup Language), which is one of the OASIS standards, has a syntax that allows the definition of measures to be implemented as “Obligation” along with the above-mentioned conditions and accessability definitions. ing.

そのような統合的なアクセスポリシーを実施するアクセス制御システムの一例が、特許文献2に記載されている。特許文献2に記載されているシステムは、図34に示すように、クライアント装置40と通信を行う文書管理サーバ20と、文書管理サーバ20と通信を行うセキュリティ管理サーバ10とを備えている。文書管理サーバ20は、クライアント装置40におけるアプリケーション41からの要求に応じて、セキュリティ管理サーバ10をアクセスする。セキュリティ管理サーバ10には、セキュリティ機能の管理を行うセキュリティ管理モジュール11が搭載されている。セキュリティ管理モジュール11には、セキュリティ情報として、主体分類情報111、資源分類情報112、ポリシー113および責務詳細情報114が記憶されている。文書管理サーバ20において、文書管理モジュール21は、文書管理サーバ20に格納されている文書へのアプリケーション41からのアクセスに伴う責務として、ログ記録を実施する。責務内容判定モジュール22は、所定のポリシー113の記述に従って、ログ記録の要否およびログの記録方法を決定して、文書管理モジュール21に指示を発行する。このような構成によって、例えば、文書に対するアクション(閲覧、印刷、消去など)などに応じて、ログ記録の要否や記録内容の詳細度などをアクセスポリシーで定義・制御することができる。   An example of an access control system that implements such an integrated access policy is described in Patent Document 2. As shown in FIG. 34, the system described in Patent Document 2 includes a document management server 20 that communicates with the client device 40 and a security management server 10 that communicates with the document management server 20. The document management server 20 accesses the security management server 10 in response to a request from the application 41 in the client device 40. The security management server 10 is equipped with a security management module 11 that manages security functions. The security management module 11 stores subject classification information 111, resource classification information 112, policy 113, and responsibility detailed information 114 as security information. In the document management server 20, the document management module 21 performs log recording as a duty accompanying access from the application 41 to a document stored in the document management server 20. The responsibility content determination module 22 determines the necessity of log recording and the log recording method according to the description of the predetermined policy 113 and issues an instruction to the document management module 21. With such a configuration, for example, the necessity of log recording and the level of detail of recorded contents can be defined and controlled by an access policy according to actions (viewing, printing, erasing, etc.) on a document.

なお、ポリシーにもとづいて所定の判断を行うシステムとして、特許文献3に記載されたシステムがある。   Note that there is a system described in Patent Document 3 as a system that performs a predetermined determination based on a policy.

特開2006−201845号公報(図1)Japanese Patent Laying-Open No. 2006-201845 (FIG. 1) 特開2006−134216号公報(図3)JP 2006-134216 A (FIG. 3) 特開2007−156612号公報(図7)JP 2007-156612 A (FIG. 7) Watanabe, Y., et al., “Bridging the Gap Between Inter-communication Boundary and Internal Trusted Components ”,Proceedings of ESORICS 2006 ,Lecture Notes on Computer Science ,vol. 4189 ,pp. 65-80 ,2006 (図3,72頁)Watanabe, Y., et al., “Bridging the Gap Between Inter-communication Boundary and Internal Trusted Components”, Proceedings of ESORICS 2006, Lecture Notes on Computer Science, vol. 4189, pp. 65-80, 2006 (Fig. 3, 72 pages)

特許文献1および非特許文献1に記載された仮想マシン向けアクセス制御システムでは、解釈できるアクセスポリシーが、いずれもアクセス主体・アクセス客体・アクションなどに関する条件の定義と、アクセス可否の定義のみを含み、責務の定義を含まないため、責務の定義を含むアクセスポリシーの実施が困難である。   In the access control system for virtual machines described in Patent Document 1 and Non-Patent Document 1, all of the access policies that can be interpreted include only definitions of conditions relating to access subjects, access objects, actions, etc., and definitions of whether access is possible, Since the responsibility definition is not included, it is difficult to implement the access policy including the responsibility definition.

また、特許文献2に記載されている文書管理モジュール21は、文書アクセスの可否を判定・制御する手段を備えているので、特許文献1に記載されているセキュリティゲートウェイにログ記録の実施手段を設け、責務内容判定モジュール22と組み合わせることによって、仮想マシンに対する責務を含めたアクセス制御システムを構成することが考えられる。しかし、そのような構成では、実施できる責務がログ記録に限定される。   The document management module 21 described in Patent Document 2 includes means for determining / controlling whether or not document access is possible. Therefore, the security gateway described in Patent Document 1 is provided with log recording execution means. It is conceivable to configure an access control system including the responsibility for the virtual machine by combining with the responsibility content determination module 22. However, with such a configuration, the responsibilities that can be performed are limited to logging.

さらに、非特許文献1に記載されているSMRを加えても、責務内容判定モジュール22は、記録すべきログの内容など、ログ記録に関する責務実施指示に特化しているので、ログ記録とは異なる指示内容(暗号鍵や暗号アルゴリズムなど)を持つSMR内部の暗号化手段に対する責務実施指示を生成できない。すなわち、責務の任意の組み合わせを実施することができない。   Furthermore, even if the SMR described in Non-Patent Document 1 is added, the responsibility content determination module 22 is specialized in responsibility execution instructions regarding log recording, such as the content of the log to be recorded, and therefore differs from log recording. The responsibility execution instruction cannot be generated for the encryption means inside the SMR having the instruction content (encryption key, encryption algorithm, etc.). That is, any combination of responsibilities cannot be implemented.

また、仮想化手段から得られる仮想マシンの入出力イベントは、一般に低レベルのイベントである。すると、SMRのようなIPパケット毎の暗号化に加えて、電子メールの暗号化など、複数の入出力イベントで構成されるアプリケーションデータに対する責務を遂行することは難しい。   Also, virtual machine input / output events obtained from the virtualization means are generally low-level events. Then, in addition to encryption for each IP packet such as SMR, it is difficult to fulfill the responsibility for application data composed of a plurality of input / output events, such as encryption of electronic mail.

さらに、仮想マシンに対するアクセス制御システム特有のもう1つの課題として、アクセス制御システム自身の使用リソース量の抑制が求められる。この課題は、仮想マシンとアクセス制御システムとが、双方を稼動させる物理マシンが有する限られたリソースを分け合って利用しているので、一般に有用なアプリケーションを稼動させる仮想マシンにできる限り多くのリソースを割り当てたいという要請に起因する。従って、与えられたアクセスポリシーの定義内容に応じて、アクセス制御システムを構成する各種手段から不用な手段を特定し、特定した手段を削除することが好ましい。   Furthermore, as another problem unique to the access control system for virtual machines, it is required to reduce the amount of resources used by the access control system itself. The challenge is that the virtual machine and the access control system share and use the limited resources of the physical machine that runs both, so generally use as many resources as possible for the virtual machine that runs useful applications. This is due to a request to assign. Accordingly, it is preferable to identify unnecessary means from various means constituting the access control system and delete the specified means in accordance with the contents of definition of the given access policy.

本発明は、アクセス制御システムにおいて、特に、アクセス可否に加え、アプリケーションデータの暗号化やログ記録など責務の定義を含むアクセスポリシーを実施できるアクセス制御システムを提供することを目的とする。また、本発明の他の目的は、アクセスポリシー内の責務の定義に応じて、責務を実施するモジュールを自動配付できるアクセス制御システムを提供することである。   An object of the present invention is to provide an access control system that can implement an access policy including definition of responsibilities such as encryption of application data and log recording, in addition to whether access is permitted, in the access control system. Another object of the present invention is to provide an access control system capable of automatically distributing a module for executing an obligation in accordance with the definition of the obligation in the access policy.

本発明によるアクセス制御システムは、入出力イベントを監視し、入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視手段と、アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって、監視手段からの問い合わせに対して、アクセスポリシーにもとづいてアクセス可否および実施すべき責務を判定して監視手段に応答するポリシー解釈手段と、所定の責務を実施する複数の責務実施手段と、監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を複数の責務実施手段から特定して呼び出し、呼び出した責務実施手段の応答を監視手段に転送する責務実施インタフェースとを備えたことを特徴とする。   The access control system according to the present invention monitors an input / output event, controls access permission / inhibition based on the input / output event, and requests for execution of responsibility, and predetermined access defining conditions for access permission / inhibition and execution of responsibility. A policy interpreting means for interpreting a policy, wherein a policy interpreting means for responding to the monitoring means by determining whether access is permitted and a duty to be executed based on the access policy in response to an inquiry from the monitoring means, and executing a predetermined responsibility In response to a request for the execution of duties from a plurality of responsibility execution means, the responsibility execution means for executing the corresponding responsibility is identified and called from the plurality of responsibility execution means, and the response of the called responsibility execution means is monitored. And a responsibility implementation interface for transferring to the network.

本発明による端末装置は、アクセス要求の可否判定および所定の責務を実施するアクセス制御システムにおける端末装置であって、入出力イベントを監視し、入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視手段と、アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって、監視手段からの問い合わせに対して、アクセスポリシーにもとづいてアクセス可否および実施すべき責務を判定して監視手段に応答するポリシー解釈手段と、所定の責務を実施する複数の責務実施手段と、監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を複数の責務実施手段から特定して呼び出し、呼び出した責務実施手段の応答を監視手段に転送する責務実施インタフェースとを備えたことを特徴とする。   A terminal device according to the present invention is a terminal device in an access control system that performs access request determination and performs a predetermined responsibility, monitors an input / output event, controls access permission based on the input / output event, and implements the responsibility A monitoring means for making a request and a means for interpreting a predetermined access policy in which conditions relating to accessibility and responsibility implementation are defined. Access to a query from the monitoring means should be permitted and implemented based on the access policy. Policy interpretation means for determining the responsibility and responding to the monitoring means, a plurality of duty execution means for executing the predetermined responsibility, and a duty execution means for executing the corresponding responsibility in response to the duty execution request from the monitoring means Identifies and calls from multiple responsibility execution means and forwards the response of the called responsibility execution means to the monitoring means Characterized by comprising a Tsutomu implementation interface.

本発明によるサーバ装置は、仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段と、仮想化手段から伝達される入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視手段と、アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって監視手段からの問い合わせに対してアクセスポリシーにもとづいてアクセス可否および実施すべき責務を判定して監視手段に応答するポリシー解釈手段と、所定の責務を実施する複数の責務実施手段と、監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を複数の責務実施手段から特定して呼び出し、呼び出した責務実施手段の応答を監視手段に転送する責務実施インタフェースと、アクセスポリシーに定義された責務のリストと登録ずみ責務実施手段のリストとを比較して、不要な責務実施手段を削除するとともに、不足している責務実施手段の配付を要求するコンピュータ管理手段とを備えた端末装置と通信可能に接続されるサーバ装置であって、責務実施手段を格納し、コンピュータ管理手段からの要求に応じて、責務実施手段をコンピュータ管理手段に配付する責務管理手段を備えたことを特徴とする。   The server device according to the present invention performs virtualization control for relaying an input / output event between a virtual machine and a device, access permission / inhibition based on the input / output event transmitted from the virtualization unit, and execution of responsibility. Monitoring means and means for interpreting a predetermined access policy that defines access permission and conditions related to the implementation of duties. In response to an inquiry from the monitoring means, the access permission and the duty to be executed are determined based on the access policy. Policy interpreting means responding to the monitoring means, a plurality of duty executing means for executing the predetermined duties, and a plurality of duty executing means for executing the corresponding duties in response to the duty request from the monitoring means. A responsibility execution interface for transferring the response of the called responsibility execution means to the monitoring means; A list of responsibilities defined in the policy and a list of registered responsibilities implementation means, delete unnecessary responsibilities implementation means, and computer management means that requests distribution of the missing responsibilities implementation means. A server device communicably connected to a terminal device provided with responsibility management means for storing duty execution means and distributing the duty execution means to the computer management means in response to a request from the computer management means It is characterized by that.

本発明によるアクセス制御方法は、入出力イベントを監視し、入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視し、アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって、問い合わせに対して、アクセス可否および実施すべき責務を判定して応答し、責務の実施依頼に応じて、該当する責務を実施する責務実施処理を複数の責務実施処理から特定して実施し、実施した責務実施処理の応答を、責務の実施依頼元に転送することを特徴とする。   An access control method according to the present invention monitors an input / output event, controls access permission / inhibition based on the input / output event and performs a duty request, and monitors a predetermined access policy that defines conditions for access permission / impact execution. In response to an inquiry, the responsibility execution process that determines whether access is permitted and the responsibility to be executed is responded, and the corresponding responsibility is executed according to the request for the execution of the responsibility. It is characterized in that the response of the responsibility execution processing that has been identified and executed is forwarded to the duty execution request source.

本発明によるアクセス制御用プログラムは、コンピュータを、仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段から伝達される入出力イベントを監視し、入出力イベントにもとづいて、アクセス可否の制御および責務の実施依頼を行う監視手段と、アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって、監視手段からの問い合わせに対して、アクセスポリシーにもとづいてアクセス可否および実施すべき責務を判定して監視手段に応答するポリシー解釈手段と、所定の責務を実施する複数の責務実施手段と、監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を複数の責務実施手段から特定して呼び出し、呼び出した責務実施手段の応答を監視手段に転送する責務実施インタフェース手段として機能させることを特徴とする。   The access control program according to the present invention monitors an input / output event transmitted from a virtualization unit that relays an input / output event between a virtual machine and a device, and determines whether or not an access is permitted based on the input / output event. Monitoring means for requesting execution of control and responsibility, and means for interpreting a predetermined access policy that defines the access permission and conditions related to the implementation of responsibility. Access to inquiries from the monitoring means based on the access policy Policy interpretation means that determines propriety and responsibility to be implemented and responds to the monitoring means, multiple responsibility execution means that implement the specified duties, and implements the corresponding duties according to the request for the responsibility from the monitoring means The responsibility execution means to be executed is identified and called from a plurality of responsibility execution means, and the response of the called responsibility execution means is monitored. Wherein the function as work execution interface means for transferring the unit.

本発明によれば、電子メールなどのアプリケーション入出力に伴って発生する入出力イベントに対して、アクセス可否・暗号化・ログ記録などの多様なアクセスポリシーを適用できる。   According to the present invention, various access policies such as accessibility / encryption / log recording can be applied to input / output events that occur with application input / output such as e-mail.

1.第1実施形態
1.1 構成
図1は、アクセス制御システムの第1実施形態の構成を示すブロック図である。アクセス制御システムの一例であるコンピュータ100Aは、中央制御装置(CPU)101と、2次記憶装置やネットワークインタフェース装置などのデバイス102と、仮想CPUや仮想デバイスなどを生成する仮想化手段103と、仮想マシン104と、監視手段105と、ポリシー解釈手段106と、1つ以上の責務実施手段107−1〜107−Nと、責務実施インタフェース108とを備えている。以下、責務実施手段107−1〜107−Nを、責務実施手段107と総称する。
1. 1. First Embodiment 1.1 Configuration FIG. 1 is a block diagram showing a configuration of a first embodiment of an access control system. A computer 100A, which is an example of an access control system, includes a central control unit (CPU) 101, a device 102 such as a secondary storage device and a network interface device, a virtualization unit 103 that generates a virtual CPU, a virtual device, and the like, The machine 104, the monitoring means 105, the policy interpretation means 106, one or more responsibility execution means 107-1 to 107-N, and the responsibility execution interface 108 are provided. Hereinafter, the responsibility execution means 107-1 to 107-N are collectively referred to as the responsibility execution means 107.

仮想マシン104は、仮想デバイス設定ファイル(仮想デバイスの構成が記録されたファイル)やOSディスクイメージ(OSがインストールされたディスクイメージ)等の仮想マシンイメージに相当する。仮想化手段103は、仮想マシン環境を構築するものであり、例えば、XenやVMWare(登録商標)で実現可能である。また、仮想化手段103は、仮想マシン104とデバイス102との間の入出力イベントを中継する。   The virtual machine 104 corresponds to a virtual machine image such as a virtual device setting file (a file in which a configuration of a virtual device is recorded) and an OS disk image (a disk image in which an OS is installed). The virtualization means 103 constructs a virtual machine environment, and can be realized by, for example, Xen or VMWare (registered trademark). The virtualization unit 103 relays an input / output event between the virtual machine 104 and the device 102.

監視手段105は、仮想化手段103を監視し、仮想化手段103とデバイス102との間の入出力をフックし、得られた入出力イベントに応じたアクセス可否や実施すべき責務(遂行すべき責務)をポリシー解釈手段106に問い合わせる。問い合わせには、得られた入出力イベントが付随する。さらに、監視手段105は、ポリシー解釈手段106から責務の指示(責務実施指示)の応答を受けると、責務実施インタフェース108に責務実施指示を与える。責務実施指示には、パラメータ等が付随する。そして、監視手段105は、責務実施インタフェース108から、責務実施手段107による責務の実施結果を応答として受け取る。   The monitoring unit 105 monitors the virtualization unit 103, hooks the input / output between the virtualization unit 103 and the device 102, determines whether access is possible or the responsibility to be performed according to the obtained input / output event (to be performed) The policy interpretation means 106 is inquired about the responsibility. The query is accompanied by the input / output event obtained. Further, when the monitoring means 105 receives a response to the responsibility instruction (responsibility execution instruction) from the policy interpretation means 106, the monitoring means 105 gives a responsibility execution instruction to the responsibility execution interface 108. The responsibility execution instruction is accompanied by parameters and the like. Then, the monitoring unit 105 receives, as a response, the execution result of the responsibility by the responsibility execution unit 107 from the responsibility execution interface 108.

ポリシー解釈手段106は、監視手段105からの問い合わせに応じて、1次記憶装置または2次記憶装置内に格納されているポリシーを解釈し、監視手段105に対して、アクセス可否判定結果や責務実施指示を監視手段105に応答する。   The policy interpretation unit 106 interprets the policy stored in the primary storage device or the secondary storage device in response to the inquiry from the monitoring unit 105, and determines whether the monitoring unit 105 can access or not. An instruction is returned to the monitoring unit 105.

責務実施手段107は、責務実施インタフェース108からの呼出パラメータを伴う呼び出しに応じて、所定の責務を実施し、その実施結果を責務実施インタフェース108に出力する。   Responsibility implementation means 107 executes a predetermined responsibility in response to a call with a call parameter from responsibility execution interface 108, and outputs the execution result to responsibility execution interface 108.

責務実施インタフェース108は、図2に示すように、1次記憶装置または2次記憶装置に格納されている責務管理表1081と1次記憶装置または2次記憶装置に形成されているバッファ1082とを有する。責務実施インタフェース108は、監視手段105からの責務実施指示に応じて、責務実施指示に含まれる入出力イベントおよびパラメータリストをバッファ1082に格納し、責務管理表1081を参照して、適切な責務実施手段107を呼び出す。また、責務実施手段107の出力(実施結果)をバッファ1082に格納し、その格納データを監視手段105に応答として転送する。   As shown in FIG. 2, the responsibility execution interface 108 includes an responsibility management table 1081 stored in the primary storage device or the secondary storage device and a buffer 1082 formed in the primary storage device or the secondary storage device. Have. The responsibility execution interface 108 stores the input / output event and parameter list included in the responsibility execution instruction in the buffer 1082 in accordance with the duty execution instruction from the monitoring unit 105, and refers to the responsibility management table 1081 to execute the appropriate duty execution. Invoke means 107. Further, the output (implementation result) of the responsibility execution unit 107 is stored in the buffer 1082, and the stored data is transferred to the monitoring unit 105 as a response.

なお、監視手段105、ポリシー解釈手段106、責務実施インタフェース108および責務実施手段107は、それらの機能を実現するためのプログラムとプログラムに従って制御を実行するCPU101とによって実現可能である。   The monitoring unit 105, the policy interpretation unit 106, the responsibility execution interface 108, and the responsibility execution unit 107 can be realized by a program for realizing these functions and the CPU 101 that executes control according to the program.

1.2 全体の動作
図3のシーケンス図を用いて、本実施形態の全体の動作を詳細に説明する。
1.2 Overall Operation The overall operation of this embodiment will be described in detail with reference to the sequence diagram of FIG.

仮想マシン104が入出力処理を行うと、仮想化手段103とデバイス102との間で入出力イベントが発生する(ステップa1)。監視手段105は、仮想化手段103から、仮想マシン102とデバイス102との間で発生する入出力イベントを得て(ステップa2)、ポリシー解釈手段106に対して問い合わせを行う(ステップa3)。問い合わせには、少なくとも、デバイス名と、入力であるか出力であるかの情報が含まれる。また、追加情報として、例えばネットワークインタフェースカード(NIC)に対する入出力である場合には、IPアドレスやポート番号などの情報が加わる。なお、この段階では、発生した入出力の処理の実行はまだ実行されない。   When the virtual machine 104 performs input / output processing, an input / output event occurs between the virtualization unit 103 and the device 102 (step a1). The monitoring unit 105 obtains an input / output event that occurs between the virtual machine 102 and the device 102 from the virtualization unit 103 (step a2), and makes an inquiry to the policy interpretation unit 106 (step a3). The inquiry includes at least a device name and information on whether it is input or output. Further, as additional information, for example, in the case of input / output to / from a network interface card (NIC), information such as an IP address and a port number is added. At this stage, the generated input / output processing is not yet executed.

ポリシー解釈手段106は、問い合わせを受け取ると、内部に保持しているポリシーを解釈して、実施すべき責務を特定する。すなわち、どの責務実施手段107に、どのような処理をさせればよいか判断し、責務実施指示を監視手段105に対して発行する(ステップa4)。責務実施指示は、例えば、「暗号化責務実施手段に暗号化の処理をさせる」、「ログ責務実施手段にログ記録の処理をさせる」などである。複数の責務がアクセスポリシーに定義されている場合には(図5や図6参照)、責務実施指示は、個々の責務実施手段107の呼び出しに対応する責務実施指示のリスト(集合)である。個々の責務実施指示は、アクセスポリシーで指定されたパラメータリストや、責務の実施結果の出力先などを含む。例えば、暗号化を行う責務実施手段107について、暗号鍵や暗号アルゴリズムの指定などがパラメータリストである。また、責務実施手段107が出力する暗号化データに対して、パスワードロックがかかるSDメモリカード等の耐タンパーデバイスなど特定のデバイス102に強制的に出力することがアクセスポリシーで規定されている場合には、出力先デバイス102の指定が責務実施指示に含まれる。なお、ポリシー解釈手段106のより詳細な動作については1.3節で説明する。   When the policy interpreting means 106 receives the inquiry, it interprets the policy held inside and specifies the responsibility to be implemented. That is, it is determined which processing should be performed by which responsibility execution means 107, and a duty execution instruction is issued to the monitoring means 105 (step a4). The responsibility execution instruction is, for example, “encryption responsibility execution means to perform encryption processing”, “log responsibility execution means to perform log recording processing”, or the like. When a plurality of responsibilities are defined in the access policy (see FIGS. 5 and 6), the responsibilities execution instruction is a list (collection) of responsibilities execution instructions corresponding to the calls of the individual responsibility execution means 107. Each responsibility execution instruction includes a parameter list specified by the access policy, an output destination of the execution result of the responsibility, and the like. For example, with respect to the duty execution means 107 for performing encryption, the parameter list includes designation of an encryption key and an encryption algorithm. In addition, when the access policy stipulates that the encrypted data output from the responsibility execution unit 107 is forcibly output to a specific device 102 such as a tamper-resistant device such as an SD memory card that is password-locked. The designation of the output destination device 102 is included in the responsibility execution instruction. A more detailed operation of the policy interpretation means 106 will be described in section 1.3.

次に、監視手段105は、責務実施インタフェース108を介して、責務実施指示で指定された責務実施手段107を呼び出し、必要な責務を実施させる(ステップa5)。より詳細な動作については1.4節で説明する。責務実施手段107は、暗号化やログ記録などの所定の責務実施処理を行い、その結果を、責務実施インタフェース108を介して、監視手段105に応答する。監視手段105は、責務実施インタフェース108から転送された責務実施手段107の応答を、責務実施指示に従って、仮想化手段103に転送する。仮想化手段103は、出力イベントが発生している場合には責務実施指示で指定されたデバイス102に情報を渡して、中断されている出力処理を再開して完了させる。入力イベントが発生している場合には仮想マシン104に情報を渡して、中断されている入力処理を再開して完了させる(ステップa6)。   Next, the monitoring means 105 calls the responsibility execution means 107 designated by the duty execution instruction via the duty execution interface 108 and causes the required duty to be executed (step a5). A more detailed operation will be described in section 1.4. The responsibility execution unit 107 performs predetermined responsibility execution processing such as encryption and log recording, and returns the result to the monitoring unit 105 via the duty execution interface 108. The monitoring unit 105 transfers the response of the responsibility execution unit 107 transferred from the responsibility execution interface 108 to the virtualization unit 103 according to the duty execution instruction. When an output event has occurred, the virtualization unit 103 passes information to the device 102 designated by the responsibility execution instruction, and resumes and completes the interrupted output process. If an input event has occurred, information is passed to the virtual machine 104 to resume and complete the interrupted input process (step a6).

1.3 ポリシー解釈の詳細
1.3.1 ポリシー解釈手段106の詳細な動作
次に、図4のフローチャートを用いて、ポリシー解釈手段106が実行するポリシー解釈動作(図3におけるステップa4)を説明する。
1.3 Details of Policy Interpretation 1.3.1 Detailed Operation of Policy Interpreting Unit 106 Next, the policy interpreting operation (step a4 in FIG. 3) executed by the policy interpreting unit 106 will be described using the flowchart of FIG. To do.

ポリシー解釈手段106は、まず、未処理のポリシーがあるかチェックし、無ければ処理をステップb5に遷移する(ステップb1)。未処理のポリシーがある場合は、ポリシー(1.3.2節で説明される<policy>タグ)を読み込む(ステップb2)。次に、読み込んだポリシーと監視手段105からの入出力イベントを含んだ問い合わせとを比較し、ポリシーの条件定義(1.3.2節で説明される<target>タグ)と入出力イベントとが合致するか否かを判断する(ステップb3)。合致しない場合は、ステップb1に戻る。   The policy interpretation means 106 first checks whether there is an unprocessed policy. If there is no policy, the process proceeds to step b5 (step b1). If there is an unprocessed policy, the policy (<policy> tag described in section 1.3.2) is read (step b2). Next, the read policy is compared with the inquiry including the input / output event from the monitoring unit 105, and the condition definition of the policy (<target> tag described in section 1.3.2) and the input / output event are determined. It is determined whether or not they match (step b3). If not, the process returns to step b1.

ポリシーの条件定義と入出力イベントとが適合する場合には、ポリシー解釈手段106は、ポリシーの責務定義(1.3.2節で説明される<obligations> タグ)を解釈して、実施すべき責務を特定して、責務実施指示を生成する(ステップb4)。既に責務実施指示が生成されている場合には、それに対して、ステップb4で生成した責務実施指示を追記する。   If the policy condition definition and the input / output event match, the policy interpreter 106 should interpret and implement the policy responsibility definition (<obligations> tag described in section 1.3.2). The responsibility is specified and a duty execution instruction is generated (step b4). If the responsibility execution instruction has already been generated, the responsibility execution instruction generated in step b4 is added.

ポリシー解釈手段106は、全てのポリシーを処理した後、責務実施指示を監視手段105に出力する(ステップb5)。   The policy interpreting means 106 outputs the responsibility execution instruction to the monitoring means 105 after processing all the policies (step b5).

1.3.2 アクセスポリシーの記述形式と評価方法
本発明におけるアクセスポリシーには、仮想マシン104とデバイス102との間で発生する入出力イベントに対して、アクセス可否の条件と実施すべき責務とが、1組のルールとして記述される。図5に示す例では、「IP encryption 」と「USB logging 」と名づけられた2つのアクセスポリシー(<policy>タグ)が記載されている。<target>タグに、アクセス主体(<subject> )、アクセス客体(<object>)、およびアクション(<action>)に関する条件が定義され、<obligation>タグに、実施すべき責務が定義される。<rule>タグはアクセス可否を定義するタグであり、例えば、<rule effect = “allow ”> という記述は、<target>タグに合致する入出力イベントを許可することを意味している。
1.3.2 Access Policy Description Format and Evaluation Method The access policy according to the present invention includes an access permission condition and an obligation to be executed for an input / output event that occurs between the virtual machine 104 and the device 102. Are described as a set of rules. In the example shown in FIG. 5, two access policies (<policy> tag) named “IP encryption” and “USB logging” are described. Conditions related to the access subject (<subject>), access object (<object>), and action (<action>) are defined in the <target> tag, and responsibilities to be implemented are defined in the <obligation> tag. The <rule> tag is a tag that defines whether access is possible. For example, the description <rule effect = “allow”> means that an input / output event that matches the <target> tag is permitted.

[条件の記述形式]
<target>タグ内で、アクセス主体・アクセス客体・アクションのオブジェクトは、それぞれ定数sbj・obj・act として参照される。各オブジェクトはいくつかの属性を持ち、例えば、図5に示すIP encryption ポリシーでは、sbj.type・obj.device・act.nameといった属性が参照され、それぞれアクセス主体のタイプ属性(ユーザOSなど)・アクセス客体のデバイス属性(NICやUSBストレージなどのデバイス種別)・アクションの名前属性を意味している。
[Condition description format]
In the <target> tag, the access subject, access object, and action objects are referred to as constants sbj, obj, and act, respectively. Each object has several attributes. For example, in the IP encryption policy shown in FIG. 5, attributes such as sbj.type, obj.device, and act.name are referenced, and the type attribute of the access subject (user OS, etc.) This means the device attribute of the access object (device type such as NIC or USB storage) and the name attribute of the action.

ポリシー解釈手段106は、仮想化手段103から監視手段105を経て取得された入出力イベントを基に、これらの属性値を設定する。例えば、ある仮想マシン104がIPパケットを送出したとき、仮想化手段103は、仮想マシン104のIDやタイプなどの仮想マシン属性、アクセス先デバイスの種別やIPアドレスなどのデバイス属性、およびアクションの名前や入力・出力など情報流の方向性に関する属性を、IPパケット本体とともに入出力イベントに含める。ポリシー解釈手段106は、入出力イベントに含まれる各種属性情報を、対応するオブジェクトおよび属性にあらかじめ設定して、<target>タグを評価する。   The policy interpretation unit 106 sets these attribute values based on the input / output event acquired from the virtualization unit 103 via the monitoring unit 105. For example, when a certain virtual machine 104 sends out an IP packet, the virtualization means 103 determines the virtual machine attributes such as the ID and type of the virtual machine 104, the device attributes such as the type and IP address of the access destination device, and the action name. And attributes related to the direction of information flow such as input and output are included in the input / output event together with the IP packet body. The policy interpretation unit 106 sets various attribute information included in the input / output event in advance to the corresponding object and attribute, and evaluates the <target> tag.

[責務の記述形式]
<obligations> タグは、1つ以上の責務の定義(<obligation>)を含む。例えば、図5を参照すると、「IP encryption 」ポリシーには、ログ記録(logging )と暗号化(encryption)の2つの責務が定義されている。各責務は記述順序の順に実施されることが望ましいが、ログ記録のように、入出力イベント(特に入出力データ)の書き換えを伴わない副作用のない責務については、この限りではない。
[Responsibility description format]
The <obligations> tag contains one or more responsibility definitions (<obligation>). For example, referring to FIG. 5, the “IP encryption” policy defines two responsibilities: logging and encryption. Each responsibility is preferably performed in the order of description. However, this does not apply to duties with no side effects that do not involve rewriting of input / output events (particularly, input / output data) such as log recording.

各<obligation>タグにおける責務定義には、責務実施手段107に入力されるべきパラメータリストが記述される。例えば、図5を参照すると、「IP encryption 」ポリシーのログ記録に関する責務定義には、「item.1」〜「item.3」の3つのパラメータ名(name)と値(value )とを1組にして、システムの時間属性(System.time)やアクセス客体の宛先IPアドレス属性(obj.destination_ipaddr)などが指定されている。ポリシー解釈手段106は、これらのパラメータリストの定義を参照して、例えば、
<obligation function =“logging ”>
<parameter name = “item.1”>System.time</parameter>
<parameter name = “item.2”>sbj.ipaddr</parameter>
<parameter name = “item.3”>obj.destination_ipaddr</parameter>
</obligation>
といった責務定義から、以下のようなパラメータリストを生成し、責務実施指示に含める。
In the responsibility definition in each <obligation> tag, a parameter list to be input to the responsibility execution means 107 is described. For example, referring to FIG. 5, the duty definition related to the log recording of the “IP encryption” policy is a set of three parameter names (name) and values (value) of “item.1” to “item.3”. Thus, a system time attribute (System.time), an access object destination IP address attribute (obj.destination_ipaddr), and the like are designated. The policy interpreting means 106 refers to the definitions of these parameter lists, for example,
<obligation function = “logging”>
<parameter name = “item.1”> System.time </ parameter>
<parameter name = “item.2”> sbj.ipaddr </ parameter>
<parameter name = “item.3”> obj.destination_ipaddr </ parameter>
</ obligation>
The following parameter list is generated from the responsibility definition and included in the responsibility execution instruction.

・item.1=06−20−2007 13:30:38(System.time の値、すなわち現在時刻)
・item.2=10.2.3.4(sbj.ipaddrの値、すなわち送信元IPアドレス)
・item.3=133.1.2.3(obj.destination_ipaddrの値、すなわち宛先IPアドレス)
-Item. 1 = 06-20-2007 13:30:38 (System.time value, ie current time)
-Item. 2 = 10.2.3.4 (value of sbj.ipaddr, ie source IP address)
-Item. 3 = 13.3.1.2.3 (value of obj.destination_ipaddr, that is, destination IP address)

生成したパラメータリストを責務実施指示に含めることによって、責務実施手段107に対して、現在時刻など動的に決定されるパラメータを入力可能になる。なお、図6に例示するように、パラメータ値をCNAME形式で書き下すようにして、改行などを含む長いパラメータ値の即値(ラテラル)を記述できるようにしてもよい。   By including the generated parameter list in the responsibility execution instruction, it is possible to input parameters that are dynamically determined such as the current time to the responsibility execution means 107. As illustrated in FIG. 6, the parameter value may be written down in CNAME format so that an immediate value (lateral) of a long parameter value including a line feed may be described.

また、1つのポリシーに複数の責務が記述されているときには、責務に前の責務の処理結果に応じた条件を付けてもよい。例えば図6を参照すると、「firewall」責務定義につづく「logging 」責務定義に<condition>タグが含まれている。ポリシー解釈手段106は、<condition>タグで記述された条件定義を、責務実施条件として責務実施指示に含める。そのような処理を行うことによって、動的な条件にもとづく複数責務の制御構造(例えば、ある責務実施手段107の動作状態に応じて他の責務実施手段107を呼び出すような構造)をアクセスポリシーで定義できる。よって、ポリシーの記述力がさらに向上する。   Further, when a plurality of responsibilities are described in one policy, a condition corresponding to the processing result of the previous responsibilities may be attached to the responsibilities. For example, referring to FIG. 6, a <condition> tag is included in the "logging" responsibility definition following the "firewall" responsibility definition. The policy interpreting means 106 includes the condition definition described by the <condition> tag as the duty execution condition in the duty execution instruction. By performing such a process, a control structure of multiple responsibilities based on dynamic conditions (for example, a structure in which another responsibilities execution means 107 is called in accordance with the operation state of a certain responsibilities execution means 107) is an access policy. Can be defined. Therefore, the policy descriptive power is further improved.

1.4 責務実施の詳細な動作
図7のフローチャートを参照して、監視手段105、責務実施インタフェース108および責務実施手段107が実行する責務実施動作を説明する。
1.4 Detailed Operation of Responsibility Implementation With reference to the flowchart of FIG. 7, the responsibility implementation operation executed by the monitoring unit 105, the responsibility implementation interface 108, and the responsibility implementation unit 107 will be described.

図3におけるステップa4の処理によって、ポリシー解釈手段106から責務実施指示を受け取った監視手段105は、責務実施インタフェース108に、入出力イベントを伴う責務実施指示で指定された責務実施手段107の呼び出しを依頼する(ステップa5−1)。ここで、監視手段105による責務実施手段107の呼出依頼情報には、少なくとも、責務実施手段107の名前(責務名)と、ポリシー解釈手段106による指示で指定されたパラメータリストと、仮想化手段103から得た入出力イベントとが含まれる。また、監視手段106は、責務実施指示に責務実施条件が含まれる場合には、その責務実施条件を評価し、その結果が真となるときのみ、責務実施手段107の呼び出しを責務実施インタフェース108に依頼する。   The monitoring means 105 that has received the responsibility execution instruction from the policy interpretation means 106 by the process of step a4 in FIG. 3 calls the responsibility execution interface 107 designated by the responsibility execution instruction with the input / output event to the responsibility execution interface 108. Request (step a5-1). Here, the call request information of the responsibility execution means 107 by the monitoring means 105 includes at least the name of the responsibility execution means 107 (responsibility name), a parameter list specified by an instruction from the policy interpretation means 106, and the virtualization means 103. And input / output events obtained from. Further, when the duty execution condition includes the duty execution condition, the monitoring means 106 evaluates the duty execution condition, and calls the responsibility execution means 107 to the responsibility execution interface 108 only when the result is true. Ask.

責務実施インタフェース108は、監視手段105から依頼された責務実施手段107の呼び出しを行う(ステップa5−2)。このとき、責務実施インタフェース108は、まず、呼び出し依頼で指定された責務名に対応する責務実施手段107を、責務管理表1081(図8参照)を用いて特定する。そして、呼び出し依頼に含まれる入出力イベントやパラメータリストをバッファ1082に格納し、特定した責務実施手段107を呼び出す。図8に示すように、責務管理表1081には、責務名と責務実施手段107を示すデータとが対応付けられて設定されている。   The responsibility execution interface 108 calls the responsibility execution means 107 requested by the monitoring means 105 (step a5-2). At this time, the responsibility execution interface 108 first specifies the responsibility execution means 107 corresponding to the responsibility name specified in the call request using the responsibility management table 1081 (see FIG. 8). Then, the input / output event and parameter list included in the call request are stored in the buffer 1082, and the specified responsibility execution unit 107 is called. As shown in FIG. 8, in the responsibility management table 1081, the responsibility name and the data indicating the duty execution means 107 are set in association with each other.

このとき、好適には、図2に示すように、バッファ1082内に入出力イベントの系列を格納するメモリ領域(入力キュー)を確保し、それらのアドレスを責務実施手段107に伝達する。すると、責務実施手段107が、複数の入出力イベントを参照できるようになり、アプリケーションデータに対する暗号化などの責務の実施が可能になる。図2において、入力キューから責務実施手段107にデータが渡されることが、”inbuf”として示されている。例えば、ブロック暗号を用いる場合、一般にブロック暗号の入力データ長(ブロック長)は暗号アルゴリズムにより、ある固定値(例えば64ビット)が定められる。一方、入出力イベントに含まれるアプリケーションデータ長は、デバイスによって様々に異なる。その結果、ブロック長より小さなアプリケーションデータ断片が発生しやすい。このようなデータ断片を処理するには、以降の入出力イベントの到達を待って、入力キュー内に十分なアプリケーションデータサイズが格納される必要がある。   At this time, preferably, as shown in FIG. 2, a memory area (input queue) for storing a series of input / output events is secured in the buffer 1082, and those addresses are transmitted to the responsibility execution means 107. Then, the duty execution unit 107 can refer to a plurality of input / output events, and can execute the duty such as encryption for the application data. In FIG. 2, “inbuf” indicates that data is transferred from the input queue to the responsibility execution unit 107. For example, when a block cipher is used, a fixed value (for example, 64 bits) is generally determined for the input data length (block length) of the block cipher by an encryption algorithm. On the other hand, the application data length included in the input / output event varies depending on the device. As a result, application data fragments smaller than the block length are likely to occur. In order to process such a data fragment, a sufficient application data size needs to be stored in the input queue after the arrival of a subsequent input / output event.

責務実施手段107は、以降の処理に十分なサイズの入力が得られるまで待機するため、入力キューに格納されたデータを逐次読み出しながら、内部的に備えられているバッファに追加することによって、断片化されたアプリケーションデータの統合およびサイズの確認を行う。   Responsibility execution means 107 waits until an input having a size sufficient for the subsequent processing is obtained, so that the data stored in the input queue is sequentially read and added to the internally provided buffer to obtain a fragment. Integrate application data and check the size.

その後、責務実施手段107は、責務実施インタフェース108からの呼び出しに応じて、暗号化やログ記録などの所定の責務実施処理を行い、その結果を、責務実施インタフェース108を介して、監視手段105に応答する(ステップa5−3)。   Thereafter, the responsibility execution means 107 performs predetermined responsibility execution processing such as encryption and log recording in response to a call from the responsibility execution interface 108, and the result is sent to the monitoring means 105 via the responsibility execution interface 108. It responds (step a5-3).

このとき、責務実施インタフェース108は、バッファ1082内に確保した応答キュー(図2参照)に、責務実施手段107からの暗号化データなどの責務実施結果を格納する。図2において、責務実施手段107から応答キューにデータが格納されることが、”outbuf”として示されている。責務実施インタフェース108は、責務実施手段107の動作とは非同期に、応答キューの格納データを順次監視手段105に転送する。そのような処理を実行することによって、責務実施手段107に入力される入出力イベントの数と、責務実施手段107が出力する入出力イベントの数とが異なることが許容される。例えば、メールデータを暗号化する場合、一般に暗号化データは元のデータよりもサイズが増大する。すると、より低レベルなIPパケットに再符号化するときに、暗号化データを構成するIPパケットの数が、元のデータを構成するIPパケットの数よりも多くなる場合がある。この場合、入力キュー内の元の入出力イベント(=IPパケット)を、暗号化データを含む入出力イベントに書き換えるよりも、応答キューに暗号化データを含む入出力イベントを追加する方法を取ることが望ましい。   At this time, the responsibility execution interface 108 stores the responsibility execution result such as encrypted data from the responsibility execution means 107 in the response queue (see FIG. 2) secured in the buffer 1082. In FIG. 2, “outbuf” indicates that data is stored in the response queue from the responsibility execution unit 107. The responsibility execution interface 108 sequentially transfers the stored data in the response queue to the monitoring means 105 asynchronously with the operation of the responsibility execution means 107. By executing such processing, it is allowed that the number of input / output events input to the responsibility execution unit 107 is different from the number of input / output events output by the responsibility execution unit 107. For example, when encrypting mail data, the size of the encrypted data is generally larger than that of the original data. Then, when re-encoding into a lower-level IP packet, the number of IP packets constituting the encrypted data may be larger than the number of IP packets constituting the original data. In this case, rather than rewriting the original input / output event (= IP packet) in the input queue to an input / output event including encrypted data, a method of adding an input / output event including encrypted data to the response queue is taken. Is desirable.

そして、監視手段105は、責務実施インタフェース108から転送された責務実施手段107の応答を、責務実施指示に従って、仮想化手段103に転送するか、または次の責務実施手段107の呼び出しのため、責務実施インタフェース108に再入力する(ステップa5−4)。このとき、監視手段105は、責務実施指示を参照して、次の責務実施指示があるか否かを判定し、あれば入出力イベントに代えて、先の責務実施手段107の応答を次の責務実施手段107に入力する。次の責務実施指示がないとき、すなわち最後の責務実施指示の呼び出し時は、責務実施手段107の応答を責務実施指示で指定された出力先に転送するように仮想化手段103に指示する。なお、出力先の指定が責務実施指示に含まれない場合には、仮想マシン104が指定した元の出力先が責務実施指示に指定されているとして扱う。   Then, the monitoring means 105 transfers the response of the responsibility execution means 107 transferred from the responsibility execution interface 108 to the virtualization means 103 according to the duty execution instruction, or for the next call of the responsibility execution means 107 Re-input to the execution interface 108 (step a5-4). At this time, the monitoring means 105 refers to the responsibility execution instruction to determine whether or not there is a next responsibility execution instruction. If there is, the monitoring means 105 replaces the input / output event with the response of the previous responsibility execution means 107 as follows. Input to responsibility execution means 107. When there is no next responsibility execution instruction, that is, when the last responsibility execution instruction is called, the virtualization means 103 is instructed to transfer the response of the responsibility execution means 107 to the output destination specified by the responsibility execution instruction. If the output destination designation is not included in the responsibility execution instruction, the original output destination specified by the virtual machine 104 is treated as being specified in the responsibility execution instruction.

1.5 責務実施手段の追加削除
責務実施インタフェース108は、責務実施手段追加時に、責務実施手段名(具体的には、責務実施手段名を特定可能なデータ)と担当する責務(具体的には、責務を特定可能なデータ)とを責務管理表に追加する。例えば、ログ責務実施手段がインストールされたときは、責務実施手段名“ログ責務実施手段”と、担当する責務“ログの記録”とが責務管理表に追加される。また、責務実施インタフェース108は、責務実施手段削除時に、責務実施手段の項目を責務管理表から削除する。
1.5 Addition / Deletion of Responsibility Execution Means When the responsibility execution means is added, the responsibility execution interface 108 specifies the responsibility execution means name (specifically, data that can identify the responsibility execution means name) and the responsibility (specifically, the responsibility execution means name). , Data that can identify responsibilities) and add them to the responsibility management table. For example, when the log responsibility execution means is installed, the responsibility execution means name “log responsibility execution means” and the responsibility in charge “log recording” are added to the responsibility management table. Further, the responsibility execution interface 108 deletes the item of the responsibility execution means from the responsibility management table when the responsibility execution means is deleted.

1.6 効果
本実施形態では、責務実施インタフェース108で、監視手段105と責務実施手段107との間で行われる責務実施手順を統一することによって、様々な責務実施処理をプラグイン化することができる。さらに、ポリシー解釈手段106からの責務実施指示に従って、監視手段105が責務実施インタフェース108を介して、責務実施手段107を呼び出すことによって、アクセス可否と責務実施の条件とが統合的に記述されたアクセスポリシーを、仮想マシン104に対して適用可能になる。
1.6 Effects In the present embodiment, the responsibility execution interface 108 unifies the responsibility execution procedures performed between the monitoring means 105 and the responsibility execution means 107, so that various responsibility execution processes can be plugged in. it can. Furthermore, in accordance with the responsibility execution instruction from the policy interpretation means 106, the monitoring means 105 calls the responsibility execution means 107 via the responsibility execution interface 108, so that the access permission and the conditions for executing the responsibility are integratedly described. The policy can be applied to the virtual machine 104.

また、このとき、責務実施手段107が、バッファ1082内に入力キューおよび応答キューを保持し、複数の入出力イベントを責務実施手段107から参照可能とし、責務実施手段107の応答を非同期に監視手段105に転送することによって、仮想マシン104が発する低レベルな入出力イベントに対して、アプリケーションデータの暗号化などの高度な責務実施が可能になる。   Also, at this time, the responsibility execution unit 107 holds the input queue and the response queue in the buffer 1082, makes it possible to refer to a plurality of input / output events from the responsibility execution unit 107, and monitors the response of the responsibility execution unit 107 asynchronously. By transferring to 105, it is possible to perform high-level responsibilities such as encryption of application data for low-level input / output events generated by the virtual machine 104.

1.7 第1実施形態の変形例1
第1実施形態では、コンピュータ100Aにおいて1つの仮想マシン104が備えられた例を示したが、図9に示すコンピュータ100Bのように、複数の仮想マシン104−1〜104−Nを備えていてもよい。この構成の場合、監視手段105は、仮想マシンとデバイス102との間の入出力だけではなく、仮想マシンと他の仮想マシンとの間の入出力の監視も行い、仮想マシン間の入出力イベントの処理が可能になる。なお、この場合には、アクセスポリシーには、仮想マシン104−1〜104−Nとデバイス102との間で発生する入出力イベントに対して、アクセス可否の条件と実施すべき責務とが1組のルールとして記述されるとともに、仮想マシンと他の仮想マシンとの間で発生する入出力イベントに対して、アクセス可否の条件と実施すべき責務とが1組のルールとして記述される。
1.7 Modification 1 of the first embodiment
In the first embodiment, an example is shown in which one virtual machine 104 is provided in the computer 100A. However, a plurality of virtual machines 104-1 to 104-N may be provided as in the computer 100B shown in FIG. Good. In the case of this configuration, the monitoring unit 105 monitors not only the input / output between the virtual machine and the device 102 but also the input / output between the virtual machine and another virtual machine, and the input / output event between the virtual machines. Can be processed. In this case, the access policy includes one set of access permission conditions and obligations to be executed for input / output events occurring between the virtual machines 104-1 to 104-N and the device 102. And an access permission condition and an obligation to be executed are described as a set of rules for an input / output event occurring between the virtual machine and another virtual machine.

1.8 第1実施形態の変形例2
第1実施形態では、責務実施手段107は、監視手段105から受け取った情報の処理を内部で行っていたが、図10に示すように、ネットワークを介して通信可能なサーバと連携して処理を行ってもよい。図10に示す責務実施手段連携サーバ500Cは、コンピュータ100Cにおける責務実施手段107と連携するサーバであり、例えば、ログ責務実施手段と連携するログ記録サーバや、暗号化責務実施手段と連携する鍵管理サーバである。
1.8 Modification 2 of the first embodiment
In the first embodiment, the responsibility execution unit 107 internally processes the information received from the monitoring unit 105. However, as shown in FIG. 10, the responsibility execution unit 107 performs the process in cooperation with a server that can communicate over a network. You may go. The responsibility execution means cooperation server 500C shown in FIG. 10 is a server that cooperates with the responsibility execution means 107 in the computer 100C. For example, a log recording server that cooperates with the log responsibility execution means or a key management that cooperates with the encryption duty execution means. It is a server.

この構成の場合、例えば、ログ責務実施手段がログ記録サーバへログを書き出すことにより、コンピュータのHDD障害時にもログを確認できる。また、暗号化責務実施手段が鍵管理サーバと連携することで、鍵の配付を遠隔から行うことができる。   In the case of this configuration, for example, the log responsibility execution unit writes the log to the log recording server, so that the log can be confirmed even when the HDD of the computer fails. In addition, the key can be distributed from a remote location by the encryption duty executing means in cooperation with the key management server.

2.第2実施形態
2.1 構成
図11は、アクセス制御システムの第2実施形態の構成を示すブロック図である。第2実施形態は、管理サーバ200が、ポリシー管理手段201と責務管理手段202とを備え、1台以上のコンピュータ100D−1〜100D−Nが、コンピュータ管理手段109を備えている点で、第1実施形態とは異なっている。以下、コンピュータ100D−1〜100D−Nを、コンピュータ100Dと総称することがある。
2. Second Embodiment 2.1 Configuration FIG. 11 is a block diagram showing the configuration of a second embodiment of the access control system. In the second embodiment, the management server 200 includes policy management means 201 and responsibility management means 202, and one or more computers 100D-1 to 100D-N include computer management means 109. Different from one embodiment. Hereinafter, the computers 100D-1 to 100D-N may be collectively referred to as a computer 100D.

ポリシー管理手段201は、管理者が作成したポリシーを、内部に備えているる不揮発性メモリ(1次記憶装置)や2次記憶装置に格納する。また、クライアントであるコンピュータ100D−1〜100D−Nのポリシー解釈手段106に対して、ネットワーク(通信路)を介してポリシーの配付を行う。   The policy management unit 201 stores the policy created by the administrator in a nonvolatile memory (primary storage device) or secondary storage device provided therein. Further, the policy is distributed to the policy interpretation means 106 of the computers 100D-1 to 100D-N that are clients via a network (communication path).

責務管理手段202は、内部に備えている不揮発性メモリや2次記憶装置に、責務実施手段107を格納する。そして、コンピュータ100D−1〜100D−Nのコンピュータ管理手段109からの要求に応じて、責務実施手段107を配付する。コンピュータ管理手段109は、ポリシー解釈手段106に格納されているアクセスポリシーと、責務実施インタフェース108に格納されている責務管理表とを比較して、責務実施手段107の過不足を特定する。また、不足する責務実施手段107を責務管理手段202からダウンロードして、責務実施インタフェース108の責務管理表に対応するエントリを追加登録する。また、アクセスポリシーの更新などに伴って、不要になった責務実施手段107そのものを削除するとともに、責務実施インタフェース108の責務管理表から対応するエントリを削除する。   The responsibility management unit 202 stores the responsibility execution unit 107 in a nonvolatile memory or a secondary storage device provided therein. In response to a request from the computer management means 109 of the computers 100D-1 to 100D-N, the duty execution means 107 is distributed. The computer management unit 109 compares the access policy stored in the policy interpretation unit 106 with the responsibility management table stored in the responsibility execution interface 108 and identifies the excess or deficiency of the responsibility execution unit 107. Also, the insufficient responsibility execution means 107 is downloaded from the responsibility management means 202, and an entry corresponding to the responsibility management table of the responsibility execution interface 108 is additionally registered. Also, the responsibility execution means 107 itself that is no longer necessary is deleted along with the update of the access policy, and the corresponding entry is deleted from the responsibility management table of the responsibility execution interface 108.

2.2 動作
次に、図12のフローチャートを用いて、第2実施形態の責務実施手段107のアップデートやインストール、ポリシーのアップデートの動作を説明する。これら以外の動作は、第1実施形態と同様であり、説明を省略する。
2.2 Operation Next, operations of updating, installing, and updating the policy of the responsibility execution unit 107 according to the second embodiment will be described with reference to the flowchart of FIG. Operations other than these are the same as those in the first embodiment, and a description thereof will be omitted.

まず、コンピュータ100Dのポリシー解釈手段106が管理サーバ200のポリシー管理手段201に、ポリシーの追加、削除または修正があるかどうか確認する(ステップc1)。   First, the policy interpretation unit 106 of the computer 100D checks whether the policy management unit 201 of the management server 200 has a policy addition, deletion, or modification (step c1).

ポリシーの追加がある場合には、ポリシー解釈手段106が追加されたポリシーをポリシー管理手段201からダウンロードし、内部に備えている不揮発性メモリ(1次記憶装置)や2次記憶装置にポリシーを格納する。ポリシーの削除がある場合には、ポリシー解釈手段106は、どのポリシーを削除すればよいかポリシー管理手段201から指示を受け、指示されたポリシーを削除する。ポリシーの修正の場合には、どのポリシーをどのように変更すればよいかポリシー管理手段201から指示を受け、指示されたポリシーを修正する(ステップc2)。   When there is a policy addition, the policy interpretation unit 106 downloads the added policy from the policy management unit 201 and stores the policy in a nonvolatile memory (primary storage device) or secondary storage device provided therein. To do. When there is a policy deletion, the policy interpretation unit 106 receives an instruction from the policy management unit 201 as to which policy should be deleted, and deletes the instructed policy. In the case of policy modification, an instruction is received from the policy management means 201 as to which policy should be changed, and the instructed policy is modified (step c2).

次に、コンピュータ管理手段109は、ポリシー解釈手段106に格納されているポリシーを参照し、必要な責務実施手段107を求める(ステップc3)。例えば、図6に示す例では、ファイアーウォールの記録とログの記録とが責務として記述されているので、ファイアーウォール責務実施手段とログ責務実施手段が必要であると求められる。具体的には、コンピュータ管理手段109が、ポリシー解釈手段106に格納されているアクセスポリシーの各責務定義(<obligation>タグ)を走査して、インストールを要する責務実施手段107に相当する責務名集合DEMANDEDを抽出する。   Next, the computer management means 109 refers to the policy stored in the policy interpretation means 106 and obtains the necessary responsibility execution means 107 (step c3). For example, in the example shown in FIG. 6, since the firewall record and the log record are described as responsibilities, it is required that firewall responsibilities execution means and log responsibilities execution means are necessary. Specifically, the computer management means 109 scans each responsibility definition (<obligation> tag) of the access policy stored in the policy interpretation means 106, and sets the responsibility name set corresponding to the responsibility execution means 107 that requires installation. Extract DEMANDED.

そして、必要な責務実施手段107が求められると、コンピュータ管理手段109は既にインストールされている責務実施手段107を確認し、新たにインストールすべき責務実施手段107や、不要な責務実施手段107があるかどうか確認を行う(ステップc4)。具体的には、まず、コンピュータ管理手段109が、責務実施インタフェース108が保持する責務管理表(図8参照)の各レコードを走査して、インストール済みの責務実施手段107に相当する責務名の集合INSTALLED を取得する。そして、コンピュータ管理手段109は、DEMANDEDとINSTALLED の集合差TO_BE_INSTALLED およびTO_BE_REMOVED を計算して、インストールすべき責務実施手段107および削除すべき責務実施手段107を特定する。ここで、TO_BE_INSTALLED = DEMANDED − INSTALLED であり、TO_BE_REMOVED = INSTALLED − DEMANDED である。   When the required responsibility execution means 107 is requested, the computer management means 109 confirms the already installed responsibility execution means 107, and there is a responsibility execution means 107 to be newly installed and an unnecessary responsibility execution means 107. Whether or not is confirmed (step c4). Specifically, first, the computer management means 109 scans each record of the responsibility management table (see FIG. 8) held by the responsibility execution interface 108 to collect a set of responsibility names corresponding to the installed responsibility execution means 107. Get INSTALLED. Then, the computer management means 109 calculates the collective differences TO_BE_INSTALLED and TO_BE_REMOVED between DEMANDED and INSTALLED, and specifies the responsibility execution means 107 to be installed and the responsibility execution means 107 to be deleted. Here, TO_BE_INSTALLED = DEMANDED−INSTALLED and TO_BE_REMOVED = INSTALLED−DEMANDED.

その後、新たにインストールすべき責務実施手段107がある場合(すなわち、TO_BE_INSTALLED が空でない場合)には、責務管理手段202から責務実施手段107をダウンロードして、インストールを行う。また、責務管理手段202からアップデート情報を受け取り、アップデートされている責務実施手段107をダウンロードして、アップデートを行う。また、削除すべき責務実施手段107がある場合(すなわち、TO_BE_REMOVED が空でない場合)には、不要な責務実施手段107を削除する(ステップc5)。   Thereafter, when there is the responsibility execution means 107 to be newly installed (that is, when TO_BE_INSTALLED is not empty), the responsibility execution means 107 is downloaded from the responsibility management means 202 and installed. Also, it receives update information from the responsibility management means 202, downloads the updated responsibility execution means 107, and updates it. Further, when there is the responsibility execution means 107 to be deleted (that is, when TO_BE_REMOVED is not empty), the unnecessary responsibility execution means 107 is deleted (step c5).

以上のように、コンピュータ管理手段109は、責務管理手段202から責務実施手段107をダウンロードする。しかし、図13に示すように、ステップc2の処理を実行した後、責務管理手段202がポリシーから必要な責務実施手段107を求め、コンピュータ管理手段109に対して責務実施手段の配付を行ってもよい。図13に示す例では、コンピュータ管理手段109が、ステップc2の処理を実行した後、責務実施インタフェース108に保持されている責務管理表を責務管理手段202に送信する(ステップc3’)。   As described above, the computer management unit 109 downloads the responsibility execution unit 107 from the responsibility management unit 202. However, as shown in FIG. 13, after executing the process of step c2, the responsibility management means 202 obtains the required responsibility execution means 107 from the policy and distributes the responsibility execution means to the computer management means 109. Good. In the example shown in FIG. 13, the computer management means 109 transmits the responsibility management table held in the responsibility execution interface 108 to the responsibility management means 202 after executing the process of step c2 (step c3 ').

そして、責務管理手段202は、ポリシー管理手段201に格納されているアクセスポリシーを参照しながら、コンピュータ管理手段109によるステップc3の処理同様の方法で、インストールを要する責務実施手段107に相当する責務名集合DEMANDEDを求める(ステップc4’)。   Then, the responsibility management unit 202 refers to the access policy stored in the policy management unit 201, and in the same manner as the processing of step c3 by the computer management unit 109, the responsibility name corresponding to the responsibility execution unit 107 that requires installation. A set DEMANDED is obtained (step c4 ′).

その後、責務管理手段203は、送信された責務管理表から、インストール済みの責務実施手段107に相当する責務名の集合INSTALLED を求め、DEMANDEDとINSTALLED の集合差TO_BE_INSTALLED 、およびTO_BE_REMOVED を算出して、インストールすべき責務実施手段107および削除すべき責務実施手段107を特定する(ステップc5’)。   Thereafter, the responsibility management means 203 obtains a set INSTALLED of responsibility names corresponding to the installed responsibility implementation means 107 from the sent responsibility management table, calculates a set difference TO_BE_INSTALLED and TO_BE_REMOVED between DEMANDED and INSTALLED, and installs them. The responsibility execution means 107 to be deleted and the responsibility execution means 107 to be deleted are specified (step c5 ′).

インストールすべき責務実施手段107または削除すべき責務実施手段107がある場合には、責務管理手段203は、TO_BE_INSTALLEDの各要素に対応する責務実施手段107を示す情報と、TO_BE_REMOVEDの内容とを含むインストール情報を生成し、コンピュータ管理手段109に送信する(ステップc6’)。コンピュータ管理手段109は、インストール情報に含まれる責務実施手段107をインストールし、TO_BE_REMOVED で指定される責務実施手段107を削除する(ステップc7’)。   When there is the responsibility execution means 107 to be installed or the responsibility execution means 107 to be deleted, the responsibility management means 203 is an installation including information indicating the responsibility execution means 107 corresponding to each element of TO_BE_INSTALLED and the contents of TO_BE_REMOVED. Information is generated and transmitted to the computer management means 109 (step c6 ′). The computer management unit 109 installs the responsibility execution unit 107 included in the installation information, and deletes the responsibility execution unit 107 specified by TO_BE_REMOVED (step c7 ').

2.3 効果
本実施形態では、コンピュータ管理手段109によって、アクセスポリシーで実施が求められている責務実施手段107のみが、コンピュータ100C−1〜100C−Nに格納されることが保証される。すなわち、アクセスポリシーの更新などによって不要になった責務実施手段107を保持するための無駄なリソース消費を削減できる。また、責務管理手段202が、不足している責務実施手段107を自動的に配付するので、コンピュータ100D−1〜100D−Nの管理者の運用負荷を低減できる。
2.3 Effects In this embodiment, the computer management unit 109 ensures that only the responsibility execution unit 107 that is required to be executed by the access policy is stored in the computers 100C-1 to 100C-N. That is, it is possible to reduce unnecessary resource consumption for holding the duty execution unit 107 that is no longer necessary due to an access policy update or the like. In addition, since the responsibility management unit 202 automatically distributes the insufficient responsibility execution unit 107, the operation load on the administrator of the computers 100D-1 to 100D-N can be reduced.

3.第3実施形態
3.1 構成
図14は、アクセス制御システムの第3実施形態の構成を示すブロック図である。本実施形態では、アクセス制御システムの一例であるコンピュータ100Eは、第1実施形態または第2実施形態における構成に加えて、属性抽出インタフェース手段110と、属性抽出手段111−1〜111−Nとを備えている。なお、属性抽出インタフェース手段110および属性抽出手段111−1〜111−Nは、それらの機能を実現するためのプログラムとプログラムに従って制御を実行するCPU101とによって実現可能である。また、属性抽出手段111−1〜111−Nを、属性抽出手段111と総称することがある。
3. Third Embodiment 3.1 Configuration FIG. 14 is a block diagram illustrating a configuration of a third embodiment of an access control system. In this embodiment, the computer 100E, which is an example of an access control system, includes an attribute extraction interface unit 110 and attribute extraction units 111-1 to 111-N in addition to the configuration in the first embodiment or the second embodiment. I have. The attribute extraction interface unit 110 and the attribute extraction units 111-1 to 111 -N can be realized by a program for realizing these functions and the CPU 101 that executes control according to the program. Further, the attribute extraction units 111-1 to 111 -N may be collectively referred to as the attribute extraction unit 111.

図15に示すように、属性抽出インタフェース手段110は、1次記憶装置または2次記憶装置に格納されている属性抽出手段管理表1101と、1次記憶装置または2次記憶装置に形成されているバッファ1102とを有する。属性抽出手段管理表1101には、関数名に対応付けられた属性抽出手段名が記載されている。属性抽出インタフェース手段110は、ポリシー解釈手段106から入力される属性抽出要求に応じて、属性抽出手段管理表1101を参照して、適切な属性抽出手段111−1〜111−Nのいずれかを呼び出す。また、属性抽出手段111−1〜111−Nの応答のデータをバッファ1102に格納した上で、そのデータを順次ポリシー解釈手段106に転送する。   As shown in FIG. 15, the attribute extraction interface unit 110 is formed in the attribute extraction unit management table 1101 stored in the primary storage device or the secondary storage device, and the primary storage device or the secondary storage device. And a buffer 1102. The attribute extraction means management table 1101 describes attribute extraction means names associated with function names. The attribute extraction interface unit 110 refers to the attribute extraction unit management table 1101 and calls one of the appropriate attribute extraction units 111-1 to 111 -N according to the attribute extraction request input from the policy interpretation unit 106. . The response data of the attribute extraction units 111-1 to 111 -N is stored in the buffer 1102, and then the data is sequentially transferred to the policy interpretation unit 106.

属性抽出手段111−1〜111−Nは、属性抽出インタフェース手段110から入出力イベントやその他パラメータリストなどを受け取り、入出力イベントから、アクセスポリシーの条件判定に必要なアクセス主体・客体などの属性を抽出し、応答する。例えば、属性抽出手段がSMTPメール属性抽出手段である場合には、SMTPパケットを解析して、メールの宛先、差出人、添付ファイルの有無の情報を抽出する。   The attribute extraction units 111-1 to 111 -N receive input / output events and other parameter lists from the attribute extraction interface unit 110, and from the input / output events, attributes such as access subjects and objects necessary for determining access policy conditions are obtained. Extract and respond. For example, when the attribute extracting unit is an SMTP mail attribute extracting unit, the SMTP packet is analyzed to extract information about the mail destination, the sender, and the presence / absence of an attached file.

3.2 動作
第3実施形態におけるコンピュータ100Eにおけるポリシー解釈手段106の条件判定動作は、第1実施形態または第2実施形態におけるポリシー解釈手段106の条件判定動作(図4のステップb3)とは異なる。以下、図16を参照して、本実施形態におけるポリシー解釈手段106の条件判定動作を詳細に説明する。
3.2 Operation The condition determination operation of the policy interpretation unit 106 in the computer 100E in the third embodiment is different from the condition determination operation (step b3 in FIG. 4) of the policy interpretation unit 106 in the first embodiment or the second embodiment. . Hereinafter, the condition determination operation of the policy interpretation unit 106 in this embodiment will be described in detail with reference to FIG.

本実施形態では、ポリシー解釈手段106は、前段で読み込んだアクセスポリシーに定義された条件定義(<target>タグ)を参照し、「==」などの2項比較演算子を含む各条件節を抽出し、各条件節を参照しながら、以下のステップを繰り返す(ステップf1)。   In the present embodiment, the policy interpretation unit 106 refers to the condition definition (<target> tag) defined in the access policy read in the previous stage, and sets each conditional clause including a binary comparison operator such as “==”. The following steps are repeated while extracting and referring to each conditional clause (step f1).

まず、条件節に関数呼出しがあるか否かを判定する(ステップf2)。ここで、関数呼出しは、例えば「IsSmtpRecipient (“taro@xxx.com”,“jiro@yyy.com”,・・・)」のように、関数名(IsSmtpRecipient )とパラメータリスト(“taro@xxx.com”,“jiro@yyy.com”,・・・)などの構文を持つものとする。ポリシー解釈手段106は、その構文に従った記述が条件節に現れるかどうかを、アクセスポリシーに対する構文解析処理で求める。   First, it is determined whether or not there is a function call in the conditional clause (step f2). Here, the function call is, for example, “IsSmtpRecipient (“ taro@xxx.com ”,“ jiro@yyy.com ”,... com ”,“ jiro@yyy.com ”, etc.). The policy interpretation unit 106 determines whether or not a description according to the syntax appears in the conditional clause by a syntax analysis process for the access policy.

条件節に関数呼び出しが含まれない場合には、第1実施形態または第2実施形態におけるステップb3の処理と同様に、オブジェクトの属性値を参照して、条件節の真偽値を算出し(ステップf3)、ステップf1に戻る。   When a function call is not included in the conditional clause, the true / false value of the conditional clause is calculated by referring to the attribute value of the object as in the process of step b3 in the first embodiment or the second embodiment ( Step f3), returning to step f1.

関数呼び出しが含まれる場合には、ポリシー解釈手段106は、属性抽出インタフェース110に、関数名、パラメータリスト、入出力イベントなどを入力するとともに、属性情報を問い合わせる。属性抽出インタフェース110は、関数名を基に属性抽出手段管理表1101を走査し、対応する属性抽出手段111−1〜111−Nを特定して、呼び出す(ステップf4)。このとき、属性抽出インタフェース110は、図15に示すように、バッファ1102内に入出力イベントの系列を格納するメモリ領域(入力キュー)などを確保し、それらのアドレスを属性抽出手段111に伝達する。   When a function call is included, the policy interpretation unit 106 inputs a function name, a parameter list, an input / output event, and the like to the attribute extraction interface 110 and inquires about attribute information. The attribute extraction interface 110 scans the attribute extraction unit management table 1101 based on the function name, specifies the corresponding attribute extraction units 111-1 to 111-N, and calls them (step f4). At this time, as shown in FIG. 15, the attribute extraction interface 110 secures a memory area (input queue) for storing a series of input / output events in the buffer 1102, and transmits those addresses to the attribute extraction unit 111. .

その後、呼び出された属性抽出手段111−1〜111−Nは、属性抽出インタフェース110の入力キューやパラメータリストを参照しながら、入出力イベントから属性を抽出する属性抽出動作を行い、抽出した属性値を属性抽出インタフェース110の応答キューに格納する(ステップf5)。   Thereafter, the called attribute extraction unit 111-1 to 111 -N performs an attribute extraction operation for extracting an attribute from the input / output event while referring to the input queue or parameter list of the attribute extraction interface 110, and the extracted attribute value Is stored in the response queue of the attribute extraction interface 110 (step f5).

以上の処理によって、属性抽出手段111は、複数の入出力イベントを参照できるようになり、アプリケーションデータの内容から属性値を抽出できる。例えば、メールの宛先属性は、複数のIPパケット(=メール送信時の入出力イベント)にまたがって現れ得る。このような場合、メール宛先属性を抽出する属性抽出手段111は、複数IPパケット系列を格納した入力キューを参照することによって、正しくメールの宛先属性を抽出できる。   Through the above processing, the attribute extraction unit 111 can refer to a plurality of input / output events, and can extract attribute values from the contents of application data. For example, the mail destination attribute may appear across a plurality of IP packets (= input / output event at the time of mail transmission). In such a case, the attribute extraction unit 111 that extracts the mail destination attribute can correctly extract the mail destination attribute by referring to the input queue that stores a plurality of IP packet sequences.

そして、属性抽出インタフェース108は、応答キューに格納された属性値をポリシー解釈手段106に転送し、ポリシー解釈手段106が、属性値を用いて現在評価中の条件節の真偽値を決定する(ステップf3)。   Then, the attribute extraction interface 108 transfers the attribute value stored in the response queue to the policy interpretation unit 106, and the policy interpretation unit 106 determines the true / false value of the conditional clause currently being evaluated using the attribute value ( Step f3).

全ての条件節の評価を完了した後、条件文全体の真偽値にもとづいて、ポリシー解釈手段106は、第1実施形態または第2実施形態におけるポリシー解釈手段106のステップb4およびステップb5の処理と同様の処理によって責務実施指示を生成し、監視手段105に出力する。   After completing the evaluation of all the conditional clauses, the policy interpreting means 106 performs the processing of step b4 and step b5 of the policy interpreting means 106 in the first embodiment or the second embodiment based on the truth value of the entire conditional statement. The duty execution instruction is generated by the same processing as that described above, and is output to the monitoring unit 105.

なお、ステップf5において、属性抽出手段111−1〜111−Nは、属性抽出に必要な入出力イベント系列が、入力キューに格納されていない場合、抽出不能を示す「INPROC例外」を発行する(ステップf6)。この場合、アクセスポリシーの特殊な判定値として、INPROC判定を監視手段105に出力し、以降の処理を中断する(ステップf7)。この場合、監視手段105は、現在参照中の入出力イベントを、仮想化手段103への転送も遮断もせず、次の入出力イベントを待ち合わせる。   In step f5, the attribute extraction unit 111-1 to 111-N issues an “INPROC exception” indicating that extraction is not possible when the input / output event sequence necessary for attribute extraction is not stored in the input queue ( Step f6). In this case, the INPROC determination is output to the monitoring unit 105 as a special determination value of the access policy, and the subsequent processing is interrupted (step f7). In this case, the monitoring unit 105 waits for the next input / output event without transferring or blocking the currently referenced input / output event to the virtualization unit 103.

図17は、図14に示されたコンピュータ100Eに対して、第1実施形態や第2実施形態における責務実施インタフェース108および責務実施手段107が明示的に設けられているコンピュータ100Fの構成を示すブロック図である。図17に示す構成において、監視手段105は、ポリシー解釈手段106から責務実施指示の応答を受けると、責務実施インタフェース108に、入出力イベントを伴う責務実施指示で指定された責務実施手段107の呼び出しを依頼する。責務実施インタフェース108は、監視手段105から依頼された責務実施手段107の呼び出しを行う。責務実施手段107は、責務実施インタフェース108からの呼び出しに応じて、所定の責務実施処理を行い、その結果を、責務実施インタフェース108を介して、監視手段105に応答する。   FIG. 17 is a block diagram showing a configuration of a computer 100F in which the responsibility execution interface 108 and the responsibility execution means 107 in the first and second embodiments are explicitly provided for the computer 100E shown in FIG. FIG. In the configuration shown in FIG. 17, when the monitoring means 105 receives a response to the responsibility execution instruction from the policy interpretation means 106, the monitoring means 105 calls the responsibility execution means 107 designated by the responsibility execution instruction accompanying the input / output event to the responsibility execution interface 108. Request. The responsibility execution interface 108 calls the responsibility execution means 107 requested by the monitoring means 105. Responsibility execution means 107 performs predetermined responsibility execution processing in response to a call from responsibility execution interface 108, and returns the result to monitoring means 105 via responsibility execution interface 108.

3.3 効果
本実施形態では、属性抽出インタフェース110によって、属性抽出手段111をプラグイン化することができるので、新たなアプリケーションに固有の属性抽出(例えば、メールの宛先情報など)への対応が容易になる。また、アクセスポリシーにアプリケーション固有の属性にもとづく条件が記述できるようになり、実施できるポリシーの表現力がさらに向上する。
3.3 Effects In this embodiment, the attribute extraction unit 111 can be plugged in by the attribute extraction interface 110, so that it is possible to cope with attribute extraction (for example, mail destination information) unique to a new application. It becomes easy. In addition, conditions based on application-specific attributes can be described in the access policy, and the expressiveness of the policy that can be implemented is further improved.

以上のように、上記の実施形態において、第1実施形態のアクセス制御システムは、仮想マシン104によるデバイス102への入出力イベントを中継する仮想化手段103から伝達された入出力イベントに対して入出力イベントの許可・拒否を制御する監視手段105と、アクセスポリシーを解釈するポリシー解釈手段106と、アクセスポリシーに指定された責務を実施する責務実施手段107と、責務実施手段108の特定・呼び出しを行う責務実施インタフェース109とを備えている。   As described above, in the above embodiment, the access control system according to the first embodiment receives an input / output event transmitted from the virtualization unit 103 that relays an input / output event to the device 102 by the virtual machine 104. Identification / calling of the monitoring means 105 for controlling the permission / denial of the output event, the policy interpretation means 106 for interpreting the access policy, the responsibility execution means 107 for executing the responsibility specified in the access policy, and the responsibility execution means 108 And a responsibility execution interface 109 for performing.

監視手段105は、仮想化手段103からある入出力イベントを受け取るたびに、入出力イベントに対する制御方法をポリシー解釈手段106に問い合わせる。ポリシー解釈手段106は、所定のアクセスポリシーと、問い合わせに含まれるイベント情報(どの仮想マシンがどのデバイスにどんなデータを入力もしくは出力したか)とを比較し、合致するポリシー単位を解釈して、入出力イベントに対応するアクセス可否の判定と、実施すべき責務の名前や実施時のパラメータ等とを含む、責務実施指示を生成し、責務実施指示を監視手段105に応答する。   Each time the monitoring unit 105 receives an input / output event from the virtualization unit 103, the monitoring unit 105 inquires the policy interpretation unit 106 about a control method for the input / output event. The policy interpreter 106 compares a predetermined access policy with the event information included in the query (what virtual machine inputs or outputs what data to which device), interprets the matching policy unit, and inputs the policy unit. An obligation execution instruction including the determination of accessibility to the output event, the name of the obligation to be executed, parameters at the time of execution, and the like is generated, and the obligation execution instruction is returned to the monitoring unit 105.

監視手段105は、責務実施指示に応じて、入出力イベントを仮想化手段103に中継したり遮断したりしてアクセス可否を制御するとともに、指示で求められる責務の実施を開始させるために、入出力イベントや責務の名前・パラメータ等を責務実施インタフェース108に入力する。   In accordance with the duty execution instruction, the monitoring unit 105 relays or blocks the input / output event to the virtualization unit 103 to control access, and to start the execution of the duty requested by the instruction. The output event and the name / parameter of the responsibility are input to the responsibility execution interface 108.

責務実施インタフェース108は、入出力イベントや責務の名前・パラメータ等の監視手段105からの入力に応じて、責務管理表1081を参照して、責務を実施すべき責務実施手段107を特定し、入出力イベントやパラメータを伴って適切な責務実施手段107を呼び出した後、その応答を監視手段105に転送する。責務実施インタフェース108は、責務実施手段107の呼出しに際して、内部に備えているバッファ1082内に構成されたキューに、入出力イベントを追加し、キューの内容を責務実施手段107に参照させる。   Responsibility implementation interface 108 refers to responsibility management table 1081 in response to input from monitoring means 105 such as input / output events and responsibility names / parameters, and identifies responsibility input means 107 that should execute the responsibility. After calling the appropriate responsibility execution unit 107 with the output event or parameter, the response is transferred to the monitoring unit 105. When calling the responsibility execution means 107, the responsibility execution interface 108 adds an input / output event to a queue configured in the buffer 1082 provided therein, and causes the responsibility execution means 107 to refer to the contents of the queue.

責務実施手段107は、入力された入出力イベントおよびパラメータ等に応じて、暗号化やログなどの所定の動作を行い、その結果を責務実施インタフェース108に応答する。例えば、暗号化のための責務実施手段107であれば、監視手段105からパラメータとして、入出力データ・暗号鍵・暗号アルゴリズム指定などのパラメータを受け取り、指定された暗号アルゴリズムと暗号鍵とを用いて、入出力データを暗号化し、暗号化データを責務実施インタフェース108に戻す。   Responsibility implementation means 107 performs predetermined operations such as encryption and log in accordance with input / output events and parameters, and returns the result to responsibility implementation interface 108. For example, in the case of the responsibility execution means 107 for encryption, parameters such as input / output data, encryption key, and encryption algorithm designation are received from the monitoring means 105 as parameters, and the designated encryption algorithm and encryption key are used. The input / output data is encrypted, and the encrypted data is returned to the responsibility execution interface 108.

このような構成を採用して、責務実施インタフェース108で、監視手段105と責務実施手段107との間で行われる責務実施手順を統一することで、様々な責務実施処理をプラグイン化することができる。さらに、ポリシー解釈手段106からの責務実施指示に従って、監視手段105が責務実施インタフェース108を介して責務実施手段107を呼び出すように構成することによって、アクセスポリシーにアクセス可否と責務実施の条件とを統合的に記述・適用することが可能になる。また、責務実施インタフェース108が、バッファ1082を備え、複数の入出力イベントを責務実施手段107から参照可能とすることによって、例えば、IPパケット単独ではなく、一連のSMTPを構成するIPパケット系列で構成されるメールデータのみを暗号化するなど、複数の入出力イベントで構成されるアプリケーションデータに対する責務の実施が可能になる。   By adopting such a configuration and unifying the responsibility execution procedures performed between the monitoring means 105 and the responsibility execution means 107 in the responsibility execution interface 108, various responsibility execution processes can be plugged in. it can. Further, by configuring the monitoring means 105 to call the responsibility execution means 107 via the responsibility execution interface 108 in accordance with the responsibility execution instruction from the policy interpretation means 106, the access policy and the conditions for executing the duties are integrated into the access policy. It is possible to describe and apply it automatically. In addition, the responsibility implementation interface 108 includes a buffer 1082 so that a plurality of input / output events can be referred to from the responsibility implementation means 107. For example, the responsibility implementation interface 108 is configured not by an IP packet alone but by an IP packet sequence constituting a series of SMTP Enforcement of application data composed of multiple input / output events, such as encrypting only mail data to be sent.

第1実施形態では、固有のユーザOSに依存することなく、電子メールなどのアプリケーション入出力に伴って発生する仮想マシンの入出力に対して、アクセス可否・暗号化・ログ記録など、多様なアクセスポリシーを一貫して実施できる。その理由は、ポリシー解釈手段106が、アクセス可否のルールに加えて、暗号化・ログ記録など、実施すべきアクションを併記したアクセスポリシーを解釈して責務実施指示を生成し、監視手段105が責務実施指示に従って、責務実施インタフェース108を介して、適切な責務を実施する責務実施手段107を呼び出すためである。   In the first embodiment, various accesses such as accessibility / encryption / log recording, etc. for virtual machine input / output generated by application input / output such as e-mail without depending on a specific user OS. Policies can be enforced consistently. The reason is that the policy interpreting means 106 generates an obligation execution instruction by interpreting an access policy in which actions to be performed such as encryption and log recording are added in addition to the access permission rule, and the monitoring means 105 is responsible for This is because the responsibility execution means 107 for executing an appropriate responsibility is called through the responsibility execution interface 108 in accordance with the execution instruction.

また、IPパケット等、仮想マシンによる低レベルな入出力データに対してだけでなく、メールデータなど、一連の入出力データの一部のみに、暗号化などの責務を適用することができる。その理由は、責務実施インタフェース108が、バッファ1082を備え、複数の入出力イベントを責務実施手段107から参照できるためである。   Also, the responsibility such as encryption can be applied not only to low-level input / output data such as IP packets but also to a part of a series of input / output data such as mail data. The reason is that the responsibility execution interface 108 includes a buffer 1082, and a plurality of input / output events can be referred to from the responsibility execution means 107.

また、第2実施形態のアクセス制御システムは、第1実施形態のアクセス制御システムの構成に加えて、コンピュータ管理手段109を備えている。コンピュータ管理手段109は、ポリシー解釈部106が格納するアクセスポリシーと、責務実施インタフェース108に接続されている責務実施手段107のリストとを比較して、アクセスポリシーの適用に必要な責務実施手段107の集合を特定し、不用な責務実施手段107の削除や、不足している責務実施手段107の追加などを行う。   The access control system according to the second embodiment includes a computer management unit 109 in addition to the configuration of the access control system according to the first embodiment. The computer management unit 109 compares the access policy stored in the policy interpreting unit 106 with the list of the responsibility execution unit 107 connected to the responsibility execution interface 108, and determines the responsibility execution unit 107 necessary for applying the access policy. A set is specified, and unnecessary responsibility execution means 107 is deleted, or missing responsibility execution means 107 is added.

コンピュータ管理手段109が自動的に責務実施手段107の追加・削除を行うように構成されているので、アクセスポリシー内の責務の定義に応じて、責務を実施するモジュールを自動配付できるようにするという本発明の第2の目的を達成することができる。   Since the computer management unit 109 is configured to automatically add / delete the responsibility execution unit 107, it is possible to automatically distribute a module for performing the responsibility according to the definition of the responsibility in the access policy. The second object of the present invention can be achieved.

また、有限の物理的な記憶リソースを、仮想マシン104と、責務実施手段107等を含むプラットフォームソフトウェアとが共有するコンピュータ構成において、プラットフォームソフトウェアが使用する記憶リソースを必要最小限に抑えることができる。その理由は、コンピュータ100D−1〜100D−Nで実施されるアクセスポリシーを管理する管理サーバ200が、責務管理手段202およびコンピュータ管理手段109を用いて、アクセスポリシーに定義された責務に対応する責務実施手段107を自動的にコンピュータ100D−1〜100D−Nにインストールするとともに、ポリシーに定義されていない責務実施手段107をコンピュータ100から自動的に削除することによって、コンピュータ100D−1〜100D−Nが必要最小限の責務実施手段107を備えることが保証されるためである。   Further, in a computer configuration in which a finite physical storage resource is shared by the virtual machine 104 and the platform software including the duty execution unit 107, the storage resource used by the platform software can be minimized. The reason is that the management server 200 that manages the access policy implemented in the computers 100D-1 to 100D-N uses the duty management means 202 and the computer management means 109 to handle the duty corresponding to the duty defined in the access policy. The execution unit 107 is automatically installed in the computers 100D-1 to 100D-N, and the responsibility execution unit 107 that is not defined in the policy is automatically deleted from the computer 100, whereby the computers 100D-1 to 100D-N This is because it is assured that the minimum requirement implementation means 107 is provided.

なお、上記の各実施形態のアクセス制御システムは、仮想マシン104とデバイス102との間の入出力イベントを中継する仮想化手段103を備え、監視手段105は、仮想化手段103から伝達される入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行うように構成されていたが、監視手段が、物理的なマシン(実マシン)に入力される入力イベントや実マシンから出力される出力イベントを監視する場合にも、本発明を適用することができる。   The access control system according to each of the above embodiments includes the virtualization unit 103 that relays an input / output event between the virtual machine 104 and the device 102, and the monitoring unit 105 receives the input from the virtualization unit 103. Although it was configured to control whether access is possible and to request responsibility based on the output event, the monitoring means inputs events that are input to the physical machine (actual machine) and outputs that are output from the actual machine. The present invention can also be applied to monitoring events.

4.第4実施形態
第3実施形態では、仮想マシン104が発生させる入出力データから属性を抽出する属性抽出手段111と、属性抽出手段111による属性抽出方法とを説明したが、属性を抽出することに代えて、端末位置や現在時刻など、入出力データとは独立して発生する、アクセス制御システム(具体的には、コンピュータ等)に係る位置に関する状況または時間に関する状況の情報(以下、コンテキスト情報という。)を抽出するようにしてもよい。
4). Fourth Embodiment In the third embodiment, the attribute extraction unit 111 that extracts an attribute from input / output data generated by the virtual machine 104 and the attribute extraction method by the attribute extraction unit 111 have been described. Instead, information on the situation related to the position or time related to the access control system (specifically, computer etc.) generated independently of input / output data such as the terminal position and the current time (hereinafter referred to as context information). .) May be extracted.

4.1 構成
図18は、アクセス制御システムの第4実施形態の構成を示すブロック図である。本実施形態では、アクセス制御システムの一例であるコンピュータ100Jは、図14に示された第3実施形態におけるコンピュータ100Eにおける属性抽出手段111−1〜属性抽出手段111−Nに代えて、コンピュータ位置や時間などのコンテキスト情報をポリシー解釈手段106に提供するコンテキスト情報抽出手段112−1〜112−Nを備えている。なお、コンテキスト情報抽出手段112−1〜112−Nを、コンテキスト情報抽出手段112と総称することがある。また、コンピュータ100Jは、図14に示された属性抽出手段111−1〜属性抽出手段111−Nも備えていることが好ましい。その場合には、第3実施形態による効果も併せて得ることができる。また、属性抽出インタフェース110の構成は、第3実施形態におけるものと同様の構成であるが、本実施形態では、属性抽出手段管理表1101(図15参照)に、関数名に対応付けられた属性抽出手段名に代えて、コンテキスト情報抽出手段名が記載されている。
4.1 Configuration FIG. 18 is a block diagram showing a configuration of the fourth embodiment of the access control system. In the present embodiment, the computer 100J, which is an example of an access control system, replaces the attribute extraction means 111-1 to 111-N in the computer 100E in the third embodiment shown in FIG. Context information extraction means 112-1 to 112 -N for providing context information such as time to the policy interpretation means 106 are provided. The context information extracting means 112-1 to 112-N may be collectively referred to as the context information extracting means 112. The computer 100J preferably also includes attribute extracting means 111-1 to attribute extracting means 111-N shown in FIG. In that case, the effects of the third embodiment can also be obtained. The configuration of the attribute extraction interface 110 is the same as that in the third embodiment, but in this embodiment, the attribute associated with the function name in the attribute extraction unit management table 1101 (see FIG. 15). Instead of the extraction means name, the context information extraction means name is described.

図19に示すように、コンテキスト情報抽出手段112は、コンテキスト情報の最新状態を記憶する状態記憶手段1121と、コンテキスト情報の変化を通知するイベント発行手段1122とを備えている。   As shown in FIG. 19, the context information extraction unit 112 includes a state storage unit 1121 that stores the latest state of the context information, and an event issue unit 1122 that notifies the change of the context information.

状態記憶手段1121は、不揮発性メモリや2次記憶装置などで構成され、コンテキスト情報の最新状態を記憶する。そして、イベント発行手段1122からの変化通知に応じて、コンテキスト情報の状態を更新する。イベント発行手段1122は、無線タグ(RFID;Radio Frequency Identification)と通信を行う無線タグ装置、GPS(Global Positioning System )装置、無線アクセスポイント検出装置等のセンサ装置やアルタイムクロック装置などを備え、検出状態等が変化したことを状態記憶手段1121に通知する。   The state storage unit 1121 includes a nonvolatile memory, a secondary storage device, and the like, and stores the latest state of context information. Then, the state of the context information is updated in accordance with the change notification from the event issuing unit 1122. The event issuing means 1122 includes a wireless tag device that performs communication with a radio frequency identification (RFID), a sensor device such as a GPS (Global Positioning System) device, a wireless access point detection device, an altime clock device, and the like. The state storage unit 1121 is notified that the state or the like has changed.

4.2 動作
第4実施形態のアクセス制御システムの動作は、第3実施形態における属性抽出インタフェース110による属性抽出手段111の呼び出し、および属性抽出手段111の属性抽出動作(図16におけるステップf4〜f7)が、属性抽出インタフェース110によるコンテキスト情報抽出手段112の呼び出し、およびコンテキスト情報抽出手段112によるコンテキスト情報抽出動作(図20におけるステップj1〜j5)に置き換えられた点で、第3実施形態の動作とは異なる。以下、図20のフローチャートおよび図21のアクセスポリシーの一例を示す説明図を参照して、本実施形態におけるポリシー解釈手段106のコンテキスト情報抽出動作について詳細に説明する。
4.2 Operation The operation of the access control system according to the fourth embodiment is performed by calling the attribute extraction unit 111 by the attribute extraction interface 110 and the attribute extraction operation of the attribute extraction unit 111 (steps f4 to f7 in FIG. 16). ) Is replaced by the call of the context information extraction unit 112 by the attribute extraction interface 110 and the context information extraction operation (steps j1 to j5 in FIG. 20) by the context information extraction unit 112, and the operation of the third embodiment. Is different. Hereinafter, the context information extraction operation of the policy interpretation unit 106 in this embodiment will be described in detail with reference to the flowchart of FIG. 20 and an explanatory diagram showing an example of the access policy of FIG.

まず、ポリシー解釈手段106は、アクセスポリシーの条件節(<condition>タグ)を逐次参照しながら(ステップf1)、第3実施形態におけるポリシー解釈手段106と同様に、条件節に関数呼出し(図21に示す例では、TerminalLocation()など)が含まれるか否か確認する(ステップf2)。   First, the policy interpreting means 106 calls a function in a conditional clause in the same manner as the policy interpreting means 106 in the third embodiment while sequentially referring to the conditional clause (<condition> tag) of the access policy (step f1) (FIG. 21). In the example shown in FIG. 5, it is confirmed whether TerminalLocation () or the like is included (step f2).

条件節に関数呼び出しが含まれる場合には、ポリシー解釈手段106は、少なくとも関数名とパラメータリストとを含むコンテキスト情報抽出要求を属性抽出インタフェース110に出力する。属性抽出インタフェース110は、関数名を基に属性抽出手段管理表1101を走査して、対応するコンテキスト情報抽出手段112を特定して、呼び出す(ステップj1)。   When a function call is included in the conditional clause, the policy interpretation unit 106 outputs a context information extraction request including at least a function name and a parameter list to the attribute extraction interface 110. The attribute extraction interface 110 scans the attribute extraction unit management table 1101 based on the function name, specifies the corresponding context information extraction unit 112, and calls it (step j1).

ステップj1の処理で呼び出されたコンテキスト情報抽出手段112は、状態記憶手段1121の記憶内容を参照して、最新のコンテキスト情報を取得する(ステップj2)。そして、属性抽出インタフェース110を介して、ポリシー解釈手段106に当該コンテキスト情報を出力する(ステップj3)。その後、ポリシー解釈手段106は、入力したコンテキスト情報を用いて条件判定を行う(ステップf3)。本実施形態では、ポリシー解釈手段106は、コンテキスト情報抽出手段112が検知した状況(コンテキスト)に応じてアクセス可否および実施すべき責務を判定することになる。   The context information extraction unit 112 called in the process of step j1 refers to the storage contents of the state storage unit 1121 and acquires the latest context information (step j2). Then, the context information is output to the policy interpretation unit 106 via the attribute extraction interface 110 (step j3). Thereafter, the policy interpretation unit 106 makes a condition determination using the input context information (step f3). In the present embodiment, the policy interpretation unit 106 determines whether access is permitted and the responsibility to be implemented according to the situation (context) detected by the context information extraction unit 112.

なお、コンテキスト情報抽出手段112は、上述したコンテキスト情報抽出動作とは独立して、コンテキスト情報の更新を行う(ステップj4,j5)。具体的には、イベント発行手段1122がセンサ情報や時刻情報等のコンテキスト情報の変化を検知したときに、変化後のセンサ情報や時刻情報等を状態記憶手段1121に通知する(ステップj4)。すると、状態記憶手段1121は、イベント発行手段1122からの通知に含まれる情報で、過去のコンテキスト情報を最新の情報に更新する(ステップj5)。   Note that the context information extraction unit 112 updates the context information independently of the above-described context information extraction operation (steps j4 and j5). Specifically, when the event issuing unit 1122 detects a change in context information such as sensor information and time information, the state storage unit 1121 is notified of the changed sensor information and time information (step j4). Then, the state storage unit 1121 updates the past context information to the latest information with the information included in the notification from the event issuing unit 1122 (step j5).

4.3 効果
本実施形態のアクセス制御システムは、コンテキスト情報抽出手段112によるステップj4,j5の動作によって、常に最新の位置情報やセンサ情報や時刻情報にもとづくアクセス制御を実現でき、営業業務や保守業務などでコンピュータ100Jを携帯するような場合に、移動中の不適切なインターネットアクセス等に起因する情報漏えい事故を防止することができる。
4.3 Effects The access control system according to the present embodiment can always realize access control based on the latest position information, sensor information, and time information by the operations of steps j4 and j5 by the context information extraction unit 112, so that sales operations and maintenance can be performed. When carrying the computer 100J for business or the like, it is possible to prevent an information leakage accident caused by inappropriate Internet access while moving.

また、ステップj1の動作を実行することによって、任意のコンテキスト情報を組み合わせた条件文を記載したアクセスポリシーを定義できるようになり、コンピュータ100Jの使用を特定の時間かつ特定のオフィス内に制限することができ、保守業務などで頻繁に発生する派遣先企業の重要データの漏えいなどを防止することができる。   In addition, by executing the operation of step j1, it becomes possible to define an access policy that describes a conditional statement combining arbitrary context information, and the use of the computer 100J is restricted to a specific time and a specific office. It is possible to prevent leakage of important data of the dispatched company that frequently occurs in maintenance work.

5.第5実施形態
第4実施形態では、入出力データとは独立して発生するコンテキスト情報を抽出するようにしたが、さらに、コンテキスト情報の変化にもとづいて責務を実施するタイミングを制御するようにしてもよい。
5). Fifth Embodiment In the fourth embodiment, the context information generated independently of the input / output data is extracted. However, the timing for executing the responsibility is controlled based on the change of the context information. Also good.

5.1 構成
図22は、アクセス制御システムの第5実施形態の構成を示すブロック図である。本実施形態では、アクセス制御システムの一例であるコンピュータ100Kは、第4実施形態におけるコンピュータ100Jの構成に加えて、責務実施手段107と責務実施インタフェース108とを備えている。
5.1 Configuration FIG. 22 is a block diagram showing a configuration of the fifth embodiment of the access control system. In the present embodiment, a computer 100K, which is an example of an access control system, includes responsibility execution means 107 and a responsibility execution interface 108 in addition to the configuration of the computer 100J in the fourth embodiment.

属性抽出インタフェース110には、第4実施形態の場合と同様に、ポリシー解釈手段106からコンテキスト情報抽出要求が入力される。さらに、本実施形態では、属性抽出インタフェース110は、コンテキスト情報抽出手段112がコンテキスト情報の変化を検知したときに、コンテキスト情報の変化通知を責務実施インタフェース108に対して出力する。コンテキスト情報の変化通知には、コンテキスト情報の名前と変更後の最新のコンテキスト情報とが含まれる。   As in the case of the fourth embodiment, a context information extraction request is input to the attribute extraction interface 110 from the policy interpretation unit 106. Further, in the present embodiment, the attribute extraction interface 110 outputs a context information change notification to the responsibility execution interface 108 when the context information extraction unit 112 detects a change in context information. The context information change notification includes the name of the context information and the latest context information after the change.

責務実施インタフェース108は、第1実施形態または第2実施形態における構成に加えて、不揮発性メモリや2次記憶装置などを含む責務実施待機手段1083を備えている。責務実施インタフェース108は、監視手段105から入力された責務実施指示に「責務実施条件」が含まれる場合に責務実施指示を責務実施待機手段1083に登録する。そして、その責務実施条件に合致するコンテキスト情報抽出手段112から属性抽出インタフェース110を介してコンテキスト情報の変化通知を受けたときに、責務実施指示に対応する責務実施手段107を呼び出し、責務実施手段107の出力(実施結果)を監視手段105に応答する。   In addition to the configuration in the first embodiment or the second embodiment, the responsibility execution interface 108 includes responsibility execution standby means 1083 including a nonvolatile memory and a secondary storage device. The responsibility execution interface 108 registers the responsibility execution instruction in the responsibility execution standby unit 1083 when the “responsibility execution condition” is included in the responsibility execution instruction input from the monitoring unit 105. When a context information change notification is received from the context information extraction unit 112 that matches the duty execution condition via the attribute extraction interface 110, the duty execution unit 107 corresponding to the duty execution instruction is called, and the duty execution unit 107 Is output to the monitoring means 105.

5.2 動作
図23は、第5実施形態の全体の動作を示すフローチャートである。図23を参照すると、本実施形態のアクセス制御システムは、第1実施形態のアクセス制御システムにおける責務実施インタフェース108が責務実施手段107を呼び出して責務を実施させる処理(ステップa5)を実行する前に、責務実施インタフェース108が、責務実施処理を待機する処理(ステップk1)と、属性抽出インタフェース110からコンテキスト情報の変化通知を待ち合わせる処理(ステップk2)とを実行する点で、第1実施形態と異なる。
5.2 Operation FIG. 23 is a flowchart showing the overall operation of the fifth embodiment. Referring to FIG. 23, in the access control system of this embodiment, before the responsibility execution interface 108 in the access control system of the first embodiment calls the responsibility execution means 107 to execute the processing (step a5) for executing the responsibility. The responsibility execution interface 108 is different from the first embodiment in that the responsibility execution interface 108 executes a process of waiting for the duty execution process (step k1) and a process of waiting for a change notification of context information from the attribute extraction interface 110 (step k2). .

まず、ステップa1〜a4までの動作によって、監視手段105が責務実施インタフェース108に責務実施指示を出力する。責務実施指示は、下記のようなアクセスポリシーの責務定義に相当するものとする。下記の責務定義は、コンテンツ情報抽出手段112が「SSID_companyA 」以外のSSID(Service Set Identifier)を近傍の無線アクセスポイントから受信したときに、「/secret 」ディレクトリ配下にある全てのファイルを削除することを意味している。
<obligation function =”RemoveFiles ”>
<condition> TerminalLocation!=“SSID_companyA ”</condition>
<parameter name =”filename” value=”/secret/* ”/>
</obligation>
First, the monitoring means 105 outputs a duty execution instruction to the duty execution interface 108 through the operations from steps a1 to a4. The responsibility implementation instruction corresponds to the responsibility definition of the access policy as follows. The following responsibility definition is to delete all files under the "/ secret" directory when the content information extraction means 112 receives an SSID (Service Set Identifier) other than "SSID_companyA" from a nearby wireless access point. Means.
<obligation function = ”RemoveFiles”>
<condition> TerminalLocation! = “SSID_companyA” </ condition>
<parameter name = “filename” value = ”/ secret / *” />
</ obligation>

上記の<condition> タグで記載される「責務実施条件」を含む責務実施指示に対して、責務実施インタフェース108は、当該責務実施指示を責務実施待機手段1083に入力して、以降の処理を一時中断する。責務実施待機手段1083は、ステップk1の処理で、責務実施指示に含まれる責務名(LogUpload )と、条件式(TerminalLocation!=“SSID_companyA ”)とを、不揮発性メモリまたは2次記憶装置内の待機表(図示せず)に登録する。   In response to the responsibility execution instruction including the “responsibility implementation condition” described in the <condition> tag, the responsibility execution interface 108 inputs the responsibility execution instruction to the responsibility execution standby unit 1083 and temporarily performs the subsequent processing. Interrupt. Responsibility execution standby means 1083 is a process in step k1, and displays the responsibility name (LogUpload) included in the responsibility execution instruction and the conditional expression (TerminalLocation! = “SSID_companyA”) in the non-volatile memory or the secondary storage device. Register in a table (not shown).

その後、属性抽出インタフェース110は、属性抽出インタフェース110に接続されている任意のコンテキスト情報抽出手段112からコンテキスト情報の変化通知がある度に、コンテキスト情報の名前(例えば、TerminalLocation)と、変更後の最新のコンテキスト情報(SSID_CompanyB )との組を含む変化通知を責務実施インタフェース108に転送する。変化通知を受けた責務実施インタフェース108は、責務実施待機手段1083の待機表を走査して、コンテキスト情報の名前を含む条件式(TerminalLocation!=“SSID_companyA ”)を抽出し、コンテキスト情報(SSID_CompanyB )を用いて条件式の真偽値を評価する(ステップk2)。   Thereafter, the attribute extraction interface 110 receives the context information name (for example, TerminalLocation) and the latest information after the change every time there is a change notification of the context information from any context information extraction means 112 connected to the attribute extraction interface 110. The change notification including the pair with the context information (SSID_CompanyB) is transferred to the responsibility implementation interface 108. The responsibility execution interface 108 that has received the change notification scans the standby table of the duty execution standby means 1083, extracts the conditional expression (TerminalLocation! = “SSID_companyA”) including the name of the context information, and obtains the context information (SSID_CompanyB). To evaluate the truth value of the conditional expression (step k2).

そして、条件式が真のときにのみ、責務実施インタフェース108は、責務名(RemoveFiles )に相当する責務実施手段107を呼び出す(ステップa5)。   Only when the conditional expression is true, the responsibility execution interface 108 calls the responsibility execution means 107 corresponding to the responsibility name (RemoveFiles) (step a5).

5.3 効果
以上の構成および動作にもとづいて、本実施形態におけるアクセス制御システムは、コンテキスト情報の変化に応じて責務を実施する。具体的には、責務実施インタフェース108が、責務実施手段107が責務を実施するタイミングを制御する。よって、さらに多様なアクセスポリシーを実現できるようになる。例えば、上記の例では、コンピュータ位置がComapanyA 以外になった場合、すなわちComapanyA のオフィスからコンピュータが持ち出された場合に、所定のディレクトリ(/secret/)に格納されたファイルを削除させることができ、当該ファイルの持ち出しを禁ずるアクセスポリシーの徹底が可能になる。
5.3 Effects Based on the configuration and operation described above, the access control system according to the present embodiment performs duties according to changes in context information. Specifically, the duty execution interface 108 controls the timing at which the duty execution unit 107 executes the duty. Therefore, various access policies can be realized. For example, in the above example, when the computer location is other than CompanyA, that is, when the computer is taken out from the office of CompanyA, the file stored in the predetermined directory (/ secret /) can be deleted. A thorough access policy that prohibits the file from being taken out becomes possible.

なお、図22に示された第5実施形態のアクセス制御システムは、図1に示された第1実施形態のアクセス制御システムに、コンテキスト情報抽出に係る属性抽出インタフェース110とコンテキスト情報抽出手段112とを組み込んだ構成になっているが、第1実施形態の変形例のアクセス制御システム、第2実施形態のアクセス制御システムまたは第3実施形態のアクセス制御システムに、コンテキスト情報抽出に係る属性抽出インタフェース110とコンテキスト情報抽出手段112とを組み込んでもよい。   The access control system of the fifth embodiment shown in FIG. 22 is different from the access control system of the first embodiment shown in FIG. 1 in that an attribute extraction interface 110 and context information extraction means 112 for extracting context information are provided. The attribute extraction interface 110 related to context information extraction is incorporated into the access control system of the modification of the first embodiment, the access control system of the second embodiment, or the access control system of the third embodiment. And the context information extracting means 112 may be incorporated.

本発明によるアクセス制御システムの実施例を、図24を参照して説明する。   An embodiment of the access control system according to the present invention will be described with reference to FIG.

(1)構成
図24に示すように、本実施例では、コンピュータ100G−1が、属性抽出手段としてのメール宛先属性抽出手段111G−1と責務実施手段としてのメール暗号化責務実施手段107G−1とを備え、コンピュータ100G−2が、責務実施手段としてのメール復号責務実施手段107G−2を備えている。
(1) Configuration As shown in FIG. 24, in this embodiment, the computer 100G-1 has a mail destination attribute extraction unit 111G-1 as an attribute extraction unit and a mail encryption duty execution unit 107G-1 as a duty execution unit. And the computer 100G-2 includes mail decryption responsibility execution means 107G-2 as duty execution means.

メール宛先属性抽出手段111G−1は、ポリシー解釈手段106−1からSMTPパケットの入力を受けて、メールの宛先アドレスのリストを抽出し、ポリシー解釈手段106−1に返す。   The mail destination attribute extraction unit 111G-1 receives the SMTP packet input from the policy interpretation unit 106-1, extracts a list of mail destination addresses, and returns the list to the policy interpretation unit 106-1.

メール暗号化責務実施手段107G−1は、鍵管理サーバ500Gから暗号化のための鍵を受信し、監視手段105−1から渡されたメールを暗号化し、暗号化されたメールを監視手段105−1へ返す責務実施手段である。   The mail encryption responsibility execution unit 107G-1 receives the key for encryption from the key management server 500G, encrypts the mail delivered from the monitoring unit 105-1, and monitors the encrypted mail. Responsibility implementation means to return to 1.

メール復号責務実施手段107G−2は、鍵管理サーバ500Gから復号のための鍵を受け取り、監視手段105−2から渡されたメールを復号し、復号されたメールを監視手段105−2に返す責務実施手段である。   The mail decryption responsibility execution unit 107G-2 receives the key for decryption from the key management server 500G, decrypts the mail delivered from the monitoring unit 105-2, and returns the decrypted mail to the monitoring unit 105-2 Implementation means.

鍵管理サーバ500Gは、メール暗号化責務実施手段107G−1およびメール復号責務実施手段107G−2に鍵を配付する。鍵管理サーバ500Gは、鍵配布前に認証を行い、鍵を配付するコンピュータを限定してもよい。例えば、SSLのクライアント認証を用いることによって、悪意のある第3者が成りすましによって不正に鍵を取得することを防ぐことができる。   The key management server 500G distributes the key to the mail encryption duty execution means 107G-1 and the mail decryption duty execution means 107G-2. The key management server 500G may perform authentication before key distribution and limit computers to which keys are distributed. For example, by using SSL client authentication, a malicious third party can be prevented from improperly acquiring a key.

メール送信サーバ300は、従来用いられているSMTPサーバであり、コンピュータ100G−1から、SMTPによるメール送信要求を受け付け、メール受信サーバ400にメールを転送する。   The mail transmission server 300 is a conventionally used SMTP server, accepts an SMTP mail transmission request from the computer 100G-1, and transfers the mail to the mail reception server 400.

メール受信サーバ400は、従来用いられているPOPサーバであり、メール送信サーバ300からメールを受信し、内部に設けられている2次記憶装置にメールを格納する。また、コンピュータ100G−2からのPOPによるメール受信要求に応じて、格納されたメールを送信する。   The mail receiving server 400 is a conventionally used POP server, receives mail from the mail sending server 300, and stores the mail in a secondary storage device provided therein. Further, the stored mail is transmitted in response to the mail reception request by the POP from the computer 100G-2.

なお、CPU101−1,101−2は、それぞれ図1に示されたCPU101と同様のものであり、NIC102−1,102−2は、それぞれ図1に示されたデバイス101の一例としてのNICである。仮想化手段103−1,103−2は、それぞれ図1に示された仮想化手段103に相当するものであり、仮想マシン104−1,104−2は、それぞれ図1に示された仮想マシン104に相当するものである。監視手段105−1,105−2は、それぞれ図1に示された監視手段105に相当するものであり、ポリシー解釈手段106−1,106−2は、それぞれ図1に示されたポリシー解釈手段106に相当するものである。責務実施インタフェース108−1,108−2は、それぞれ図1に示された責務実施インタフェース108に相当するものである。属性抽出インタフェース110−1は、図14に示された属性抽出インタフェース110に相当するものである。   The CPUs 101-1 and 101-2 are the same as the CPU 101 shown in FIG. 1, and the NICs 102-1 and 102-2 are NICs as examples of the device 101 shown in FIG. 1. is there. The virtualization units 103-1 and 103-2 correspond to the virtualization unit 103 shown in FIG. 1, respectively. The virtual machines 104-1 and 104-2 are respectively virtual machines shown in FIG. 1. This corresponds to 104. The monitoring means 105-1 and 105-2 correspond to the monitoring means 105 shown in FIG. 1, respectively. The policy interpretation means 106-1 and 106-2 are respectively policy interpretation means shown in FIG. 106. Responsibility implementation interfaces 108-1 and 108-2 correspond to the responsibility implementation interface 108 shown in FIG. 1. The attribute extraction interface 110-1 corresponds to the attribute extraction interface 110 shown in FIG.

(2)利用シーン
本実施例において、コンピュータ100G−1はxxx 社のユーザtaroが用い、コンピュータ100G−2はyyy 社のユーザjiroが用いるものとする。また、taroとjiroはソフトウェア共同開発など、xxx-yyy 連携プロジェクトに属するメンバーであるとし、taroがjiroや、xxx 社内にメールを送信する場合を想定する。
(2) Usage Scene In this embodiment, the computer 100G-1 is used by a user taro from xxx, and the computer 100G-2 is used by a user jiro from yyy. In addition, taro and jiro are members belonging to the xxx-yyy cooperation project such as software joint development, and taro assumes a case where e-mail is sent to jiro or xxx company.

鍵管理サーバ500Gは、インターネットサービスプロバイダ(ISP)などの第三者サイトに設置してもよいが、本実施例ではxxx 社サイトに設置され、xxx 社のセキュリティ管理者によって、xxx-yyy 連携プロジェクト用の鍵(K<xxx,yyy>)や、xxx 社内専用の鍵(K<xxx>)などが生成され管理されているとする。   The key management server 500G may be installed at a third party site such as an Internet service provider (ISP). In this embodiment, the key management server 500G is installed at the xxx company site, and the xxx-yyy linkage project is performed by the security administrator of the xxx company. Suppose that a key (K <xxx, yyy>) for use and a key for exclusive use within the company (K <xxx>) are generated and managed.

また、メール送信サーバ300はxxx 社サイトで運用され、メール受信サーバ400はyyy 社サイトで運用され、xxx-yyy 連携プロジェクトやxxx 社内のメール送受信に限らず、その他インターネット上の他サイトとのメール送受信も行われているとする。   In addition, the mail sending server 300 is operated at the xxx company site, and the mail receiving server 400 is operated at the yyy company site. It is assumed that transmission / reception is also performed.

(2.1)ポリシー記述例
本実施例では、taroによる送信メールを暗号化するために、図25に例示するポリシーが、コンピュータ100G−1のポリシー解釈手段106−1に設定されている。
(2.1) Policy Description Example In this embodiment, the policy illustrated in FIG. 25 is set in the policy interpretation means 106-1 of the computer 100G-1 in order to encrypt the outgoing mail by taro.

なお、
・「Mail to Prj<xxx,yyy>」ポリシー:仮想マシン104−1が送信したIPパケットのポート番号がSMTPである場合、「jiro@yyy.com」「proj-ml@xxx.com 」・・・のいずれかのみを含むときに、アクセスを許可する。ただし、メール暗号化責務実施手段107G−1によって、メールデータはxxx-yyy 連携プロジェクト鍵で暗号化される。
・「Mail to @xxx.com」ポリシー:仮想マシン104−1が送信したIPパケットのポート番号がSMTPである場合、アクセスを許可する。ただし、メール暗号化責務実施手段107G−1によって、メールデータはxxx 社内鍵で暗号化される。
In addition,
“Mail to Prj <xxx, yyy>” policy: When the port number of the IP packet transmitted by the virtual machine 104-1 is SMTP, “jiro@yyy.com” “proj-ml@xxx.com”・ Allow access when only one of the above is included. However, the mail data is encrypted with the xxx-yyy linkage project key by the mail encryption duty executing means 107G-1.
“Mail to @ xxx.com” policy: When the port number of the IP packet transmitted by the virtual machine 104-1 is SMTP, access is permitted. However, the mail data is encrypted with the xxx company key by the mail encryption duty execution means 107G-1.

また、jiroがtaroからのメールを復号するために、図26に例示するポリシーが、コンピュータ100G−2のポリシー解釈手段106−2に設定されている。本ポリシー例は、以下のような意味をもつ。
・「Mail retrieval」ポリシー:仮想マシン104G−1が送信したIPパケットのポート番号がPOPである場合、アクセスを許可する。ただし、メール復号責務実施手段107G−2によって、メールデータはxxx-yyy 連携プロジェクト鍵で復号される。
Further, in order for jiro to decrypt the mail from taro, the policy illustrated in FIG. 26 is set in the policy interpretation unit 106-2 of the computer 100G-2. This example policy has the following meaning.
“Mail retrieval” policy: When the port number of the IP packet transmitted by the virtual machine 104G-1 is POP, access is permitted. However, the mail data is decrypted with the xxx-yyy cooperation project key by the mail decryption responsibility execution means 107G-2.

(3)動作
上記のポリシーに従って、コンピュータ100G−1とコンピュータ100G−2との間でメール送受信を行う際のアクセス制御システムの動作例を説明する。以下、コンピュータ100G−1によるメール送信動作と、コンピュータ100G−2によるメール受信動作とをそれぞれ示す。
(3) Operation An operation example of the access control system when mail transmission / reception is performed between the computer 100G-1 and the computer 100G-2 according to the above policy will be described. Hereinafter, a mail transmission operation by the computer 100G-1 and a mail reception operation by the computer 100G-2 will be respectively shown.

(3.1)メール送信動作
図27は、コンピュータ100G−1、メール送信サーバ300、および鍵管理サーバ500Gによるメール送信動作を示すフローチャートである。
(3.1) Mail Sending Operation FIG. 27 is a flowchart showing a mail sending operation by the computer 100G-1, the mail sending server 300, and the key management server 500G.

コンピュータ100G−1内の仮想マシン104−1から、SMTPによるメール送信要求が発行されたとき、メール送信要求を構成するIPパケットの系列(以下、便宜的にSMTPパケット系列と呼ぶ。)が、仮想化手段103−1を介して、監視手段105−1に到達する(ステップd1)。   When an SMTP mail transmission request is issued from the virtual machine 104-1 in the computer 100G-1, a series of IP packets constituting the mail transmission request (hereinafter referred to as an SMTP packet series for convenience) is virtual. The monitoring means 105-1 is reached via the conversion means 103-1 (step d1).

監視手段105−1は、SMTPパケット系列に含まれるIPパケットを順次ポリシー解釈手段106−1に入力して、責務実施指示を問い合わせる(ステップd2)。   The monitoring unit 105-1 sequentially inputs the IP packets included in the SMTP packet series to the policy interpretation unit 106-1, and inquires about the duty execution instruction (step d2).

問い合わせに含まれるIPパケットのポート番号がSMTPであるので、ポリシー解釈手段106−1は、図25に示すアクセスポリシーに従って、IPパケットを、属性抽出インタフェース110−1を介して、メール宛先属性抽出手段111G−1に入力する。メール宛先属性抽出手段111G−1は、受信者のメールアドレスリストを、受信者属性として抽出する(ステップd3)。   Since the port number of the IP packet included in the inquiry is SMTP, the policy interpreting means 106-1 sends the IP packet to the mail destination attribute extracting means via the attribute extracting interface 110-1 according to the access policy shown in FIG. Input to 111G-1. The mail destination attribute extracting unit 111G-1 extracts the recipient's mail address list as the receiver attribute (step d3).

ここで、RFC−2821に記載されているように、SMTPは受信者のメールアドレスを逐一RCPTコマンドで指定する。また、RCPTコマンドの前には、送信者のメールアドレスのみを含むMAILコマンドが先行していなければならない。従って、メール宛先属性抽出手段111G−1は、SMTPパケット系列の先頭パケットのみから、受信者属性を抽出できない場合がある。このとき、3.2節で説明したように、メール宛先属性抽出手段111G−1が例外信号を発行して、属性抽出インタフェース110−1がIPパケットを入力キューに保持させて、後続するRCPTコマンドを全てバッファリングさせる。また、ポリシー解釈手段106−1がアクセス可否判定結果としてINPROC判定を発行することによって、監視手段105−1はIPパケットの責務実施インタフェース108−1への転送を一時待ち合わせる。このような動作によって、メール宛先属性抽出手段111G−1は、SMTPパケット系列から全ての受信者属性を抽出することができる。その結果、受信者のメールアドレスに関する条件を正しく判定できることになり、アクセスポリシーに従った適切なアクセス可否判定と責務実施を保証することができる。   Here, as described in RFC-2821, SMTP designates the recipient's mail address one by one with an RCPT command. In addition, the MAIL command including only the sender's mail address must precede the RCPT command. Therefore, the mail destination attribute extracting unit 111G-1 may not be able to extract the recipient attribute from only the first packet of the SMTP packet series. At this time, as described in section 3.2, the mail destination attribute extraction unit 111G-1 issues an exception signal, the attribute extraction interface 110-1 holds the IP packet in the input queue, and the subsequent RCPT command To buffer everything. Further, when the policy interpreting means 106-1 issues an INPROC determination as an access permission determination result, the monitoring means 105-1 temporarily waits for the transfer of the IP packet to the responsibility implementation interface 108-1. By such an operation, the mail destination attribute extracting unit 111G-1 can extract all the recipient attributes from the SMTP packet series. As a result, it is possible to correctly determine the condition regarding the recipient's mail address, and it is possible to ensure proper access permission determination and duty implementation according to the access policy.

なお、INPROC判定を受けた監視手段105−1は、TCP ACKパケットなどの擬似的な応答パケットを生成して仮想マシン104−1に入力し、後続するSMTPパケット系列の送信を促すことが望ましい。   The monitoring unit 105-1 that has received the INPROC determination preferably generates a pseudo response packet such as a TCP ACK packet and inputs the pseudo response packet to the virtual machine 104-1, and prompts transmission of the subsequent SMTP packet sequence.

メール宛先属性抽出手段111G−1が受信者属性の抽出を完了した後、ポリシー解釈手段106−1は、アクセスポリシーの評価を再開し、アクセス可否判定としてALLOW判定を応答するとともに、メール暗号化に係る責務実施指示を生成し、監視手段105−1に発行する(ステップd4)。   After the mail destination attribute extraction unit 111G-1 completes the extraction of the recipient attribute, the policy interpretation unit 106-1 resumes the evaluation of the access policy, responds with an ALLOW determination as an access permission determination, and performs mail encryption. Such a duty execution instruction is generated and issued to the monitoring means 105-1 (step d4).

監視手段105−1は、メール暗号化に係る責務実施指示を受けて、SMTPパケット系列、暗号鍵に関するパラメータ(Prj<xxx,yyy>)、および暗号アルゴリズムのパラメータ(AES)を、責務実施インタフェース108−1を介して、メール暗号化責務実施手段107G−1に入力し、呼び出す(ステップd5)。   Upon receiving the duty execution instruction related to mail encryption, the monitoring unit 105-1 receives the SMTP packet series, the encryption key parameter (Prj <xxx, yyy>), and the encryption algorithm parameter (AES), and the duty execution interface 108. -1 is input to the mail encryption responsibility execution means 107G-1 and called (step d5).

呼び出されたメール暗号化責務実施手段107G−1は、暗号鍵に関するパラメータとして指定されたグループ名「Prj<xxx,yyy>」を鍵管理サーバ500Gに入力して、xxx-yyy 連携プロジェクト鍵K_prj<xxx,yyy>を取得する。さらに、暗号鍵とパラメータで指定された暗号アルゴリズムであるAESを用いて、SMTPパケット系列(厳密には、DATAコマンドに後続するIPパケットの系列)に含まれるメールデータを暗号化する(ステップd6)。このとき、メールデータのボディ部または添付ファイルのみを暗号化することが望ましい。   The called mail encryption responsibility implementation means 107G-1 inputs the group name “Prj <xxx, yyy>” designated as the parameter relating to the encryption key to the key management server 500G, and xxx-yyy linkage project key K_prj < Get xxx, yyy>. Further, the mail data included in the SMTP packet sequence (strictly, the IP packet sequence following the DATA command) is encrypted using AES, which is the encryption algorithm specified by the encryption key and the parameter (step d6). . At this time, it is desirable to encrypt only the body part or attached file of the mail data.

その後、メール暗号化責務実施手段107G−1が出力するSMTPパケット系列に含まれるIPパケットが、責務実施インタフェース108−1、監視手段105−1、および仮想化手段103−1を経て、順次メール送信サーバ300に送信される(ステップd7)。   Thereafter, IP packets included in the SMTP packet series output by the mail encryption responsibility execution unit 107G-1 are sequentially transmitted via the responsibility execution interface 108-1, the monitoring unit 105-1, and the virtualization unit 103-1. It is transmitted to the server 300 (step d7).

メール送信サーバ300は、RCPTコマンドで指示されたjiro@yyy.comに対応するメール受信サーバ400に、暗号化メールを転送する(ステップd8)。   The mail transmission server 300 transfers the encrypted mail to the mail reception server 400 corresponding to jiro@yyy.com specified by the RCPT command (step d8).

以上の動作によって、taro@xxx.comからjiro@yyy.comに宛てたメールが、アクセスポリシーに規定された通り、適切にxxx-yyy 連携プロジェクト鍵K_prj<xxx,yyy>によって暗号化される。   By the above operation, the mail addressed to jiro@yyy.com from taro@xxx.com is appropriately encrypted with the xxx-yyy linkage project key K_prj <xxx, yyy> as specified in the access policy.

(3.2)メール受信動作
図28は、コンピュータ100G−2によるメール受信の動作を示すフローチャートである。
(3.2) Mail Receiving Operation FIG. 28 is a flowchart showing mail receiving operation by the computer 100G-2.

コンピュータ100G−2内の仮想マシン104−2が、メール受信サーバ400Dに向けて、POPによるメール受信要求を送信したとき、メール受信要求を構成するIPパケットの系列(便宜的にPOPパケット系列と呼ぶ。)が、仮想化手段103−2を経て、監視手段105−2に到達する(ステップe1)。監視手段105−2は、POPパケット系列に含まれるIPパケットを順次、ポリシー解釈手段106−2に入力して、アクセス可否判定および責務実施指示に関する問い合わせを行う(ステップe2)。   When the virtual machine 104-2 in the computer 100G-2 transmits a POP mail reception request to the mail reception server 400D, a series of IP packets constituting the mail reception request (referred to as a POP packet series for convenience). ) Reaches the monitoring means 105-2 via the virtualization means 103-2 (step e1). The monitoring unit 105-2 sequentially inputs the IP packets included in the POP packet series to the policy interpretation unit 106-2, and makes an inquiry regarding access permission determination and duty execution instruction (step e2).

このとき、問い合わせに含まれるIPパケットのポート番号がPOPであるので、ポリシー解釈手段106−2は、図26に示されたアクセスポリシーに従って、ALLOW判定を応答するとともに、メール復号に係る責務実施指示を生成し、監視手段105−2に発行する(ステップe3)。   At this time, since the port number of the IP packet included in the inquiry is POP, the policy interpreting means 106-2 responds with an ALLOW determination according to the access policy shown in FIG. Is generated and issued to the monitoring means 105-2 (step e3).

その後、監視手段105−2は、POPパケット系列、暗号鍵に関するパラメータ(Prj<xxx,yyy>)、および暗号アルゴリズムのパラメータ(AES)を、責務実施インタフェース108−2を介して、メール復号責務実施手段107G−2に入力し、呼び出す(ステップe4)。   After that, the monitoring means 105-2 performs the mail decryption duty through the duty implementation interface 108-2 for the POP packet series, the encryption key parameter (Prj <xxx, yyy>), and the encryption algorithm parameter (AES). Input to the means 107G-2 and call it (step e4).

呼び出されたメール復号責務実施手段107G−2は、暗号鍵に関するパラメータとして指定されたグループ名「Prj<xxx,yyy>」を鍵管理サーバ500Gに入力して、xxx-yyy 連携プロジェクト鍵K<xxx,yyy>を取得する。さらに、暗号鍵とパラメータで指定された暗号アルゴリズムであるAESを用いて、POPパケット系列(厳密には、RETRコマンドへの応答IPパケットの系列)に含まれるメールデータを復号する(ステップe5)。このとき、メールデータのボディ部または添付ファイルのみを復号することが望ましい。   The called mail decryption responsibility execution means 107G-2 inputs the group name “Prj <xxx, yyy>” designated as the parameter relating to the encryption key to the key management server 500G, and the xxx-yyy linkage project key K <xxx , yyy>. Further, the mail data included in the POP packet sequence (strictly, the sequence of IP packets responding to the RETR command) is decrypted using AES, which is the encryption algorithm specified by the encryption key and the parameter (step e5). At this time, it is desirable to decrypt only the body part or attached file of the mail data.

その後、メール復号責務実施手段107G−2が出力するPOPパケット系列に含まれるIPパケットが、責務実施インタフェース108−2、監視手段105−2、および仮想化手段103−2を経て、順次仮想マシン104−2に送信される(ステップe6)。   Thereafter, the IP packets included in the POP packet series output by the mail decryption responsibility execution unit 107G-2 are sequentially transferred to the virtual machine 104 via the responsibility execution interface 108-2, the monitoring unit 105-2, and the virtualization unit 103-2. -2 (step e6).

以上の動作によって、taro@xxx.comからjiro@yyy.comに宛てたメールが、アクセスポリシーに規定された通り、適切にxxx-yyy 連携プロジェクト鍵K<xxx,yyy>によって復号される。   By the above operation, the mail addressed from taro@xxx.com to jiro@yyy.com is appropriately decrypted with the xxx-yyy linkage project key K <xxx, yyy> as defined in the access policy.

(4)効果
このように、コンピュータ100G−1および100G−2が備えている仮想化手段103−1および仮想化手段103−2と連携したメール暗号化およびメール復号処理によって、(a)ユーザOSやメールアプリケーションに依存しないメールデータの保護と、(b)企業間の連携プロジェクト毎にメール送信サーバ300やメール受信サーバ400を新たに設置する必要はなく、既存のサーバを利用可能であるといった効果が得られる。
(4) Effect As described above, by the mail encryption and mail decryption processing in cooperation with the virtualization means 103-1 and the virtualization means 103-2 included in the computers 100G-1 and 100G-2, (a) the user OS And the protection of mail data that does not depend on the mail application, and (b) the effect that the existing server can be used without the need to newly install the mail sending server 300 or the mail receiving server 400 for each cooperation project between companies. Is obtained.

さらに、アクセスポリシーでグループ単位のメール暗号鍵およびメール復号鍵を指定できるので、メールデータの保護を確実に行うことができる。例えば、コンピュータ100G−1から「suzuki@xxx.com」など「jiro@yyy.com」や「proj-ml@xxx.com 」以外の宛先を含むメールを送信した場合、「Mail to joint project 」ポリシーではなく、「Mail to@xxx.com 」ポリシーに適合するので、社内専用の鍵K<xxx>がメール暗号化に適用される。このことは、xxx 社の機密文書を含むメールを送信する際に、誤って「jiro@yyy.com」を追加したような場合に、xxx 社内の機密文書が漏れることを防止できるという効果につながる。なぜなら、jiro@yyy.comが用いるコンピュータ100G−2に設定される「Mail retrieval」ポリシーには、社内専用の復号鍵K<xxx>の指定が含まれないためである。   Furthermore, since the mail encryption key and the mail decryption key for each group can be specified in the access policy, the mail data can be surely protected. For example, if an email containing addresses other than “jiro@yyy.com” or “proj-ml@xxx.com” such as “suzuki@xxx.com” is sent from the computer 100G-1, the “Mail to joint project” policy Instead, it conforms to the “Mail to@xxx.com” policy, so the company-specific key K <xxx> is applied to mail encryption. This leads to the effect of preventing leakage of confidential documents in xxx if you accidentally add “jiro@yyy.com” when sending an email containing confidential documents of xxx company. . This is because the “Mail retrieval” policy set in the computer 100G-2 used by jiro@yyy.com does not include the designation of the internal decryption key K <xxx>.

また、「Mail to joint project 」および「Mail retrieval」ポリシーに、ログ記録に関する責務定義を追加することによって、連携プロジェクト内のメール送受信ログを選択的に記録することができる。その場合には、情報漏えいの危険性の高い社外発注業務などで、より高い漏えい抑止効果が得られる。   In addition, by adding the responsibility definition regarding log recording to the “Mail to joint project” and “Mail retrieval” policies, it is possible to selectively record the mail transmission / reception log in the cooperation project. In such a case, a higher leakage prevention effect can be obtained, for example, in an outside ordering operation with a high risk of information leakage.

第1実施例は、ネットワークI/Oの制御に関するものであったが、本発明を、ハードディスクやUSBメモリなどのストレージI/Oの制御にも適用できる。以下、具体的な例を用いて、第1実施形態におけるストレージI/Oの制御方法を説明する。   The first embodiment relates to control of network I / O, but the present invention can also be applied to control of storage I / O such as a hard disk and a USB memory. The storage I / O control method in the first embodiment will be described below using a specific example.

(1)構成
図29を参照すると、本実施例におけるコンピュータ100Hは、第1実施形態におけるコンピュータ100Aの構成において、責務実施手段107として、ファイル暗号化責務実施手段107H−1と、ファイル復号責務実施手段107H−2とを有し、それらの責務実施手段に共通のサブモジュールであるファイルシステム解析手段1071Hを有する。また、デバイス102として、少なくともハードディスク装置やUSBメモリ装置などのストレージデバイス102Hを有する。
(1) Configuration Referring to FIG. 29, in the configuration of the computer 100A in the first embodiment, the computer 100H in the present example performs the file encryption duty execution means 107H-1 and the file decryption duty execution as the duty execution means 107. Means 107H-2, and file system analysis means 1071H which is a sub-module common to those duty implementation means. The device 102 includes at least a storage device 102H such as a hard disk device or a USB memory device.

ファイル暗号化責務実施手段107H−1は、責務実施インタフェース108からの呼出しに応じて、入力キュー内のI/Oイベントを読み込みながら、ファイルシステム解析手段1071Hを介して、I/Oイベントに対応するファイル情報を取得する。また、責務実施インタフェース108から、パラメータとして指定された暗号鍵や暗号アルゴリズムを用いて、I/Oイベント系列で構成されるファイルデータを暗号化し、出力キューに格納する。   The file encryption responsibility execution unit 107H-1 responds to the I / O event via the file system analysis unit 1071H while reading the I / O event in the input queue in response to the call from the responsibility execution interface 108. Get file information. In addition, file data composed of an I / O event sequence is encrypted from the responsibility implementation interface 108 using an encryption key or encryption algorithm specified as a parameter, and stored in an output queue.

ファイル復号責務実施手段107H−2は、責務実施インタフェース108からの呼出しに応じて、入力キュー内のI/Oイベントを読み込みながら、ファイルシステム解析手段1071Hを介して、I/Oイベントに対応するファイル情報を取得する。また、責務実施インタフェース108から、パラメータとして指定された暗号鍵や暗号アルゴリズムを用いて、I/Oイベント系列で構成されるファイルデータを復号し、出力キューに格納する。   The file decryption responsibility execution unit 107H-2 reads a file corresponding to the I / O event via the file system analysis unit 1071H while reading the I / O event in the input queue in response to the call from the responsibility execution interface 108. Get information. In addition, using the encryption key and encryption algorithm specified as parameters from the responsibility implementation interface 108, the file data composed of the I / O event series is decrypted and stored in the output queue.

ファイルシステム解析手段1071Hは、ファイル暗号化責務実施手段107H−1またはファイル復号責務実施手段107H−2から入力されたI/Oイベントを基に、ストレージデバイス102Hを走査して特定した、I/Oイベントに対応するファイル情報を応答する。   The file system analysis unit 1071H scans and identifies the storage device 102H based on the I / O event input from the file encryption duty execution unit 107H-1 or the file decryption duty execution unit 107H-2. The file information corresponding to the event is returned.

(2)動作
以下、本実施例におけるコンピュータ100H内の仮想マシン104によるファイル書出し時および読込み時の動作を説明する。図30に示すように、ストレージデバイス102Hに対する書込みイベントおよび読込みイベントに対して、ファイル暗号化責務およびファイル復号責務が定義されたアクセスポリシーが与えられているとする。
(2) Operation Hereinafter, operations at the time of file writing and reading by the virtual machine 104 in the computer 100H in this embodiment will be described. As shown in FIG. 30, it is assumed that an access policy in which a file encryption duty and a file decryption duty are defined is given to a write event and a read event for the storage device 102H.

(2.1)ファイル書出し時の動作
あるファイルFの書き出しに伴って、仮想マシン104はストレージデバイス102Hに対して、一連の書込みイベントを発行する(図3におけるステップa1の処理に相当)。通常、そのような書込みイベントには、図31に示すようにストレージデバイス102H上の位置(セクタ番号)と、ファイルFのデータ断片が含まれている。その後、それぞれの書込みイベントは、仮想化手段103を経て、監視手段105に伝達され(図3におけるステップa2の処理に相当)、さらにポリシー解釈手段106に伝達される(図3におけるステップa3の処理に相当)。
(2.1) Operation at the time of file writing As the file F is written, the virtual machine 104 issues a series of write events to the storage device 102H (corresponding to the processing of step a1 in FIG. 3). Normally, such a write event includes a position (sector number) on the storage device 102H and a data fragment of the file F as shown in FIG. Thereafter, each write event is transmitted to the monitoring unit 105 via the virtualization unit 103 (corresponding to the process of step a2 in FIG. 3), and further transmitted to the policy interpreting unit 106 (process of step a3 in FIG. 3). Equivalent).

ポリシー解釈手段106は、書込みイベントを、アクセスポリシーと照合して、実施すべき責務としてファイル暗号化責務(File Encryption)を特定する。そして、責務実施指示を生成して、監視手段105に応答する(図3におけるステップa4の処理に相当)。   The policy interpretation unit 106 compares the write event with the access policy, and specifies the file encryption duty (File Encryption) as the duty to be executed. Then, it generates a responsibility execution instruction and responds to the monitoring unit 105 (corresponding to the process of step a4 in FIG. 3).

監視手段105は、責務実施指示に従って、書込みイベントおよび責務実施指示に記載されたパラメータリストを、責務実施インタフェース108に入力して、ファイル暗号化責務実施手段107H−1を呼び出し、責務を実施させる(図3におけるステップa5の処理に相当)。   In accordance with the responsibility execution instruction, the monitoring means 105 inputs the parameter list described in the write event and the responsibility execution instruction to the responsibility execution interface 108 and calls the file encryption responsibility execution means 107H-1 to execute the responsibility ( This corresponds to step a5 in FIG. 3).

図32は、ファイル暗号化責務実施手段107H−1の動作を示すフローチャートである。ファイル暗号化責務実施手段107H−1は、責務実施インタフェース108の入力キューから、書込みイベントを読み出し(ステップg1)、読み出した書込みイベントをファイルシステム解析手段1071Hに入力して、対応するファイル情報を取得する(ステップg2)。   FIG. 32 is a flowchart showing the operation of the file encryption responsibility execution unit 107H-1. The file encryption responsibility execution unit 107H-1 reads the write event from the input queue of the responsibility execution interface 108 (step g1), inputs the read write event to the file system analysis unit 1071H, and acquires the corresponding file information. (Step g2).

ステップg2の処理において、ファイルシステム解析手段1071Hは、ストレージデバイス102H内のファイルアロケーションテーブル(FAT)およびディレクトリエントリを探索して、ファイル名などを含むファイルFのファイル情報を抽出する。通常、FATは、ファイル毎に、ファイルが記録されているセクタ番号のリストを保持している。従って、ファイルシステム解析手段1071Hは、書込みイベントに含まれるセクタ番号をキーにしてリストを探索することによって、対応するファイルの先頭セクタ番号を特定できる。また、ディレクトリエントリはファイル名などのファイル情報とともに、先頭セクタ番号が記録されている。従って、ファイルシステム解析手段1071Hは、先頭セクタ番号をキーにして、ディレクトリエントリを検索することによって、書込みイベントに対応するファイルFのファイル情報を取得できる。また、ファイルシステム解析手段1071Hは、後段の処理のために、FAT内の対応するセクタ番号のリストをファイル情報に含める。   In the process of step g2, the file system analysis unit 1071H searches the file allocation table (FAT) and directory entry in the storage device 102H, and extracts the file information of the file F including the file name and the like. Normally, the FAT holds a list of sector numbers in which files are recorded for each file. Therefore, the file system analysis unit 1071H can specify the head sector number of the corresponding file by searching the list using the sector number included in the write event as a key. In the directory entry, a head sector number is recorded together with file information such as a file name. Therefore, the file system analysis unit 1071H can acquire the file information of the file F corresponding to the write event by searching the directory entry using the head sector number as a key. Further, the file system analysis unit 1071H includes a list of corresponding sector numbers in the FAT in the file information for subsequent processing.

ファイル暗号化責務実施手段107H−1は、取得したファイル情報を基にファイルF用のバッファを責務実施インタフェース108内のバッファ領域に確保し、バッファ領域に、書出しイベントに含まれるファイルFのデータ断片を格納する(ステップg3)。ファイル情報内のセクタ番号のリストを参照することによってデータ断片のファイルF内の順序が算出できるので、ファイル暗号化責務実施手段107H−1は、算出した順序に従って書出しイベントを格納する。   The file encryption duty execution unit 107H-1 secures a buffer for the file F in the buffer area in the duty execution interface 108 based on the acquired file information, and the data fragment of the file F included in the write event is stored in the buffer area. Is stored (step g3). Since the order of the data fragments in the file F can be calculated by referring to the list of sector numbers in the file information, the file encryption responsibility execution unit 107H-1 stores the write event according to the calculated order.

このようにして、一連の書出しイベントが、全てファイルF用バッファに格納された後、ファイル暗号化責務実施手段107H−1は、ファイルF用バッファ内の書出しイベントを先頭から順に走査しながら、各書出しイベントに含まれるファイルデータ断片を、パラメータリストで指定された暗号アルゴリズムおよび暗号鍵を用いて暗号化したファイルデータ断片に置き換える(ステップg4)。   In this way, after all of the series of write events are stored in the file F buffer, the file encryption responsibility execution unit 107H-1 scans the write events in the file F buffer in order from the top, The file data fragment included in the write event is replaced with the file data fragment encrypted using the encryption algorithm and encryption key specified in the parameter list (step g4).

そして、ファイル暗号化責務実施手段107H−1は、ファイルF用バッファに格納された各書出しイベントを、責務実施インタフェース108の出力キューに出力する(ステップg5)。その後、出力キュー内の暗号化された書出しイベントは、責務実施インタフェース108、監視手段105、仮想化手段103を介して、ストレージデバイス102Fに伝達される(ステップg6)。   Then, the file encryption responsibility execution unit 107H-1 outputs each writing event stored in the file F buffer to the output queue of the responsibility execution interface 108 (step g5). Thereafter, the encrypted write event in the output queue is transmitted to the storage device 102F via the responsibility execution interface 108, the monitoring unit 105, and the virtualization unit 103 (step g6).

以上の動作によって、ストレージデバイス102Hに、ファイルFが暗号化されたファイルF’が格納される。   Through the above operation, the file F ′ obtained by encrypting the file F is stored in the storage device 102H.

(2.2)ファイル読込み時の動作
ファイルFの読込みに伴って、仮想マシン104は、ストレージデバイス102Hに対して、一連の読込みイベントを発行する(図3におけるステップa1の処理に相当)。その後、図3におけるステップa4の処理に相当する処理でファイル復号責務(File Decryption )が特定されること、図3におけるステップa5の処理に相当する処理でファイル復号責務実施手段107H−2が呼び出されること、図3におけるステップa6の処理に相当する処理で復号された読出しイベントが仮想マシン104に伝達されることを除いて、ファイル書込み時の動作と同様である。ただし、ファイル読込み時には、ステップg4の処理(図32参照)で、ファイル復号責務実施手段107H−2はファイルF用バッファに含まれるファイルデータ断片を、パラメータリストで指定された暗号アルゴリズムおよび暗号鍵を用いて、復号したファイルデータ断片に置き換える。
(2.2) Operation at the time of reading a file As the file F is read, the virtual machine 104 issues a series of read events to the storage device 102H (corresponding to the processing at step a1 in FIG. 3). Thereafter, the file decryption duty (File Decryption) is specified by the process corresponding to the process of step a4 in FIG. 3, and the file decryption duty execution means 107H-2 is called by the process corresponding to the process of step a5 in FIG. This is the same as the operation at the time of file writing, except that the read event decoded by the process corresponding to the process of step a6 in FIG. 3 is transmitted to the virtual machine 104. However, at the time of reading the file, in the process of step g4 (see FIG. 32), the file decryption duty implementation means 107H-2 uses the encryption algorithm and encryption key specified in the parameter list as the file data fragment contained in the file F buffer. And replace with the decrypted file data fragment.

以上のような処理によって、ストレージデバイス102Hに格納されたファイルF’は、復号されたファイルFとして、仮想マシン104に読み出される。   Through the processing described above, the file F ′ stored in the storage device 102 </ b> H is read to the virtual machine 104 as a decrypted file F.

(3)効果
以上の構成および動作によって、仮想マシン104上で動作するOSやアプリケーションに依存することなく、ストレージデバイス102H上のファイルを暗号化および復号することができる。責務実施インタフェース108が、ファイルF用バッファを提供することによって、ファイルのデータ断片ごとに発生する一連の書出しイベントおよび読込みイベントを、バッファに蓄積し、ファイルF全体のデータを、ファイル暗号化責務実施手段107H−1およびファイル復号責務実施手段107H−2から参照可にしたからである。
(3) Effect With the above configuration and operation, the file on the storage device 102H can be encrypted and decrypted without depending on the OS or application running on the virtual machine 104. By providing the buffer for the file F, the responsibility execution interface 108 accumulates a series of write events and read events that occur for each data fragment of the file in the buffer, and the data encryption of the entire file F is performed. This is because the reference can be made from the means 107H-1 and the file decryption duty implementation means 107H-2.

また、第1実施例のようなネットワークI/Oに対する暗号化および復号と、第2実施例のようなストレージI/Oに対する暗号化および復号を同時に実現できる。責務実施インタフェース108が、ネットワークI/Oに対する暗号化および復号を行う責務実施手段と、ストレージI/Oに対する暗号化および復号を行う責務実施手段とを区別することなく、入力キューおよび出力キューを介した統一された責務実施手段の呼出し動作を行うからである。   Also, encryption and decryption for network I / O as in the first embodiment and encryption and decryption for storage I / O as in the second embodiment can be realized simultaneously. The responsibility execution interface 108 does not distinguish between responsibility execution means for performing encryption and decryption for network I / O and responsibility execution means for performing encryption and decryption for storage I / O, through the input queue and the output queue. This is because the calling operation of the unified responsibility execution means is performed.

図33は、アクセス制御システムの第3実施例の構成を示すブロック図である。第3実施例は、図18に示された第4実施形態についての実施例である。   FIG. 33 is a block diagram showing the configuration of the third embodiment of the access control system. The third example is an example of the fourth embodiment shown in FIG.

(1)構成
図33に示すように、コンピュータ100Jは、第4実施形態におけるコンテキスト情報抽出手段112として、SSID抽出手段112Jを備えている。SSID抽出手段112Jは、第4実施形態におけるイベント発行手段1122として、無線アクセスポイント検出装置1122Jを備えている。
(1) Configuration As shown in FIG. 33, the computer 100J includes SSID extraction means 112J as the context information extraction means 112 in the fourth embodiment. The SSID extraction unit 112J includes a wireless access point detection device 1122J as the event issuing unit 1122 in the fourth embodiment.

また、ポリシー解釈手段106には、図21に示すアクセスポリシーが登録されているとする。図21に示すアクセスポリシーには、コンピュータ100Jの位置周辺にある無線アクセスポイント700から、コンピュータ100Jが受信したSSID(Service Set Identifier)が、「SSID_CompanyA 」である場合にのみ、仮想マシン104によるNICまたはUSBデバイスへのアクセスを許可する旨が記載されている。   Further, it is assumed that the access policy shown in FIG. In the access policy shown in FIG. 21, the NIC or virtual machine 104 is configured only when the SSID (Service Set Identifier) received by the computer 100J from the wireless access point 700 near the location of the computer 100J is “SSID_CompanyA”. It is described that access to the USB device is permitted.

(2)動作
仮想マシン104がNICまたはUSBデバイスにアクセスしたときに、ポリシー解釈手段106は、ステップf1(図20参照)の処理で<conditions>タグ中の<condition> タグを逐次参照し、ステップf2の処理で「TerminalLocation()」という関数呼出しを検知する。
(2) Operation When the virtual machine 104 accesses the NIC or USB device, the policy interpretation unit 106 sequentially refers to the <condition> tag in the <conditions> tag in the process of step f1 (see FIG. 20), and the step A function call “TerminalLocation ()” is detected in the process of f2.

次いで、ステップj1の処理で、ポリシー解釈手段106が、関数名「TerminalLocation」と空のパラメータリストとを伴うコンテキスト情報抽出要求を属性抽出インタフェース110に入力したときに、属性抽出インタフェース110は、属性抽出手段管理表1101を走査することによって、コンテキスト情報抽出要求に対応するコンテキスト情報抽出手段112が、SSID抽出手段112Jであることを特定する。   Next, when the policy interpretation unit 106 inputs a context information extraction request with the function name “TerminalLocation” and an empty parameter list to the attribute extraction interface 110 in the process of step j1, the attribute extraction interface 110 performs attribute extraction. By scanning the means management table 1101, it is specified that the context information extraction means 112 corresponding to the context information extraction request is the SSID extraction means 112J.

その後、ステップj2で、SSID抽出手段112Jは、状態記憶手段1121に格納されているSSIDを取得する。そして、ステップj3の処理で、取得したSSIDを、属性抽出インタフェース110を介してポリシー解釈手段106に出力する。   Thereafter, in step j2, the SSID extraction unit 112J acquires the SSID stored in the state storage unit 1121. In step j3, the acquired SSID is output to the policy interpretation means 106 via the attribute extraction interface 110.

無線アクセスポイント検出装置1122Jは、コンピュータ100Jの近傍に存在する無線アクセスポイント700からSSIDを検出している。SSIDに変化があった場合には、ステップj4の処理で、SSID抽出手段112Jは、SSIDに変化があったことを示す情報を状態記憶手段1121に通知する。   The wireless access point detection device 1122J detects the SSID from the wireless access point 700 that exists in the vicinity of the computer 100J. If there is a change in the SSID, the SSID extraction unit 112J notifies the state storage unit 1121 of information indicating that the SSID has changed in the process of step j4.

状態記憶手段1121は、ステップj5の処理で、SSID抽出手段112Jから、SSIDが「SSID_ComapanyA」に変化した旨の通知を受けたときに、変化後の「SSID_ComapanyA」を最新の状態として記憶する。上記のように、SSID抽出手段112Jは、ステップj2,j3の処理で、「SSID_ComapanyA」を出力する。   When the state storage unit 1121 receives the notification that the SSID has changed to “SSID_ComapanyA” from the SSID extraction unit 112J in the process of step j5, the state storage unit 1121 stores “SSID_ComapanyA” after the change as the latest state. As described above, the SSID extraction unit 112J outputs “SSID_ComapanyA” in the processes of steps j2 and j3.

(3)効果
本実施例では、ポリシー解釈手段106は、コンピュータ100Jの近傍に存在する無線アクセスポイント700から「SSID_CompanyA 」であるSSIDを検出できたか否かの情報を含むコンテキスト情報を用いて条件判定を行うことができる。そして、仮想マシン104によるNICまたはUSBデバイスへのアクセスを禁止することが可能になる。よって、一般にオフィス内に限定されるSSIDを用いて、仮想マシン104からのネットワークアクセスを制限できる。その結果、オフィス外にコンピュータ100Jを持ち出した場合に、仮想マシン104で作成した任意の情報の漏えいを防止できる。
(3) Effect In this embodiment, the policy interpreter 106 makes a condition determination using context information including information on whether or not the SSID “SSID_CompanyA” has been detected from the wireless access point 700 in the vicinity of the computer 100J. It can be performed. Then, access to the NIC or USB device by the virtual machine 104 can be prohibited. Therefore, network access from the virtual machine 104 can be restricted using an SSID that is generally limited within an office. As a result, it is possible to prevent leakage of arbitrary information created by the virtual machine 104 when the computer 100J is taken out of the office.

なお、本実施例では、無線アクセスポイント700による端末位置(コンピュータ位置)の検知を例にしたが、その他、無線タグ装置やGPS装置を備えたコンテキスト情報抽出手段112を用いて、オフィスの入退場ゲートの通過状態や緯度・経度情報を検知する方法を用いても、オフィス外でのアクセス制限の効果を得ることができる。   In the present embodiment, detection of the terminal position (computer position) by the wireless access point 700 is taken as an example, but in addition, entry / exit of the office using the context information extraction means 112 having a wireless tag device and a GPS device. Even if a method of detecting the passage state of the gate and latitude / longitude information is used, the effect of restricting access outside the office can be obtained.

また、イベント発行手段1122として、リアルタイムクロック装置などの時計装置(図示せず)を備えたコンテキスト情報抽出手段112を用い、アクセスポリシーにおいて、そのコンテキスト情報抽出手段112に対応する関数名(例えば、CurrentTime ())を<condition> タグで記述することによって、現在時刻を条件としたアクセスポリシーの記述と、その記述に応じたアクセス制御の実施が可能になる。   Further, as the event issuing means 1122, a context information extracting means 112 having a clock device (not shown) such as a real-time clock device is used, and a function name (for example, CurrentTime) corresponding to the context information extracting means 112 in the access policy is used. By describing ()) with a <condition> tag, it becomes possible to describe an access policy with the current time as a condition and to perform access control according to the description.

さらに、イベント発行手段1122としてリアルタイムクロック装置を有するコンテキスト情報抽出手段112を用いることによって、仮想マシン104での重要データアクセスを就業時間に限定させることができる。   Furthermore, by using the context information extraction unit 112 having a real-time clock device as the event issuing unit 1122, the important data access in the virtual machine 104 can be limited to working hours.

本発明は、企業または複数企業間の協働プロジェクトにおけるアクセス制御機能を備えたパーソナルコンピュータやサーバ装置に適用可能である。また、インターネットプロバイダが顧客のパーソナルコンピュータのアクセスポリシーを一括して管理することによって、遠隔セキュリティサービスを行うといった用途にも適用可能である。   The present invention can be applied to a personal computer or a server device having an access control function in a collaborative project between companies or a plurality of companies. Further, the present invention can be applied to a use in which a remote security service is provided by the Internet provider managing the access policy of the customer's personal computer collectively.

本発明の第1実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 1st Embodiment of this invention. 責務実施インタフェースの内部構成を示すブロック図である。It is a block diagram which shows the internal structure of a responsibility implementation interface. 本発明の第1実施形態の全体の動作を示すフローチャートである。It is a flowchart which shows the whole operation | movement of 1st Embodiment of this invention. ポリシー解釈手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of a policy interpretation means. アクセスポリシーの一例を示す説明図である。It is explanatory drawing which shows an example of an access policy. アクセスポリシーの別の一例を示す説明図である。It is explanatory drawing which shows another example of an access policy. 本発明における責務実施インタフェースの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the responsibility implementation interface in this invention. 責務管理表の一例を示す説明図である。It is explanatory drawing which shows an example of the responsibility management table | surface. 本発明の第1実施形態の変形例を示すブロック図である。It is a block diagram which shows the modification of 1st Embodiment of this invention. 本発明の第1実施形態の他の変形例を示すブロック図である。It is a block diagram which shows the other modification of 1st Embodiment of this invention. 本発明の第2実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 2nd Embodiment of this invention. 本発明の第2実施形態におけるポリシー管理手段、責務管理手段、ポリシー解釈手段およびコンピュータ管理手段によるアクセスポリシーの更新および責務実施手段の更新の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the update of the access policy by the policy management means in the 2nd Embodiment of this invention, duty management means, policy interpretation means, and computer management means, and the update of duty execution means. ポリシー管理手段、責務管理手段、ポリシー解釈手段およびコンピュータ管理手段によるアクセスポリシーの更新および責務実施手段の更新の他の動作を示すフローチャートである。It is a flowchart which shows the other operation | movement of the update of the access policy by the policy management means, the responsibility management means, the policy interpretation means, and the computer management means and the update of the responsibility implementation means. 本発明の第3実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 3rd Embodiment of this invention. 本発明の第3実施形態における属性抽出インタフェースの内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the attribute extraction interface in 3rd Embodiment of this invention. 本発明の第3実施形態におけるポリシー解釈手段による条件文判定動作を示すフローチャートである。It is a flowchart which shows the conditional sentence determination operation | movement by the policy interpretation means in 3rd Embodiment of this invention. 本発明の第3実施形態の他の構成例を示すブロック図である。It is a block diagram which shows the other structural example of 3rd Embodiment of this invention. 本発明の第4実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 4th Embodiment of this invention. コンテキスト情報抽出手段の構成例を示すブロック図である。It is a block diagram which shows the structural example of a context information extraction means. 本発明の第4実施形態におけるポリシー解釈手段による条件文判定動作を示すフローチャートである。It is a flowchart which shows the conditional sentence determination operation | movement by the policy interpretation means in 4th Embodiment of this invention. アクセスポリシーの他の例を示す説明図である。It is explanatory drawing which shows the other example of an access policy. 本発明の第5実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 5th Embodiment of this invention. 本発明の第5実施形態の全体の動作を示すフローチャートである。It is a flowchart which shows the whole operation | movement of 5th Embodiment of this invention. 本発明の第1実施例における全体の構成を示すブロック図である。It is a block diagram which shows the whole structure in 1st Example of this invention. 第1実施例におけるメール送信ポリシーの一例を示す説明図である。It is explanatory drawing which shows an example of the mail transmission policy in 1st Example. 第1実施例におけるメール受信ポリシーの一例を示す説明図である。It is explanatory drawing which shows an example of the mail reception policy in 1st Example. 第1実施例におけるコンピュータからのメール送信に係る全体の動作を示すフローチャートである。It is a flowchart which shows the whole operation | movement which concerns on the mail transmission from the computer in 1st Example. 第1実施例におけるコンピュータによるメール受信に係る全体の動作を示すフローチャートである。It is a flowchart which shows the whole operation | movement which concerns on the mail reception by the computer in 1st Example. 本発明の第2実施例におけるコンピュータの構成を示すブロック図である。It is a block diagram which shows the structure of the computer in 2nd Example of this invention. 第2実施例におけるアクセスポリシーの一例を示す説明図である。It is explanatory drawing which shows an example of the access policy in 2nd Example. 第2実施例におけるファイルと書出しイベントとの関係を示す概念図である。It is a conceptual diagram which shows the relationship between the file and write-out event in 2nd Example. 第2実施例におけるファイル暗号化責務実施手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the file encryption duty implementation means in 2nd Example. 本発明の第3実施例におけるコンピュータの構成を示すブロック図である。It is a block diagram which shows the structure of the computer in 3rd Example of this invention. 特許文献2に記載されたアクセス制御システムの構成を示すブロック図である。It is a block diagram which shows the structure of the access control system described in patent document 2.

符号の説明Explanation of symbols

100A,100B,100C,100D−1〜100D−N,100E,100F,100G−1,100G−2,100H コンピュータ
101,101−1,101−2 中央処理装置(CPU)
102 デバイス
102−1,102−2 NIC
103,103−1,103−2 仮想化手段
104,104−1,104−2 仮想マシン
105,105−1,105−2 監視手段
106,106−1,106−2 ポリシー解釈手段
107 責務実施手段
107G−1 メール暗号化責務実施手段
107G−2 メール復号責務実施手段
107H−1 ファイル暗号化責務実施手段
107H−2 ファイル復号責務実施手段
1071H ファイルシステム解析手段
108 責務実施インタフェース
1081 責務管理表
1082 バッファ
109 コンピュータ管理手段
110 属性抽出インタフェース
1101 属性抽出手段管理表
1102 バッファ
111 属性抽出手段
112 コンテキスト情報抽出手段
1121 状態記憶手段
1122 イベント発行手段
112J SSID抽出手段
1122J 無線アクセスポイント検出手段
200 管理サーバ
201 ポリシー管理手段
202 責務管理手段
500C 責務実施手段連携サーバ
500G 鍵管理サーバ
700 無線アクセスポイント
100A, 100B, 100C, 100D-1 to 100D-N, 100E, 100F, 100G-1, 100G-2, 100H Computer 101, 101-1, 101-2 Central processing unit (CPU)
102 device 102-1, 102-2 NIC
103, 103-1, 103-2 Virtualization means 104, 104-1, 104-2 Virtual machines 105, 105-1, 105-2 Monitoring means 106, 106-1, 106-2 Policy interpretation means 107 Duty execution means 107G-1 Mail encryption duty execution means 107G-2 Mail decryption duty execution means 107H-1 File encryption duty execution means 107H-2 File decryption duty execution means 1071H File system analysis means 108 Duty execution interface 1081 Duty management table 1082 Buffer 109 Computer management means 110 Attribute extraction interface 1101 Attribute extraction means management table 1102 Buffer 111 Attribute extraction means 112 Context information extraction means 1121 State storage means 1122 Event issuing means 112J SSID extraction means 1 22J wireless access point detection unit 200 management server 201 the policy management unit 202 responsible management unit 500C work execution means linking server 500G key management server 700 the wireless access point

Claims (27)

入出力イベントを監視し、入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視手段と、
アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって、前記監視手段からの問い合わせに対して、前記アクセスポリシーにもとづいてアクセス可否および実施すべき責務を判定して前記監視手段に応答するポリシー解釈手段と、
所定の責務を実施する複数の責務実施手段と、
前記監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を前記複数の責務実施手段から特定して呼び出し、呼び出した責務実施手段の応答を前記監視手段に転送する責務実施インタフェースと
を備えたことを特徴とするアクセス制御システム。
Monitoring means for monitoring input / output events, controlling access based on input / output events and requesting implementation of responsibilities;
A means for interpreting a predetermined access policy that defines conditions relating to access permission and execution of responsibilities, and in response to an inquiry from the monitoring means, determines whether access is permitted and responsibilities to be executed based on the access policy. Policy interpretation means responsive to the monitoring means;
A plurality of means for carrying out predetermined responsibilities,
Responsibility for identifying and calling responsibility execution means for executing the corresponding responsibility from the plurality of responsibility execution means and transferring a response of the called responsibility execution means to the monitoring means in response to the duty execution request from the monitoring means An access control system comprising an implementation interface.
仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段を備え、
監視手段は、前記仮想化手段から伝達される入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う
請求項1記載のアクセス制御システム。
It has virtualization means to relay input / output events between virtual machines and devices,
The access control system according to claim 1, wherein the monitoring unit performs access permission control and responsibility execution request based on an input / output event transmitted from the virtualization unit.
複数の仮想マシンを備え、
監視手段は、仮想マシンと他の仮想マシンとの間の入出力イベントも監視する
請求項2記載のアクセス制御システム。
With multiple virtual machines,
The access control system according to claim 2, wherein the monitoring unit also monitors an input / output event between the virtual machine and another virtual machine.
責務実施インタフェースは、
責務実施手段名を特定可能なデータと担当する責務を特定可能なデータとが設定された責務管理表を含み、
監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を前記責務管理表にもとづいて特定する
請求項1から請求項3のうちのいずれか1項に記載のアクセス制御システム。
The responsibility implementation interface is
Including a responsibility management table in which data capable of identifying the responsibility implementation means name and data capable of identifying the responsibility in charge are set;
The access control according to any one of claims 1 to 3, wherein, according to a duty execution request from the monitoring means, the duty execution means for executing the corresponding duty is specified based on the duty management table. system.
責務実施手段を格納し、要求に応じて責務実施手段を配付する責務管理手段と、
アクセスポリシーに定義された責務のリストと登録ずみ責務実施手段のリストとを比較して、不要な責務実施手段を削除するとともに、不足している責務実施手段の配付を前記責務管理手段に要求するコンピュータ管理手段とを備えた
請求項1から請求項4のうちのいずれか1項に記載のアクセス制御システム。
Responsibility management means for storing responsibility execution means and distributing responsibility execution means upon request;
Compare the list of responsibilities defined in the access policy with the list of registered responsibility implementation means, delete unnecessary responsibility implementation means, and request the responsibility management means to distribute the missing responsibility implementation means The access control system according to claim 1, further comprising computer management means.
ネットワークを介して責務実施手段と通信可能であり、責務実施手段と連携して責務を実施する責務実施手段連携サーバを備えた
請求項1から請求項5のうちのいずれか1項に記載のアクセス制御システム。
The access according to any one of claims 1 to 5, further comprising a responsibility execution means cooperation server that is communicable with the duty execution means via a network and that performs the duty in cooperation with the duty execution means. Control system.
アクセスポリシーの条件判定に必要な属性情報を入出力イベントから抽出する複数の属性抽出手段と、
属性情報の問い合わせに応じて、該当する属性情報の抽出処理を実施する属性抽出手段を前記複数の属性抽出手段から特定して呼び出し、呼び出した属性抽出手段の応答をポリシー解釈手段に転送する属性抽出インタフェースとを備え、
前記ポリシー解釈手段は、監視手段からの問い合わせに対して、アクセス可否および実施すべき責務を判定するために、前記属性抽出インタフェースに、入出力イベントを渡すとともに、入出力イベントに関する属性情報の問い合わせを行う
請求項1から請求項6のうちのいずれか1項に記載のアクセス制御システム。
A plurality of attribute extraction means for extracting attribute information necessary for access policy condition determination from input / output events;
Attribute extraction for identifying and calling attribute extraction means for performing extraction processing of corresponding attribute information from the plurality of attribute extraction means in response to an inquiry of attribute information, and transferring a response of the called attribute extraction means to the policy interpretation means With an interface,
The policy interpretation means passes an input / output event to the attribute extraction interface and inquires about attribute information regarding the input / output event in order to determine whether access is possible and the responsibility to be executed in response to the inquiry from the monitoring means. The access control system according to any one of claims 1 to 6.
仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段と、
前記仮想化手段から伝達される入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視手段と、
アクセスポリシーの条件判定に必要な属性情報を入出力イベントから抽出する複数の属性抽出手段と、
属性情報の問い合わせに応じて、該当する属性情報の抽出処理を実施する属性抽出手段を前記複数の属性抽出手段から特定して呼び出し、呼び出した属性抽出手段の応答をポリシー解釈手段に転送する属性抽出インタフェースと、
所定のアクセスポリシーを解釈する手段であって、前記監視手段からの問い合わせに対して、アクセス可否および実施すべき責務を判定するために、前記属性抽出インタフェースに、入出力イベントを渡すとともに、入出力イベントに関する属性情報の問い合わせを行うポリシー解釈手段とを備えた
ことを特徴とするアクセス制御システム。
Virtualization means for relaying I / O events between the virtual machine and the device;
Monitoring means for controlling access permission and requesting execution of responsibility based on an input / output event transmitted from the virtualization means;
A plurality of attribute extraction means for extracting attribute information necessary for access policy condition determination from input / output events;
Attribute extraction for identifying and calling attribute extraction means for performing extraction processing of corresponding attribute information from the plurality of attribute extraction means in response to an inquiry of attribute information, and transferring a response of the called attribute extraction means to the policy interpretation means Interface,
Means for interpreting a predetermined access policy, and in response to an inquiry from the monitoring means, an input / output event is passed to the attribute extraction interface and an input / output is performed in order to determine whether access is permitted and the responsibility to be implemented. An access control system comprising policy interpretation means for inquiring about attribute information related to events.
アクセス制御システムの位置状況または時間状況を検知する状況検知手段を備え、
ポリシー解釈手段は、前記状況検知手段が検知した状況に応じてアクセス可否および実施すべき責務を判定する
請求項1から請求項8のうちのいずれか1項に記載のアクセス制御システム。
It is equipped with status detection means for detecting the location status or time status of the access control system,
The access control system according to any one of claims 1 to 8, wherein the policy interpreting unit determines whether access is permitted and a duty to be performed according to a situation detected by the situation detecting unit.
状況検知手段が検知した状況に応じて責務を実施するタイミングを制御する責務実施時期管理手段を備えた
請求項9記載のアクセス制御システム。
The access control system according to claim 9, further comprising duty execution time management means for controlling a timing of executing the duty in accordance with a situation detected by the situation detection means.
アクセス要求の可否判定および所定の責務を実施するアクセス制御システムにおける端末装置であって、
入出力イベントを監視し、入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視手段と、
アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって、前記監視手段からの問い合わせに対して、前記アクセスポリシーにもとづいてアクセス可否および実施すべき責務を判定して前記監視手段に応答するポリシー解釈手段と、
所定の責務を実施する複数の責務実施手段と、
前記監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を前記複数の責務実施手段から特定して呼び出し、呼び出した責務実施手段の応答を前記監視手段に転送する責務実施インタフェースと
を備えたことを特徴とする端末装置。
A terminal device in an access control system that performs access request determination and predetermined responsibility,
Monitoring means for monitoring input / output events, controlling access based on input / output events and requesting implementation of responsibilities;
A means for interpreting a predetermined access policy that defines conditions relating to access permission and execution of responsibilities, and in response to an inquiry from the monitoring means, determines whether access is permitted and responsibilities to be executed based on the access policy. Policy interpretation means responsive to the monitoring means;
A plurality of means for carrying out predetermined responsibilities,
Responsibility for identifying and calling responsibility execution means for executing the corresponding responsibility from the plurality of responsibility execution means and transferring a response of the called responsibility execution means to the monitoring means in response to the duty execution request from the monitoring means A terminal device comprising an implementation interface.
仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段を備え、
監視手段は、前記仮想化手段から伝達される入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う
請求項11記載の端末装置。
It has virtualization means to relay input / output events between virtual machines and devices,
The terminal device according to claim 11, wherein the monitoring unit performs access permission control and a duty execution request based on an input / output event transmitted from the virtualization unit.
アクセスポリシーに定義された責務のリストと登録ずみ責務実施手段のリストとを比較して、不要な責務実施手段を削除するとともに、不足している責務実施手段を、責務実施手段を配付する装置からダウンロードするコンピュータ管理手段を備えた
請求項11または請求項12記載の端末装置。
Compare the list of responsibilities defined in the access policy with the list of registered responsibilities implementation means, delete unnecessary responsibilities implementation means, and remove the missing responsibilities implementation means from the device that distributes the responsibility implementation means. The terminal device according to claim 11, further comprising computer management means for downloading.
アクセスポリシーの条件判定に必要な属性情報を入出力イベントから抽出する複数の属性抽出手段と、
属性情報の問い合わせに応じて、該当する属性情報の抽出処理を実施する属性抽出手段を前記複数の属性抽出手段から特定して呼び出し、呼び出した属性抽出手段の応答をポリシー解釈手段に転送する属性抽出インタフェースとを備え、
前記ポリシー解釈手段は、監視手段からの問い合わせに対して、アクセス可否および実施すべき責務を判定するために、前記属性抽出インタフェースに、入出力イベントを渡すとともに、入出力イベントに関する属性情報を問い合わせを行う
請求項11から請求項13のうちのいずれか1項に記載の端末装置。
A plurality of attribute extraction means for extracting attribute information necessary for access policy condition determination from input / output events;
Attribute extraction for identifying and calling attribute extraction means for performing extraction processing of corresponding attribute information from the plurality of attribute extraction means in response to an inquiry of attribute information, and transferring a response of the called attribute extraction means to the policy interpretation means With an interface,
In response to the inquiry from the monitoring means, the policy interpreting means passes an input / output event to the attribute extraction interface and inquires about attribute information related to the input / output event in order to determine the accessibility and the responsibility to be executed. The terminal device according to any one of claims 11 to 13.
アクセス要求の可否判定および所定の責務を実施するアクセス制御システムにおける端末装置であって、
仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段と、
前記仮想化手段から伝達される入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視手段と、
アクセスポリシーの条件判定に必要な属性情報を抽出する複数の属性抽出手段と、
属性情報の問い合わせに応じて、該当する属性情報の抽出処理を実施する属性抽出手段を前記複数の属性抽出手段から特定して呼び出し、呼び出した属性抽出手段の応答をポリシー解釈手段に転送する属性抽出インタフェースと、
所定のアクセスポリシーを解釈する手段であって、前記監視手段からの問い合わせに対して、アクセス可否および実施すべき責務を判定するために、前記属性抽出インタフェースに、入出力イベントを渡すとともに、入出力イベントに関する属性情報を問い合わせを行うポリシー解釈手段とを備えた
ことを特徴とする端末装置。
A terminal device in an access control system that performs access request determination and predetermined responsibility,
Virtualization means for relaying I / O events between the virtual machine and the device;
Monitoring means for controlling access permission and requesting execution of responsibility based on an input / output event transmitted from the virtualization means;
A plurality of attribute extraction means for extracting attribute information necessary for judging the condition of the access policy;
Attribute extraction for identifying and calling attribute extraction means for performing extraction processing of corresponding attribute information from the plurality of attribute extraction means in response to an inquiry of attribute information, and transferring a response of the called attribute extraction means to the policy interpretation means Interface,
Means for interpreting a predetermined access policy, and in response to an inquiry from the monitoring means, an input / output event is passed to the attribute extraction interface and an input / output is performed in order to determine whether access is permitted and the responsibility to be implemented. A terminal device comprising policy interpreting means for inquiring attribute information related to an event.
アクセス制御システムの位置状況または時間状況を検知する状況検知手段を備え、
ポリシー解釈手段は、前記状況検知手段が検知した状況に応じてアクセス可否および実施すべき責務を判定する
請求項11から請求項15のうちのいずれか1項に記載の端末装置。
It is equipped with status detection means for detecting the location status or time status of the access control system,
The terminal device according to any one of claims 11 to 15, wherein the policy interpreting unit determines whether access is permitted and a duty to be implemented according to a situation detected by the situation detecting unit.
状況検知手段が検知した状況に応じて責務を実施するタイミングを制御する責務実施時期管理手段を備えた
請求項16記載の端末装置。
The terminal device according to claim 16, further comprising duty execution time management means for controlling a timing of executing the duty according to a situation detected by the situation detection means.
仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段と、前記仮想化手段から伝達される入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視手段と、アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって前記監視手段からの問い合わせに対して前記アクセスポリシーにもとづいてアクセス可否および実施すべき責務を判定して前記監視手段に応答するポリシー解釈手段と、所定の責務を実施する複数の責務実施手段と、前記監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を前記複数の責務実施手段から特定して呼び出し、呼び出した責務実施手段の応答を前記監視手段に転送する責務実施インタフェースと、アクセスポリシーに定義された責務のリストと登録ずみ責務実施手段のリストとを比較して、不要な責務実施手段を削除するとともに、不足している責務実施手段の配付を要求するコンピュータ管理手段とを備えた端末装置と通信可能に接続されるサーバ装置であって、
責務実施手段を格納し、前記コンピュータ管理手段からの要求に応じて、責務実施手段を前記コンピュータ管理手段に配付する責務管理手段を備えた
ことを特徴とするサーバ装置。
A virtualization unit that relays an input / output event between the virtual machine and the device; a monitoring unit that performs control of accessibility and requests for execution of duties based on the input / output event transmitted from the virtualization unit; And a means for interpreting a predetermined access policy that defines conditions relating to the execution of duties, and in response to an inquiry from the monitoring means, whether access is permitted and duties to be executed are determined based on the access policy, and the monitoring means Responsible policy interpretation means, a plurality of duty execution means for executing a predetermined duty, and a duty execution means for executing the corresponding duty in response to a request for execution of the duty from the monitoring means from the plurality of duty execution means. A responsibility execution interface for identifying and calling and transferring the response of the called responsibility execution means to the monitoring means; Compare the list of responsibilities defined in the access policy with the list of registered responsibilities implementation means, delete unnecessary responsibilities implementation means, and request computer management means to request distribution of the missing responsibilities implementation means. A server device communicably connected to the terminal device provided,
A server apparatus comprising: responsibility management means for storing responsibility execution means and distributing the duty execution means to the computer management means in response to a request from the computer management means.
入出力イベントを監視し、入出力イベントにもとづいてアクセス可否の制御および責務の実施依頼を行う監視し、
アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって、問い合わせに対して、アクセス可否および実施すべき責務を判定して応答し、
責務の実施依頼に応じて、該当する責務を実施する責務実施処理を複数の責務実施処理から特定して実施し、実施した責務実施処理の応答を、責務の実施依頼元に転送する
ことを特徴とするアクセス制御方法。
Monitors I / O events, monitors access based on I / O events, and requests responsibility execution,
A means for interpreting a predetermined access policy that defines the conditions for accessibility and the implementation of responsibilities, and responds to inquiries by determining accessibility and responsibilities to be enforced,
In response to a request for the execution of a responsibility, the responsibility execution process for implementing the corresponding responsibility is identified and executed from a plurality of responsibility execution processes, and the response of the executed responsibility execution process is transferred to the requester of the responsibility execution. Access control method.
仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段から伝達される入出力イベントにもとづいて、アクセス可否の制御および責務の実施依頼を行う
請求項19記載のアクセス制御方法。
20. The access control method according to claim 19, wherein access permission control and responsibility execution are requested based on an input / output event transmitted from a virtualization unit that relays an input / output event between a virtual machine and a device.
アクセスポリシーの条件判定に必要な属性情報を入出力イベントから抽出する処理を行う
請求項19または請求項20記載のアクセス制御方法。
The access control method according to claim 19 or 20, wherein a process of extracting attribute information necessary for determining an access policy condition from an input / output event is performed.
アクセス制御システムの位置状況または時間状況を検知し、
検知した状況に応じてアクセス可否および実施すべき責務を判定する
請求項19から請求項21のうちのいずれか1項に記載のアクセス制御方法。
Detect the location status or time status of the access control system,
The access control method according to any one of claims 19 to 21, wherein access permission and responsibility to be implemented are determined according to a detected situation.
検知した状況に応じて責務を実施するタイミングを制御する
請求項22記載のアクセス制御方法。
The access control method according to claim 22, wherein timing for performing the duty is controlled according to the detected situation.
アクセス要求の可否判定および所定の責務を実施するアクセス制御システムにおけるコンピュータに搭載されるプログラムであって、
コンピュータを、
仮想マシンとデバイスとの間の入出力イベントを中継する仮想化手段から伝達される入出力イベントを監視し、入出力イベントにもとづいて、アクセス可否の制御および責務の実施依頼を行う監視手段と、
アクセス可否および責務の実施に関する条件を定義した所定のアクセスポリシーを解釈する手段であって、前記監視手段からの問い合わせに対して、前記アクセスポリシーにもとづいてアクセス可否および実施すべき責務を判定して前記監視手段に応答するポリシー解釈手段と、
所定の責務を実施する複数の責務実施手段と、
前記監視手段からの責務の実施依頼に応じて、該当する責務を実施する責務実施手段を前記複数の責務実施手段から特定して呼び出し、呼び出した責務実施手段の応答を前記監視手段に転送する責務実施インタフェース手段として機能させる
ためのアクセス制御用プログラム。
A program installed in a computer in an access control system that performs access request determination and predetermined responsibility,
Computer
Monitoring means for monitoring an input / output event transmitted from a virtualization means for relaying an input / output event between the virtual machine and the device, and for controlling access permission and requesting execution of responsibility based on the input / output event;
A means for interpreting a predetermined access policy that defines conditions relating to access permission and execution of responsibilities, and in response to an inquiry from the monitoring means, determines whether access is permitted and responsibilities to be executed based on the access policy. Policy interpretation means responsive to the monitoring means;
A plurality of means for carrying out predetermined responsibilities,
Responsibility for identifying and calling responsibility execution means for executing the corresponding responsibility from the plurality of responsibility execution means and transferring a response of the called responsibility execution means to the monitoring means in response to the duty execution request from the monitoring means Access control program to function as an implementation interface means.
コンピュータを、
アクセスポリシーの条件判定に必要な属性情報を入出力イベントから抽出する複数の属性抽出手段と、
属性情報の問い合わせに応じて、該当する属性情報の抽出処理を実施する属性抽出手段を前記複数の属性抽出手段から特定して呼び出し、呼び出した属性抽出手段の応答をポリシー解釈手段に転送する属性抽出インタフェース手段として機能させ、
アクセス可否および実施すべき責務を判定するために、前記属性抽出インタフェース手段としての機能に、入出力イベントを渡すとともに、入出力イベントに関する属性情報を問い合わせを行わせる
請求項24記載のアクセス制御用プログラム。
Computer
A plurality of attribute extraction means for extracting attribute information necessary for access policy condition determination from input / output events;
Attribute extraction for identifying and calling attribute extraction means for performing extraction processing of corresponding attribute information from the plurality of attribute extraction means in response to an inquiry of attribute information, and transferring a response of the called attribute extraction means to the policy interpretation means Function as an interface means,
25. The access control program according to claim 24, wherein an input / output event is passed to the function as the attribute extraction interface means, and attribute information related to the input / output event is queried to determine whether access is permitted and the responsibility to be implemented. .
コンピュータを、
アクセス制御システムの位置状況または時間状況を検知する状況検知手段として機能させ、
ポリシー解釈手段としての機能に、前記状況検知手段としての機能によって検知された状況に応じてアクセス可否および実施すべき責務を判定させる
請求項24または請求項25記載のアクセス制御用プログラム。
Computer
Function as a status detection means to detect the location status or time status of the access control system,
26. The access control program according to claim 24 or 25, wherein the function as the policy interpreting unit is configured to determine whether access is permitted and the responsibility to be executed according to the status detected by the function as the status detecting unit.
コンピュータを、
状況検知手段が検知した状況に応じて責務を実施するタイミングを制御する責務実施時期管理手段として機能させる
請求項26記載のアクセス制御用プログラム。
Computer
27. The access control program according to claim 26, wherein the access control program is caused to function as a duty execution time management means for controlling a timing of performing a duty in accordance with a situation detected by the situation detection means.
JP2007286570A 2007-08-20 2007-11-02 Access control system, access control method, and access control program Pending JP2010282242A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007286570A JP2010282242A (en) 2007-08-20 2007-11-02 Access control system, access control method, and access control program
PCT/JP2008/063979 WO2009025166A1 (en) 2007-08-20 2008-08-04 Access control system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2007213578 2007-08-20
JP2007286570A JP2010282242A (en) 2007-08-20 2007-11-02 Access control system, access control method, and access control program

Publications (1)

Publication Number Publication Date
JP2010282242A true JP2010282242A (en) 2010-12-16

Family

ID=40378074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007286570A Pending JP2010282242A (en) 2007-08-20 2007-11-02 Access control system, access control method, and access control program

Country Status (2)

Country Link
JP (1) JP2010282242A (en)
WO (1) WO2009025166A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014191426A (en) * 2013-03-26 2014-10-06 Nec Corp Information processor for executing countermeasure for fraudulent action, fraudulent action countermeasure method, and program therefor
JP2015142267A (en) * 2014-01-29 2015-08-03 日本電気株式会社 Wireless lan device, method for connecting to wireless lan access point, and program
JP2015537428A (en) * 2012-10-12 2015-12-24 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. Secure data processing with virtual machines
JP2016506546A (en) * 2012-08-28 2016-03-03 ネットコム、ワイヤレス、リミテッドNetcomm Wirelesslimited Apparatus and method for mobile communications computing
JP2017016669A (en) * 2011-07-20 2017-01-19 マイクロソフト テクノロジー ライセンシング,エルエルシー Trust level activation
KR101931779B1 (en) 2017-08-07 2018-12-21 한국전자통신연구원 Apparatus for monitoring file access in virtual machine and method for the same
WO2022049656A1 (en) * 2020-09-02 2022-03-10 日本電気株式会社 Information processing system, information processing method, and program recording medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8904518B2 (en) 2010-05-07 2014-12-02 Panasonic Corporation Information processing device, information processing method, and program distribution system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3630087B2 (en) * 2000-05-10 2005-03-16 日本電気株式会社 Automatic data processor
US8561126B2 (en) * 2004-12-29 2013-10-15 International Business Machines Corporation Automatic enforcement of obligations according to a data-handling policy
US7716240B2 (en) * 2005-12-29 2010-05-11 Nextlabs, Inc. Techniques and system to deploy policies intelligently

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017016669A (en) * 2011-07-20 2017-01-19 マイクロソフト テクノロジー ライセンシング,エルエルシー Trust level activation
JP2016506546A (en) * 2012-08-28 2016-03-03 ネットコム、ワイヤレス、リミテッドNetcomm Wirelesslimited Apparatus and method for mobile communications computing
JP2015537428A (en) * 2012-10-12 2015-12-24 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. Secure data processing with virtual machines
JP2014191426A (en) * 2013-03-26 2014-10-06 Nec Corp Information processor for executing countermeasure for fraudulent action, fraudulent action countermeasure method, and program therefor
JP2015142267A (en) * 2014-01-29 2015-08-03 日本電気株式会社 Wireless lan device, method for connecting to wireless lan access point, and program
KR101931779B1 (en) 2017-08-07 2018-12-21 한국전자통신연구원 Apparatus for monitoring file access in virtual machine and method for the same
US10965679B2 (en) 2017-08-07 2021-03-30 Electronics And Telecommunications Research Institute Apparatus for monitoring file access in virtual machine and method for the same
WO2022049656A1 (en) * 2020-09-02 2022-03-10 日本電気株式会社 Information processing system, information processing method, and program recording medium
JP7476972B2 (en) 2020-09-02 2024-05-01 日本電気株式会社 Information processing system, information processing method, and program recording medium

Also Published As

Publication number Publication date
WO2009025166A1 (en) 2009-02-26

Similar Documents

Publication Publication Date Title
US11057355B2 (en) Protecting documents using policies and encryption
US12021859B2 (en) Policies and encryption to protect digital information
US12039036B2 (en) Secure firewall configurations
US9461819B2 (en) Information sharing system, computer, project managing server, and information sharing method used in them
US20180007002A1 (en) Elastic outbound gateway
JP2010282242A (en) Access control system, access control method, and access control program
JP4725955B2 (en) Information processing apparatus, message management method, program, and storage medium
US20110289548A1 (en) Guard Computer and a System for Connecting an External Device to a Physical Computer Network