JP2012198906A - Information processor, information processing method and program - Google Patents

Information processor, information processing method and program Download PDF

Info

Publication number
JP2012198906A
JP2012198906A JP2012101738A JP2012101738A JP2012198906A JP 2012198906 A JP2012198906 A JP 2012198906A JP 2012101738 A JP2012101738 A JP 2012101738A JP 2012101738 A JP2012101738 A JP 2012101738A JP 2012198906 A JP2012198906 A JP 2012198906A
Authority
JP
Japan
Prior art keywords
file
rule
request
transmission
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012101738A
Other languages
Japanese (ja)
Other versions
JP2012198906A5 (en
JP5500200B2 (en
Inventor
Manabu Yamauchi
覚 山内
Masaki Doi
雅貴 土井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Canon MJ IT Group Holdings Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
Canon MJ IT Group Holdings Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc, Canon IT Solutions Inc, Canon MJ IT Group Holdings Inc filed Critical Canon Marketing Japan Inc
Priority to JP2012101738A priority Critical patent/JP5500200B2/en
Publication of JP2012198906A publication Critical patent/JP2012198906A/en
Publication of JP2012198906A5 publication Critical patent/JP2012198906A5/ja
Application granted granted Critical
Publication of JP5500200B2 publication Critical patent/JP5500200B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To improve security by determining whether or not an extension of data is disguised according to a transmission source of the data.SOLUTION: Transmission rule information in which transmission source information specifying a transmission source of a file and setting information setting whether to permit or inhibit transmission of the file from the transmission source when the extension of the file is disguised are associated with each other is stored. For the file transmitted from a data transmitter, whether or not a file format determined from data in the file and a file format determined from the extension of the file name of the file are the same is determined, and when determined that the file formats are different, whether to permit or inhibit the transmission of the file is controlled according to the transmission rule information corresponding to the transmission source of the file.

Description

本発明は、情報処理装置、情報処理方法及びプログラムに関し、特に、通信データの制御技術に関するものである。   The present invention relates to an information processing apparatus, an information processing method, and a program, and more particularly to a communication data control technique.

ウェブサーバで稼働し電子メールの閲覧や送受信を可能にするウェブメールサービスや、ドキュメントファイルの編集を行うドキュメント管理サービスが提供されている。従来ソフトウェアは、ユーザのコンピュータで実行し利用されてきたが、近年ではサービス提供者のコンピュータでソフトウェアを実行し、ユーザはサービスを利用する形態が増えてきている。このようなサービスはウェブサーバ上で提供されることが多く、ファイルの送受信を行うものが多いため、ウェブアクセスによるファイルの送受信制御が重要となってきている。   A web mail service that operates on a web server and enables browsing and transmission / reception of e-mails and a document management service for editing document files are provided. Conventionally, software has been executed and used on a user's computer. However, in recent years, a form in which a user uses a service by executing software on a service provider's computer is increasing. Since such services are often provided on a web server and often perform file transmission / reception, file transmission / reception control by web access has become important.

ウェブサイトで提供されるサービスは、これまで個人ユーザに利用されることが多かったが、近年では企業などにも利用されることが増えてきている。しかし、企業などでこのようなサービスを利用する場合、機密情報の漏えいが問題となる。例えば、本来使用を許可していない個人で登録したサイトのサービスを使用して、社員がそこに機密性の高いファイルを送信してしまうといった問題が考えられる。このような問題に対応するために社内から利用できるサービスを制限したり、送信されるファイルを検査したりして問題があると判断される場合は送信を禁止するといった送信制御が必要となる。   The service provided on the website has been often used by an individual user until now, but in recent years, it has been increasingly used by companies and the like. However, when such a service is used by a company or the like, leakage of confidential information becomes a problem. For example, there may be a problem that an employee transmits a highly confidential file there using a service of a site registered by an individual who is not originally permitted to use. In order to deal with such a problem, it is necessary to perform transmission control such as prohibiting transmission when it is determined that there is a problem by limiting services available from within the company or inspecting a file to be transmitted.

また、情報漏えいの観点では、ファイルの送信制御が重要となるが、一方、受信に関しても本来必要のないファイルをダウンロードしたり、ウィルスが感染している危険なファイルをダウンロードしたりするといった問題がある。例えば、業務上アクセスの必要がないサイトのファイルをダウンロードしたり、危険性の高いファイルを知らずにダウンロードしたりしてしまうといった問題が考えられる。このような問題に対応するためにファイルを受信可能なサイトを制限したり、受信可能なファイル形式を限定したりするといった受信制御も必要となる。   Also, from the perspective of information leakage, file transmission control is important, but on the other hand, there are problems such as downloading files that are not essential for reception and downloading dangerous files that are infected with viruses. is there. For example, there may be problems such as downloading a file on a site that does not require access for business, or downloading a file with high risk without knowing it. In order to deal with such problems, it is necessary to perform reception control such as limiting the sites that can receive files and limiting the file formats that can be received.

特定のサイトにのみアクセスを許可する技術としては、例えば特許文献1が開示されている。係る技術によれば、特定のサイトにのみアクセスを許可するといった制御が可能となる。   As a technique for permitting access only to a specific site, for example, Patent Document 1 is disclosed. According to such a technique, it is possible to perform control such that access is permitted only to a specific site.

また、データファイルの形式を判定する技術としては、例えば特許文献2が開示されている。係る技術によれば、データファイルの特徴を解析し、その結果からデータファイルの形式を推定することが可能となる。
特開2004−348202号公報 特開2001−101049号公報
As a technique for determining the format of the data file, for example, Patent Document 2 is disclosed. According to such a technique, it is possible to analyze the characteristics of the data file and estimate the format of the data file from the result.
JP 2004-348202 A JP 2001-101049 A

しかしながら、ウェブアクセスによるファイルの送受信を制御するためには、送受信されるファイルのファイル形式を正しく判定することが重要である。例えば、ファイル形式を間違って判定してしまった場合は、ファイルからテキスト情報が正しく抽出できずに、本来送受信を禁止したいファイルの送受信を許可してしまうといった問題が発生してしまう。   However, in order to control file transmission / reception by web access, it is important to correctly determine the file format of the file to be transmitted / received. For example, if the file format is wrongly determined, text information cannot be correctly extracted from the file, and there is a problem that transmission / reception of a file that is originally prohibited from transmission / reception is permitted.

更に、送受信可能なファイル形式を制限したい場合、ファイル形式を間違って判定してしまった場合は、本来送受信を禁止したいファイルの送受信を許可してしまうといった問題が発生してしまう。   Further, when it is desired to limit the file formats that can be transmitted / received, and when the file format is erroneously determined, there arises a problem that transmission / reception of a file that is originally prohibited from being transmitted / received is permitted.

HTTPリクエストにより送信されるファイルのファイル形式を判定するためにはブラウザ等のHTTPクライアントがHTTPリクエストヘッダーに付与するContent−Typeを利用することができる。   In order to determine the file format of the file transmitted by the HTTP request, the Content-Type attached to the HTTP request header by an HTTP client such as a browser can be used.

しかしながら、通常HTTPクライアントはファイルの拡張子からContent−Typeを判定するため、ファイルに間違った拡張子が付与されている場合や、意図的に変更されている場合は、本来のファイル形式とは異なるContent−Typeが付与されてしまう。また、Content−TypeはHTTPクライアントが付与するものであるため、送信者による変更が可能であり、そもそも信頼できないといった問題もある。   However, since the HTTP client normally determines the Content-Type from the extension of the file, it differs from the original file format if the file has an incorrect extension or has been changed intentionally. Content-Type is given. In addition, since Content-Type is assigned by the HTTP client, there is a problem that it can be changed by the sender and cannot be trusted in the first place.

そのため、所定のファイル形式の文書データのみを、所定のウェブサイトへの送信許可、及び所定のウェブサイトからの受信許可とする送信制御システムを運用する場合、Content−Typeに基づく制御のみでは、悪意のあるユーザが、ファイル名の拡張子を、送信/受信が許可されているファイル形式の拡張子に変更することにより、あたかも送信/受信が許可されているファイルであるかのように判断され、送信/受信されてしまう恐れがある。   For this reason, when operating a transmission control system in which only document data in a predetermined file format is permitted to be transmitted to a predetermined website and permitted to be received from a predetermined website, only control based on Content-Type is malicious. A user with a file name changes the extension of the file name to an extension of a file format that is permitted to transmit / receive, so that it is determined as if the file is permitted to transmit / receive, There is a risk of transmission / reception.

ウェブサーバは公開ディレクトリに保存されているファイルへのリクエストを受け取ると、ファイルの拡張子からContent−Typeを判定し、HTTPレスポンスヘッダーに付与する。そのため、間違った拡張子が付与されていたり、意図的に変更されていたりするファイルが公開ディレクトリにアップロードされてしまった場合は、HTTPレスポンスヘッダーに本来のファイル形式とは異なるContent−Typeが付与されてしまう。   When the web server receives a request for a file stored in the public directory, it determines Content-Type from the extension of the file and assigns it to the HTTP response header. Therefore, if a file with an incorrect extension or intentionally changed is uploaded to the public directory, a Content-Type different from the original file format is assigned to the HTTP response header. End up.

また、CGIなどのプログラムを経由してファイルをダウンロードする場合は、CGIプログラムがContent−Typeを生成するため、CGIプログラムがどのファイルに形式に対してもデフォルトのContent−Typeを付与したりする場合は、本来のファイル形式とは異なるContent−TypeがHTTPレスポンスヘッダーに付与されてしまうといった問題も発生する。   Also, when a file is downloaded via a program such as CGI, the CGI program generates a Content-Type, and therefore the CGI program assigns a default Content-Type to any file format. Causes a problem that Content-Type different from the original file format is added to the HTTP response header.

以上の通り、例えば、所定のファイル形式の文書データのみを、所定のウェブサイトからの受信許可とする送信制御システムを運用する場合に、Content−Typeに基づく制御のみでは、悪意のあるユーザが、ファイル名の拡張子を、受信が許可されているファイル形式の拡張子に変更することにより、あたかも受信が許可されているファイルであるかのように判断され送信されてしまう恐れがある。すなわち、ウィルスなどの有害なデータを誤って受信してしまう恐れがある。   As described above, for example, when operating a transmission control system in which only document data in a predetermined file format is permitted to be received from a predetermined website, only a control based on Content-Type allows a malicious user to By changing the extension of the file name to the extension of the file format for which reception is permitted, there is a possibility that the file will be judged and transmitted as if it was permitted to be received. That is, there is a risk that harmful data such as viruses may be received by mistake.

本発明の目的は、データの送信元に応じてデータの拡張子が偽装されているかを判定することにより、セキュリティが向上させる仕組みを提供することである。   An object of the present invention is to provide a mechanism for improving security by determining whether an extension of data is camouflaged according to a data transmission source.

本発明は、データを送信するデータ送信装置と通信可能であり、当該データの送信制御を行う情報処理装置であって、ファイルの送信元を特定する送信元情報と、当該ファイルの拡張子の偽装があるときに当該送信元からの当該ファイルの送信を許可するか禁止するかが設定された設定情報とを対応づけた送信ルール情報を記憶する記憶手段と、前記データ送信装置から送信された前記ファイルに対して、当該ファイル内のデータから判定されるファイル形式と当該ファイルのファイル名の拡張子から判定されるファイル形式とが同じであるかを判定する偽装判定手段と、前記偽装判定手段でファイル形式が異なると判定された場合、前記ファイルの送信元に対応した前記送信ルール情報に従って、当該ファイルの送信を許可するか禁止するかを制御する送信制御手段と、を備えることを特徴とする。   The present invention is an information processing apparatus that is capable of communicating with a data transmission device that transmits data, and that controls transmission of the data. The information processing device includes transmission source information that identifies a transmission source of a file, and fake extension of the file. Storage means for storing transmission rule information associated with setting information set to permit or prohibit transmission of the file from the transmission source when there is, and the data transmitted from the data transmission device A camouflage determining means for determining whether the file format determined from the data in the file and the file format determined from the file name extension of the file are the same for the file; When it is determined that the file format is different, the transmission of the file is permitted or prohibited according to the transmission rule information corresponding to the transmission source of the file. Characterized in that it comprises a transmission control means for controlling.

本発明は、データを送信するデータ送信装置と通信可能であり、当該データの送信制御を行う情報処理装置における情報処理方法であって、記憶手段が、ファイルの送信元を特定する送信元情報と、当該ファイルの拡張子の偽装があるときに当該送信元からの当該ファイルの送信を許可するか禁止するかが設定された設定情報とを対応づけた送信ルール情報を記憶する記憶工程と、偽装判定手段が、前記データ送信装置から送信された前記ファイルに対して、当該ファイル内のデータから判定されるファイル形式と当該ファイルのファイル名の拡張子から判定されるファイル形式とが同じであるかを判定する偽装判定工程と、送信制御手段が、前記偽装判定工程でファイル形式が異なると判定された場合、前記ファイルの送信元に対応した前記送信ルール情報に従って、当該ファイルの送信を許可するか禁止するかを制御する送信制御工程と、を備えることを特徴とする。   The present invention is an information processing method in an information processing apparatus that is communicable with a data transmission apparatus that transmits data and performs transmission control of the data, wherein the storage means includes transmission source information that identifies the transmission source of the file, and A storage step of storing transmission rule information in association with setting information set to allow or prohibit transmission of the file from the transmission source when the file extension is camouflaged; Whether the file format determined from the data in the file and the file format determined from the extension of the file name of the file are the same for the file transmitted from the data transmission device by the determination unit If it is determined that the file format is different in the camouflage determination process, the camouflage determination process for determining the According to the transmission rule information, characterized by comprising a transmission control step of controlling whether to permit or inhibit transmission of the file.

本発明は、データを送信するデータ送信装置と通信可能であり、当該データの送信制御を行う情報処理装置として機能させるプログラムであって、前記情報処理装置を、ファイルの送信元を特定する送信元情報と、当該ファイルの拡張子の偽装があるときに当該送信元からの当該ファイルの送信を許可するか禁止するかが設定された設定情報とを対応づけた送信ルール情報を記憶する記憶手段と、前記データ送信装置から送信された前記ファイルに対して、当該ファイル内のデータから判定されるファイル形式と当該ファイルのファイル名の拡張子から判定されるファイル形式とが同じであるかを判定する偽装判定手段と、前記偽装判定手段でファイル形式が異なると判定された場合、前記ファイルの送信元に対応した前記送信ルール情報に従って、当該ファイルの送信を許可するか禁止するかを制御する送信制御手段と、として機能させることを特徴とする。   The present invention is a program that can communicate with a data transmission device that transmits data, and that functions as an information processing device that performs transmission control of the data. The information processing device is a transmission source that identifies a transmission source of a file. Storage means for storing transmission rule information that associates information with setting information that is set to allow or prohibit transmission of the file from the transmission source when the extension of the file is impersonated; Determining whether the file format determined from the data in the file and the file format determined from the file name extension of the file are the same for the file transmitted from the data transmission device When it is determined that the file format is different between the camouflage determination unit and the camouflage determination unit, the transmission rule information corresponding to the transmission source of the file I, characterized in that to function as a transmission control means for controlling whether to permit or inhibit transmission of the file.

本発明によれば、データの送信元に応じてデータの拡張子が偽装されているかを判定することにより、セキュリティが向上することができる。   According to the present invention, it is possible to improve security by determining whether or not a data extension is camouflaged according to a data transmission source.

また、データの送信元及び/又は送信先に応じてデータの拡張子が偽装されているかを判定することにより、セキュリティが向上すると共に情報漏洩を防止することが可能となる。 Further, by determining whether or not the data extension is camouflaged according to the data transmission source and / or transmission destination, it is possible to improve security and prevent information leakage.

本発明の一実施形態に係るシステムの構成を示す図である。It is a figure which shows the structure of the system which concerns on one Embodiment of this invention. 情報処理装置のハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of information processing apparatus. プロキシサーバ101の機能構成を示す図である。2 is a diagram illustrating a functional configuration of a proxy server 101. FIG. 本発明における第1の制御処理の一例を示すフローチャートである。It is a flowchart which shows an example of the 1st control processing in this invention. 本発明における第2の制御処理の一例を示すフローチャートである。It is a flowchart which shows an example of the 2nd control processing in this invention. ルール設定画面の一例を示す図である。It is a figure which shows an example of a rule setting screen. ルール詳細画面の一例を示す図である。It is a figure which shows an example of a rule details screen. ルール移動画面の一例を示す図である。It is a figure which shows an example of a rule movement screen. ルールDB102の一例を示す図である。It is a figure which shows an example of rule DB102. 本発明における第3の制御処理の一例を示すフローチャートである。It is a flowchart which shows an example of the 3rd control processing in this invention. 図10に示す第3の制御処理のステップS1002の詳細処理を示すフローチャートである。It is a flowchart which shows the detailed process of step S1002 of the 3rd control process shown in FIG. URLDB103の一例を示す図である。It is a figure which shows an example of URLDB103. 図10に示す第3の制御処理のステップS1003の詳細処理を示すフローチャートである。It is a flowchart which shows the detailed process of step S1003 of the 3rd control process shown in FIG. ファイル形式と拡張子の対応表の一例を示す図である。It is a figure which shows an example of the correspondence table of a file format and an extension. 図10に示す第3の制御処理のステップS1004の詳細処理を示すフローチャートである。It is a flowchart which shows the detailed process of step S1004 of the 3rd control process shown in FIG. 図15に示すステップS1503の詳細処理を示すフローチャートである。It is a flowchart which shows the detailed process of step S1503 shown in FIG. ファイル形式1701と、そのファイル形式に対して通常付与される拡張子1702の対応表の一例である。It is an example of a correspondence table between a file format 1701 and an extension 1702 that is normally given to the file format. ファイル形式1801と、そのファイル形式のファイルからテキストデータを取得(抽出)するためのプログラム(テキスト抽出プログラム)1802の対応表の一例である。It is an example of a correspondence table of a file format 1801 and a program (text extraction program) 1802 for acquiring (extracting) text data from a file of the file format. 図10に示すステップS1008の詳細処理を示すフローチャートである。It is a flowchart which shows the detailed process of step S1008 shown in FIG. 図10に示すステップS1009の詳細処理を示すフローチャートである。It is a flowchart which shows the detailed process of step S1009 shown in FIG. 図21は、通信管理テーブル2100の一例である。FIG. 21 is an example of the communication management table 2100.

以下、添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
図1は、本発明の一実施形態に係るシステムの構成を示す図である。
Hereinafter, the present invention will be described in detail according to preferred embodiments with reference to the accompanying drawings.
FIG. 1 is a diagram showing a configuration of a system according to an embodiment of the present invention.

図1に示す如く、本実施形態に係るシステムは、プロキシサーバ101、ルールDB102、URLDB103、クライアントPC(クライアント端末)104−1乃至104−3(以後、まとめて「クライアントPC104」とする)、LAN(ローカルエリアネットワーク)105、広域ネットワーク106(以下、ネットワーク)、ウェブサーバ(データ送信装置)107−1乃至107−3(以後、まとめて「ウェブサーバ107」とする)により構成されている。以下、本実施形態に係るシステムを構成する。これらについて説明する。
プロキシサーバ101は、本発明の情報処理装置として機能する装置であり、クライアントPC104とウェブサーバ107との間のデータ通信を中継する。
As shown in FIG. 1, the system according to this embodiment includes a proxy server 101, a rule DB 102, a URL DB 103, client PCs (client terminals) 104-1 to 104-3 (hereinafter collectively referred to as “client PC 104”), a LAN (Local area network) 105, wide area network 106 (hereinafter referred to as network), web servers (data transmission devices) 107-1 to 107-3 (hereinafter collectively referred to as "web server 107"). Hereinafter, the system according to the present embodiment is configured. These will be described.
The proxy server 101 is a device that functions as an information processing device of the present invention, and relays data communication between the client PC 104 and the web server 107.

また、プロキシサーバ101のHDD204等の記憶部には、クライアントPC104からウェブサーバ107への通信を許可/禁止するといった制御に使用するルールが登録されているルールDB102、及びWEBサイト及びWEBページに掲載されている情報のカテゴリ毎にURLが登録されているURLDB103を備えている。   Further, in the storage unit such as the HDD 204 of the proxy server 101, a rule used for control for permitting / prohibiting communication from the client PC 104 to the web server 107 is registered in the rule DB 102, the WEB site, and the WEB page. A URL DB 103 in which URLs are registered for each category of information is provided.

すなわち、URLDB103は、WEBサイト及びWEBページのURLが、当該URLのカテゴリ毎に登録されているデータベースである。図12に示すように、URLDB103には、WEBサイト及びWEBページのURLが、WEBサイト及びWEBページに掲載されている情報の内容やテーマから区分(分類分け)されたカテゴリ毎に登録されている。   That is, the URL DB 103 is a database in which URLs of WEB sites and WEB pages are registered for each category of the URL. As shown in FIG. 12, the URL of the WEB site and WEB page is registered in the URL DB 103 for each category classified (classified) from the contents and themes of information posted on the WEB site and WEB page. .

また、プロキシサーバ101は、さらにルールDB102に設定されている情報の登録、修正等を行うための設定ページの提供等を行うウェブサーバ機能なども有している。尚、ルールDB102およびURLDB103は、プロキシサーバ101内に備えていても、別のコンピュータ内に実装しても構わない。   Further, the proxy server 101 further has a web server function for providing a setting page for registering, modifying, etc., information set in the rule DB 102. Note that the rule DB 102 and the URL DB 103 may be provided in the proxy server 101 or may be mounted in another computer.

URLDB103は、カテゴリごとにウェブサーバ107のリソースを表すURLを登録したデータベースであり、通常、URLDBの作成業者から購入する場合が多い。URLDB103の更新は、プロキシサーバ101の更新プログラムで行っても良いし、他の手段により更新しても構わない。   The URL DB 103 is a database in which URLs representing resources of the web server 107 are registered for each category, and usually purchased from a URL DB creator. The URL DB 103 may be updated by an update program of the proxy server 101 or may be updated by other means.

クライアントPC104は、ウェブサーバ107が提供するサービスを利用するユーザが使用する端末装置である。   The client PC 104 is a terminal device used by a user who uses a service provided by the web server 107.

LAN(Local Area Network)105は、プロキシサーバ101及びクライアントPC104をデータ通信可能に相互に接続させるものである。広域ネットワーク106は、インターネット等の広域ネットワークを示す。   A LAN (Local Area Network) 105 connects the proxy server 101 and the client PC 104 to each other so that data communication is possible. The wide area network 106 indicates a wide area network such as the Internet.

ウェブサーバ107は、様々なサービスを提供するウェブサーバを表す。   The web server 107 represents a web server that provides various services.

図2は、プロキシサーバ101のハードウェア構成を示すブロック図である。   FIG. 2 is a block diagram illustrating a hardware configuration of the proxy server 101.

図2において、201はCPUで、RAM202やROM203に記憶されているプログラムやデータを用いてプロキシサーバ101全体の制御を行うとともに、プロキシサーバ101が行う後述の各処理を実行する。   In FIG. 2, reference numeral 201 denotes a CPU that controls the proxy server 101 as a whole using programs and data stored in a RAM 202 and a ROM 203, and executes each process to be described later performed by the proxy server 101.

202はRAMで、HDD(ハードディスクドライブ)204や記録媒体ドライブ206からロードされたプログラムやデータ、ネットワークI/F(インターフェース)205を介して他の機器から受信したプログラムやデータ等を一時的に記憶するためのエリアや、CPU201が各種の処理を実行する際に用いるワークエリア等、各種のエリアを適宜提供することができる。   A RAM 202 temporarily stores programs and data loaded from the HDD (hard disk drive) 204 and the recording medium drive 206 and programs and data received from other devices via the network I / F (interface) 205. Various areas such as an area to be used and a work area used when the CPU 201 executes various processes can be provided as appropriate.

203はROMで、プロキシサーバ101の設定データや、ブートプログラム等を記憶する。   A ROM 203 stores setting data of the proxy server 101, a boot program, and the like.

204はHDDで、OS(オペレーティングシステム)や、プロキシサーバ101が行う後述の各処理をCPU201に実行させるためのプログラムやデータ等を保存するものであり、これらはCPU201による制御に従って適宜RAM202にロードされ、CPU201の処理対象となる。   Reference numeral 204 denotes an HDD, which stores an OS (Operating System) and programs and data for causing the CPU 201 to execute processes described later performed by the proxy server 101, and these are loaded into the RAM 202 as appropriate under the control of the CPU 201. The CPU 201 is a processing target.

205はネットワークI/Fで、プロキシサーバ101を上記LAN105、広域ネットワーク106に接続させるためのものであり、プロキシサーバ101はこのネットワークI/F205を介してLAN105や広域ネットワーク106に接続されている各装置とのデータ通信を行う。   Reference numeral 205 denotes a network I / F for connecting the proxy server 101 to the LAN 105 and the wide area network 106. The proxy server 101 is connected to the LAN 105 and the wide area network 106 via the network I / F 205. Perform data communication with the device.

206は記録媒体ドライブで、CD−ROM、CD−R/RW、DVD−ROM、DVD−R/RW、DVD−RAM等の記録媒体に記録されているプログラムやデータを読み出し、RAM202やHDD204に出力する。なお、HDD204が保持しているデータのうちの一部をこれら記録媒体に記憶させておいても良い。   Reference numeral 206 denotes a recording medium drive that reads programs and data recorded on a recording medium such as a CD-ROM, CD-R / RW, DVD-ROM, DVD-R / RW, and DVD-RAM, and outputs them to the RAM 202 and HDD 204. To do. A part of the data held by the HDD 204 may be stored in these recording media.

207はキーボード、208はマウスやジョイスティック等により構成されているポインティングデバイスで、プロキシサーバ101の操作者が操作することで、各種の指示をCPU201に対して入力する入力部として機能する。
209は表示部で、CRTや液晶画面などにより構成されており、CPU201による処理結果を画像や文字などで表示する。
Reference numeral 207 denotes a keyboard, and 208 denotes a pointing device configured by a mouse, a joystick, or the like, and functions as an input unit that inputs various instructions to the CPU 201 when operated by an operator of the proxy server 101.
A display unit 209 includes a CRT, a liquid crystal screen, and the like, and displays a processing result by the CPU 201 as an image or a character.

210は外部機器接続I/Fで、周辺機器をプロキシサーバ101に接続させるためものポートである。プロキシサーバ101は、この外部機器接続I/F210を介して、周辺機器とのデータ通信を行う。外部機器接続I/F210は、USBやIEEE1394等により構成されており、通常複数の外部機器接続I/F210を有する。周辺機器との接続形態は有線/無線を問わない。   An external device connection I / F 210 is a port for connecting peripheral devices to the proxy server 101. The proxy server 101 performs data communication with peripheral devices via the external device connection I / F 210. The external device connection I / F 210 is configured by USB, IEEE 1394, or the like, and usually has a plurality of external device connection I / Fs 210. The connection form with the peripheral device may be wired or wireless.

211はバスで、上述の各部201〜210を接続する。   Reference numeral 211 denotes a bus that connects the above-described units 201 to 210.

なお、プロキシサーバ101のハードウェア構成は、図2に示した構成を有するとして説明するが、必ずしも同図の構成を有することに限定するものではなく、プロキシサーバ101が行う後述の各種処理を実行可能であればプロキシサーバ101の構成は適宜変更しても良い。   The hardware configuration of the proxy server 101 will be described as having the configuration shown in FIG. 2, but is not necessarily limited to having the configuration shown in FIG. 2, and various processes described below performed by the proxy server 101 are executed. If possible, the configuration of the proxy server 101 may be changed as appropriate.

また、クライアントPC104、ウェブサーバ107のハードウェア構成も、これらには一般的なコンピュータを適用するので、周知の如く、概ね図2に示した構成を有する。   Also, the hardware configuration of the client PC 104 and the web server 107 is generally the same as that shown in FIG. 2 because a general computer is applied thereto.

図3は、プロキシサーバ101の機能構成を示す図である。   FIG. 3 is a diagram illustrating a functional configuration of the proxy server 101.

図3に示すように、プロキシサーバ101は、ルール受付手段301、ルール記録手段302、通信中継制御手段303、通信許可/禁止応答送信手段304を備えている。   As shown in FIG. 3, the proxy server 101 includes a rule receiving unit 301, a rule recording unit 302, a communication relay control unit 303, and a communication permission / prohibition response transmission unit 304.

ルール受付手段301は、クライアントPC104とウェブサーバ107の間で行われる通信の許可/禁止を判断するためのルールの入力を受け付ける。ルール記録手段302は、ルール受付手段301で受け付けたルール(詳細は後述する図9)をルールDB102に登録する。   The rule receiving unit 301 receives an input of a rule for determining permission / prohibition of communication performed between the client PC 104 and the web server 107. The rule recording unit 302 registers the rule received by the rule receiving unit 301 (details will be described later with reference to FIG. 9) in the rule DB.

URLDB103は、カテゴリごとにウェブサーバー107のリソースを表すURLを集めたデータベースであり、クライアントPC104からリクエストされたURLがどのカテゴリに属するかを判定するために使用される。   The URL DB 103 is a database in which URLs representing resources of the web server 107 are collected for each category, and is used to determine which category the URL requested from the client PC 104 belongs to.

通信中継制御手段303は、クライアントPC104とウェブサーバ107との間で行われる通信の中継制御を行う。即ちクライアントPC104から送信されたリクエストおよびウェブサーバ107から返信されるレスポンスを解析し、それらに含まれる詳細情報とリクエストの送信先であるウェブサーバ107のリソースを表すURLをURLDB103と照らし合わせて得られるカテゴリ情報がルールDB102に記録されたルールに適合するか判定し、その結果により通信の中継制御を行う。   The communication relay control unit 303 performs relay control of communication performed between the client PC 104 and the web server 107. That is, the request transmitted from the client PC 104 and the response returned from the web server 107 are analyzed, and the detailed information included in the request and the URL representing the resource of the web server 107 that is the transmission destination of the request are compared with the URL DB 103. It is determined whether the category information conforms to the rule recorded in the rule DB 102, and communication relay control is performed based on the result.

通信許可/禁止応答送信手段304は、通信中継制御手段303で通信を許可した場合は、リクエストを送信したクライアントPC103に対してウェブサーバ107からのレスポンスを中継する、あるいは禁止した場合はクライアントPC103に対して拒否した旨の通知を行う。   The communication permission / prohibition response transmission unit 304 relays the response from the web server 107 to the client PC 103 that transmitted the request when the communication relay control unit 303 permits communication, or when the communication relay control unit 303 prohibits communication, Notification of rejection is made.

なお、プロキシサーバ101のHDD204には、ルール受付手段301、ルール記録手段302、通信中継制御手段303、通信許可/禁止応答送信手段304としてプロキシサーバを制御させるためのプログラムが記録されている。そして、これらのプログラムをプロキシサーバ101のCPU201がRAM202にロードして実行することにより上記各手段301〜304が実現される。   Note that the HDD 204 of the proxy server 101 stores a program for controlling the proxy server as the rule receiving unit 301, the rule recording unit 302, the communication relay control unit 303, and the communication permission / prohibition response transmission unit 304. The CPUs 201 of the proxy server 101 load these programs into the RAM 202 and execute them, so that the above means 301 to 304 are realized.

次に、フローチャートを参照して、プロキシサーバ101のCPU201により実行される処理について説明する。   Next, processing executed by the CPU 201 of the proxy server 101 will be described with reference to a flowchart.

図4は、本発明における第1の制御処理の一例を示すフローチャートであって、プロキシサーバ101のCPU201により実行される全体的な処理を示すフローチャートである。   FIG. 4 is a flowchart showing an example of the first control process in the present invention, and is a flowchart showing the overall process executed by the CPU 201 of the proxy server 101.

なお、このフローチャートの処理はプロキシサーバ101のCPU201がHDD204に格納されるプログラムをRAM202にロードして実行することにより実現される。   Note that the processing of this flowchart is realized by the CPU 201 of the proxy server 101 loading a program stored in the HDD 204 into the RAM 202 and executing it.

まず、プロキシサーバ101のCPU201は、クライアントPC104から送信されるルールの設定要求を、クライアントPC104から受け付けたか否かを判断する(ステップS401)。そして、プロキシサーバ101のCPU201は、ルールの設定要求を受信したと判断した場合には(ステップS401でYES)、ルール設定処理を行う(ステップS402)。
ステップS402のルール設定処理の詳細処理は、図5を用いて後述する。
次に、プロキシサーバ101のCPU201は、ステップS402のルール設定処理が終了すると、処理をステップS403に移行する。
First, the CPU 201 of the proxy server 101 determines whether a rule setting request transmitted from the client PC 104 has been received from the client PC 104 (step S401). If the CPU 201 of the proxy server 101 determines that a rule setting request has been received (YES in step S401), it performs rule setting processing (step S402).
Detailed processing of the rule setting processing in step S402 will be described later with reference to FIG.
Next, when the rule setting process in step S402 ends, the CPU 201 of the proxy server 101 moves the process to step S403.

また、プロキシサーバ101のCPU201は、ステップS401において、クライアントPC104からルールの設定要求を受信していないと判定した場合(NO)、処理をステップS403に移行する。   If the CPU 201 of the proxy server 101 determines in step S401 that a rule setting request has not been received from the client PC 104 (NO), the process proceeds to step S403.

プロキシサーバ101のCPU201は、クライアントPC104から送信される通信中継の要求を、クライアントPC104から受け付けたか否かを判定する(ステップS403)。   The CPU 201 of the proxy server 101 determines whether a communication relay request transmitted from the client PC 104 has been received from the client PC 104 (step S403).

そして、プロキシサーバ101のCPU201は、クライアントPC104から通信中継要求を受信したと判定した場合(ステップS403でYES)、通信中継制御処理を行う(ステップS404)。
ステップS404の通信中継制御処理の詳細処理は、図10を用いて後述する。
そして、プロキシサーバ101のCPU201は、ステップS404の通信中継制御処理が終了すると、処理をステップS405に移行する。
If the CPU 201 of the proxy server 101 determines that a communication relay request has been received from the client PC 104 (YES in step S403), it performs a communication relay control process (step S404).
Detailed processing of the communication relay control processing in step S404 will be described later with reference to FIG.
Then, when the communication relay control process in step S404 ends, the CPU 201 of the proxy server 101 shifts the process to step S405.

また、プロキシサーバ101のCPU201は、ステップS403において、クライアントPC104から通信中継要求を受信していないと判定した場合(NO)、処理をステップS405に移行する。   If the CPU 201 of the proxy server 101 determines in step S403 that a communication relay request has not been received from the client PC 104 (NO), the process proceeds to step S405.

プロキシサーバ101のCPU201は、ステップS405において、クライアントPC104からシステム終了指示を受けたか否かを判定する。そして、終了指示を受けていないと判定した場合には(ステップS405でNO)、処理をステップS401に戻す。   In step S405, the CPU 201 of the proxy server 101 determines whether a system termination instruction has been received from the client PC 104. If it is determined that an end instruction has not been received (NO in step S405), the process returns to step S401.

一方、プロキシサーバ101のCPU201は、クライアントPC104からシステム終了指示を受け付けたと判定した場合には(ステップS405でYES)、処理を終了する。   On the other hand, if the CPU 201 of the proxy server 101 determines that a system termination instruction has been received from the client PC 104 (YES in step S405), the process is terminated.

即ち、プロキシサーバ101のCPU201は、S401〜S404の処理を、クライアントPC104からシステム終了の指示を受けるまで(ステップS405でYESと判定されるまで)繰り返す。   In other words, the CPU 201 of the proxy server 101 repeats the processes of S401 to S404 until receiving an instruction to end the system from the client PC 104 (until YES is determined in step S405).

次に、図5を用いて、図4のステップS402に示したルール設定処理の詳細処理を説明する。   Next, the detailed process of the rule setting process shown in step S402 of FIG. 4 will be described using FIG.

図5は、本発明における第2の制御処理の一例を示すフローチャートであり、図4のステップS402のルール設定処理の詳細処理を示すフローチャートである。即ち、本処理は、プロキシサーバ101のCPU201によって行われる。   FIG. 5 is a flowchart showing an example of the second control process in the present invention, and is a flowchart showing the detailed process of the rule setting process in step S402 of FIG. That is, this process is performed by the CPU 201 of the proxy server 101.

なお、本処理を行う際に、プロキシサーバ101のCPU201は、ルール受付手段301及びルール記録手段302としてプロキシサーバ101を機能させるためのプログラムをHDD204からRAM202にロードし、そのプログラムの制御に基づいて以下に示す処理を行うこととなる。   When this processing is performed, the CPU 201 of the proxy server 101 loads a program for causing the proxy server 101 to function as the rule receiving unit 301 and the rule recording unit 302 from the HDD 204 to the RAM 202, and based on the control of the program. The following processing is performed.

まず、プロキシサーバ101のCPU201は、ルールの設定要求を送信したクライアントPC104に対して、図6に示すルール設定画面600を表示するための表示情報を生成し送信する(ステップS501)。   First, the CPU 201 of the proxy server 101 generates and transmits display information for displaying the rule setting screen 600 shown in FIG. 6 to the client PC 104 that has transmitted the rule setting request (step S501).

当該表示情報を受信したクライアントPC104のCPU201は、当該受信した表示情報に従って、クライアントPC104のディスプレイ装置(表示部)にルール設定画面600を表示する。   The CPU 201 of the client PC 104 that has received the display information displays the rule setting screen 600 on the display device (display unit) of the client PC 104 according to the received display information.

ステップS501で送信するルール設定画面600の表示情報は、図9に示すルールDB102に記憶されたリクエストルールテーブル9100、及びレスポンスルールテーブル9200を取得して、当該取得したデータを用いて生成される。   The display information of the rule setting screen 600 transmitted in step S501 is generated using the acquired data by acquiring the request rule table 9100 and the response rule table 9200 stored in the rule DB 102 shown in FIG.

すなわち、図6の例では、リクエストルールテーブル9100、及びレスポンスルールテーブル9200の各レコードのデータのうち、ID9101、ルール名9102、動作9111、ID9201、ルール名9202、動作9211のデータを、それぞれID611、ルール名612、動作613、ID621、ルール名622、動作623に表示するべく、表示情報を生成している。
ここで、図6を参照してルール設定画面600の構成について説明する。
That is, in the example of FIG. 6, among the data of each record of the request rule table 9100 and the response rule table 9200, the data of ID 9101, rule name 9102, operation 9111, ID 9201, rule name 9202, and operation 9211 are respectively ID611, Display information is generated to be displayed in the rule name 612, the operation 613, the ID 621, the rule name 622, and the operation 623.
Here, the configuration of the rule setting screen 600 will be described with reference to FIG.

図6は、ルール設定画面の一例を示す図である。図6に示すように、ルール設定画面600は、ルール種別(リクエストルール610、レスポンスルール620)毎に、表示部に表示される。   FIG. 6 is a diagram illustrating an example of the rule setting screen. As shown in FIG. 6, the rule setting screen 600 is displayed on the display unit for each rule type (request rule 610, response rule 620).

図6において、611及び621は、それぞれリクエストルールとレスポンスルールのIDの表示欄であって、リクエストルールとレスポンスルールのそれぞれを一意に示すIDが表示される。   In FIG. 6, reference numerals 611 and 621 denote display fields for request rule and response rule IDs, respectively, which display IDs uniquely indicating the request rule and the response rule.

なお、リクエストルール及びレスポンスルールは、それぞれ、上位のレコードのルールから順番に適用される。例えば、リクエストルールについては、「ID」が1のルールの次に、「ID」が2のルールが適用される。このように、上側のレコードのルールから順番に適用される。   The request rule and the response rule are applied in order from the rule of the higher level record. For example, for a request rule, a rule with “ID” of 2 is applied next to a rule with “ID” of 1. In this way, the rules are applied in order from the rule of the upper record.

612及び622は、それぞれリクエストルールとレスポンスルールのルール名の表示欄であって、リクエストルールとレスポンスルールそれぞれの各ルールに設定されているルール名が表示される。   Reference numerals 612 and 622 are display fields for the rule names of the request rule and the response rule, respectively. The rule names set in the respective rules of the request rule and the response rule are displayed.

613及び623は、それぞれリクエストルールとレスポンスルールの動作の表示欄である。すなわち、613には、リクエストルールに適合したリクエストのデータの中継を許可するか禁止するかの設定が表示される。また、623には、レスポンスルールに適合したレスポンスのデータの中継を許可するか禁止するかの設定が表示される。   Reference numerals 613 and 623 are display columns for the operation of the request rule and the response rule, respectively. In other words, 613 displays a setting for permitting or prohibiting relaying of request data conforming to the request rule. Also, 623 displays a setting of whether to permit or prohibit relaying of response data that conforms to the response rule.

614、624は、それぞれリクエストルール、レスポンスルールの編集を受け付けるための編集ボタンである。   Reference numerals 614 and 624 denote edit buttons for accepting edits of request rules and response rules, respectively.

リクエストルールを編集したい場合は、編集したいリクエストルールのレコードの編集ボタン614を、押下することにより、当該リクエストルールを編集することが出来る。   When a request rule is to be edited, the request rule can be edited by pressing the edit button 614 of the record of the request rule to be edited.

また、レスポンスルールを編集したい場合は、編集したいレスポンスルールのレコードの編集ボタン624を押下することにより、当該レスポンスルールを編集することが出来る。
615、625は、それぞれ、リクエストルール、レスポンスルールの削除を受け付けるための削除ボタンである。
When a response rule is to be edited, the response rule can be edited by pressing an edit button 624 for the record of the response rule to be edited.
Reference numerals 615 and 625 denote delete buttons for accepting deletion of request rules and response rules, respectively.

リクエストルールを削除したい場合は、当該削除したいリクエストルールのレコードの削除ボタン615を押下することにより、当該リクエストルールを削除することが出来る。   When deleting a request rule, the request rule can be deleted by pressing a delete button 615 of the record of the request rule to be deleted.

また、レスポンスルールを削除したい場合は、当該削除したいレスポンスルールのレコードの削除ボタン625を押下することにより、当該レスポンスルールを削除することが出来る。   When a response rule is to be deleted, the response rule can be deleted by pressing a delete button 625 of the record of the response rule to be deleted.

616、616は、それぞれ、リクエストルール、レスポンスルールを適用する順番(すなわち、ルールのレコードが表示される610/620のレコードの配置順)を変更するためのボタンである。   Reference numerals 616 and 616 denote buttons for changing the order in which the request rule and the response rule are applied (that is, the arrangement order of the 610/620 records in which the rule records are displayed).

すなわち、リクエストルールを適用する順番を変更したい場合は、移動ボタン616を押下することにより、リクエストルールの移動画面がクライアントPC104の表示部に表示され、当該移動画面を用いて、リクエストルールを適用する順番を変更することが出来る。   That is, to change the order in which the request rules are applied, by pressing the move button 616, the request rule move screen is displayed on the display unit of the client PC 104, and the request rule is applied using the move screen. You can change the order.

また、レスポンスルールを適用する順番を変更したい場合は、移動ボタン626を押下することにより、レスポンスルールの移動画面がクライアントPC104の表示部に表示され、当該移動画面を用いて、レスポンスルールを適用する順番を変更することが出来る。   If the order of applying the response rules is to be changed, the response rule moving screen is displayed on the display unit of the client PC 104 by pressing the move button 626, and the response rules are applied using the moving screen. You can change the order.

また、617、627は、それぞれ、リクエストルールを追加するためのボタン、レスポンスルールを追加するためのボタンである。   Reference numerals 617 and 627 denote a button for adding a request rule and a button for adding a response rule, respectively.

リクエストルールを追加したい場合は追加ボタン617を、レスポンスルールを追加したい場合は追加ボタン627を押下するとそれぞれのルールを追加することができる。
以下、図5のフローチャートの説明に戻る。
Each rule can be added by pressing an add button 617 to add a request rule, or an add button 627 to add a response rule.
Returning to the flowchart of FIG.

クライアントPC104のCPU201は、ステップS501で送信された表示情報を受信し、当該受信した表示情報に従って、表示部にルール設定画面600を表示する。   The CPU 201 of the client PC 104 receives the display information transmitted in step S501, and displays the rule setting screen 600 on the display unit according to the received display information.

そして、管理者により、編集ボタン614、削除ボタン615、移動ボタン616、追加ボタン617、編集ボタン624、削除ボタン625、移動ボタン626、追加ボタン627のいずれかのボタンが押下されると、クライアントPC104のCPU201は、当該押下されたボタンに対応する要求をプロキシサーバ101に送信する。   When the administrator presses any one of the edit button 614, the delete button 615, the move button 616, the add button 617, the edit button 624, the delete button 625, the move button 626, and the add button 627, the client PC 104 The CPU 201 transmits a request corresponding to the pressed button to the proxy server 101.

具体的には、管理者により、編集ボタン614、追加ボタン617のいずれかのボタンが押下されると、クライアントPC104のCPU201は、リクエストルールの詳細設定要求をプロキシサーバ101に送信する。   Specifically, when the administrator presses one of the edit button 614 and the add button 617, the CPU 201 of the client PC 104 transmits a request rule detailed setting request to the proxy server 101.

また、管理者により、移動ボタン616が押下されると、クライアントPC104のCPU201は、リクエストルールの移動要求をプロキシサーバ101に送信する。   Also, when the move button 616 is pressed by the administrator, the CPU 201 of the client PC 104 transmits a request rule move request to the proxy server 101.

また、管理者により、編集ボタン624、追加ボタン627のいずれかのボタンが押下されると、クライアントPC104のCPU201は、レスポンスルールの詳細設定要求をプロキシサーバ101に送信する。   When the administrator presses any one of the edit button 624 and the add button 627, the CPU 201 of the client PC 104 transmits a response rule detailed setting request to the proxy server 101.

また、管理者により、移動ボタン626のボタンが押下されると、クライアントPC104のCPU201は、レスポンスルールの移動要求をプロキシサーバ101に送信する。   When the administrator presses the move button 626, the CPU 201 of the client PC 104 transmits a response rule move request to the proxy server 101.

なお、管理者により、削除ボタン615、削除ボタン625のいずれかのボタンが押下されると、クライアントPC104のCPU201は、当該押下された削除ボタンのレコードのルールをルールDB102から削除するための削除要求をプロキシサーバ101に送信する。そして、当該削除要求を受信したプロキシサーバ101のCPU201は、当該削除要求されているルールをルールDB102から削除する。   When the administrator presses any one of the delete button 615 and the delete button 625, the CPU 201 of the client PC 104 deletes the record rule of the pressed delete button from the rule DB 102. Is transmitted to the proxy server 101. Then, the CPU 201 of the proxy server 101 that has received the deletion request deletes the rule requested to be deleted from the rule DB 102.

次に、プロキシサーバ101のCPU201は、ステップS502において、クライアントPC104からのリクエストルールの詳細設定要求を受け付けたか否かを判定する。ここでの詳細設定要求は、クライアントPCのディスプレイ上に表示されているルール設定画面600の追加ボタン617もしくは編集ボタン614が押下された場合に発行されるものである。   Next, in step S502, the CPU 201 of the proxy server 101 determines whether a request rule detail setting request from the client PC 104 has been received. The detailed setting request here is issued when the add button 617 or the edit button 614 of the rule setting screen 600 displayed on the display of the client PC is pressed.

具体的に説明すると、クライアントPC104のCPU201は、管理者により追加ボタン617が押下された場合には、新規のリクエストルールの詳細設定要求を送信し、管理者により編集ボタン614が押下された場合には、すでにリクエストルールテーブル9100に登録されている、当該押下された編集ボタン614のレコードに対応するリクエストルールの変更要求を含むリクエストルールの詳細設定要求を送信する。   Specifically, the CPU 201 of the client PC 104 transmits a detailed request request for a new request rule when the add button 617 is pressed by the administrator, and when the edit button 614 is pressed by the administrator. Transmits a request rule detail setting request including a request rule change request corresponding to the record of the pressed edit button 614 already registered in the request rule table 9100.

そして、プロキシサーバ101のCPU201は、クライアントPC104から、リクエストルールの詳細設定要求を受け付けたと判断した場合には(ステップS502でYES)、図7に示すリクエストルール詳細画面700を表示するための表示情報を生成し、詳細設定要求を送信してきたクライアントPC104に対して送信する(ステップS503)。   If the CPU 201 of the proxy server 101 determines that a request rule detail setting request has been received from the client PC 104 (YES in step S502), the display information for displaying the request rule detail screen 700 shown in FIG. Is transmitted to the client PC 104 that has transmitted the detailed setting request (step S503).

一方、プロキシサーバ101のCPU201は、クライアントPC104から、リクエストルールの詳細設定要求を受け付けていないと判断した場合には(ステップS502でNO)、処理をステップS504に移行する。   On the other hand, if the CPU 201 of the proxy server 101 determines that a request rule detail setting request has not been received from the client PC 104 (NO in step S502), the process proceeds to step S504.

ここで、プロキシサーバ101のCPU201は、管理者により編集ボタン614が押下され、リクエストルールの変更要求であるリクエストルールの詳細設定要求をクライアントPC104から受信したと判定した場合は、当該押下された編集ボタン614のレコードのルールIDが一致するリクエストルールをリクエストルールテーブル9100から取得し、当該取得したリクエストルールが設定されたリクエストルール詳細画面700の表示情報を生成し、当該クライアントPC104に送信する。   If the CPU 201 of the proxy server 101 determines that the administrator has pressed the edit button 614 and received a request rule detail setting request, which is a request rule change request, from the client PC 104, the pressed edit A request rule whose rule ID of the record of the button 614 matches is acquired from the request rule table 9100, display information of the request rule details screen 700 in which the acquired request rule is set is generated, and transmitted to the client PC 104.

また、プロキシサーバ101のCPU201は、管理者により追加ボタン617が押下され、新規のリクエストルールの詳細設定要求をクライアントPC104から受信したと判定された場合は、新規のリクエストルールの入力を受け付けるため、管理者により選択されていないリクエストルール詳細画面700(図7)の表示情報を生成し、当該クライアントPC104に送信する。
以下に、図7のリクエストルール詳細画面700について説明する。
Further, the CPU 201 of the proxy server 101 receives an input of a new request rule when the administrator presses the add button 617 and determines that a detailed request request for a new request rule has been received from the client PC 104. Display information of the request rule detail screen 700 (FIG. 7) not selected by the administrator is generated and transmitted to the client PC 104.
The request rule details screen 700 in FIG. 7 will be described below.

図7において、701はルールの種類を表す表示欄であって、リクエストルールの詳細画面であることを表すため、リクエストルールと表示する。尚、レスポンスルール詳細画面では、この表示欄にレスポンスルールと表示する。   In FIG. 7, reference numeral 701 denotes a display field indicating the type of rule, which is displayed as a request rule in order to indicate that it is a request rule details screen. In the response rule details screen, the response rule is displayed in this display field.

図7において、702はリクエストルールのID表示欄であって、リクエストルールを一意に示すIDを表示する。このIDは自動的に付与しても、ユーザの入力部からの入力指示に基づいて設定しても(リクエストルール内での重複は許さない)構わない。703はルール名入力欄であって、当該リクエストルール名の入力を受け付ける。   In FIG. 7, reference numeral 702 denotes a request rule ID display field, which displays an ID uniquely indicating the request rule. This ID may be automatically given or set based on an input instruction from the user input unit (duplication within the request rule is not allowed). Reference numeral 703 denotes a rule name input field that accepts input of the request rule name.

704は、URLを選択するためのラジオボタンであり、706は、URLで特定されるWEBサイト、又はWEBページのカテゴリを選択するためのラジオボタンである。   Reference numeral 704 denotes a radio button for selecting a URL, and reference numeral 706 denotes a radio button for selecting a category of a WEB site or a WEB page specified by the URL.

URL条件では、特定のURLを指定するか(URLラジオボタン704を選択する)若しくはカテゴリを指定するか(カテゴリラジオボタン706を選択する)が選択可能である。そしてURLラジオボタン704が選択された場合にはURL入力欄705への入力が、カテゴリラジオボタン706が選択された場合にはカテゴリ選択セレクトボックス707によるカテゴリの選択が可能である。
なお、URL入力欄705では区切り文字で区切って複数のURLを、カテゴリ選択ボックス707では同時に複数のカテゴリを指定することが可能である。
本実施例では、URL条件にURL指定もしくはカテゴリ指定のどちらかによる設定を行うことになっているが、双方を同時に設定させても勿論かまわない。
In the URL condition, it is possible to select whether to specify a specific URL (select the URL radio button 704) or specify a category (select the category radio button 706). When the URL radio button 704 is selected, input to the URL input field 705 can be performed. When the category radio button 706 is selected, a category can be selected using the category selection select box 707.
In the URL input field 705, it is possible to specify a plurality of URLs separated by a delimiter, and to specify a plurality of categories simultaneously in the category selection box 707.
In this embodiment, the URL condition is set by either URL designation or category designation. However, it is of course possible to set both at the same time.

プロキシサーバ101のCPU201は、クライアントPC104からのリクエストの送信先のURLがこれらの条件に合致した場合に、URL条件が合致したと判定する。   The CPU 201 of the proxy server 101 determines that the URL condition matches when the URL of the transmission destination of the request from the client PC 104 matches these conditions.

708はリクエストデータに含まれるファイルのファイル形式を選択するためのセレクトボックスであって、同時に複数のファイル形式を選択することができる。   Reference numeral 708 denotes a select box for selecting a file format of a file included in the request data, and a plurality of file formats can be selected at the same time.

709は、リクエストデータに含まれるファイルのファイルサイズの入力欄である。   Reference numeral 709 denotes an input field for the file size of the file included in the request data.

710は、リクエストデータに含まれるファイルのファイルサイズが709で指定したサイズ以上/以下を選択するラジオボタンである。ファイルのサイズが709で指定したサイズ以上の場合にルールに合致させたい場合は「以上」を、ファイルのサイズが709で指定したサイズ以下の場合にルールに合致させたい場合は「以下」をユーザが指定する。   Reference numeral 710 denotes a radio button for selecting whether the file size of the file included in the request data is greater than or less than the size specified in 709. If the file size is larger than the size specified in 709, if you want to match the rule, select “more”. If you want the file size to be less than the size specified in 709, select “less” if you want to match the rule. Is specified.

711はリクエストデータに含まれるファイルのファイル形式と、当該ファイルに付与されている拡張子が一致する/しないを指定するラジオボタンである。ファイル形式と拡張子が一致する場合にルールに合致させたい場合は「する」を、ファイル形式と拡張子が一致しない場合にルールに合致させたい場合は「しない」をユーザが選択する。   Reference numeral 711 denotes a radio button for designating whether or not the file format of the file included in the request data matches the extension assigned to the file. When the file format and the extension match, the user selects “Yes” to match the rule, and when the file format does not match the extension, the user selects “No”.

712は、キーワード条件の入力欄である。リクエストデータに含まれるファイル、及びリクエストデータに含まれるファイル以外のフィールド内のテキスト情報と照合するキーワードを入力する。   Reference numeral 712 denotes a keyword condition input field. A keyword to be matched with a file included in the request data and text information in a field other than the file included in the request data is input.

キーワード入力欄には複数のキーワードを入力することが可能であり、またそれらの結合条件(AND条件:例えば「&」で設定、OR条件:例えば「|」で設定、結合優先度設定:例えば括弧「()」で設定)の設定も可能である。   It is possible to input a plurality of keywords in the keyword input field, and the combination condition (AND condition: set with “&”, for example, OR condition: set with “|”, for example, combination priority setting: for example parentheses It is also possible to set “()”.

そして上記条件に合致した場合に(URL条件、ファイル条件、キーワード条件をAND条件で結合)、クライアントPC104から送信されたリクエストの中継を許可/禁止のどちらかに設定するかを動作ラジオボタン713で選択し設定することができる。   When the above conditions are met (URL condition, file condition, and keyword condition are combined with AND condition), the operation radio button 713 determines whether relay of the request transmitted from the client PC 104 is set to permitted / prohibited. You can select and set.

また、URL条件、ファイル条件、キーワード条件の結合方法を入力するための領域をリクエストルール詳細画面700に更に設けて、その領域に結合条件を入力し、その結合条件を満たした場合にリクエストの中継を許可/禁止とするといった設定をするようにしても勿論かまわない。
また、714は、クライアントPC104を使用するユーザ名を入力する入力欄である。
In addition, an area for inputting a URL condition, file condition, and keyword condition combining method is further provided in the request rule detail screen 700. When the combining condition is input in the area and the combining condition is satisfied, the request is relayed. Of course, it is possible to set to allow / prohibit.
Reference numeral 714 denotes an input field for inputting a user name who uses the client PC 104.

入力欄714にユーザ名を設定することにより、入力欄714に入力されたユーザが使用しているクライアントPC104からのリクエストの中継を、どのような条件にて、許可するか、或いは禁止するかを設定することが可能となる。   By setting the user name in the input field 714, under what conditions the relay of the request from the client PC 104 used by the user input in the input field 714 is permitted or prohibited. It becomes possible to set.

なお、本実施例で入力欄714に入力されるユーザ名は、プロキシ認証を行うためのユーザ名として説明するが、送信元の端末、又は端末を操作するユーザが特定できる情報であれば、他の情報であっても構わない。   Note that the user name input in the input field 714 in this embodiment will be described as a user name for proxy authentication, but any other information can be used as long as it is information that can be specified by the transmission source terminal or the user operating the terminal. It may be the information.

クライアントPC104のCPU201は、管理者により、更新ボタン715が押下された場合、上記指定(設定)したリクエストルールの詳細(情報)の登録要求をプロキシサーバ101に対して行う。   When the administrator presses the update button 715, the CPU 201 of the client PC 104 makes a registration request for details (information) of the specified (set) request rule to the proxy server 101.

また、クライアントPC104のCPU201は、管理者によりキャンセルボタン716が押下された場合は、リクエストルールの詳細(情報)の登録要求を行わずに、リクエストルールの詳細設定処理を終了する。
以上が図7に示すリクエストルール詳細画面700の説明である。
以下、図5のフローチャートの説明に戻る。
Further, when the administrator presses the cancel button 716, the CPU 201 of the client PC 104 ends the request rule detail setting process without making a request rule detail (information) registration request.
The above is the description of the request rule details screen 700 shown in FIG.
Returning to the flowchart of FIG.

ステップS504において、プロキシサーバ101のCPU201は、クライアントPC104からリクエストルールの移動要求を受け付けたか否かを判断する。この要求は、クライアントPCのディスプレイ上に表示されているルール設定画面600の移動ボタン616が押下された場合に発行されるものである。   In step S <b> 504, the CPU 201 of the proxy server 101 determines whether a request rule movement request has been received from the client PC 104. This request is issued when the move button 616 of the rule setting screen 600 displayed on the display of the client PC is pressed.

そして、プロキシサーバ101のCPU201は、リクエストルールの移動要求を受け付けたと判断した場合には(ステップS504でYES)、図8に示すリクエストルール移動画面800を表示するための表示情報を生成し、リクエストルールの移動要求を送信してきたクライアントPC104に対して送信する(ステップS505)。   If the CPU 201 of the proxy server 101 determines that a request rule movement request has been received (YES in step S504), it generates display information for displaying the request rule movement screen 800 shown in FIG. The rule move request is transmitted to the client PC 104 that has transmitted the request (step S505).

一方、プロキシサーバ101のCPU201は、リクエストルールの移動要求を受け付けていないと判断した場合には(ステップS504でNO)、処理をステップS506に移行する。
ここでリクエストルール移動画面800について説明する。
On the other hand, if the CPU 201 of the proxy server 101 determines that it has not received a request rule movement request (NO in step S504), the process proceeds to step S506.
Here, the request rule movement screen 800 will be described.

図8は、リクエストルール移動画面800の一例を示す図である。   FIG. 8 is a diagram illustrating an example of the request rule movement screen 800.

リクエストに含まれるデータがリクエストルールに該当するかの判定は、ルール設定画面600のリクエストルール610の各レコードのルールの配置順に従って行われる。すなわち、リクエストルール610の上側のレコードのルールから順番に適用される。このように、本実施例では、リクエストルールの配置順がルールの適用順となっている。
そして、条件に合致したリクエストルールがあった場合には、そのリクエストルールに設定された動作を行う。
それゆえ、合致したリクエストルールより適用順の低いリクエストルールに該当するかの判定は行われない。
Whether the data included in the request corresponds to the request rule is determined according to the rule arrangement order of each record of the request rule 610 on the rule setting screen 600. That is, the rules are applied in order from the rule of the record above the request rule 610. Thus, in this embodiment, the order in which request rules are arranged is the order in which rules are applied.
If there is a request rule that matches the condition, the operation set in the request rule is performed.
Therefore, it is not determined whether the request rule falls under the application order lower than the matched request rule.

図8に示すリクエストルール移動画面800を用いて、リクエストルールの配置順を変更することが可能となり、リクエストルールを適用する順番を変更することが出来る。
The request rule moving screen 800 shown in FIG. 8 can be used to change the order in which request rules are arranged, and the order in which request rules are applied can be changed.

図8において、801はルールの種類を表す表示欄である。図8では、リクエストルールの移動画面であることを表すため、リクエストルールと表示する。なお、レスポンスルール移動画面では、この表示欄にレスポンスルールと表示する。   In FIG. 8, reference numeral 801 denotes a display field indicating the type of rule. In FIG. 8, a request rule is displayed to indicate that it is a request rule moving screen. In the response rule movement screen, the response rule is displayed in this display field.

802は、移動対象となるリクエストルールの行番号の表示欄である。すなわち、802は、何行目のリクエストルールを移動させるかが表示される表示欄である。   Reference numeral 802 denotes a display column for line numbers of request rules to be moved. In other words, reference numeral 802 denotes a display field for displaying which line of the request rule is to be moved.

803は、移動対象のリクエストルールを何行目のリクエストルールの上側、又は下側に移動させるかを入力させる入力欄である。   Reference numeral 803 denotes an input column for inputting a request rule to be moved to which line the request rule is to be moved above or below.

804は、移動対象のリクエストルールを803で指定した行番号のリクエストルールの上側に移動させるか、下に移動させるかを選択するセレクトボックスである。
ユーザは、803で指定した行番号のリクエストルールの上側に移動させたい場合は「上に」を、下側に移動させたい場合は「下に」を選択する。
Reference numeral 804 denotes a select box for selecting whether to move the request rule to be moved to the upper side or the lower side of the request rule with the line number specified in 803.
The user selects “up” if he / she wants to move to the upper side of the request rule of the line number designated in 803, and selects “down” if he / she wants to move it to the lower side.

そして、クライアントPC104のCPU201は、ユーザにより確定ボタン805が押下された場合、上記設定したリクエストルールの移動要求をプロキシサーバ101に対して行う。また、クライアントPC104のCPU201は、ユーザによりキャンセルボタン806が押下された場合は、リクエストルールの移動を実施せずに処理を終了する。
以下、図5のフローチャートの説明に戻る。
When the user presses the confirm button 805, the CPU 201 of the client PC 104 sends a request for moving the set request rule to the proxy server 101. In addition, when the cancel button 806 is pressed by the user, the CPU 201 of the client PC 104 ends the process without moving the request rule.
Returning to the flowchart of FIG.

次に、プロキシサーバ101のCPU201は、レスポンスルールの詳細設定要求をクライアントPC104から受け付けたか否かを判断する(ステップS506)。   Next, the CPU 201 of the proxy server 101 determines whether or not a detailed response rule setting request has been received from the client PC 104 (step S506).

この詳細設定要求は、クライアントPC104のディスプレイ上に表示されているルール設定画面600の追加ボタン627もしくは編集ボタン624が押下された場合に発行されるものである。   This detailed setting request is issued when the add button 627 or the edit button 624 of the rule setting screen 600 displayed on the display of the client PC 104 is pressed.

クライアントPC104のCPU201は、管理者により追加ボタン627が押下された場合には、新規のレスポンスルールの詳細設定要求を送信し、管理者により編集ボタン624が押下された場合には、すでにレスポンスルールテーブル9200に登録されている、当該押下された編集ボタン624のレコードに対応するレスポンスルールの変更要求を含むレスポンスルールの詳細設定要求を送信する。   When the add button 627 is pressed by the administrator, the CPU 201 of the client PC 104 transmits a new response rule detail setting request, and when the edit button 624 is pressed by the administrator, the response rule table has already been sent. A detailed response rule setting request including a response rule change request corresponding to the record of the pressed edit button 624 registered in 9200 is transmitted.

そして、プロキシサーバ101のCPU201は、レスポンスルールの詳細設定要求をクライアントPC104から受け付けたと判断した場合には(ステップS506でYES)、レスポンスルール詳細画面を表示するための表示情報を生成し、当該詳細設定要求を送信してきたクライアントPC104に対して送信する(ステップS507)。   If the CPU 201 of the proxy server 101 determines that a response rule detail setting request has been received from the client PC 104 (YES in step S506), the CPU 201 generates display information for displaying the response rule detail screen. The setting request is transmitted to the client PC 104 that has transmitted the request (step S507).

一方、プロキシサーバ101のCPU201は、レスポンスルールの詳細設定要求をクライアントPC104から受け付けていないと判断した場合には(ステップS506でNO)、処理をステップS508に移行する。   On the other hand, if the CPU 201 of the proxy server 101 determines that a response rule detail setting request has not been received from the client PC 104 (NO in step S506), the process proceeds to step S508.

ここで、レスポンスルール詳細画面は、図7に示すリクエストルール詳細画面700と同様の設定項目を有している画面である。レスポンスルール詳細画面がクエストルール詳細画面700と異なる点は、リクエストルール詳細画面700の「種類」の表示欄701に、「レスポンスルール」と表示される点である。
ステップS506及びステップS507での処理について以下に詳しく説明する。
Here, the response rule detail screen is a screen having the same setting items as the request rule detail screen 700 shown in FIG. The response rule detail screen is different from the quest rule detail screen 700 in that “response rule” is displayed in the “type” display field 701 of the request rule detail screen 700.
The processes in step S506 and step S507 will be described in detail below.

プロキシサーバ101のCPU201は、管理者により編集ボタン624が押下され、レスポンスルールの変更要求を含むレスポンスルールの詳細設定要求をクライアントPC104から受信したと判定した場合は、当該押下された編集ボタン624のレコードのルールIDが一致するレスポンスルールをレスポンスルールテーブル9200から取得し、当該取得したレスポンスルールが設定されたレスポンスルール詳細画面の表示情報を生成し、当該クライアントPC104に送信する。   When the CPU 201 of the proxy server 101 determines that the edit button 624 has been pressed by the administrator and a response rule detail setting request including a response rule change request has been received from the client PC 104, the CPU 201 of the proxy server 101 A response rule having the same record rule ID is acquired from the response rule table 9200, display information of a response rule detail screen in which the acquired response rule is set is generated, and transmitted to the client PC 104.

また、プロキシサーバ101のCPU201は、管理者により追加ボタン627が押下され、新規のレスポンスルールの詳細設定要求をクライアントPC104から受信したと判定された場合は、新規のレスポンスルールの入力を受け付けるため、管理者により選択されていないレスポンスルール詳細画面の表示情報を生成し、当該クライアントPC104に送信する。
次に、レスポンスルール詳細画面の説明を、図7のリクエストルール詳細画面を用いて説明する。
レスポンスルール詳細画面は、701に「レスポンスルール」と表示され、702には、レスポンスルールを一意に示すIDが表示される。
The CPU 201 of the proxy server 101 receives an input of a new response rule when the administrator presses the add button 627 and determines that a detailed setting request for a new response rule has been received from the client PC 104. Display information of the response rule detail screen not selected by the administrator is generated and transmitted to the client PC 104.
Next, the response rule details screen will be described using the request rule details screen of FIG.
In the response rule detail screen, “response rule” is displayed in 701, and an ID uniquely indicating the response rule is displayed in 702.

また、704は、URLを選択するためのラジオボタンであり、706は、URLで特定されるWEBサイト、又はWEBページのカテゴリを選択するためのラジオボタンである。   Reference numeral 704 denotes a radio button for selecting a URL, and reference numeral 706 denotes a radio button for selecting a category of a WEB site or a WEB page specified by the URL.

URL条件では、特定のURLを指定するか(URLラジオボタン704を選択する)若しくはカテゴリを指定するか(カテゴリラジオボタン706を選択する)を選択することが可能である。   In the URL condition, it is possible to select whether to specify a specific URL (select a URL radio button 704) or specify a category (select a category radio button 706).

そして、URLラジオボタン704が選択された場合にはURL入力欄705への入力が、カテゴリラジオボタン706が選択された場合にはカテゴリ選択セレクトボックス707によるカテゴリの選択が可能である。
なお、URL入力欄705では区切り文字で区切って複数のURLを、カテゴリ選択ボックス707では同時に複数のカテゴリを指定することが可能である。
本実施例では、URL条件にURL指定もしくはカテゴリ指定のどちらかによる設定を行うことになっているが、双方を同時に設定させても勿論かまわない。
When the URL radio button 704 is selected, input to the URL input field 705 can be performed. When the category radio button 706 is selected, a category can be selected using the category selection select box 707.
In the URL input field 705, it is possible to specify a plurality of URLs separated by a delimiter, and to specify a plurality of categories simultaneously in the category selection box 707.
In this embodiment, the URL condition is set by either URL designation or category designation. However, it is of course possible to set both at the same time.

プロキシサーバ101のCPU201は、レスポンスデータの送信元(ウェブサーバ107)のURLがこれらの条件に合致した場合に、URL条件が合致したと判定する。   When the URL of the response data transmission source (web server 107) matches these conditions, the CPU 201 of the proxy server 101 determines that the URL conditions match.

708は、レスポンスデータに含まれるファイルのファイル形式を選択するためのセレクトボックスであって、同時に複数のファイル形式を選択することができる。   Reference numeral 708 denotes a select box for selecting a file format of a file included in the response data, and a plurality of file formats can be selected at the same time.

709は、レスポンスデータに含まれるファイルのファイルサイズの入力欄である。   Reference numeral 709 denotes an input field for the file size of the file included in the response data.

710は、レスポンスデータに含まれるファイルのファイルサイズが709で指定したサイズ以上/以下を選択するラジオボタンである。ファイルのサイズが709で指定したサイズ以上の場合にルールに合致させたい場合は「以上」を、ファイルのサイズが709で指定したサイズ以下の場合にルールに合致させたい場合は「以下」をユーザが指定する。   Reference numeral 710 denotes a radio button for selecting whether the file size of the file included in the response data is greater than or less than the size specified in 709. If the file size is larger than the size specified in 709, if you want to match the rule, select “more”. If you want the file size to be less than the size specified in 709, select “less” if you want to match the rule. Is specified.

711はレスポンスデータに含まれるファイルのファイル形式と、当該ファイルに付与されている拡張子が一致する/しないを指定するラジオボタンである。ファイル形式と拡張子が一致する場合にルールに合致させたい場合は「する」を、ファイル形式と拡張子が一致しない場合にルールに合致させたい場合は「しない」をユーザが選択する。   Reference numeral 711 denotes a radio button for designating whether or not the file format of the file included in the response data matches the extension assigned to the file. When the file format and the extension match, the user selects “Yes” to match the rule, and when the file format does not match the extension, the user selects “No”.

712は、キーワード条件の入力欄である。レスポンスデータに含まれるファイル、及びレスポンスデータに含まれるファイル以外のフィールド内のテキスト情報と照合するキーワードを入力する。   Reference numeral 712 denotes a keyword condition input field. A keyword to be matched with a file included in the response data and text information in a field other than the file included in the response data is input.

キーワード入力欄には複数のキーワードを入力することが可能であり、またそれらの結合条件(AND条件:例えば「&」で設定、OR条件:例えば「|」で設定、結合優先度設定:例えば括弧「()」で設定)の設定も可能である。   It is possible to input a plurality of keywords in the keyword input field, and the combination condition (AND condition: set with “&”, for example, OR condition: set with “|”, for example, combination priority setting: for example parentheses It is also possible to set “()”.

そして、上記条件に合致した場合に(URL条件、ファイル条件、キーワード条件をAND条件で結合)、ウェブサーバ107から送信されたレスポンスデータの中継を許可/禁止のどちらかに設定するかを動作ラジオボタン713で選択し設定することができる。   If the above conditions are met (the URL condition, file condition, and keyword condition are combined with an AND condition), whether to set the relay of the response data transmitted from the web server 107 to either permitted / prohibited is an operation radio. A button 713 can be selected and set.

また、URL条件、ファイル条件、キーワード条件の結合方法を入力するための領域をレスポンスルール詳細画面700に更に設けて、その領域に結合条件を入力し、その結合条件を満たした場合に、リクエストの中継を許可/禁止とするといった設定をするようにしても勿論かまわない。
また、714は、クライアントPC104を使用するユーザ名を入力する入力欄である。
すなわち、714は、ウェブサーバ107から送信されるレスポンスデータの送信先を入力する入力欄である。
In addition, an area for inputting the URL condition, file condition, and keyword condition combining method is further provided in the response rule detail screen 700. When the combining condition is input in the area and the combining condition is satisfied, the request Of course, it may be set to permit / prohibit relaying.
Reference numeral 714 denotes an input field for inputting a user name who uses the client PC 104.
In other words, reference numeral 714 denotes an input field for inputting a transmission destination of response data transmitted from the web server 107.

このように、レスポンスルール詳細画面700の入力欄714にユーザ名を設定することにより、入力欄714に入力されたユーザが使用しているクライアントPC104に、ウェブサーバ107から送信されるレスポンスデータの中継を、どのような条件にて、許可するか、或いは禁止するかを設定することが可能となる。   As described above, by setting the user name in the input field 714 of the response rule detail screen 700, the response data transmitted from the web server 107 to the client PC 104 used by the user input in the input field 714 is relayed. It is possible to set under what conditions to permit or prohibit.

なお、本実施例で入力欄714に入力されるユーザ名は、プロキシ認証を行うためのユーザ名として説明するが、レスポンスデータの送信先の端末、又は該端末を操作するユーザを特定可能な情報であれば、他の情報であっても構わない。   Note that the user name input in the input field 714 in this embodiment will be described as a user name for proxy authentication, but information that can identify the terminal to which the response data is transmitted or the user who operates the terminal Any other information may be used.

クライアントPC104のCPU201は、管理者により、更新ボタン715が押下された場合、上記指定(設定)したレスポンスルールの詳細(情報)の登録要求をプロキシサーバ101に対して行う。   When the update button 715 is pressed by the administrator, the CPU 201 of the client PC 104 makes a registration request for details (information) of the specified (set) response rule to the proxy server 101.

また、クライアントPC104のCPU201は、管理者によりキャンセルボタン716が押下された場合は、レスポンスルールの詳細(情報)の登録要求を行わずに、レスポンスルールの詳細設定処理を終了する。
以上が、レスポンスルール詳細画面の説明である。
次に、図5の説明に戻る。
Further, when the administrator presses the cancel button 716, the CPU 201 of the client PC 104 ends the response rule detail setting process without making a response rule detail (information) registration request.
The above is the description of the response rule details screen.
Next, the description returns to FIG.

次に、プロキシサーバ101のCPU201は、ステップS508において、クライアントPC104からレスポンスルールの移動要求を受け付けたか否かを判断する。この要求は、クライアントPCのディスプレイ上に表示されているルール設定画面600の移動ボタン626が押下された場合に発行されるものである。   Next, in step S508, the CPU 201 of the proxy server 101 determines whether a response rule movement request has been received from the client PC 104. This request is issued when the move button 626 on the rule setting screen 600 displayed on the display of the client PC is pressed.

そして、プロキシサーバ101のCPU201は、レスポンスルールの移動要求を受け付けたと判断した場合には(ステップS508でYES)、レスポンスルール移動画面を表示するための表示情報を生成し、レスポンスルールの移動要求を送信してきたクライアントPC104に対して送信する(ステップS509)。   If the CPU 201 of the proxy server 101 determines that a response rule movement request has been received (YES in step S508), it generates display information for displaying the response rule movement screen, and issues a response rule movement request. The data is transmitted to the client PC 104 that has transmitted the message (step S509).

プロキシサーバ101のCPU201は、レスポンスルールの移動要求を受け付けていないと判断した場合には(ステップS508でNO)、処理をステップS510に移行する。   If the CPU 201 of the proxy server 101 determines that a response rule movement request has not been received (NO in step S508), the process proceeds to step S510.

なお、レスポンスルール移動画面は、図8に示すリクエストルール移動画面800と同様の項目から構成されている。それゆえ、レスポンスルール移動画面は、リクエストルール移動画面800の種類の表示欄801に、リクエストルールではなく、レスポンスルールと表示される画面である。   Note that the response rule movement screen includes the same items as the request rule movement screen 800 shown in FIG. Therefore, the response rule movement screen is a screen in which the response rule is displayed instead of the request rule in the type display field 801 of the request rule movement screen 800.

ウェブサーバ107から送信されるレスポンスデータがレスポンスルールに該当するかの判定は、ルール設定画面600のレスポンスルール620の各レコードのルールの配置順に従って行われる。   Whether the response data transmitted from the web server 107 corresponds to the response rule is determined according to the rule arrangement order of each record of the response rule 620 on the rule setting screen 600.

すなわち、レスポンスルール620の上側のレコードのルールから順番に適用される。このように、本実施例では、レスポンスルールの配置順がルールの適用順となっている。
そして、条件に合致したレスポンスルールがあった場合には、そのレスポンスルールに設定された動作を行う。
それゆえ、合致したレスポンスルールより適用順の低いレスポンスルールに該当するかの判定は行われない。
That is, the rules are applied in order from the rule of the record above the response rule 620. Thus, in the present embodiment, the order in which the response rules are arranged is the order in which the rules are applied.
If there is a response rule that matches the condition, the operation set in the response rule is performed.
Therefore, it is not determined whether the response rule is lower in the application order than the matched response rule.

図8に示すレスポンスルール移動画面を用いて、レスポンスルールの配置順を変更することが可能となり、レスポンスルールを適用する順番を変更することが出来る。
レスポンスルール移動画面について、図8を用いて説明する
図8では、レスポンスルールの移動画面であることを表すため、ルールの種類を表す表示欄801にレスポンスルールと表示する。
By using the response rule movement screen shown in FIG. 8, it is possible to change the order in which the response rules are arranged, and the order in which the response rules are applied can be changed.
The response rule movement screen will be described with reference to FIG. 8. In FIG. 8, a response rule is displayed in the display field 801 indicating the type of rule in order to indicate that it is a response rule movement screen.

802は、移動対象となるレスポンスルールの行番号の表示欄である。すなわち、802は、何行目のレスポンスルールを移動させるかが表示される表示欄である。   Reference numeral 802 denotes a display column for line numbers of response rules to be moved. That is, reference numeral 802 denotes a display field for displaying which line of the response rule is to be moved.

803は、移動対象のレスポンスルールを何行目のレスポンスルールの上側、又は下側に移動させるかを入力させる入力欄である。   Reference numeral 803 denotes an input field for inputting the line to which the response rule to be moved is moved above or below the response rule.

804は、移動対象のレスポンスルールを803で指定した行番号のレスポンスルールの上側に移動させるか、下に移動させるかを選択するセレクトボックスである。
ユーザは、803で指定した行番号のレスポンスルールの上側に移動させたい場合は「上に」を、下側に移動させたい場合は「下に」を選択する。
Reference numeral 804 denotes a select box for selecting whether to move the response rule to be moved to the upper side or the lower side of the response rule with the line number specified in 803.
The user selects “Up” when moving to the upper side of the response rule of the line number specified in 803, and “Down” when moving the response rule downward.

そして、クライアントPC104のCPU201は、ユーザにより確定ボタン805が押下された場合、上記設定したレスポンスルールの移動要求をプロキシサーバ101に対して行う。また、クライアントPC104のCPU201は、ユーザによりキャンセルボタン806が押下された場合は、レスポンスルールの移動を実施せずに処理を終了する。
以上のようにして、レスポンスルールについてもリクエストルールと同様に図8に示す移動画面によるルール表示順位(適用順)の変更が可能となる。
Then, when the user presses the confirm button 805, the CPU 201 of the client PC 104 sends a request for moving the set response rule to the proxy server 101. Further, when the user presses the cancel button 806, the CPU 201 of the client PC 104 ends the process without moving the response rule.
As described above, the response display rule can also be changed in the rule display order (application order) on the moving screen shown in FIG. 8 similarly to the request rule.

プロキシサーバ101のCPU201は、クライアントPC104から、リクエストルールの詳細(情報)の登録要求、リクエストルールの移動要求、レスポンスルールの詳細(情報)の登録要求、レスポンスルールの移動要求、削除要求のいずれかを受信したか否かを判定する(ステップS510)。   The CPU 201 of the proxy server 101 receives one of a request rule registration request (request) registration request, a request rule transfer request, a response rule details (information) registration request, a response rule transfer request, and a deletion request from the client PC 104. Is determined (step S510).

そして、プロキシサーバ101のCPU201は、ステップS510において、リクエストルールの詳細(情報)の登録要求、リクエストルールの移動要求、レスポンスルールの詳細(情報)の登録要求、レスポンスルールの移動要求、削除要求のいずれかを受信したと判断した場合には(ステップS510でYES)、処理をステップS511に移行する。   In step S510, the CPU 201 of the proxy server 101 sends a request request detail request (information) registration request, a request rule move request, a response rule detail (information) register request, a response rule move request, and a delete request request. If it is determined that either one has been received (YES in step S510), the process proceeds to step S511.

次に、プロキシサーバ101のCPU201は、クライアントPC104から受信した、リクエストルールの詳細(情報)の登録要求、リクエストルールの移動要求、レスポンスルールの詳細(情報)の登録要求、レスポンスルールの移動要求、削除要求に従って、ルールDB102に記憶されているルールテーブル(9100、9200)を更新(登録/削除)して記憶保存する(ステップS511)。
ここでルールDBについて、図9を参照して説明する。
Next, the CPU 201 of the proxy server 101 receives the request rule details (information) registration request, the request rule movement request, the response rule details (information) registration request, the response rule movement request received from the client PC 104. In accordance with the deletion request, the rule table (9100, 9200) stored in the rule DB 102 is updated (registered / deleted) and stored (step S511).
Here, the rule DB will be described with reference to FIG.

図9は、ルールDB102のデータ構成の一例を示す図である。   FIG. 9 is a diagram illustrating an example of a data configuration of the rule DB 102.

図9に示すように、ルールDB102には、クライアントPC104からウェブサーバ107に送信されるリクエストデータの中継制御に用いられるリクエストルールを記憶したリクエストルールテーブル9100と、当該リクエストに対してウェブサーバ107からクライアントPC104に送信されるレスポンスデータの中継制御に用いられるレスポンスルールを記憶したレスポンスルールテーブル9200とを備えている。   As shown in FIG. 9, in the rule DB 102, a request rule table 9100 storing request rules used for relay control of request data transmitted from the client PC 104 to the web server 107, and the web server 107 for the request. A response rule table 9200 storing response rules used for relay control of response data transmitted to the client PC 104.

図9において、9101および9201は、それぞれリクエストルールとレスポンスルールのIDを記録する列であって、リクエストルールとレスポンスルールのそれぞれを一意に示すIDが記録される。すなわち、9101、9201は、それぞれ、リクエストルール詳細画面(図7)の702のIDの値、レスポンスルール詳細画面の702のIDの値が記憶される。   In FIG. 9, 9101 and 9201 are columns for recording the IDs of the request rule and the response rule, respectively, and IDs uniquely indicating the request rule and the response rule are recorded. That is, 9101 and 9201 store the ID value 702 on the request rule detail screen (FIG. 7) and the ID value 702 on the response rule detail screen, respectively.

リクエストルール及びレスポンスルールは、それぞれのテーブルに記録されている順に適用される(上側のレコードのルールから順に適用される)。尚、リクエストルールとレスポンスルールの適用順を記録する列を追加して、その順番に従い、それぞれのルールを適用するように構成しても勿論構わない。   The request rule and the response rule are applied in the order recorded in the respective tables (the rule is applied in order from the rule of the upper record). Of course, it is possible to add a column for recording the application order of the request rule and the response rule, and apply each rule according to the order.

9102及び9202は、それぞれリクエストルールとレスポンスルールのルール名が記憶される列であって、各レコードのルールのルール名が記録される。すなわち、9102、9202には、それぞれリクエストルール詳細画面の703に入力されたルール名、レスポンスルール詳細画面の703に入力されたルール名が記憶される。   Reference numerals 9102 and 9202 denote columns in which the rule names of the request rule and the response rule are respectively stored, and the rule names of the rules of each record are recorded. That is, 9102 and 9202 store the rule name input to the request rule detail screen 703 and the rule name input to the response rule detail screen 703, respectively.

9103、9203には、それぞれ、リクエストルール詳細画面の714に入力されたデータ、レスポンスルール詳細画面の714に入力されたデータが記憶される。すなわち、9103、9203には、例えばクライアントPCを使用するユーザ名が記憶される。また、図7の入力欄714には、ユーザ名だけではなく、グループ名を入力するようにしてもよく、グループ名が入力された場合は、9103、9203にはグループ名が記憶されることになる。   9103 and 9203 store data input to the request rule detail screen 714 and data input to the response rule detail screen 714, respectively. That is, in 9103 and 9203, for example, the user name that uses the client PC is stored. Further, not only the user name but also a group name may be input in the input field 714 in FIG. 7. When a group name is input, the group name is stored in 9103 and 9203. Become.

9104及び9204は、それぞれリクエストルールとレスポンスルールのURLを記録する列である。すなわち、9104、9204には、それぞれ、リクエストルール詳細画面の705に入力されたURL、レスポンスルール詳細画面の705に入力されたURLが記憶される。   Reference numerals 9104 and 9204 denote columns for recording URLs of request rules and response rules, respectively. That is, 9104 and 9204 store the URL input in the request rule detail screen 705 and the URL input in the response rule detail screen 705, respectively.

9105及び9205は、それぞれリクエストルールとレスポンスルールのカテゴリを記録する列である。すなわち、9105、9205には、それぞれ、リクエストルール詳細画面の707で選択・入力されたカテゴリ、レスポンスルール詳細画面の707で選択・入力されたカテゴリが記憶される。   Reference numerals 9105 and 9205 denote columns for recording categories of request rules and response rules, respectively. That is, 9105 and 9205 store the category selected / input on the request rule detail screen 707 and the category selected / input on the response rule detail screen 707, respectively.

9106および9206は、それぞれリクエストルールとレスポンスルールのファイル形式を記録する列であって、それぞれ、1つ又は複数のファイル形式が記録可能である。すなわち、9106、9206には、それぞれ、リクエストルール詳細画面の708で選択・入力されたファイル形式、レスポンスルール詳細画面の708で選択・入力されたファイル形式が記憶される。   Reference numerals 9106 and 9206 denote columns for recording the file formats of the request rule and the response rule, respectively, and one or a plurality of file formats can be recorded respectively. That is, 9106 and 9206 store the file format selected / input on the request rule detail screen 708 and the file format selected / input on the response rule detail screen 708, respectively.

9107および9207は、それぞれリクエストルールとレスポンスルールのファイルサイズを記録する列である。すなわち、9107、9207には、それぞれ、リクエストルール詳細画面の709で入力されたファイルサイズ、レスポンスルール詳細画面の709で入力されたファイルサイズが記憶される。   Reference numerals 9107 and 9207 are columns for recording the file sizes of the request rule and the response rule, respectively. That is, 9107 and 9207 store the file size input in the request rule detail screen 709 and the file size input in the response rule detail screen 709, respectively.

9108および9208は、それぞれリクエストルールとレスポンスルールのファイルサイズの条件を記録する列であって、それぞれ9107および9207に記録したファイルサイズ以上の場合にルールに合致させるか、若しくは、9107および9207に記録したファイルサイズ以下の場合にルールに合致させるかの情報が記録される。   Reference numerals 9108 and 9208 are columns for recording the file size conditions of the request rule and the response rule, respectively. If the file size is larger than the file size recorded in 9107 and 9207, respectively, the rule is matched or recorded in 9107 and 9207. Information on whether to match the rule when the file size is smaller than the specified file size is recorded.

すなわち、9108、9208には、それぞれ、リクエストルール詳細画面の710で選択された条件(「以上」か「以下」かの条件)、レスポンスルール詳細画面の710で選択された条件(「以上」か「以下」かの条件)が記憶される。   That is, 9108 and 9208 respectively include the condition selected on the request rule detail screen 710 (“more than” or “less than”) and the condition selected on the response rule detail screen 710 (“above” or not). The condition “below” is stored.

9109および9209は、それぞれリクエストルールとレスポンスルールのファイル形式と拡張子の一致条件を記録する列であって、それぞれ9106、9206で指定したファイル形式に対して、ファイル形式と拡張子が一致するもしくは一致しない場合にルールに合致させるかの情報が記録される。   9109 and 9209 are columns for recording the matching conditions of the file format and the extension of the request rule and the response rule, respectively. The file format and the extension match the file format specified by 9106 and 9206, respectively. Information on whether to match the rule if it does not match is recorded.

すなわち、9109、9209には、それぞれ、リクエストルール詳細画面の711で選択された条件(ファイル形式と拡張子が一致「する」か「しない」かの条件)、レスポンスルール詳細画面の711で選択された条件(ファイル形式と拡張子が一致「する」か「しない」かの条件)が記憶される。   That is, 9109 and 9209 are selected on the request rule detail screen 711 (the condition whether the file format and extension match “Yes” or “No”) and the response rule detail screen 711, respectively. (The condition whether the file format and the extension match “Yes” or “No”) is stored.

9110および9210は、それぞれリクエストルールとレスポンスルールのキーワード条件を記録する列である。   9110 and 9210 are columns for recording the keyword conditions of the request rule and the response rule, respectively.

すなわち、9110、9210には、それぞれ、リクエストルール詳細画面の712で入力されたキーワード条件、レスポンスルール詳細画面の712で入力されたキーワード条件が記憶される。   That is, 9110 and 9210 store the keyword condition input on the request rule detail screen 712 and the keyword condition input on the response rule detail screen 712, respectively.

9111および9210は、それぞれリクエストルールとレスポンスルールの動作を記録する列であって、リクエストデータもしくはレスポンスデータに合致した場合に通信を許可するもしくは禁止するというプロキシサーバ101に行わせる動作を記録する。   9111 and 9210 are columns for recording the operation of the request rule and the response rule, respectively, and record the operation to be performed by the proxy server 101 that permits or prohibits communication when the request data or the response data is matched.

すなわち、9111、9211には、それぞれ、リクエストルール詳細画面の713で選択された動作、レスポンスルール詳細画面の713で選択された動作が記憶される。   That is, 9111 and 9211 store the operation selected on the request rule detail screen 713 and the operation selected on the response rule detail screen 713, respectively.

以上がルールDB102の構成例を表す図9の説明である。なお、図9では、リクエストルールとレスポンスルールを別々のテーブルとして管理する例を示したが、一つのテーブル内に記録し、どちらのルールであるかを識別するための列を追加して管理しても勿論構わない。
以下、図5のフローチャートの説明に戻る。
The above is description of FIG. 9 showing the structural example of rule DB102. Although FIG. 9 shows an example in which request rules and response rules are managed as separate tables, they are recorded in one table and managed by adding a column for identifying which rule. But of course.
Returning to the flowchart of FIG.

プロキシサーバ107のCPU201は、ステップS512において、ステップS511で更新されたルールDB102(図9)に記憶されたリクエストルールテーブル9100、及びレスポンスルールテーブル9200を取得して、当該取得したデータを用いて、ルール設定画面600を表示するための表示情報を生成し、クライアントPC104に該表示情報を送信する(ステップS512)。   In step S512, the CPU 201 of the proxy server 107 acquires the request rule table 9100 and the response rule table 9200 stored in the rule DB 102 (FIG. 9) updated in step S511, and uses the acquired data. Display information for displaying the rule setting screen 600 is generated, and the display information is transmitted to the client PC 104 (step S512).

そして、当該表示情報を受信したクライアントPC104のCPU201は、当該表示情報に従って、クライアントPC104の表示部に更新されたルール設定画面600を表示する。   The CPU 201 of the client PC 104 that has received the display information displays the updated rule setting screen 600 on the display unit of the client PC 104 according to the display information.

プロキシサーバ101のCPU201は、クライアントPC104から、リクエストルールの詳細(情報)の登録要求、リクエストルールの移動要求、レスポンスルールの詳細(情報)の登録要求、レスポンスルールの移動要求、削除要求のいずれも受信していないと判定された場合は(ステップS510:NO)、ルール設定処理を終了する。
以上がプロキシサーバ101のCPU201によって行われるルール設定処理の一例である。

以下に、図10を参照して、図4のステップS404に示した通信中継制御処理を詳細に説明する。
The CPU 201 of the proxy server 101 receives any request rule details (information) registration request, request rule movement request, response rule details (information) registration request, response rule movement request, or deletion request from the client PC 104. If it is determined that no rule has been received (step S510: NO), the rule setting process is terminated.
The above is an example of the rule setting process performed by the CPU 201 of the proxy server 101.

Hereinafter, the communication relay control process shown in step S404 of FIG. 4 will be described in detail with reference to FIG.

図10は、本発明における第3の制御処理の一例を示すフローチャートであり、図4のステップS404に示した通信中継制御処理の詳細を示すフローチャートに対応する。即ち、本処理は、プロキシサーバ101のCPU201によって行われる。尚、本処理を行う際に、CPU201は、図3の通信中継制御手段303および通信許可/禁止応答送信手段304としてプロキシサーバ101を機能させるためのプログラムをHDD204からRAM202にロードし、そのプログラムの制御に基づいて以下に示す処理を行うこととなる。   FIG. 10 is a flowchart showing an example of the third control process in the present invention, and corresponds to the flowchart showing details of the communication relay control process shown in step S404 of FIG. That is, this process is performed by the CPU 201 of the proxy server 101. When performing this processing, the CPU 201 loads a program for causing the proxy server 101 to function as the communication relay control unit 303 and the communication permission / prohibition response transmission unit 304 of FIG. Based on the control, the following processing is performed.

プロキシサーバ101のCPU201は、LAN105に流れるパケットを常時監視している。そして、プロキシサーバ101のCPU201は、クライアントPC104から広域ネットワーク106に設置されているウェブサーバ107に対してのリクエスト(リクエストデータやリクエストのデータとも言う)を受け付ける(ステップS1001)。   The CPU 201 of the proxy server 101 constantly monitors packets flowing through the LAN 105. The CPU 201 of the proxy server 101 receives a request (also called request data or request data) from the client PC 104 to the web server 107 installed in the wide area network 106 (step S1001).

そして、プロキシサーバ101のCPU201は、ステップS1001で受け付けたリクエストされたURL(リクエストのデータに含まれるURL)をURLDB103(図12)の中から検索して、当該URLのWEBサイト又はWEBページのカテゴリを判定する(ステップS1002)。ここで、ステップS1002のURLカテゴリ判定処理の詳細について図11を参照して説明する。   Then, the CPU 201 of the proxy server 101 searches the URL DB 103 (FIG. 12) for the requested URL received in step S1001 (the URL included in the request data), and the category of the WEB site or WEB page of the URL. Is determined (step S1002). Details of the URL category determination process in step S1002 will be described with reference to FIG.

図11は、図10のステップS1002に示したURLカテゴリ判定処理の詳細を示すフローチャートである。即ち、本処理は、プロキシサーバ101のCPU201によって行われる。   FIG. 11 is a flowchart showing details of the URL category determination process shown in step S1002 of FIG. That is, this process is performed by the CPU 201 of the proxy server 101.

プロキシサーバ101のCPU201は、図11のステップS1101において、URLDB103の中から、リクエストされたURLのカテゴリを検索する。ここでURLDB103の詳細について図12を参照して説明する。   The CPU 201 of the proxy server 101 searches the URL DB 103 for the category of the requested URL in step S1101 of FIG. Details of the URL DB 103 will be described with reference to FIG.

図12は、URLDB103のデータ構成の一例を示す図である。
URLDB103は、カテゴリごとにウェブサーバ107のリソースを表すURLを登録したデータベースである。
図12では、URL1203を、大カテゴリ1201と小カテゴリ1202に分類し、それぞれを関連付けて格納している。
FIG. 12 is a diagram illustrating an example of a data configuration of the URL DB 103.
The URL DB 103 is a database in which URLs representing resources of the web server 107 are registered for each category.
In FIG. 12, the URL 1203 is classified into a large category 1201 and a small category 1202 and stored in association with each other.

図12の例では、例えば、「http://www.example.com/portal/」のURLで特定されるリソース(WEBページやWEBサイト)の内容のカテゴリは、「ポータルサイト」であることを示している。   In the example of FIG. 12, for example, the category of the content of the resource (WEB page or WEB site) specified by the URL “http://www.example.com/portal/” is “portal site”. Show.

図12では、URLDB103をデータテーブルとして説明しているが、URLで特定されるリソースのカテゴリを検索することができれば、他の形式で格納しても勿論構わない。
以下、図11のフローチャートの説明に戻る。
In FIG. 12, the URL DB 103 is described as a data table. However, as long as the category of the resource specified by the URL can be searched, it may be stored in another format.
Returning to the flowchart of FIG.

プロキシサーバ101のCPU201は、ステップS1101で、URLDB103の中から、リクエストされたURLのカテゴリが検索されたか否かを判定する(ステップS1102)。   In step S1101, the CPU 201 of the proxy server 101 determines whether the requested URL category has been searched from the URL DB 103 (step S1102).

そして、プロキシサーバ101のCPU201は、URLのカテゴリが検索されたと判定された場合(ステップS1102でYES)には、リクエストされたURLのカテゴリを、当該検索されたカテゴリに決定し、処理をステップS1003に移行する。   If it is determined that the URL category has been searched (YES in step S1102), the CPU 201 of the proxy server 101 determines the requested URL category as the searched category, and the process is performed in step S1003. Migrate to

一方、プロキシサーバ101のCPU201は、ステップS1102において、該当するカテゴリがないと判定した場合(NO)には、リクエストされたURLのカテゴリがないと決定し(ステップS1104)、処理をステップS1003に移行する。
以下、図10のフローチャートの説明に戻る。
On the other hand, if the CPU 201 of the proxy server 101 determines in step S1102 that there is no corresponding category (NO), it determines that there is no category of the requested URL (step S1104), and the process proceeds to step S1003. To do.
Hereinafter, the description returns to the flowchart of FIG.

プロキシサーバ101のCPU201は、ステップS1001で受信したリクエストのデータからファイルやテキストデータ等のリクエストの詳細情報を取得する(ステップS1003)。
ここで、図13を参照して、ステップS1003に示すリクエスト詳細情報取得処理の詳細について説明する。
The CPU 201 of the proxy server 101 acquires detailed information of the request such as a file or text data from the request data received in step S1001 (step S1003).
Here, the details of the request detailed information acquisition processing shown in step S1003 will be described with reference to FIG.

図13は、図10のステップS1003に示したリクエスト詳細情報取得処理の詳細を示すフローチャートである。即ち、本処理は、プロキシサーバ101のCPU201によって行われる。   FIG. 13 is a flowchart showing details of the request detailed information acquisition processing shown in step S1003 of FIG. That is, this process is performed by the CPU 201 of the proxy server 101.

プロキシサーバ101のCPU201は、ステップS1001で受信したリクエストデータにファイルが含まれているか否かを判定する(ステップS1301)。そして、リクエストデータにファイルが含まれていないと判定された場合は(ステップS1301でNO)、処理をステップS1308に移行する。   The CPU 201 of the proxy server 101 determines whether or not a file is included in the request data received in step S1001 (step S1301). If it is determined that the file is not included in the request data (NO in step S1301), the process proceeds to step S1308.

一方、ステップS1301で、リクエストデータにファイルが含まれていると判定された場合は(ステップS1301でYES)、当該ファイルのファイルサイズを取得する(ステップS1302)。ここで、ファイルサイズは、リクエストデータに含まれているファイルを解析して、当該ファイルのファイルサイズを計算することにより取得される。   On the other hand, if it is determined in step S1301 that the request data includes a file (YES in step S1301), the file size of the file is acquired (step S1302). Here, the file size is obtained by analyzing the file included in the request data and calculating the file size of the file.

次に、プロキシサーバ101のCPU201は、リクエストデータに含まれるファイルのファイル形式を判定する。ここで、ファイル形式は、ファイルの拡張子ではなく、ファイルに含まれるマジックナンバーを用いて判定される。   Next, the CPU 201 of the proxy server 101 determines the file format of the file included in the request data. Here, the file format is determined using the magic number included in the file, not the file extension.

ファイルには、通常マジックナンバーと呼ばれるファイル形式ごとに特徴的な情報がファイルの先頭や末尾などに格納されている。   In the file, characteristic information for each file format, usually called a magic number, is stored at the beginning or end of the file.

例えば、ファイル形式がPDFの場合は、ファイルの先頭5バイトが%PDF−となる。リクエストヘッダーに記載されたContent−Typeによらず、マジックナンバーでファイル形式を判定することでファイルに間違った拡張子が付与されている場合や、意図的に変更されている場合でも、本来のファイル形式を判定することが可能となる。尚、リクエストデータに含まれるファイルが圧縮されている場合は、そのファイルを解凍した上でファイル形式を判定する。   For example, when the file format is PDF, the first 5 bytes of the file is% PDF-. Regardless of the Content-Type described in the request header, the original file can be used even if an incorrect extension is given to the file by judging the file format using the magic number, or even if the file is intentionally changed. The format can be determined. When the file included in the request data is compressed, the file format is determined after decompressing the file.

マジックナンバーによるファイル形式の判定では、あらかじめファイル形式ごとのマジックナンバーを知っておく必要がある。ここで、図14を参照してマジックナンバーによるファイル形式の判定で使用するファイル形式とマジックナンバーの対応表について説明する。   In determining the file format based on the magic number, it is necessary to know the magic number for each file format in advance. Here, with reference to FIG. 14, the correspondence table between the file format and the magic number used in the determination of the file format by the magic number will be described.

図14は、ファイル形式とマジックナンバーの対応表の構成の一例を示す図である。   FIG. 14 is a diagram showing an example of the configuration of a correspondence table between file formats and magic numbers.

図14では、ファイル形式をファイル形式1401の列に、対応するマジックナンバーをマジックナンバー1402の列に記録しているが、データテーブルではない他の形式で記録しても勿論構わない。尚、ファイル形式とマジックナンバーの対応表1400は、プロキシサーバ101内に備えていても、別のコンピュータ内に実装しても構わない。
以下、図13のフローチャートの説明に戻る。
In FIG. 14, the file format is recorded in the column of the file format 1401, and the corresponding magic number is recorded in the column of the magic number 1402. However, it is needless to say that the file format may be recorded in a format other than the data table. The correspondence table 1400 between the file format and the magic number may be provided in the proxy server 101 or may be installed in another computer.
Returning to the flowchart of FIG.

次に、プロキシサーバ101のCPU201は、リクエストデータに含まれるファイルのファイル名から、当該ファイル名に含まれている拡張子を取得する(ステップS1304)。   Next, the CPU 201 of the proxy server 101 acquires the extension included in the file name from the file name of the file included in the request data (step S1304).

次に、プロキシサーバ101のCPU201は、ステップS1303で判定したファイル形式と、ステップS1304で取得した拡張子が一致しているか否かを判定する(ステップS1305)。ここで、ファイル形式と拡張子が一致しているか否かを判定する処理について説明する。   Next, the CPU 201 of the proxy server 101 determines whether or not the file format determined in step S1303 matches the extension acquired in step S1304 (step S1305). Here, a process for determining whether or not the file format and the extension match will be described.

ファイル形式には、通常付与される拡張子がある。例えば、ファイル形式がPDF(ポータブル・ドキュメント・フォーマット)であるファイルには、通常pdfが拡張子として付与される。また、ファイル形式がRTF(リッチテキストフォーマット)であるファイルには、通常rtfが拡張子として付与される。ファイル形式と付与されている拡張子が一致しているか否かの判定では、図17に示すようなファイル形式ごとに付与されるべき拡張子の対応表1700を使用する。   The file format has an extension that is usually given. For example, a file whose file format is PDF (Portable Document Format) is usually given pdf as an extension. Also, rtf is usually given as an extension to a file whose file format is RTF (rich text format). In determining whether the file format and the assigned extension match, an extension correspondence table 1700 to be given for each file format as shown in FIG. 17 is used.

図17に示すファイル形式と拡張子の対応表1700には、ファイル形式をファイル形式1701に、当該ファイル形式の拡張子を拡張子1702に記憶されている。   In the file format and extension correspondence table 1700 shown in FIG. 17, the file format is stored in the file format 1701, and the extension of the file format is stored in the extension 1702.

ファイル形式と拡張子が一致しているか否かを判定する場合は、ステップS1303で判定されたファイル形式をファイル形式1701から検索し、検索されたファイル形式に対応する(同一レコードの)拡張子を全て拡張子1702の列から取得する。   When determining whether or not the file format and the extension match, the file format determined in step S1303 is searched from the file format 1701, and the extension (of the same record) corresponding to the searched file format is determined. All are acquired from the column of the extension 1702.

そして、ステップS1304で取得した、ファイル名に付与されている拡張子が、当該取得した拡張子の中にある場合は、ファイル形式と拡張子が一致すると判断し、ない場合は一致しないと判断する。   If the extension attached to the file name acquired in step S1304 is in the acquired extension, it is determined that the file format and the extension match, and if not, it is determined that they do not match. .

ステップS1305で、ファイル形式と拡張子が一致すると判定された場合には、拡張子の偽装はないことを示し、ファイル形式と拡張子が一致しないと判定された場合には、拡張子の偽装があることを示している。
尚、ファイル形式と拡張子の対応表1700は、プロキシサーバ101内に備えていても、別のコンピュータ内に実装しても構わない。
また、不図示のメンテナンス画面を用意し、対応表1700に記憶されているファイル形式や拡張子を変更/登録できるようにしても勿論構わない。
以下、図13のフローチャートの説明に戻る。
If it is determined in step S1305 that the file format and the extension match, it indicates that the extension is not impersonated. If it is determined that the file format and the extension do not match, the extension is impersonated. It shows that there is.
The file format and extension correspondence table 1700 may be provided in the proxy server 101 or may be installed in another computer.
Of course, a maintenance screen (not shown) may be prepared so that the file format and extension stored in the correspondence table 1700 can be changed / registered.
Returning to the flowchart of FIG.

次に、プロキシサーバ101のCPU201は、ステップS1303で判定されたファイルのファイル形式が、テキスト情報を含むファイルのファイル形式であるか否かを判定する(ステップS1306)。   Next, the CPU 201 of the proxy server 101 determines whether or not the file format of the file determined in step S1303 is a file format of a file including text information (step S1306).

図18は、テキスト情報を含むのファイル形式1801と、当該ファイル形式のファイルからテキスト情報を抽出するプログラム1802とが関連付けられて記憶されたテキスト情報抽出情報1800の一例を示す図である。テキスト情報抽出情報(図18)は、プロキシサーバ101の記憶部に記憶されている。
テキスト情報抽出情報1800には、図18に示すように、ファイル形式と、当該ファイル形式に適したプログラムが関連付けられている。
FIG. 18 is a diagram illustrating an example of text information extraction information 1800 stored in association with a file format 1801 including text information and a program 1802 for extracting text information from a file in the file format. The text information extraction information (FIG. 18) is stored in the storage unit of the proxy server 101.
As shown in FIG. 18, the text information extraction information 1800 is associated with a file format and a program suitable for the file format.

ステップS1306では、ステップS1303で判定されたファイルのファイル形式が、テキスト情報抽出情報1800(図18)のファイル形式1801に記憶されているか否かを判定することにより、テキスト情報を含むファイルのファイル形式であるか否かを判定する。   In step S1306, the file format of the file including text information is determined by determining whether or not the file format of the file determined in step S1303 is stored in the file format 1801 of the text information extraction information 1800 (FIG. 18). It is determined whether or not.

すなわち、ステップS1303で判定されたファイルのファイル形式が、テキスト情報抽出情報1800(図18)のファイル形式1801に記憶されている場合は、テキスト情報を含むファイルのファイル形式であると判定する。一方、テキスト情報抽出情報1800(図18)のファイル形式1801に記憶されていない場合は、テキスト情報を含むファイルのファイル形式であると判定する。   That is, when the file format of the file determined in step S1303 is stored in the file format 1801 of the text information extraction information 1800 (FIG. 18), it is determined that the file format includes the text information. On the other hand, if it is not stored in the file format 1801 of the text information extraction information 1800 (FIG. 18), it is determined that the file format is a file including text information.

プロキシサーバ101のCPU201は、ステップS1306において、テキスト情報を含むファイルのファイル形式であると判定された場合は(YES)、テキスト情報抽出情報1800に、該ファイル形式に関連付けて記憶されているテキスト抽出プログラムを実行し、ステップS1001で受信したリクエストデータに含まれるファイルのテキスト情報を抽出し取得する(ステップS1307)。   If the CPU 201 of the proxy server 101 determines in step S1306 that the file format of the file including text information is YES (YES), the text extraction stored in the text information extraction information 1800 in association with the file format is extracted. The program is executed, and the text information of the file included in the request data received in step S1001 is extracted and acquired (step S1307).

以上のようにして、ファイルがテキスト情報を含む形式である場合は、ステップS1303で取得したファイルのファイル形式に適した方法でテキスト情報を取得することができる。   As described above, when the file has a format including text information, the text information can be acquired by a method suitable for the file format of the file acquired in step S1303.

プロキシサーバ101のCPU201は、ステップS1306において、テキスト情報を含まないファイルのファイル形式であると判定された場合(NO)、すなわち、テキスト情報を含まない画像等のファイル形式であると判定された場合は、処理をステップS1308に移行する。   If the CPU 201 of the proxy server 101 determines in step S1306 that the file format is a file that does not include text information (NO), that is, if it is determined that the file format is an image or the like that does not include text information. Shifts the processing to step S1308.

次に、プロキシサーバ101のCPU201は、ステップS1308では、リクエストデータに含まれるファイル以外のフィールドのデータからテキスト情報を取得する。ここでは、リクエストデータに含まれるリクエスト先のURL、リクエストデータに含まれる、クライアントPC104を使用しているユーザのユーザ名、パスワードを取得する。なお、ユーザのユーザ名、パスワードが暗号化されている場合は、復号して該ユーザ名、該パスワードを取得する。本実施の形態において、ここで取得されるユーザ名、パスワードは、プロキシ認証で用いられる情報として説明するが、ユーザ、又はクライアントPC104を識別可能な情報であれば、何でも構わない。   Next, in step S1308, the CPU 201 of the proxy server 101 acquires text information from field data other than the file included in the request data. Here, the URL of the request destination included in the request data and the user name and password of the user using the client PC 104 included in the request data are acquired. If the user name and password of the user are encrypted, the user name and password are obtained by decryption. In the present embodiment, the user name and password acquired here will be described as information used in proxy authentication, but any information can be used as long as it can identify the user or the client PC 104.

ステップS1301からステップS1308の処理で取得したリクエストデータの詳細情報(ファイル、ファイルサイズ、ファイル形式、ファイルの拡張子、ファイル内のテキスト情報、ファイル以外のフィールドのテキスト情報、リクエストのデータに含まれるURL、リクエストのデータに含まれるユーザ名とパスワードなど)は、リクエストルール(条件)とマッチ(合致)するかを判定する処理(ステップS1004)で使用する。
以下、図10のフローチャートの説明に戻る。
Detailed information (request file, file size, file format, file extension, text information in the file, text information in a field other than the file, URL included in the request data acquired in the processing from step S1301 to step S1308 The user name and password included in the request data are used in the process of determining whether or not the request rule (condition) matches (match) (step S1004).
Hereinafter, the description returns to the flowchart of FIG.

プロキシサーバ101のCPU201は、ステップS1004において、ステップS1003で取得したリクエストの詳細情報に対して、ルールDB102に登録されているリクエストルールを適用する。   In step S1004, the CPU 201 of the proxy server 101 applies the request rule registered in the rule DB 102 to the detailed information of the request acquired in step S1003.

すなわち、プロキシサーバ101のCPU201は、ステップS1003で取得したリクエストの詳細情報が、ルールDB102に登録されているリクエストルールの条件に一致するか否かを判定する。なお、ステップS1004のリクエストルールの適用処理の詳細処理は、図15を参照して後述する。   That is, the CPU 201 of the proxy server 101 determines whether the detailed information of the request acquired in step S1003 matches the request rule condition registered in the rule DB 102. Details of the request rule application processing in step S1004 will be described later with reference to FIG.

次に、プロキシサーバ101のCPU201は、ステップS1005において、ステップS1004のリクエストルール適用処理で設定されたリクエストデータの通信(中継)の動作設定が許可か禁止かを判定する。そして、禁止された動作設定であると判定した場合には(ステップS1005でNO)、プロキシサーバ101のCPU201は、リクエストを送信したクライアントPC104に対して、リクエストが禁止された旨を示す応答(通信不許可情報)を送信し(ステップS1012)、本フローチャートの処理を終了する。   Next, in step S1005, the CPU 201 of the proxy server 101 determines whether the operation setting for request data communication (relay) set in the request rule application processing in step S1004 is permitted or prohibited. If it is determined that the operation setting is prohibited (NO in step S1005), the CPU 201 of the proxy server 101 sends a response (communication) indicating that the request is prohibited to the client PC 104 that has transmitted the request. Non-permission information) is transmitted (step S1012), and the process of this flowchart is terminated.

一方、プロキシサーバ101のCPU201は、ステップS1004のリクエストルールの適用処理で設定されたリクエストデータの通信(中継)の動作設定が許可された動作設定であると判定された場合には(ステップS1005でYES)、ステップS1006に処理を進める。   On the other hand, if the CPU 201 of the proxy server 101 determines that the operation setting for request data communication (relay) operation set in the request rule application processing in step S1004 is permitted operation setting (in step S1005). YES), the process proceeds to step S1006.

ステップS1006では、プロキシサーバ101のCPU201は、クライアントPC104から送信されたリクエスト(リクエストのデータ)をウェブサーバ107に送信する。   In step S <b> 1006, the CPU 201 of the proxy server 101 transmits the request (request data) transmitted from the client PC 104 to the web server 107.

このとき、プロキシサーバ101のCPU201は、リクエストを送信した通信回線を識別可能な識別子であるプロセスID2101を図21に示す通信管理テーブルに記憶する。
図21は、通信管理テーブル2100の一例である。
At this time, the CPU 201 of the proxy server 101 stores a process ID 2101 that is an identifier capable of identifying the communication line that transmitted the request in the communication management table shown in FIG.
FIG. 21 is an example of the communication management table 2100.

また、プロキシサーバ101のCPU201は、通信管理テーブル2100に記憶されたプロセスIDで特定される通信回線を用いて送信されたリクエストデータから取得したクライアントPCのユーザ名2104と、該リクエストデータから取得した当該クライアントPCのIPアドレス、該リクエストデータから取得したウェブサーバのURL2103とを、当該プロセスID2101と図21のように関連付けて記憶する。   Further, the CPU 201 of the proxy server 101 acquires the client PC user name 2104 obtained from the request data transmitted using the communication line specified by the process ID stored in the communication management table 2100 and the request data. The IP address of the client PC and the URL 2103 of the web server acquired from the request data are stored in association with the process ID 2101 as shown in FIG.

次に、ステップS1007では、プロキシサーバ101のCPU201は、ウェブサーバ107からのレスポンスデータを受信するまで待機し、受信した場合(ステップS1007)には、ステップS1008以降の処理を実行する。   Next, in step S1007, the CPU 201 of the proxy server 101 stands by until response data from the web server 107 is received. When the response data is received (step S1007), the processing after step S1008 is executed.

ステップS1008では、プロキシサーバ101のCPU201は、ステップS1007で受信したレスポンスの詳細情報(レスポンスデータに含まれるファイル、該ファイルのサイズ、該ファイルのファイル形式、該ファイルの拡張子、及びそれ以外のフィールドに含まれるテキスト情報、ウェブサーバ107のURL、クライアントPC104のユーザ名など)を取得する(レスポンス詳細情報取得処理)。   In step S1008, the CPU 201 of the proxy server 101 displays the detailed information of the response received in step S1007 (the file included in the response data, the size of the file, the file format of the file, the extension of the file, and other fields). (Text information, URL of the web server 107, user name of the client PC 104, etc.) are acquired (response detailed information acquisition processing).

レスポンス詳細情報取得処理では、レスポンスデータの中から、レスポンスデータに含まれるファイル、該ファイルのサイズ、該ファイルのファイル形式、該ファイルの拡張子、及びそれ以外のフィールドに含まれるテキスト情報を取得する。   In the detailed response information acquisition process, the file included in the response data, the size of the file, the file format of the file, the extension of the file, and text information included in other fields are acquired from the response data. .

なお、レスポンスデータを送信するウェブサーバ107のURL、及び、リクエストデータを送信するクライアントPC104のユーザ名は、リクエストデータを中継した際に用いた通信回線を識別可能なプロセスIDと関連付けられて、図21の通信管理テーブル2100に記憶している。そのため、当該通信回線を介して受信したレスポンスデータは、当該通信回線のプロセスIDに関連付けられているURLのウェブサーバ107から送信され、当該プロセスIDに関連付けられているユーザ名のクライアントPC104に送信されるものであると特定することができる。すなわち、レスポンス詳細情報取得処理では、該通信管理テーブル2100を参照し、レスポンスデータを受信した通信回線のプロセスIDに関連付けられて記憶されたURL及びユーザ名を特定し、該URL及び該ユーザ名を通信管理テーブルから取得する。
レスポンス詳細情報処理の詳細処理については、図19を用いて説明する。
Note that the URL of the web server 107 that transmits the response data and the user name of the client PC 104 that transmits the request data are associated with a process ID that can identify the communication line used when relaying the request data. 21 communication management table 2100. Therefore, the response data received via the communication line is transmitted from the web server 107 having the URL associated with the process ID of the communication line, and is transmitted to the client PC 104 having the user name associated with the process ID. Can be identified. That is, in the response detailed information acquisition process, the communication management table 2100 is referred to, the URL and the user name stored in association with the process ID of the communication line that received the response data are specified, and the URL and the user name are specified. Obtained from the communication management table.
Detailed processing of response detailed information processing will be described with reference to FIG.

次に、プロキシサーバ101のCPU201は、ステップS1009では、ステップS1008で取得したレスポンスデータの詳細情報に対して、ルールDB102に登録されているレスポンスルールを適用する。なお、レスポンスルールの適用処理の詳細処理については、図20を用いて説明する。   Next, in step S1009, the CPU 201 of the proxy server 101 applies the response rule registered in the rule DB 102 to the detailed information of the response data acquired in step S1008. Details of the response rule application process will be described with reference to FIG.

次に、プロキシサーバ101のCPU201は、ステップS1010において、ステップS1009のレスポンスルール適用処理でクライアントPC104への通信(レスポンスデータの中継)が許可されたか禁止されたかを判定する。   Next, in step S1010, the CPU 201 of the proxy server 101 determines whether communication (relay of response data) to the client PC 104 is permitted or prohibited in the response rule application processing in step S1009.

そして、プロキシサーバ101のCPU201は、通信(中継)が禁止されたと判定した場合には(ステップS1010でNO)、リクエストを送信したクライアントPC104に対するレスポンスデータの中継を禁止する旨の応答を送信し(ステップS1012)、本フローチャートの処理を終了し、処理をステップS405に移行する。   When the CPU 201 of the proxy server 101 determines that communication (relay) is prohibited (NO in step S1010), the CPU 201 transmits a response to prohibit relaying of response data to the client PC 104 that transmitted the request ( In step S1012), the process of this flowchart is terminated, and the process proceeds to step S405.

一方、プロキシサーバ101のCPU201は、ステップS1009のレスポンスルールの適用処理で、レスポンスデータの通信(中継)が許可されたと判定された場合には(ステップS1010でYES)、ステップS1011に処理を進める。   On the other hand, if it is determined in the response rule application process in step S1009 that the response data communication (relay) is permitted (YES in step S1010), the CPU 201 of the proxy server 101 advances the process to step S1011.

次に、プロキシサーバ101のCPU201は、ステップS1011において、リクエストを送信したクライアントPC104に対して、ウェブサーバ107から受信したレスポンスデータを送信(中継)し、本フローチャートの処理を終了し、処理をステップS405に移行する。   Next, in step S1011, the CPU 201 of the proxy server 101 transmits (relays) the response data received from the web server 107 to the client PC 104 that transmitted the request, ends the processing of this flowchart, and then performs the processing. The process proceeds to S405.

以下に、図15を参照して、図10のステップS1004に示したリクエストルール適用処理の詳細処理に説明する。   Below, with reference to FIG. 15, it demonstrates to the detailed process of a request rule application process shown to step S1004 of FIG.

図15は、図10のステップS1004に示したリクエストルール適用処理の詳細処理を示すフローチャートである。即ち、本処理は、プロキシサーバ101のCPU201によって行われる。   FIG. 15 is a flowchart showing detailed processing of the request rule application processing shown in step S1004 of FIG. That is, this process is performed by the CPU 201 of the proxy server 101.

まず、プロキシサーバ101のCPU201は、図15のステップS1501において、未適用のリクエストルールがあるか否かを判断する。プロキシサーバ101のCPU201は、未適用のリクエストルールがある場合には(ステップS1501でYES)、リクエストルールテーブル9100に登録されているリクエストルールを適用順に1件ずつ取得する(ステップS1502)。   First, the CPU 201 of the proxy server 101 determines whether there is an unapplied request rule in step S1501 of FIG. When there is an unapplied request rule (YES in step S1501), the CPU 201 of the proxy server 101 acquires request rules registered in the request rule table 9100 one by one in the application order (step S1502).

プロキシサーバ101のCPU201は、ステップS1503では、1502で取得したリクエストルールの各条件がリクエストデータにマッチ(合致)するか否かを判断する。ここで、図16を参照して、リクエストルールがリクエストデータにマッチするか否かを判定する処理の詳細処理について説明する。   In step S1503, the CPU 201 of the proxy server 101 determines whether each condition of the request rule acquired in 1502 matches (matches) the request data. Here, with reference to FIG. 16, a detailed process of determining whether or not the request rule matches the request data will be described.

図16は、図15のステップS1503に示したリクエストルールがリクエストデータにマッチするか否かを判定する処理の詳細処理を示すフローチャートである。即ち、本処理は、プロキシサーバ101のCPU201によって行われる。 FIG. 16 is a flowchart showing a detailed process of determining whether or not the request rule shown in step S1503 of FIG. 15 matches request data. That is, this process is performed by the CPU 201 of the proxy server 101.

プロキシサーバ101のCPU201は、図16のステップS1601において、リクエストルールテーブル9100から取得した当該リクエストルールのURL9104にURLが設定されているか否かを判定する。プロキシサーバ101のCPU201は、URLが設定されていないと判定された場合は(ステップS1601でNO)、ステップS1603に処理を進める。一方、URLが設定されていると判定された場合は(ステップS1601でYES)、ステップS1602に処理を進める。   In step S1601 of FIG. 16, the CPU 201 of the proxy server 101 determines whether a URL is set in the URL 9104 of the request rule acquired from the request rule table 9100. If the CPU 201 of the proxy server 101 determines that the URL has not been set (NO in step S1601), the process proceeds to step S1603. On the other hand, if it is determined that the URL is set (YES in step S1601), the process proceeds to step S1602.

プロキシサーバ101のCPU201は、ステップS1602では、当該リクエストルールのURL9104に設定されているURLが、ステップS1003でリクエストデータから取得したURLにマッチするか否かを判定する。プロキシサーバ101のCPU201は、マッチしないと判定された場合は(ステップS1602でNO)、ステップS1003で取得したリクエストデータが、ステップS1503で取得したリクエストルールの条件に該当しない(一致しない)と決定する(ステップS1616)。一方、プロキシサーバ101のCPU201は、マッチすると判断した場合は(ステップS1602でYES)、ステップS1603に処理を進める。   In step S1602, the CPU 201 of the proxy server 101 determines whether the URL set in the URL 9104 of the request rule matches the URL acquired from the request data in step S1003. If the CPU 201 of the proxy server 101 determines that they do not match (NO in step S1602), the CPU 201 determines that the request data acquired in step S1003 does not match (does not match) the condition of the request rule acquired in step S1503. (Step S1616). On the other hand, if the CPU 201 of the proxy server 101 determines that there is a match (YES in step S1602), the process proceeds to step S1603.

プロキシサーバ101のCPU201は、ステップS1603では、ステップS1502でリクエストルールテーブル9100から取得した当該リクエストルールのカテゴリ9105にカテゴリが設定されているか否かを判定する。プロキシサーバ101のCPU201は、カテゴリが設定されていない場合は(ステップS1603でNO)、ステップS1605に処理を進める。一方、カテゴリが設定されている場合は(ステップS1603でYES)、ステップS1604に処理を進める。   In step S1603, the CPU 201 of the proxy server 101 determines whether a category is set in the category 9105 of the request rule acquired from the request rule table 9100 in step S1502. If the category is not set (NO in step S1603), the CPU 201 of the proxy server 101 advances the process to step S1605. On the other hand, if a category is set (YES in step S1603), the process proceeds to step S1604.

プロキシサーバ101のCPU201は、ステップS1604では、ステップS1502で取得したリクエストルールに設定されているカテゴリが、ステップS1002でのURLカテゴリ判定処理で判定されたカテゴリと同一か(マッチするか)否かを判定する。マッチしないと判定された場合は(ステップS1604でNO)、処理をステップS1616に移行する。また、ステップS1002のURLカテゴリ判定処理でカテゴリなしと判定された場合も当該リクエストルールがリクエストデータにマッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判定された場合は(ステップS1604でYES)、ステップS1605に処理を進める。   In step S1604, the CPU 201 of the proxy server 101 determines whether or not the category set in the request rule acquired in step S1502 is the same as (matches) the category determined in the URL category determination processing in step S1002. judge. If it is determined that they do not match (NO in step S1604), the process proceeds to step S1616. If it is determined that there is no category in the URL category determination process in step S1002, it is determined that the request rule does not match the request data, and the process proceeds to step S1616. On the other hand, if it is determined to match (YES in step S1604), the process proceeds to step S1605.

プロキシサーバ101のCPU201は、ステップS1605では、ステップS1502で取得したリクエストルールのファイル形式9106にファイル形式が設定されているか否かを判断する。そして、ファイル形式が設定されていないと判定された場合は(ステップS1605でNO)、ステップS1607に処理を進める。一方、ファイル形式が設定されていると判定された場合は(ステップS1605でYES)、ステップS1606に処理を進める。   In step S1605, the CPU 201 of the proxy server 101 determines whether a file format is set in the file format 9106 of the request rule acquired in step S1502. If it is determined that the file format is not set (NO in step S1605), the process proceeds to step S1607. On the other hand, if it is determined that the file format is set (YES in step S1605), the process proceeds to step S1606.

プロキシサーバ101のCPU201は、ステップS1606では、ファイル形式9106に設定されているファイル形式が、ステップS1303で判定されたファイルのファイル形式にマッチするか否かを判定する。マッチしないと判定された場合は(ステップS1606でNO)、処理をステップS1616に移行する。   In step S1606, the CPU 201 of the proxy server 101 determines whether the file format set in the file format 9106 matches the file format of the file determined in step S1303. If it is determined that they do not match (NO in step S1606), the process proceeds to step S1616.

また、プロキシサーバ101のCPU201は、リクエストデータにファイルが含まれていない場合も、当該リクエストルールがリクエストデータにマッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判断した場合は(ステップS1606でYES)、CPU201は、ステップS1607に処理を進める。 Further, even when the request data does not include a file, the CPU 201 of the proxy server 101 determines that the request rule does not match the request data, and the process proceeds to step S1616. On the other hand, if it is determined that there is a match (YES in step S1606), the CPU 201 advances the process to step S1607.

プロキシサーバ101のCPU201は、ステップS1607では、ステップS1502で取得したリクエストルールのサイズ9107及びサイズ条件9108が設定されているか否かを判断する。サイズ及びサイズ条件が設定されていないと判定された場合は(ステップS1607でNO)、ステップS1609に処理を進める。一方、サイズ及びサイズ条件が設定されている場合は(ステップS1607でYES)、ステップS1608に処理を進める。   In step S1607, the CPU 201 of the proxy server 101 determines whether the request rule size 9107 and size condition 9108 acquired in step S1502 are set. If it is determined that the size and the size condition are not set (NO in step S1607), the process proceeds to step S1609. On the other hand, if the size and the size condition are set (YES in step S1607), the process proceeds to step S1608.

プロキシサーバ101のCPU201は、ステップS1608では、ステップS1302で取得したファイルのサイズが、ステップS1502で取得したリクエストルールのサイズ9107及びサイズ条件9108を満たすか(マッチするか)否かを判定する。マッチしないと判断した場合は(ステップS1608でNO)、処理をステップS1616に移行する。また、リクエストデータにファイルが含まれていない場合も、当該リクエストルールがリクエストデータにマッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判断した場合は(ステップS1608でYES)、CPU201は、ステップS1609に処理を進める。   In step S1608, the CPU 201 of the proxy server 101 determines whether or not the file size acquired in step S1302 satisfies (matches) the size 9107 and size condition 9108 of the request rule acquired in step S1502. If it is determined that they do not match (NO in step S1608), the process proceeds to step S1616. If the request data does not include a file, it is determined that the request rule does not match the request data, and the process proceeds to step S1616. On the other hand, if it is determined that there is a match (YES in step S1608), the CPU 201 advances the process to step S1609.

ステップS1609では、ステップS1509で取得したリクエストルールのファイル形式と拡張子9109にファイル形式と拡張子の一致条件が設定されているか否かを判断する。ファイル形式と拡張子の一致条件が設定されていないと判定された場合は(ステップS1609でNO)、ステップS1611に処理を進める。一方、ファイル形式と拡張子の一致条件が設定されていると判定された場合は(ステップS1609でYES)、ステップS1610に処理を進める。   In step S1609, it is determined whether or not a matching condition between the file format and the extension is set in the file format and extension 9109 of the request rule acquired in step S1509. If it is determined that the matching condition between the file format and the extension is not set (NO in step S1609), the process proceeds to step S1611. On the other hand, if it is determined that the matching condition between the file format and the extension is set (YES in step S1609), the process proceeds to step S1610.

プロキシサーバ101のCPU201は、ステップS1610では、図13のステップS1305での判定結果(ファイル形式と拡張子が一致するか否かの判定結果)と、ステップS1502で取得したリクエストルールの「ファイル形式と拡張子」9109に設定された一致する/一致しないという条件が、一致するか(マッチするか)否かを判定する。マッチしないと判定された場合は(ステップS1610でNO)、処理をステップS1616に移行する。また、リクエストデータにファイルが含まれていない場合も、当該リクエストルールがリクエストデータにマッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判断した場合は(ステップS1610でYES)、CPU201は、ステップS1611に処理を進める。   In step S1610, the CPU 201 of the proxy server 101 determines the determination result in step S1305 in FIG. 13 (determination result whether or not the file format and the extension match) and the “file format and the request rule” acquired in step S1502. It is determined whether or not the conditions set in the “extension” 9109 that match / do not match match (match). If it is determined that they do not match (NO in step S1610), the process proceeds to step S1616. If the request data does not include a file, it is determined that the request rule does not match the request data, and the process proceeds to step S1616. On the other hand, if it is determined that they match (YES in step S1610), the CPU 201 advances the process to step S1611.

プロキシサーバ101のCPU201は、ステップS1611では、ステップS1502で取得したリクエストルールのキーワード9110にキーワードが設定されているか否かを判断する。キーワードが設定されていないと判定された場合は(ステップS1611でNO)、ステップS1613に処理を進める。一方、キーワードが設定されている場合は(ステップS1611でYES)、ステップS1612に処理を進める。   In step S1611, the CPU 201 of the proxy server 101 determines whether a keyword is set in the request rule keyword 9110 acquired in step S1502. If it is determined that no keyword is set (NO in step S1611), the process proceeds to step S1613. On the other hand, if a keyword is set (YES in step S1611), the process proceeds to step S1612.

プロキシサーバ101のCPU201は、ステップS1612では、ステップS1307及びステップS1308で取得したテキスト情報が、ステップS1502で取得したリクエストルールのキーワード9110に設定されているキーワードの条件を満たすか(マッチするか)否かを判定する。すなわち、ステップS1612では、ステップS1502で取得したリクエストルールのキーワード9110に設定されているキーワードが、ステップS1307及びステップS1308で取得したテキスト情報の中に含まれているかを判定する。マッチしないと判断した場合は(ステップS1612でNO)、処理をステップS1616に移行する。また、リクエストデータにテキスト情報が含まれない場合も、マッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判断した場合は(ステップS1612でYES)、CPU201は、ステップS1613に処理を進める。   In step S <b> 1612, the CPU 201 of the proxy server 101 determines whether or not the text information acquired in steps S <b> 1307 and S <b> 1308 satisfies the keyword condition set in the keyword 9110 of the request rule acquired in step S <b> 1502. Determine whether. That is, in step S1612, it is determined whether the keyword set in the request rule keyword 9110 acquired in step S1502 is included in the text information acquired in steps S1307 and S1308. If it is determined that they do not match (NO in step S1612), the process proceeds to step S1616. If the request data does not include text information, the request data is determined not to match, and the process proceeds to step S1616. On the other hand, if it is determined that they match (YES in step S1612), the CPU 201 advances the process to step S1613.

ステップS1613において、プロキシサーバ101のCPU201は、ステップS1502で取得したリクエストルールのユーザ/グループ9103にユーザ名又はグループ名が設定されているか否かを判定する。そして、ステップS1502で取得したリクエストルールのユーザ/グループ9103にユーザ名又はグループ名が設定されていると判定された場合は(ステップS1613でYES)、処理をステップS1614に移行する。一方、ユーザ/グループ9103にユーザ名又はグループ名が設定されていないと判定された場合は(ステップS1613でNO)、処理をステップS1615に移行する。   In step S1613, the CPU 201 of the proxy server 101 determines whether a user name or a group name is set in the user / group 9103 of the request rule acquired in step S1502. If it is determined that the user name or group name is set in the user / group 9103 of the request rule acquired in step S1502 (YES in step S1613), the process proceeds to step S1614. On the other hand, if it is determined that no user name or group name is set for the user / group 9103 (NO in step S1613), the process proceeds to step S1615.

ステップS1614において、プロキシサーバ101のCPU201は、ステップS1308でリクエストデータから取得したユーザ名又はグループ名と、ステップS1502で取得したリクエストルールのユーザ名又はグループ名とが一致するか否かを判定する。そして、一致すると判定された場合は(ステップS1614でYES)、処理をステップS1615に移行する。   In step S1614, the CPU 201 of the proxy server 101 determines whether or not the user name or group name acquired from the request data in step S1308 matches the user name or group name of the request rule acquired in step S1502. If it is determined that they match (YES in step S1614), the process proceeds to step S1615.

ステップS1615では、プロキシサーバ101のCPU201は、ステップS1502で取得したリクエストルールが、ステップS1003で取得したリクエストデータの詳細情報にマッチすると判定して(ステップS1503でYES)、処理をステップS1504に移行する。すなわち、ステップS1615では、ステップS1003で取得したリクエストデータの詳細情報が、ステップS1503で取得したリクエストルールの条件を満たす(一致する)と決定する。   In step S1615, the CPU 201 of the proxy server 101 determines that the request rule acquired in step S1502 matches the detailed information of the request data acquired in step S1003 (YES in step S1503), and the process proceeds to step S1504. . That is, in step S1615, it is determined that the detailed information of the request data acquired in step S1003 satisfies (matches) the condition of the request rule acquired in step S1503.

ステップS1616では、ステップS1003で取得したリクエストデータの詳細情報が、ステップS1503で取得したリクエストルールの条件を満たさない(一致しない)と判定し(ステップS1503でNO)、処理をステップS1501に移行する。
以下、図15のフローチャートの説明に戻る。
In step S1616, it is determined that the detailed information of the request data acquired in step S1003 does not satisfy (does not match) the request rule condition acquired in step S1503 (NO in step S1503), and the process proceeds to step S1501.
Returning to the flowchart of FIG.

プロキシサーバ101のCPU201は、ステップS1503において、リクエストデータの詳細情報が、ステップS1502で取得したリクエストルールにマッチすると判断した場合は(ステップS1503でYES)、当該リクエストルールの動作9111に設定されている動作を行う設定(動作設定が許可か禁止かの設定)を行い(ステップS1504)、処理をステップS1005に移行する。   If the CPU 201 of the proxy server 101 determines in step S1503 that the detailed information of the request data matches the request rule acquired in step S1502 (YES in step S1503), it is set in the operation 9111 of the request rule. A setting for performing the operation (setting whether the operation setting is permitted or prohibited) is performed (step S1504), and the process proceeds to step S1005.

一方、ステップS1503において、リクエストデータの詳細情報が当該リクエストルールにマッチしないと判断した場合は(ステップS1503でNO)、CPU201はステップS1501に処理を戻す。   On the other hand, when it is determined in step S1503 that the detailed information of the request data does not match the request rule (NO in step S1503), the CPU 201 returns the process to step S1501.

そしてステップS1501で、未適用のリクエストルールがない(全てのリクエストルールを適用した)と判断した場合には(ステップS1501でNO)、CPU201は、デフォルト動作として予め設定されている(全てのリクエストルールに適合しなかった場合の)動作(中継の許可/禁止)を行う設定(動作設定が許可か禁止かの設定)を行い(ステップS1505)、処理をステップS1005に移行する。
以上が、図10のステップS1004のリクエストルール適用処理の詳細な説明である。
次に、図19を参照して、ステップS1008の詳細処理を説明する。
図19は、図10に示すステップS1008の詳細処理を示すフローチャートである。
即ち、本処理は、プロキシサーバ101のCPU201によって行われる。
If it is determined in step S1501 that there is no unapplied request rule (all request rules have been applied) (NO in step S1501), the CPU 201 is preset as a default operation (all request rules). (When the operation setting is permitted or prohibited) is set (step S1505), and the process proceeds to step S1005.
The above is the detailed description of the request rule application process in step S1004 of FIG.
Next, detailed processing in step S1008 will be described with reference to FIG.
FIG. 19 is a flowchart showing detailed processing of step S1008 shown in FIG.
That is, this process is performed by the CPU 201 of the proxy server 101.

プロキシサーバ101のCPU201は、ステップS1006で受信したレスポンスデータにファイルが含まれているか否かを判定する(ステップS1901)。そして、レスポンスデータにファイルが含まれていないと判定された場合は(ステップS1901でNO)、処理をステップS1908に移行する。   The CPU 201 of the proxy server 101 determines whether or not a file is included in the response data received in step S1006 (step S1901). If it is determined that no file is included in the response data (NO in step S1901), the process proceeds to step S1908.

一方、ステップS1901で、レスポンスデータにファイルが含まれていると判定された場合は(ステップS1901でYES)、当該ファイルのファイルサイズを取得する(ステップS1902)。ここで、ファイルサイズは、レスポンスデータに含まれているファイルを解析して、当該ファイルのファイルサイズを計算することにより取得される。   On the other hand, if it is determined in step S1901 that the response data includes a file (YES in step S1901), the file size of the file is acquired (step S1902). Here, the file size is obtained by analyzing the file included in the response data and calculating the file size of the file.

次に、プロキシサーバ101のCPU201は、レスポンスデータに含まれるファイルのファイル形式を判定する。ここで、ファイル形式は、ファイルの拡張子ではなく、ファイルに含まれるマジックナンバーを用いて判定される。
ファイルには、通常マジックナンバーと呼ばれるファイル形式ごとに特徴的な情報がファイルの先頭や末尾などに格納されている。
Next, the CPU 201 of the proxy server 101 determines the file format of the file included in the response data. Here, the file format is determined using the magic number included in the file, not the file extension.
In the file, characteristic information for each file format, usually called a magic number, is stored at the beginning or end of the file.

例えば、ファイル形式がPDFの場合は、ファイルの先頭5バイトが%PDF−となる。レスポンスヘッダーに記載されたContent−Typeによらず、マジックナンバーでファイル形式を判定することでファイルに間違った拡張子が付与されている場合や、意図的に変更されている場合でも、本来のファイル形式を判定することが可能となる。尚、レスポンスデータに含まれるファイルが圧縮されている場合は、そのファイルを解凍した上でファイル形式を判定する。   For example, when the file format is PDF, the first 5 bytes of the file is% PDF-. Regardless of the Content-Type described in the response header, the original file can be used even if an incorrect extension is given to the file by judging the file format using the magic number, or when the file is intentionally changed. The format can be determined. If the file included in the response data is compressed, the file format is determined after decompressing the file.

マジックナンバーによるファイル形式の判定では、あらかじめファイル形式ごとのマジックナンバーを知っておく必要がある。ここでは、リクエストデータに含まれるファイルのファイル形式を判定するステップS1303と同様に、マジックナンバーによるファイル形式の判定で使用するファイル形式とマジックナンバーの対応表(図14)を用いて判定する。すなわち、ファイル内のマジックナンバーを取得し、当該取得したマジックナンバーに対応するファイル形式を、図14のファイル形式とマジックナンバーの対応表から特定することができる。   In determining the file format based on the magic number, it is necessary to know the magic number for each file format in advance. Here, as in step S1303 for determining the file format of the file included in the request data, the determination is made using the correspondence table (FIG. 14) of the file format used in the determination of the file format by the magic number. That is, the magic number in the file is acquired, and the file format corresponding to the acquired magic number can be specified from the correspondence table between the file format and the magic number in FIG.

次に、プロキシサーバ101のCPU201は、レスポンスデータに含まれるファイルのファイル名から、当該ファイル名に含まれている拡張子を取得する(ステップS1904)。   Next, the CPU 201 of the proxy server 101 acquires the extension included in the file name from the file name included in the response data (step S1904).

次に、プロキシサーバ101のCPU201は、ステップS1903で判定したファイル形式と、ステップS1904で取得した拡張子が一致しているか否かを判定する(ステップS1905)。ここで、ファイル形式と拡張子が一致しているか否かを判定する処理について説明する。   Next, the CPU 201 of the proxy server 101 determines whether or not the file format determined in step S1903 matches the extension acquired in step S1904 (step S1905). Here, a process for determining whether or not the file format and the extension match will be described.

ファイル形式には、通常付与される拡張子がある。例えば、ファイル形式がPDF(ポータブル・ドキュメント・フォーマット)であるファイルには、通常pdfが拡張子として付与される。また、ファイル形式がRTF(リッチテキストフォーマット)であるファイルには、通常rtfが拡張子として付与される。ファイル形式と付与されている拡張子が一致しているか否かの判定では、図17に示すようなファイル形式ごとに付与されるべき拡張子の対応表1700を使用する。   The file format has an extension that is usually given. For example, a file whose file format is PDF (Portable Document Format) is usually given pdf as an extension. Also, rtf is usually given as an extension to a file whose file format is RTF (rich text format). In determining whether the file format and the assigned extension match, an extension correspondence table 1700 to be given for each file format as shown in FIG. 17 is used.

図17に示すファイル形式と拡張子の対応表1700には、ファイル形式をファイル形式1701に、当該ファイル形式の拡張子を拡張子1702に記憶されている。   In the file format and extension correspondence table 1700 shown in FIG. 17, the file format is stored in the file format 1701, and the extension of the file format is stored in the extension 1702.

ファイル形式と拡張子が一致しているか否かを判定する場合は、ステップS1903で判定されたファイル形式をファイル形式1701から検索し、検索されたファイル形式に対応する(同一レコードの)拡張子を全て拡張子1702の列から取得する。   When determining whether or not the file format and the extension match, the file format determined in step S1903 is searched from the file format 1701, and the extension (of the same record) corresponding to the searched file format is searched. All are acquired from the column of the extension 1702.

そして、ステップS1904で取得した、ファイル名に付与されている拡張子が、当該取得した拡張子の中にある場合は、ファイル形式と拡張子が一致すると判断し、ない場合は一致しないと判断する。   If the extension attached to the file name acquired in step S1904 is included in the acquired extension, it is determined that the file format and the extension match, and if not, it is determined that they do not match. .

ステップS1905で、ファイル形式と拡張子が一致すると判定された場合には、拡張子の偽装はないことを示し、ファイル形式と拡張子が一致しないと判定された場合には、拡張子の偽装があることを示している。
以下、図19のフローチャートの説明に戻る。
If it is determined in step S1905 that the file format and the extension match, it indicates that the extension is not impersonated. If it is determined that the file format and the extension do not match, the extension is impersonated. It shows that there is.
Returning to the flowchart of FIG.

次に、プロキシサーバ101のCPU201は、ステップS1903で判定されたファイルのファイル形式が、テキスト情報を含むファイルのファイル形式であるか否かを判定する(ステップS1906)。   Next, the CPU 201 of the proxy server 101 determines whether or not the file format of the file determined in step S1903 is a file format of a file including text information (step S1906).

ステップS1906では、ステップS1903で判定されたファイルのファイル形式が、テキスト情報抽出情報1800(図18)のファイル形式1801に記憶されているか否かを判定することにより、テキスト情報を含むファイルのファイル形式であるか否かを判定する。   In step S1906, the file format of the file including text information is determined by determining whether or not the file format of the file determined in step S1903 is stored in the file format 1801 of the text information extraction information 1800 (FIG. 18). It is determined whether or not.

すなわち、ステップS1903で判定されたファイルのファイル形式が、テキスト情報抽出情報1800(図18)のファイル形式1801に記憶されている場合は、テキスト情報を含むファイルのファイル形式であると判定する。一方、テキスト情報抽出情報1800(図18)のファイル形式1801に記憶されていない場合は、テキスト情報を含むファイルのファイル形式であると判定する。   That is, when the file format of the file determined in step S1903 is stored in the file format 1801 of the text information extraction information 1800 (FIG. 18), it is determined that the file format includes the text information. On the other hand, if it is not stored in the file format 1801 of the text information extraction information 1800 (FIG. 18), it is determined that the file format is a file including text information.

プロキシサーバ101のCPU201は、ステップS1906において、テキスト情報を含むファイルのファイル形式であると判定された場合は(YES)、テキスト情報抽出情報1800に、該ファイル形式に関連付けて記憶されているテキスト抽出プログラムを実行し、ステップS1006で受信したレスポンスデータに含まれるファイルのテキスト情報を抽出し取得する(ステップS1907)。   If the CPU 201 of the proxy server 101 determines in step S1906 that the file format of the file including text information is YES (YES), the text extraction stored in the text information extraction information 1800 in association with the file format is extracted. The program is executed, and the text information of the file included in the response data received in step S1006 is extracted and acquired (step S1907).

以上のようにして、ファイルがテキスト情報を含む形式である場合は、ステップS1903で取得したファイルのファイル形式に適した方法でテキスト情報を取得することができる。例えば、表計算のアプリケーションのファイル形式であれば、その形式に適したプログラムでテキスト情報を取得することができる。   As described above, when the file has a format including text information, the text information can be acquired by a method suitable for the file format of the file acquired in step S1903. For example, in the case of a spreadsheet application file format, the text information can be acquired by a program suitable for the format.

プロキシサーバ101のCPU201は、ステップS1906において、テキスト情報を含まないファイルのファイル形式であると判定された場合(NO)、すなわち、テキスト情報を含まない画像等のファイル形式であると判定された場合は、処理をステップS1908に移行する。   If the CPU 201 of the proxy server 101 determines in step S1906 that the file format is a file that does not include text information (NO), that is, if it is determined that the file format is an image or the like that does not include text information. Shifts the processing to step S1908.

次に、プロキシサーバ101のCPU201は、ステップS1908では、レスポンスデータに含まれるファイル以外のフィールドのデータからテキスト情報を取得する。   Next, in step S1908, the CPU 201 of the proxy server 101 acquires text information from field data other than the file included in the response data.

さらに、ここで、プロキシサーバ101のCPU201は、通信管理テーブル(図21)の中から、レスポンスデータが送信されたウェブサーバ107のURL、及びレスポンスデータの送信先であるクライアントPC104のユーザ名を取得する。   Further, the CPU 201 of the proxy server 101 acquires the URL of the web server 107 to which the response data is transmitted and the user name of the client PC 104 to which the response data is transmitted from the communication management table (FIG. 21). To do.

ここでは、リクエストの送信、及びレスポンスデータの受信で用いられる通信回線を特定可能なプロセスIDに関連付けて通信管理テーブル2100に記憶されている、ウェブサーバのURL2103、及びユーザ名2104を取得する。   Here, the URL 2103 and the user name 2104 of the web server stored in the communication management table 2100 in association with the process ID that can identify the communication line used for request transmission and response data reception are acquired.

ステップS1901からステップS1908の処理で取得したレスポンスデータの詳細情報(ファイル、ファイルサイズ、ファイル形式、ファイルの拡張子、ファイル内のテキスト情報、ファイル以外のフィールドのテキスト情報、URL、ユーザ名など)は、レスポンスルール(条件)とマッチ(合致)するかを判定する処理(ステップS1009)で使用する。

次に、図20を参照して、ステップS109の詳細処理を説明する。
Detailed information of the response data (file, file size, file format, file extension, text information in the file, text information in fields other than the file, URL, user name, etc.) acquired in the processing from step S1901 to step S1908 This is used in the process of determining whether to match (match) the response rule (condition) (step S1009).

Next, detailed processing in step S109 will be described with reference to FIG.

図20は、図10に示すステップS1009の詳細処理を示すフローチャートである。即ち、本処理は、プロキシサーバ101のCPU201によって行われる。   FIG. 20 is a flowchart showing detailed processing of step S1009 shown in FIG. That is, this process is performed by the CPU 201 of the proxy server 101.

まず、プロキシサーバ101のCPU201は、図20のステップS2001において、未適用のレスポンスルールがあるか否かを判断する。プロキシサーバ101のCPU201は、未適用のレスポンスルールがある場合には(ステップS2001でYES)、レスポンスルールテーブル9200に登録されているレスポンスルールを適用順に1件ずつ取得する(ステップS2002)。   First, the CPU 201 of the proxy server 101 determines whether or not there is an unapplied response rule in step S2001 in FIG. If there is an unapplied response rule (YES in step S2001), the CPU 201 of the proxy server 101 acquires response rules registered in the response rule table 9200 one by one in the order of application (step S2002).

プロキシサーバ101のCPU201は、ステップS2003では、1502で取得したレスポンスルールの各条件がレスポンスデータにマッチ(合致)するか否かを判断する。
図16は、ステップS1503の詳細処理として上述して説明してきたが、ここからは、図16をステップS2003の詳細処理として説明する。
ここで、図16を参照して、レスポンスルールがレスポンスデータにマッチするか否かを判定する処理の詳細処理について説明する。
In step S2003, the CPU 201 of the proxy server 101 determines whether each condition of the response rule acquired in 1502 matches (matches) the response data.
FIG. 16 has been described above as the detailed process of step S1503. From here, FIG. 16 will be described as the detailed process of step S2003.
Here, with reference to FIG. 16, the detailed process of the process which determines whether a response rule matches response data is demonstrated.

図16は、図20のステップS2003に示したレスポンスルールがレスポンスデータにマッチするか否かを判定する処理の詳細処理を示すフローチャートである。即ち、本処理は、プロキシサーバ101のCPU201によって行われる。   FIG. 16 is a flowchart showing detailed processing for determining whether or not the response rule shown in step S2003 in FIG. 20 matches the response data. That is, this process is performed by the CPU 201 of the proxy server 101.

プロキシサーバ101のCPU201は、図16のステップS1601において、レスポンスルールテーブル9200から取得した当該レスポンスルールのURL9204にURLが設定されているか否かを判定する。プロキシサーバ101のCPU201は、URLが設定されていないと判定された場合は(ステップS1601でNO)、ステップS1603に処理を進める。一方、URLが設定されていると判定された場合は(ステップS1601でYES)、ステップS1602に処理を進める。   In step S1601 of FIG. 16, the CPU 201 of the proxy server 101 determines whether a URL is set in the URL 9204 of the response rule acquired from the response rule table 9200. If the CPU 201 of the proxy server 101 determines that the URL has not been set (NO in step S1601), the process proceeds to step S1603. On the other hand, if it is determined that the URL is set (YES in step S1601), the process proceeds to step S1602.

プロキシサーバ101のCPU201は、ステップS1602では、当該レスポンスルールのURL9204に設定されているURLが、ステップS1908で取得したURLにマッチするか否かを判定する。プロキシサーバ101のCPU201は、マッチしないと判定された場合は(ステップS1602でNO)、ステップS1008で取得したレスポンスデータが、ステップS2003で取得したレスポンスルールの条件に該当しない(一致しない)と決定する(ステップS1616)。一方、プロキシサーバ101のCPU201は、マッチすると判断した場合は(ステップS1602でYES)、ステップS1603に処理を進める。   In step S1602, the CPU 201 of the proxy server 101 determines whether or not the URL set in the URL 9204 of the response rule matches the URL acquired in step S1908. If the CPU 201 of the proxy server 101 determines that they do not match (NO in step S1602), the CPU 201 determines that the response data acquired in step S1008 does not match (does not match) the response rule condition acquired in step S2003. (Step S1616). On the other hand, if the CPU 201 of the proxy server 101 determines that there is a match (YES in step S1602), the process proceeds to step S1603.

プロキシサーバ101のCPU201は、ステップS1603では、ステップS2002でレスポンスルールテーブル9200から取得した当該レスポンスルールのカテゴリ9205にカテゴリが設定されているか否かを判定する。プロキシサーバ101のCPU201は、カテゴリが設定されていない場合は(ステップS1603でNO)、ステップS1605に処理を進める。一方、カテゴリが設定されている場合は(ステップS1603でYES)、ステップS1604に処理を進める。   In step S1603, the CPU 201 of the proxy server 101 determines whether or not a category is set in the response rule category 9205 acquired from the response rule table 9200 in step S2002. If the category is not set (NO in step S1603), the CPU 201 of the proxy server 101 advances the process to step S1605. On the other hand, if a category is set (YES in step S1603), the process proceeds to step S1604.

プロキシサーバ101のCPU201は、ステップS1604では、ステップS2002で取得したレスポンスルールに設定されているカテゴリが、ステップS1002でのURLカテゴリ判定処理で判定されたカテゴリと同一か(マッチするか)否かを判定する。   In step S1604, the CPU 201 of the proxy server 101 determines whether the category set in the response rule acquired in step S2002 is the same as (matches) the category determined in the URL category determination process in step S1002. judge.

すなわち、ここでは、ステップS1908で取得したURLのカテゴリがステップS1002で判定されており、その判定結果であるカテゴリと、ステップS2002で取得したレスポンスルールに設定されているカテゴリとが同一か否かを判定する。そして、同一ではない(マッチしない)と判定された場合は(ステップS1604でNO)、処理をステップS1616に移行する。また、ステップS1002のURLカテゴリ判定処理でカテゴリなしと判定された場合も当該レスポンスルールがレスポンスデータにマッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判定された場合は(ステップS1604でYES)、ステップS1605に処理を進める。   That is, here, the category of the URL acquired in step S1908 is determined in step S1002, and it is determined whether the category that is the determination result is the same as the category set in the response rule acquired in step S2002. judge. If it is determined that they are not the same (not matched) (NO in step S1604), the process proceeds to step S1616. If it is determined that there is no category in the URL category determination process in step S1002, it is determined that the response rule does not match the response data, and the process proceeds to step S1616. On the other hand, if it is determined to match (YES in step S1604), the process proceeds to step S1605.

プロキシサーバ101のCPU201は、ステップS1605では、ステップS2002で取得したレスポンスルールのファイル形式9206にファイル形式が設定されているか否かを判断する。そして、ファイル形式が設定されていないと判定された場合は(ステップS1605でNO)、ステップS1607に処理を進める。一方、ファイル形式が設定されていると判定された場合は(ステップS1605でYES)、ステップS1606に処理を進める。   In step S1605, the CPU 201 of the proxy server 101 determines whether a file format is set in the file format 9206 of the response rule acquired in step S2002. If it is determined that the file format is not set (NO in step S1605), the process proceeds to step S1607. On the other hand, if it is determined that the file format is set (YES in step S1605), the process proceeds to step S1606.

プロキシサーバ101のCPU201は、ステップS1606では、ファイル形式9206に設定されているファイル形式が、ステップS1903で判定されたファイルのファイル形式にマッチするか否かを判定する。マッチしないと判定された場合は(ステップS1606でNO)、処理をステップS1616に移行する。   In step S1606, the CPU 201 of the proxy server 101 determines whether the file format set in the file format 9206 matches the file format of the file determined in step S1903. If it is determined that they do not match (NO in step S1606), the process proceeds to step S1616.

また、プロキシサーバ101のCPU201は、レスポンスデータにファイルが含まれていない場合も、当該レスポンスルールがレスポンスデータにマッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判断した場合は(ステップS1606でYES)、CPU201は、ステップS1607に処理を進める。 Further, even if the response data does not include a file, the CPU 201 of the proxy server 101 determines that the response rule does not match the response data, and the process proceeds to step S1616. On the other hand, if it is determined that there is a match (YES in step S1606), the CPU 201 advances the process to step S1607.

プロキシサーバ101のCPU201は、ステップS1607では、ステップS2002で取得したレスポンスルールのサイズ9207及びサイズ条件9208が設定されているか否かを判断する。サイズ及びサイズ条件が設定されていないと判定された場合は(ステップS1607でNO)、ステップS1609に処理を進める。一方、サイズ及びサイズ条件が設定されている場合は(ステップS1607でYES)、ステップS1608に処理を進める。   In step S1607, the CPU 201 of the proxy server 101 determines whether the response rule size 9207 and size condition 9208 acquired in step S2002 are set. If it is determined that the size and the size condition are not set (NO in step S1607), the process proceeds to step S1609. On the other hand, if the size and the size condition are set (YES in step S1607), the process proceeds to step S1608.

プロキシサーバ101のCPU201は、ステップS1608では、ステップS1902で取得したファイルのサイズが、ステップS2002で取得したレスポンスルールのサイズ9207及びサイズ条件9208を満たすか(マッチするか)否かを判定する。マッチしないと判断した場合は(ステップS1608でNO)、処理をステップS1616に移行する。また、レスポンスデータにファイルが含まれていない場合も、当該レスポンスルールがレスポンスデータにマッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判断した場合は(ステップS1608でYES)、CPU201は、ステップS1609に処理を進める。   In step S1608, the CPU 201 of the proxy server 101 determines whether or not the size of the file acquired in step S1902 satisfies (matches) the size 9207 and size condition 9208 of the response rule acquired in step S2002. If it is determined that they do not match (NO in step S1608), the process proceeds to step S1616. If the response data does not include a file, it is determined that the response rule does not match the response data, and the process proceeds to step S1616. On the other hand, if it is determined that there is a match (YES in step S1608), the CPU 201 advances the process to step S1609.

ステップS1609では、ステップS2002で取得したレスポンスルールのファイル形式と拡張子9209にファイル形式と拡張子の一致条件が設定されているか否かを判断する。ファイル形式と拡張子の一致条件が設定されていないと判定された場合は(ステップS1609でNO)、ステップS1611に処理を進める。一方、ファイル形式と拡張子の一致条件が設定されていると判定された場合は(ステップS1609でYES)、ステップS1610に処理を進める。   In step S1609, it is determined whether or not a matching condition between the file format and the extension is set in the file format and extension 9209 of the response rule acquired in step S2002. If it is determined that the matching condition between the file format and the extension is not set (NO in step S1609), the process proceeds to step S1611. On the other hand, if it is determined that the matching condition between the file format and the extension is set (YES in step S1609), the process proceeds to step S1610.

プロキシサーバ101のCPU201は、ステップS1610では、図13のステップS1905での判定結果(ファイル形式と拡張子が一致するか否かの判定結果[一致する/一致しない])と、ステップS2002で取得したレスポンスルールの「ファイル形式と拡張子」9209に設定された一致する/一致しないという条件が、一致するか(マッチするか)否かを判定する。マッチしないと判定された場合は(ステップS1610でNO)、処理をステップS1616に移行する。また、レスポンスデータにファイルが含まれていない場合も、当該レスポンスルールがレスポンスデータにマッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判断した場合は(ステップS1610でYES)、CPU201は、ステップS1611に処理を進める。   In step S1610, the CPU 201 of the proxy server 101 acquires the determination result in step S1905 in FIG. 13 (determination result whether the file format and extension match [match / does not match]), and step S2002. It is determined whether or not the matching / non-matching conditions set in the “file format and extension” 9209 of the response rule match (match). If it is determined that they do not match (NO in step S1610), the process proceeds to step S1616. If the response data does not include a file, it is determined that the response rule does not match the response data, and the process proceeds to step S1616. On the other hand, if it is determined that they match (YES in step S1610), the CPU 201 advances the process to step S1611.

プロキシサーバ101のCPU201は、ステップS1611では、ステップS2002で取得したレスポンスルールのキーワード9210にキーワードが設定されているか否かを判断する。キーワードが設定されていないと判定された場合は(ステップS1611でNO)、ステップS1613に処理を進める。一方、キーワードが設定されている場合は(ステップS1611でYES)、ステップS1612に処理を進める。   In step S1611, the CPU 201 of the proxy server 101 determines whether or not a keyword is set in the response rule keyword 9210 acquired in step S2002. If it is determined that no keyword is set (NO in step S1611), the process proceeds to step S1613. On the other hand, if a keyword is set (YES in step S1611), the process proceeds to step S1612.

プロキシサーバ101のCPU201は、ステップS1612では、ステップS1907及びステップS1808で取得したテキスト情報が、ステップS2002で取得したレスポンスルールのキーワード9210に設定されているキーワードの条件を満たすか(マッチするか)否かを判定する。すなわち、ステップS1612では、ステップS2002で取得したレスポンスルールのキーワード9210に設定されているキーワードが、ステップS1907及びステップS1908で取得したテキスト情報の中に含まれているかを判定する。マッチしないと判断した場合は(ステップS1612でNO)、処理をステップS1616に移行する。また、レスポンスデータにテキスト情報が含まれない場合も、マッチしないと判断して処理をステップS1616に移行する。一方、マッチすると判断した場合は(ステップS1612でYES)、CPU201は、ステップS1613に処理を進める。   In step S1612, the CPU 201 of the proxy server 101 determines whether the text information acquired in steps S1907 and S1808 satisfies (matches) the condition of the keyword set in the keyword 9210 of the response rule acquired in step S2002. Determine whether. That is, in step S1612, it is determined whether the keyword set in the response rule keyword 9210 acquired in step S2002 is included in the text information acquired in steps S1907 and S1908. If it is determined that they do not match (NO in step S1612), the process proceeds to step S1616. If the response data does not include text information, it is determined that there is no match, and the process proceeds to step S1616. On the other hand, if it is determined that they match (YES in step S1612), the CPU 201 advances the process to step S1613.

ステップS1613において、プロキシサーバ101のCPU201は、ステップS2002で取得したレスポンスルールのユーザ/グループ9203にユーザ名又はグループ名が設定されているか否かを判定する。そして、ステップS2002で取得したレスポンスルールのユーザ/グループ9203にユーザ名又はグループ名が設定されていると判定された場合は(ステップS1613でYES)、処理をステップS1614に移行する。一方、ユーザ/グループ9203にユーザ名又はグループ名が設定されていないと判定された場合は(ステップS1613でNO)、処理をステップS1615に移行する。   In step S1613, the CPU 201 of the proxy server 101 determines whether a user name or a group name is set in the user / group 9203 of the response rule acquired in step S2002. If it is determined that the user name or group name is set in the user / group 9203 of the response rule acquired in step S2002 (YES in step S1613), the process proceeds to step S1614. On the other hand, if it is determined that no user name or group name is set for the user / group 9203 (NO in step S1613), the process proceeds to step S1615.

ステップS1614において、プロキシサーバ101のCPU201は、ステップS1908で通信管理テーブル(図21)から取得したユーザ名又はグループ名と、ステップS2002で取得したレスポンスルールのユーザ名又はグループ名とが一致するか否かを判定する。そして、一致すると判定された場合は(ステップS1614でYES)、処理をステップS1615に移行する。   In step S1614, the CPU 201 of the proxy server 101 determines whether the user name or group name acquired from the communication management table (FIG. 21) in step S1908 matches the user name or group name of the response rule acquired in step S2002. Determine whether. If it is determined that they match (YES in step S1614), the process proceeds to step S1615.

ステップS1615では、プロキシサーバ101のCPU201は、ステップS2002で取得したレスポンスルールが、ステップS1008で取得したレスポンスデータの詳細情報にマッチすると判定して(ステップS2003でYES)、処理をステップS2004に移行する。すなわち、ステップS1615では、ステップS1008で取得したレスポンスデータの詳細情報が、ステップS2003で取得したレスポンスルールの条件を満たす(一致する)と決定する。   In step S1615, the CPU 201 of the proxy server 101 determines that the response rule acquired in step S2002 matches the detailed information of the response data acquired in step S1008 (YES in step S2003), and the process proceeds to step S2004. . That is, in step S1615, it is determined that the detailed information of the response data acquired in step S1008 satisfies (matches) the condition of the response rule acquired in step S2003.

ステップS1616では、ステップS1008で取得したレスポンスデータの詳細情報が、ステップS2003で取得したレスポンスルールの条件を満たさない(一致しない)と判定し(ステップS2003でNO)、処理をステップS2001に移行する。
以下、図20のフローチャートの説明に戻る。
In step S1616, it is determined that the detailed information of the response data acquired in step S1008 does not satisfy (does not match) the response rule conditions acquired in step S2003 (NO in step S2003), and the process proceeds to step S2001.
Hereinafter, the description returns to the flowchart of FIG.

プロキシサーバ101のCPU201は、ステップS2003において、レスポンスデータの詳細情報が、ステップS2002で取得したレスポンスルールにマッチすると判断した場合は(ステップS2003でYES)、当該レスポンスルールの動作9211に設定されている動作を行う設定(動作設定が許可か禁止かの設定)を行い(ステップS2004)、処理をステップS1010に移行する。   If the CPU 201 of the proxy server 101 determines in step S2003 that the detailed information of the response data matches the response rule acquired in step S2002 (YES in step S2003), it is set in the operation 9211 of the response rule. A setting for performing the operation (setting whether the operation setting is permitted or prohibited) is performed (step S2004), and the process proceeds to step S1010.

一方、ステップS2003において、レスポンスデータの詳細情報が当該レスポンスルールにマッチしないと判断した場合は(ステップS2003でNO)、CPU201はステップS2001に処理を戻す。   On the other hand, if it is determined in step S2003 that the detailed information of the response data does not match the response rule (NO in step S2003), the CPU 201 returns the process to step S2001.

そしてステップS2001で、未適用のレスポンスルールがない(全てのレスポンスルールを適用した)と判断した場合には(ステップS2001でNO)、CPU201は、デフォルト動作として予め設定されている(全てのレスポンスルールに適合しなかった場合の)動作(中継の許可/禁止)を行う設定(動作設定が許可か禁止かの設定)を行い(ステップS2005)、処理をステップS1010に移行する。
以上が、図10のステップS1009のレスポンスルール適用処理の詳細な説明である。
図10の説明に戻る。
If it is determined in step S2001 that there are no unapplied response rules (all response rules have been applied) (NO in step S2001), the CPU 201 is preset as a default operation (all response rules). (When the operation setting is permitted or prohibited) is set (step S2005), and the process proceeds to step S1010.
The above is the detailed description of the response rule application process in step S1009 of FIG.
Returning to the description of FIG.

次に、プロキシサーバ101のCPU201は、ステップS1010において、ステップS1009のレスポンスルール適用処理で設定されたレスポンスデータの通信(中継)の動作設定が許可か禁止かを判定する。そして、禁止された動作設定であると判定した場合には(ステップS1010でNO)、プロキシサーバ101のCPU201は、リクエストを送信したクライアントPC104に対して、レスポンスデータの中継が禁止された旨を示す応答(通信不許可情報)を送信し(ステップS1012)、本フローチャートの処理を終了する。   Next, in step S1010, the CPU 201 of the proxy server 101 determines whether the response data communication (relay) operation setting set in the response rule application processing in step S1009 is permitted or prohibited. If it is determined that the operation setting is prohibited (NO in step S1010), the CPU 201 of the proxy server 101 indicates to the client PC 104 that transmitted the request that relaying of response data is prohibited. A response (communication non-permission information) is transmitted (step S1012), and the processing of this flowchart ends.

一方、プロキシサーバ101のCPU201は、ステップS1009のレスポンスルールの適用処理で設定されたレスポンスデータの通信(中継)の動作設定が許可された動作設定であると判定された場合には(ステップS1010でYES)、ステップS1011に処理を進める。   On the other hand, if the CPU 201 of the proxy server 101 determines that the response data communication (relay) operation setting set in the response rule application processing in step S1009 is permitted operation setting (in step S1010). YES), the process proceeds to step S1011.

ステップS1011では、プロキシサーバ101のCPU201は、リクエストを送信したクライアントPC104に、当該リクエストの応答である、ウェブサーバ107から送信されたレスポンスデータを送信する。このとき、リクエストデータを送信する際に用いた通信回線を用いて、レスポンスデータを送信する。すなわち、当該通信回線を特定可能なプロセスID2101に関連付けて記憶されたクライアントPCのIPアドレスで特定されるクライアントPCにレスポンスデータを送信する。
In step S1011, the CPU 201 of the proxy server 101 transmits response data transmitted from the web server 107, which is a response to the request, to the client PC 104 that transmitted the request. At this time, the response data is transmitted using the communication line used when transmitting the request data. That is, response data is transmitted to the client PC specified by the IP address of the client PC stored in association with the process ID 2101 that can specify the communication line.

以上のように、本発明によれば、ファイルのマジックナンバーからリクエストデータやレスポンスデータに含まれるファイルの形式を判定することで、ファイルに間違った拡張子が付与されている場合や、意図的に変更されている場合でも本来のファイル形式を判定し、その判定結果に基づきリクエストデータやレスポンスデータに含まれるファイルを検査し、あらかじめ設定されている制御ルールの各条件とマッチするか否かを判断することで、HTTPによるファイルの送受信を的確に制御(許可/禁止)することができる。   As described above, according to the present invention, by determining the format of the file included in the request data or the response data from the magic number of the file, a case where an incorrect extension is given to the file, or intentionally Even if it has been changed, the original file format is determined, and based on the determination result, the files included in the request data and response data are inspected to determine whether or not each condition of the preset control rule is matched. By doing so, it is possible to accurately control (permit / inhibit) file transmission / reception by HTTP.

以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。   Although one embodiment has been described above, the present invention can take an embodiment as, for example, a system, apparatus, method, program, or recording medium, and specifically includes a plurality of devices. The present invention may be applied to a system including a single device.

また、リクエストルール詳細画面700や不図示のレスポンスルール詳細画面においてクライアントPC104のIPアドレスを設定できるようにしても良い。この場合は特定のIPアドレスを持つクライアントPC104が行う通信にのみリクエストルールやレスポンスルールを適用するといった制御が可能となる。   Further, the IP address of the client PC 104 may be set on the request rule details screen 700 or a response rule details screen (not shown). In this case, it is possible to perform control such that the request rule and the response rule are applied only to communication performed by the client PC 104 having a specific IP address.

もしくは、リクエストルール詳細設定画面700や不図示のレスポンスルール詳細画面においてユーザおよびユーザグループを設定できるようにしても良い。この場合は、特定のユーザおよびユーザグループが行う通信にのみリクエストルールやレスポンスルールを適用するといった制御が可能になる。 Alternatively, the user and the user group may be set on the request rule detail setting screen 700 or a response rule detail screen (not shown). In this case, it is possible to perform control such that the request rule and the response rule are applied only to communication performed by a specific user and user group.

また、HTTPSといった暗号化通信の場合は、リクエストやレスポンスの詳細情報を取得してリクエストルールやレスポンスルールを適用することができないが、その場合は暗号化通信であれば、通信を禁止するように設定可能にしても良い。もちろん、何らかの手段により、暗号化通信の詳細情報を取得できる場合は、リクエストルールやレスポンスルールを適用して通信の制御(許可/禁止)を行っても構わない。   In addition, in the case of encrypted communication such as HTTPS, it is not possible to apply request rules and response rules by acquiring detailed information of requests and responses, but in that case, if communication is encrypted, communication is prohibited. It may be settable. Of course, when the detailed information of the encrypted communication can be acquired by some means, the control (permission / prohibition) of the communication may be performed by applying the request rule or the response rule.

以上説明したように、本実施の形態によれば、データの送受信先やファイル形式に応じて通信データに含まれるファイルの送受信制御を的確に行うことができる。 As described above, according to the present embodiment, transmission / reception control of a file included in communication data can be accurately performed according to a data transmission / reception destination and a file format.

以上、本発明の一実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。 Although one embodiment of the present invention has been described in detail above, the present invention can take an embodiment as, for example, a system, an apparatus, a method, a program, or a storage medium. You may apply to the system comprised from an apparatus, and may apply to the apparatus which consists of one apparatus.

また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。 Another object of the present invention is to supply a storage medium storing software program codes for realizing the functions of the above-described embodiments to a system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the storage medium. Needless to say, this can also be achieved by reading and executing the program code stored in.

この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。 In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code itself and the storage medium storing the program code constitute the present invention.

プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。 As a storage medium for supplying the program code, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.

また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(基本システム或いはオペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (basic system or operating system) running on the computer based on the instruction of the program code. Needless to say, a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.

さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, after the program code read from the storage medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function is determined based on the instruction of the program code. It goes without saying that the CPU or the like provided in the expansion board or function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.

101 プロキシサーバ 102 ルールデータベース 103 URLデータベース 104−1 クライアントPC 104−2 クライアントPC 104−3 クライアントPC 105 LAN 106 広域ネットワーク 107−1 ウェブサーバ 107−2 ウェブサーバ 107−3 ウェブサーバ DESCRIPTION OF SYMBOLS 101 Proxy server 102 Rule database 103 URL database 104-1 Client PC 104-2 Client PC 104-3 Client PC 105 LAN 106 Wide area network 107-1 Web server 107-2 Web server 107-3 Web server

Claims (5)

データを送信するデータ送信装置と通信可能であり、当該データの送信制御を行う情報処理装置であって、
ファイルの送信元を特定する送信元情報と、当該ファイルの拡張子の偽装があるときに当該送信元からの当該ファイルの送信を許可するか禁止するかが設定された設定情報とを対応づけた送信ルール情報を記憶する記憶手段と、
前記データ送信装置から送信された前記ファイルに対して、当該ファイル内のデータから判定されるファイル形式と当該ファイルのファイル名の拡張子から判定されるファイル形式とが同じであるかを判定する偽装判定手段と、
前記偽装判定手段でファイル形式が異なると判定された場合、前記ファイルの送信元に対応した前記送信ルール情報に従って、当該ファイルの送信を許可するか禁止するかを制御する送信制御手段と、
を備えることを特徴とする情報処理装置。
An information processing apparatus capable of communicating with a data transmission apparatus that transmits data and performing transmission control of the data,
The source information that identifies the source of the file is associated with the setting information that is set to allow or prohibit transmission of the file from the source when the extension of the file is forged Storage means for storing transmission rule information;
Impersonation for determining whether the file format determined from the data in the file and the file format determined from the file name extension of the file are the same for the file transmitted from the data transmission device A determination means;
When it is determined that the file format is different by the impersonation determination unit, according to the transmission rule information corresponding to the transmission source of the file, transmission control unit for controlling whether to permit or prohibit transmission of the file;
An information processing apparatus comprising:
前記記憶手段は、更に、複数の送信ルール情報に対して、当該送信ルール情報を適用する優先順位を記憶し、
前記送信制御手段は、前記優先順位の順番で適用される前記送信ルール情報に従って、当該ファイルの送信を許可するか禁止するかを制御することを特徴とする請求項1に記載の情報処理装置。
The storage means further stores a priority order of applying the transmission rule information to a plurality of transmission rule information,
The information processing apparatus according to claim 1, wherein the transmission control unit controls whether to permit or prohibit transmission of the file according to the transmission rule information applied in the order of priority.
前記記憶手段に記憶される送信ルール情報の送信元情報は、送信元の分野を示すカテゴリを含み、
ファイルの送信元と、当該送信元の分野を示すカテゴリとを含むカテゴリ情報を記憶したカテゴリ記憶手段と、
前記カテゴリ記憶手段に記憶されたカテゴリ情報に従って、前記ファイルの送信元から、当該送信元に対応するカテゴリを判定するカテゴリ判定手段と、
を更に備え、
前記形式送信制御手段は、前記送信ルール情報を用いて、前記カテゴリ判定手段により判定されたカテゴリに従って、送信を許可するファイル形式を決定する決定手段と、
を更に備えることを特徴とする請求項1又は2に記載の情報処理装置。
The transmission source information of the transmission rule information stored in the storage means includes a category indicating the field of the transmission source,
Category storage means for storing category information including a transmission source of the file and a category indicating the field of the transmission source;
Category determination means for determining a category corresponding to the transmission source from the transmission source of the file according to the category information stored in the category storage means;
Further comprising
The format transmission control means uses the transmission rule information to determine a file format that permits transmission according to the category determined by the category determination means;
The information processing apparatus according to claim 1, further comprising:
データを送信するデータ送信装置と通信可能であり、当該データの送信制御を行う情報処理装置における情報処理方法であって、
記憶手段が、ファイルの送信元を特定する送信元情報と、当該ファイルの拡張子の偽装があるときに当該送信元からの当該ファイルの送信を許可するか禁止するかが設定された設定情報とを対応づけた送信ルール情報を記憶する記憶工程と、
偽装判定手段が、前記データ送信装置から送信された前記ファイルに対して、当該ファイル内のデータから判定されるファイル形式と当該ファイルのファイル名の拡張子から判定されるファイル形式とが同じであるかを判定する偽装判定工程と、
送信制御手段が、前記偽装判定工程でファイル形式が異なると判定された場合、前記ファイルの送信元に対応した前記送信ルール情報に従って、当該ファイルの送信を許可するか禁止するかを制御する送信制御工程と、
を備えることを特徴とする情報処理方法。
An information processing method in an information processing apparatus capable of communicating with a data transmission apparatus that transmits data and performing transmission control of the data,
The storage means has transmission source information for identifying the transmission source of the file, and setting information for setting whether to permit or prohibit transmission of the file from the transmission source when there is a camouflaged extension of the file. A storage step of storing transmission rule information associated with
For the file transmitted from the data transmission device, the file format determined from the data in the file is the same as the file format determined from the extension of the file name of the file. A camouflage determination step for determining whether or not
If the transmission control means determines that the file format is different in the impersonation determination step, transmission control for controlling whether to permit or prohibit transmission of the file according to the transmission rule information corresponding to the transmission source of the file Process,
An information processing method comprising:
データを送信するデータ送信装置と通信可能であり、当該データの送信制御を行う情報処理装置として機能させるプログラムであって、
前記情報処理装置を、
ファイルの送信元を特定する送信元情報と、当該ファイルの拡張子の偽装があるときに当該送信元からの当該ファイルの送信を許可するか禁止するかが設定された設定情報とを対応づけた送信ルール情報を記憶する記憶手段と、
前記データ送信装置から送信された前記ファイルに対して、当該ファイル内のデータから判定されるファイル形式と当該ファイルのファイル名の拡張子から判定されるファイル形式とが同じであるかを判定する偽装判定手段と、
前記偽装判定手段でファイル形式が異なると判定された場合、前記ファイルの送信元に対応した前記送信ルール情報に従って、当該ファイルの送信を許可するか禁止するかを制御する送信制御手段と、として機能させることを特徴とするプログラム。
A program that can communicate with a data transmission device that transmits data and that functions as an information processing device that performs transmission control of the data,
The information processing apparatus;
The source information that identifies the source of the file is associated with the setting information that is set to allow or prohibit transmission of the file from the source when the extension of the file is forged Storage means for storing transmission rule information;
Impersonation for determining whether the file format determined from the data in the file and the file format determined from the file name extension of the file are the same for the file transmitted from the data transmission device A determination means;
When the camouflage determination means determines that the file format is different, the transmission control means controls whether to permit or prohibit transmission of the file according to the transmission rule information corresponding to the transmission source of the file A program characterized by letting
JP2012101738A 2012-04-26 2012-04-26 Information processing apparatus, information processing method, and program Active JP5500200B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012101738A JP5500200B2 (en) 2012-04-26 2012-04-26 Information processing apparatus, information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012101738A JP5500200B2 (en) 2012-04-26 2012-04-26 Information processing apparatus, information processing method, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010091842A Division JP4993323B2 (en) 2010-04-12 2010-04-12 Information processing apparatus, information processing method, and program

Publications (3)

Publication Number Publication Date
JP2012198906A true JP2012198906A (en) 2012-10-18
JP2012198906A5 JP2012198906A5 (en) 2013-05-30
JP5500200B2 JP5500200B2 (en) 2014-05-21

Family

ID=47181004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012101738A Active JP5500200B2 (en) 2012-04-26 2012-04-26 Information processing apparatus, information processing method, and program

Country Status (1)

Country Link
JP (1) JP5500200B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7220965B1 (en) 2021-09-23 2023-02-13 比奈鉄工株式会社 Winding machine with dispensing mechanism

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259187A (en) * 2001-03-01 2002-09-13 Nec Corp Attachable/detachable file monitoring system aiming at detection and elimination of abnormal file
JP2005222207A (en) * 2004-02-04 2005-08-18 Duaxes Corp Filtering method and device for communication data
JP2007018327A (en) * 2005-07-08 2007-01-25 Jfe Soldec Corp Communication system and communication method
JP2007228449A (en) * 2006-02-27 2007-09-06 Alaxala Networks Corp Packet repeater, packet relay method and packet relay program
JP2009128982A (en) * 2007-11-20 2009-06-11 Hitachi Ltd Transmission control apparatus, transmission control method and program
JP2010277487A (en) * 2009-05-29 2010-12-09 Canon It Solutions Inc Information processor, information processing method, and program
JP2011138229A (en) * 2009-12-25 2011-07-14 Canon It Solutions Inc Apparatus and method for processing information, and computer program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259187A (en) * 2001-03-01 2002-09-13 Nec Corp Attachable/detachable file monitoring system aiming at detection and elimination of abnormal file
JP2005222207A (en) * 2004-02-04 2005-08-18 Duaxes Corp Filtering method and device for communication data
JP2007018327A (en) * 2005-07-08 2007-01-25 Jfe Soldec Corp Communication system and communication method
JP2007228449A (en) * 2006-02-27 2007-09-06 Alaxala Networks Corp Packet repeater, packet relay method and packet relay program
JP2009128982A (en) * 2007-11-20 2009-06-11 Hitachi Ltd Transmission control apparatus, transmission control method and program
JP2010277487A (en) * 2009-05-29 2010-12-09 Canon It Solutions Inc Information processor, information processing method, and program
JP2011138229A (en) * 2009-12-25 2011-07-14 Canon It Solutions Inc Apparatus and method for processing information, and computer program

Also Published As

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

Similar Documents

Publication Publication Date Title
US7343559B1 (en) Computer-readable recorded medium on which image file is recorded, device for producing the recorded medium, medium on which image file creating program is recorded, device for transmitting image file, device for processing image file, and medium on which image file processing program is recorded
EP2922273A1 (en) Resource sharing method, apparatus, system, and terminal, and resource management center
EP1231546A1 (en) Information providing system and identification information adding device
JP4993323B2 (en) Information processing apparatus, information processing method, and program
US20110173215A1 (en) Retrieval system, retrieval space map server apparatus and program
JP3840508B1 (en) Information collection software management system, management server and management program
JP2008158695A (en) Information processing system and program for providing online service
JP5500200B2 (en) Information processing apparatus, information processing method, and program
JP5051786B2 (en) Information processing apparatus, information processing method, and program
JP4738447B2 (en) Information processing apparatus, information processing method, and computer program
JP2009251754A (en) Page customizing server, page customizing program, and page customizing method
JP2004303023A (en) Access managing method
JP2008123067A (en) Document processing management system
JP2008059206A (en) Software management system, management server, and management program
JP5197344B2 (en) Information processing apparatus, information processing method, and computer program
JP2004318308A (en) Access management system, and information communication terminal used for access management device and access management system
JP2019053613A (en) Information processing device, information processing system, control method, and program
JP4917666B2 (en) Information processing apparatus, information processing method, and computer program
JP2002358274A (en) Intranet system
JP5801218B2 (en) URL filtering system
JP5523268B2 (en) Search space setting device and search system using the same
JP5948930B2 (en) Relay device, method and program
JP4794544B2 (en) Information processing apparatus, information processing method, and program
JP5285136B2 (en) Information processing apparatus, information processing method, and program
JP2002229994A (en) Data structure storage medium storing information image file, system for providing the same, program for activating the system, recording medium with the program recorded thereon and information terminal device, program for activating the terminal device, recording medium with the program recorded thereon

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130412

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130412

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130531

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130531

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140131

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140225

R150 Certificate of patent or registration of utility model

Ref document number: 5500200

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250