(57)【要約】【課題】  インターネットからの侵入、攻撃を防止するため、インターネットに接続することなくインターネットからのデータを取得する。【解決手段】  インターネットに接続されているコンピュータＡ１１０は、共有ストレージ装置１００にデータを格納することにより、そのデータ１１４はコンピュータＢ１１１で即座に取り出すことができ、かつコンピュータＡ１１０が動作不能になったとしても、ハードディスク１０２に格納されているデータ１１４は、コンピュータＢ１１１により、即座に取り出して処理できる。また、共有ストレージ装置１００は、ＬＡＮとはインターフェースプロトコルが異なる接続手段１１２により、前記２つのコンピュータに接続されるため、コンピュータＢ１１１およびイントラネット用ＬＡＮ１１３に接続されている全てのコンピュータも安全である。【選択図】    図１
2005157682.tif 000002
【特許請求の範囲】
【請求項１】
少なくともインターネット網を含む第１の通信回線に通信可能に接続された１つ以上のコンピュータと、インターネット網を含まない第２の通信回線に通信可能に接続された１つ以上のコンピュータとから、共通にアクセスされ得る共有ストレージ装置を備えたネットワーク防御システムにおいて、
前記共有ストレージ装置を、前記第１と第２の通信回線とは通信インターフェースプロトコルが異なる接続手段によって、前記複数のコンピュータからアクセス可能とする手段と、
読み書きデータをバッファリングするための前段バッファを介さない記憶装置および前記記憶装置に設置される記憶媒体と、
前記複数のコンピュータの各々からの書き込みデータを前記記憶装置内の記憶媒体に論理的に直接書き込む手段と、
前記複数のコンピュータの各々への読み取りデータを前記記憶装置内の記憶媒体から論理的に直接読み出す手段と、
を備えたことを特徴とするネットワーク防御システム。
【請求項２】
前記共有ストレージ装置は、前記複数のコンピュータの各々に対して、前記記憶装置内の前記記憶媒体にアクセスするための権利を排他的に制御する排他的制御手段を備えていることを特徴とする。
【請求項３】
前記排他的制御手段は、前記共有ストレージ装置へのアクセスを要求するユーザに関する情報、要求されるアクセス権の種類および前記記憶装置内の前記記憶媒体上の記憶領域を指定するための情報のうちの、少なくともいずれか１つを記憶するための内部的な制御情報領域を備えていることを特徴とする請求項２記載のネットワーク防御システム。
【請求項４】
前記複数のコンピュータの各々に、前記制御情報領域に書き込むべき制御情報を入力するための制御情報入力手段を備えていることを特徴とする請求項３記載のネットワーク防御システム。
【請求項５】
前記共有ストレージ装置へのアクセスを要求するユーザに関する情報には、少なくとも、前記ユーザの識別子および／または前記ユーザが所有するコンピュータの識別子が含まれていることを特徴とする請求項３記載のネットワーク防御システム。
【請求項６】
少なくともインターネット網を含む第１の通信回線に通信可能に接続された１つ以上のコンピュータと、インターネット網を含まない第２の通信回線に通信可能に接続された１つ以上のコンピュータとから、共通にアクセスされ得る共有ストレージ装置を備えた共有ストレージ装置において、
前記第１と第２の通信回線とは通信インターフェースプロトコルが異なる接続手段によって、前記複数のコンピュータからアクセス可能とする手段と、
読み書きデータをバッファリングするための前段バッファを介さない記憶装置および前記記憶装置に設置される記憶媒体と、
前記複数のコンピュータの各々からの書き込みデータを前記記憶装置内の記憶媒体に論理的に直接書き込む手段と、
前記複数のコンピュータの各々への読み取りデータを前記記憶装置内の記憶媒体から論理的に直接読み出す手段と、
を備えたことを特徴とする共有ストレージ装置。
【請求項７】
前記複数のコンピュータの各々に対して、前記記憶装置内の前記記憶媒体にアクセスするための権利を排他的に制御する排他的制御手段を備えることを特徴とする請求項６記載の共有ストレージ装置。
【請求項８】
前記排他的制御手段は、アクセスを要求するユーザに関する情報、要求されるアクセス権の種類および前記記憶装置内の前記記憶媒体上の記憶領域を指定するための情報のうちの、少なくともいずれか１つを記憶するための内部的な制御情報領域を備えていることを特徴とする請求項７記載の共有ストレージ装置。
【請求項９】
前記アクセスを要求するユーザに関する情報には、少なくとも、前記ユーザの識別子および／または前記ユーザが所有するコンピュータの識別子が含まれていることを特徴とする請求項８記載の共有ストレージ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワーク防御システムおよび共有ストレージ装置に係り、特に、自らはインターネットに接続することなく、インターネットからのデータを、インターネットに接続されたコンピュータから容易に取得できる共有ストレージを備えて、また、インターネット網に接続されているコンピュータが、ハッキング攻撃による侵入を受け、攻撃されて動作不能になった場合に、このコンピュータデータを容易に取り出すことができ、また、他のコンピュータへとハッキングが伝播することを防止するネットワーク防御システムおよび共有ストレージ装置に関する。
【背景技術】
【０００２】
従来、ハッキングと呼ばれる不法行為を防止する手段には、インターネット網を介した侵入や攻撃を防ぐための一般的な手段として、いわゆるファイアウォールを設ける手段が知られている。このファイアウォールは、インターネット網と社内用ＬＡＮとの間で伝送されるパケットと呼ばれる通信上のデータ分割単位を監視し、ユーザーが定めたルールに沿わないパケットについては、その場で破棄する機能を有する装置またはシステムである。これにより、ハッカー（ハッキングを行う不法行為者）が送り込んできた攻撃パケットから、コンピュータ上のソフトウェア資源を保護し、またデータの破壊や盗難、漏洩を防ぐことができる（例えば、非特許文献１参照。）。
【０００３】
このファイアウォールは、インターネット網からのハッキングを防ぐ事実上唯一の手段として、様々な製品が一般に普及しているが、いずれもユーザーが定めたルールに則ってパケットを通すか通さないかを決めているため、様々な偽装手段を使い、正規のパケットを装って侵入を図る攻撃パケットについては、これを完全に食い止めることは困難である。因に、社内ＬＡＮがインターネット網に接続されている場合、最悪のケースでは、社内ＬＡＮに接続されている全てのコンピュータが攻撃される危険性がある。その理由は、インターネット網とＬＡＮとが、両者共、ＴＣＰ／ＩＰという同じプロトコル（通信規約）を使用しているためである。即ち、このＴＣＰ／ＩＰを使用した攻撃が行われる限り、どんなに前記ルールを厳しくしても、セキュリティホール（抜け道）が見つかり易いことと、また、ルールを厳しくするほど通信の速度は低下し、また、使いづらくなるので、実際の運用に際しては、このルールをむやみに厳しくすることはできず、よって攻撃を完全に食い止めることは困難だからである。
【０００４】
例えば、実際の攻撃パターンの１つとして、パスワードハッキングという手口がある。これは、攻撃目標とするコンピュータの正規ユーザーの識別情報であるＩＤとパスワードを入手して侵入する手口であり、このＩＤとパスワードの入手方法としては、識別情報の解析ツールを使ったり、管理者から聞き出したり、暗号化されたパスワードファイルを入手して解析する、などの方法がある（非特許文献２参照。）。これらのいずれの方法によってでも、一旦侵入を許してしまえば、本来の正規ユーザーが可能な全ての操作が、正規ユーザーになりすましたハッカーに対しても可能な操作となってしまう。なお、前述の非特許文献２では「ハッキング」と同義語として「クラッキング」という言葉が使用されている。
また、前述のパスワードハッキングという手口とは別の手口（攻撃パターン）として、バッファ・オーバーフローという手口がある。この手口も、前述の非特許文献２に示されている手口であり、プログラムのバグを利用して侵入する。
【０００５】
この方法では、まず、ハッカーは、前述のパスワードハッキングの実行（前調査）により、攻撃対象としたコンピュータ上で、どのようなプログラム（ソフトウェア製品）の、どのバージョンが動作しているのかを知る。すると、次に、そのソフトウェア製品には、どのようなバグ（欠陥、弱点、虫）が含まれているかという情報も、このソフトウェア製品のメーカがインターネット網上に公開しているバグ情報から知ることができる。よって、ハッカーは、この公開情報を悪用して、バグを突いた攻撃を仕掛け、前記プログラムに、バッファ・オーバーフローという現象を生じさせ、その後、不正な命令を実行させるのである。
以下、このバッファ・オーバーフローが、どのようにして生じ、また、それが、どのように悪用されるのかを、前述の非特許文献２からの引用を交えて説明する。
【０００６】
（１）  プログラムは、コンピュータのＲＡＭに展開され、ＣＰＵによって実行される。
（２）  プログラムは、多数の命令コードの組み合わせで成り立っており、これらがＲＡＭに書き込まれている。
（３）  また、通信などに使うデータを格納するバッファ領域もＲＡＭに確保されるようになっている。
（４）  通常、このバッファ領域は、そのプログラムを作成するプログラマが、送受信データの大きさを考慮して充分な大きさを確保するようにプログラミングされている。
（５）  しかし、このプログラミングは、人間が行うことであり、誤りなく完全に正しく行われるとは限らない。中には、例えば、想定外の大きなデータを受信した時に、エラー処理（例えば、バッファ・オーバーフローのチェック）を設けずに、そのままバッファ領域に書き込んでしまうプログラムもある。
【０００７】
（６）このようなプログラムによって想定外の大きなデータを受信した時に生じる現象が、即ち、バッファ・オーバーフローである。
因に、前記バッファ領域からデータが溢れ出すと、バッファ領域外のＲＡＭまで書き換えられてしまうので、当該プログラムがハングアップしたり、誤動作したりする。何故なら、バッファ領域外のＲＡＭには、一般に、プログラムの命令コード（正規の命令コード）が書き込まれており、前述のバッファ・オーバーフローが生じた後、ＣＰＵは、このバッファ領域外のＲＡＭ領域に書き込まれてしまったデータを、前記正規の命令コードであるものとして実行するからである。
（７）  しかも、ハッカーは、このＣＰＵの誤動作を巧みに利用するために、前述のバッファ領域外のＲＡＭに、不正なプログラムの命令コードが書き込まれるようにし、さらに、データ受信後に、制御の流れが、この不正な命令コードが書き込まれている領域の先頭番地に移るように、戻り番地を書き変えてしまう。
【０００８】
このようにして、ハッカーが送り込んだデータが、単なる受信データではなく、不正なプログラムとして実行されてしまうのである。これがバッファ・オーバーフローという攻撃の手口である。
このように、インターネット網に接続されたコンピュータでは、よしんばファイアウォールを設置したとしても、インターネット網を介したハッキングを完全に防ぐことは困難である。またＬＡＮがインターネット網と同じプロトコルで通信が行われる以上、最初に攻撃されたコンピュータを踏み台として、同じＬＡＮに接続さている他のコンピュータ（クライアント）が、さらに攻撃される可能性もあり、最終的には、同じＬＡＮに接続された全てのコンピュータにハッキングが伝播する危険性すらある。
【０００９】
図１２は、従来の一般的な共有ストレージ装置におけるデータ転送時のデータの流れを説明する説明図である。
同図に示す従来の一般的な共有ストレージ装置は、コントローラ９ａと、バッファ用のＲＡＭであるＲＡＭ９ｃとを備えている（なお、コントローラ９ａの具体的な一構成例は、後述の図３で示す）。
この従来の一般的な共有ストレージ装置の場合は、データ転送に際して、ハードディスク装置の前段バッファとして設置されているバッファ用のＲＡＭ（ＲＡＭ９ｃ）に、一旦データがバッファされるため、前述のバッファ・オーバーフローに相当する新たな攻撃手段により、不正なプログラムを、前記前段バッファ（ＲＡＭ９ｃ）に送りこまれた場合、バッファ・オーバーフローが生じる危険性がある。
【００１０】
また、この従来の一般的な共有ストレージ装置は、専用のコントローラ９ａを使用せずに、パソコンなど汎用性の高いコンピュータ９ｂを使用して構築することも可能であるが、この場合も、コントローラ９ａの場合と同様、コンピュータ９ｂ内のバッファ用のＲＡＭにデータが必ずバッファされる。これは、前述のバッファ・オーバーフローに相当する新たなハッキングの危険性を将来に残すことになる。
なお、特許文献から先行技術について遡及調査すると、まず、外部に対して非公開のネットワークから、安全にインターネット網上のサービスを受ける技術が開示されている（特許文献１参照。）。因に、この特許文献１が開示された時点以前では、社内ＬＡＮを、インターネット網に接続されている公開ネットワークと、インターネットに接続されていない非公開ネットワークとに２分割し、両者をルータで接続することにより、外部からの侵入に対する非公開ネットワーク側の安全性を高める技術が知られていたが、この技術では、その反面として、非公開ネットワーク側からインターネット網上の各種サービスを自由に受けることはできなかった。
【００１１】
これに対し、前述の特許文献１に開示された技術では、公開ネットワークと非公開ネットワークとを、ＴＣＰ／ＩＰとは異なるインターフェース手段を用いる特殊なルータで接続することにより、非公開ネットワークに対するＴＣＰ／ＩＰを使用したハッキング攻撃を防ぐことができる。しかも、この非公開ネットワーク上のコンピュータは、インターネット網に接続されている公開ネットワーク上のコンピュータを、ルータ経由で遠隔操作することにより、インターネットサービスを受けることができる。
さらに、他のシステムとして、複数のネットワーク間で、互いのセキュリティを確保しながら、ディスクアレイ装置を使用して情報を共有するシステムが開示されている（たとえば、特許文献２参照。）。
即ち、この特許文献２に示されたシステムは、ディスクアレイ装置を、各ネットワークに対して選択的に接続させ、複数のネットワークに同時に接続されることがないように制御することによって、個々のネットワーク固有の情報が他のネットワークに漏れることがないようにしている。
【００１２】
【特許文献１】「特開２０００−３５４０５６号公報」
【特許文献２】「特開２００１−１６２４５号公報」
【非特許文献１】「日経ＮＥＴＷＯＲＫ、日経ＢＰ社、２００１年２月号、「ファイアウォールの基本」、ｐ７５〜８５」
【非特許文献２】「日経ＮＥＴＷＯＲＫ、日経ＢＰ社、２００１年５月号、「クラッキング手口の研究」、ｐ４３〜５９」
【発明の開示】
【発明が解決しようとする課題】
【００１３】
ところで、上記背景技術で述べた従来のネットワーク防御システムおよびハッキング防御方法にあっては、前述のとおり、インターネット網に接続されたコンピュータ（サーバ）に、ファイアウォールが設置されていたとしても、ハッキングを完全に防ぐことは困難である、という問題点があった。
また、ハッキングを完全に防ぎ切ることができないとしたら、ハッキングを、そのコンピュータだけに限定し、他のコンピュータ（クライアントなど）や別のネットワークへの伝播を防いで被害を最小限に食い止めるような対策を考慮すべきであるにも関わらず、従来のネットワーク防御システムおよびハッキング防御方法にあっては、このような対策が考慮されていない、という問題点があった。
さらに、ハッキングされて動作不能になったコンピュータのデータを、別のコンピュータで即座に取り出して処理するような対策を実施すれば、実質的な被害を一層軽微なものとすることができるにも関わらず、従来のネットワーク防御システムおよびハッキング防御方法にあっては、このような対策が全く考慮されていない、という問題点があった。
【００１４】
本発明は、上記従来の問題点に鑑みてなされたものであって、その第１の目的は、インターネット網に接続されているコンピュータが、ハッキング攻撃による侵入を受け、攻撃されて動作不能になった場合に、他のコンピュータへとハッキングが伝播する事態を防止することができるネットワーク防御システムおよび共有ストレージ装置を提供することにある。
本発明の第２の目的は、自らはインターネットに接続することなく、インターネットからのデータを、インターネットに接続されたコンピュータから容易に取得し得る防御システムおよび共有ストレージ装置を提供することにある。
本発明の第３の目的は、インターネット網に接続されたコンピュータが、ハッキングやウィルスによる攻撃を受けて動作不能になった場合に、インターネット網に接続されていない他のコンピュータから、この動作不能になったコンピュータのデータを即座に取り出して処理することが可能な防御システムおよび共有ストレージ装置を提供することにある。
本発明の第４の目的は、本発明に係る共有ストレージ装置に対して、バッファ・オーバーフロー、或いはバッファ・オーバーフローに準ずる新たな手段により、不正プログラムを送りこむハッキング攻撃が、将来にわたって物理的に不可能であるようにしたネットワーク防御システムおよび共有ストレージ装置を提供することにある。
【課題を解決するための手段】
【００１５】
請求項１に記載の発明は、上記目的を達成するために、少なくともインターネット網を含む第１の通信回線に通信可能に接続された１つ以上のコンピュータと、インターネット網を含まない第２の通信回線に通信可能に接続された１つ以上のコンピュータとから、共通にアクセスされ得る共有ストレージ装置を備えたネットワーク防御システムにおいて、前記共有ストレージ装置を、前記第１と第２の通信回線とは通信インターフェースプロトコルが異なる接続手段によって、前記複数のコンピュータからアクセス可能とする手段と、読み書きデータをバッファリングするための前段バッファを介さない記憶装置および前記記憶装置に設置される記憶媒体と、前記複数のコンピュータの各々からの書き込みデータを前記記憶装置内の記憶媒体に論理的に直接書き込む手段と、前記複数のコンピュータの各々への読み取りデータを前記記憶装置内の記憶媒体から論理的に直接読み出す手段と、を備えたことを特徴とする。
【００１６】
また、請求項２に記載の発明は、請求項１に記載のネットワーク防御システムにおいて、前記共有ストレージ装置は、前記複数のコンピュータの各々に対して、前記記憶装置内の前記記憶媒体にアクセスするための権利を排他的に制御する排他的制御手段を備えていることを特徴とする。
また、請求項３に記載の発明は、請求項２に記載のネットワーク防御システムにおいて、前記排他的制御手段は、前記共有ストレージ装置へのアクセスを要求するユーザーに関する情報、要求されるアクセス権の種類および前記記憶装置内の前記記憶媒体上の記憶領域を指定するための情報のうちの、少なくともいずれか１つを記憶するための内部的な制御情報領域を備えていることを特徴とする。
また、請求項３に記載のネットワーク防御システムにおいては、前記排他的制御手段は、前記制御情報領域へのアクセスに成功したユーザーに対してのみ、前記記憶装置内の前記記憶媒体へのアクセスを許可するように構成することもできる。
【００１７】
また、請求項３に記載のネットワーク防御システムにおいては、前記制御情報領域へのアクセス手段が、前記複数のコンピュータの各々に設置されるように構成することもできる。
また、請求項４に記載の発明は、請求項３に記載のネットワーク防御システムにおいて、前記複数のコンピュータの各々に、前記制御情報領域に書き込むべき制御情報を入力するための制御情報入力手段を備えていることを特徴とする。
また、請求項５に記載の発明は、請求項３に記載のネットワーク防御システムにおいて、前記共有ストレージ装置へのアクセスを要求するユーザーに関する情報には、少なくとも、前記ユーザーの識別子および／または前記ユーザーが所有するコンピュータの識別子が含まれていることを特徴とする。
また、請求項３に記載のネットワーク防御システムにおいて、前記要求されるアクセス権の種類には、少なくとも、ログイン／ログアウトの区別を示す情報が含まれているものとする。
【００１８】
さらに、請求項１に記載のネットワーク防御システムにおいて、前記共有ストレージ装置の構成要素である前記記憶装置の種類には、少なくともハードディスク装置が含まれるものとする。
また、請求項６に記載の発明は、少なくともインターネット網を含む第１の通信回線に通信可能に接続された１つ以上のコンピュータと、インターネット網を含まない第２の通信回線に通信可能に接続された１つ以上のコンピュータとから、共通にアクセスされ得る共有ストレージ装置を備えた共有ストレージ装置において、前記第１と第２の通信回線とは通信インターフェースプロトコルが異なる接続手段によって、前記複数のコンピュータからアクセス可能とする手段と、読み書きデータをバッファリングするための前段バッファを介さない記憶装置および前記記憶装置に設置される記憶媒体と、前記複数のコンピュータの各々からの書き込みデータを前記記憶装置内の記憶媒体に論理的に直接書き込む手段と、前記複数のコンピュータの各々への読み取りデータを前記記憶装置内の記憶媒体から論理的に直接読み出す手段とを備えたことを特徴とする。
【００１９】
また、請求項７に記載の発明は、請求項６に記載の共有ストレージ装置において、前記複数のコンピュータの各々に対して、前記記憶装置内の前記記憶媒体にアクセスするための権利を排他的に制御する排他的制御手段を備えることを特徴とする。
また、請求項８に記載の発明は、請求項７に記載の共有ストレージ装置において、前記排他的制御手段は、アクセスを要求するユーザーに関する情報、要求されるアクセス権の種類および前記記憶装置内の前記記憶媒体上の記憶領域を指定するための情報のうちの、少なくともいずれか１つを記憶するための内部的な制御情報領域を備えていることを特徴とする。
また、請求項８に記載の共有ストレージ装置において、前記排他的制御手段は、前記制御情報領域へのアクセスに成功したユーザーに対してのみ前記記憶装置内の記憶媒体へのアクセスを許可するように構成することもできる。
また、請求項９記載の発明は、請求項８に記載の共有ストレージ装置において、前記アクセスを要求するユーザーに関する情報には、少なくとも、前記ユーザーの識別子および／または前記ユーザーが所有するコンピュータの識別子が含まれていることを特徴とする。
【発明の効果】
【００２０】
請求項１に記載の発明によれば、少なくともインターネット網を含む第１の通信回線（ＬＡＮ等が含まれていてもよい）に通信可能に接続された１つ以上のコンピュータと、インターネット網を含まない第２の通信回線（ＬＡＮ等）に通信可能に接続された１つ以上のコンピュータとから、共通にアクセスされ得る共有ストレージ装置を備えたネットワーク防御システムにおいて、前記共有ストレージ装置を、前記第１と第２の通信回線とは通信インターフェースプロトコルが異なる接続手段によって、前記複数のコンピュータからアクセス可能とする手段と、読み書きデータをバッファリングするための前段バッファを介さない記憶装置および前記記憶装置に設置される記憶媒体と、前記複数のコンピュータの各々からの書き込みデータを前記記憶装置内の記憶媒体に論理的に直接書き込む手段と、前記複数のコンピュータの各々への読み取りデータを前記記憶装置内の記憶媒体から論理的に直接読み出す手段とを備える構成としたので、前記共有ストレージ装置に、独自の排他制御機能を持たせることができて、かつ前記共有ストレージ装置に接続される前記複数のコンピュータには特別なドライバソフトを必要とせず、この複数のコンピュータ間で、安全、且つ自由なデータ交換を可能にすると共に、導入が容易で、しかも前記複数のコンピュータを制御するオペレーティングシステムの信頼性には影響を与えることがないネットワーク防御システムを提供することができる。
【００２１】
また、前記インターネット網に接続されたコンピュータのいずれかが、ハッキング攻撃を受けて動作不能、若しくは制御権を奪われた場合にも、前記インターネット網には接続されていない他のコンピュータから、前記動作不能、若しくは制御権を奪われたコンピュータのデータを即座に取り出して処理することができ、また、インターネットに接続することなくインターネットからのデータを取得することができるため、セキュリティに気を使う必要が無くなる。しかも、前記インターネット網を含む第１の通信回線に接続されたコンピュータと、前記インターネット網を含まない第２の通信回線に接続されたコンピュータとは、前記第１と第２の通信回線が備えるインターフェース手段とはインターフェースプロトコルが全く異なる接続手段によって前記共有ストレージ装置と接続されるため、少なくとも前記第１の通信回線に接続されたコンピュータからは、前記第２の通信回線に接続されたコンピュータに対するハッキング攻撃が不可能となるネットワーク防御システムを提供することができる。
【００２２】
また、請求項２に記載の発明によれば、前記共有ストレージ装置が、前記複数のコンピュータの各々に対して、前記記憶装置内の前記記憶媒体にアクセスするための権利を排他的に制御する排他的制御手段を備える構成としたので、前記複数のコンピュータの各々が、前記記憶装置内の前記記憶媒体上のデータを共有することが可能となり、また、逆に、占有することも可能なネットワーク防御システムを提供することができる。
また、請求項３に記載の発明によれば、前記排他的制御手段が、前記共有ストレージ装置へのアクセスを要求するユーザーに関する情報、要求されるアクセス権の種類および前記記憶装置内の前記記憶媒体上の記憶領域を指定するための情報のうちの、少なくともいずれか１つを記憶するための内部的な制御情報領域を備える構成としたので、前記記憶装置内の前記記憶媒体を排他的に制御することによる前記効果に加えて、ユーザーの確認や、アクセス権の種類の確定および前記記憶媒体上の領域の確定等を行うことが可能なネットワーク防御システムを提供することができる。
【００２３】
また、前記ネットワーク防御システムにおいて、前記排他的制御手段が、前記制御情報領域へのアクセスに成功したユーザーに対してのみ、前記記憶装置内の前記記憶媒体へのアクセスを許可するように構成した場合には、前記共有ストレージ装置の制御プログラムが簡単になり、前記記憶装置内の前記記憶媒体を排他的に制御するための大掛かりなオペレーティングシステムを備える必要の無いネットワーク防御システムを提供することができる。
また、前記ネットワーク防御システムにおいて、前記制御情報領域へのアクセス手段が、前記複数のコンピュータの各々に設置される構成とした場合には、前記複数のコンピュータのいずれからも、前記記憶装置内の前記記憶媒体へアクセスすることが可能なネットワーク防御システムを提供することができる。
【００２４】
また、請求項４に記載の発明によれば、前記複数のコンピュータの各々に、前記制御情報領域に書き込むべき制御情報を入力するための制御情報入力手段を備える構成としたので、前記複数のコンピュータのユーザーの各々は、複雑な制御プログラムを組むことなく、前記記憶装置内の前記記憶媒体にアクセスするための制御情報を簡単に指定できるネットワーク防御システムを提供することができる。
また、請求項５に記載の発明によれば、前記共有ストレージ装置へのアクセスを要求するユーザーに関する情報に、少なくとも、前記ユーザーの識別子および／または前記ユーザーが所有するコンピュータの識別子を含めるように構成したので、前記記憶装置内の前記記憶媒体へのアクセスを要求するユーザーの認証や、該ユーザーが使用するコンピュータの認証を行うことが可能なネットワーク防御システムを提供することができる。
【００２５】
また、前記ネットワーク防御システムにおいて、前記要求されるアクセス権の種類に、少なくとも、ログイン／ログアウトの区別を示す情報を含める構成とした場合には、前記複数のコンピュータのユーザーの各々は、前記記憶装置内の前記記憶媒体に対してログイン／ログアウトの区別を指定したアクセスを行うことができるネットワーク防御システムを提供することができる。
また、前記ネットワーク防御システムにおいて、前記共有ストレージ装置の構成要素である前記記憶装置の種類に、少なくともハードディスク装置を含める構成とした場合には、大容量で、ビット当たりのコストが安く、かつ信頼性の高いハードディスク装置を前記記憶装置として使用できるネットワーク防御システムを提供することができる。
【００２６】
また、請求項６に記載の発明によれば、上述した目的を達成するために、少なくともインターネット網を含む第１の通信回線（ＬＡＮ等が含まれていてもよい）に通信可能に接続された１つ以上のコンピュータと、インターネット網を含まない第２の通信回線（ＬＡＮ等）に通信可能に接続された１つ以上のコンピュータとから、共通にアクセスされ得る共有ストレージ装置において、前記第１と第２の通信回線とは通信インターフェースプロトコルが異なる接続手段によって、前記複数のコンピュータからアクセス可能とする手段と、読み書きデータをバッファリングするための前段バッファを介さない記憶装置および前記記憶装置に設置される記憶媒体と、前記複数のコンピュータの各々からの書き込みデータを前記記憶装置内の記憶媒体に論理的に直接書き込む手段と、前記複数のコンピュータの各々への読み取りデータを前記記憶装置内の記憶媒体から論理的に直接読み出す手段とを備える構成としたので、独自の排他制御機能を持たせることができて、かつ前記複数のコンピュータには特別なドライバソフトを必要とせず、この複数のコンピュータ間で、安全、且つ自由なデータ交換を可能にすると共に、導入が容易で、しかも前記複数のコンピュータを制御するオペレーティングシステムの信頼性には影響を与えることがない共有ストレージ装置を提供することができる。
【００２７】
また、このように構成することにより、特に、自らはインターネットに接続することなく、インターネットからのデータを、インターネットに接続されたコンピュータから容易に取得でき、従って、前記インターネット網に接続されたコンピュータのいずれかが、ハッキング攻撃を受けて動作不能、若しくは制御権を奪われた場合にも、前記インターネット網には接続されていない他のコンピュータから、前記動作不能、若しくは制御権を奪われたコンピュータのデータを即座に取り出して処理することができ、しかも、前記インターネット網を含む第１の通信回線に接続されたコンピュータと、前記インターネット網を含まない第２の通信回線に接続されたコンピュータとは、前記第１と第２の通信回線が備えるインターフェース手段とはインターフェースプロトコルが全く異なる接続手段によって前記共有ストレージ装置と接続されるため、少なくとも前記第１の通信回線に接続されたコンピュータからは、前記第２の通信回線に接続されたコンピュータに対するハッキング攻撃が不可能となる共有ストレージ装置を提供することができる。
【００２８】
また、請求項７に記載の発明によれば、前記複数のコンピュータの各々に対して、前記記憶装置内の前記記憶媒体にアクセスするための権利を排他的に制御する排他的制御手段を備える構成としたので、前記複数のコンピュータの各々が、前記記憶装置内の前記記憶媒体上のデータを共有することが可能となり、また、逆に、占有することも可能な共有ストレージ装置を提供することができる。
また、請求項８に記載の発明によれば、アクセスを要求するユーザーに関する情報、要求されるアクセス権の種類および前記記憶装置内の前記記憶媒体上の記憶領域を指定するための情報のうちの、少なくともいずれか１つを記憶するための内部的な制御情報領域を備える構成としたので、前記記憶装置内の前記記憶媒体を排他的に制御することによる前記効果に加えて、ユーザーの確認や、アクセス権の種類の確定および前記記憶媒体上の領域の確定等を行うことが可能な共有ストレージ装置を提供することができる。
【００２９】
また、前記共有ストレージ装置において、前記排他的制御手段を、前記制御情報領域へのアクセスに成功したユーザーに対してのみ前記記憶装置内の記憶媒体へのアクセスを許可するように制御するように構成した場合は、前記共有ストレージ装置の制御プログラムが簡単になり、前記記憶装置内の前記記憶媒体を排他的に制御するための大掛かりなオペレーティングシステムを備える必要の無い共有ストレージ装置を提供することができる。
また、請求項９に記載の発明によれば、前記アクセスを要求するユーザーに関する情報に、少なくとも、前記ユーザーの識別子および／または前記ユーザーが所有するコンピュータの識別子を含める構成としたので、前記記憶装置内の前記記憶媒体へのアクセスを要求するユーザーの認証や、該ユーザーが使用するコンピュータの認証を行うことが可能な共有ストレージ装置を提供することができる。
【００３０】
また、前記共有ストレージ装置において、前記要求されるアクセス権の種類に、少なくとも、ログイン／ログアウトの区別を示す情報を含める構成とした場合には、前記複数のコンピュータのユーザーの各々は、前記記憶装置内の前記記憶媒体に対してログイン／ログアウトの区別を指定したアクセスを行うことができる共有ストレージ装置を提供することができる。
さらに、前記共有ストレージ装置において、前記共有ストレージ装置の構成要素である前記記憶装置の種類に、少なくともハードディスク装置を含めるものとした場合には、大容量で、ビット当たりのコストが安く、かつ信頼性の高いハードディスク装置を前記記憶装置として使用できる共有ストレージ装置を提供することができる。
【発明を実施するための最良の形態】
【００３１】
本発明のネットワーク防御システムは、自らはインターネットに接続することなく、インターネットからのデータを、インターネットに接続されたコンピュータから容易に取得でき、また、ハッキング攻撃を受けて動作不能に陥ったコンピュータのデータを、他のコンピュータで即座に取り出して処理し、しかも、この他のコンピュータはハッキングされる危険がないようにするものであるが、この目的を、ネットワークに接続された複数のコンピュータ間でのデータの共有を可能にするための共有ストレージ装置を設置することにより達成している。
以下、本発明のネットワーク防御システムおよび共有ストレージ装置の最良の実施の形態について、図面を参照して詳細に説明する。
【００３２】
図１は、本発明の一つの実施の形態に係るネットワーク防御システムの全体構成を示す構成図である。
同図において、本実施の形態のネットワーク防御システムは、インターネット網１０８に接続された第１の通信回線としてのインターネット用ＬＡＮ１０９と、インターネット用ＬＡＮ１０９と通信可能に接続されるコンピュータＡ１１０と、第２の通信回線としてのイントラネット用ＬＡＮ１１３と、インターネット網を含まないイントラネット用ＬＡＮ１１３と通信可能に接続されるコンピュータＢ１１１と、コンピュータＡ１１０とコンピュータＢ１１１との間でのデータの共有を可能にするための共有ストレージ装置１００（本実施の形態に係る共有ストレージ装置）とを備えて構成される。
【００３３】
共有ストレージ装置１００は、システムバス１０１に接続されるＣＰＵ１０４と、プログラムの作業用領域であって、スタック情報や、制御プログラムのための内部テーブル等を格納するためのＲＡＭ（Random Access Memory）１０５と、排他制御プログラムを始め、共有ストレージ装置１００の動作に必用な全てのプログラムを格納するためのＲＯＭ（Read Only Memory）１０６と、共有データを格納する記憶装置としてのハードディスク１０２と、ハードディスク１０２を接続するためのハードディスク用インターフェース装置１０３と、コンピュータＡ１１０およびコンピュータＢ１１１と接続するためのコンピュータ用インターフェース装置１０７とを備えて構成される。
コンピュータＡ１１０は、インターネット用ＬＡＮ１０９と接続されており、また、インターネット用ＬＡＮ１０９は、インターネット網１０８に接続されている。さらにコンピュータＡ１１０は、インターネット用ＬＡＮ１０９およびイントラネット用ＬＡＮ１１３とは通信インターフェースプロトコルが異なる接続手段であるコンピュータ用インターフェースを備えた接続手段１１２を介して、共有ストレージ装置１００のコンピュータ用インターフェース装置１０７と通信可能（アクセス可能）に接続されている。このコンピュータＡ１１０は、一般には複数であってもよいものとする。
【００３４】
コンピュータＢ１１１は、イントラネット用ＬＡＮ１１３に接続されており、さらに上記のようなインターフェースプロトコルが異なるコンピュータ用インターフェースを備えた接続手段１１２を介してコンピュータ用インターフェース装置１０７にアクセス可能に接続されている。このコンピュータＢ１１１も、一般には複数であってもよいものとする。また、接続手段１１２は、無線系のインターフェースを用いることも可能である。
図１に示す本実施形態に係る共有ストレージ装置１００では、ハードディスク１０２を構成要素とする場合が示されているが、一般に本発明では、このハードディスク１０２の他、ＤＶＤ−ＲＡＭ／Ｒ／ＲＷ装置、光磁気ディスク（ＭＯ）装置およびＣＤ−Ｒ／ＲＷ装置などを同様に使用することができる。
【００３５】
以下、本実施の形態のネットワーク防御システムの動作について説明する。
コンピュータ用インターフェース装置１０７は、インターネット網１０８からインターネット用ＬＡＮ１０９、コンピュータＡ１１０を順次に介してのコンピュータＢ１１１に対するハッキング攻撃を防ぐため、ＬＡＮおよびインターネット網と接続する場合のインターフェース手段とは通信インターフェースプロトコルが全く異なるインターフェース手段を備えたコンピュータ用インターフェースを備えた接続手段１１２により、コンピュータＡ１１０およびコンピュータＢ１１１にアクセス可能に接続されている。なお、本発明では、ＲＡＭ１０５は、データ転送用のバッファとしては一切使用されない。
コンピュータ用インターフェースを備えた接続手段１１２は、コンピュータ用インターフェース装置１０７と、コンピュータＡ１１０およびコンピュータＢ１１１とを接続するためのインターフェース手段（規格）であって、ＬＡＮおよびインターネット網１０８と接続する場合の規格とは全く異なる規格であるＩＥＥＥ１３９４（Fire Wire（商標）、ｉＬｉｎｋ（商標）とも称される）、ＵＳＢ（Universal serial Bus）、ＳＣＳＩ（Small Computer System Interface）などを用いるものとする。
【００３６】
コンピュータＡ１１０は、インターネット網１０８から受信したデータを、インターネット用ＬＡＮ１０９を介して受け取り、共有ストレージ装置１００のハードディスク１０２に格納する（このデータは、図１において、データ１１４として示す）。この際、共有ストレージ装置１００のハードディスク１０２が、複数のコンピュータから同時に操作されて、データ１１４が破壊されることを防ぐため、いずれかのコンピュータからデータ１１４にアクセスする場合は、排他的制御機能（以下、「排他制御機能」と略称する）を使用することにより、共有ストレージ装置１００のハードディスク１０２を占有使用するものとする。共有ストレージ装置１００のハードディスク１０２は、共有ストレージ装置１００に接続されるコンピュータのＯＳ（オペレーティングシステム）の機能の範囲で、複数のボリュームに分割して使用することが可能であり、しかも、この分割によるボリューム単位での排他制御が可能であるため、共有ストレージ装置１００を使用する複数のコンピュータが、ハードディスク１０２内のそれぞれ異なるボリュームを使用する限りにおいて、それら異なるボリュームは同時に操作できる。
【００３７】
コンピュータＢ１１１は、共有ストレージ装置１００のハードディスク１０２に格納されたデータ１１４を取り出す際に、コンピュータＡ１１０と同様、データ１１４が格納されているボリュームに対して排他制御をかけて占有使用する(排他的制御手段)。この排他的制御手段については図４〜図８で詳細に説明する。
図２は、本発明の一実施の形態に係るネットワーク防御システムの共有ストレージ装置の主要部であるコントローラ部をＳＣＳＩインターフェースで構成した場合の本実施の形態としての構成を示すブロック図である。
同図に示す本実施の形態に係るネットワーク防御システムの共有ストレージ装置１００の主要部であるコントローラ部は、入出力装置とのインターフェースを司る入出力インターフェース２０２と、ワーク用スタティックＲＡＭとして機能するワークＳＲＡＭ２０３と、ＳＣＳＩ規格のＳＣＳＩコネクタ２０５，２０９と、ＳＣＳＩプロトコルを備えたＳＣＳＩプロトコルコントローラ２０６，２０８と、ＤＭＡコントローラ２０７と、ＤＭＡバスを構成するＤＭＡ−ｂｕｓ２１１とを備える。
【００３８】
また、図３は、一般的な（従来の）ストレージ装置の主要部であるコントローラ部をＳＣＳＩインターフェースで構成した場合の構成を示すブロック図である。
図２に示す本実施形態に係るネットワーク防御システムの共有ストレージ装置の主要部であるコントローラ部と、図３に示す一般的なストレージ装置の主要部であるコントローラ部との構成上の相違点は、ＳＤＲＡＭ２１０（ＲＡＭの一種）の有無だけである。  この違いからも分かるとおり、ホストコンピュータとのデータ転送を制御するＳＰＣ（Scsi Protocol Controller）であるＳＰＣ０（２０８）と、ハードディスク（図示は省略）とのデータ転送を制御するＳＰＣ１（２０６）との間で、データを授受する際に、一般には、図３に示す通り、バッファであるＳＤＲＡＭ２１０を経由するが、図２に示す本実施形態に係るネットワーク防御システムの共有ストレージ装置の主要部であるコントローラ部では、このバッファを使用せず、ＤＭＡ−ｂｕｓ２１１を介してＳＰＣ間（ＳＰＣ０とＳＰＣ１との間）で直接データ転送を行う。
【００３９】
図２に示すＳＣＳＩコネクタ２０９には、図１に示すコンピュータＡ１１０およびコンピュータＢ１１１のコンピュータ用インターフェースを備えた接続手段１１２が、ＳＣＳＩインターフェースでディジーチェーン（ケーブルによる渡り接続）される。また、図２に示すＳＣＳＩコネクタ２０５には、ＳＣＳＩインターフェースのハードディスクが接続される。
なお、図２に示すコントローラ部の一実施の形態では、コンピュータＡ１１０およびコンピュータＢ１１１と、共有ストレージ装置１００との間のインターフェース手段として、ＳＣＳＩインターフェースを用いる場合について説明したが、ＳＣＳＩ規格を備えたインターフェースと同様に、ＩＥＥＥ１３９４（Fire Wire（商標） 、ｉＬｉｎｋ（商標）とも称される）規格、またはファイバーチャネル、またはＵＳＢ（Universal Serial Bus ）規格等を備えたインターフェースによっても同様に実施することができる。
【００４０】
例えば、ＩＥＥＥ１３９４規格を使用する場合の構成は、ＳＣＳＩ規格の場合の構成と全く同じもので実現することが可能である。データがシリアル処理であり、デバイスの識別を固有のＩＤによらずに行う点についてはパラレル処理のＳＣＳＩ規格とは異なるが、基本的に、インターフェースのレベルでインプリメントされている機能は同じであるので、ハードウェアを用意しさえすれば同様に実施することができる。即ち、図２に示すコントローラ部は、ＳＣＳＩ規格で構成されているので、これをＩＥＥＥ１３９４規格に置き代えたコントローラ部を用意しさえすれば同様に実施することができる。
またファイバーチャネルについても、その構成はＳＣＳＩ規格の場合の構成と全くといってよい程同じもので実現することが可能である。ファイバーチャネルも、基本的に、インターフェースのレベルでインプリメントされている機能は同じであるので、ハードウェアを用意しさえすれば同様に実施することができる。即ち、図２に示すコントローラ部は、ＳＣＳＩ規格で構成されているので、これをファイバーチャネルにしたコントローラ部を用意しさえすれば同様に実施することができる。
【００４１】
またＵＳＢ規格についても、その構成はＳＣＳＩ規格の場合とほぼ同じもので実現することが可能である。ただＵＳＢ規格の場合は、コンピュータと周辺機器との１：１接続を基本としているので、図２に示すＳＣＳＩコネクタ２０９に相当する部分を、独立した２つのＵＳＢコネクタとすることで同様に実施することができる。このようにして図２に示すコントローラ部は、図１に示すコンピュータＡ１１０およびコンピュータＢ１１１と接続可能であり、この双方のコンピュータからのハードディスク１０２（図１）に対するアクセスを排他制御して共有せしめることができる。
図４は、本発明の実施の形態に係る共有ストレージ装置と複数のコンピュータとの間で排他制御を行うための通信手順を示すシーケンスチャートである。
図１に示す共有ストレージ装置１００は、電源が投入された初期状態ではコンピュータから一切アクセスすることができず、コンピュータＡ１１０又はコンピュータＢ１１１より、ログインと呼ばれる操作を行うことにより、このログイン操作を行ったコンピュータからの使用が可能となる。
【００４２】
まず、図４に示すログイン（操作）は、コンピュータＡ１１０またはコンピュータＢ１１１から、ユーザーが、後述の図８に例示するログインプログラムの操作画面に必要項目を入力することで実行される。以下、この操作を説明する。
図８は、本発明の実施形態に係る共有ストレージ装置にアクセスするホストコンピュータからのログインプログラムの操作画面の１例を示す説明図である。
各ホストコンピュータ側の各ユーザーは、図８に例示するログインプログラムの操作画面（入力画面）を介して、自分に与えられたユーザーＩＤと、自分が使用したいボリュームに付与されているアクセス種別毎のパスワード（読み込み専用（ＲＯパスワード）または読み書き両用（ＲＷパスワード））とを入力し、さらに、使用したいボリュームを選択した後、「共有ログイン」、または「排他ログイン」のボタンを押下する（制御情報領域への制御情報入力手段）。ＲＷパスワードを使用する場合は、無条件に排他ログインとなり、以後、他のコンピュータから同じボリュームに対するログイン要求は、すべて拒否される。
【００４３】
また、ＲＯパスワードを使用する場合は、読み込みだけが可能で、書き込みはすべて拒否される。また、ユーザーが、ＲＯパスワードを使用して「共有ログイン」ボタンを押下した場合は、以後、他のコンピュータからは、ＲＯパスワードを使用した共有ログインが可能となり、読み込みだけが複数のコンピュータにより同時に行うことができる。またＲＯパスワードを使用して「排他ログイン」ボタンを押下した場合は、以後、他のコンピュータからの一切のログインが拒否される。
図５は、本発明の実施の形態に係る共有ストレージ装置に設置される排他制御機能を備えたコミュニケーションテーブル（ａ）およびボリューム情報テーブル（ｂ）の構造例を示す領域マップである。
前述のログイン操作により、図４に示すように、このログイン操作を実行したコンピュータから、共有ストレージ装置１００に対してログイン要求の通信（ログインライト）が行われる。この際、複数のコンピュータから、このログイン操作が同時に行われた場合に備えて、共有ストレージ装置１００のＲＡＭ１０５には、図５に示す排他制御機能を備えたコミュニケーションテーブル（ａ）およびボリューム情報テーブル（ｂ）から成る制御情報領域が設置されており、このコミュニケーションテーブル（ａ）が排他的に使用されてログイン操作の情報が記憶されるように構成している。
【００４４】
このように構成することにより、前記複数のコンピュータからは、前述のログインプログラムの操作画面（図８）を介して、このコミュニケーションテーブル（ａ）が使用可能になるまで繰り返しログインライト（リトライ）が行われて、この排他制御機能を備えたテーブルに対するアクセスに成功したいずれか１つのコンピュータに対してログインを実行する権利（ログインライトの成功）が与えられる。
次に、このログインを実行する権利を獲得できたコンピュータは、このコミュニケーションテーブルの情報を基にボリューム情報テーブル（図５（ｂ））の該当するボリューム情報領域をチェックおよび更新し、その結果、共有ストレージ装置１００からは、ログインＯＫ／ＮＧ（ライトレスポンス）が返される。
ログインＯＫが返された場合は、以後、当該コンピュータから指定したボリュームは、ログインされたアクセス種別（読み込みのみ、または読み書き両用）および共有モード（共有または排他）に応じたアクセスのみが可能となる。また、ログインＮＧが返された場合は、前述のログインを実行する権利を獲得できたコンピュータであっても、指定したボリュームに対するアクセスはすべて拒否される。
【００４５】
一方、ログアウト操作も、いずれかのコンピュータから、前述のログインプログラムの操作画面（図８）を介してボリュームを指定し、ログアウトボタンを押下することにより前記と同様の手順で行われ、正しくログアウトされた場合は、以後、ログアウトしたコンピュータからの、指定したボリュームに対するアクセスはすべて拒否されると同時に、他のコンピュータからの当該ボリュームに対する前述のログイン操作は可能となる（ログイン操作が開放される）。このようにして、図１に示す共有ストレージ装置１００のハードディスク１０２内のデータ１１４は、複数のコンピュータ（ここではコンピュータＡ１１０およびコンピュータＢ１１１）から、安全、且つ自由にアクセス可能となる。
【００４６】
図６は、本発明の実施の形態に係る共有ストレージ装置のＣＰＵにおける電源投入時の初期化処理の動作を説明するためのフローチャートである。
以下、図１を参照し、図６に示すフローチャートを使用して共有ストレージ装置１００のＣＰＵ１０４における電源投入時の初期化処理の動作を説明する。
まず、図５（ａ）に示すコミュニケーションテーブルのコミュニケーションテーブルロックフラグのリセットを含めて初期化する（ステップＳ１０１）。
次に、ハードディスク１０２（図１）をアクセスしてボリューム情報を取得する（ステップＳ１０２）。
次に、取得したボリューム情報をもとに、ボリューム情報テーブル（図５（ｂ））を初期化し、すべてのボリュームをログアウト状態にする（ステップＳ１０３）。
【００４７】
次に、ハードディスク１０２内に設けられ、複数のコンピュータとのコミュニケーション用データ領域として使用されるｆｉｎａｌｗａｌｌ（「ファイナルウォール」は、商標）ファイルを検索し（ステップＳ１０４）、前記ファイルがルートディレクトリに存在するか否かを検証する（ステップＳ１０５）。前記ファイルがルートディレクトリに存在する場合は、そのロケーション情報をコミュニケーションテーブル（図５）にセットし（ステップＳ１０６）、その後、電源投入時の初期化処理を終了する。この場合は、以後、このｆｉｎａｌｗａｌｌファイルがルートディレクトリに作成されているので、図１に示す共有ストレージ装置１００は排他制御機能が有効となる。
また、前記ファイルがルートディレクトリに存在しない場合は、そのまま終了する。この場合は、以後、排他制御を行わず、ホストコンピュータからのアクセスを全て受け付ける。なお、この場合は、ホストコンピュータ側において、図８に示すログインプログラムの操作画面を使用した入力によるログインプログラムが未だ組み込まれていない段階での接続、アクセスが想定される。
【００４８】
図７は、本発明の実施の形態に係る共有ストレージ装置に対して、複数のコンピュータからアクセス要求がなされた場合の動作を示すフローチャートである。
以下、図１と図７を参照して、共有ストレージ装置１００に対して、コンピュータＡ１１０またはコンピュータＢ１１１からアクセス要求なされた場合のＣＰＵ１０４の動作を説明する。
まず、コミュニケーションテーブル（図５）を参照して、ルートディレクトリにｆａｉｎａｌｗａｌｌが存在するか否かを検証する（ステップＳ２０１）。ルートディレクトリにｆａｉｎａｌｗａｌｌファイルが存在する場合は、排他制御を行うステップＳ２０２に移る。また、ルートディレクトリにｆｉｎａｌｗａｌｌファイルが存在しない場合は、排他制御を行わないと判断してステップＳ２２０に移る。
【００４９】
ステップＳ２０２では、ログイン／ログアウト要求処理か否かを検証し、ログイン／ログアウト要求の場合はステップＳ２０３に移り、ログイン／ログアウト要求ではない場合はステップＳ２１６に移る。
ステップＳ２０３ではログイン／ログアウト処理のために使用するコミュニケーションテーブルが使用中か否かを検証し、コミュニケーションテーブルが既に使用中の場合はステップＳ２０４に移り、また、コミュニケーションテーブルが使用されていなかった場合、若しくは使用中の状態から開放された場合はステップＳ２０６に移る。
ステップＳ２０４では、コミュニケーションテーブルを使用しているのは自タスク（ＣＰＵ１０４を制御する制御プログラムの１つとしてのタスク）か否かを検証し、自タスクが使用している場合はステップＳ２０７に移る。また、コミュニケーションテーブルを使用しているのが自タスクではなかった場合は、数秒間、処理の進行をディレイ（遅延）し（ステップＳ２０５）、その後、ステップＳ２０３に進んで、コミュニケーションテーブルが開放されるのを繰り返し検証する。
【００５０】
Ｓ２０６では、コミュニケーションテーブルロックフラグを立てて占有宣言を行い、ステップＳ２０７に移る。
ステップＳ２０７では、ログイン／ログアウト要求の情報をコミュニケーションテーブルにセットする。これは最後に行われたログイン／ログアウトの情報を記録しておくためである。
次に、ログイン要求またはログアウト要求のいずれであるかを検証し（ステップＳ２０８）、ログイン要求の場合はステップＳ２０９に移り、また、ログアウト要求の場合はステップＳ２２２に移る。
ステップＳ２０９では、ボリューム情報テーブルとログイン要求とを照らし合わせて、既に他からの要求によりログイン済か否か（即ち、当該ログイン要求のボリュームがログイン可能な状態か否か）を検証し、当該ログイン要求のボリュームがログイン可能の場合はステップＳ２１０に移り、既に他からログインされていた場合はステップＳ２１４に移る。
ステップＳ２１０ではログイン処理として、ボリューム情報テーブルの該当するボリュームの領域に、ログイン中であることを示すフラグ（標識）およびログイン要求のあったコンピュータの識別ＩＤとログインのモードを記憶させる。
【００５１】
次に、ステップＳ２１１では、ブロックデバイスとしての共有ストレージ装置１００のハードディスク１０２（図１）の記録媒体の種別を、リムーバブルメディア（取り外し可能記録媒体）として示すと共に、メディア（記録媒体）が交換されているという意味のステータス（状態情報）を、当該ログイン要求を送信したコンピュータのＯＳ（オペレーティングシステム）に返し、また、現在の読み込みバッファ（キャッシュ）をクリヤーしてデータの読み直し要求をセットする。
なお、この処理により、読み込み要求のあったデータは、共有ストレージ装置１００から新たに読み直しできるので、現在ログインしているコンピュータとは異なる他のコンピュータによって、共有ストレージ装置１００のハードディスク１０２のデータ１１４が書き変えられていたとしても、正しい（最新の）データ１１４を読み込むことができる。この機能は、共有ストレージ装置１００のハードディスク１０２を、誤って、複数のコンピュータから同時に操作することによってデータを破壊する事態を防止する排他制御機能と同時に、共有ストレージ装置１００のハードディスク１０２を複数のコンピュータで共有して、常に最新のデータを読み出すために必須の機能である。
【００５２】
次に、ステップＳ２１２では、ログイン完了のライトレスポンス（ログイン要求ライトに対する復帰情報）をセットする。
次に、コミュニケーションテーブルロックフラグをクリヤーすることにより、コミュニケーションテーブルを開放し（ステップＳ２１３）、その後、処理を終了する（この場合は、ログイン成功の場合の終了となる）。
ステップＳ２１４では、他のコンピュータにより、既にログインされているので、ログインエラーとするライトレスポンスをセットする。
次に、コミュニケーションテーブルロックフラグをクリヤーすることにより、コミュニケーションテーブルを開放し（ステップＳ２１５）、その後、処理を終了する（この場合は、ログイン失敗の場合の終了となる）。
ステップＳ２２２では、ログアウト要求の処理を行う。まずログアウトパラメータを検証し、ログアウトパラメータのチェックがＯＫであればステップＳ２２３に移り、ログアウトパラメータがＮＧであればステップＳ２２５に移る。
【００５３】
ステップＳ２２３では、ログアウト要求の該当ボリューム情報テーブルをクリヤーしてログアウト状態とする。
次に、ログアウト完了のライトレスポンス（ログアウト要求ライトに対する復帰情報）をセットし、（ステップＳ２２４）ステップＳ２２５に移る。
ステップＳ２２５では、コミュニケーションテーブルロックフラグをクリヤーすることにより、コミュニケーションテーブルを開放して、ログアウト処理を終了する。
ステップＳ２１６では、アクセス要求がｆｉｎａｌｗａｌｌファイルに対するアクセスか否かを検証し、ｆｉｎａｌｗａｌｌファイルに対するアクセスの場合は、アクセスを許可して、そのままステップＳ２２０に移る。これは、たとえばメンテナンス時に、排他制御機能を外した状態でアクセスしたい場合、ログインせずにｆｉｎａｌｗａｌｌファイルを削除することを可能とする機能である。また、ｆｉｎａｌｗａｌｌファイルに対するアクセスではない場合は、ステップＳ２１７に移る。
【００５４】
ステップＳ２１７では、当該要求を送信したコンピュータにより既にログインが行われているか否かを検証し、ログイン済みの場合はステップＳ２１８に移り、また、未だログインされていない場合はステップＳ２２１に移る。
ステップＳ２１８では、アクセス領域が当該ボリュームの範囲内であることを検証し、ステップＳ２１９では、前記検証結果を判断し、アクセス領域が当該ボリュームの範囲内の場合はステップＳ２２０に移り、また、アクセス領域が当該ボリュームの範囲内でない場合はステップＳ２２１に移る。
ステップＳ２２０では、当該アクセス要求に応じたリードまたはライトの処理を行い、処理を終了する（この場合は、アクセス完了を待つ終了となる）。
ステップＳ２２１では、アクセス拒否のレスポンスコードをセットして終了する（この場合は、アクセス拒否の終了となる）。
【００５５】
図９は、本発明の実施の形態に係る共有ストレージ装置のデータ転送時のデータの流れを説明する説明図である。
同図に示すとおり、本発明に係る共有ストレージ装置１００（コントローラ８ａの具体例は図２に示される）の場合は、ハードディスク装置の前段バッファ（ＲＡＭ）が存在しないので、不正プログラムが送りこまれても、バッファ・オーバーフローが生じる恐れは全く存在しない。
なお、図９に示す本発明に係る共有ストレージ装置１００を、パソコンなど汎用性の高いコンピュータ８ｂを使って構築することも可能である。また、その場合も、コンピュータ８ｂのインターフェース手段に、本発明に係る共有ストレージ装置１００のインターフェース手段と同じデータ転送技術を取り入れることができる。
【００５６】
図１０は、本発明の実施の形態に係る共有ストレージ装置の一実施の形態としてのコントローラ部のデータ転送部のハードウェアの構成を示すブロック構成図である。
即ち、この図１０は、ＳＣＳ１により構築された図２のコントローラのデータ転送部分のハードウェアのブロック図である。
このハードウェアによる２つのＳＰＣ（Ｓｃｓｉ  Ｐｒｏｔｏｃｏｌ  Ｃｏｎｔｒｏｌｌｅｒ）、即ちＳＰＣ０とＳＰＣ１間をＤＭＡ−Ｄａｔａ−Ｂｕｓ１１ａで、ダイレクトに繋ぎ、両ＳＰＣのＤＲＥＱ（Ｄａｔａ  Ｒｅｑｕｅｓｔ）、ＤＡＣＫ（Ｄａｔａ  Ａｃｋｎｏｗｌｅｄｇｅ）信号を制御することにより、ＲＡＭに一時格納（バッファ）しないＳＰＣ間で高速ダイレクト転送を実現している。
【００５７】
図１０において、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）制御用のリード／ライト信号は、分離した状態でＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）に接続されているので、一方をデータソース（転送元）、他方をデータデスティネーション（転送先）として動作させる。ただし、本発明の実施の形態では、ＳＰＣ間のＤＭＡ用データバスは、基板上の物理的配線により結合されているので２Ｂｙｔｅ（Ｗｏｒｄ）単位の転送になる。
なお、上述の実施の形態では、ウィルスを含んだファイルが図１のコンピュータＡ１１０から共有ストレージ装置１００にダウンロードされる可能性があるが、これはコンピュータＢ１１１がアップロードする際に厳重にウィルス感染チェックすることで駆除することができる。
【００５８】
また、図１１（ａ）は、本発明の実施の形態に係る共有ストレージ装置の一実施の形態としてのコントローラ部のデータ転送部の構成であり、図１１（ｂ）は、従来の一般的な共有ストレージ装置のコントローラ部との対比をブロック構成により示す説明図である。
前述の図２では、本発明の実施の形態に係るネットワーク防御システムの共有ストレージ装置をＳＣＳＩインターフェースで構成した場合の一実施例としての共有ストレージ用コントローラ部の構成を示したが、図１１（ａ）は、このＳＣＳＩにより構築されるコントローラ部（図２）のデータ転送部分のハードウェア構成を示すブロック図である。
【００５９】
このハードウェアにより、２つのＳＰＣ（Scsi Protocol Controller）、即ち、ＳＰＣ０とＳＰＣ１間を、図１１（ａ）に示すように、ＤＭＡ−Ｄａｔａ−Ｂｕｓ１１ａでダイレクトに繋ぎ、前記両ＳＰＣのＤＲＥＱ（Data Request）、ＤＡＣＫ（Data Acknowledge）信号を制御することにより、図１１（ｂ）に示す従来例のようにＲＡＭ（ＳＤＲＡＭ）に一時格納（バッファ）することなく、前記両ＳＰＣ間の高速ダイレクト転送を実現している。
なお、図示は省略するが、ＤＭＡ（Direct Memory Access）制御用のリード／ライト信号端子は、分離した状態でＰＬＤ（Programmable Logic Device）に接続されているので、一方をデータソース（データの転送元）、他方をデータデスティネーション（データの転送先）として使用する。但し、本発明の実施の形態では、前記両ＳＰＣ間のＤＭＡ用データバス（ＤＭＡ−Ｄａｔａ−Ｂｕｓ１１ａ）は、基板上の物理的配線により結合されているので２Ｂｙｔｅ（Ｗｏｒｄ）単位の転送になる。
【００６０】
この実施の形態では、ウィルスを含んだファイルが、図１に示すコンピュータＡ１１０から、共有ストレージ装置１００（最終的には、ハードディスク１０２）にダウンロードされる可能性があるが、このようなウィルスは、コンピュータＢ１１１がアップロードする際に、厳重にウィルス感染チェックを実施することで駆除することができる。
また、本発明に係る共有ストレージ装置１００のＣＰＵ１０４の処理を、図６，７に示すフローチャートで示した手順により実行せしめるための制御プログラムは、半導体メモリを始め、ＣＤ−ＲＯＭや磁気テープなどのコンピュータ読み取り可能な記録媒体に格納して配付してもよい。そして、少なくともマイクロコンピュータ，パーソナルコンピュータ，汎用コンピュータを範疇に含むコンピュータが、上記の記録媒体から上記プログラムを読み出して、実行するものとしてもよい。
【産業上の利用可能性】
【００６１】
本発明は、企業、官公庁、自治体、病院、報道機関、放送局、等の、あらゆる組織に設置されるコンピュータシステムおよびネットワークシステム、並びに個人が所有するコンピュータシステムに適用可能である。
特に、企業、官公庁、自治体、病院、報道機関、放送局、等の組織に設置されるコンピュータシステムおよびネットワークシステムにおいては、本発明を適用することにより、インターネット網からのハッキング攻撃によっても、外部に非公開のネットワークであるイントラネット用ＬＡＮが攻撃されたり、また、その情報が破壊されたり、漏洩したりする危険性を回避することが可能となる。
また、ファイアウォールにより安全性が確保されていると主張されている現行の全国自治体の住民基本台帳ネットワークは、ファイアウォールを設置していたとしても、前述の通り、ハッキング攻撃される危険性を有するが、本発明を適用した新たなネットワークシステムを構築することにより、ハッキングに対する安全性を飛躍的に向上させることができるので、住民のプライバシー情報を、一層厳重に守秘することが可能となる。
【図面の簡単な説明】
【００６２】
【図１】本発明の実施の形態に係るネットワーク防御システムの全体構成を示す構成図である。
【図２】本発明の実施の形態に係るネットワーク防御システムの共有ストレージ装置の主要部であるコントローラ部をＳＣＳＩインターフェースで構成した場合の一実施の形態としての構成を示すブロック図である。
【図３】一般的なストレージ装置の主要部であるコントローラ部をＳＣＳＩインターフェースで構成した場合の構成を示すブロック図である。
【図４】本発明の実施の形態に係る共有ストレージ装置と複数のコンピュータとの間で排他制御を行うための通信手順を示すシーケンスチャートである。
【図５】図５（ａ）は、本発明の実施の形態に係る共有ストレージ装置に設置される排他制御機能を備えたコミュニケーションテーブルの構造を示し、図５（ｂ）は、ボリューム情報テーブルの構造を示す領域マップである。
【図６】本発明の実施の形態に係る共有ストレージ装置のＣＰＵにおける電源投入時の初期化処理の動作を説明するためのフローチャートである。
【図７】本発明の実施の形態に係る共有ストレージ装置に対して、複数のコンピュータからアクセス要求がなされた場合の動作を示すフローチャートである。
【図８】本発明の実施の形態に係る共有ストレージ装置にアクセスするホストコンピュータからのログインプログラムの操作画面の一例を示す説明図である。
【図９】本発明の実施の形態に係る共有ストレージ装置のデータ転送時のデータの流れを説明する説明図である。
【図１０】本発明の実施の形態に係る共有ストレージ装置の一実施例としてのコントロール部のデータ転送部の構成を示すブロック構成図である。
【図１１】図１１（ａ）は、本発明の実施の形態に係る共有ストレージ装置の一実施の形態としてのコントローラ部のデータ転送部の構成を示し、図１１（ｂ）は、従来の一般的な共有ストレージ装置のコントローラ部との対比をブロック構成により示すそれぞれの説明図である。
【図１２】従来の一般的な共有ストレージ装置におけるデータ転送時のデータの流れを説明する説明図である。
【符号の説明】
【００６３】
１００  共有ストレージ装置
１０１  システムバス
１０２  ハードディスク
１０３  ハードディスク用インターフェース装置
１０４  ＣＰＵ
１０５  ＲＡＭ
１０６  ＲＯＭ
１０７  コンピュータ用インターフェース装置
１０８  インターネット網
１０９  インターネット用ＬＡＮ（第１の通信回線）
１１２  コンピュータ用インターフェースを備えた接続手段
１１３  イントラネット用ＬＡＮ（第２の通信回線）
２０１  ＣＰＵ
２０２  入出力インターフェース
２０３  ワークＳＲＡＭ（ワーク用スタティックＲＡＭ）
２０５，２０９  ＳＣＳＩコネクタ
２０６，２０８  ＳＣＳＩプロトコルコントローラ
２０７  ＤＭＡコントローラ
２１０  ＳＤＲＡＭ（シンクロナスダイナミックＲＡＭ）
２１１  ＤＭＡ−ｂｕｓ（ＤＭＡバス）
【図１】
2005157682.tif 000003
【図２】
2005157682.tif 000004
【図３】
2005157682.tif 000005
【図４】
2005157682.tif 000006
【図５】
2005157682.tif 000007
【図６】
2005157682.tif 000008
【図７】
2005157682.tif 000009
【図８】
2005157682.tif 000010
【図９】
2005157682.tif 000011
【図１１】
2005157682.tif 000012
【図１２】
2005157682.tif 000013
【図１０】
2005157682.tif 000014