(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-26
(45)【発行日】2022-02-03
(54)【発明の名称】通信システム、情報提供装置、プログラム及び情報提供方法
(51)【国際特許分類】
H04L 67/141 20220101AFI20220127BHJP
G06F 21/56 20130101ALI20220127BHJP
G06F 21/31 20130101ALI20220127BHJP
【FI】
H04L67/141
G06F21/56
G06F21/31
(21)【出願番号】P 2021511808
(86)(22)【出願日】2019-04-01
(86)【国際出願番号】 JP2019014521
(87)【国際公開番号】W WO2020202442
(87)【国際公開日】2020-10-08
【審査請求日】2021-04-05
【早期審査対象出願】
(73)【特許権者】
【識別番号】500240184
【氏名又は名称】e-Janネットワークス株式会社
(74)【代理人】
【識別番号】110000877
【氏名又は名称】龍華国際特許業務法人
(72)【発明者】
【氏名】坂本 史郎
(72)【発明者】
【氏名】カルベパク クマール
【審査官】小林 義晴
(56)【参考文献】
【文献】国際公開第2013/042412(WO,A1)
【文献】米国特許出願公開第2010/0211626(US,A1)
【文献】特開2016-181877(JP,A)
【文献】特開2013-140480(JP,A)
【文献】特表2004-528651(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 13/00
G06F 21/56
G06F 21/31
(57)【特許請求の範囲】
【請求項1】
第1ネットワーク内に配置される情報提供装置と、
第2ネットワーク内に配置される中継装置と
を備え、
前記中継装置は、
前記第2ネットワーク内に配置される通信端末によって送信された前記情報提供装置への接続要求を受信する接続要求受信部と、
前記接続要求受信部が受信した前記接続要求を格納する接続要求格納部と
を有し、
前記情報提供装置は、
前記通信端末と前記情報提供装置との間のセッションのセッション識別情報と通信端末の利用者の利用者識別情報とを対応付けて格納する対応付格納部と、
前記第2ネットワーク内に配置される通信端末によって送信された前記情報提供装置への接続要求を前記接続要求格納部が格納しているか否かを確認させる確認要求を前記中継装置に送信する確認要求送信部と、
前記接続要求に含まれる情報を前記中継装置から受信する情報受信部と、
前記対応付格納部が格納している前記セッション識別情報が、前記情報受信部が受信した情報に含まれない場合、前記接続要求に含まれる利用者識別情報に基づいて前記通信端末の認証可否を判定する端末認証部と、
前記端末認証部によって認証可と判定された場合、前記情報提供装置と前記通信端末との間のセッションを識別するセッション識別情報を付与して、前記通信端末の利用者の利用者識別情報と対応付けて前記対応付格納部に格納させるセッション識別情報付与部と、
前記中継装置に前記セッション識別情報を送信するセッション識別情報送信部と、
前記対応付格納部が格納している前記セッション識別情報が、前記情報受信部が受信した情報に含まれる場合、前記情報受信部が受信した情報に応答して前記通信端末に情報を提供する情報提供部と
を有し、
前記確認要求送信部は、前記中継装置との間でTCPコネクションを確立することにより前記セッションを確立して、前記セッションを介して前記確認要求を前記中継装置に送信し、
前記情報受信部は、前記接続要求に含まれる情報を前記中継装置から受信した
後、前記セッション識別情報送信部が前記セッション識別情報を前記中継装置に送信したことに応じて、前記TCPコネクションのクローズを指定したHTTPヘッダを前記中継装置に送信することにより前記TCPコネクションを切断することによって、前記セッションを切断する、通信システム。
【請求項2】
前記第1ネットワークと前記第2ネットワークとの間に、前記第1ネットワーク内の装置と前記第2ネットワーク内の装置との間でセッションが確立されてから予め定められた時間が経過したことに応じて前記セッションを切断するセッションタイムアウト機能を有するファイヤーウォールが配置されている、請求項1に記載の通信システム。
【請求項3】
前記対応付格納部は、前記セッション識別情報送信部が前記セッション識別情報を送信したときからの経過時間が予め定められた時間より長くなる前に前記情報受信部が前記セッション識別情報を受信しなかった場合に、前記セッション識別情報を削除する、請求項1又は2に記載の通信システム。
【請求項4】
前記対応付格納部は、前記情報受信部が前記セッション識別情報を受信したときからの経過時間が予め定められた時間より長くなる前に前記情報受信部が前記セッション識別情報を受信しなかった場合に、前記セッション識別情報を削除する、請求項3に記載の通信システム。
【請求項5】
前記中継装置は、
前記確認要求を受信する確認要求受信部と、
前記確認要求受信部が前記確認要求を受信したことに応じて、前記接続要求格納部に前記接続要求が格納されているか否かを確認する接続要求確認部と、
前記接続要求確認部によって前記接続要求が前記接続要求格納部に格納されていることが確認された場合に、前記接続要求に含まれる情報を前記情報提供装置に送信する情報送信部と
を有する、請求項1から4のいずれか一項に記載の通信システム。
【請求項6】
前記接続要求受信部は、前記第2ネットワーク内の複数の通信端末によって送信された複数の前記接続要求を受信し、
前記接続要求格納部は、前記複数の通信端末のそれぞれの端末識別情報に対応付けて前記複数の接続要求のそれぞれを格納し、
前記情報送信部は、前記確認要求受信部が前記確認要求を受信したときに、前記接続要求格納部が前記複数の接続要求を格納している場合に、前記複数の接続要求のそれぞれに含まれる情報を前記情報提供装置に送信する、請求項5に記載の通信システム。
【請求項7】
前記情報送信部は、前記確認要求受信部が前記確認要求を受信したときに前記接続要求格納部に格納されている前記接続要求に前記利用者識別情報が含まれる場合、前記利用者識別情報を前記情報提供装置に送信する、請求項5又は6に記載の通信システム。
【請求項8】
前記情報送信部は、前記確認要求受信部が前記確認要求を受信したときに前記接続要求格納部に格納されている前記接続要求に前記セッション識別情報と、前記第1ネットワーク内のデータを指定するデータ指定情報とが含まれる場合、前記セッション識別情報及び前記データ指定情報を前記情報提供装置に送信し、
前記情報受信部は、前記セッション識別情報及び前記データ指定情報を受信し、
前記情報提供部は、前記データ指定情報によって指定されるデータを前記中継装置に送信する、請求項5から7のいずれか一項に記載の通信システム。
【請求項9】
前記情報受信部は、前記情報提供部が前記データ指定情報によって指定されるデータを前記中継装置に送信したことに応じて、前記TCPコネクションのクローズを指定したHTTPヘッダを前記中継装置に送信することにより前記TCPコネクションを切断することによって、前記セッションを切断する、請求項8に記載の通信システム。
【請求項10】
前記情報提供装置は、
前記情報受信部が受信した前記セッション識別情報に基づいて、前記データ指定情報によって指定されるデータの送信可否を判定する送信可否判定部
を有し、
前記情報提供部は、前記送信可否判定部によって送信可と判定された場合に、前記データ指定情報によって識別されるデータを前記中継装置に送信する
請求項8
又は9に記載の通信システム。
【請求項11】
前記情報提供装置は、
前記データ指定情報によって指定されるデータがウィルスに感染しているか否かを判定するウィルス判定処理を実行して、感染していると判定した場合に、前記データに対してウィルス対応処理を実行する第1ウィルス対策部
を有し、
前記情報提供部は、前記データ指定情報によって指定されるデータがウィルスに感染している場合に、前記第1ウィルス対策部によって前記ウィルス対応処理が実行された前記データを前記中継装置に送信し、
前記中継装置は、
前記情報提供部から受信したデータがウィルスに感染しているか否かを判定するウィルス判定処理を実行して、感染していると判定した場合に、前記データに対してウィルス対応処理を実行する第2ウィルス対策部
を有する、請求項8
から10のいずれか一項に記載の通信システム。
【請求項12】
前記第1ウィルス対策部によって実行される前記ウィルス判定処理による判定レベルは、前記第2ウィルス対策部によって実行される前記ウィルス判定処理による判定レベルよりも低
く、
前記第1ウィルス対策部によって実行される前記ウィルス対応処理による対応レベルは、前記第2ウィルス対策部によって実行される前記ウィルス対応処理による対応レベルよりも低く、
前記第1ウィルス対策部は、前記情報提供装置が有する情報のみを利用してウィルス判定処理及びウィルス対応処理を実行し、前記第2ウィルス対策部は、第2ネットワーク内に配置されるクラウドサービスによって提供されるウィルス対策サービスと連携したウィルス判定処理及びウィルス対応処理を実行する、
請求項
11に記載の通信システム。
【請求項13】
前記第1ネットワークは、クローズドネットワークであり、
前記第2ネットワークは、オープンネットワークである、請求項1から12のいずれか一項に記載の通信システム。
【請求項14】
第1ネットワーク内に配置される情報提供装置であって、
通信端末と前記情報提供装置との間のセッションのセッション識別情報と、前記通信端末の利用者の利用者識別情報とを対応付けて格納する対応付格納部と、
第2ネットワーク内に配置される通信端末によって送信された前記情報提供装置への接続要求を前記第2ネットワーク内に配置される中継装置が格納しているか否かを確認させる確認要求を前記中継装置に送信する確認要求送信部と、
前記接続要求に含まれる情報を受信する情報受信部と、
前記対応付格納部が格納している前記セッション識別情報が、前記情報受信部が受信した情報に含まれない場合、前記接続要求に含まれる利用者識別情報に基づいて前記通信端末の認証可否を判定する端末認証部と、
前記端末認証部によって認証可と判定された場合、前記情報提供装置と前記通信端末との間のセッションを識別するセッション識別情報を付与して、前記通信端末の利用者の利用者識別情報と対応付けて前記対応付格納部に格納させるセッション識別情報付与部と、
前記中継装置に前記セッション識別情報を送信するセッション識別情報送信部と、
前記対応付格納部が格納している前記セッション識別情報が、前記情報受信部が受信した情報に含まれる場合、前記情報受信部が受信した情報に応答して前記通信端末に情報を提供する情報提供部と
を備え、
前記確認要求送信部は、前記中継装置との間でTCPコネクションを確立することにより前記セッションを確立して、前記セッションを介して前記確認要求を前記中継装置に送信し、
前記情報受信部は、前記接続要求に含まれる情報を前記中継装置から受信した
後、前記セッション識別情報送信部が前記セッション識別情報を前記中継装置に送信したことに応じて、前記TCPコネクションのクローズを指定したHTTPヘッダを前記中継装置に送信することにより前記TCPコネクションを切断することによって、前記セッションを切断する、情報提供装置。
【請求項15】
前記確認要求送信部は、前記中継装置との間でセッションを確立して、前記セッションを介して前記確認要求を前記中継装置に送信し、
前記情報受信部は、前記接続要求に含まれる情報を前記中継装置から受信したことに応じて、前記セッションを切断する、請求項14に記載の情報提供装置。
【請求項16】
コンピュータを、請求項14又は15に記載の情報提供装置として機能させるためのプログラム。
【請求項17】
第1ネットワーク内に配置された情報提供装置によって実行される情報提供方法であって、
第2ネットワーク内に配置された通信端末によって送信された前記情報提供装置への接続要求を、前記第2ネットワーク内に配置された中継装置が格納しているか否かを確認させる確認要求を前記中継装置に送信する確認要求送信段階と、
前記接続要求に含まれる情報を受信する情報受信段階と、
通信端末と前記情報提供装置との間のセッションのセッション識別情報と前記通信端末の利用者の利用者識別情報とを対応付けて格納する対応付格納部が格納している前記セッション識別情報が、前記情報受信段階において受信した情報に含まれない場合、前記接続要求に含まれる利用者識別情報に基づいて前記通信端末の認証可否を判定する端末認証段階と、
前記端末認証段階において認証可と判定された場合、前記情報提供装置と前記通信端末との間のセッションを識別するセッション識別情報を付与して、前記通信端末の利用者の利用者識別情報と対応付けて前記対応付格納部に格納させるセッション識別情報付与段階と、
前記中継装置に前記セッション識別情報を送信するセッション識別情報送信段階と、
前記対応付格納部が格納している前記セッション識別情報が、前記情報受信段階において受信した情報に含まれる場合、前記情報受信段階において受信した情報に応答して前記通信端末に情報を提供する情報提供段階と
を備え、
前記確認要求送信段階は、前記中継装置との間でTCPコネクションを確立することにより前記セッションを確立して、前記セッションを介して前記確認要求を前記中継装置に送信し、
前記情報提供方法は、
前記情報受信段階
において、前記接続要求に含まれる情報を前記中継装置から受信した
後、前記セッション識別情報送信段階において前記セッション識別情報が前記中継装置に送信されたことに応じて、前記TCPコネクションのクローズを指定したHTTPヘッダを前記中継装置に送信することにより前記TCPコネクションを切断することによって、前記セッションを切断する
段階
を備える、情報提供方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信システム、情報提供装置、プログラム及び情報提供方法に関する。
【背景技術】
【0002】
オープンネットワークに位置する通信端末からクローズドネットワーク内のデータを閲覧できるように制御する通信システムが知られていた(例えば、特許文献1参照)。
[先行技術文献]
[特許文献]
[特許文献1]特許第4551218号
【解決しようとする課題】
【0003】
クローズドネットワーク内の情報をオープンネットワーク内の通信端末に適切に提供可能な技術を提供することが望ましい。
【一般的開示】
【0004】
本発明の第1の態様によれば、第1ネットワーク内に配置される情報提供装置と、第2ネットワーク内に配置される中継装置とを備える通信システムが提供される。中継装置は、第2ネットワーク内に配置される通信端末によって送信された情報提供装置への接続要求を受信する接続要求受信部を有してよい。中継装置は、接続要求受信部が受信した接続要求を格納する接続要求格納部を有してよい。情報提供装置は、通信端末と情報提供装置との間のセッションのセッション識別情報と通信端末の利用者の利用者識別情報とを対応付けて格納する対応付格納部を有してよい。情報提供装置は、第2ネットワーク内に配置される通信端末によって送信された情報提供装置への接続要求を接続要求格納部が格納しているか否かを確認させる確認要求を中継装置に送信する確認要求送信部を有してよい。情報提供装置は、接続要求に含まれる情報を中継装置から受信する情報受信部を有してよい。情報提供装置は、対応付格納部が格納しているセッション識別情報が、情報受信部が受信した情報に含まれない場合、接続要求に含まれる利用者識別情報に基づいて通信端末の認証可否を判定する端末認証部を有してよい。情報提供装置は、端末認証部によって認証可と判定された場合、情報提供装置と通信端末との間のセッションを識別するセッション識別情報を付与して、通信端末の利用者の利用者識別情報と対応付けて対応付格納部に格納させるセッション識別情報付与部を有してよい。情報提供装置は、中継装置にセッション識別情報を送信するセッション識別情報送信部を有してよい。情報提供装置は、対応付格納部が格納しているセッション識別情報が、情報受信部が受信した情報に含まれる場合、情報受信部が受信した情報に応答して通信端末に情報を提供する情報提供部を有してよい。
【0005】
上記確認要求送信部は、上記中継装置との間でセッションを確立して、上記セッションを介して上記確認要求を上記中継装置に送信してよく、上記情報受信部は、上記接続要求に含まれる情報を上記中継装置から受信したことに応じて、上記セッションを切断してよい。上記確認要求送信部は、上記中継装置との間でTCPコネクションを確立することにより上記セッションを確立してよく、上記情報受信部は、上記TCPコネクションのクローズを指定したHTTPヘッダを上記中継装置に送信することにより上記TCPコネクションを切断することによって、上記セッションを切断してよい。上記通信システムにおいて、上記第1ネットワークと上記第2ネットワークとの間に、上記第1ネットワーク内の装置と上記第2ネットワーク内の装置との間でセッションが確立されてから予め定められた時間が経過したことに応じて上記セッションを切断するセッションタイムアウト機能を有するファイヤーウォールが配置されていてよい。上記対応付格納部は、上記セッション識別情報送信部が上記セッション識別情報を送信したときからの経過時間が予め定められた時間より長くなる前に上記情報受信部が上記セッション識別情報を受信しなかった場合に、上記セッション識別情報を削除してよい。上記対応付格納部は、上記情報受信部が上記セッション識別情報を受信したときからの経過時間が予め定められた時間より長くなる前に上記情報受信部が上記セッション識別情報を受信しなかった場合に、上記セッション識別情報を削除してよい。
【0006】
上記中継装置は、上記確認要求を受信する確認要求受信部と、上記確認要求受信部が上記確認要求を受信したことに応じて、上記接続要求格納部に上記接続要求が格納されているか否かを確認する接続要求確認部と、上記接続要求確認部によって上記接続要求が上記接続要求格納部に格納されていることが確認された場合に、上記接続要求に含まれる情報を上記情報提供装置に送信する情報送信部とを有してよい。上記接続要求受信部は、上記第2ネットワーク内の複数の通信端末によって送信された複数の上記接続要求を受信してよく、上記接続要求格納部は、上記複数の通信端末のそれぞれの端末識別情報に対応付けて上記複数の接続要求のそれぞれを格納してよく、上記情報送信部は、上記確認要求受信部が上記確認要求を受信したときに、上記接続要求格納部が上記複数の接続要求を格納している場合に、上記複数の接続要求のそれぞれに含まれる情報を上記情報提供装置に送信してよい。上記情報送信部は、上記確認要求受信部が上記確認要求を受信したときに上記接続要求格納部に格納されている上記接続要求に上記利用者識別情報が含まれる場合、上記利用者識別情報を上記情報提供装置に送信してよい。上記情報送信部は、上記確認要求受信部が上記確認要求を受信したときに上記接続要求格納部に格納されている上記接続要求に上記セッション識別情報と、上記第1ネットワーク内のデータを指定するデータ指定情報とが含まれる場合、上記セッション識別情報及び上記データ指定情報を上記情報提供装置に送信してよく、上記情報受信部は、上記セッション識別情報及び上記データ指定情報を受信してよく、上記情報提供部は、上記データ指定情報によって指定されるデータを上記中継装置に送信してよい。
【0007】
上記情報提供装置は、上記情報受信部が受信した上記セッション識別情報に基づいて、上記データ指定情報によって指定されるデータの送信可否を判定する送信可否判定部を有してよく、上記情報提供部は、上記送信可否判定部によって送信可と判定された場合に、上記データ指定情報によって識別されるデータを上記中継装置に送信してよい。上記情報提供装置は、上記データ指定情報によって指定されるデータがウィルスに感染しているか否かを判定するウィルス判定処理を実行して、感染していると判定した場合に、上記データに対してウィルス対応処理を実行する第1ウィルス対策部を有してよく、上記情報提供部は、上記データ指定情報によって指定されるデータがウィルスに感染している場合に、上記第1ウィルス対策部によって上記ウィルス対応処理が実行された上記データを上記中継装置に送信してよく、上記中継装置は、上記情報提供部から受信したデータがウィルスに感染しているか否かを判定するウィルス判定処理を実行して、感染していると判定した場合に、上記データに対してウィルス対応処理を実行する第2ウィルス対策部を有してよい。上記第1ウィルス対策部によって実行される上記ウィルス判定処理による判定レベルは、上記第2ウィルス対策部によって実行される上記ウィルス判定処理による判定レベルよりも低くてよい。上記第1ウィルス対策部によって実行される上記ウィルス対応処理による対応レベルは、上記第2ウィルス対策部によって実行される上記ウィルス対応処理による対応レベルよりも低くてよい。上記第1ネットワークは、クローズドネットワークであってよく、上記第2ネットワークは、オープンネットワークであってよい。
【0008】
本発明の第2の態様によれば、第1ネットワーク内に配置される情報提供装置が提供される。情報提供装置は、通信端末と情報提供装置との間のセッションのセッション識別情報と、通信端末の利用者の利用者識別情報とを対応付けて格納する対応付格納部を備えてよい。情報提供装置は、第2ネットワーク内に配置される通信端末によって送信された情報提供装置への接続要求を第2ネットワーク内に配置される中継装置が格納しているか否かを確認させる確認要求を中継装置に送信する確認要求送信部を備えてよい。情報提供装置は、接続要求に含まれる情報を受信する情報受信部を備えてよい。情報提供装置は、対応付格納部が格納しているセッション識別情報が、情報受信部が受信した情報に含まれない場合、接続要求に含まれる利用者識別情報に基づいて通信端末の認証可否を判定する端末認証部を備えてよい。情報提供装置は、端末認証部によって認証可と判定された場合、情報提供装置と通信端末との間のセッションを識別するセッション識別情報を付与して、通信端末の利用者の利用者識別情報と対応付けて対応付格納部に格納させるセッション識別情報付与部を備えてよい。情報提供装置は、中継装置にセッション識別情報を送信するセッション識別情報送信部を備えてよい。情報提供装置は、対応付格納部が格納しているセッション識別情報が、情報受信部が受信した情報に含まれる場合、情報受信部が受信した情報に応答して通信端末に情報を提供する情報提供部を備えてよい。上記確認要求送信部は、上記中継装置との間でセッションを確立して、上記セッションを介して上記確認要求を上記中継装置に送信してよく、上記情報受信部は、上記接続要求に含まれる情報を上記中継装置から受信したことに応じて、上記セッションを切断してよい。
【0009】
本発明の第3の態様によれば、コンピュータを、上記情報提供装置として機能させるためのプログラムが提供される。
【0010】
本発明の第4の態様によれば、第1ネットワーク内に配置された情報提供装置によって実行される情報提供方法が提供される。情報提供方法は、第2ネットワーク内に配置された通信端末によって送信された情報提供装置への接続要求を、第2ネットワーク内に配置された中継装置が格納しているか否かを確認させる確認要求を中継装置に送信する確認要求送信段階を備えてよい。情報提供方法は、接続要求に含まれる情報を受信する情報受信段階を備えてよい。情報提供方法は、通信端末と情報提供装置との間のセッションのセッション識別情報と通信端末の利用者の利用者識別情報とを対応付けて格納する対応付格納部が格納しているセッション識別情報が、情報受信段階において受信した情報に含まれない場合、接続要求に含まれる利用者識別情報に基づいて通信端末の認証可否を判定する端末認証段階を備えてよい。情報提供方法は、端末認証段階において認証可と判定された場合、情報提供装置と通信端末との間のセッションを識別するセッション識別情報を付与して、通信端末の利用者の利用者識別情報と対応付けて対応付格納部に格納させるセッション識別情報付与段階を備えてよい。情報提供方法は、中継装置にセッション識別情報を送信するセッション識別情報送信段階を備えてよい。情報提供方法は、対応付格納部が格納しているセッション識別情報が、情報受信段階において受信した情報に含まれる場合、情報受信段階において受信した情報に応答して通信端末に情報を提供する情報提供段階を備えてよい。
【0011】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0012】
【
図2】通信システム10による処理の流れの一例を概略的に示す。
【
図3】通信システム10による処理の流れの一例を概略的に示す。
【
図4】中継装置300の機能構成の一例を概略的に示す。
【
図5】情報提供装置100の機能構成の一例を概略的に示す。
【
図6】情報提供装置100として機能するコンピュータ1200のハードウェア構成の一例を概略的に示す。
【発明を実施するための形態】
【0013】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0014】
図1は、通信システム10の一例を概略的に示す。通信システム10は、情報提供装置200及び中継装置300を備える。
【0015】
情報提供装置200は、クローズドネットワークであるネットワーク20内に配置される。情報提供装置200は、オープンネットワークであるネットワーク30内に配置される通信端末400に対して、クローズドネットワーク内の情報を提供する。ネットワーク20は、第1ネットワークの一例であってよい。ネットワーク30は、第2ネットワークの一例であってよい。
【0016】
ネットワーク20は、例えば、オープンネットワークからのアクセスが制限された工場内ネットワークや企業内ネットワーク等である。ここでは、ネットワーク20が工場内ネットワークである場合を主に例に挙げて説明する。ネットワーク30は、例えば、インターネットを含む。通信端末400は、例えば、スマートフォン等の携帯電話、タブレット端末及びPC(Personal Computer)等である。
【0017】
工場内ネットワークには、工場内に設置されている機械を制御したり、工場内のデータを管理したりする複数の処理装置22が設置されている。世界各地の工場では、処理装置22に格納されているデータをバックアップしたり、ログデータを回収したりしたいという要望がある。
【0018】
世界各地の工場の中には、古い処理装置22を使用し続けている工場が多く、処理装置22のOS(Operating System)のバージョンアップも行われていない場合が多い。よって、工場内ネットワークを直接オープンネットワークに接続すると、処理装置22がウィルスに感染する可能性が比較的高い。
【0019】
USBメモリ等の可搬型記憶媒体によって処理装置22のデータを持ち出すことも考えられる。しかし、工場によっては、工場内ネットワークにおけるウィルス対策が十分になされていない場合もあり、処理装置22がウィルスに感染してしまっている場合もある。よって、USBメモリによって、ウィルスに感染したデータを持ち出してしまうことになり、ウィルスが拡散してしまうおそれがある。
【0020】
本実施形態に係る通信システム10は、ファイヤーウォール機能を有するルータ40を介してネットワーク30に接続されたネットワーク20内のデータを、ネットワーク30内に配置された通信端末400に適切に提供な技術を提供する。
【0021】
ルータ40は、ネットワーク20からネットワーク30への接続要求は通過させ、ネットワーク30からネットワーク20への接続要求を通過させないように設定されてよい。ルータ40は、ネットワーク20からネットワーク30への接続要求を通過させるとともに、ネットワーク30側で開始されたフロー内ではネットワーク30側からネットワーク20側に向けて送信された接続要求を通過させず、ネットワーク20側から開始されるフロー内ではネットワーク30側からネットワーク20側に向けて送信された接続要求を通過させるように設定されてもよい。
【0022】
本実施形態において、通信端末400は、例えば、情報提供装置200によって提供される情報提供サービス201にログインする場合、情報提供装置200への接続要求を中継装置300に送信する。当該接続要求は、通信端末400を利用する利用者の利用者識別情報(利用者IDと記載する場合がある。)を含んでよい。当該接続要求は、パスワードを含んでよい。当該接続要求は、通信端末400を識別する通信端末識別情報(通信端末IDと記載する場合がある。)を含んでもよい。当該接続要求は、情報提供装置200を識別する情報提供装置識別情報(情報提供装置IDと記載する場合がある。)を含んでもよい。中継装置300は、受信した接続要求を格納する。
【0023】
情報提供装置200は、通信端末400によって送信された情報提供装置200への接続要求を中継装置300が格納しているか否かを確認させる確認要求を、中継装置300に送信する。当該確認要求は、情報提供装置200の情報提供装置IDを含んでもよい。
【0024】
情報提供装置200は、中継装置300との間でセッションを確立して、当該セッションを介して確認要求を中継装置300に送信する。情報提供装置200は、例えば、中継装置300との間でHTTP(Hyper Text Transfer Protocol)セッションを確立する。情報提供装置200は、中継装置300との間でTCP(Transmission Control Protocol)コネクションを確立することによりセッションを確立してよい。
【0025】
情報提供装置200は、中継装置300への確認要求の送信を断続的に実行してよい。情報提供装置200は、中継装置300への確認要求の送信を定期的に実行してもよい。情報提供装置200は、例えば、1秒毎に、中継装置300への確認要求の送信を実行する。
【0026】
中継装置300は、確認要求を受信した場合に、確認要求を送信した情報提供装置200への接続要求を格納しているか否かを確認する。接続要求及び確認要求のそれぞれに情報提供装置IDが含まれている場合、中継装置300は、確認要求に含まれる情報提供装置IDを参照して、当該情報提供装置IDを含む接続要求を格納しているか否かを確認してよい。中継装置300が、確認要求に情報提供装置IDが含まれていなくとも確認要求を送信した情報提供装置200を特定可能であれば、確認要求に情報提供装置IDが含まれなくてもよい。
【0027】
中継装置300は、情報提供装置200への接続要求を格納している場合、接続要求に含まれる情報を情報提供装置200に送信する。中継装置300は、接続要求に含まれる利用者IDを情報提供装置200に送信してよい。中継装置300は、接続要求に含まれるパスワードを情報提供装置200に送信してよい。中継装置300は、接続要求に含まれる通信端末IDを情報提供装置200に送信してよい。
【0028】
中継装置300は、情報提供装置200への接続要求を格納していない場合、格納していないことを示す応答を情報提供装置200に送信してよい。当該応答を受信した情報提供装置200は、中継装置300との間のHTTPセッションを切断してよい。
【0029】
中継装置300は、情報提供装置200への接続要求を格納していない場合に、情報提供装置200に対して応答をしなくてもよい。この場合、情報提供装置200は、確認要求を送信してから予め定められた時間を経過するまでに接続要求に含まれる情報を中継装置300から受信しなかった場合に、中継装置300との間のHTTPセッションを切断してよい。
【0030】
上述したように、通信端末400によって送信された接続要求を中継装置300が受信して格納し、情報提供装置200による確認要求に応じて、中継装置300が接続要求に含まれる情報を情報提供装置200に送信する構成とすることによって、ルータ40が、ネットワーク30からネットワーク20への接続要求を通過させないように設定されていても、情報提供装置200に、接続要求に含まれる情報を取得させることができる。
【0031】
ルータ40が、ネットワーク30側で開始されたフロー内ではネットワーク30側からネットワーク20側に向けて送信された接続要求は通過させず、ネットワーク20側から開始されるフロー内ではネットワーク30側からネットワーク20側に向けて送信された接続要求を通過させるように設定されている場合、中継装置300は、情報提供装置200による確認要求の送信によって開始されるフロー内で、接続要求又は接続要求に含まれる情報を情報提供装置200に送信してよい。
【0032】
情報提供装置200は、受信した利用者IDに基づいて、通信端末400の認証可否を判定する。情報提供装置200は、例えば、情報提供サービス201に登録済みの利用者IDを含む登録情報を参照し、登録情報内のいずれかの利用者IDと、受信した利用者IDとが一致した場合に、認証可と判定する。また、例えば、情報提供装置200は、情報提供サービス201に登録済みの利用者IDと、利用者IDに対応するパスワードとを含む登録情報を参照し、登録情報内のいずれかの利用者ID及びパスワードと、受信した利用者ID及びパスワードとが一致した場合に、認証可と判定する。
【0033】
情報提供装置200は、認証可と判定した場合に情報提供装置200と通信端末400との間のセッションを識別するセッション識別情報(セッションIDと記載する場合がある。)を付与して、通信端末400の利用者の利用者IDとセッションIDとを対応付けて対応付格納部に格納する。そして、情報提供装置200は、セッションIDを、中継装置300を介して通信端末400に送信する。情報提供装置200は、通信端末400に対して提供可能なデータを示す情報を、セッションIDと合わせて送信してもよい。情報提供装置200は、例えば、ネットワーク20内のデータのうち、通信端末400に対して提供可能なデータを示す情報を通信端末400に送信する。情報提供装置200は、セッションIDの送信後、中継装置300との間のHTTPセッションを切断してよい。
【0034】
通信端末400の利用者は、例えば、提供を希望するデータを通信端末400において指定する。当該データは、情報提供装置200によって提供可能なデータであればどのようなデータであってもよい。例えば、当該データは、ネットワーク20内のデータである。当該データの例として、ログデータ、バックアップデータ、ファイルデータ、メールデータ、及びWebデータ等が挙げられるが、これらに限らない。
【0035】
通信端末400は、データの指定を受け付けるユーザインタフェースを備えてよく、当該ユーザインタフェースを介してデータの指定を受け付けてよい。通信端末400は、例えば、情報提供装置200から受信した、通信端末400に対して提供可能なデータを示す情報を利用者に提示して、当該情報に対する利用者の指定を受け付けてもよい。
【0036】
通信端末400は、データの指定を受け付けた場合、当該データを指定するデータ指定情報とセッションIDとを含む接続要求を、中継装置300に送信する。当該接続要求は、情報提供装置200を識別する情報提供装置IDを含んでもよい。
【0037】
中継装置300は、受信した接続要求を格納する。中継装置300は、情報提供装置200から確認要求を受信した場合に、当該接続要求を格納していた場合、接続要求に含まれる情報を情報提供装置200に送信する。中継装置300は、データ指定情報及びセッションIDを情報提供装置200に送信してよい。
【0038】
情報提供装置200は、受信したセッションIDに基づいて、データ指定情報によって指定されるデータの送信可否を判定してよい。情報提供装置200は、受信したセッションIDが、対応付格納部に格納されている複数のセッションIDのいずれかと一致するか否かを判定する。
【0039】
いずれとも一致しなかった場合、情報提供装置200は送信否と判定する。いずれかと一致した場合、情報提供装置200は、一致したセッションIDに対応付けて格納されている利用者IDによって、当該利用者IDによって識別される利用者の、データ指定情報によって指定されるデータへのアクセス権限を確認する。情報提供装置200は、アクセス権限がある場合、送信可と判定し、アクセス権限がない場合、送信否と判定する。
【0040】
情報提供装置200は、送信可と判定した場合、データ指定情報によって指定されるデータを取得して、中継装置300に送信してよい。情報提供装置200は、例えば、データ指定情報によって指定される、ネットワーク20内の処理装置22によって管理されているデータを、処理装置22から受信して、当該データ又は当該データから生成した送信データを中継装置300に送信する。例えば、ログデータが指定されていた場合、情報提供装置200は、ログデータ、又は、複数のログデータから生成した一覧データを中継装置300に送信する。中継装置300は、受信したデータを通信端末400に送信する。情報提供装置200は、送信後に、中継装置300との間のHTTPセッションを切断してよい。
【0041】
上述したように、本実施形態に係る情報提供装置200は、接続要求毎に、中継装置300とのHTTPセッションを切断する。HTTPでは、セッションキープアライブが採用されており、2つの装置間でHTTPセッションが確立されると、通常は、2つの装置のいずれかがHTTPセッションを切断しない限り、HTTPセッションが維持される。
【0042】
このため、例えば、本実施形態に例示するように、ファイヤーウォール機能を有するルータ40を挟んで2つの装置間でHTTPセッションが確立されると、ファイヤーウォールがセッションタイムアウト機能を有する場合に、予期しないタイミングでHTTPセッションが切断されることになり得る。セッションタイムアウト機能とは、ルータ40を介してセッションが確立されてから予め定められた時間が経過したことに応じて当該セッションを切断する機能である。セッションタイムアウト機能によってセッションが切断されると、利用者は、切断の理由を把握できない場合があり、利用者に混乱を与えてしまい得る。
【0043】
それに対して、本実施形態に係る情報提供装置200は、接続要求毎に新しいHTTPセッションを確立するので、セッションタイムアウト機能によってHTTPセッションが切断されてしまう事態が発生する確率を大幅に低減することができ、利用者に混乱を与えてしまう事態の発生を抑止することができる。
【0044】
また、上述したように、本実施形態に係る情報提供装置200は、接続要求にセッションIDが含まれていない場合には、接続要求に含まれる利用者IDによって端末認証を実行し、セッションIDを付与して通信端末400に送信し、接続要求にセッションIDが含まれている場合、接続要求に含まれる情報に応答して、通信端末400に情報を提供する。このように、情報提供装置200が、ソフトウェア上でセッションIDを通信端末400に付与することにより、接続要求毎にセッションを切断してしまうにもかかわらず、通信の継続性を担保することができる。これにより、接続要求毎に端末認証を実行する必要性を無くすことができ、中継装置300と情報提供装置200との間の手続を減らすことにより、通信端末400に対するレスポンスの速度を向上することができる。
【0045】
図2は、通信システム10による処理の流れの一例を概略的に示す。ここでは、通信端末400の利用者が通信端末400を用いて、情報提供装置200によって提供される情報提供サービス201にログインし、情報提供装置200からネットワーク20内のデータの提供を受けるまでの流れを説明する。ここでは、通信端末400の利用者の情報提供サービス201への登録は完了しているものとする。また、通信端末400と中継装置300との間の通信接続の確立に関する処理は省略して説明する。
【0046】
ステップ(ステップをSと省略して記載する場合がある。)102では、通信端末400が、通信端末400の利用者の利用者ID及びパスワードを含む接続要求を中継装置300に送信する。S104では、中継装置300が、S102において受信した接続要求を格納する。
【0047】
S106では、情報提供装置200が、中継装置300との間でHTTPセッションを確立する。S108では、情報提供装置200が、確認要求を中継装置300に送信する。中継装置300は、確認要求を受信したことに応じて、情報提供装置200への接続要求を格納しているか否かを確認する。
図2に示す例では、中継装置300は、格納していると判定する。
【0048】
S110では、中継装置300が、接続要求に含まれる利用者ID及びパスワードを情報提供装置200に送信する。中継装置300は、利用者ID及びパスワードを情報提供装置200に送信した後、当該利用者ID及びパスワードを含む接続要求を削除したり、無効にしたりしてよい。
【0049】
S112では、情報提供装置200が、S110において受信した利用者ID及びパスワードに基づいて通信端末400の認証可否を判定する。
図2に示す例では、情報提供装置200によって、認証可と判定される。
【0050】
S114では、情報提供装置200が、情報提供装置200と通信端末400との間のセッションを識別するセッションIDを付与して、セッションIDと利用者IDとを対応付けて対応付格納部に格納する。S116では、情報提供装置200が、セッションIDを中継装置300に送信する。
【0051】
S118では、S106において確立したHTTPセッションを切断する。当該切断は、情報提供装置200が主体となって実行されてよい。情報提供装置200は、例えば、TCPコネクションのクローズをHTTPヘッダにおいて指定することによって、当該切断を実行する。また、当該切断は、中継装置300が主体となって実行されてもよい。中継装置300は、例えば、S116においてセッションIDを受信したことに対する応答として、TCPコネクションのクローズをHTTPヘッダにおいて指定することによって、当該切断を実行する。
【0052】
S120では、通信端末400が、S116において受信したセッションIDを通信端末400に送信する。S122では、通信端末400が、S120において受信したセッションIDと、利用者によって指定されたデータを指定するデータ指定情報とを含む接続要求を中継装置300に送信する。S124では、中継装置300が、受信した接続要求を格納する。
【0053】
S126では、情報提供装置200が、中継装置300との間でHTTPセッションを確立する。S128では、情報提供装置200が、確認要求を中継装置300に送信する。中継装置300は、確認要求を受信したことに応じて、情報提供装置200への接続要求を格納しているか否かを確認する。
図2に示す例では、中継装置300は、格納していると判定する。
【0054】
S130では、中継装置300が、接続要求に含まれるセッションID及びデータ指定情報を情報提供装置200に送信する。中継装置300は、セッションID及びデータ指定情報を情報提供装置200に送信した後、当該セッションID及びデータ指定情報を含む接続要求を削除したり、無効にしたりしてよい。
【0055】
S132では、情報提供装置200が、S130において受信したセッションIDに基づいて、データ指定情報によって指定されるデータの送信可否を判定する。ここでは、送信可と判定されたものとして説明を続ける。
【0056】
S134では、情報提供装置200が、データ指定情報によって指定されたデータを取得して、ウィルス対策を実行する。ウィルス対策は、取得したデータがウィルスに感染しているか否かを判定するウィルス判定処理と、感染していると判定した場合に、データに対してウィルスへの対応を行うウィルス対応処理とを含んでよい。ウィルス対応処理は、ウィルスを駆除したり、修復したりする処理であってよい。また、ウィルス対応処理は、指定されたデータの一部を検疫したり、隔離したり、削除したりする処理であってよい。
【0057】
S136では、情報提供装置200が、通信端末400に対して提供する送信データを生成する。送信データは、データ指定情報によって指定されたデータそのものであってよい。また、送信データは、データ指定情報によって指定されたデータから生成したデータであってもよい。
【0058】
S138では、情報提供装置200が、送信データを中継装置300に送信する。S140では、S126において確立したHTTPセッションを切断する。当該切断は、情報提供装置200が主体となって実行されてよい。情報提供装置200は、例えば、TCPコネクションのクローズをHTTPヘッダにおいて指定することによって、当該切断を実行する。また、当該切断は、中継装置300が主体となって実行されてもよい。中継装置300は、例えば、S138において送信データを受信したことに対する応答として、TCPコネクションのクローズをHTTPヘッダにおいて指定することによって、当該切断を実行する。
【0059】
S142では、中継装置300が、S138において受信した送信データにウィルス対策を実行する。S142において中継装置300によって実行されるウィルス対策による対策レベルは、S134において情報提供装置200によって実行されるウィルス対策による対策レベルはよりも高くてよい。例えば、情報提供装置200は、自らが有する情報のみを利用してウィルス対策を実行し、中継装置300は、ウィルス対策サービスを提供するクラウドサービス32と連携したウィルス対策を実行する。S144では、中継装置300が、送信データを通信端末400に送信する。
【0060】
上述したように、情報提供装置200から通信端末400に対してデータを提供する場合に、情報提供装置200においてウィルス対策を実行し、中継装置300において、情報提供装置200によるウィルス対策の対策レベルよりも高い対策レベルのウィルス対策を実行する構成とすることにより、情報提供装置200と中継装置300との間で処理負荷を適切に分散することができる。また、2重チェックにより、1重チェックと比較して精度の高いウィルス対策を実行し得るので、通信端末400の安全性を高め得る。
【0061】
通信システム10が
図2に示すような処理を実行することにより、ネットワーク20を、ファイヤーウォール機能を有するルータ40を介してネットワーク30に接続することによって、ネットワーク20内の処理装置22がウィルスに感染してしまうことを防止しつつ、ネットワーク20内のデータをネットワーク30内に配置される通信端末400に対して送信可能とすることができる。また、ネットワーク20内のデータに対して、2重のウィルス対策を施すことによって、安全性を高めることができる。これにより、世界各地の工場における、データのバックアップ及びログデータの回収等を適切に支援することができる。
【0062】
図3は、通信システム10による処理の流れの一例を概略的に示す。ここでは、
図2と異なる点を主に説明する。
【0063】
S202では、第1の通信端末400が利用者ID及びパスワードを含む接続要求を中継装置300に送信する。中継装置300は、受信した接続要求を格納する。S204では、第2の通信端末400が利用者ID及びパスワードを含む接続要求を中継装置300に送信する。中継装置300は、受信した接続要求を格納する。S206では、第3の通信端末400がセッションID及びデータ指定情報を含む接続要求を中継装置300に送信する。中継装置300は、受信した接続要求を格納する。
【0064】
S208では、情報提供装置200が、中継装置300との間でHTTPセッションを確立する。S210では、情報提供装置200が、確認要求を中継装置300に送信する。中継装置300は、確認要求を受信したことに応じて、情報提供装置200への接続要求を格納しているか否かを確認する。
図3に示す例では、中継装置300は、格納していると判定する。
【0065】
S212では、中継装置300が、3つの接続要求のそれぞれに含まれる利用者ID及びパスワードと、セッションID及びデータ指定情報とを情報提供装置200に送信する。
【0066】
S214では、情報提供装置200が、S212において受信した利用者ID及びパスワードに基づいて第1の通信端末400及び第2の通信端末400の認証可否を判定する。ここでは、認証可と判定されたものとして説明を続ける。S216では、情報提供装置200が、情報提供装置200と第1の通信端末400との間のセッションを識別するセッションIDを付与して、セッションIDと第1の通信端末400の利用者の利用者IDとを対応付けて対応付格納部に格納する。また、情報提供装置200が、情報提供装置200と第2の通信端末400との間のセッションを識別するセッションIDを付与して、セッションIDと第2の通信端末400の利用者の利用者IDとを対応付けて対応付格納部に格納する。
【0067】
S218では、情報提供装置200が、S212において受信したデータ指定情報によって指定されるデータの送信可否を判定する。ここでは、送信可と判定されたものとして説明を続ける。S220では、情報提供装置200が、データ指定情報によって指定されたデータを取得して、ウィルス対策を実行する。S222では、情報提供装置200が、通信端末400に対して提供する送信データを生成する。
【0068】
S224では、情報提供装置200が、S216において付与したセッションIDと、S222において生成した送信データとを、中継装置300に送信する。S226では、S208において確立したHTTPセッションを切断する。当該切断は、情報提供装置200が主体となって実行されてよい。情報提供装置200は、例えば、TCPコネクションのクローズをHTTPヘッダにおいて指定することによって、当該切断を実行する。また、当該切断は、中継装置300が主体となって実行されてもよい。中継装置300は、例えば、S224においてセッションID及び送信データを受信したことに対する応答として、TCPコネクションのクローズをHTTPヘッダにおいて指定することによって、当該切断を実行する。
【0069】
S228では、中継装置300が、S224において受信した送信データにウィルス対策を実行する。S230では、中継装置300が、S224において受信したセッションIDを第1の通信端末400に送信する。S232では、中継装置300が、S224において受信したセッションIDを第2の通信端末400に送信する。S234では、中継装置300が、S234においてウィルス対策を施した送信データを通信端末400に送信する。
【0070】
上述したように、複数の通信端末400によって送信された接続要求をまとめて処理するように構成することによって、全体の処理効率を向上させることができる。
【0071】
図4は、中継装置300の機能構成の一例を概略的に示す。中継装置300は、接続要求受信部302、接続要求格納部304、確認要求受信部306、接続要求確認部308、情報送信部310、及び通信中継部320を有する。
【0072】
接続要求受信部302は、通信端末400によって送信された情報提供装置200への接続要求を受信する。接続要求受信部302は、中継装置300が配置されるネットワーク30に配置される通信端末400によって送信された情報提供装置200への接続要求を受信してよい。接続要求受信部302は、ネットワーク30に配置される複数の通信端末400のそれぞれによって送信された接続要求を受信してよい。
【0073】
接続要求格納部304は、接続要求受信部302が受信した接続要求を格納する。接続要求格納部304は、接続要求受信部302が受信した複数の接続要求を格納してよい。接続要求格納部304は、接続要求を送信した通信端末400の通信端末IDに対応付けて接続要求を格納してよい。
【0074】
確認要求受信部306は、情報提供装置200によって送信された確認要求を受信する。当該確認要求は、接続要求受信部302が接続要求を格納しているか否かを中継装置300に確認させる要求であってよい。
【0075】
接続要求確認部308は、確認要求受信部306が確認要求を受信したことに応じて、接続要求格納部304に接続要求が格納されているか否かを確認する。接続要求確認部308は、確認要求を送信した情報提供装置200への接続要求が接続要求格納部304に格納されているか否かを確認してよい。接続要求確認部308は、例えば、確認要求に含まれる情報提供装置IDと同一の情報提供装置IDを含む接続要求が接続要求格納部304に格納されているか否かを確認する。
【0076】
情報送信部310は、接続要求確認部308によって接続要求が接続要求格納部304に格納されていることが確認された場合に、接続要求に含まれる情報を情報提供装置200に送信する。情報送信部310は、例えば、利用者IDを情報提供装置200に送信する。情報送信部310は、例えば、利用者ID及びパスワードを情報提供装置200に送信する。情報送信部310は、例えば、利用者ID、パスワード及び通信端末IDを情報提供装置200に送信する。
【0077】
情報送信部310は、例えば、セッションIDを情報提供装置200に送信する。情報送信部310は、例えば、セッションID及びデータ指定情報を情報提供装置200に送信する。情報送信部310は、例えば、セッションID、データ指定情報及び通信端末IDを情報提供装置200に送信する。
【0078】
通信中継部320は、情報提供装置200と通信端末400との間の通信を中継する。通信中継部320は、例えば、情報提供装置200から受信したセッションIDを通信端末400に送信する。
【0079】
また、通信中継部320は、例えば、情報提供装置200から受信した送信データを通信端末400に送信する。通信中継部320は、ウィルス対策部322を有してもよい。ウィルス対策部322は、情報提供装置200から受信した送信データに対するウィルス対策を実行する。ウィルス対策部322は、情報提供装置200から受信した送信データがウィルスに感染しているか否かを判定するウィルス判定処理を実行してよい。また、ウィルス対策部322は、ウィルス判定処理によってウィルスに感染していると判定した場合に、送信データに対してウィルス対応処理を施してよい。
【0080】
図5は、情報提供装置200の機能構成の一例を概略的に示す。情報提供装置200は、対応付格納部202、確認要求送信部204、情報受信部206、端末認証部208、セッションID付与部210、セッションID送信部212、送信可否判定部214、及び情報提供部220を備える。
【0081】
対応付格納部202は、情報提供装置200と通信端末400との間のセッションのセッションIDと、通信端末400の利用者の利用者IDとを対応付けて格納するための格納部である。
【0082】
確認要求送信部204は、確認要求を中継装置300に送信する。確認要求送信部204は、ネットワーク30内に配置される通信端末400によって送信された情報提供装置200への接続要求を接続要求格納部304が格納しているか否かを確認させる確認要求を、中継装置300に送信してよい。
【0083】
確認要求送信部204は、中継装置300との間でセッションを確立して、当該セッションを介して確認要求を中継装置300に送信してよい。確認要求送信部204は、中継装置300との間でHTTPセッションを確立して、当該HTTPセッションを介して確認要求を中継装置300に送信してよい。確認要求送信部204は、中継装置300との間でTCPコネクションを確立することによってセッションを確立してよい。
【0084】
情報受信部206は、接続要求に含まれる情報を中継装置300から受信する。情報受信部206は、例えば、情報送信部310によって送信された利用者IDを受信する。また、情報受信部206は、例えば、情報送信部310によって送信された、利用者ID及びパスワードを受信する。また、情報受信部206は、例えば、情報送信部310によって送信された、利用者ID、パスワード及び通信端末IDを受信する。
【0085】
情報受信部206は、例えば、情報送信部310によって送信されたセッションIDを受信する。情報受信部206は、例えば、情報送信部310によって送信されたセッションID及びデータ指定情報を受信する。情報受信部206は、例えば、情報送信部310によって送信されたセッションID、データ指定情報及び通信端末IDを受信する。
【0086】
情報受信部206は、接続要求に含まれる情報を中継装置300から受信したことに応じて、確認要求送信部204が確立したセッションを切断してよい。情報受信部206は、TCPコネクションのクローズを指定したHTTPヘッダを中継装置300に送信することによりTCPコネクションを切断することによって、セッションを切断してよい。
【0087】
端末認証部208は、情報受信部206が接続要求に含まれる情報を受信した場合であって、対応付格納部202が格納しているセッションIDが、情報受信部206が受信した情報に含まれない場合に、情報受信部206が受信した利用者IDに基づいて通信端末400の認証可否を判定する。端末認証部208は、情報受信部206が接続要求に含まれる情報を受信した場合であって、対応付格納部202が格納している有効なセッションIDが、情報受信部206が受信した情報に含まれない場合に、情報受信部206が受信した利用者IDに基づいて通信端末400の認証可否を判定してもよい。情報提供装置200は、情報受信部206が受信した情報に含まれるセッションIDが、対応付格納部202が格納しているセッションIDのいずれとも一致しなかった場合、又は、無効なセッションIDと一致した場合、利用者IDを送信することを要求する利用者ID送信要求を、中継装置300を介して、通信端末400に送信してもよい。通信端末400は、利用者ID送信要求を受信した場合、利用者IDを含む接続要求を中継装置300に送信してよい。
【0088】
セッションID付与部210は、端末認証部208によって認証可と判定された場合、情報提供装置200と通信端末400との間のセッションを識別するセッションIDを付与して、セッションIDと、通信端末400の利用者の利用者IDとを対応付けて対応付格納部202に格納させる。セッションID送信部212は、セッションID付与部210によって付与されたセッションIDを中継装置300に送信する。
【0089】
対応付格納部202は、セッションID送信部212がセッションIDを中継装置300に送信したときからの経過時間が予め定められた時間より長くなる前に情報受信部206が当該セッションIDと同一のセッションIDを受信しなかった場合に、当該セッションIDを削除したり無効にしたりしてよい。すなわち、対応付格納部202は、セッションID付与部210が新たなセッションIDを付与して、セッションID送信部212がセッションIDを中継装置300に送信した後、当該セッションIDが使用されないままタイムアウトした場合に、当該セッションIDを削除したり無効にしたりしてよい。
【0090】
対応付格納部202は、情報受信部206がセッションIDを受信したときからの経過時間が予め定められた時間より長くなる前に情報受信部206が当該セッションIDと同一のセッションIDを受信しなかった場合に、当該セッションIDを削除したり無効にしたりしてよい。すなわち、対応付格納部202は、セッションIDが使用されてから、当該セッションIDが使用されないままタイムアウト場合に、当該セッションIDを削除したり無効にしたりしてよい。
【0091】
送信可否判定部214は、情報受信部206が受信したセッションIDに基づいて、情報受信部206が受信したデータ指定情報によって指定されるデータの送信可否を判定する。送信可否判定部214は、例えば、情報受信部206が受信したセッションIDが、対応付格納部202に格納されている複数のセッションIDのいずれかと一致するか否かを判定する。いずれとも一致しなかった場合、送信可否判定部214は、送信否と判定してよい。いずれかと一致した場合、送信可否判定部214は、一致したセッションIDに対応付けて格納されている利用者IDによって、当該利用者IDによって識別される利用者の、データ指定情報によって指定されるデータへのアクセス権限を確認する。送信可否判定部214は、アクセス権限がある場合、送信可と判定してよく、アクセス権限がない場合、送信否と判定してよい。
【0092】
情報提供部220は、各種情報を、中継装置300を介して通信端末400に提供する。情報提供部220は、情報受信部206が接続要求に含まれる情報を受信した場合であって、対応付格納部202が格納しているセッションIDが、情報受信部206が受信した情報に含まれる場合、情報受信部206が受信した情報に応答して通信端末400に情報を提供してよい。情報提供部220は、例えば、情報受信部206が受信したデータ指定情報によって指定されるデータを中継装置300に送信する。
【0093】
情報提供部220は、ウィルス対策部222及び送信データ生成部224を有してよい。ウィルス対策部222は、データ指定情報によって指定されるデータに対するウィルス対策を実行する。ウィルス対策部222は、データ指定情報によって指定されるデータがウィルスに感染しているか否かを判定するウィルス判定処理を実行してよい。また、ウィルス対策部222は、ウィルス判定処理によってウィルスに感染していると判定した場合に、データに対してウィルス対応処理を実行してよい。
【0094】
ウィルス対策部222によるウィルス判定処理の処理レベルは、ウィルス対策部322によるウィルス判定処理の処理レベルよりも低くてよい。また、ウィルス対策部222によるウィルス対応処理の処理レベルは、ウィルス対策部322によるウィルス対応処理の処理レベルよりも低くてよい。例えば、ウィルス対策部322は、オープンネットワーク上の情報を利用したウィルス判定処理及びウィルス対応処理を実行してよい。ウィルス対策部322は、ネットワーク30内に配置されるクラウドサービス32によって提供されるウィルス対策サービスと連携したウィルス判定処理及びウィルス対応処理を実行してよい。
【0095】
送信データ生成部224は、データ指定情報によって指定されるデータに基づいて、送信データを生成する。送信データ生成部224は、例えば、データ指定情報によって指定されるデータを取得し、取得したデータそのものを送信データとしてよい。また、送信データ生成部224は、例えば、データ指定情報によって指定される複数のデータを取得し、複数のデータから送信データを生成する。具体例として、データ指定情報によって指定されるデータがメールデータである場合、送信データ生成部224は、複数のメールデータのヘッダ情報を集めたヘッダ一覧情報を、送信データとして生成する。
【0096】
図6は、情報提供装置200又は中継装置300として機能するコンピュータ1200のハードウェア構成の一例を概略的に示す。コンピュータ1200にインストールされたプログラムは、コンピュータ1200を、本実施形態に係る装置の1又は複数の「部」として機能させ、又はコンピュータ1200に、本実施形態に係る装置に関連付けられるオペレーション又は当該1又は複数の「部」を実行させることができ、及び/又はコンピュータ1200に、本実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又はすべてに関連付けられた特定のオペレーションを実行させるべく、CPU1212によって実行されてよい。
【0097】
本実施形態によるコンピュータ1200は、CPU1212、RAM1214、及びグラフィックコントローラ1216を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、記憶装置1224、DVDドライブ1226、及びICカードドライブのような入出力ユニットを含み、それらは入出力コントローラ1220を介してホストコントローラ1210に接続されている。DVDドライブ1226は、DVD-ROMドライブ及びDVD-RAMドライブ等であってよい。記憶装置1224は、ハードディスクドライブ及びソリッドステートドライブ等であってよい。コンピュータ1200はまた、ROM1230及びキーボードのようなレガシの入出力ユニットを含み、それらは入出力チップ1240を介して入出力コントローラ1220に接続されている。
【0098】
CPU1212は、ROM1230及びRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ1216は、RAM1214内に提供されるフレームバッファ等又はそれ自体の中に、CPU1212によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス1218上に表示されるようにする。
【0099】
通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。記憶装置1224は、コンピュータ1200内のCPU1212によって使用されるプログラム及びデータを格納する。DVDドライブ1226は、プログラム又はデータをDVD-ROM1227等から読み取り、記憶装置1224に提供する。ICカードドライブは、プログラム及びデータをICカードから読み取り、及び/又はプログラム及びデータをICカードに書き込む。
【0100】
ROM1230はその中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、及び/又はコンピュータ1200のハードウェアに依存するプログラムを格納する。入出力チップ1240はまた、様々な入出力ユニットをUSBポート、パラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ1220に接続してよい。
【0101】
プログラムは、DVD-ROM1227又はICカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもある記憶装置1224、RAM1214、又はROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ1200の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。
【0102】
例えば、通信がコンピュータ1200及び外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してよい。通信インタフェース1222は、CPU1212の制御の下、RAM1214、記憶装置1224、DVD-ROM1227、又はICカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
【0103】
また、CPU1212は、記憶装置1224、DVDドライブ1226(DVD-ROM1227)、ICカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックしてよい。
【0104】
様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、当該複数のエントリの中から、第1の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0105】
上で説明したプログラム又はソフトウエアモジュールは、コンピュータ1200上又はコンピュータ1200近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。
【0106】
本実施形態におけるフローチャート及びブロック図におけるブロックは、オペレーションが実行されるプロセスの段階又はオペレーションを実行する役割を持つ装置の「部」を表わしてよい。特定の段階及び「部」が、専用回路、コンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、及び/又はコンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタル及び/又はアナログハードウェア回路を含んでよく、集積回路(IC)及び/又はディスクリート回路を含んでよい。プログラマブル回路は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、及びプログラマブルロジックアレイ(PLA)等のような、論理積、論理和、排他的論理和、否定論理積、否定論理和、及び他の論理演算、フリップフロップ、レジスタ、並びにメモリエレメントを含む、再構成可能なハードウェア回路を含んでよい。
【0107】
コンピュータ可読記憶媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読記憶媒体は、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読記憶媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読記憶媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0108】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかを含んでよい。
【0109】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路が、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を生成するために当該コンピュータ可読命令を実行すべく、ローカルに又はローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路に提供されてよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0110】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
【0111】
請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0112】
10 通信システム、20 ネットワーク、22 処理装置、30 ネットワーク、32 クラウドサービス、40 ルータ、200 情報提供装置、202 対応付格納部、204 確認要求送信部、206 情報受信部、208 端末認証部、210 セッションID付与部、212 セッションID送信部、214 送信可否判定部、220 情報提供部、222 ウィルス対策部、224 送信データ生成部、300 中継装置、302 接続要求受信部、304 接続要求格納部、306 確認要求受信部、308 接続要求確認部、310 情報送信部、320 通信中継部、322 ウィルス対策部、400 通信端末、1200 コンピュータ、1210 ホストコントローラ、1212 CPU、1214 RAM、1216 グラフィックコントローラ、1218 ディスプレイデバイス、1220 入出力コントローラ、1222 通信インタフェース、1224 記憶装置、1226 DVDドライブ、1227 DVD-ROM、1230 ROM、1240 入出力チップ