(57)【要約】【課題】ＩｏＴデバイスを収容するネットワークにおける外部からの侵入に対するセキュリティ性を向上させる。【解決手段】ＩｏＴデバイスを含む複数の通信装置を収容する第１のネットワークと接続させる第１の情報処理装置と、第１のネットワークとはアドレス体系が異なる第２のネットワークと接続させる第２の情報処理装置とが、第１の情報処理装置と第１のネットワークとの通信プロトコル及び第２の情報処理装置と第２のネットワークとの通信プロトコルとは異なる専用プロトコルに従ったシリアル通信を行う外部情報受配信装置であって、第１の情報処理装置は、第１のネットワークに収容されるＩｏＴデバイスが収集したデータを受信すると、該受信したデータをシリアル通信により第２の情報処理装置に転送し、第２の情報処理装置は、第１の情報処理装置から転送されたデータを、第２のネットワークに接続された外部装置に転送する。【選択図】図２
2020017821.tif 000002
【特許請求の範囲】
【請求項１】
ＩｏＴデバイスを含む複数の通信装置を収容する第１のネットワークと接続させる第１の情報処理装置と、前記第１のネットワークとはアドレス体系が異なる第２のネットワークと接続させる第２の情報処理装置とが、前記第１の情報処理装置と前記第１のネットワークとの通信プロトコル及び前記第２の情報処理装置と前記第２のネットワークとの通信プロトコルとは異なる専用プロトコルに従ったシリアル通信を行う外部情報受配信装置であって、
前記第１の情報処理装置は、前記第１のネットワークに収容される前記ＩｏＴデバイスが収集したデータを受信すると、該受信したデータを前記シリアル通信により前記第２の情報処理装置に転送し、
前記第２の情報処理装置は、前記第１の情報処理装置から転送された前記データを、前記第２のネットワークに接続された外部装置に転送する
ことを特徴とする外部情報受配信装置。
【請求項２】
前記第１の情報処理装置は、前記ＩｏＴデバイスのデータを受信した際に、該受信したデータのうち削除しても問題のない部分を削除するデータエッジングを更に備え、
当該第１の情報処理装置は、前記データエッジングにより一部が削除された前記データを前記第２の情報処理装置に転送する
ことを特徴とする請求項１に記載の外部情報受配信装置。
【請求項３】
前記第１の情報処理装置は、
前記第１の情報処理装置への接続を許可する前記通信装置を示す情報を含むデバイス情報データベースに基づいて前記第１の情報処理装置と前記通信装置との接続を管理するとともに、前記第１の情報処理装置が実行することを許可するサービスを示す情報を含むサービス情報データベースに基づいて前記第１の情報処理装置において実行するサービスを管理するホワイトリスト管理と、
現在のファイルの情報と、該ファイルと対応するセキュアであることが保証されているファイルの情報とに齟齬がある場合に、前記現在のファイルを前記セキュアであることが保証されているファイルに置換して復旧するとともに、実行中のサービスの情報と、前記サービス情報データベースに登録された前記実行中のサービスの情報とに差異がある場合に、前記実行中のサービスの実行プログラムをセキュアであることが保証されている実行プログラムに置換して復旧する性能監視とを含み、
当該第１の情報処理装置は、予め定められたスケジュールに従って再起動をし、前記再起動をする際に、現在のファイルの情報と、該ファイルと対応するセキュアであることが保証されているファイルの情報とに齟齬が生じているか否かを判定する
ことを特徴とする請求項１に記載の外部情報受配信装置。
【請求項４】
前記第２の情報処理装置は、
前記第２の情報処理装置への接続を許可する前記通信装置を示す情報を含むデバイス情報データベースに基づいて前記第２の情報処理装置と前記外部装置との接続を管理するとともに、前記第２の情報処理装置が実行することを許可するサービスを示す情報を含むサービス情報データベースに基づいて前記第２の情報処理装置において実行するサービスを管理するホワイトリスト管理と、
現在のファイルの情報と、該ファイルと対応するセキュアであることが保証されているファイルの情報とに齟齬がある場合に、前記現在のファイルを前記セキュアであることが保証されているファイルに置換して復旧するとともに、実行中のサービスの情報と、前記サービス情報データベースに登録された前記実行中のサービスの情報とに差異がある場合に、前記実行中のサービスの実行プログラムをセキュアであることが保証されている実行プログラムに置換して復旧する性能監視とを含み、
当該第２の情報処理装置は、予め定められたスケジュールに従って再起動をし、前記再起動をする際に、現在のファイルの情報と、該ファイルと対応するセキュアであることが保証されているファイルの情報とに齟齬が生じているか否かを判定する
ことを特徴とする請求項１に記載の外部情報受配信装置。
【請求項５】
前記第２の情報処理装置は、前記第２のネットワークに接続された前記外部装置から前記第１のネットワークに収容される前記通信装置に対して送信された情報を、前記シリアル通信により前記第１の情報処理装置に転送し、
前記第１の情報処理装置は、第２の情報処理装置から転送された前記情報を、前記第１のネットワークに収容される所定の前記通信装置に転送する
ことを特徴とする請求項１に記載の外部情報受配信装置。
【請求項６】
ＩｏＴデバイスを含む複数の通信装置を収容する第１のネットワークと接続させる第１の情報処理装置と、前記第１のネットワークとはアドレス体系が異なる第２のネットワークと接続させる第２の情報処理装置とを介して、前記第１のネットワークに収容された前記ＩｏＴデバイスから前記第２のネットワークに接続されたサーバ装置にデータを送信するデータ送信方法であって、
前記第１の情報処理装置が前記ＩｏＴデバイスの前記第１の情報処理装置への接続を許可した後、前記ＩｏＴデバイスが前記第１の情報処理装置に前記データを送信し、
前記第１の情報処理装置が、前記第１の情報処理装置と前記第１のネットワークとの通信プロトコル及び前記第２の情報処理装置と前記第２のネットワークとの通信プロトコルとは異なる専用プロトコルに従ったシリアル通信により、前記ＩｏＴデバイスから受信した前記データを前記第２の情報処理装置に転送し、
前記第２の情報処理装置が、前記第１の情報処理装置から受信した前記データを前記サーバ装置に転送する
ことを特徴とするデータ送信方法。
【請求項７】
第１のネットワークと第２のネットワークとを接続する外部情報受配信装置に含まれるコンピュータに、
前記第１のネットワークに収容されるＩｏＴデバイスの接続を許可した後、前記ＩｏＴデバイスが送信したデータを、該コンピュータと前記第１のネットワークとの通信プロトコル及び前記外部情報受配信装置に含まれる他の情報処理装置と前記第２のネットワークとの通信プロトコルとは異なる専用プロトコルに従ったシリアル通信により、前記他の情報処理装置に送信する処理
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部情報受配信装置、データ送信方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、ＩｏＴ（Internet of Things）技術の発展に伴い、インターネット等の通信ネットワークに接続可能な装置（ＩｏＴデバイス）の種類や数が増加している。ＩｏＴデバイスは、一般に、ＬＡＮ（Local Area Network）等のプライベートネットワークに収容され、ＬＡＮとインターネットとを接続するゲートウェイ装置を介して外部の通信機器との通信を行う。これにより、例えば、スマートフォン等の通信機器を利用して屋内に設置されたＩｏＴデバイスを屋外から操作することや、ＩｏＴデバイスのデータをクラウドのサーバ装置にアップロードすること等が可能となり、ネットワークの利用形態の多様化が進んでいる。
【０００３】
ＩｏＴデバイスを含むネットワークシステムでは、セキュリティ性の向上が大きな課題となっている。ＩｏＴデバイスを含むネットワークシステムにおけるセキュリティ性を向上させる技術の１つとして、ＩｏＴのエッジコンピューティングをゲートウェイ装置に適用した通信システムが知られている（例えば、特許文献１を参照）。この種の技術では、ＩｏＴデバイス、ゲートウェイ装置、及び外部のサーバ装置の間でアクセス経路を論理的に分離し、複数のシステムの通信で異なる経路を使用することにより、セキュリティ性を向上させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−１７５２６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＩｏＴデバイスを含むネットワークシステムには、ＩｏＴデバイスを収容するＬＡＮ等のプライベートネットワークの外部からＬＡＮに収容される通信装置に対し各種データを送信するものもある。この種のネットワークシステムにおいては、ゲートウェイ装置を介してＬＡＮ内に侵入されＩｏＴデバイスから外部のサーバ装置に送信するデータの送信先やデータの内容を改変又は改ざんされることへの対策が、大きな課題の１つとなっている。例えば、ヘルスケア業界等における病院内に構築されたＬＡＮ（院内ネットワーク）に収容されたＩｏＴデバイスは、個々のデータでみると価値の低いデータもあるが、データを集約し分析することで新しい価値が生まれる場合がある。このような場面において、ＩｏＴデバイスが収集したデータを外部のサーバ装置に集約する場合があるが、データの送信先が変更されたり、誤ったデータがサーバ装置に集約されたりすると、集約したデータを有効活用することが困難となる。
【０００６】
１つの側面において、本発明は、ＩｏＴデバイスを収容するネットワークにおける外部からの侵入に対するセキュリティ性を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る第１の側面である外部情報受配信装置は、ＩｏＴデバイスを含む複数の通信装置を収容する第１のネットワークと接続させる第１の情報処理装置と、前記第１のネットワークとはアドレス体系が異なる第２のネットワークと接続させる第２の情報処理装置とが、前記第１の情報処理装置と前記第１のネットワークとの通信プロトコル及び前記第２の情報処理装置と前記第２のネットワークとの通信プロトコルとは異なる専用プロトコルに従ったシリアル通信を行う外部情報受配信装置であって、前記第１の情報処理装置は、前記第１のネットワークに収容される前記ＩｏＴデバイスが収集したデータを受信すると、該受信したデータを前記シリアル通信により前記第２の情報処理装置に転送し、前記第２の情報処理装置は、前記第１の情報処理装置から転送された前記データを、前記第２のネットワークに接続された外部装置に転送する。
【０００８】
また、前記外部情報受配信装置における前記第１の情報処理装置は、前記ＩｏＴデバイスのデータを受信した際に、該受信したデータのうち削除しても問題のない部分を削除するデータエッジングを更に備え、当該第１の情報処理装置は、前記データエッジングにより一部が削除された前記データを前記第２の情報処理装置に転送する。
【０００９】
本発明に係る第２の側面であるデータ送信方法は、ＩｏＴデバイスを含む複数の通信装置を収容する第１のネットワークと接続させる第１の情報処理装置と、前記第１のネットワークとはアドレス体系が異なる第２のネットワークと接続させる第２の情報処理装置とを介して、前記第１のネットワークに収容された前記ＩｏＴデバイスから前記第２のネットワークに接続されたサーバ装置にデータを送信するデータ送信方法であって、前記第１の情報処理装置が前記ＩｏＴデバイスの前記第１の情報処理装置への接続を許可した後、前記ＩｏＴデバイスが前記第１の情報処理装置に前記データを送信し、前記第１の情報処理装置が、前記第１の情報処理装置と前記第１のネットワークとの通信プロトコル及び前記第２の情報処理装置と前記第２のネットワークとの通信プロトコルとは異なる専用プロトコルに従ったシリアル通信により、前記ＩｏＴデバイスから受信した前記データを前記第２の情報処理装置に転送し、前記第２の情報処理装置が、前記第１の情報処理装置から受信した前記データを前記サーバ装置に転送するデータ送信方法である。
【００１０】
本発明に係る第３の側面であるプログラムは、第１のネットワークと第２のネットワークとを接続する外部情報受配信装置に含まれるコンピュータに、前記第１のネットワークに収容されるＩｏＴデバイスの接続を許可した後、前記ＩｏＴデバイスが送信したデータを、該コンピュータと前記第１のネットワークとの通信プロトコル及び前記外部情報受配信装置に含まれる他の情報処理装置と前記第２のネットワークとの通信プロトコルとは異なる専用プロトコルに従ったシリアル通信により、前記他の情報処理装置に送信する処理を含むプログラムである。
【００１１】
また、前記プログラムは、前記コンピュータで保持しているファイルの情報と、該ファイルと対応する、セキュアであることが保証されているファイルの情報とに齟齬がある場合に、前記現在のファイルを前記セキュアであることが保証されているファイルに置換して復旧する処理と、前記コンピュータで実行中のサービスの情報と、前記コンピュータが実行することを許可したサービスを示す情報が登録されたサービス情報データベースに登録された前記実行中のサービスの情報との間に差異がある場合に、前記実行中のサービスの実行プログラムをセキュアであることが保証されている実行プログラムに置換して復旧する処理と、を更に含む。
【発明の効果】
【００１２】
本発明によれば、ＩｏＴデバイスを収容するネットワークにおける外部からの侵入に対するセキュリティ性を向上させることが可能となる。
【図面の簡単な説明】
【００１３】
【図１】一実施形態に係るネットワークシステムの構成例を示す図である。
【図２】一実施形態に係る外部情報受配信装置の機能的構成を示す図である。
【図３】デバイス情報ＤＢ及びサービス情報ＤＢの例を示す図である。
【図４】デバイス情報の登録方法を説明するフローチャートである。
【図５】一実施形態に係る外部情報受配信装置及びＩｏＴデバイスの動作を説明するシーケンス図である。
【図６】ＩｏＴデバイスのデータアップロード処理及び第１の情報処理装置のデータ転送処理の内容を説明するシーケンス図である。
【図７】第１の情報処理装置が再起動時に行う処理を説明するフローチャートである。
【図８】第１の情報処理装置が行うサービスに対する監視処理を説明するフローチャートである。
【図９】コンピュータのハードウェア構成を示す図である。
【発明を実施するための形態】
【００１４】
図１は、一実施形態に係るネットワークシステムの構成例を示す図である。図１には、院内ネットワーク２と、サーバ装置１１とを含むネットワークシステム１を示している。
【００１５】
院内ネットワーク２は、病院内に設置された複数の端末装置３（３Ａ，３Ｂ）、外部情報受配信装置４、及び複数のＩｏＴデバイス７を収容するプライベートネットワークである。院内ネットワーク２における複数の端末装置３、外部情報受配信装置４、及び複数のＩｏＴデバイス７には、それぞれ、院内ネットワーク２の外部に存在するインターネット等の通信ネットワーク１０とは異なるアドレス体系（プライベートアドレス）によるアドレスが割り当てられている。
【００１６】
複数の端末装置３（３Ａ，３Ｂ）は、それぞれ、医師等の医療従事者が使用するコンピュータ等の情報処理装置である。端末装置３は、例えば、患者の診察記録（カルテ）の入力、保管、及び閲覧等に利用される。また、複数の端末装置３（３Ａ，３Ｂ）のいずれか（例えば端末装置３Ａ）は、患者の診察記録を含む各種データを蓄積するサーバ装置であってもよい。
【００１７】
外部情報受配信装置４は、院内ネットワーク２と、該院内ネットワーク２の外部に存在する通信ネットワーク１０とを接続するゲートウェイ装置である。本実施形態に係るネットワークシステム１における外部情報受配信装置４は、プライベート側（院内ネットワーク２側）の無線通信機器と無線通信が可能な装置とする。
【００１８】
複数のＩｏＴデバイス７（７Ａ，７Ｂ）は、それぞれ、所望のデータを収集するセンサと通信ユニットとを含む通信装置である。例えば、ＩｏＴデバイス７Ａは、病院内の温度を計測する温度センサと、ＢＬＥ（Bluetooth Low Energy。Bluetoothは登録商標）規格に準拠した無線通信が可能な無線通信ユニットとを含む。また、例えば、ＩｏＴデバイス７Ｂは、医療機器の動作状態をモニターするセンサと、Ｉ２Ｃ（Inter-Integrated Circuit）バス規格に準拠した通信が可能な通信ユニットとを含む。
【００１９】
本実施形態に係るネットワークシステム１におけるサーバ装置１１は、端末装置３に入力された各種データ及びＩｏＴデバイス７が収集した各種データを集約する装置である。サーバ装置１１に集約した各種データは、バックアップとして保管するだけでなく、例えば、他の病院の院内ネットワークの利用者（医療従事者等）との患者の診察記録の共有、病院内の環境改善等に利用される。
【００２０】
この種のネットワークシステム１では、例えば、院内ネットワーク２の外部から、端末装置１２が通信ネットワーク１０を介して院内ネットワーク２に不正にアクセスし、端末装置３内の各種データやプログラム、ＩｏＴデバイス７が収集した各種データを改変又は改ざんする恐れがある。例えば、複数のＩｏＴデバイス７のそれぞれが収集するデータは、個別にみると価値の低いデータもあるが、改変又は改ざんされたデータが混入すると、サーバ装置１１に集約したデータを有効利用することが困難となる。
【００２１】
図２は、一実施形態に係る外部情報受配信装置の機能的構成を示す図である。
【００２２】
図２に示すように、本実施形態に係る外部情報受配信装置４は、第１の情報処理装置５と、第２の情報処理装置６とを含む。第１の情報処理装置５は、院内ネットワーク２側の装置であり、院内ネットワーク２に収容される複数の端末装置３及び複数のＩｏＴデバイス７と接続される（図１を参照）。第２の情報処理装置６は、外部ネットワーク側の装置であり、通信ネットワーク１０と接続される（図１を参照）。
【００２３】
第１の情報処理装置５は、ソフトウェア構成部５１と、通信デバイス５９とを含む。
【００２４】
ソフトウェア構成部５１は、ＯＳ（Operating System）５８を含む各種ソフトウェアにより実現される機能である。第１の情報処理装置５のソフトウェア構成部５１は、ビジネスロジック（モバイルサーバプログラム）５２、デバイス制御５３、通信管理５４、ホワイトリスト管理５５、性能監視５６、及びＯＳ ５８の各機能を備える。
【００２５】
ビジネスロジック５２は、ＯＳ ５８のもとで動作するものであり、デバイス制御管理５２ａ、通信管理５２ｂ、データエッジング５２ｃ、及び共通処理５２ｄの各機能を含む。デバイス制御管理５２ａは、デバイス制御５３によるデバイスの制御を管理する。通信管理５２は、第２の情報処理装置６との間での電文の送受信等の各種通信を管理する。データエッジング５２ｃは、ＩｏＴデバイス７から受信したデータに対するデータエッジング処理（言い換えると、データにおける削除しても問題のない部分を削除してサーバ装置１１に送信するデータのデータ量を削減する処理）を行う。共通処理５２ｄは、電文の受信及び生成、各種データの管理等を行う。なお、第１の情報処理装置５におけるビジネスロジック（モバイルサーバプログラム）５２は、例えば、図示していない、患者データ管理、表示データ管理、患者データ、受け付け情報取得プロセス等の機能を含んでもよい。患者データ管理は、患者に関するデータを管理する。表示データ管理は、例えば、病院内に設置された患者案内表示盤等に表示するデータを管理する。患者データは、患者に関するデータを格納する。
【００２６】
デバイス制御５３は、第１の情報処理装置５に含まれるデバイス、及び第１の情報処理装置５と接続されるデバイスを制御する。デバイス制御５３は、制御モジュール５３ａを含む複数の制御モジュールを備える。デバイス制御５３が備える複数の制御モジュールの１つは、第１の情報処理装置５に含まれる通信デバイス５９を制御する。通信デバイス５９は、第２の情報処理装置６に含まれる通信デバイス６９との間で、専用プロトコルに従ったシリアル通信を行う。ここで、通信デバイス５９，６９間の通信に用いる専用プロトコルは、第１の情報処理装置５と院内ネットワーク２との通信プロトコル（例えばＴＣＰ／ＩＰ及びＢＬＥ等）及び第２の情報処理装置６と通信ネットワーク１０との通信プロトコル（例えばＴＣＰ／ＩＰ等）とは異なるプロトコルである。また、デバイス制御５３が備える制御モジュールには、第１の情報処理装置５と接続される複数のＩｏＴデバイス７（７Ａ，７Ｂ）のそれぞれを制御する制御モジュールが含まれる。
【００２７】
通信管理５４は、送受信管理５４ａ及びＬＡＮ ５４ｂの一般的な機能を制御し、院内システム２との通信、及び第２の情報処理装置６との通信を管理する。
【００２８】
ホワイトリスト管理５５は、第１の情報処理装置５への接続を許可するデバイス、及び第１の情報処理装置５において実行されることを許可するサービスを、ホワイトリスト方式で管理する。ホワイトリスト管理５５は、ホワイトリスト型のデバイス情報ＤＢ ５５ａ、及びサービス情報ＤＢ ５５ｂを含む。デバイス情報ＤＢ ５５ａには、第１の情報処理装置５への接続を許可するデバイスを示す情報が格納されている。サービス情報ＤＢ ５５ｂには、第１の情報処理装置５が実行することを許可するサービス（実行ファイル）を示す情報が格納されている。また、ホワイトリスト管理５５は、第１の情報処理装置５において実行しているサービス（実行ファイル）についての情報と、サービス情報ＤＢ ５５ｂに登録された情報とに差異がある場合に、当該サービス（実行ファイル）を差異のない状態に復旧する。
【００２９】
性能監視５６は、トラフィック、再起動後の状態、及びアップデート後の状態等、第１の情報処理装置５の性能に関する監視をする。性能監視５６は、例えば、第１の情報処理装置５にインストール済みのファイルについての現在の情報とインストール時の情報とに齟齬がある場合に、インストール済みのファイルの情報がインストール時の情報となるよう復旧する。
【００３０】
また、第２の情報処理装置６は、第１の情報処理装置５と同様、ソフトウェア構成部６１と、通信デバイス６９とを含む。
【００３１】
ソフトウェア構成部６１は、ＯＳ（Operating System）６８を含む各種ソフトウェアにより実現される機能である。第２の情報処理装置６のソフトウェア構成部６１は、ビジネスロジック（外部配信サーバプログラム）６２、デバイス制御６３、通信管理６４、ホワイトリスト管理６５、性能監視６６、及びＯＳ ６８の各機能を備える。
【００３２】
ビジネスロジック６２は、ＯＳ ６８のもとで動作するものであり、デバイス制御管理６２ａ、通信管理６２ｂ、及び共通処理６２ｄを含む。デバイス制御管理６２ａは、デバイス制御６３によるデバイスの制御を管理する。通信管理６２ｂは、第１の情報処理装置５との間での電文の送受信等の各種通信を管理する。共通処理６２ｄは、電文の受信及び生成、各種データの管理等を行う。なお、第２の情報処理装置６におけるビジネスロジック（外部配信サーバプログラム）６２は、例えば、図示していない、メール定型文、及び外部情報連携プロセス等の機能を含んでもよい。メール定型文は、サーバ装置１１等へ送信するメールの定形文を管理する。外部情報連携プロセスは、例えば、第１の情報処理装置５からの依頼に基づいてサーバ装置１１へメール依頼電文を送信する機能、及びサーバ装置１１からアクセス情報を受信して第１の情報処理装置５に通知する機能を含む。
【００３３】
デバイス制御６３は、第２の情報処理装置６に含まれるデバイス、及び第２の情報処理装置６と接続されるデバイスを制御する。デバイス制御６３は、制御モジュール６３ａを含む複数の制御モジュールを備える。デバイス制御６３が備える複数の制御モジュールの１つは、第２の情報処理装置６に含まれる通信デバイス６９を制御する。通信デバイス６９は、第１の情報処理装置５に含まれる通信デバイス５９との間で、専用プロトコルに従ったシリアル通信を行う。
【００３４】
通信管理６４は、送受信管理６４ａ、グローバルＩＰ ６４ｂ，及びＷＡＮ（Wide Area Network）６４ｃの各機能を制御し、通信ネットワーク１０との通信、及び第１の情報処理装置５との通信を管理する。ここで、グローバルＩＰ ６４ｂは、例えば、通信ネットワーク１０のアドレス体系に従って外部情報受配信装置４に割り当てられるグローバルＩＰアドレスである。
【００３５】
ホワイトリスト管理６５は、第２の情報処理装置６への接続を許可するデバイス、及び第２の情報処理装置６において実行されることを許可するサービスを、ホワイトリスト方式で管理する。ホワイトリスト管理６５は、ホワイトリスト型のデバイス情報ＤＢ ６５ａ、及びサービス情報ＤＢ ６５ｂを含む。デバイス情報ＤＢ ６５ａには、第２の情報処理装置６への接続を許可するデバイスを示す情報が格納されている。サービス情報ＤＢ ６５ｂには、第２の情報処理装置６が実行することを許可するサービス（実行ファイル）を示す情報が格納されている。また、ホワイトリスト管理６５は、第２の情報処理装置６において実行しているサービス（実行ファイル）についての情報と、サービス情報ＤＢ ６５ｂに登録された情報とに差異がある場合に、当該サービス（実行ファイル）を差異のない状態に復旧する。
【００３６】
性能監視６６は、トラフィック、再起動後の状態、及びアップデート後の状態等、第２の情報処理装置６の性能に関する監視をする。性能監視５６は、例えば、第２の情報処理装置６にインストール済みのファイルについての現在の情報とインストール時の情報とに齟齬がある場合に、インストール済みのファイルの情報がインストール時の情報となるよう復旧する。
【００３７】
このように、本実施形態に係る外部情報受配信装置４は、院内ネットワーク２側の第１の情報処理装置５と、外部ネットワーク側の第２の情報処理装置６との間で、専用プロトコルに従ったシリアル通信を行う。このため、例えば、院内ネットワーク２の外部から、端末装置１２（図１を参照）が院内ネットワーク２内への不正なアクセスを試みた場合、第１の情報処理装置５への侵入を遮断することが可能となる。
【００３８】
また、第１の情報処理装置５及び第２の情報処理装置６は、それぞれ、ホワイトリスト型のデバイス情報ＤＢ ５５ａ及び６５ａに基づいてデバイスの接続を許可するとともに、ホワイトリスト型のサービス情報ＤＢ ５５ｂ及び６５ｂに基づいてサービスの実行を許可する。このため、本実施形態に係る外部情報受配信装置４は、院内ネットワーク２への不正なアクセスをより確実に防止することが可能となる。
【００３９】
図３は、デバイス情報ＤＢ及びサービス情報ＤＢの例を示す図である。図３には、第１の情報処理装置５におけるホワイトリスト管理５５のデバイス情報ＤＢ ５５ａ及びサービス情報ＤＢ ５５ｂの例を示している。
【００４０】
第１の情報処理装置５は、上記のように、外部情報受配信装置４における院内ネットワーク２側の情報処理装置であり、院内ネットワーク２に収容される（属する）複数の端末装置３及び複数のＩｏＴデバイス７と接続される。このため、第１の情報処理装置５におけるホワイトリスト管理５６のデバイス情報ＤＢ ５５ａには、院内ネットワーク２に収容される複数の端末装置３及び複数のＩｏＴデバイス７を示す情報が格納される（登録される）。デバイス情報ＤＢ ５５ａに格納するデバイスの情報（以下「デバイス情報」ともいう）は、図３のように、デバイス名、アドレス、登録日時、及び有効性を含む。図３のデバイス情報ＤＢ ５５ａにおけるＩＤは、格納したデバイス情報を識別するためにデバイス情報毎に割り当てた番号である。
【００４１】
デバイス情報ＤＢ ５５ａにおけるデバイス名は、例えば、院内ネットワーク２に収容される複数のデバイスのそれぞれを識別するために各デバイスに設定されたデバイスの名称（識別情報）である。デバイス情報ＤＢ ５５ａにおけるアドレスは、例えば、院内ネットワーク２に収容される各デバイスに割り当てられる、院内ネットワーク２内のみで有効なプライベートアドレス（ローカルアドレス）である。デバイス情報ＤＢ ５５ａにおける登録日時は、デバイス情報をデバイス情報ＤＢ ５５ａに登録した日時である。デバイス情報ＤＢ ５５ａにおける有効性は、デバイス情報ＤＢ ５５ａに基づく第１の情報処理装置５へのデバイスの接続の管理において該デバイス情報を有効とするか否かを示す情報である。すなわち、第１の情報処理装置５は、デバイス情報がデバイス情報ＤＢ ５５ａに登録されており、かつ有効性が「有効」であるデバイスの接続のみを許可する。
【００４２】
一方、第１の情報処理装置５におけるホワイトリスト管理５５のサービス情報ＤＢ ５５ｂには、第１の情報処理装置５が実行することを許可するサービスを示す情報が格納される（登録される）。サービス情報ＤＢ ５５ｂに格納するサービスの情報（以下「サービス情報」ともいう）は、図３のように、サービス名、実行ファイル名、インストールした日時、及び有効性を含む。図３のサービス情報ＤＢ ５５ｂにおけるＩＤは、格納したサービス情報を識別するためにサービス情報毎に割り当てた番号である。
【００４３】
サービス情報ＤＢ ５５ｂにおけるサービス名は、第１の情報処理装置５で実行することが許可されているか否かによらず、各種サービスのそれぞれに設定されているサービスの名称（識別情報）である。サービス情報ＤＢ ５５ｂにおける実行ファイル名は、例えば、サービスを提供する際に第１の情報処理装置５が実行するプログラムのファイル名である。サービス情報ＤＢ ５５ｂにおけるインストールした日時は、プログラムを第１の情報処理装置５にインストールした日時である。サービス情報ＤＢ ５５ｂにおける有効性は、サービス情報ＤＢ ５５ｂに基づくサービスの実行可否の管理においてサービス情報を有効とするか否かを示す情報である。すなわち、第１の情報処理装置５は、サービス情報がサービス情報ＤＢ ５５ｂに登録されており、かつ有効性が「有効」であるサービスのみを実行する。
【００４４】
このように、第１の情報処理装置５は、デバイス情報ＤＢ ５５ａにデバイス情報が登録されているデバイスであっても、有効性が「有効」ではない場合には、該デバイスの接続を許可しない。同様に、第１の情報処理装置５は、サービス情報ＤＢ ５５ｂにサービス情報が登録されているサービスであっても、有効性が「有効」ではない場合には、該サービスを実行しない。
【００４５】
また、図を参照した説明は省略するが、第２の情報処理装置６におけるホワイトリスト管理６５のデバイス情報ＤＢ ６５ａ及びサービス情報ＤＢ ６５ｂには、それぞれ、図３のデバイス情報ＤＢ ５５ａ及びサービス情報ＤＢ ６５ｂと同様の情報を格納する（登録する）。
【００４６】
次に、図４を参照し、第１の情報処理装置５のデバイス情報ＤＢ ５５ａへのデバイス情報の登録方法を説明する。
【００４７】
図４は、デバイス情報の登録方法を説明するフローチャートである。
【００４８】
第１の情報処理装置５のデバイス情報ＤＢ ５５ａにデバイス情報を登録する場合、図４のように、まず、第１の情報処理装置５は、管理者の認証処理を行う（ステップＳ１１）。ここで、管理者は、院内ネットワーク２（外部情報受配信装置４）の管理者である。
【００４９】
ステップＳ１１において管理者の認証に成功すると、第１の情報処理装置５は、次に、第１の情報処理装置５のデバイス情報ＤＢ ５５ａへの書込権を有効に変更する（ステップＳ１２）。ステップＳ１２の処理は、例えば、第１の情報処理装置５のホワイトリスト管理５５が行う。
【００５０】
次に、第１の情報処理装置５は、デバイス情報の登録依頼を受け付ける（ステップＳ１３）。
【００５１】
次に、第１の情報処理装置５は、デバイス情報ＤＢ ５５ａへの書込権についての認証処理を行い（ステップＳ１４)、認証に成功すると、デバイス情報ＤＢ ５５ａにデバイス情報を登録する（ステップＳ１５）。ステップＳ１４及びＳ１５の処理は、ホワイトリスト管理５５が行う。
【００５２】
デバイス情報ＤＢ ５５ａへのデバイス情報の登録が完了すると、第１の情報処理装置５は、デバイス情報ＤＢ ５５ａへの書込権を無効に変更し（ステップＳ１６）、デバイス情報を登録する処理を終了する。
【００５３】
このように、本実施形態に係る第１の情報処理装置５では、管理者の認証（ステップＳ１１）及び書込権の認証（ステップＳ１４）の２つの認証に成功した場合にのみ、デバイス情報ＤＢ ５５ａにデバイス情報を登録することが可能となる。このため、例えば、管理者権限のない利用者等により、意図しない（接続を許可していない）デバイス情報がデバイス情報ＤＢ ５５ａに登録される事態を防止することが可能となる。
【００５４】
なお、図を参照した説明は省略するが、第１の情報処理装置５のサービス情報ＤＢ ５５ｂへのサービス情報の追加（登録）も、上記の手順と同様の手順で行う。また、第２の情報処理装置６のデバイス情報ＤＢ ６５ａへのデバイス情報の追加（登録）、及びサービス情報ＤＢ ６５ｂへのサービス情報の追加（登録）も、上記の手順と同様の手順で行う。このため、管理者権限のない利用者等により、意図しない情報がサービス情報ＤＢ ５５ｂ、デバイス情報ＤＢ ６５ａ、及びサービス情報ＤＢ ６５ｂのそれぞれに登録される事態を防止することが可能となる。
【００５５】
なお、図４のステップＳ１１〜Ｓ１６の処理は、デバイス情報ＤＢ ５５ａ及び６５ａのそれぞれにデバイス情報を登録する処理の一例に過ぎない。デバイス情報を登録する処理は、図４のフローチャートに沿った処理に限らず、適宜変更可能である。同様に、サービス情報ＤＢ ５５ｂ及び６５ｂのそれぞれにサービス情報を登録する処理は、適宜変更可能である。
【００５６】
第１の情報処理装置５のデバイス情報ＤＢ ５５ａ及びサービス情報５５ｂ、並びに第２の情報処理装置６のデバイス情報ＤＢ ６５ａ及びサービス情報６５ｂのそれぞれに情報を登録すると、外部情報受配信装置４をゲートウェイ装置として動作させることが可能となる。ゲートウェイ装置として動作する外部情報受発振装置４は、上記のように、院内ネットワーク２に収容される複数のＩｏＴデバイス７のそれぞれが収集した各種データを院内ネットワーク２の外部に設置されたサーバ装置１１等に送信する。以下、図５及び図６を参照し、本実施形態のネットワークシステム１における外部情報受配信装置４及びＩｏＴデバイス７の動作について説明する。
【００５７】
図５は、一実施形態に係る外部情報受配信装置及びＩｏＴデバイスの動作を説明するシーケンス図である。図６は、ＩｏＴデバイスのデータアップロード処理及び第１の情報処理装置のデータ転送処理の内容を説明するシーケンス図である。
【００５８】
本実施形態に係るネットワークシステム１では、例えば、図５のように、予め定めた第１の時刻Ｔ１が到来すると、外部情報受配信装置４における第１の情報処理装置５が各種プログラムを起動する（ステップＳ５１）とともに、第２の情報処理装置６が各種プログラムを起動する（ステップＳ６１）。ステップＳ５１では、第１の情報処理装置５は、ＯＳ ５８を起動した後、ソフトウェア構成部５１が行う各種の処理を含むプログラムを起動する。また、ステップＳ６１では、第２の情報処理装置６は、ＯＳ ６８を起動した後、ソフトウェア構成部６２が行う各種の処理を含むプログラムを起動する。
【００５９】
その後、第１の情報処理装置５及び第２の情報処理装置６は、それぞれ、通信ポートをオープンし（ステップＳ５２及びＳ６２）、互いに生死確認（通信可能な状態であるか否かの確認）を行う（ステップＳ５３及びＳ６３）。このとき、第１の情報処理装置５及び第２の情報処理装置６は、専用プロトコルに従ったシリアル通信により生死確認を行う。
【００６０】
ステップＳ５３及びＳ６３により互いに通信可能な状態であることを確認すると、第１の情報処理装置５は、接続開始電文を生成して第２の情報処理装置６に送信する（ステップＳ５４）。接続開始電文は、第１の情報処理装置５におけるビジネスロジック（モバイルサーバプログラム）５２の共通処理５２ｄが生成する。接続開始電文は、シリアル通信により第１の情報処理装置５の通信デバイス５９から第２の情報処理装置６の通信デバイス６９に送信される。
【００６１】
接続開始電文を受信した第２の情報処理装置６は、所定の応答処理を行い、応答電文を生成して第１の情報処理装置５に返信する（ステップＳ６４）。応答電文は、第２の情報処理装置６におけるビジネスロジック（外部配信サーバプログラム）６２の共通処理６２ｄが生成する。応答電文は、シリアル通信により第２の情報処理装置６の通信デバイス６９から第１の情報処理装置５の通信デバイス５９に送信される。
【００６２】
応答電文を受信すると、第１の情報処理装置５は、第２の情報処理装置６とのコネクションを確立する（ステップＳ５５）。以上の処理を終えると、外部情報受配信装置４は、ゲートウェイ装置としての動作を開始する。以降、外部情報受配信装置４は、例えば、院内ネットワーク２に収容される端末装置３及びＩｏＴデバイス７から外部のサーバ装置１１へのデータの送信すること、及び端末装置３がサーバ装置１１のデータを取得すること等が可能となる。
【００６３】
第１の情報処理装置５と第２の情報処理装置６とのコネクションが確立した後、例えば、予め定めた第２の時刻Ｔ２が到来すると、ＩｏＴデバイス７は、自身が備えるセンサにより所定のデータを収集しサーバ装置１１に送信するデータアップロード処理（ステップＳ７）を行う。このとき、ＩｏＴデバイス７が収集したデータは、まず、第１の情報処理装置５に送信される。このため、ＩｏＴデバイス７がデータアップロード処理を実行すると、第１の情報処理装置５は、ＩｏＴデバイス７が送信したデータを第２の情報処理装置６に転送するデータ転送処理（ステップＳ５６）を行う。
【００６４】
なお、ＩｏＴデバイス７がデータアップロード処理を開始すると、第１の情報処理装置５は、ＩｏＴデバイス７のデバイス情報と、デバイス情報ＤＢ ５５ａに登録されたデバイス情報とを照合し、ＩｏＴデバイス７が接続を許可されたデバイスであるか否かを判定する。そして、ＩｏＴデバイス７が接続を許可されたデバイスであると判定した場合にのみ、第１の情報処理装置５は、ＩｏＴデバイス７が送信したデータを第２の情報処理装置６に転送する。ＩｏＴデバイス７のデータアップロード処理（ステップＳ７）及び第１の情報処理装置５のデータ転送処理（ステップＳ５６）の具体例については、後述する。
【００６５】
ＩｏＴデバイス７が送信したデータが第１の情報処理装置５から第２の情報処理装置６に転送されると、第２の情報処理装置６は、転送されたデータをサーバ装置１１に向けて送信する（ステップＳ６６）。ステップＳ６６の処理では、第２の情報処理装置６は、例えば、グローバルＩＰ ６４ｂを送信元のアドレスとして第１の情報処理装置５から受信したデータをパケット化し、サーバ装置１１に向けて送信する。サーバ装置１１は、第２の情報処理装置６が送信したデータを受信すると、該データを記憶装置に格納する（Ｓ１１０）。
【００６６】
ＩｏＴデバイス７からサーバ装置１１へのデータのアップロードが終了した後、予め定めた第３の時刻Ｔ３が到来すると、第１の情報処理装置５及び第２の情報処理装置６は、互いに所定の電文を送受信してコネクションを切断する（ステップＳ５７及びＳ６７）。
【００６７】
コネクションが切断されると、第１の情報処理装置５は、実行している各種プログラムを終了し（ステップＳ５８）、各種プログラムを再起動する（ステップＳ５９）。同様に、コネクションが切断されると、第２の情報処理装置６は、実行している各種プログラムを終了し（ステップＳ６８）、各種プログラムを再起動する（ステップＳ６９）。各種プログラムを再起動した後、第１の情報処理装置５はステップＳ５２以降の処理を行い、第２の情報処理装置６はステップＳ６２以降の処理を行う。その後、外部情報受配信装置４は、予め定めた時刻が到来する毎に、第１の情報処理装置５及び第２の情報処理装置６の各種プログラムを再起動する。第１の情報処理装置５及び第２の情報処理装置６の各種プログラムを再起動する時刻は、適宜設定すればよい。例えば、１日１回、所定の時刻が到来したときに、第１の情報処理装置５及び第２の情報処理装置６の各種プログラムを再起動するよう設定する。
【００６８】
なお、第１の情報処理装置５と第２の情報処理装置６とのコネクションが確立してから各種プログラムを再起動する時刻Ｔ３が到来するまでの期間、１個のＩｏＴデバイス７は、複数回、データアップロード処理（ステップＳ７）を行うことがある。また、院内ネットワーク２に複数のＩｏＴデバイス７が収容される場合、当該複数のＩｏＴデバイス７は、それぞれ、所定のタイミングでデータアップロード処理（ステップＳ７）を行う。このため、複数のＩｏＴデバイス７のそれぞれがデータアップロード処理を実行する毎に、第１の情報処理装置５及び第２の情報処理装置６はデータを転送する処理（ステップＳ５６及びＳ６６）を行う。
【００６９】
このように、本実施形態に係るネットワークシステム１では、外部情報受配信装置４が動作している期間、院内ネットワーク２に収容されるＩｏＴデバイス７は、所定の時刻が到来する毎に、所定のデータを収集して第１の情報処理装置５にアップロードする。このときＩｏＴデバイス７が行うデータアップロード処理（ステップＳ７）及び第１の情報処理装置５が行うデータ転送処理（ステップＳ５６）の一例を、図６を参照して説明する。図６は、ＩｏＴデバイスのデータアップロード処理及び第１の情報処理装置のデータ転送処理の内容を説明するシーケンス図である。なお、図６に示したＩｏＴデバイス７は、院内ネットワーク２に収容される通信装置の１つであり、上記のように、デバイス情報がデバイス情報ＤＢ ５５ａに登録されているとする。
【００７０】
ＩｏＴデバイス７は、所定の時刻が到来すると、データアップロード処理（ステップＳ７）として、例えば、図６のステップＳ７１〜Ｓ７５のような処理を行う。データアップロード処理を開始したＩｏＴデバイス７は、まず、デバイス名及び割り当てられているアドレスを含む自身のデバイス情報を第１の情報処理装置５に送信する（ステップＳ７１）。
【００７１】
第１の情報処理装置５は、ＩｏＴデバイス７のデバイス情報を受信すると、データ転送処理（ステップＳ５６）として、例えば、図６のステップＳ５６１〜Ｓ５６４の処理を行う。データ転送処理を開始した第１の情報処理装置５は、まず、ＩｏＴデバイス７から受信したデバイス情報と、デバイス情報ＤＢ ５５ａに登録されたデバイス情報とを照合し、照合結果に基づいて接続を許可するか否かの通知をＩｏＴデバイス７に送信する（ステップＳ５６１）。ＩｏＴデバイス７から受信したデバイス情報がデバイス情報ＤＢ ５５ａに登録されている場合、第１の情報処理装置５は、接続を許可する通知をＩｏＴデバイス７に送信する。一方、ＩｏＴデバイス７から受信したデバイス情報がデバイス情報ＤＢ ５５ａに登録されていない場合、第１の情報処理装置５は、接続を許可しない通知をＩｏＴデバイス７に送信する。なお、図６のシーケンスにおけるＩｏＴデバイス７は、院内ネットワーク２に収容される通信装置の１つであり、上記のように、デバイス情報がデバイス情報ＤＢ ５５ａに登録されている。このため、第１の情報処理装置５は、ＩｏＴデバイス７に接続を許可する通知を送信する。
【００７２】
第１の情報処理装置５からの通知を受信すると、ＩｏＴデバイス７は、自身が備えるセンサにより収集したデータを第１の情報処理装置５に送信するデータ送信処理（ステップＳ７２〜Ｓ７５）を行う。図６には、ＩｏＴデバイス７が行うデータ送信処理の一例として、１回のデータアップロード処理においてデータを６０回送信するループ処理を示している。
【００７３】
データ送信処理（ループ処理）における始端（ステップＳ７２）では、ＩｏＴデバイス７は、例えば、現在行っているデータ送信処理において次にデータを第１の情報処理装置５に送信する処理が何回目となるかを計数する。この場合、ＩｏＴデバイス７は、例えば、１回目のループ処理におけるステップＳ７２の処理でデータの送信回数を示す変数ｔの初期値を１とし、以後、処理がステップＳ７２に戻る毎に変数ｔに１を加算する。
【００７４】
次に、ＩｏＴデバイス７は、自身が備えるセンサが出力するデータを１秒間分読み取り（ステップＳ７３）、読み取ったデータを第１の情報処理装置５に送信する（ステップＳ７４）。
【００７５】
その後、ＩｏＴデバイス７は、データ送信処理（ループ処理）における終端（ステップＳ７５）で、現在行っているデータ送信処理におけるデータの送信回数が６０回以上（すなわちｔ≧６０）となったか否かを判定する。データの送信回数が５９回以下（ｔ＜６０）である場合、ＩｏＴデバイス７はステップＳ７２以降の処理を繰り返す。一方、データの送信回数が６０回以上となった場合、ＩｏＴデバイス７はステップＳ７２〜Ｓ７５のデータ送信処理を終了し、データアップロード処理（ステップＳ７）を終了する。
【００７６】
ここで、第１の情報処理装置５が行うデータ転送処理（ステップＳ５６）の説明に戻る。第１の情報処理装置５は、ステップＳ５６１の処理において接続を許可する通知をＩｏＴデバイス７に送信した場合には、ＩｏＴデバイス７からのデータを受信可能な状態で待機する。そして、ＩｏＴデバイス７がデータ送信処理（ステップＳ７２〜Ｓ７５）を行っている間、第１の情報処理装置５は、ＩｏＴデバイス７からデータを受信する毎に、受信したデータをメモリに展開する（ステップＳ５６２）。第１の情報処理装置５は、ＩｏＴデバイス７からデータを６０回受信すると、ステップＳ５６２の処理を終了し、次に、データエッジング処理（ステップＳ５６３）を行う。
【００７７】
ステップＳ５６３のデータエッジング処理は、例えば、第１の情報処理装置５のデータエッジング５２ｃが行う。データエッジング５２ｃは、ＩｏＴデバイス７から受信してメモリへ展開したデータのうち削除しても問題のない部分を削除し、サーバ装置１１に転送するデータのデータ量を削減する。例えば、データエッジング５２ｃは、ＩｏＴデバイス７から受信したデータのうち日時以外にデータ変化がないデータは最後の１レコードを残してメモリから削除する。
【００７８】
データエッジング処理を終えると、第１の情報処理装置５は、メモリのデータを第２の情報処理装置６に転送し（ステップＳ５６４）、データ転送処理（ステップＳ５６）を終了する。このとき、第１の情報処理装置５から第２の情報処理装置６へのデータの転送は、上記のように、専用プロトコルに従ったシリアル通信により行われる。第２の情報処理装置６は、ＩｏＴデバイスからのデータを受信すると、受信したデータを、通信ネットワーク７を介してサーバ装置に転送する。
【００７９】
このように、本実施形態の外部情報受配信装置４では、ＩｏＴデバイス７からのデータを受信した第１の情報処理装置５が、受信したデータから削除しても問題のない部分を削除するデータエッジング処理を行う。このため、本実施形態の外部情報受配信装置４では、第１の情報処理装置５から第２の情報処理装置６を介してサーバ装置１１等に送信するデータのデータ量を少なくすることが可能となり、トラフィックの増大等による遅延を防ぐことが可能となる。
【００８０】
また、本実施形態の外部情報受配信装置４では、第１の情報処理装置５と第２の情報処理装置６との間の通信を、専用プロトコルに従ったシリアル通信で行う。このため、本実施形態の外部情報受配信装置４では、例えば、院内ネットワーク２の外部（第２の情報処理装置６側）からの院内ネットワーク２内への不正なアクセスを防ぐことが可能となる。したがって、ＩｏＴデバイス７に対する攻撃等によるＩｏＴデバイス７の誤動作を防ぎ、ＩｏＴデバイス７により収集した各種データを有効利用することが可能となる。
【００８１】
また、上記のように、デバイス情報ＤＢ ５５ａに登録されていない通信機器が第１の情報処理装置５への接続を試みると、第１の情報処理装置５は、該通信機器に対し接続を許可しない通知を送信する。このため、本実施形態の外部情報受配信装置４は、例えば、第１の情報処理装置５に対する、接続を許可していない通信機器からのＤｏＳ攻撃（Denial of Service attack）等を防ぐことが可能となる。
【００８２】
なお、図６のシーケンスにおけるステップＳ７１〜Ｓ７５の処理は、ＩｏＴデバイス７が行うデータアップロード処理（ステップＳ７）の一例に過ぎない。データアップロード処理の内容は、ＩｏＴデバイス７が収集するデータの内容に応じて適宜変更可能である。例えば、ＩｏＴデバイス７から第１の情報処理装置５にデータを送信する回数は、６０回に限らず、１回であってもよいし６０回以外の複数回でもよい。また、ＩｏＴデバイス７から第１の情報処理装置５に送信する１個のデータは、１秒分のデータに限らず、１秒未満の瞬間的なデータであってもよいし、１秒よりも更に長い期間のデータであってもよい。更に、ＩｏＴデバイス７は、例えば、データアップロード処理（ステップＳ７）を終了する際に、該処理の終了を第１の情報処理装置５に通知してもよい。
【００８３】
また、図６のシーケンスにおけるステップＳ５６１〜Ｓ５６４の処理は、第１の情報処理装置５が行うデータ転送処理（ステップＳ５６）の一例に過ぎない。データ転送処理の内容は、ＩｏＴデバイス７から受信するデータの内容等に応じて、適宜変更可能である。例えば、データ転送処理は、ＩｏＴデバイス７から受信したデータのデータ量（容量）等に応じて、データエッジング処理（ステップＳ５６３）を行うか否かを判定する処理を含み、データ量が閾値以下の場合はデータエッジング処理を省略するようにしてもよい。また、データ転送処理は、例えば、ＩｏＴデバイス７毎にデータエッジング処理（ステップＳ５６３）を行うか否かが定められていてもよい。
【００８４】
ここで、図５のシーケンスの説明に戻る。図５のシーケンスでは、第１の情報処理装置５及び第２の情報処理装置６は、それぞれ、プログラムを終了した後、プログラムを再起動する（ステップＳ５９及びＳ６９）。第１の情報処理装置５は、プログラムを再起動する際に、性能監視５６により、改変又は改ざんされた可能性のあるファイルをセキュアであることが保証されたファイルに復旧する処理を行う。同様に、第２の情報処理装置６は、プログラムを再起動する際に、性能監視６６により、改変又は改ざんされた可能性のあるファイルをセキュアであることが保証されたファイルに復旧する処理を行う。以下、図７を参照し、第１の情報処理装置５が再起動時に行う上記のファイルを復旧する処理を説明する。
【００８５】
図７は、第１の情報処理装置が再起動時に行う処理を説明するフローチャートである。
【００８６】
第１の情報処理装置５の性能監視５６は、ＯＳ ５８を含む各種プログラムを再起動する際に、監視の対象としているファイルに対し図７のステップＳ２１〜Ｓ２３の処理を行う。ここで、ステップＳ２１〜Ｓ２３の処理は、プログラムを再起動するタイミングで行えばよい。すなわち、ステップＳ２１〜Ｓ２３の処理は、プログラムを終了する処理（図５のステップＳ５８）で行ってもよいし、プログラムを再起動する処理（図５のステップＳ５９）で行ってもよい。
【００８７】
第１の情報処理装置５は、プログラムを再起動する際に、図７のように、自装置（第１の情報処理装置５）内の現在有効なファイルの情報を、インストール時のファイルの情報と比較する（ステップＳ２１）。ここで、インストール時のファイルは、インストール時に作成された不具合のないファイルとする。ステップＳ２１において、第１の情報処理装置５の性能監視５６は、例えば、ファイルのバージョン、更新日時、及び容量等の、同一ファイルであれば同一の値となる情報を比較する。
【００８８】
次に、性能監視５６は、ファイルの情報の比較結果に基づいて、現在のファイルとインストール時ファイルとに齟齬があるか否かを判定する（ステップＳ２２）。齟齬がある場合（ステップＳ２２；ＹＥＳ）、性能監視５６は、現在のファイルを、セキュアであることが保証されておりかつ最新のファイルに置換する復旧プロセスを実施する（ステップＳ２３）。ステップＳ２３では、性能監視５６は、例えば、第１の情報処理装置５が備えるフラッシュメモリ等の記憶装置に書き込み不可の状態で記憶させているバックアップデータから最新のファイルを読み出し、現在のファイルを読み出したファイルで上書きする。一方、齟齬がない場合（ステップＳ２２；ＮＯ）、性能監視５６は、ステップＳ２３を省略し、ファイルを復旧する処理を終了する。
【００８９】
なお、性能監視５６が監視の対象としているファイルが複数である場合、性能監視５６は、該複数のファイルのそれぞれに対し、ステップＳ２１〜Ｓ２３の処理を行う。
【００９０】
また、繰り返しの説明は省略するが、第２の情報処理装置６における性能監視６６も、プログラムを再起動する際に上記のステップＳ２１〜Ｓ２３の処理を行う。
【００９１】
このように、本実施形態の外部情報受配信装置４は、定期的にプログラムを再起動し、再起動するタイミングで、改変又は改ざんされた可能性のあるファイルをセキュアであることが保証されているファイルに復旧させる。このため、例えば、院内ネットワーク２の外部の通信機器からの攻撃等によりファイルが改変又は改ざんされた場合にも、早期にセキュアであることが保証されているファイルに復旧することが可能となる。したがって、本実施形態の外部情報受配信装置４では、ファイルの改変又は改ざんによりセキュリティレベルの低下した状態が長時間継続することを防ぐことが可能となる。
【００９２】
なお、ステップＳ２１で現在有効なファイルの情報と比較するファイルの情報は、インストール時のファイルの情報に限らず、セキュアであることが保証されている最新のファイル（例えば、アップデート時に作成されたファイル等）の情報であってもよい。
【００９３】
また、プログラムを再起動する処理（図５のステップＳ５９）においてステップＳ２１〜Ｓ２３の処理を行う場合、例えば、ステップＳ２３の処理を行ったときには、処理終了後にプログラムを再起動してもよい。
【００９４】
更に、ネットワークシステム１の運用中（稼働中）、本実施形態に係る外部情報受配信装置４における第１の情報処理装置５及び第２の情報処理装置６は、それぞれ、サービス情報ＤＢ ５５ｂ及び６５ｂに基づいて、実行しているサービスに対する監視を行う。以下、図８を参照し、第１の情報処理装置５が行う、実行しているサービスに対する監視処理を説明する。
【００９５】
図８は、第１の情報処理装置が行うサービスに対する監視処理を説明するフローチャートである。
【００９６】
第１の情報処理装置５が実行することを許可するサービスは、上記のように、サービス情報ＤＢ ５５ｂに登録されたサービスのみである。しかしながら、ネットワークシステム１の運用中、第１の情報処理装置５は、接続を許可していない通信機器からアクセスされることがある。このため、第１の情報処理装置５では、動作中に、サービス情報ＤＢ ５５ｂに登録されているサービスの実行プログラムが改変又は改ざんされてしまうことや、意図しないサービス（例えばサービス情報ＤＢ ５５ｂに登録されていないサービス）を実行してしまうことがある。したがって、第１の情報処理装置５は、所定のタイミングで、図８のステップＳ３１〜Ｓ３５の監視処理を行い、実行することが許可されたサービスのみがセキュアに実行される環境を維持する。ステップＳ３１〜Ｓ３５の監視処理を行うタイミングは適宜設定すればよい。例えば、ステップＳ３１〜Ｓ３５の監視処理は、サービスの実行を開始したときに行ってもよいし、予め定めた時刻が到来したときに行ってもよい。
【００９７】
実行しているサービスに対する監視処理を開始すると、第１の情報処理装置５は、図８のように、まず、実行中のサービスについての情報を、サービス情報ＤＢ ５５ｂに登録された情報と照合する（ステップＳ３１）。
【００９８】
次に、第１の情報処理装置５は、サービス情報ＤＢ ５５ｂに登録されていないサービスを実行しているか否かを判定する（ステップＳ３２）。ステップＳ３２の判定処理では、サービス名及び実行ファイル名がサービス情報ＤＢ ５５ｂに登録されていても有効性が「有効」ではないサービスも、サービス情報ＤＢ ５５ｂに登録されていないサービスと判定する。
【００９９】
サービス情報ＤＢ ５５ｂに登録されていないサービスを実行している場合（ステップＳ３２；ＹＥＳ）、第１の情報処理装置５は、サービス情報ＤＢ ５５ｂに登録されていないサービスを終了する（ステップＳ３３）。その後、第１の情報処理装置５は、サービス情報ＤＢ ５５ｂに登録された情報との間に差異のあるサービスを実行しているか否かを判定する（ステップＳ３４）。また、実行中のサービスが全てサービス情報ＤＢ ５５ｂに登録されている場合（ステップＳ３２；ＹＥＳ）、第１の情報処理装置５は、ステップＳ３３の処理を省略し、ステップＳ３４の判定を行う。
【０１００】
ステップＳ３４では、例えば、サービス名、実行ファイル名、及びインストールした日時の情報のいずれか１つの情報が一致しており、かつ他の２つの情報のうち１つ又は２つの情報が一致していない場合に、差異があると判定する。
【０１０１】
差異がある場合（ステップＳ３４；ＹＥＳ）、第１の情報処理装置５は、当該サービスの実行ファイルを差異のない状態に復旧する復旧プロセスを実施する（ステップＳ３５）。ステップＳ３５では、第１の情報処理装置５は、例えば、該当するサービスを終了させた後、記憶装置に書き込み不可の状態で記憶させているバックアップデータからセキュアであることが保証された実行プログラムを読み出し、現在の実行ファイルを読み出した実行ファイルで上書きする。一方、差異がない場合（ステップＳ３４；ＮＯ）、第１の情報処理装置５は、ステップＳ３５の処理を省略し、実行中のサービスに対する監視処理を終了する。
【０１０２】
また、繰り返しの説明は省略するが、第２の情報処理装置６も、所定のタイミングで上記のステップＳ３１〜Ｓ３５の処理を行う。
【０１０３】
このように、本実施形態の外部情報受配信装置４は、実行中のサービスを監視し、改変又は改ざんされた可能性のある実行ファイルをセキュアであることが保証されている実行ファイルに復旧させる。このため、例えば、院内ネットワーク２の外部の通信機器からの攻撃等により実行ファイルが改変又は改ざんされた場合にも、早期にセキュアであることが保証されている実行ファイルに復旧することが可能となる。したがって、本実施形態の外部情報受配信装置４では、実行ファイルの改変又は改ざんによりセキュリティレベルの低下した状態が長時間継続することを防ぐことが可能となる。
【０１０４】
以上説明したように、本実施形態に係る外部情報受配信装置４は、第１のネットワーク（院内ネットワーク２）と接続される第１の情報処理装置５と、第２のネットワーク（通信ネットワーク１０）と接続される第２の情報処理装置６とを含み、第１の情報処理装置５と第２の情報処理装置６との間の通信を専用プロトコルに従ったシリアル通信で行う。このため、第２のネットワーク側からの第１のネットワーク内への侵入を遮断することが可能となる。特に、本実施形態に係る外部情報受配信装置４では、第１の情報処理装置５は、第１のネットワークに収容されるＩｏＴデバイス７が収集したデータを受信すると、該受信したデータをシリアル通信により第２の情報処理装置に転送し、第２の情報処理装置６は、第１の情報処理装置５から転送されたデータを、第２のネットワーク６に接続された外部装置（例えばサーバ装置１１）に転送する。このため、本実施形態に係る外部情報受配信装置４は、第２のネットワーク側からのＩｏＴデバイス７に対する攻撃等によるＩｏＴデバイス７の誤動作を防ぎ、ＩｏＴデバイス７により収集した各種データを有効利用することが可能となる。
【０１０５】
更に、第１の情報処理装置５は、ＩｏＴデバイス７が収集したデータを受信した際に、該受信したデータのうち削除しても問題のない部分を削除するデータエッジング処理を行う。このため、本実施形態に係る外部情報受配信装置４は、ＩｏＴデバイス７が収集したデータを外部装置（例えばサーバ装置１１）に送信する際のデータ量を低減することが可能となり、トラフィックの増大等による遅延を防ぐことが可能となる。
【０１０６】
また、本実施形態に係る第１の情報処理装置５及び第２の情報処理装置６は、それぞれ、ホワイトリスト型のデバイス情報ＤＢ ５５ａ及び６５ａに基づいて自装置への接続を許可するデバイスを制限する。このため、デバイス情報ＤＢ ５５ａ及び６５ａに登録されていない通信機器による第１のネットワーク（院内ネットワーク２）内への侵入、及び外部情報受配信装置４を介して送受信される各種データの改変又は改ざんを防ぐことが可能となる。
【０１０７】
また、本実施形態に係る第１の情報処理装置５及び第２の情報処理装置６は、それぞれ、ホワイトリスト型のサービス情報ＤＢ ５５ｂ及び６５ｂに基づいて自装置での実行を許可するサービスを制限する。このため、サービス情報ＤＢ ５５ｂ及び６５ｂに登録されていないサービスを誤って実行してしまうことによるセキュリティレベルの低下を防ぐことが可能となる。更に、第１の情報処理装置５及び第２の情報処理装置６は、実行中のサービスを監視し、問題のあるサービスが実行されている場合には、該サービスの実行プログラムをセキュアであることが保証されている実行プログラムに復旧する。よって、デバイス情報ＤＢ ５５ａ及び６５ａに登録されていない通信機器等によりサービスの実行プログラムが改変又は改ざんされた場合にも、早期に実行プログラムを復旧することが可能となる。
【０１０８】
しかも、本実施形態に係る第１の情報処理装置５及び第２の情報処理装置６は、それぞれ、定期的にプログラムを再起動し、再起動時に、現在有効なファイルに問題があるか否かを判定する。そして、ファイルに問題がある場合には、その場で、セキュアであることが保証されているファイルに復旧する。よって、デバイス情報ＤＢ ５５ａ及び６５ａに登録されていない通信機器等によりファイルが改変又は改ざんされた場合にも、早期にファイルを復旧することが可能となる。
【０１０９】
以上のことから、本実施形態に係る外部情報受配信装置４をゲートウェイ装置として使用することにより、院内ネットワーク２等のプライベートネットワークへの不正なアクセスや各種のネットワーク攻撃を防止することが可能となる。
【０１１０】
なお、本実施形態の外部情報受配信装置４における第１の情報処理装置５と接続されるプライベートネットワークは、上記の院内ネットワーク２に限らず、他のプライベートネットワーク（例えば、企業の社内ＬＡＮ等）であってもよい。
【０１１１】
また、本実施形態に係る外部情報受配信装置４における第１の情報処理装置５及び第２の情報処理装置６は、それぞれ、コンピュータと、該コンピュータに実行させるプログラムとにより実現可能である。以下、コンピュータとプログラムとにより実現される第２の情報処理装置５について、図９を参照して説明する。
【０１１２】
図９は、コンピュータのハードウェア構成を示す図である。
【０１１３】
図９のように、コンピュータ１５は、ＣＰＵ（Central Processing Unit）１５０１と、メモリ１５０２と、補助記憶装置１５０３と、入力インタフェース１５０４と、表示制御装置１５０５と、通信制御装置１５０６と、媒体駆動装置１５０７とを備える。コンピュータ１５におけるこれらの要素１５０１〜１５０８は、バス１５１０により相互に接続されており、要素間でのデータの受け渡しが可能になっている。
【０１１４】
ＣＰＵ １５０１は、オペレーティングシステムを含む各種のプログラムを実行することによりコンピュータ１５の全体の動作を制御するプロセッサの一例である。例えば、ＣＰＵ １５０１は、図５のステップＳ５１〜Ｓ５８の各ステップの処理を含むプログラムを実行する。また、ＣＰＵ １５０１は、例えば、図７のステップＳ２１〜Ｓ２３の各ステップの処理を含むプログラム、及び図８のステップＳ３１〜Ｓ３５の各ステップの処理を含むプログラムを実行する。
【０１１５】
メモリ１５０２は、図示しないＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）を含む。メモリ１５０２のＲＯＭには、例えば、コンピュータ１５の起動時にＣＰＵ １５０１が読み出す所定の基本制御プログラム等が予め記録されている。また、メモリ１５０２のＲＡＭは、ＣＰＵ １５０１が、各種のプログラムを実行する際に必要に応じて作業用記憶領域として使用する。メモリ１５０２のＲＡＭは、例えば、デバイス情報ＤＢ ５５ａ及びサービス情報ＤＢ ５５ｂ、ＩｏＴデバイス７から受信した各種データ等の記憶に利用可能である。
【０１１６】
補助記憶装置１５０３は、例えば、ＨＤＤ（Hard Disk Drive）等の磁気ディスク、及びフラッシュメモリ等の不揮発性メモリである。補助記憶装置１５０３には、ＣＰＵ １５０１によって実行される各種のプログラムや各種のデータ等を記憶させることができる。補助記憶装置１５０３は、例えば、図５のステップＳ５１〜Ｓ５８の各ステップの処理を含むプログラム、図７のステップＳ２１〜Ｓ２３の各ステップの処理を含むプログラム、及び図８のステップＳ３１〜Ｓ３５の各ステップの処理を含むプログラム等の記憶に利用可能である。また、補助記憶装置２００３は、例えば、デバイス情報ＤＢ ５５ａ及びサービス情報ＤＢ ５５ｂ、ＩｏＴデバイス７から受信した各種データ、及びセキュアであることが保証されたファイルや実行プログラムを含むバックアップデータ等の記憶に利用可能である。
【０１１７】
入力インタフェース１５０４は、例えば、キーボード装置１６、マウス装置１７、及び図示しないタッチパネル装置の入力装置からの入力情報を受け付けるハードウェアインタフェースである。
【０１１８】
表示制御装置１５０５は、例えば、液晶表示装置等の表示装置１８の表示を制御する。表示制御装置１５０５は、例えば、コンピュータ１５の動作状態等を示す情報を含む画面データを作成して表示装置１８に表示させる。
【０１１９】
通信制御装置１５０６は、コンピュータ１５と、他の通信機器との通信を制御する。通信制御装置１５０６は、ハードウェアインタフェースとしてのシリアル通信インタフェース１５０６ａ、有線ＬＡＮインタフェース１５０６ｂ、及び無線ＬＡＮインタフェース１５０６ｃを含む。シリアル通信インタフェース１５０６ａは、専用プロトコルに従った第２の情報処理装置６との通信に使用される。有線ＬＡＮインタフェース１５０６ｂは、例えば、院内ネットワーク２等のプライベートネットワークに収容される端末装置３との通信に使用される。無線ＬＡＮインタフェース１５０６ｃは、例えば、院内ネットワーク２等のプライベートネットワークに収容されるＩｏＴデバイス７との通信に使用される。
【０１２０】
媒体駆動装置１５０７は、可搬型記録媒体１９に記録されているプログラムやデータの読み出し、補助記憶装置１５０３に記憶されたデータ等の可搬型記録媒体１９への書き込みを行う。可搬型記録媒体１９としては、例えば、Secure  Digital（ＳＤ）規格のメモリカード（フラッシュメモリ）がある。可搬型記録媒体１９は、例えば、図５のステップＳ５１〜Ｓ５８の各ステップの処理を含むプログラム、図７のステップＳ２１〜Ｓ２３の各ステップの処理を含むプログラム、及び図８のステップＳ３１〜Ｓ３５の各ステップの処理を含むプログラム等の記憶に利用可能である。また、可搬型記録媒体１９は、例えば、デバイス情報ＤＢ ５５ａ及びサービス情報ＤＢ ５５ｂ、ＩｏＴデバイス７から受信した各種データ、及びセキュアであることが保証されたファイルや実行プログラムを含むバックアップデータ等の記憶に利用可能である。また、コンピュータ１５が媒体駆動装置１５０７として利用可能な光ディスクドライブを搭載している場合、当該光ディスクドライブで認識可能な各種の光ディスクを可搬型記録媒体１９として利用可能である。可搬型記録媒体１９として利用可能な光ディスクには、例えば、Compact Disc（ＣＤ）、Digital Versatile Disc（ＤＶＤ）、Blu-ray Disc（Blu-rayは登録商標）等がある。
【０１２１】
コンピュータ１５は、電源投入後、ＣＰＵ １５０１が補助記憶装置１５０３等から図５のステップＳ５１〜Ｓ５８の各ステップの処理を含むプログラム、図７のステップＳ２１〜Ｓ２３の各ステップの処理を含むプログラム、及び図８のステップＳ３１〜Ｓ３５の各ステップの処理を含むプログラム等を読み出して実行する。これらのプログラムを実行している間、ＣＰＵ １５０１は、図２に示した第１の情報処理装置５におけるソフトウェア構成部５１として機能（動作）する。また、上記のプログラムを実行している間、シリアル通信インタフェース１５０６ａは、図２に示した第１の情報処理装置５における通信デバイス５９として機能（動作）する。また、上記のプログラムを実行している間、メモリ１５０２、補助記憶装置２００３、及び可搬型記録媒体１９は、それぞれ、デバイス情報ＤＢ ５５ａ及びサービス情報５５ｂを記憶する記憶部として機能する。
【０１２２】
また、詳細な説明は省略するが、コンピュータ１５は、第１の情報処理装置５に限らず、第２の情報処理装置６としても利用可能であることはもちろんである。
【０１２３】
なお、第１の情報処理装置５及び第２の情報処理装置６として動作させるコンピュータ１５は、図９に示した要素１５０１〜１５０８の全てを含む必要はなく、用途や条件に応じて一部の要素を省略することも可能である。例えば、コンピュータ１５は、媒体駆動装置１５０７が省略されたものであってもよい。
【符号の説明】
【０１２４】
１  ネットワークシステム
２  院内ネットワーク
３，３Ａ，３Ｂ，１２  端末装置
４  外部情報受配信装置
５  第１の情報処理装置
６  第２の情報処理装置
７，７Ａ，７Ｂ  ＩｏＴデバイス
１０  通信ネットワーク
１１  サーバ装置
５１，６１  ソフトウェア構成部
５２，６２  ビジネスロジック
５２ａ，６２ａ  デバイス制御管理
５２ｂ，６２ｂ  通信管理
５２ｃ  データエッジング
５２ｄ，６２ｄ  共通処理
５３，６３  デバイス制御
５３ａ，６３ａ  制御モジュール
５４，６４  通信管理
５４ａ，６４ａ  送受信管理
５４ｂ  ＬＡＮ
６４ｂ  グローバルＩＰ
６４ｃ  ＷＡＮ
５５，６５  ホワイトリスト管理
５５ａ，６５ａ  デバイス情報ＤＢ
５５ｂ，６５ｂ  サービス情報ＤＢ
５６，６６  性能監視
５８，６８  ＯＳ
５９，６９  通信デバイス
１５  コンピュータ
１５０１  ＣＰＵ
１５０２  メモリ
１５０３  補助記憶装置
１５０４  入力インタフェース
１５０５  表示制御装置
１５０６  通信制御装置
１５０６ａ  シリアル通信インタフェース
１５０６ｂ  有線ＬＡＮインタフェース
１５０６ｃ  無線ＬＡＮインタフェース
１５０７  媒体駆動装置
１５１０  バス
１６  キーボード装置
１７  マウス装置
１８  表示装置
１９  可搬型記録媒体
【図１】
2020017821.tif 000003
【図２】
2020017821.tif 000004
【図３】
2020017821.tif 000005
【図４】
2020017821.tif 000006
【図５】
2020017821.tif 000007
【図６】
2020017821.tif 000008
【図７】
2020017821.tif 000009
【図８】
2020017821.tif 000010
【図９】
2020017821.tif 000011