JP2005043938A - Access controller and its method - Google Patents

Access controller and its method Download PDF

Info

Publication number
JP2005043938A
JP2005043938A JP2003199635A JP2003199635A JP2005043938A JP 2005043938 A JP2005043938 A JP 2005043938A JP 2003199635 A JP2003199635 A JP 2003199635A JP 2003199635 A JP2003199635 A JP 2003199635A JP 2005043938 A JP2005043938 A JP 2005043938A
Authority
JP
Japan
Prior art keywords
information
node
private
address
access
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.)
Withdrawn
Application number
JP2003199635A
Other languages
Japanese (ja)
Inventor
Koichi Yoshimura
浩一 吉村
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2003199635A priority Critical patent/JP2005043938A/en
Publication of JP2005043938A publication Critical patent/JP2005043938A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a service without disclosing information such as the URL of a server to the outside. <P>SOLUTION: This access controller 3 is interposed between an external client 124 and Web servers 22 and 24, and performs access to those servers standing proxy for an external client 124 in response to a request from the external client 124. When the Web servers 22 and 24 make a reply to the request from the external client 124, the access controller 3 conceals the information of a private Web server 24(for example, the network location(URL or the like) of the private Web server 24) from the outside, and relays the response to the external client 124 standing proxy for those servers. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、システム内部のノードに対する外部からのアクセスを制御するアクセス制御装置およびその方法に関する。
【0002】
【従来の技術】
例えば、特許文献1,2は、クライアントとサーバとの間の中継を行うプロキシサーバ(Proxy Server)を開示する。
このようなプロキシサーバを介して、クライアントに対してサーバの機能を提供することができるが、全てのクライアントに対してサーバのURL(Uniform Resource Locator)を公開してしまうと、セキュリティ上の問題が生じる可能性がある。
【0003】
【特許文献1】特開2002−007228号公報
【特許文献2】特開2002−189973号公報
【0004】
【発明が解決しようとする課題】
本発明は、上述した背景からなされたものであり、外部に対してサーバのURLなどの情報を開示することなく、サービスを提供できるようにしたアクセス制御装置およびその方法を提供することを目的とする。
また、本発明は、外部に対してサーバのURLなどの情報を開示しなくても済むようにして、サーバのセキュリティを向上させることができるアクセス制御装置およびその方法を提供することを目的とする。
【0005】
【課題を解決するための手段】
[アクセス制御装置]
上記目的を達成するために、本発明に係るアクセス制御装置は、第1のノードに対して所定の関係にある第1の情報の通信を制御するアクセス制御装置であって、前記第1の情報は、第1のノードに対して送信される送信情報に含まれ、第2の情報により代替されることができ、第1のノードに対して送信されようとする第1の送信情報に含まれる前記第1の情報を検出する情報検出手段と、前記第1の送信情報に含まれる第1の情報を、この第1の情報を代替しうる第2の情報により置換し、第2の送信情報として、前記第1のノードに対して送信する情報置換手段と、前記第1のノードから、前記第2の情報を用いたアクセスがあったときに、前記アクセスされた第1の情報を代替する第2の情報を作成する第2の情報作成手段とを有する。
【0006】
好適には、前記第1の情報は、前記第1のノードに対して非公開とされる関係にある非公開情報であり、前記第2の情報は、前記非公開情報を、前記第1のノードに対して秘匿するための秘匿用情報であり、前記情報検出手段は、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開情報を検出する非公開情報検出手段であり、前記情報置換手段は、前記第1の送信情報に含まれる非公開情報を、この非公開情報を代替しうる秘匿用情報により置換し、第2の送信情報として、前記第1のノードに対して送信し、前記秘匿用情報生成手段は、前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する秘匿用情報を作成する。
【0007】
好適には、前記秘匿用情報作成手段は、乱数を用いて前記秘匿用情報を作成する。
【0008】
好適には、前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、この秘匿用情報により代替された前記非公開情報を用いたアクセスを行う代替アクセス手段をさらに有する。
【0009】
好適には、前記代替アクセス手段は、前記秘匿用情報の正当性を判定し、前記秘匿用情報が正当であると判断されたときに、前記秘匿用情報により代替された前記非公開情報を用いたアクセスを行う。
【0010】
好適には、前記非公開情報は、前記非公開ノードの属性を含む。
【0011】
好適には、前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、前記代替アクセス手段は、前記第1のノードから、前記秘匿用アドレスを用いたアクセスがあったときに、この秘匿用アドレスにより代替された前記非公開アドレスを用いて、前記非公開ノードに対するアクセスを代替する。
【0012】
好適には、前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、
前記非公開情報検出手段は、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開アドレスを検出し、前記情報置換手段は、前記第1の送信情報に含まれる非公開アドレスを、この非公開アドレスを代替しうる秘匿用アドレスにより置換し、第2の送信情報として、前記第1のノードに対して送信し、前記秘匿用情報作成手段は、前記第1のノードから、前記非公開アドレスを用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する。
【0013】
好適には、前記アクセス制御装置と、前記非公開ノードと、前記公開ノードとは、1つのネットワークシステムに含まれ、前記第1のノードは、前記ネットワークシステムに対してアクセスする外部ノードである。
【0014】
好適には、前記アクセス制御装置には、アクセス制御用アドレスが設定され、前記情報置換手段は、前記第1の送信情報に含まれる非公開アドレスを、この非公開アドレスを代替しうる秘匿用アドレスにより置換し、前記アクセス制御用アドレスを付加して第2の送信情報として、前記第1のノードに対して送信し、前記第1のノードは、前記第2の送信情報に付加されたアクセス制御用アドレスを用いて前記アクセス制御装置に対してアクセスし、前記第2の送信情報に付加された秘匿用アドレスを用いて、前記アクセス制御装置を介して、前記非公開ノードに対してアクセスする。
【0015】
好適には、前記非公開アドレスは、前記非公開ノードに対して固有に設定されるURL(Uniform Resource Locator)、IP(Internet Protocol)アドレスまたはドメイン名であり、前記アクセス制御用アドレスは、前記アクセス制御装置に対して固有に設定されるURL、IPアドレスまたはドメイン名である。
【0016】
好適には、前記第1のノードからの要求に応じて、前記非公開ノードの検索を行う検索手段をさらに有し、前記秘匿用情報作成手段は、前記検索の結果として得られた前記非公開ノードの非公開アドレスをを代替しうる秘匿用アドレスをさらに作成する。
【0017】
好適には、前記検索手段は、前記非公開ノードに対するアクセスに対する課金をさらに行う。
【0018】
[アクセス制御方法]
また、本発明に係るアクセス制御方法は、第1のノードに対して非公開とされる非公開情報の通信を制御するアクセス制御方法であって、前記非公開情報は、第1のノードに対して送信される送信情報に含まれ、前記非公開情報を、前記第1のノードに対して秘匿するための秘匿用情報により代替されることができ、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開情報を検出し、前記第1の送信情報に含まれる非公開情報を、この非公開情報を代替しうる秘匿用情報により置換し、第2の送信情報として前記第1のノードに対して送信し、前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成するを有する。
【0019】
好適には、前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、この秘匿用情報により代替された前記非公開情報を用いたアクセスをさらに行う。
【0020】
好適には、前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、前記第1のノードから、前記秘匿用アドレスを用いたアクセスがあったときに、この秘匿用アドレスにより代替された前記非公開アドレスを用いて、前記非公開ノードに対するアクセスを代替する。
【0021】
好適には、前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開アドレスを検出し、前記第1の送信情報に含まれる非公開アドレスを、この非公開アドレスを代替しうる秘匿用アドレスにより置換し、第2の送信情報として、前記第1のノードに対して送信し、前記第1のノードから、前記非公開アドレスを用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する。
【0022】
[プログラム]
また、本発明に係るプログラムは、第1のノードに対して非公開とされる非公開情報の通信を制御するプログラムであって、前記非公開情報は、第1のノードに対して送信される送信情報に含まれ、前記非公開情報を、前記第1のノードに対して秘匿するための秘匿用情報により代替されることができ、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開情報を検出するステップと、前記第1の送信情報に含まれる非公開情報を、この非公開情報を代替しうる秘匿用情報により置換し、第2の送信情報として前記第1のノードに対して送信するステップと、前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成するステップとをコンピュータに実行させる。
【0023】
好適には、前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、この秘匿用情報により代替された前記非公開情報を用いたアクセスをさらにコンピュータに実行させる。
【0024】
好適には、前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、前記秘匿用情報により代替された非公開情報を用いたアクセスを行うステップにおいて、前記前記第1のノードから、前記秘匿用アドレスを用いたアクセスがあったときに、この秘匿用アドレスにより代替された前記非公開アドレスを用いて、前記非公開ノードに対するアクセスを代替する。
【0025】
好適には、前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、
前記検出するステップにおいて、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開アドレスを検出し、前記置換するステップにおいて、前記第1の送信情報に含まれる非公開アドレスを、この非公開アドレスを代替しうる秘匿用アドレスにより置換し、第2の送信情報として、前記第1のノードに対して送信し、前記秘匿用情報を作成するステップにおいて、前記第1のノードから、前記非公開アドレスを用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する。
【0026】
【発明の実施の形態】
[本発明の背景]
本発明の実施形態を説明する前に、まず、その理解を容易にするために、本発明がなされるに至った背景を説明する。
近年、インターネット環境およびノートPCなどのモバイル端末が普及し、一般的に用いられている。
このような事情により、自宅から、あるいは、街角のホットスポットおよびインターネットカフェなどのインターネット接続サービスから、インターネットを介して、企業などの組織内のコンピュータシステム(ローカルコンピュータシステム)のネットワーク資源(Network Resource)、例えば、WWW(World Wide Web; 以下、単にWebとも記す)サーバ、ファイルサーバおよびネットワークプリンタなどを利用して、ユーザの利便性および組織業務の効率化が図られるようになってきている。
【0027】
しかしながら、組織内コンピュータシステムのセキュリティおよび保全のため、インターネットに接続された組織外のコンピュータなど(外部)と組織内コンピュータシステムとの通信は、通常、情報の交換を制限するファイヤウォールを介して行われる。
このファイヤウォールは、内部ネットワークに出入りするアクセスを一元的に監視し、外部から組織内コンピュータシステムへの不正侵入、および、組織内コンピュータシステムから外部への情報漏えいなどを防止する。
つまり、ファイヤウォールによって保護される組織内コンピュータシステムに、無条件に遠隔アクセスすることはできない。
【0028】
このような組織内コンピュータシステムに遠隔アクセスするために、組織内コンピュータシステムととインターネットとの境界に、アクセス制御装置(アクセス中継装置)と呼ばれる装置が設置されることがある。
このアクセス中継装置の一種にプロキシサーバ(Proxy Server)がある。
プロキシサーバは、クライアントとサーバの間で伝送されるデータを仲立ちし、一元的に監視して、許可されている特定の種類の接続を中継したり、不正なアクセスを遮断したりする。
プロキシサーバにおいては、転送プロトコルとして、一般的に、HTTP(Hypertext Transfer Protocol −− HTTP/1.1; IETF RFC 2068)が用いられ、また、FTP(File Transfer Protocol; IETF RFC 959)、Telnet(TELNET PROTOCOL Specification; IETF RFC 854)およびGopher(The Internet Gopher Protocol; IETF RFC 1436)などが用いられることもある。
【0029】
プロキシサーバには、フォワードプロキシサーバ(Forward Proxy Server)とリバースプロキシ(Reverse Proxy Server)とが含まれる。
フォワードプロキシサーバは、インターネット上にあるWebサーバなどを、組織内コンピュータシステムなど(内部ネットワーク)から利用するために用いられる。
フォワードプロキシサーバは、内部ネットワークのクライアントからインターネットへのHTTP転送プロトコルによるリクエスト(通信要求)を受け取り、クライアントを代理して、インターネットにリクエストを送出する。
【0030】
また、フォーワードプロキシサーバは、インターネットから送られてきたレスポンス(通信応答)を受け取り、クライアントに返す。
従って、インターネット側から見ると、フォワードプロキシサーバが、あたかもクライアントであるかのように見え、クライアントのネットワークロケ−ション(URL、ドメイン名およびIPアドレスなどの、ネットワーク上で位置を特定する論理アドレス情報)などの情報が隠蔽される。
このように、フォワードプロキシサーバは、サーバに対してクライアントを保護する仕組みになっている。
従って、インターネットからの内部ネットワーク内のサーバへのアクセスが、逆向きのフォワードプロキシサーバを介して行われると、内部ネットワーク側に対して、インターネット上のクライアントのネットワークロケ−ションなどが隠蔽されてしまい、反対に、インターネット側に対しては、内部ネットワークのサーバのネットワークロケ−ションなどの情報は隠蔽されないことになる。
【0031】
つまり、フォワードプロキシサーバだけを用いると、内部ネットワークに含まれるサーバなどのノードのネットワークロケーションなどの情報が、外部に流出してしまう可能性がある。
このように、内部ネットワークの情報が、不正侵入を企てる悪意の第三者に渡ると、その情報は、サーバに対する攻撃に使用される可能性がある。
例えば、内部ネットワークの多数のサーバの内の1つ(例えばWebサーバ)に対する不正侵入が成功すると、Webサーバ上のHTML(Hypertext Markup Language −2.0; IETF RFC 1866)形式のコンテンツに含まれ、他のHTML形式のコンテンツを参照するためのポインタとして用いられるリンク(ハイパーリンク)をたどることにより、他のサーバの情報が次々に流出し、内部ネットワーク内の多くのサーバが攻撃の危険にさらされることになりかねない。
【0032】
特に、外部に対して公開することを目的とされず、内部ネットワークに閉じた使用を前提としているサーバ(非公開サーバ)が、組織内の部門やワークグループで管理されているときには、セキュリティよりも、部門などにおける通常使用時の利便性を優先させることがある。
このようなときには、非公開サーバは、セキュリティ対策の点で、外部に対する公開を前提として設計されたWebサーバなど(公開サーバ)よりも脆弱になり、不正侵入されやすくなる。
例えば、インターネットカフェなどに設置されているような、不特定多数が使用可能なコンピュータから、内部ネットワークに対するインターネットを介した接続が行われるときには、この接続により伝送されるデータに対して、SSL(Secure Sockets Layer)などの暗号化転送プロトコルを適用したとしても、第三者への内部ネットワークの情報の流出の危険は、完全にはなくならない。
【0033】
他方、リバースプロキシサーバは、内部ネットワーク上にあるWebサーバなどを、インターネット側に対して公開するために用いられる。
リバースプロキシサーバは、インターネット側からのアクセス要求を受け、内部ネットワークに接続されたWebサーバなどに中継する。
従って、リバースプロキシサーバを用いると、内部ネットワークに含まれるサーバの構成が外部から隠蔽され、それによって内部ネットワークの構成の変更が容易になり、また、サーバ間で柔軟な負荷分散ができるようになる。
【0034】
リバースプロキシサーバは、複数のオリジンサーバ(プロキシサーバにより代理されるサーバ)を、1つのネットワークロケーションからアクセスできるようにあらかじめ関係付け、クライアントからリクエストを受け付けると、内部的にリクエストに含まれるネットワークロケーションを変換して各ホストコンピュータに振り分けて転送する。
従って、内部ネットワークのクライアントによる使用を前提としている多数の非公開サーバに対して、インターネットからのアクセスを許すようなときには、以下のような問題((1),(2),(3))が生じる。
【0035】
(1)内部ネットワーク上の任意のサーバに対して、インターネットからアクセスできるようにするためには、内部ネットワークの全てのサーバのネットワークロケーションが、リバースプロキシサーバにより関係付けられ、外部に対して公開されるネットワークロケーションと対応付けられていなければならない。
しかしながら、内部ネットワークでの使用を前提としている非公開サーバは、設置台数が多い上に、その構成の変更も頻繁に行われ、管理も各部門などで行われることが多いので、リバースプロキシサーバに、常に最新のネットワークの情報が反映されているとは限らず、あるいは、リバースプロキシサーバに、常に最新のネットワークの情報を反映させるためには、多くの手間と費用が必要とされる。
【0036】
(2)内部ネットワーク上のサーバに対して、内部ネットワークのクライアントからアクセスするためには、ユーザは、オリジンサーバのネットワークロケーションを知っていなければならない。
一方、内部ネットワーク上のサーバに対して、インターネットのクライアントからアクセスするためには、ユーザは、内部ネットワーク上のサーバを外部へ公開するために設定されたネットワークロケーションを知っていなければならない。
従って、内部ネットワークからも、インターネットからも内部ネットワーク上のサーバにアクセスする可能性があるユーザは、これら両方のネットワークロケーションを知っていなければならない。のために用いられるオリジンサーバのネットワークロケーションを知っていなければならない。
【0037】
(3)リバースプロキシサーバにおいては、オリジンサーバのコンテンツのリンクを、オリジンサーバ上のページ間でリンクを張る場合にはパス名だけの(ホストアドレスを含まない)部分URLで統一しなければならないなどの制約がある。
内部ネットワーク上の全てのサーバ上のHTML形式のコンテンツのリンクを、このような部分URLに修正することで、この制約に対応することも可能である。
しかしながら、この修正を受けたコンテンツに対しては、リバースプロキシサーバを介したアクセスのみが可能となり、内部ネットワーク上のクライアントからの直接の利用ができなくなる。
従って、このような不具合を回避するためには、内部ネットワーク上の各サーバで、内部ネットワークのクライアント向けのコンテンツと、外部公開用に修正したコンテンツの2種類を準備しなければならない。
このような手間をかけることは、現実的には、非常に困難である。
【0038】
以上説明したように、既存のプロキシサーバを用いても、インターネットから組織内コンピュータシステムにアクセスする際の利便性と、悪意の第三者から組織内コンピュータシステムを保護したいというセキュリティとを両立することができなかった。
なお、ここまで、主にWebサーバを具体例として挙げて、プロキシサーバについて説明したが、プロキシサーバを他の種類のサーバに対して適用する場合でも、同様な問題が生じる。
【0039】
本発明は、上述したような背景からなされたものであり、インターネット上のクライアントコンピュータなど(外部)に対して非公開とされ、企業内コンピュータシステムなど(ローカルネットワーク)において閉じた使用を前提としている非公開サーバに対して、インターネットなどを介して、外部から遠隔アクセスすることができるように工夫されている。
また、本発明は、ローカルネットワークの非公開サーバに対して、外部から遠隔アクセスできるようにし、さらに、ローカルネットワークに接続されている非公開サーバおよびその他のコンピュータなどの内部情報を隠蔽することができるように工夫されている。
また、本発明は、ローカルネットワーク内部で公開されている情報を、外部に対して秘匿できるように工夫されている。
【0040】
[第1実施形態]
以下、本発明の第1の実施形態を説明する。
【0041】
[第1のネットワークシステム1]
図1は、本発明の第1の実施形態に係るアクセス制御方法が適応される第1のネットワークシステム1の構成を例示する図である。
図1に示すように、ネットワークシステム1は、ネットワークシステム12、Webサーバ130(以下、外部Webサーバ130とも記す)および第1のローカルネットワークシステム2が、インターネット(The Internet)120を介して接続されて構成される。
ネットワークシステム12は、1つ以上のクライアント124−1,124−2(以下、外部クライアント124とも記す)が、IP(Internet Protocol)ネットワーク126−1を介して接続された構成を採り、IPネットワーク126−1は、ルータ128−1を介してネットワークシステム120に接続される。
【0042】
また、ローカルネットワークシステム2は、それぞれ1つ以上のクライアント132(以下、内部クライアント132とも記す)、ネットワークシステム12などの外部に対してネットワークロケーションなどの情報が公開されているWebサーバ22−1,22−2(以下、公開Webサーバ22とも記す)、外部に対して、このような情報が非公開になっているWebサーバ24(以下、非公開Webサーバ24とも記す)、ファイアウォール20および第1のアクセス制御装置3が、IPネットワーク126−3を介して接続されて構成される。
さらに、ファイアウォール20およびアクセス制御装置3は、IPネットワーク126−2を介してルータ128−2に接続され、これらを介してインターネット120に接続される。
【0043】
なお、以下、クライアント124−1,124−2など、複数ある構成部分のいずれかを特定せずに示す場合には、単に、クライアント124などと略記することがある。
また、アクセス制御装置3、外部クライアント124およびWebサーバ22,24などを総称してノードと記すことがある。
【0044】
また、図1に例示したネットワークシステム1において、ローカルネットワークシステム2が、既に述べた本発明の背景の企業内コンピュータシステムおよび内部ネットワークなどに対応し、ネットワークシステム12内のクライアント124などが、インターネット側および外部のクライアントなどに対応する。
ネットワークシステム1においては、これらの構成部分により、外部のクライアント124などからの要求に応じて、ローカルネットワークシステム2内のWebサーバ22およびWebサーバ24により、HTML形式のコンテンツの提供などが行われる。
【0045】
図2は、図1に示したアクセス制御装置3、クライアント124,132、ルータ128、Webサーバ22,24,130のハードウェア構成を例示する図である。
図2に示すように、これらは、CPU102およびメモリ100などを含むコンピュータ本体100、表示装置・キーボード・マウスなどを含む表示・入力装置106、通信装置108、および、CD装置・HDD・FDDなどの記録装置110から構成される。
つまり、これらは、通信機能を有する一般的なコンピュータとしての構成部分を有している。
【0046】
ネットワークシステム1において、IPネットワーク126は、LAN(Local Area Network)などのパケット交換網であって、TCP/IPプロトコルによる通信路を提供する。
なお、例えば、ネットワークシステム1においては、各IPネットワーク126は、グローバルIPアドレス体系により運用される。
【0047】
インターネット120は、広域パケット交換網であって、多数のIPネットワーク126が、ルータ128を介して相互接続されて構築されている。
【0048】
ファイアウォール20は、ローカルネットワークシステム2の内部クライアント132から外部(ネットワークシステム1においてはインターネット120、外部Webサーバ130およびネットワークシステム12)に対するアクセスのみを通過させる。
反対に、ファイアウォール20は、外部からローカルネットワークシステム2内部へのアクセスを阻止する。
【0049】
Webサーバ22,24,130は、例えば、Web対応のファイルサーバ、文書管理サーバ、スキャナ付き画像保存サーバ、コピア複合機(コピー・プリンタ・スキャナ・FAXなどが一体に構成された装置)およびメールボックスサーバなどであり、クライアント124,132に対して適用業務サービスを提供する。
つまり、Webサーバ22,24,130は、インターネット120およびIPネットワーク126を介して、HTTP転送プロトコルなどの転送プロトコルにより、クライアント124,132からのアクセスを受け、これらからの要求に応じて、適用業務サービスの提供に必要なコンテンツを返す。
公開Webサーバ22,24,130が外部クライアント124,132に返すコンテンツは、例えば、HTMLなどの言語により記述される。
【0050】
クライアント124,132は、Webサーバ22,24,130などのサーバによって提供される適用業務のサービスを利用するコンピュータ、スキャナ装置およびコピア複合機など(動的にネットワークに接続されるモバイル対応であってもよい)である。
クライアント124,132は、ユーザインタフェース(例えば表示・入力装置106;図2)を備えており、Webブラウザ(図示せず)と呼ばれるアプリケーションを実行する。
クライアント124,132上で実行されるWebブラウザは、ユーザの操作に応じて、HTTP転送プロトコルなどによりWebサーバ22,24,130にアクセスし、HTMLなどの言語で記述されたコンテンツ(Webページ)を閲覧するための機能を提供する。
【0051】
[アクセス制御装置3]
アクセス制御装置3は、外部クライアント124とWebサーバ22,24との間に介在し、外部クライアント124からの要求を受けて、外部クライアント124を代理してこれらのサーバにアクセスする。
また、アクセス制御装置3は、Webサーバ22,24が、外部クライアント124からの要求に対して応答すると、非公開Webサーバ24の情報(以下、非公開Webサーバ24のネットワークロケーション(URLなど)を具体例とする)を外部に対して隠蔽しつつ、これらのサーバを代理して、外部クライアント124に対する応答を中継する。
【0052】
[アクセス制御プログラム4]
図3は、図1,図2に示したアクセス制御装置3において実行される第1のアクセス制御プログラム4の構成を示す図である。
図3に示すように、第1のアクセス制御装置3は、外部クライアント124側の通信制御部400、代理要求部402、秘匿用コードデータベース(DB)404、DB管理部406、秘匿用コード作成部408、Webサーバ22,24側の通信制御部410、非公開情報検出部412、情報保護部414および代理応答部416から構成される。
アクセス制御プログラム4は、例えば記録媒体112によりアクセス制御装置3に供給され、メモリ104にロードされて実行される。
アクセス制御プログラム4は、これらの構成部分により、外部クライアント124に対して公開Webサーバ22の機能だけでなく、非公開Webサーバ24の機能をも提供するとともに、外部に対して、非公開Webサーバ24のネットワークロケーションなどのローカルネットワークシステム2の内部情報を隠蔽する。
【0053】
[アクセス制御プログラム4の処理の概要]
アクセス制御プログラム4の処理の概要をさらに説明する。
ローカルネットワークシステム2のアクセス制御装置3および公開Webサーバ22のネットワークロケーションは、ローカルネットワークシステム2の外部に対して公開されている。
従って、アクセス制御装置3および公開Webサーバ22に対しては、これらのネットワークロケーションを知っていさえすれば、外部クライアント124のユーザは、誰でも、これらに対してアクセスすることができる。
【0054】
これに対して、非公開Webサーバ24のネットワークロケーションは、ローカルネットワークシステム2の外部に対して公開されていない。
従って、外部のユーザは、公開Webサーバ22から受けたHTML形式のコンテンツに含まれるリンクをたどることにより、初めて、非公開Webサーバ24にアクセスすることができる。
しかしながら、公開Webサーバ22から、隠蔽ための対策が何ら講じられていないHTMLコンテンツが外部に対して提供されてしまうと、秘密にされるべき非公開Webサーバ24のネットワークロケーションなどの情報が外部に出てしまう。
【0055】
図4は、図3に示した秘匿用コードDB404に保持され、非公開Webサーバ24の機能提供およびネットワークロケーションの隠蔽のために用いられる第1の秘匿用コードテーブルを例示する図である。
アクセス制御プログラム4(アクセス制御装置3)は、このような不具合を防ぐため、以下のような処理((1)〜(8))を行う。
(1)外部クライアント124から公開Webサーバ22へのアクセスがあり、外部クライアント124に対して公開Webサーバ22からHTMLコンテンツが送信されようとするときに、アクセス制御プログラム4は、このコンテンツに対して、非公開Webサーバ24のネットワークロケーションの検出処理を行う。
(2)上記検出処理の結果、非公開Webサーバ24のネットワークロケーションが検出されなかったときには、HTMLコンテンツを、外部クライアント124に対して送信する。
【0056】
なお、図4に示すパスは、仮想パスであって、仮想パスは、下記のように用いられる。
Webサーバが公開するディレクトリ構造は,必ずしもWebサーバが稼動するコンピュータのファイルシステムのディレクトリ構造とは一致しない。
そこで、Webサーバは、HTTPリクエストのURLに指定されたパス名(仮想パス)と、そのコンピュータの内部の実際のパス名(物理パス)との対応関係を、Webサイトの定義パラメータとして持ち、仮想パスから物理パスへの変換を行いながらインターネットにコンテンツを提供する。
【0057】
URLは、”プロトコル名 ://(ホストアドレス):(ポート番号)/(パス名)”という形式で記述され、ホストアドレスの部分には、サーバのドメイン名もしくはIPアドレスが格納される。
具体的には、例えば、URLが、”http://www.fujixerox.co.jp:80/news/index.html”であるとき、プロトコル名は”http”、サーバのホストアドレス(IPアドレスもしくはドメイン名)は”www.fujixerox.co.jp”、ポート番号は”80(80番はデフォルトなので省略可)”、パス名(仮想パス)は”/news/index.html”である。
【0058】
(3)上記検出処理の結果、非公開Webサーバ24のネットワークロケーションが検出されたときには、必要に応じて、非公開Webサーバ24のネットワークロケーションを外部に対して隠蔽するための秘匿用コードを作成する。
作成された秘匿用コードは、非公開Webサーバ24に要求を行った外部クライアント124を示す情報、リンク先の非公開Webサーバ24およびリンク元の公開Webサーバ22のネットワークロケーションなどを示すデータと対応付けられ、図4に例示するように、テーブル形式で、秘匿用コードDB404に記憶される。
秘匿用コードテーブルのエントリそれぞれには、エントリ番号、秘匿用コード、非公開Webサーバ24のネットワークロケーション(アドレス:ポート,仮想パス)、非公開Webサーバ24のネットワークロケーション(アドレス:ポート,仮想パス)、公開Webサーバ22に対して要求を行った外部クライアント124のアドレス、登録時刻、および、非公開Webサーバ24に対する保護の方法などを示す保護レベルが登録される。
【0059】
(4)また、上記検出処理の結果、非公開Webサーバ24のネットワークロケーションが検出されたときには、HTMLコンテンツに含まれる非公開Webサーバ24のネットワークロケーションは、秘匿用コードテーブルに登録された秘匿用コードにより置き換えられ、外部クライアント124に返される。
(5)秘匿用コードを受けた外部クライアント124が、この秘匿用コードを含む要求を非公開Webサーバ24(アクセス制御装置3)に対して出したときには、アクセス制御プログラム4は、この要求を受け、要求に含まれる秘匿用コードが、秘匿用コードテーブル(図4)に登録されているか否かを検索する。
【0060】
(6)アクセス制御プログラム4は、正当な秘匿用コードが登録されているときには、要求中の秘匿用コードを非公開Webサーバ24のネットワークロケーションに置換し、非公開Webサーバ24に対して中継する。
この要求に対して、非公開Webサーバ24からHTMLコンテンツなどが返されると、アクセス制御プログラム4は、このHTMLコンテンツを、外部クライアント124に中継する。
【0061】
(7)アクセス制御プログラム4は、秘匿用コードが、まだ秘匿用コードテーブルに登録されていないものであるときには、秘匿用コードテーブルの新たなエントリを作成し、必要に応じて、図4に示した各データを登録する。
(8)アクセス制御プログラム4は、正当な秘匿用コードが登録されていないときには、要求を非公開Webサーバ24に対して中継せず、外部クライアント124にエラーを返すなどの以上処理を行う。
【0062】
以下、アクセス制御プログラム4(図3)の各構成部分を説明する。
【0063】
[通信制御部400,410]
アクセス制御プログラム4において、通信制御部400,410は、TCP/IPにより、外部クライアント124および公開Webサーバ22,24との間でデータの送信および受信を行うための通信制御を行う。
【0064】
[秘匿用コードDB404]
秘匿用コードDB404は、図4に示した秘匿用コードテーブルの各エントリを、秘匿用コード作成部408から受け入れて記憶する。
また、秘匿用コードDB404は、代理要求部402から秘匿用コードが入力されると、秘匿コードの値が一致するエントリを検索し、検索結果として得られたエントリに登録されている情報を返す。
【0065】
[DB管理部406]
DB管理部406は、表示・入力装置106(図2)に対するユーザの操作などに従って、秘匿用コードDB404に記憶された秘匿用コードテーブルを管理する。
DB管理部406が行う秘匿用コードテーブルの管理には、例えば、登録後、一定時間が経過したエントリの削除などが含まれる。
【0066】
[代理要求部402]
図5は、図3に示した代理要求部402の処理(S14)を示すフローチャートである。
代理要求部402は、通信制御部400を介して外部クライアント124からの要求を受けて、外部クライアント124を代理して、Webサーバ22,24に対して要求を中継する。
代理要求部402は、上述したアクセス制御プログラム4の処理の(5),(6),(8)を行う。
【0067】
以下、図5を参照して、代理要求部402の処理をさらに説明する。
図5に示すように、ステップ140(S140)において、代理要求部402は、通信制御部400を介して、外部クライアント124からの要求を受信する。
S140の処理において受信された要求に含まれる宛先が、例えばURLであるときには、宛先は、「http://宛先サーバのホストアドレス(ドメイン名もしくはIPアドレス):宛先ポート番号/宛先仮想パス」といったように記述される。
ステップ142(S142)において、代理要求部402は、受信した要求の宛先(例えば、上記例における宛先サーバのホストアドレス)が、ローカルネットワークシステム2のアクセス制御装置3以外のノードであるか、より具体的には、非公開Webサーバ24であるか否かを判断する。
代理要求部402は、要求の宛先が非公開Webサーバ24であるときにはS152の処理に進み、これ以外のときにはS144の処理に進む。
【0068】
なお、代理要求部402の処理におけるデータフォーマットは、下表1に例示する通りである。
【0069】
【表1】

Figure 2005043938
【0070】
ステップ144(S144)において、代理要求部402は、要求の宛先がアクセス制御装置3であるか否かを判断する。
代理要求部402は、要求の宛先がアクセス制御装置3であるときにはS146の処理に進み、これ以外のときにはS158の処理に進む。
【0071】
ステップ146(S146)において、代理要求部402は、秘匿用コードDB404に保持されている秘匿用コードテーブル(図4)を検索し、要求に含まれるパス名(例えば、上記例における宛先仮想パス)が、ローカルネットワークシステム2内部のノードに対して設定された秘匿用コードであるか否かを判断する。
図1に示した例においては、要求に含まれるパス名が、アクセス制御装置3自身の仮想パスでなく、かつ、秘匿用コードDB404に保持されているときに、このパス名が秘匿用コードであると判断され、これ以外のときには、秘匿用コードでないと判断される。
代理要求部402は、パス名が秘匿用コードであるときにはS148の処理に進み、これ以外のときにはS158の処理に進む。
【0072】
ステップ148(S148)において、代理要求部402は、要求に含まれる秘匿用コードが正当であるか否かを判断する。
つまり、代理要求部402は、要求の送信元である外部クライアント124のホストアドレスこの秘匿コードと同じエントリに登録されていて、かつ、要求に含まれる参照元URLが、が、秘匿用コードDB404においてこの秘匿コードと同じエントリに登録されているときに、この秘匿コードが正当であると判断する。
代理要求部402は、秘匿コードが正当であると判断したときにはS150の処理に進み、これ以外のときにはS158の処理に進む。
【0073】
ステップ150(S150)において、代理要求部402は、秘匿用コードDB404を参照し、要求に含まれる秘匿コードから、非公開Webサーバ24へのURLに置換する。
【0074】
ステップ154(S154)において、代理要求部402は、S150の処理により宛先が非公開Webサーバ24に置換された要求、または、S142の処理により、宛先が公開Webサーバ22に対するものであると判断された要求を、通信制御部410を介して、宛先のノードに対して送信する。
【0075】
ステップ156(S156)において、代理要求部402は、代理応答部416に対して、外部クライアント124の代理で要求を行ったことを通知する。
ステップ158(S158)において、代理要求部402は、外部クライアント124に対してエラーを返したり、ローカルネットワークシステム2の管理者に異常の発生を表示するなどの異常処理を行う。
【0076】
[非公開情報検出部412]
非公開情報検出部412は、以下に示すように、上記処理(1)と、(2)の処理の一部とを行う。
非公開情報検出部412は、Webサーバ22,24からの応答(HTMLコンテンツ)を受けて、この応答から、非公開情報を検出する。
非公開情報検出部412が検出の対象とする非公開情報は、ローカルネットワークシステム2の外部(ローカルネットワークシステム2にアクセスしている外部クライアント124のユーザなど)に対して、非公開とされ、秘匿されるべき情報一般である。
この非公開情報の例としては、ここで具体例として示す非公開Webサーバ24のネットワークロケーション(ホストアドレス(ドメイン名・IPアドレス)、ポート番号、コンテンツ(Webページ)の仮想パス、および、これらから構成されるURL)の他に、内部クライアント132のホストアドレス(ドメイン名・IPアドレス)など、ローカルネットワークシステム2内のノードにアクセスするための宛先を特定可能な情報一般を挙げることできる。
【0077】
さらに、非公開情報検出部412は、非公開情報が検出されたときには、この非公開情報に対して、保護レベル(図4)を設定し、秘匿用コードDB404に登録する。
保護レベルは、非公開情報の秘匿方法を制御するパラメータであって、例えば、ここでは、保護レベルとして0,1が設定される場合を具体例とする。
例えば、非公開Webサーバ24に対して保護レベル0が設定されたときには、非公開Webサーバ24から外部クライアント124への応答に含まれる非公開情報(非公開Webサーバ24への仮想パス)は、秘匿用コードで置換されて外部クライアント124に通知される。
【0078】
従って、外部クライアント124は、通知された秘匿用コードを用いてアクセス制御装置3に対して要求を出すことにより、非公開Webサーバ24からHTMLコンテンツの提供などのサービスを受けることができ、しかも、外部クライアント124に対しては、非公開Webサーバ24のネットワークロケーションは隠蔽される。
また、例えば、非公開Webサーバ24に対して保護レベル1が設定されたときには、非公開Webサーバ24から外部クライアント124への応答に含まれる非公開情報(非公開Webサーバ24への仮想パス)は、予め定義された文字列(「*****」など)で置換されて外部クライアント124に通知される。
【0079】
以下、非公開Webサーバ24から外部クライアント124に対してHTMLコンテンツが応答として返される場合を具体例として、非公開情報検出部412による非公開情報の検出、および、保護レベルの設定をさらに説明する。
このHTMLコンテンツには、下表2に例示するように、外部クライアント124において、ユーザには表示されないが、非公開Webサーバ24のURLを含み、外部クライアント124上で動作するWebブラウザを制御するためのHTMLタグが埋め込まれている。
【0080】
【表2】
Figure 2005043938
【0081】
非公開情報検出部412は、HTMLコンテンツから、表2に例示したようなHTMLタグを取り出し、HTMLコンテンツに含まれるURLが、相対URLであるときには、これを絶対URLに変換する。
相対URLは、仮想パスだけで構成され、しかも、その仮想パスは、ディレクトリ階層上の自分が現在いる位置(現在のHTMLファイルが置かれているディレクトリ)を起点として、そこからの相対的な位置を指定するもので、例えば、”../../index.html”と記述される(なお、この例は、「今の位置から2階層上のディレクトリのindex.htmlというファイル」を意味する)。
従って、サーバのホストアドレスや現在のディレクトリを少なくともなんらかの形で保存しておかないと後から直接アクセスすることができないので、このような仮想パスの絶対パスへの変換が行われる。
【0082】
次に、非公開情報検出部412は、このHTMLタグに含まれるURLが、非公開Webサーバ24のURLであるか否かを判断する。
次に、非公開情報検出部412は、非公開Webサーバ24のURLであるときには、このURL(ネットワークロケーション)に、保護レベル0を設定する。
【0083】
また、非公開情報検出部412は、HTMLコンテンツにおいて、HTMLタグの中だけではなく、外部クライアント124のユーザに対して表示される部分に含まれる非公開Webサーバ24のURLの検出を行う。
非公開情報検出部412は、HTMLコンテンツ中で、外部クライアント124に表示される部分に含まれる非公開Webサーバ24のURLに対して、保護レベル1を設定する。
【0084】
例えば、ドメイン名はFQDN(Fully Qualified Domain Name)形式で記述されるというように、ホストアドレスおよびURLなどの記述形式は標準化されているので、非公開情報検出部412は、HTMLタグを検出する以外の方法によっても、HTMLコンテンツから非公開情報を検出することができる。
非公開情報検出部412は、検出した非公開情報を、非公開情報リスト(図示せず)にまとめて、応答として非公開Webサーバ24から返されたメッセージ(オリジナルのコンテンツ)とともに、情報保護部414に通知する。
【0085】
非公開情報リストには1つ以上のエントリが含まれ、各エントリには、HTMLコンテンツにおける非公開情報を特定するための情報、例えば、HTMLコンテンツ中の非公開情報の先頭文字の位置・文字数(範囲)、および、保護レベルなどが含まれる。
あるいは、非公開情報検出部412は、応答から、非公開情報が検出されなかったときには、エントリ数0の非公開情報リストを、オリジナルのコンテンツとともに、情報保護部414に対して通知する。
なお、非公開情報リストのフォームは、下表3に例示する通りである。
【0086】
【表3】
Figure 2005043938
【0087】
図6は、図3に示した非公開情報検出部412の処理(S18)を示すフローチャートである。
図6に示すように、ステップ180(S180)において、非公開情報検出部412は、Webサーバ22,24から外部クライアント124への応答(HTMLコンテンツなど)を受信する。
ステップ182(S182)において、非公開情報検出部412は、受信した応答を解析する。
ステップ184(S184)において、非公開情報検出部412は、解析の結果に基づき、応答に相対URLが含まれているときには、この相対URLを、絶対URLに変換する。
【0088】
ステップ186(S186)において、非公開情報検出部412は、応答に非公開情報が含まれているか否かを判断する。
非公開情報検出部412は、応答に非公開情報が含まれているときにはS188の処理に進み、これ以外のときにはS192の処理に進む。
ステップ188(S188)において、非公開情報検出部412は、応答から検出された非公開情報それぞれの保護レベルを判定する。
ステップ190(S190)において、非公開情報検出部412は、検出された非公開情報それぞれに対応する1つ以上のエントリを含む非公開情報リストを作成する。
【0089】
ステップ192(S192)において、非公開情報検出部412は、エントリ数0の非公開情報リストを作成する。
ステップ194(S194)において、非公開情報検出部412は、Webサーバ22,24から受けた応答と、作成した非公開情報リストとを情報保護部414に対して出力する。
【0090】
情報保護部414は、以下に示すように、上記処理(2),(4)の一部を行う。
情報保護部414は、非公開情報検出部412から入力されたWebサーバ22,24の応答に含まれる非公開情報を、非公開情報リストを参照して特定し、非公開情報リストに含まれる保護レベル(0,1)に応じて、秘匿用コード(保護レベル0)または文字列(保護レベル1)に置換する。
つまり、情報保護部414は、保護レベル0の非公開情報に対しては、非公開情報と、その非公開情報リストを、秘匿用コード作成部408に対して出力し、非公開情報に対応する秘匿用コードを取得する。
【0091】
さらに、情報保護部414は、取得した秘匿用コードと、アクセス制御装置3のネットワークロケーションとを組み合わせて、仮想ネットワークロケーションとし、応答に含まれるWebサーバ22,24のネットワークロケーションと置換する処理を行う。
例えば、Webサーバ22,24の応答に、非公開Webサーバ24のネットワークロケーションが、「http://非公開Webサーバ24のホストアドレス/」という形式で含まれているときには、これを、「http://アクセス制御装置3のホストアドレス/秘匿用コード/」に置換する。
【0092】
また、情報保護部414は保護レベル1の非公開情報に対しては、この非公開情報を、「*****」などの文字列で置換する処理を行う。
以上のような置換処理により、非公開情報が隠蔽されたWebサーバ22,24の応答は、代理応答部416に対して出力される。
また、情報保護部414は、非公開情報検出部412からエントリ数0の非公開情報リストと、Webサーバ22,24からの応答が入力されたときには、この応答を、代理応答部416に対して出力する。
また、情報保護部414は、非公開情報と、その非公開情報リストを、秘匿用コード作成部408に対して出力する。
【0093】
以下、図7を参照して、情報保護部414の処理をさらに説明する。
図7は、図3に示した情報保護部414の処理(S20)を示すフローチャートである。
図7に示すように、ステップ200(S200)において、情報保護部414は、非公開情報検出部412から、Webサーバ22,24から外部クライアント124への応答と、非公開情報リストとを受け入れる。
ステップ202(S202)において、情報保護部414は、非公開情報リストのエントリ数が0より多いか否かを判断する。
情報保護部414は、エントリ数が0より多いときにはS204の処理に進み、これ以外のときにはS220の処理に進む。
【0094】
ステップ204(S204)において、情報保護部414は、変数Nに1を代入する(N=1)。
ステップ206(S206)において、情報保護部414は、非公開情報リストの保護レベルが0であるか1であるかを判断する。
情報保護部414は、保護レベルが0であるときにはS208の処理に進み、これ以外のときにはS210の処理に進む。
【0095】
ステップ208(S208)において、情報保護部414は、秘匿用コード作成部408に対して、非公開情報およびその関連情報(外部クライアント124のネットワークロケーションなど、秘匿用コードの作成に必要な情報)を通知する。
また、情報保護部414は、秘匿用コードDB404から、非公開情報と置換される秘匿用コードを受け入れる。
ステップ210(S210)において、情報保護部414は、応答に含まれる非公開Webサーバ24のネットワークロケーションを、受け入れた秘匿用コードなどで置換する。
【0096】
ステップ212(S212)において、情報保護部414は、非公開情報を、所定の文字列(「*****」など)で置換する。
ステップ214(S214)において、情報保護部414は、変数Nをインクリメントする(N=N+1)。
ステップ216(S216)において、情報保護部414は、変数Nが、非公開情報リストのエントリ数を超えたか否かを判断する。
情報保護部414は、変数Nがエントリ数を超えたときにはS218の処理に進み、これ以外のときにはS206の処理に戻る。
【0097】
ステップ218(S218)において、非公開情報が置換された応答を、代理応答部416に対して出力する。
ステップ220(S220)において、情報保護部414は、非公開情報検出部412から受け入れた応答を、代理応答部416に対して出力する。
【0098】
[代理応答部416]
代理応答部416は、以下に示すように、上記処理(4)の一部を行う。
代理応答部416は、情報保護部414から入力される応答を受けて、この応答が、代理要求部402がネットワークシステム1214から受けた要求に対する正当な応答であるか否かを検査する。
代理応答部416は、この検査の結果、応答が正当であると判断されたときには応答を外部クライアント124に対して中継する。
また、代理応答部416は、応答が正当でないと判断されたときには、応答を破棄し、外部クライアント124に対してエラーメッセージを返すなどの処理を行う。
【0099】
[秘匿用コード作成部408]
秘匿用コード作成部408は、以下に示すように、上記処理(3)を行う。
秘匿用コード作成部408は、情報保護部414からの通知(S208;図7)を受けて、乱数を発生させ、発生させた乱数を秘匿用コードとして秘匿用コードDB404に記憶する。
さらに、秘匿用コード作成部408は、情報保護部414から受けた情報から、秘匿コードテーブル(図4)の各エントリの情報を作成し、秘匿用コードDB404に記憶させる。
【0100】
[ネットワークシステム1の全体動作]
以下、ネットワークシステム1の全体的な動作を説明する。
図8は、図1に示したネットワークシステム1の全体動作(S10)を例示するシーケンス図である。
なお、図8に示す各処理におけるデータのフォーマットは、HTTPにより規定され、下表4,5に例示する通りである。
【0101】
【表4】
Figure 2005043938
【0102】
【表5】
Figure 2005043938
【0103】
図8に示すように、ステップ100(S100)において、ユーザが、Webブラウザで、公開Webサーバ22のURLを指定すると、外部クライアント124から、アクセス制御装置3(アクセス制御プログラム4;図3)に対して、HTTPプロトコルにより、公開Webサーバ22のURLを宛先アドレスとして、公開Webサーバ22が提供するHTMLコンテンツの送信要求(URLが示すコンテンツに対するGETリクエスト)が送信される。
ステップ102(S102)において、アクセス制御装置3は、公開Webサーバ22に対して、外部クライアント124から受けた要求を中継する。
【0104】
ステップ104(S104)において、公開Webサーバ22は、要求に応じて、非公開Webサーバ24のURL(ネットワークロケーション)を含むHTMLコンテンツを返す。
ステップ106(S106)において、アクセス制御装置3は、HTMLコンテンツに含まれる非公開Webサーバ24のURLを、秘匿用コードなど(仮想URL)で置換し、外部クライアント124に対して出力する。
ステップ108(S108)において、ユーザは、WebブラウザでHTMLコンテンツ中の仮想URLをクリックすると、外部クライアント124は、S106の処理により得られた秘匿用コードを用いて、非公開Webサーバ24が提供するHTMLコンテンツ送信の要求が出される。
ステップ110(S110)において、アクセス制御装置3は、要求に含まれる秘匿用コードを、非公開Webサーバ24のURLに変換し、非公開Webサーバ24に対して出力する。
ステップ112(S112)において、非公開Webサーバ24は、外部Webサーバ130のURLを含むHTMLコンテンツを返す。
【0105】
ステップ114(S114)において、アクセス制御装置3は、非公開Webサーバ24から受けた応答に含まれる非公開Webサーバ24のネットワークロケーションを、秘匿用コードなどで置換し、外部クライアント124に返す。
ステップ116,118(S116,S118)において、ユーザが、WebブラウザでHTMLコンテンツに含まれる外部Webサーバ130のURLをクリックすると、外部クライアント124は、アクセス制御装置3から受けた外部Webサーバ130のURLを用いて、外部Webサーバ130にアクセスし、HTMLコンテンツを得る。
【0106】
[変形例]
なお、秘匿用コードDB404(図3など)に記憶される秘匿用コードテーブル(図4)は、後述するように、秘匿用コード作成部408により作成されるほかに、表示・入力装置106に対する操作に応じてDB管理部406により作成されても、記録媒体112および記録装置110を介して秘匿用コードDB404に供給されてもよい。
また、代理要求部402が、表示・入力装置106(図2)などから直接、秘匿用コードテーブル(図4)の情報を受け入れ、図5などに示した処理を行ってもよい。
【0107】
また、通信制御部400,410は、一体に構成されてもよく、この場合、アクセス制御プログラム4は、IPネットワーク126−3だけに接続される。
このようにして、ファイアウォール20を、アクセス制御装置3からのアクセスのみを、IPネットワーク126−3側からIPネットワーク126−2側(Webサーバ22,24側)に通過させるように設定すると、アクセス制御装置3は、通信制御部400,410を個別の構成とした場合と同等の機能を、外部クライアント124などに提供することができる。
また、保護レベルの設定は、DB管理部406が、ローカルネットワークシステム2のネットワークシステム2の管理者の操作に応じて行ってもよい。
【0108】
また、非公開情報検出部412が、表示・入力装置106などからユーザの操作を受け入れて、キーワードの設定を受けて記憶し、非公開Webサーバ24からのHTMLコンテンツ中のキーワードを、非公開情報として扱って検出するようにしてもよい。
また、非公開情報検出部412は、保護レベルの種類を増やし、例えば、保護レベル2が設定された非公開Webサーバ24へのリンクを解除し、削除するようにしてもよい。
また、秘匿用コードに階層構造を持たせると、非公開Webサーバ24のネットワークロケーションと置換されたときに、あたかも実際の仮想パスであるかのように、第三者に見せかけることができる。
【0109】
[第2実施形態]
以下、本発明の第2の実施形態を説明する。
図9は、本発明の第2の実施形態に係るアクセス制御方法が適応される第2のネットワークシステム5の構成を例示する図である。
図9に示すように、第2のネットワークシステム5は、第1のネットワークシステム1の第1のローカルネットワークシステム2を、第2のローカルネットワークシステム6で置換した構成を採る。
【0110】
第2のローカルネットワークシステム6は、第1のローカルネットワークシステム2のWebサーバ22,24および第1のアクセス制御装置3を、1台以上の非公開のネットワークプリンタ52−1,52−2、ディレクトリサーバ50および第2のアクセス制御装置7で置換した構成を採る。
なお、以下の各図に示した構成部分の内、第1の実施例の説明に用いた各図に示した構成部分と実質的に同じものには、同じ符号が付してある。
また、ネットワークシステム5の各ノードは、図2に示した外部クライアント124などと同様なハードウェア構成を採る。
ネットワークシステム5は、これらの構成部分により、外部クライアント124に対して、ネットワークプリンタ52を用いた印刷サービスを提供する。
【0111】
[外部クライアント124]
なお、外部クライアント124では、第1のネットワークシステム1の外部クライアント124と同様に、Webブラウザが実行される。
さらに、外部クライアント124には、閲覧しているHTMLコンテンツを、ページ記述言語(PDL)形式に変換し、IPPプロトコルなどのプリントプロトコルにより、非公開ネットワークプリンタ52に送り、印刷させるための機能が追加される。
【0112】
[ネットワークプリンタ52]
ネットワークシステム5において、ネットワークプリンタ52は、IPP(Internet Printing Protocol/1.0; IETF RFC 2565)プロトコルなどのプリントプロトコルにより、インターネット120およびアクセス制御装置7を介して、外部クライアント124などからのアクセスを受け、ページ記述言語(PDL;Page Description Language)形式のデータを受け、このデータがら画像を形成して印刷するネットワークプリンティングサービスを提供する。
ネットワークプリンタ52は、ネットワーク対応のプリンタ、プリント・サーバおよびコピア複合機などであって、そのネットワークロケーションなどの情報は、ネットワークシステム5外部に対して非公開とされている。 なお、以下、ネットワークプリンタ52を、非公開ネットワークプリンタ52とも記す。
【0113】
[ディレクトリサーバ50]
ディレクトリサーバ50は、ネットワークシステム5のサーバ(以下、サーバの具体例を非公開ネットワークプリンタ52とする)のネットワークロケーションおよび属性などのサービス情報を保持する。
ディレクトリサーバ50は、SLP(Service Location Protocol; IETF RFC 2165)プロトコル、LDAP(Lightweight Directory Access Protocol; IETF RFC 1777)プロトコルあるいはSNMP(A Simple Network Management Protocol; IETF RFC 1157)プロトコルなどのプロトコルにより、外部クライアント124およびアクセス制御装置7からの要求を受け、これらに保持しているサービス情報を提供する。
【0114】
[アクセス制御装置7]
アクセス制御装置7は、外部クライアント124と非公開ネットワークプリンタ52との間で、外部クライアント124に対して非公開ネットワークプリンタ52のサービス情報を提供し、外部クライアント124のユーザによる非公開ネットワークプリンタ52の選択を可能とする。
また、アクセス制御装置7は、外部クライアント124を代理して、非公開ネットワークプリンタ52アクセスし、サービス提供を要求する。
また、アクセス制御装置7は外部クライアント124など、ネットワークシステム5の外部のノードに対して、非公開ネットワークプリンタ52のネットワークロケーションおよび属性などの情報を隠蔽する。
なお、第1のネットワークシステム1の第1のアクセス制御装置3の機能と、第2のネットワークシステム5の第2のアクセス制御装置7の機能との差異は、後述するように、これらで動作する異なるソフトウェアによる。
【0115】
図10は、図9に示した第2のアクセス制御装置7において実行される第2のアクセス制御プログラム8の構成を示す図である。
図10に示すように、第2のアクセス制御プログラム8は、図3に示した第1のアクセス制御プログラム4の代理要求部402を、代理アクセス部800で置換し、サービス探索部800を付加した構成を採る。
なお、アクセス制御プログラム8においては、代理アクセス部800およびサービス探索部802以外の構成部分の処理内容も、適宜、変更されている。
アクセス制御プログラム8は、例えば記録媒体112によりアクセス制御装置3に供給され、メモリ104にロードされて実行される。
アクセス制御プログラム8は、これらの構成部分により、上述したアクセス制御装置7の機能を実現する。
【0116】
[アクセス制御プログラム8の処理の概要]
第2のアクセス制御プログラム8の処理の概要をさらに説明する。
第2のアクセス制御プログラム8は、第1のアクセス制御プログラム4と同様に、以下に示すような処理を行う。
外部クライアント124からアクセス制御装置7にサービス探索の要求があったときに、アクセス制御プログラム8は、この要求に応じて、外部クライアント124に提供しうるサービスの検索を行う。
【0117】
外部クライアント124から、フォームに対して入力された情報を含むサービス要求が出されると、アクセス制御プログラム8は、ディレクトリサーバ50を検索し、外部クライアント124のユーザが所望するサービスを、外部クライアント124に対して応答する。
この応答に非公開ネットワークプリンタ52のネットワークロケーションなどの非公開情報が含まれるときには、第2のアクセス制御プログラム8は、第1のアクセス制御プログラム4と同様に、その保護レベルに応じて、非公開情報を隠蔽しつつ、外部クライアント124と非公開ネットワークプリンタ52との間で伝送されるデータを中継する。
【0118】
以下、第2のアクセス制御プログラム8の構成部分の処理を説明する。
ここで説明しない第2のアクセス制御プログラム8の構成部分は、第1のアクセス制御プログラム4(図3)の同じ符号が付された構成部分と、実質的に同じ処理を行う。
【0119】
[通信制御部400,410]
通信制御部400,410は、外部クライアント124および非公開ネットワークプリンタ52などのサーバとの間の通信制御に加えて、ディレクトリサーバ50との間との通信制御を行う。
【0120】
[サービス探索部802]
サービス探索部802は、固有のネットワークロケーション(URLなど)を有しており、外部クライアント124からのアクセスを受けて、ローカルネットワークシステム6内部のサーバの情報を提供する。
サービス探索部802は、外部クライアント124からHTTP転送プロトコルなどによってアクセスされ、外部クライアント124に対して、GUI(Graphical User Interface)用に、HTMLなどの形式で記述されたメニュー画面を返す。
このメニュー画面には、外部クライアント124のユーザが、ローカルネットワークシステム6内のサーバ(非公開ネットワークプリンタ52)を検索するための検索条件を指定するフォーム(入力項目)が含まれている。
【0121】
外部クライアント124のユーザは、フォームに所望の検索条件を記入し、サービス探索部802に対して検索要求を出す。
サービス探索部802は、この検索要求を受けて解析し、検索条件に含まれる各項目を、ディレクトリサーバ50との間の通信プロトコルに適合する検索要求とし、ディレクトリサーバ50に対して送信する。
ディレクトリサーバ50からの検索結果を受けると、サービス探索部802は、この検索結果を解析し、検索結果を表示するHTMLコンテンツを作成し、外部クライアント124に返す。
【0122】
[非公開情報検出部412]
非公開情報検出部412は、アクセス制御プログラム4においてと同様に、非公開ネットワークプリンタ52のネットワークロケーションを非公開情報として検出する。
さらに、アクセス制御プログラム8においては、非公開情報検出部412は、この他に、非公開ネットワークプリンタ52のセキュリティホールを第三者に知らしめるような属性情報(例えば、非公開ネットワークプリンタ52のホストアドレス(ドメイン名もしくはIPアドレス)、ポート番号、コマンドの仮想パス、これらから構成されるURL、非公開ネットワークプリンタ52の機種名・OS名などの属性値)を、非公開情報として検出する。
【0123】
なお、SLPプロトコル、LDAPプロトコルおよびSNMPプロトコルなどの標準化されたプロトコルでは、プロトコルメッセージのシンタックスとともに、セマンティックスも規定されている。
また、HTTP転送プロトコル上で、XML形式で記述されたメッセージを交換してリモートプロシージャコールを実現するWebサービスにおいても、XMLタグが定義される。
したがって、非公開情報検出部412は、これらのプロトコル・言語によるメッセージを解析することにより、非公開情報を検出することができる。
【0124】
図11は、図10に示した非公開情報検出部412の処理を示す図である。
図11に示すように、非公開情報検出部412は、第1のアクセス制御プログラム4においてとは異なり、S154(図5)を含まない処理を実行する。
【0125】
[秘匿用コードDB404]
図12は、図8に示した秘匿用コードDB404に保持され、非公開ネットワークプリンタ52の機能提供およびネットワークロケーションの隠蔽のために用いられる第2の秘匿用コードテーブルを例示する図である。
図12に示すように、第2のアクセス制御プログラム8においては、第1のアクセス制御プログラム4(図3)においてとは異なり、秘匿用コードDB404は、第1の秘匿用コードテーブル(図4)の非公開Webサーバ24のネットワークロケーションを、非公開ネットワークプリンタ52のネットワークロケーションに変更し、さらに、非公開Webサーバ24のネットワークロケーションを削除した第2の秘匿用コードテーブルを保持する。
【0126】
[代理アクセス部800]
代理アクセス部800は、外部クライアント124から非公開ネットワークプリンタ52に対する要求を受け、外部クライアント124を代理して、非公開ネットワークプリンタ52に中継する。
代理アクセス部800は、第1のアクセス制御プログラム4においてと同様に、要求の宛先がアクセス制御装置7であって、かつ、仮想パスが秘匿用コードであるときには、秘匿用コードDB404に、この秘匿用コードが登録されているか検査する。
代理アクセス部800は、秘匿用コードDB404に、この秘匿用コードが登録されているときには、要求に含まれる要求元(外部クライアント124)のネットワークロケーションと、登録されているクライアントアドレスとが同じか否かを検査する。
【0127】
代理アクセス部800は、秘匿用コードが登録されていないとき、および、秘匿用コードが登録されているが、外部クライアント124のネットワークロケーションが、クライアントアドレスと異なる場合には、この要求を拒否する。
秘匿用コードが秘匿用コードDB404に登録されていて、かつ、外部クライアント124のネットワークロケーションが同じであるときには、代理アクセス部800は、要求に含まれる宛先(秘匿用コードを含む)を、同じエントリに登録されている非公開ネットワークプリンタ52のネットワークロケーションに置換する。
さらに、代理アクセス部800は、このように置換した要求を、非公開ネットワークプリンタ52に対して中継する。
【0128】
図13は、図10に示した代理アクセス部800の処理(S26)を示すフローチャートである。
図13に示すように、代理アクセス部800は、図6に示した代理要求部402の処理(S18)から、S190を除いた処理を行う。
【0129】
[ネットワークシステム5の全体的動作]
以下、図14を参照して、第2のネットワークシステム5の全体的な動作を説明する。
図14は、図9に示した第2のネットワークシステム5の全体的動作を示すシーケンス図である。
なお、図14に示す各処理におけるデータのフォーマットは、下表6,7に例示する通りである。
但し、下表6,7には、ディレクトリサーバとSLPにより通信する場合が例示され、下表6,7に示されるデータフォーマットは、HTTPおよびSLPにより規定される。
【0130】
【表6】
Figure 2005043938
【0131】
【表7】
Figure 2005043938
【0132】
図14に示すように、ステップ280(S280)において、外部クライアント124のユーザが、外部クライアント124で動作しているWebブラウザで、アクセス制御装置7(アクセス制御プログラム8)のサービス探索部802のURLを指定し、アクセス制御装置7に対して、サービス探索を要求する。
外部クライアント124は、アクセス制御装置7を宛先アドレスとして、HTTPプロトコルによりサービス探索要求(GETメソッド)を送信する。
ステップ282(S282)において、アクセス制御装置7(アクセス制御プログラム8)は、このサービス探索要求を受け、サービス探索要求に含まれるURLにより指定されるサービス探索部802による探索サービスを起動する。
アクセス制御装置7は、探索サービスのGUIを提供するためのフォームを含むHTMLコンテンツを、外部クライアント124に送信する。
【0133】
ステップ284(S284)において、外部クライアント124のWebブラウザは、アクセス制御装置7からのHTMLコンテンツを受信し、このHTMLに含まれるフォームを、表示・入力装置106に表示してユーザに示す。
ユーザが、このフォームに対して、非公開ネットワークプリンタ52を検索するために必要な検索条件を指定し、送信を指示すると、Webブラウザは、検索条件を含むサービス要求を、アクセス制御装置7に対して送信する。
【0134】
ステップ286(S286)において、アクセス制御装置7(アクセス制御プログラム8)は、サービス要求に含まれる検索条件を受け、ディレクトリサーバ50に対して非公開ネットワークプリンタ52の検索を要求する。
ステップ288(S288)において、ディレクトリサーバ50は、検索条件に適合する非公開ネットワークプリンタ52の情報を、検索結果としてアクセス制御装置7に返す。
ステップ290(S290)において、アクセス制御装置7(アクセス制御プログラム8)は、外部クライアント124に対して、ディレクトリサーバ50による検索結果に含まれる非公開情報を秘匿するための秘匿用コードを含むHTMLコンテンツを返す。
【0135】
ステップ292(S292)において、外部クライアント124のWebサーバは、アクセス制御装置7(アクセス制御プログラム8)からのHTMLコンテンツを表示・入力装置106に表示し、ユーザに示す。
ユーザは、さらに、外部クライアント124のプリントクライアントプログラム(図示せず)を起動し、検索結果画面を参照して非公開ネットワークプリンタ52のいずれかを選択し、例えば、表示されている非公開ネットワークプリンタ52に対応する秘匿用コードを、コピー&ペーストとよばれる手法でプリントドライバに宛先として指定し、印刷を指示する。
【0136】
ステップ294(S294)において、外部クライアント124は、指定された非公開ネットワークプリンタ52の秘匿用コードなどを含む印刷要求を送信する。
ステップ296(S296)において、アクセス制御装置7(アクセス制御プログラム8)は、この印刷要求を受け、印刷要求中の秘匿用コードを、指定された非公開ネットワークプリンタ52のURLに変換し、指定された非公開ネットワークプリンタ52に対して送信する。
この印刷要求を受けた非公開ネットワークプリンタ52は、印刷要求に含まれるページ記述言語(PDL)形式のデータから画像を形成し、印刷する。
【0137】
[変形例]
なお、サービス探索部802は、別の実施の形態では、ディレクトリ・サーバにアクセスすることなく、例えばUPnP(Universal Plug & Play)のような一斉同報通信を用いたサービス発見プロトコルによってサービス探索部がネットワーク上の各種のサーバからサービスの情報を収集するように構成してもよい。
また、代理アクセス部800は、ユーザ認証を行なって、ローカルネットワークシステム6内の非公開ネットワークプリンタ52へのアクセスに対して課金してもよい。
また、アクセス制御プログラム8を、外部クライアント124との間ではIPPプロトコルで通信し、非公開ネットワークプリンタ52との間では、Lpd(Line Printer Daemon Protocol; IETF RFC 1179)プロトコルで通信するというように、要求の中継の際に、プロトコル変換を行なってもよい。
【0138】
【発明の効果】
以上説明したように、本発明に係るアクセス制御装置およびその方法によれば、外部に対してサーバのURLなどの情報を開示することなく、サービスを提供できる。
また、本発明に係るアクセス制御装置およびその方法によれば、外部に対してサーバのURLなどの情報を開示しなくても済むようにして、サーバのセキュリティを向上させることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るアクセス制御方法が適応される第1のネットワークシステムの構成を例示する図である。
【図2】図1に示したアクセス制御装置、クライアント、ルータおよびWebサーバのハードウェア構成を例示する図である。
【図3】図1,図2に示したアクセス制御装置において実行される第1のアクセス制御プログラムの構成を示す図である。
【図4】図3に示した秘匿用コードDBに保持され、非公開Webサーバの機能提供およびネットワークロケーションの隠蔽のために用いられる第1の秘匿用コードテーブルを例示する図である。
【図5】図3に示した代理要求部の処理(S14)を示すフローチャートである。
【図6】図3に示した非公開情報検出部の処理(S18)を示すフローチャートである。
【図7】図3に示した情報保護部の処理(S20)を示すフローチャートである。
【図8】図1に示したネットワークシステムの全体動作(S10)を例示するシーケンス図である。
【図9】本発明の第2の実施形態に係るアクセス制御方法が適応される第2のネットワークシステムの構成を例示する図である。
【図10】図9に示した第2のアクセス制御装置において実行される第2のアクセス制御プログラムの構成を示す図である。
【図11】図10に示した非公開情報検出部の処理を示す図である。
【図12】図8に示した秘匿用コードDBに保持され、非公開ネットワークプリンタの機能提供およびネットワークロケーションの隠蔽のために用いられる第2の秘匿用コードテーブルを例示する図である。
【図13】図10に示した代理アクセス部の処理(S26)を示すフローチャートである。
【図14】図9に示した第2のネットワークシステムの全体的動作を示すシーケンス図である。
【符号の説明】
1,5・・・ネットワークシステム、
120・・・インターネット、
12・・・ネットワークシステム、
124,132・・・クライアント、
100・・・コンピュータ本体、
102・・・CPU、
104・・・メモリ、
106・・・表示・入力装置、
108・・・通信装置、
110・・・記録装置、
112・・・記録媒体、
126・・・IPネットワーク、
128・・・ルータ、
130・・・外部Webサーバ、
2,6・・・ローカルネットワークシステム、
20・・・ファイアウォール、
3,7・・・アクセス制御装置、
4,8・・・アクセス制御プログラム、
400,410・・・通信制御部、
402・・・代理要求部、
404・・・秘匿用コードDB、
406・・・DB管理部、
408・・・秘匿用コード作成部、
412・・・非公開情報検出部、
414・・・情報保護部、
416・・・代理応答部、
800・・・代理アクセス部、
802・・・サービス探索部、[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an access control apparatus and method for controlling external access to a node in a system.
[0002]
[Prior art]
For example, Patent Documents 1 and 2 disclose a proxy server that performs relay between a client and a server.
Server functions can be provided to clients via such a proxy server. However, if the server URL (Uniform Resource Locator) is disclosed to all clients, there is a security problem. It can happen.
[0003]
[Patent Document 1] Japanese Patent Application Laid-Open No. 2002-007228
[Patent Document 2] Japanese Patent Application Laid-Open No. 2002-189773
[0004]
[Problems to be solved by the invention]
The present invention has been made from the above-described background, and an object of the present invention is to provide an access control apparatus and method capable of providing a service without disclosing information such as the URL of a server to the outside. To do.
It is another object of the present invention to provide an access control apparatus and method that can improve the security of a server by eliminating the need to disclose information such as the URL of the server to the outside.
[0005]
[Means for Solving the Problems]
[Access control device]
In order to achieve the above object, an access control apparatus according to the present invention is an access control apparatus that controls communication of first information having a predetermined relationship with a first node, wherein the first information Is included in the transmission information transmitted to the first node, can be replaced by the second information, and is included in the first transmission information about to be transmitted to the first node Information detecting means for detecting the first information, and the first information included in the first transmission information is replaced with second information that can substitute for the first information; The information replacement means for transmitting to the first node and the accessed first information are substituted when there is an access using the second information from the first node. Second information creating means for creating second information .
[0006]
Preferably, the first information is non-public information that is in a private relationship with the first node, and the second information is the non-public information. It is confidential information for concealing from a node, and the information detecting means detects the non-public information included in the first transmission information to be transmitted to the first node. The information replacing means replaces the non-public information included in the first transmission information with confidential information that can replace the non-public information, and uses the first information as the second transmission information. The secret information generating means transmits the secret information to replace the accessed private information when there is an access from the first node using the secret information. Create confidential information to create.
[0007]
Preferably, the concealment information creating means creates the concealment information using a random number.
[0008]
Preferably, when there is an access using the confidential information from the first node, there is further provided an alternative access means for performing an access using the secret information replaced by the confidential information.
[0009]
Preferably, the alternative access means determines the validity of the confidential information, and uses the non-public information replaced by the confidential information when the confidential information is determined to be valid. Did access.
[0010]
Preferably, the secret information includes an attribute of the secret node.
[0011]
Preferably, the non-public information is a private address of a private node that is made private to the first node, and the public node that is made public to the first node is the first private node. Included in the first transmission information to be transmitted to one node, the concealment information is a concealment address that is disclosed instead of the private address, and the first node Access to the private node using the concealment address included in the second transmission information, and the alternative access means is accessed from the first node using the concealment address In addition, access to the private node is substituted using the private address substituted by the secret address.
[0012]
Preferably, the non-public information is a private address of a private node that is made private to the first node, and the public node that is made public to the first node is the first private node. Included in the first transmission information to be transmitted to one node, the concealment information is a concealment address that is disclosed instead of the private address, and the first node Using the confidential address included in the second transmission information, access to the private node,
The private information detecting means detects the private address included in the first transmission information to be transmitted to the first node, and the information replacing means is included in the first transmission information. Is replaced with a secret address that can replace this secret address, and is transmitted as second transmission information to the first node. The secret information that replaces the accessed private information is created when there is an access using the private address from the node.
[0013]
Preferably, the access control device, the private node, and the public node are included in one network system, and the first node is an external node that accesses the network system.
[0014]
Preferably, an access control address is set in the access control device, and the information replacement means uses a secret address that can replace the secret address with the secret address included in the first transmission information. And the access control address is added and transmitted as second transmission information to the first node, and the first node has access control added to the second transmission information. An access address is used to access the access control apparatus, and a secret address added to the second transmission information is used to access the private node via the access control apparatus.
[0015]
Preferably, the private address is a URL (Uniform Resource Locator), an IP (Internet Protocol) address, or a domain name that is uniquely set for the private node, and the access control address is the access control address. A URL, an IP address, or a domain name that is uniquely set for the control device.
[0016]
Preferably, in response to a request from the first node, the information processing device further includes search means for searching for the secret node, and the secret information creation means is the secret information obtained as a result of the search. A secret address that can replace the private address of the node is further created.
[0017]
Preferably, the search means further charges for access to the private node.
[0018]
[Access control method]
The access control method according to the present invention is an access control method for controlling communication of private information that is private to the first node, and the private information is provided to the first node. Included in the transmission information transmitted in this manner, the secret information can be replaced by concealment information for concealing the first node and transmitted to the first node. The secret information included in the first transmission information is detected, the secret information included in the first transmission information is replaced with confidential information that can replace the secret information, and the second transmission is performed. Information is transmitted to the first node, and when there is an access using the confidential information from the first node, confidential information that replaces the accessed private information is created. Have
[0019]
Preferably, when there is an access using the confidential information from the first node, the access using the secret information substituted by the confidential information is further performed.
[0020]
Preferably, the non-public information is a private address of a private node that is made private to the first node, and the public node that is made public to the first node is the first private node. Included in the first transmission information to be transmitted to one node, the concealment information is a concealment address that is disclosed instead of the private address, and the first node Access to the private node using the concealment address included in the second transmission information, and when there is an access using the concealment address from the first node, the concealment address The access to the private node is substituted using the private address replaced by the private address.
[0021]
Preferably, the non-public information is a private address of a private node that is made private to the first node, and the public node that is made public to the first node is the first private node. Included in the first transmission information to be transmitted to one node, the concealment information is a concealment address that is disclosed instead of the private address, and the first node The secret address included in the second transmission information is used to access the secret node, and the secret address included in the first transmission information to be transmitted to the first node is Detecting, replacing a secret address included in the first transmission information with a secret address that can replace the secret address, and transmitting the second transmission information to the first node; Said From node, said when there is access using the private address, to create a confidential information to replace the accessed private information.
[0022]
[program]
The program according to the present invention is a program for controlling communication of non-public information that is made private to the first node, and the non-public information is transmitted to the first node. The first information which is included in the transmission information and can be replaced with the confidential information for concealing the private information from the first node and is transmitted to the first node Detecting the non-public information included in the transmission information; replacing the non-public information included in the first transmission information with confidential information that can replace the non-public information; and as second transmission information Transmitting to the first node, and creating confidential information that replaces the accessed private information when there is an access using the confidential information from the first node. Step and To be executed by a computer.
[0023]
Preferably, when there is an access using the confidential information from the first node, the computer is further caused to perform an access using the secret information replaced by the confidential information.
[0024]
Preferably, the non-public information is a private address of a private node that is made private to the first node, and the public node that is made public to the first node is the first private node. Included in the first transmission information to be transmitted to one node, the concealment information is a concealment address that is disclosed instead of the private address, and the first node In the step of performing access to the private node using the confidential address included in the second transmission information and performing access using the private information replaced by the confidential information, the first When there is an access from the node using the secret address, the access to the secret node is substituted using the secret address replaced by the secret address. To.
[0025]
Preferably, the non-public information is a private address of a private node that is made private to the first node, and the public node that is made public to the first node is the first private node. Included in the first transmission information to be transmitted to one node, the concealment information is a concealment address that is disclosed instead of the private address, and the first node Using the confidential address included in the second transmission information, access to the private node,
In the detecting step, the non-public address included in the first transmission information to be transmitted to the first node is detected, and in the replacing step, the non-transmission included in the first transmission information is detected. In the step of replacing the public address with a concealment address that can replace this private address, transmitting the second address as second transmission information to the first node, and creating the concealment information, The secret information that replaces the accessed private information is created when there is an access using the private address from the node.
[0026]
DETAILED DESCRIPTION OF THE INVENTION
[Background of the present invention]
Before describing the embodiments of the present invention, first, in order to facilitate understanding thereof, the background of the present invention will be described.
In recent years, mobile terminals such as the Internet environment and notebook PCs have become widespread and are generally used.
Due to such circumstances, network resources (Network Resources) of computer systems (local computer systems) in an organization such as a company from home or from Internet connection services such as street hot spots and Internet cafes via the Internet For example, using a WWW (World Wide Web; hereinafter also simply referred to as Web) server, a file server, a network printer, and the like, user convenience and efficiency of organizational work are being improved.
[0027]
However, for the security and security of the internal computer system, communication between the external computer connected to the Internet (external) and the internal computer system is usually performed through a firewall that restricts the exchange of information. Is called.
This firewall centrally monitors access to and from the internal network to prevent unauthorized intrusion from the outside into the in-house computer system and information leakage from the in-house computer system to the outside.
In other words, it is not possible to unconditionally remotely access an in-house computer system protected by a firewall.
[0028]
In order to remotely access such an in-house computer system, a device called an access control device (access relay device) may be installed at the boundary between the in-house computer system and the Internet.
One type of access relay device is a proxy server.
The proxy server mediates data transmitted between the client and the server and centrally monitors them to relay a specific type of permitted connection or block unauthorized access.
In a proxy server, HTTP (Hypertext Transfer Protocol--HTTP / 1.1; IETF RFC 2068) is generally used as a transfer protocol, and FTP (File Transfer Protocol; IETF RFC 959), Telnet (TELNET) PROTOCOL Specification; IETF RFC 854) and Gopher (The Internet Gopher Protocol; IETF RFC 1436) may be used.
[0029]
The proxy server includes a forward proxy server and a reverse proxy server.
The forward proxy server is used to use a Web server or the like on the Internet from an in-house computer system or the like (internal network).
The forward proxy server receives a request (communication request) by an HTTP transfer protocol from the client of the internal network to the Internet, and sends the request to the Internet on behalf of the client.
[0030]
The forward proxy server receives a response (communication response) sent from the Internet and returns it to the client.
Therefore, when viewed from the Internet side, the forward proxy server appears as if it is a client, and the logical address information that identifies the location of the client on the network, such as the network location (URL, domain name, and IP address). ) Is hidden.
Thus, the forward proxy server has a mechanism for protecting the client against the server.
Therefore, if access to the server in the internal network from the Internet is performed through the reverse forward proxy server, the network location of the client on the Internet is hidden from the internal network side. On the contrary, information such as the network location of the server of the internal network is not concealed on the Internet side.
[0031]
That is, if only the forward proxy server is used, information such as the network location of a node such as a server included in the internal network may leak out.
As described above, when the information of the internal network is passed to a malicious third party who attempts unauthorized intrusion, the information may be used for an attack against the server.
For example, if an unauthorized intrusion to one of a large number of servers in an internal network (for example, a Web server) succeeds, it is included in the content of HTML (Hypertext Markup Language -2.0; IETF RFC 1866) format on the Web server, By following links (hyperlinks) used as pointers to refer to other HTML-formatted content, information on other servers is leaked one after another, and many servers in the internal network are exposed to attack. That could be a problem.
[0032]
In particular, when a server (private server) that is not intended to be disclosed to the outside and is assumed to be closed to the internal network (private server) is managed by a department or workgroup within the organization, it is more than security Priority may be given to convenience during normal use in departments.
In such a case, the private server becomes weaker than a Web server or the like (public server) designed on the premise of public disclosure in terms of security measures, and is likely to be illegally intruded.
For example, when a connection to an internal network is made from a computer that can be used by an unspecified number of people, such as an Internet cafe, the SSL (Secure) Even if an encrypted transfer protocol such as Sockets Layer) is applied, the risk of leakage of information on the internal network to a third party is not completely eliminated.
[0033]
On the other hand, the reverse proxy server is used to publish a Web server or the like on the internal network to the Internet side.
The reverse proxy server receives an access request from the Internet side and relays it to a Web server connected to the internal network.
Therefore, when the reverse proxy server is used, the configuration of the server included in the internal network is concealed from the outside, which makes it easy to change the configuration of the internal network and allows flexible load distribution among the servers. .
[0034]
The reverse proxy server associates multiple origin servers (servers proxyed by the proxy server) in advance so that they can be accessed from a single network location. When a request is received from a client, the network location included in the request is internally determined. Convert and transfer to each host computer.
Accordingly, the following problems ((1), (2), (3)) occur when permitting access from the Internet to a large number of private servers that are assumed to be used by clients of the internal network. Arise.
[0035]
(1) In order to make any server on the internal network accessible from the Internet, the network locations of all the servers in the internal network are related by the reverse proxy server and made public to the outside. Must be associated with a network location.
However, private servers that are assumed to be used on the internal network have a large number of installations, are frequently changed in configuration, and are often managed by each department. However, the latest network information is not always reflected, or in order to always reflect the latest network information on the reverse proxy server, a lot of labor and cost are required.
[0036]
(2) In order to access a server on the internal network from a client on the internal network, the user must know the network location of the origin server.
On the other hand, in order to access a server on the internal network from a client on the Internet, the user needs to know the network location set to publish the server on the internal network to the outside.
Thus, a user who may access a server on the internal network, both from the internal network and from the Internet, must know both network locations. You must know the network location of the origin server used for the.
[0037]
(3) In the reverse proxy server, when linking the content of the origin server between pages on the origin server, it is necessary to unify the partial URL with only the path name (not including the host address). There are restrictions.
It is possible to cope with this restriction by correcting the link of the HTML content on all servers on the internal network to such a partial URL.
However, this modified content can only be accessed via a reverse proxy server and cannot be used directly from a client on the internal network.
Therefore, in order to avoid such a problem, each server on the internal network must prepare two types of content for the client of the internal network and content modified for external publication.
In reality, it is very difficult to spend such time and effort.
[0038]
As described above, even when an existing proxy server is used, it is possible to achieve both the convenience of accessing the in-house computer system from the Internet and the security for protecting the in-house computer system from a malicious third party. I could not.
Up to this point, the proxy server has been described mainly using the Web server as a specific example, but the same problem occurs even when the proxy server is applied to other types of servers.
[0039]
The present invention has been made from the background described above, and is assumed to be closed to a client computer on the Internet (external) and closed in an in-house computer system (local network). The private server is devised so that it can be remotely accessed from the outside via the Internet or the like.
In addition, the present invention enables remote access to a private server in the local network from the outside, and can also conceal internal information such as a private server and other computers connected to the local network. It has been devised.
Further, the present invention is devised so that information disclosed inside the local network can be kept secret from the outside.
[0040]
[First Embodiment]
Hereinafter, a first embodiment of the present invention will be described.
[0041]
[First network system 1]
FIG. 1 is a diagram illustrating a configuration of a first network system 1 to which an access control method according to a first embodiment of the present invention is applied.
As shown in FIG. 1, a network system 1 includes a network system 12, a web server 130 (hereinafter also referred to as an external web server 130), and a first local network system 2 connected via the Internet (The Internet) 120. Configured.
The network system 12 employs a configuration in which one or more clients 124-1 and 124-2 (hereinafter also referred to as external clients 124) are connected via an IP (Internet Protocol) network 126-1. -1 is connected to the network system 120 via the router 128-1.
[0042]
Further, the local network system 2 includes one or more clients 132 (hereinafter also referred to as internal clients 132), Web servers 22-1, and other information such as network locations that are open to the outside such as the network system 12. 22-2 (hereinafter also referred to as a public Web server 22), a Web server 24 (hereinafter also referred to as a private Web server 24) in which such information is not disclosed to the outside, the firewall 20 and the first The access control device 3 is connected via the IP network 126-3.
Further, the firewall 20 and the access control device 3 are connected to the router 128-2 via the IP network 126-2, and are connected to the Internet 120 via these.
[0043]
Hereinafter, when any one of a plurality of components such as the clients 124-1 and 124-2 is indicated without being specified, the client 124 or the like may be simply abbreviated.
Further, the access control device 3, the external client 124, the Web servers 22 and 24, and the like may be collectively referred to as nodes.
[0044]
Further, in the network system 1 illustrated in FIG. 1, the local network system 2 corresponds to the in-house computer system and internal network of the background of the present invention, and the client 124 in the network system 12 is connected to the Internet side. And external clients.
In the network system 1, the content in HTML format is provided by the Web server 22 and the Web server 24 in the local network system 2 in response to a request from the external client 124 or the like by these components.
[0045]
FIG. 2 is a diagram illustrating a hardware configuration of the access control device 3, the clients 124 and 132, the router 128, and the Web servers 22, 24, and 130 illustrated in FIG.
As shown in FIG. 2, these include a computer main body 100 including a CPU 102 and a memory 100, a display / input device 106 including a display device / keyboard / mouse, a communication device 108, and a CD device / HDD / FDD. The recording apparatus 110 is configured.
That is, they have a configuration part as a general computer having a communication function.
[0046]
In the network system 1, an IP network 126 is a packet switching network such as a LAN (Local Area Network), and provides a communication path based on the TCP / IP protocol.
For example, in the network system 1, each IP network 126 is operated by a global IP address system.
[0047]
The Internet 120 is a wide area packet switching network, and is constructed by interconnecting a large number of IP networks 126 via routers 128.
[0048]
The firewall 20 allows only access from the internal client 132 of the local network system 2 to the outside (in the network system 1, the Internet 120, the external Web server 130, and the network system 12).
On the contrary, the firewall 20 prevents access to the inside of the local network system 2 from the outside.
[0049]
Web servers 22, 24, and 130 include, for example, a Web-compatible file server, a document management server, an image storage server with a scanner, a copier multifunction device (a device in which a copy, a printer, a scanner, a FAX, and the like are integrated), and a mailbox A server or the like that provides application services to the clients 124 and 132.
That is, the Web servers 22, 24, and 130 receive access from the clients 124 and 132 through the Internet 120 and the IP network 126 by a transfer protocol such as an HTTP transfer protocol. Returns the content necessary to provide the service.
The content that the public Web servers 22, 24, and 130 return to the external clients 124 and 132 are described in a language such as HTML, for example.
[0050]
The clients 124 and 132 are computers, scanner devices, copier multifunction devices and the like that use application services provided by servers such as the Web servers 22, 24, and 130 (which are dynamically compatible with mobile networks). Is good).
The clients 124 and 132 have a user interface (for example, the display / input device 106; FIG. 2), and execute an application called a Web browser (not shown).
The Web browser executed on the clients 124 and 132 accesses the Web servers 22, 24, and 130 by the HTTP transfer protocol or the like according to the user's operation, and the content (Web page) described in a language such as HTML is used. Provides a function for browsing.
[0051]
[Access control device 3]
The access control device 3 is interposed between the external client 124 and the Web servers 22, 24, receives requests from the external client 124, and accesses these servers on behalf of the external client 124.
In addition, when the Web servers 22 and 24 respond to the request from the external client 124, the access control device 3 displays the information of the private Web server 24 (hereinafter, the network location (URL and the like) of the private Web server 24). These servers are represented on behalf of the outside, and the response to the external client 124 is relayed.
[0052]
[Access control program 4]
FIG. 3 is a diagram showing the configuration of the first access control program 4 executed in the access control device 3 shown in FIGS.
As shown in FIG. 3, the first access control device 3 includes a communication control unit 400 on the external client 124 side, a proxy request unit 402, a concealment code database (DB) 404, a DB management unit 406, a concealment code creation unit. 408, a communication control unit 410 on the Web servers 22 and 24 side, a secret information detection unit 412, an information protection unit 414, and a proxy response unit 416.
The access control program 4 is supplied to the access control device 3 by, for example, the recording medium 112, loaded into the memory 104, and executed.
With these components, the access control program 4 provides not only the function of the public Web server 22 but also the function of the private Web server 24 to the external client 124, and also provides a private Web server to the outside. The internal information of the local network system 2 such as 24 network locations is concealed.
[0053]
[Outline of processing of access control program 4]
The outline of the process of the access control program 4 will be further described.
The network locations of the access control device 3 and the public Web server 22 of the local network system 2 are open to the outside of the local network system 2.
Therefore, any user of the external client 124 can access the access control device 3 and the public Web server 22 as long as they know these network locations.
[0054]
On the other hand, the network location of the private Web server 24 is not disclosed to the outside of the local network system 2.
Accordingly, an external user can access the private Web server 24 for the first time by following the link included in the HTML format content received from the public Web server 22.
However, if HTML content that has not been taken any measures for concealment is provided to the outside from the public Web server 22, information such as the network location of the private Web server 24 that should be kept secret is disclosed to the outside. It will come out.
[0055]
FIG. 4 is a diagram illustrating a first concealment code table held in the concealment code DB 404 shown in FIG. 3 and used for providing functions of the private Web server 24 and concealing the network location.
The access control program 4 (access control device 3) performs the following processes ((1) to (8)) in order to prevent such problems.
(1) When there is an access to the public Web server 22 from the external client 124 and the HTML content is about to be transmitted from the public Web server 22 to the external client 124, the access control program 4 The network location detection process of the private Web server 24 is performed.
(2) As a result of the detection process, when the network location of the private Web server 24 is not detected, the HTML content is transmitted to the external client 124.
[0056]
The path shown in FIG. 4 is a virtual path, and the virtual path is used as follows.
The directory structure disclosed by the Web server does not necessarily match the directory structure of the file system of the computer on which the Web server operates.
Therefore, the Web server has a correspondence between the path name (virtual path) specified in the URL of the HTTP request and the actual path name (physical path) inside the computer as a Web site definition parameter, and the virtual server Provide content to the Internet while converting from path to physical path.
[0057]
The URL is described in a format of “protocol name: // (host address) :( port number) / (path name)”, and the domain name or IP address of the server is stored in the host address portion.
Specifically, for example, when the URL is “http://www.fujixerox.co.jp:80/news/index.html”, the protocol name is “http” and the server host address (IP address or The domain name) is “www.fujixerox.co.jp”, the port number is “80 (can be omitted because 80 is the default)”, and the path name (virtual path) is “/news/index.html”.
[0058]
(3) When the network location of the private Web server 24 is detected as a result of the detection process, a secret code for concealing the network location of the private Web server 24 from outside is created as necessary. To do.
The created secret code corresponds to information indicating the external client 124 that has requested the private Web server 24, data indicating the network location of the linked private Web server 24 and the linked public Web server 22, and the like. As shown in FIG. 4, it is stored in the concealment code DB 404 in a table format.
Each entry of the secret code table includes an entry number, a secret code, a network location (address: port, virtual path) of the private Web server 24, and a network location (address: port, virtual path) of the private Web server 24. The protection level indicating the address of the external client 124 that has made a request to the public Web server 22, the registration time, the protection method for the private Web server 24, and the like are registered.
[0059]
(4) When the network location of the private Web server 24 is detected as a result of the detection process, the network location of the private Web server 24 included in the HTML content is stored in the confidential code table. The code is replaced and returned to the external client 124.
(5) When the external client 124 that has received the concealment code issues a request containing the concealment code to the private Web server 24 (access control device 3), the access control program 4 receives the request. Then, it is searched whether or not the concealment code included in the request is registered in the concealment code table (FIG. 4).
[0060]
(6) When a valid secret code is registered, the access control program 4 replaces the requested secret code with the network location of the private Web server 24 and relays it to the private Web server 24. .
In response to this request, when HTML content or the like is returned from the private Web server 24, the access control program 4 relays the HTML content to the external client 124.
[0061]
(7) When the concealment code is not yet registered in the concealment code table, the access control program 4 creates a new entry in the concealment code table, and as shown in FIG. Register each data.
(8) The access control program 4 performs the above-described processing such as returning an error to the external client 124 without relaying the request to the private Web server 24 when a valid secret code is not registered.
[0062]
Hereinafter, each component of the access control program 4 (FIG. 3) will be described.
[0063]
[Communication control units 400 and 410]
In the access control program 4, the communication control units 400 and 410 perform communication control for transmitting and receiving data between the external client 124 and the public Web servers 22 and 24 by TCP / IP.
[0064]
[Confidential Code DB 404]
The concealment code DB 404 receives each entry of the concealment code table shown in FIG. 4 from the concealment code creation unit 408 and stores it.
In addition, when the concealment code is input from the proxy request unit 402, the concealment code DB 404 searches for an entry with the same concealment code value and returns information registered in the entry obtained as a search result.
[0065]
[DB management unit 406]
The DB management unit 406 manages the concealment code table stored in the concealment code DB 404 in accordance with a user operation on the display / input device 106 (FIG. 2).
The management of the concealment code table performed by the DB management unit 406 includes, for example, deletion of an entry after a predetermined time has elapsed after registration.
[0066]
[Proxy request unit 402]
FIG. 5 is a flowchart showing the process (S14) of the proxy request unit 402 shown in FIG.
The proxy request unit 402 receives a request from the external client 124 via the communication control unit 400 and relays the request to the Web servers 22 and 24 on behalf of the external client 124.
The proxy request unit 402 performs the processes (5), (6), and (8) of the access control program 4 described above.
[0067]
Hereinafter, the processing of the proxy request unit 402 will be further described with reference to FIG.
As shown in FIG. 5, in step 140 (S 140), the proxy request unit 402 receives a request from the external client 124 via the communication control unit 400.
When the destination included in the request received in the process of S140 is a URL, for example, the destination is “http: // host address of destination server (domain name or IP address): destination port number / destination virtual path”. Is described as follows.
In step 142 (S142), the proxy request unit 402 determines whether the destination of the received request (for example, the host address of the destination server in the above example) is a node other than the access control device 3 of the local network system 2, or more specifically. Specifically, it is determined whether or not it is a private Web server 24.
The proxy request unit 402 proceeds to the process of S152 when the request destination is the private Web server 24, and proceeds to the process of S144 otherwise.
[0068]
The data format in the processing of the proxy request unit 402 is as illustrated in Table 1 below.
[0069]
[Table 1]
Figure 2005043938
[0070]
In step 144 (S144), the proxy request unit 402 determines whether the destination of the request is the access control device 3.
The proxy request unit 402 proceeds to the process of S146 when the destination of the request is the access control device 3, and proceeds to the process of S158 otherwise.
[0071]
In step 146 (S146), the proxy request unit 402 searches the concealment code table (FIG. 4) held in the concealment code DB 404, and the path name included in the request (for example, the destination virtual path in the above example). Is a secret code set for a node inside the local network system 2.
In the example shown in FIG. 1, when the path name included in the request is not the virtual path of the access control device 3 itself and is stored in the concealment code DB 404, this path name is the concealment code. In other cases, it is determined that the code is not a secret code.
The proxy request unit 402 proceeds to the process of S148 when the path name is a concealment code, and proceeds to the process of S158 otherwise.
[0072]
In step 148 (S148), the proxy request unit 402 determines whether or not the concealment code included in the request is valid.
In other words, the proxy request unit 402 registers the host address of the external client 124 that is the transmission source of the request in the same entry as this secret code, and the reference source URL included in the request is stored in the secret code DB 404. When the secret code is registered in the same entry, it is determined that the secret code is valid.
The proxy request unit 402 proceeds to the process of S150 when determining that the secret code is valid, and proceeds to the process of S158 otherwise.
[0073]
In step 150 (S150), the proxy request unit 402 refers to the confidential code DB 404 and replaces the confidential code included in the request with the URL to the private Web server 24.
[0074]
In step 154 (S154), the proxy request unit 402 determines that the destination is for the public Web server 22 by the request in which the destination is replaced by the non-public Web server 24 by the process of S150 or the process of S142. The request is transmitted to the destination node via the communication control unit 410.
[0075]
In step 156 (S156), the proxy request unit 402 notifies the proxy response unit 416 that a request has been made on behalf of the external client 124.
In step 158 (S158), the proxy request unit 402 performs an abnormality process such as returning an error to the external client 124 or displaying the occurrence of an abnormality to the administrator of the local network system 2.
[0076]
[Private Information Detection Unit 412]
The private information detection unit 412 performs the process (1) and a part of the process (2) as described below.
The private information detection unit 412 receives the response (HTML content) from the Web servers 22 and 24, and detects the private information from this response.
The private information to be detected by the private information detection unit 412 is kept private and private to the outside of the local network system 2 (such as a user of the external client 124 accessing the local network system 2). Information to be done in general.
Examples of the non-public information include the network location (host address (domain name / IP address), port number, virtual path of content (Web page) of the non-public Web server 24 shown here as a specific example, and from these In addition to (configured URL), information that can specify a destination for accessing a node in the local network system 2 such as a host address (domain name / IP address) of the internal client 132 can be given.
[0077]
Furthermore, when the secret information is detected, the secret information detection unit 412 sets a protection level (FIG. 4) for the secret information and registers it in the confidential code DB 404.
The protection level is a parameter that controls the method for concealing private information. For example, here, a case where 0 and 1 are set as the protection level is taken as a specific example.
For example, when the protection level 0 is set for the private Web server 24, the private information (virtual path to the private Web server 24) included in the response from the private Web server 24 to the external client 124 is It is replaced with the secret code and notified to the external client 124.
[0078]
Therefore, the external client 124 can receive a service such as provision of HTML content from the private Web server 24 by issuing a request to the access control apparatus 3 using the notified secret code, For the external client 124, the network location of the private Web server 24 is hidden.
Also, for example, when protection level 1 is set for the private Web server 24, private information (virtual path to the private Web server 24) included in the response from the private Web server 24 to the external client 124. Is replaced with a predefined character string (such as “******”) and notified to the external client 124.
[0079]
Hereinafter, the detection of private information by the private information detection unit 412 and the setting of the protection level will be further described by taking a case where HTML content is returned as a response from the private Web server 24 to the external client 124. .
As shown in Table 2 below, this HTML content is not displayed to the user in the external client 124, but includes the URL of the private Web server 24 and controls the Web browser operating on the external client 124. HTML tags are embedded.
[0080]
[Table 2]
Figure 2005043938
[0081]
The private information detection unit 412 takes out an HTML tag as illustrated in Table 2 from the HTML content, and converts the URL included in the HTML content into an absolute URL when the URL is a relative URL.
A relative URL is composed of only a virtual path, and the virtual path is a relative position from the position where the user is currently on the directory hierarchy (the directory where the current HTML file is located). For example, “.//./index.html” is described (this example means “file named index.html in a directory two layers above the current position”). ).
Therefore, unless the host address of the server and the current directory are saved in at least some form, they cannot be directly accessed later, so such a virtual path is converted into an absolute path.
[0082]
Next, the private information detection unit 412 determines whether or not the URL included in the HTML tag is the URL of the private Web server 24.
Next, when it is the URL of the private Web server 24, the private information detection unit 412 sets the protection level 0 to this URL (network location).
[0083]
In addition, the private information detection unit 412 detects the URL of the private Web server 24 included in the portion displayed to the user of the external client 124 in the HTML content, as well as in the HTML tag.
The private information detection unit 412 sets the protection level 1 for the URL of the private Web server 24 included in the portion displayed on the external client 124 in the HTML content.
[0084]
For example, since the domain name is described in the FQDN (Fully Qualified Domain Name) format, the description format such as the host address and the URL is standardized, so the non-public information detection unit 412 does not detect the HTML tag. Also by this method, it is possible to detect private information from HTML content.
The private information detection unit 412 collects the detected private information in a private information list (not shown), and together with the message (original content) returned from the private Web server 24 as a response, the information protection unit 414 is notified.
[0085]
The private information list includes one or more entries, and each entry includes information for specifying the private information in the HTML content, for example, the position / number of characters of the first character of the private information in the HTML content ( Range) and protection level.
Alternatively, when the private information is not detected from the response, the private information detection unit 412 notifies the information protection unit 414 of the private information list with 0 entries together with the original content.
The form of the private information list is as illustrated in Table 3 below.
[0086]
[Table 3]
Figure 2005043938
[0087]
FIG. 6 is a flowchart showing the process (S18) of the private information detection unit 412 shown in FIG.
As shown in FIG. 6, in Step 180 (S 180), the private information detection unit 412 receives a response (HTML content or the like) from the Web servers 22 and 24 to the external client 124.
In step 182 (S182), the private information detection unit 412 analyzes the received response.
In step 184 (S184), based on the analysis result, the private information detection unit 412 converts the relative URL into an absolute URL when the response includes a relative URL.
[0088]
In step 186 (S186), the private information detection unit 412 determines whether or not private information is included in the response.
The private information detection unit 412 proceeds to the process of S188 when the private information is included in the response, and proceeds to the process of S192 otherwise.
In step 188 (S188), the secret information detection unit 412 determines the protection level of each secret information detected from the response.
In step 190 (S190), the private information detection unit 412 creates a private information list including one or more entries corresponding to each detected private information.
[0089]
In step 192 (S192), the private information detection unit 412 creates a private information list with 0 entries.
In step 194 (S194), the private information detection unit 412 outputs the response received from the Web servers 22 and 24 and the created private information list to the information protection unit 414.
[0090]
The information protection unit 414 performs a part of the processes (2) and (4) as described below.
The information protection unit 414 identifies the private information included in the response of the Web servers 22 and 24 input from the private information detection unit 412 with reference to the private information list, and the protection included in the private information list Depending on the level (0, 1), it is replaced with a concealment code (protection level 0) or a character string (protection level 1).
That is, the information protection unit 414 outputs the non-public information and the non-public information list to the secret code creation unit 408 for the non-public information at the protection level 0, and corresponds to the non-public information. Get a secret code.
[0091]
Furthermore, the information protection unit 414 combines the acquired concealment code and the network location of the access control device 3 into a virtual network location, and performs processing to replace the network location of the Web servers 22 and 24 included in the response. .
For example, when the response of the Web servers 22 and 24 includes the network location of the private Web server 24 in the format “http: // host address of the private Web server 24 /”, this is expressed as “http”. : // Host address of access control device 3 / Concealment code / ”
[0092]
Further, the information protection unit 414 performs processing for replacing the non-public information with protection level 1 with a character string such as “******”.
The responses of the Web servers 22 and 24 in which the secret information is concealed by the replacement process as described above are output to the proxy response unit 416.
Also, when the private information list with 0 entries and the responses from the Web servers 22 and 24 are input from the private information detector 412, the information protection unit 414 sends this response to the proxy response unit 416. Output.
Further, the information protection unit 414 outputs the non-public information and the non-public information list to the secret code creation unit 408.
[0093]
Hereinafter, the processing of the information protection unit 414 will be further described with reference to FIG.
FIG. 7 is a flowchart showing the process (S20) of the information protection unit 414 shown in FIG.
As shown in FIG. 7, in step 200 (S200), the information protection unit 414 accepts a response from the Web server 22, 24 to the external client 124 and the private information list from the private information detection unit 412.
In step 202 (S202), the information protection unit 414 determines whether the number of entries in the private information list is greater than zero.
The information protection unit 414 proceeds to the process of S204 when the number of entries is greater than 0, and proceeds to the process of S220 otherwise.
[0094]
In step 204 (S204), the information protection unit 414 substitutes 1 for the variable N (N = 1).
In step 206 (S206), the information protection unit 414 determines whether the protection level of the private information list is 0 or 1.
The information protection unit 414 proceeds to the process of S208 when the protection level is 0, and proceeds to the process of S210 otherwise.
[0095]
In step 208 (S208), the information protection unit 414 sends the secret information and related information (information necessary for creating a secret code such as the network location of the external client 124) to the secret code creating unit 408. Notice.
In addition, the information protection unit 414 accepts a concealment code to be replaced with private information from the concealment code DB 404.
In step 210 (S210), the information protection unit 414 replaces the network location of the private Web server 24 included in the response with the received concealment code or the like.
[0096]
In step 212 (S212), the information protection unit 414 replaces the non-public information with a predetermined character string (such as “******”).
In step 214 (S214), the information protection unit 414 increments the variable N (N = N + 1).
In step 216 (S216), the information protection unit 414 determines whether or not the variable N exceeds the number of entries in the private information list.
The information protection unit 414 proceeds to the process of S218 when the variable N exceeds the number of entries, and returns to the process of S206 otherwise.
[0097]
In step 218 (S218), the response with the non-public information replaced is output to the proxy response unit 416.
In step 220 (S220), the information protection unit 414 outputs the response received from the private information detection unit 412 to the proxy response unit 416.
[0098]
[Proxy response unit 416]
The proxy response unit 416 performs part of the process (4) as described below.
The proxy response unit 416 receives the response input from the information protection unit 414 and checks whether this response is a valid response to the request received from the network system 1214 by the proxy request unit 402.
As a result of this check, the proxy response unit 416 relays the response to the external client 124 when it is determined that the response is valid.
In addition, when it is determined that the response is not valid, the proxy response unit 416 performs processing such as discarding the response and returning an error message to the external client 124.
[0099]
[Concealment code creation unit 408]
The concealment code creation unit 408 performs the above process (3) as shown below.
In response to the notification (S208; FIG. 7) from the information protection unit 414, the secret code creating unit 408 generates a random number, and stores the generated random number in the secret code DB 404 as a secret code.
Further, the concealment code creation unit 408 creates information for each entry in the concealment code table (FIG. 4) from the information received from the information protection unit 414 and stores it in the concealment code DB 404.
[0100]
[Overall operation of network system 1]
Hereinafter, the overall operation of the network system 1 will be described.
FIG. 8 is a sequence diagram illustrating the overall operation (S10) of the network system 1 shown in FIG.
Note that the data format in each process shown in FIG. 8 is defined by HTTP, as shown in Tables 4 and 5 below.
[0101]
[Table 4]
Figure 2005043938
[0102]
[Table 5]
Figure 2005043938
[0103]
As shown in FIG. 8, in step 100 (S100), when the user designates the URL of the public web server 22 with a web browser, the external client 124 accesses the access control device 3 (access control program 4; FIG. 3). On the other hand, an HTML content transmission request (GET request for the content indicated by the URL) provided by the public Web server 22 is transmitted using the URL of the public Web server 22 as a destination address by the HTTP protocol.
In step 102 (S102), the access control device 3 relays the request received from the external client 124 to the public Web server 22.
[0104]
In step 104 (S104), the public Web server 22 returns HTML content including the URL (network location) of the private Web server 24 in response to the request.
In step 106 (S106), the access control device 3 replaces the URL of the private Web server 24 included in the HTML content with a concealment code or the like (virtual URL), and outputs it to the external client 124.
In step 108 (S108), when the user clicks on the virtual URL in the HTML content using the Web browser, the external client 124 provides the secret Web server 24 using the concealment code obtained in S106. A request for HTML content transmission is issued.
In step 110 (S110), the access control device 3 converts the concealment code included in the request into the URL of the private Web server 24, and outputs it to the private Web server 24.
In step 112 (S112), the private Web server 24 returns HTML content including the URL of the external Web server 130.
[0105]
In step 114 (S114), the access control device 3 replaces the network location of the private Web server 24 included in the response received from the private Web server 24 with a concealment code and returns it to the external client 124.
In steps 116 and 118 (S116 and S118), when the user clicks the URL of the external Web server 130 included in the HTML content with the Web browser, the external client 124 receives the URL of the external Web server 130 received from the access control device 3. Is used to access the external Web server 130 to obtain HTML content.
[0106]
[Modification]
Note that the concealment code table (FIG. 4) stored in the concealment code DB 404 (FIG. 3, etc.) is created by the concealment code creation unit 408, as will be described later, as well as operations on the display / input device 106. Depending on the situation, it may be created by the DB management unit 406 or supplied to the concealment code DB 404 via the recording medium 112 and the recording device 110.
Further, the proxy request unit 402 may accept the information of the concealment code table (FIG. 4) directly from the display / input device 106 (FIG. 2) and perform the processing shown in FIG.
[0107]
In addition, the communication control units 400 and 410 may be integrally configured. In this case, the access control program 4 is connected only to the IP network 126-3.
In this way, when the firewall 20 is set so that only access from the access control device 3 is passed from the IP network 126-3 side to the IP network 126-2 side (Web server 22, 24 side), access control is performed. The device 3 can provide functions equivalent to the case where the communication control units 400 and 410 are configured separately to the external client 124 or the like.
The protection level may be set by the DB management unit 406 according to the operation of the administrator of the network system 2 of the local network system 2.
[0108]
Also, the private information detection unit 412 accepts a user operation from the display / input device 106, receives and stores a keyword setting, and stores the keyword in the HTML content from the private Web server 24 as the private information. May be detected as
Further, the private information detection unit 412 may increase the types of protection levels, for example, release the link to the private Web server 24 for which the protection level 2 is set, and delete it.
Also, if the secret code has a hierarchical structure, it can be made to appear to a third party as if it were an actual virtual path when replaced with the network location of the private Web server 24.
[0109]
[Second Embodiment]
Hereinafter, a second embodiment of the present invention will be described.
FIG. 9 is a diagram illustrating a configuration of the second network system 5 to which the access control method according to the second embodiment of the present invention is applied.
As shown in FIG. 9, the second network system 5 employs a configuration in which the first local network system 2 of the first network system 1 is replaced with a second local network system 6.
[0110]
The second local network system 6 includes Web servers 22 and 24 and the first access control device 3 of the first local network system 2, one or more private network printers 52-1 and 52-2, a directory. The configuration replaced with the server 50 and the second access control device 7 is adopted.
Of the constituent parts shown in the following drawings, those substantially the same as the constituent parts shown in the drawings used in the description of the first embodiment are given the same reference numerals.
Each node of the network system 5 has the same hardware configuration as the external client 124 shown in FIG.
With these components, the network system 5 provides a print service using the network printer 52 to the external client 124.
[0111]
[External client 124]
Note that the external client 124 executes a Web browser in the same manner as the external client 124 of the first network system 1.
Further, the external client 124 has a function for converting the HTML content being browsed into a page description language (PDL) format, sending it to the private network printer 52 by a print protocol such as the IPP protocol, and printing it. Is done.
[0112]
[Network printer 52]
In the network system 5, the network printer 52 allows access from an external client 124 or the like via the Internet 120 and the access control device 7 by a print protocol such as the IPP (Internet Printing Protocol / 1.0; IETF RFC 2565) protocol. The network printing service is provided that receives data in a page description language (PDL) format, forms an image from the data, and prints the image.
The network printer 52 is a network-compatible printer, a print server, a copier multifunction device, and the like. Information such as the network location is not disclosed to the outside of the network system 5. Hereinafter, the network printer 52 is also referred to as a private network printer 52.
[0113]
[Directory server 50]
The directory server 50 holds service information such as a network location and attributes of a server of the network system 5 (hereinafter, a specific example of the server is a private network printer 52).
The directory server 50 is an SLP (Service Location Protocol; IETF RFC 2165) protocol; In response to requests from the access control device 7 and the access control device 7, service information held therein is provided.
[0114]
[Access control device 7]
The access control device 7 provides service information of the private network printer 52 to the external client 124 between the external client 124 and the private network printer 52, and the user of the private client 124 uses the private network printer 52. Allows selection.
Further, the access control apparatus 7 accesses the private network printer 52 on behalf of the external client 124 and requests service provision.
Further, the access control device 7 hides information such as the network location and attributes of the private network printer 52 from nodes outside the network system 5 such as the external client 124.
Note that the difference between the function of the first access control device 3 of the first network system 1 and the function of the second access control device 7 of the second network system 5 operates as described later. By different software.
[0115]
FIG. 10 is a diagram showing a configuration of the second access control program 8 executed in the second access control device 7 shown in FIG.
As shown in FIG. 10, the second access control program 8 replaces the proxy request unit 402 of the first access control program 4 shown in FIG. 3 with a proxy access unit 800 and adds a service search unit 800. Take the configuration.
In the access control program 8, the processing contents of the components other than the proxy access unit 800 and the service search unit 802 are also changed as appropriate.
The access control program 8 is supplied to the access control device 3 by the recording medium 112, for example, loaded into the memory 104, and executed.
The access control program 8 realizes the function of the access control device 7 described above by these components.
[0116]
[Outline of processing of access control program 8]
The outline of the processing of the second access control program 8 will be further described.
Similar to the first access control program 4, the second access control program 8 performs the following processing.
When there is a service search request from the external client 124 to the access control apparatus 7, the access control program 8 searches for a service that can be provided to the external client 124 in response to this request.
[0117]
When a service request including information input to the form is issued from the external client 124, the access control program 8 searches the directory server 50 and sends the service desired by the user of the external client 124 to the external client 124. To respond.
When this response includes private information such as the network location of the private network printer 52, the second access control program 8 is private according to the protection level, similarly to the first access control program 4. The data transmitted between the external client 124 and the private network printer 52 is relayed while hiding the information.
[0118]
Hereinafter, the process of the component part of the 2nd access control program 8 is demonstrated.
The components of the second access control program 8 not described here perform substantially the same processing as the components of the first access control program 4 (FIG. 3) assigned the same reference numerals.
[0119]
[Communication control units 400 and 410]
The communication control units 400 and 410 perform communication control with the directory server 50 in addition to communication control with the external client 124 and a server such as the private network printer 52.
[0120]
[Service search unit 802]
The service search unit 802 has a unique network location (such as a URL) and receives information from the external client 124 to provide information on the server in the local network system 6.
The service search unit 802 is accessed from the external client 124 by the HTTP transfer protocol or the like, and returns a menu screen described in a format such as HTML for GUI (Graphical User Interface) to the external client 124.
This menu screen includes a form (input item) for specifying a search condition for the user of the external client 124 to search for a server (private network printer 52) in the local network system 6.
[0121]
The user of the external client 124 enters a desired search condition on the form and issues a search request to the service search unit 802.
The service search unit 802 receives and analyzes the search request, and transmits each item included in the search condition to the directory server 50 as a search request conforming to the communication protocol with the directory server 50.
Upon receiving the search result from the directory server 50, the service search unit 802 analyzes the search result, creates HTML content that displays the search result, and returns it to the external client 124.
[0122]
[Private Information Detection Unit 412]
As in the access control program 4, the private information detection unit 412 detects the network location of the private network printer 52 as private information.
Further, in the access control program 8, the private information detection unit 412 additionally has attribute information (for example, the host of the private network printer 52) that informs a third party of the security hole of the private network printer 52. An address (domain name or IP address), a port number, a virtual path of a command, a URL composed thereof, and an attribute value such as the model name / OS name of the private network printer 52 are detected as private information.
[0123]
In standardized protocols such as the SLP protocol, the LDAP protocol, and the SNMP protocol, semantics are also defined along with the syntax of the protocol message.
An XML tag is also defined in a Web service that implements a remote procedure call by exchanging messages described in the XML format on the HTTP transfer protocol.
Accordingly, the private information detection unit 412 can detect the private information by analyzing the messages in these protocols and languages.
[0124]
FIG. 11 is a diagram illustrating processing of the private information detection unit 412 illustrated in FIG. 10.
As shown in FIG. 11, unlike the first access control program 4, the private information detection unit 412 executes processing that does not include S154 (FIG. 5).
[0125]
[Confidential Code DB 404]
FIG. 12 is a diagram illustrating a second concealment code table held in the concealment code DB 404 shown in FIG. 8 and used for providing functions of the private network printer 52 and concealing the network location.
As shown in FIG. 12, in the second access control program 8, unlike the first access control program 4 (FIG. 3), the concealment code DB 404 includes the first concealment code table (FIG. 4). The network location of the private web server 24 is changed to the network location of the private network printer 52, and the second secret code table in which the network location of the private web server 24 is deleted is held.
[0126]
[Proxy access unit 800]
The proxy access unit 800 receives a request for the private network printer 52 from the external client 124 and relays the request to the private network printer 52 on behalf of the external client 124.
As in the first access control program 4, the proxy access unit 800 stores the concealment code in the concealment code DB 404 when the destination of the request is the access control device 7 and the virtual path is the concealment code. Check that the code is registered.
When the concealment code is registered in the concealment code DB 404, the proxy access unit 800 checks whether the network location of the request source (external client 124) included in the request is the same as the registered client address. Inspect.
[0127]
The proxy access unit 800 rejects this request when the secret code is not registered and when the secret code is registered but the network location of the external client 124 is different from the client address.
When the concealment code is registered in the concealment code DB 404 and the network location of the external client 124 is the same, the proxy access unit 800 sets the destination (including the concealment code) included in the request to the same entry. To the network location of the private network printer 52 registered in
Further, the proxy access unit 800 relays the request thus replaced to the private network printer 52.
[0128]
FIG. 13 is a flowchart showing the process (S26) of the proxy access unit 800 shown in FIG.
As illustrated in FIG. 13, the proxy access unit 800 performs a process excluding S190 from the process (S18) of the proxy request unit 402 illustrated in FIG. 6.
[0129]
[Overall operation of network system 5]
Hereinafter, the overall operation of the second network system 5 will be described with reference to FIG.
FIG. 14 is a sequence diagram showing an overall operation of the second network system 5 shown in FIG.
The data format in each process shown in FIG. 14 is as illustrated in Tables 6 and 7 below.
However, Tables 6 and 7 exemplify cases in which communication is performed with the directory server by SLP, and the data formats shown in Tables 6 and 7 are defined by HTTP and SLP.
[0130]
[Table 6]
Figure 2005043938
[0131]
[Table 7]
Figure 2005043938
[0132]
As shown in FIG. 14, in step 280 (S280), the URL of the service search unit 802 of the access control device 7 (access control program 8) is obtained when the user of the external client 124 is a Web browser operating on the external client 124. Is specified, and a service search is requested to the access control device 7.
The external client 124 transmits a service search request (GET method) using the HTTP protocol with the access control device 7 as a destination address.
In step 282 (S282), the access control device 7 (access control program 8) receives this service search request and activates a search service by the service search unit 802 specified by the URL included in the service search request.
The access control device 7 transmits HTML content including a form for providing a search service GUI to the external client 124.
[0133]
In step 284 (S284), the Web browser of the external client 124 receives the HTML content from the access control device 7, displays the form included in the HTML on the display / input device 106, and shows it to the user.
When the user designates a search condition necessary for searching the private network printer 52 for this form and instructs transmission, the Web browser sends a service request including the search condition to the access control device 7. To send.
[0134]
In step 286 (S286), the access control device 7 (access control program 8) receives the search condition included in the service request and requests the directory server 50 to search for the private network printer 52.
In step 288 (S288), the directory server 50 returns the information of the private network printer 52 that meets the search condition to the access control device 7 as a search result.
In step 290 (S290), the access control device 7 (access control program 8) includes the HTML content including the concealment code for concealing the secret information included in the search result by the directory server 50 from the external client 124. return it.
[0135]
In step 292 (S292), the Web server of the external client 124 displays the HTML content from the access control device 7 (access control program 8) on the display / input device 106 and shows it to the user.
The user further activates a print client program (not shown) of the external client 124, selects one of the private network printers 52 with reference to the search result screen, and displays, for example, the displayed private network printer. The concealment code corresponding to 52 is designated as a destination to the print driver by a method called copy and paste, and printing is instructed.
[0136]
In step 294 (S294), the external client 124 transmits a print request including the secret code of the designated private network printer 52.
In step 296 (S296), the access control device 7 (access control program 8) receives this print request, converts the concealment code in the print request into the URL of the designated private network printer 52, and is designated. To the private network printer 52.
Upon receiving this print request, the private network printer 52 forms an image from the data in the page description language (PDL) format included in the print request and prints it.
[0137]
[Modification]
In another embodiment, the service search unit 802 may be configured to use a service discovery protocol that uses broadcast communication such as UPnP (Universal Plug & Play) without accessing the directory server. The service information may be collected from various servers on the network.
The proxy access unit 800 may perform user authentication and charge for access to the private network printer 52 in the local network system 6.
Further, the access control program 8 communicates with the external client 124 using the IPP protocol, and communicates with the private network printer 52 using the Lpd (Line Printer Daemon Protocol; IETF RFC 1179) protocol. When the request is relayed, protocol conversion may be performed.
[0138]
【The invention's effect】
As described above, the access control apparatus and method according to the present invention can provide a service without disclosing information such as the URL of the server to the outside.
Further, according to the access control apparatus and method according to the present invention, it is not necessary to disclose information such as the URL of the server to the outside, and the security of the server can be improved.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration of a first network system to which an access control method according to a first embodiment of the present invention is applied.
2 is a diagram illustrating a hardware configuration of an access control device, a client, a router, and a Web server illustrated in FIG. 1;
3 is a diagram showing a configuration of a first access control program executed in the access control apparatus shown in FIGS. 1 and 2. FIG.
4 is a diagram exemplifying a first concealment code table that is held in the concealment code DB shown in FIG. 3 and is used for providing functions of a private Web server and concealing a network location. FIG.
FIG. 5 is a flowchart showing a process (S14) of a proxy request unit shown in FIG.
6 is a flowchart showing a process (S18) of the private information detecting unit shown in FIG.
7 is a flowchart showing a process (S20) of the information protection unit shown in FIG. 3;
8 is a sequence diagram illustrating an overall operation (S10) of the network system shown in FIG.
FIG. 9 is a diagram illustrating a configuration of a second network system to which an access control method according to a second embodiment of the present invention is applied;
FIG. 10 is a diagram showing a configuration of a second access control program executed in the second access control apparatus shown in FIG. 9;
11 is a diagram showing processing of a private information detection unit shown in FIG. 10;
12 is a diagram illustrating a second concealment code table held in the concealment code DB shown in FIG. 8 and used for providing functions of a private network printer and concealing a network location.
13 is a flowchart showing a process (S26) of the proxy access unit shown in FIG.
14 is a sequence diagram showing an overall operation of the second network system shown in FIG. 9. FIG.
[Explanation of symbols]
1,5 ... Network system,
120 ... Internet,
12 ... Network system,
124, 132 ... client,
100: computer body,
102 ... CPU,
104: Memory,
106 ... Display / input device,
108: Communication device,
110 ... Recording device,
112 ... Recording medium,
126 ... IP network,
128: router,
130: External Web server,
2,6 ... Local network system,
20 ... Firewall
3, 7 ... access control device,
4, 8 ... access control program,
400, 410 ... communication control unit,
402: Proxy request unit,
404 ... Concealment code DB,
406... DB management unit,
408 ... Concealment code creation unit,
412 ... non-public information detection unit,
414 ... Information protection unit,
416 ... proxy response unit,
800 ... proxy access part,
802 ... Service search unit,

Claims (21)

第1のノードに対して所定の関係にある第1の情報の通信を制御するアクセス制御装置であって、前記第1の情報は、第1のノードに対して送信される送信情報に含まれ、第2の情報により代替されることができ、
第1のノードに対して送信されようとする第1の送信情報に含まれる前記第1の情報を検出する情報検出手段と、
前記第1の送信情報に含まれる第1の情報を、この第1の情報を代替しうる第2の情報により置換し、第2の送信情報として、前記第1のノードに対して送信する情報置換手段と、
前記第1のノードから、前記第2の情報を用いたアクセスがあったときに、前記アクセスされた第1の情報を代替する第2の情報を作成する第2の情報作成手段と
を有するアクセス制御装置。
An access control apparatus for controlling communication of first information having a predetermined relationship with a first node, wherein the first information is included in transmission information transmitted to the first node. , Can be replaced by the second information,
Information detecting means for detecting the first information included in the first transmission information to be transmitted to the first node;
Information to be transmitted to the first node as second transmission information by replacing the first information included in the first transmission information with second information that can replace the first information. A replacement means;
Access having second information creating means for creating second information that substitutes for the accessed first information when there is an access using the second information from the first node Control device.
前記第1の情報は、前記第1のノードに対して非公開とされる関係にある非公開情報であり、前記第2の情報は、前記非公開情報を、前記第1のノードに対して秘匿するための秘匿用情報であり、
前記情報検出手段は、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開情報を検出する非公開情報検出手段であり、
前記情報置換手段は、前記第1の送信情報に含まれる非公開情報を、この非公開情報を代替しうる秘匿用情報により置換し、第2の送信情報として、前記第1のノードに対して送信し、
前記秘匿用情報生成手段は、前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する秘匿用情報を作成する
請求項1に記載のアクセス制御装置。
The first information is private information that is in a private relationship with the first node, and the second information is the private information with respect to the first node. It is confidential information for concealment,
The information detection means is private information detection means for detecting the private information included in the first transmission information to be transmitted to the first node,
The information replacement means replaces the non-public information included in the first transmission information with confidential information that can replace the non-public information, and provides the second transmission information to the first node. Send
The concealment information generation means creates concealment information for creating concealment information that substitutes for the accessed private information when there is an access using the concealment information from the first node. The access control apparatus according to claim 1.
前記秘匿用情報作成手段は、乱数を用いて前記秘匿用情報を作成する
請求項2に記載のアクセス制御装置。
The access control apparatus according to claim 2, wherein the concealment information creating unit creates the concealment information using a random number.
前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、この秘匿用情報により代替された前記非公開情報を用いたアクセスを行う代替アクセス手段
をさらに有する請求項2または3に記載のアクセス制御装置。
4. The access device according to claim 2, further comprising an alternative access unit that performs an access using the non-public information replaced by the confidential information when an access using the confidential information is made from the first node. The access control device described in 1.
前記代替アクセス手段は、前記秘匿用情報の正当性を判定し、前記秘匿用情報が正当であると判断されたときに、前記秘匿用情報により代替された前記非公開情報を用いたアクセスを行う
請求項4に記載のアクセス制御装置。
The alternative access means determines the legitimacy of the confidential information, and performs access using the secret information replaced by the confidential information when the confidential information is determined to be valid. The access control apparatus according to claim 4.
前記非公開情報は、前記非公開ノードの属性を含む
請求項2〜5のいずれかに記載のアクセス制御装置。
The access control apparatus according to claim 2, wherein the secret information includes an attribute of the secret node.
前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、
前記代替アクセス手段は、前記第1のノードから、前記秘匿用アドレスを用いたアクセスがあったときに、この秘匿用アドレスにより代替された前記非公開アドレスを用いて、前記非公開ノードに対するアクセスを代替する
請求項4または5に記載のアクセス制御装置。
The private information is a private address of a private node that is private to the first node, and the public node that is publicly disclosed to the first node is the first node. Included in the first transmission information to be transmitted, the confidential information is a confidential address that is disclosed instead of the private address, and the first node transmits the second transmission information Using the confidential address included in the information to access the private node;
The alternative access means, when there is an access from the first node using the secret address, uses the secret address substituted by the secret address to access the secret node. The access control apparatus according to claim 4 or 5, which is substituted.
前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、
前記非公開情報検出手段は、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開アドレスを検出し、
前記情報置換手段は、前記第1の送信情報に含まれる非公開アドレスを、この非公開アドレスを代替しうる秘匿用アドレスにより置換し、第2の送信情報として、前記第1のノードに対して送信し、
前記秘匿用情報作成手段は、前記第1のノードから、前記非公開アドレスを用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する
請求項2〜7のいずれかに記載のアクセス制御装置。
The private information is a private address of a private node that is private to the first node, and the public node that is publicly disclosed to the first node is the first node. Included in the first transmission information to be transmitted, the confidential information is a confidential address that is disclosed instead of the private address, and the first node transmits the second transmission information Using the confidential address included in the information to access the private node;
The private information detecting means detects the private address included in the first transmission information to be transmitted to the first node,
The information replacement means replaces a secret address included in the first transmission information with a secret address that can replace the secret address, and provides second transmission information to the first node. Send
The secret information creating means creates secret information that replaces the accessed secret information when there is an access from the first node using the secret address. The access control device according to any one of the above.
前記アクセス制御装置と、前記非公開ノードと、前記公開ノードとは、1つのネットワークシステムに含まれ、
前記第1のノードは、前記ネットワークシステムに対してアクセスする外部ノードである
請求項8に記載のアクセス制御装置。
The access control device, the private node, and the public node are included in one network system,
The access control apparatus according to claim 8, wherein the first node is an external node that accesses the network system.
前記アクセス制御装置には、アクセス制御用アドレスが設定され、
前記情報置換手段は、前記第1の送信情報に含まれる非公開アドレスを、この非公開アドレスを代替しうる秘匿用アドレスにより置換し、前記アクセス制御用アドレスを付加して第2の送信情報として、前記第1のノードに対して送信し、
前記第1のノードは、前記第2の送信情報に付加されたアクセス制御用アドレスを用いて前記アクセス制御装置に対してアクセスし、前記第2の送信情報に付加された秘匿用アドレスを用いて、前記アクセス制御装置を介して、前記非公開ノードに対してアクセスする
請求項8に記載のアクセス制御装置。
In the access control device, an access control address is set,
The information replacement means replaces a secret address included in the first transmission information with a secret address that can replace the secret address, and adds the access control address as second transmission information. , To the first node,
The first node accesses the access control apparatus using the access control address added to the second transmission information, and uses the concealment address added to the second transmission information. The access control apparatus according to claim 8, wherein the private node is accessed via the access control apparatus.
前記非公開アドレスは、前記非公開ノードに対して固有に設定されるURL(Uniform Resource Locator)、IP(Internet Protocol)アドレスまたはドメイン名であり、前記アクセス制御用アドレスは、前記アクセス制御装置に対して固有に設定されるURL、IPアドレスまたはドメイン名である
請求項10に記載のアクセス制御装置。
The private address is a URL (Uniform Resource Locator), an IP (Internet Protocol) address or a domain name that is uniquely set for the private node, and the access control address is sent to the access control device. The access control apparatus according to claim 10, which is a URL, an IP address, or a domain name set uniquely.
前記第1のノードからの要求に応じて、前記非公開ノードの検索を行う検索手段
をさらに有し、
前記秘匿用情報作成手段は、前記検索の結果として得られた前記非公開ノードの非公開アドレスを代替しうる秘匿用アドレスをさらに作成する
請求項7〜10のいずれかに記載のアクセス制御装置。
In response to a request from the first node, it further comprises search means for searching for the private node,
The access control apparatus according to any one of claims 7 to 10, wherein the concealment information creation unit further creates a concealment address that can substitute for the secret address of the secret node obtained as a result of the search.
前記検索手段は、前記非公開ノードに対するアクセスに対する課金をさらに行う
請求項12に記載のアクセス制御装置。
The access control apparatus according to claim 12, wherein the search unit further charges for access to the private node.
第1のノードに対して非公開とされる非公開情報の通信を制御するアクセス制御方法であって、前記非公開情報は、第1のノードに対して送信される送信情報に含まれ、前記非公開情報を、前記第1のノードに対して秘匿するための秘匿用情報により代替されることができ、
第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開情報を検出し、
前記第1の送信情報に含まれる非公開情報を、この非公開情報を代替しうる秘匿用情報により置換し、第2の送信情報として前記第1のノードに対して送信し、
前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する
を有するアクセス制御方法。
An access control method for controlling communication of private information that is private to a first node, wherein the private information is included in transmission information transmitted to the first node, and Non-public information can be replaced with concealment information for concealing the first node,
Detecting the private information included in the first transmission information to be transmitted to the first node;
Replacing the non-public information included in the first transmission information with confidential information that can replace the non-public information, and transmitting the second transmission information to the first node,
An access control method comprising: generating confidential information that substitutes for the accessed private information when there is an access from the first node using the confidential information.
前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、この秘匿用情報により代替された前記非公開情報を用いたアクセスをさらに行う
請求項14に記載のアクセス制御方法。
The access control method according to claim 14, wherein when there is an access using the confidential information from the first node, an access using the secret information replaced by the confidential information is further performed.
前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、
前記第1のノードから、前記秘匿用アドレスを用いたアクセスがあったときに、この秘匿用アドレスにより代替された前記非公開アドレスを用いて、前記非公開ノードに対するアクセスを代替する
請求項14または15に記載のアクセス制御方法。
The private information is a private address of a private node that is private to the first node, and the public node that is publicly disclosed to the first node is the first node. Included in the first transmission information to be transmitted, the confidential information is a confidential address that is disclosed instead of the private address, and the first node transmits the second transmission information Using the confidential address included in the information to access the private node;
The access to the private node is substituted using the private address replaced by the secret address when there is an access from the first node using the secret address. 15. The access control method according to 15.
前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、
第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開アドレスを検出し、
前記第1の送信情報に含まれる非公開アドレスを、この非公開アドレスを代替しうる秘匿用アドレスにより置換し、第2の送信情報として、前記第1のノードに対して送信し、
前記第1のノードから、前記非公開アドレスを用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する
請求項14〜16のいずれかに記載のアクセス制御方法。
The private information is a private address of a private node that is private to the first node, and the public node that is publicly disclosed to the first node is the first node. Included in the first transmission information to be transmitted, the confidential information is a confidential address that is disclosed instead of the private address, and the first node transmits the second transmission information Using the confidential address included in the information to access the private node;
Detecting the private address included in the first transmission information to be transmitted to the first node;
Replacing the private address included in the first transmission information with a secret address that can replace the private address, and transmitting the second transmission information to the first node,
The access control according to any one of claims 14 to 16, wherein when there is an access using the private address from the first node, secret information that substitutes the accessed private information is created. Method.
第1のノードに対して非公開とされる非公開情報の通信を制御するプログラムであって、前記非公開情報は、第1のノードに対して送信される送信情報に含まれ、前記非公開情報を、前記第1のノードに対して秘匿するための秘匿用情報により代替されることができ、
第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開情報を検出するステップと、
前記第1の送信情報に含まれる非公開情報を、この非公開情報を代替しうる秘匿用情報により置換し、第2の送信情報として前記第1のノードに対して送信するステップと、
前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成するステップと
をコンピュータに実行させるプログラム。
A program for controlling communication of private information that is private to the first node, wherein the private information is included in transmission information transmitted to the first node, and the private information The information can be replaced by concealment information for concealing the first node;
Detecting the secret information included in the first transmission information to be transmitted to the first node;
Replacing the secret information included in the first transmission information with confidential information that can replace the secret information, and transmitting the secret information to the first node as second transmission information;
A program for causing a computer to execute a step of creating confidential information that replaces the accessed non-public information when there is an access from the first node using the confidential information.
前記第1のノードから、前記秘匿用情報を用いたアクセスがあったときに、この秘匿用情報により代替された前記非公開情報を用いたアクセスを
さらにコンピュータに実行させる請求項18に記載のプログラム。
19. The program according to claim 18, wherein when there is an access using the confidential information from the first node, the program further causes the computer to execute an access using the private information replaced by the confidential information. .
前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、
前記秘匿用情報により代替された非公開情報を用いたアクセスを行うステップにおいて、前記前記第1のノードから、前記秘匿用アドレスを用いたアクセスがあったときに、この秘匿用アドレスにより代替された前記非公開アドレスを用いて、前記非公開ノードに対するアクセスを代替する
請求項19に記載のプログラム。
The private information is a private address of a private node that is private to the first node, and the public node that is publicly disclosed to the first node is the first node. Included in the first transmission information to be transmitted, the confidential information is a confidential address that is disclosed instead of the private address, and the first node transmits the second transmission information Using the confidential address included in the information to access the private node;
In the step of performing access using the secret information replaced by the secret information, when there is an access using the secret address from the first node, the secret information is replaced by the secret address. The program according to claim 19, wherein access to the private node is substituted using the private address.
前記非公開情報は、前記第1のノードに対して非公開とされる非公開ノードの非公開アドレスであり、前記第1のノードに対して公開される公開ノードが、前記第1のノードに対して送信しようとする前記第1の送信情報に含まれ、前記秘匿用情報は、前記非公開アドレスの代わりに公開される秘匿用アドレスであり、前記第1のノードは、前記第2の送信情報に含まれる前記秘匿用アドレスを用いて、前記非公開ノードに対するアクセスを行い、
前記検出するステップにおいて、第1のノードに対して送信されようとする第1の送信情報に含まれる前記非公開アドレスを検出し、
前記置換するステップにおいて、前記第1の送信情報に含まれる非公開アドレスを、この非公開アドレスを代替しうる秘匿用アドレスにより置換し、第2の送信情報として、前記第1のノードに対して送信し、
前記秘匿用情報を作成するステップにおいて、前記第1のノードから、前記非公開アドレスを用いたアクセスがあったときに、前記アクセスされた非公開情報を代替する秘匿用情報を作成する
請求項18〜20のいずれかに記載のプログラム。
The private information is a private address of a private node that is private to the first node, and the public node that is publicly disclosed to the first node is the first node. Included in the first transmission information to be transmitted, the confidential information is a confidential address that is disclosed instead of the private address, and the first node transmits the second transmission information Using the confidential address included in the information to access the private node;
In the detecting step, detecting the secret address included in the first transmission information to be transmitted to the first node;
In the replacing step, the secret address included in the first transmission information is replaced with a secret address that can replace the secret address, and the second transmission information is transmitted to the first node. Send
19. In the step of creating the confidential information, when there is an access from the first node using the private address, the confidential information that replaces the accessed private information is created. The program in any one of -20.
JP2003199635A 2003-07-22 2003-07-22 Access controller and its method Withdrawn JP2005043938A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003199635A JP2005043938A (en) 2003-07-22 2003-07-22 Access controller and its method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003199635A JP2005043938A (en) 2003-07-22 2003-07-22 Access controller and its method

Publications (1)

Publication Number Publication Date
JP2005043938A true JP2005043938A (en) 2005-02-17

Family

ID=34260338

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003199635A Withdrawn JP2005043938A (en) 2003-07-22 2003-07-22 Access controller and its method

Country Status (1)

Country Link
JP (1) JP2005043938A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012079154A (en) * 2010-10-04 2012-04-19 Nippon Telegr & Teleph Corp <Ntt> Content providing method, content acquiring method, content providing system and terminal device
JP4929285B2 (en) * 2005-09-12 2012-05-09 マイクロソフト コーポレーション Server-side service framework
JP2013223167A (en) * 2012-04-18 2013-10-28 Nec System Technologies Ltd Information providing apparatus, information providing system, and information providing method
CN115242674A (en) * 2022-07-25 2022-10-25 上海交通大学 Hidden service tracking system based on Tor protocol time sequence characteristics

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4929285B2 (en) * 2005-09-12 2012-05-09 マイクロソフト コーポレーション Server-side service framework
JP2012079154A (en) * 2010-10-04 2012-04-19 Nippon Telegr & Teleph Corp <Ntt> Content providing method, content acquiring method, content providing system and terminal device
JP2013223167A (en) * 2012-04-18 2013-10-28 Nec System Technologies Ltd Information providing apparatus, information providing system, and information providing method
CN115242674A (en) * 2022-07-25 2022-10-25 上海交通大学 Hidden service tracking system based on Tor protocol time sequence characteristics
CN115242674B (en) * 2022-07-25 2023-08-04 上海交通大学 Hidden service tracking system based on Torr protocol time sequence characteristic

Similar Documents

Publication Publication Date Title
Sun et al. Handle system overview
US9860251B2 (en) Dynamic encryption of a universal resource locator
Cooper et al. Internet web replication and caching taxonomy
AU2005263962B2 (en) Improved user interface
KR100781725B1 (en) Method and system for peer-to-peer authorization
US8464311B2 (en) Method and system for implementing privacy notice, consent, and preference with a privacy proxy
US7805513B2 (en) Access control list checking
US7903656B2 (en) Method and system for message routing based on privacy policies
JPH11167536A (en) Method and device for client/host communication using computer network
JP2001203762A (en) Dns server filter
JP2003163678A (en) Method of resolving virtual network name
Petersson et al. Forwarded HTTP Extension
JP4524906B2 (en) Communication relay device, communication relay method, communication terminal device, and program storage medium
JP2002189646A (en) Repeating installation
JP2006203731A (en) Network repeating device, network connection information browsing system and network connection information notification method
JP2005043938A (en) Access controller and its method
US20050234923A1 (en) Method and apparatus for translating a web services address
JP2006252404A (en) Device searching apparatus and method, program and storage medium
JP2007226343A (en) Presence system, presence presentation method, and program
Camargo Jingle Relay Nodes
CA2510633C (en) Access control list checking
Niven-Jenkins et al. Content delivery network interconnection (cdni) metadata
Hunt Internet—services, facilities, protocols and architecture
JP2005260571A (en) Communication relay device, communication relay method, and communication relay program
JP2003196315A (en) Information system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060622

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20080918