(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-05-26
(45)【発行日】2023-06-05
(54)【発明の名称】ウェブブラウザ、クライアント、情報閲覧支援システム、および情報閲覧支援方法
(51)【国際特許分類】
G06F 21/62 20130101AFI20230529BHJP
H04L 67/2871 20220101ALI20230529BHJP
H04L 67/562 20220101ALI20230529BHJP
G06F 3/04842 20220101ALI20230529BHJP
G06F 21/44 20130101ALI20230529BHJP
【FI】
G06F21/62 318
H04L67/2871
H04L67/562
G06F3/04842
G06F21/44
(21)【出願番号】P 2022204149
(22)【出願日】2022-12-21
(62)【分割の表示】P 2021038935の分割
【原出願日】2021-03-11
【審査請求日】2022-12-21
【早期審査対象出願】
(73)【特許権者】
【識別番号】504132272
【氏名又は名称】国立大学法人京都大学
(73)【特許権者】
【識別番号】517186514
【氏名又は名称】株式会社フィットワークス
(74)【代理人】
【識別番号】100125117
【氏名又は名称】坂田 泰弘
(74)【代理人】
【識別番号】100086933
【氏名又は名称】久保 幸雄
(72)【発明者】
【氏名】山本 豪志朗
(72)【発明者】
【氏名】武内 寿明
(72)【発明者】
【氏名】本谷 崇之
【審査官】局 成矢
(56)【参考文献】
【文献】特開2008-225573(JP,A)
【文献】特表2012-527179(JP,A)
【文献】特開2011-221902(JP,A)
【文献】国際公開第2006/103752(WO,A1)
【文献】米国特許出願公開第2014/0208393(US,A1)
【文献】米国特許出願公開第2019/0155868(US,A1)
【文献】米国特許出願公開第2013/0347071(US,A1)
【文献】CACHATTO専用セキュアブラウザ,[online],2021年01月24日,[2023年02月02日検索]、インターネット<URL:https://web.archive.org/web/20210124081600/https://www.cachatto.jp/product/merit/csb.html>
【文献】CACHATTO公式ブログ,[online],2021年01月17日,[2023年02月02日検索]、インターネット<URL:https://web.archive.org/web/20210117084909/https://www.cachatto.jp/blog/cachatto/item_1775.html>
【文献】テレワークプラットフォーム CACHATTO,大塚商会 実践ソリューションフェア2020 ,2020年02月02日,pp.1-16
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/62
H04L 67/2871
H04L 67/562
G06F 3/04842
G06F 21/44
(57)【特許請求の範囲】
【請求項1】
特定のウェブサイトから提供される提供情報を閲覧するためにコンピュータにおいて用いられるウェブブラウザであって、
前記コンピュータに、
コピー情報を一時的に記憶する一時記憶手段を設ける処理を実行させ、
前記提供情報を表示する表示処理を実行させ、
前記提供情報の中からユーザによって選択された部分を前記コピー情報として前記一時記憶手段に記憶させる
第一のコピー処理を実行させ、
当該ウェブブラウザ自身がアクティブになった際に、前記コンピュータのオペレーティングシステムのクリップボードに記憶されている情報を前記コピー情報として前記一時記憶手段に記憶させる第二のコピー処理を実行させ、
ペーストのコマンドが入力された場合に、前記一時記憶手段に記憶されている前記コピー情報が貼り付けられた状態で、前記提供情報または前記特定のウェブサイトから取得された他の提供情報を表示する、ペースト処理を実行させる、
ことを特徴とするウェブブラウザ。
【請求項2】
前記特定のウェブサイトから前記提供情報を取得する処理を代行するプロキシシステムへ特定の項目に対して特定のコードを含む要求データとして、独自の項目が当該特定の項目として設定されているデータを送信する送信処理を前記コンピュータに実行させ、
前記表示処理は、前記プロキシシステムから送信されてきた前記提供情報を表示する処理である、
請求項1に記載のウェブブラウザ。
【請求項3】
前記ウェブサイト以外のサイトから発信されるウェブページへのハイパーリンクが選択された場合に一般のウェブブラウザに当該ウェブページを取得させる処理を、前記コンピュータに実行させる、
請求項1または請求項2に記載のウェブブラウザ。
【請求項4】
コピー情報を一時的に記憶する、当該クライアントのオペレーティングシステムのクリップボードとは異なる一時記憶手段と、
専用ウェブブラウザによって実現される、特定のウェブサイトが提供する提供情報を表示する表示手段と、
前記提供情報の中からユーザによって選択された部分を前記コピー情報として前記一時記憶手段に記憶させる
第一のコピー手段と、
前記専用ウェブブラウザがアクティブになった際に、前記クリップボードに記憶されている情報を前記コピー情報として前記一時記憶手段に記憶させる第二のコピー手段と、
ペーストのコマンドが入力された場合に、前記一時記憶手段に記憶されている前記コピー情報が貼り付けられた状態で、前記提供情報または前記特定のウェブサイトから取得された他の提供情報を表示する、ペースト手段と、
を有することを特徴とするクライアント。
【請求項5】
前記提供情報を当該特定のウェブサイトから取得する処理を代行するプロキシシステムへ特定の項目に対して特定のコードを含む要求データとして、独自の項目が当該特定の項目として設定されているデータを送信する、前記専用ウェブブラウザによって実現される送信手段、
を有し、
前記表示手段は、前記プロキシシステムから送信されてきた前記提供情報を表示する、
請求項4に記載のクライアント。
【請求項6】
前記ウェブサイト以外のサイトから発信されるウェブページへのハイパーリンクが選択された場合に一般のウェブブラウザに当該ウェブページを取得させる取得制御手段、
を有する、
請求項4または請求項5に記載のクライアント。
【請求項7】
請求項4ないし請求項6のいずれかに記載のクライアントと、
特定の項目に対して特定のコードを含む要求データを受信した場合に、特定のウェブサイトから提供される提供情報を当該特定のウェブサイトから取得して前記クライアントへ転送するプロキシシステムと、
を有することを特徴とする情報閲覧支援システム。
【請求項8】
特定のウェブサイトから提供される提供情報を閲覧するために用いられるクライアントに、
前記提供情報を表示する
表示処理を
専用ウェブブラウザによって実行させ、
コピー情報を一時的に記憶する、当該クライアントのオペレーティングシステムのクリップボードとは異なる一時記憶手段を設け、
前記提供情報の中からユーザによって選択された部分を前記コピー情報として前記一時記憶手段に記憶させる
第一のコピー処理を実行させ、
前記専用ウェブブラウザがアクティブになった際に、前記クリップボードに記憶されている情報を前記コピー情報として前記一時記憶手段に記憶させる第二のコピー処理を実行させ、
ペーストのコマンドが入力された場合に、前記一時記憶手段に記憶されている前記コピー情報が貼り付けられた状態で、前記提供情報または前記特定のウェブサイトから取得された他の提供情報を表示する、ペースト処理を実行させる、
ことを特徴とする情報閲覧支援方法。
【請求項9】
特定の項目に対して特定のコードを含む要求データとして、独自の項目が当該特定の項目として設定されているデータをプロキシシステムへ送信する送信処理を前記クライアントに実行させ、
前記要求データを受信した場合に前記提供情報を前記特定のウェブサイトから取得して前記クライアントへ転送する処理を前記プロキシシステムに実行させ、
前記表示処理として前記プロキシシステムから送信されてきた前記提供情報を表示する処理を前記クライアントに実行させる、
請求項8に記載の情報閲覧支援方法。
【請求項10】
前記ウェブサイト以外のサイトから発信されるウェブページへのハイパーリンクが選択された場合に一般のウェブブラウザに当該ウェブページを取得させる処理を、前記クライアントに実行させる、
請求項8または請求項9に記載の情報閲覧支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、インターネット等を介してやり取りされる情報を保護するための技術に関する。
【背景技術】
【0002】
近年、ウェブシステムが普及している。ウェブシステムによると、ユーザは、端末装置からインターネットなどの通信回線を介してウェブサーバへアクセスし、ウェブサーバの資源を使用することができる。
【0003】
資源を容易に使用できるようにするために、ウェブサイトがウェブサーバに構築されていることが多い。ユーザは、端末装置にインストールされているウェブブラウザによってウェブサイトへアクセスし、資源を使用する。
【0004】
しかし、資源が機密情報である場合は、セキュリティの対策が必要である。そこで、特許文献1に記載されるようなシステムが提案されている。
【0005】
このシステムは、コンテンツを定められた持続期間にだけアクセス可能に維持し、いずれの媒体にもコピーまたは印刷できない受信ペーパー装置を与える。装置は、マスターペーパー装置として試験監督モードで、受信ペーパー装置として試験モードで、使用できる。システムは、コンテンツを安全に作成するまたはオーサリングするコンテンツオーサリングエンジンを含む。コンテンツは、コンテンツオーサリングエンジンからクラウドサーバおよびマスターペーパー装置へ、パスワードで保護された暗号化形式で転送される。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述の受信ペーパー装置によると、他の媒体へコンテンツをコピーすることも印刷することもできないので、コンテンツの漏洩を従来よりも確実に防止することができる。
【0008】
しかし、クラウドサーバから受信ペーパー装置またはマスターペーパー装置以外の装置へコンテンツが配信されると、復号される機会が増えるので、コンテンツが漏洩するリスクが高くなる。
【0009】
本発明は、このような問題点に鑑み、機密情報の保護の確実性を従来よりも向上させることを目的とする。
【課題を解決するための手段】
【0010】
本発明の一形態に係る情報閲覧支援システムは、ウェブサイトから提供される提供情報を閲覧するためのクライアントと、前記クライアントが前記ウェブサイトから前記提供情報を取得する処理を代行するプロキシシステムと、を有する情報閲覧支援システムであって、前記クライアントは、特定の項目に対して特定のコードを含む要求データを前記プロキシシステムへ送信する送信手段、を有し、前記プロキシシステムは、前記要求データを受信した場合に前記提供情報を前記ウェブサイトから取得して前記クライアントへ転送する転送手段、を有し、前記クライアントは、さらに、前記提供情報を表示する表示手段、を有する。
【0011】
本発明の一形態に係る情報仲介システムは、特定のウェブサイトから提供される提供情報を閲覧するためのウェブブラウザを有するクライアントから要求データを受信する受信手段と、特定の項目に対して特定のコードが前記要求データに含まれているか否かを判別する判別手段と、前記特定の項目に対して前記特定のコードが前記要求データに含まれていると前記判別手段によって判別された場合に、前記ウェブサイトから前記提供情報を取得する取得手段と、前記提供情報を前記クライアントの前記ウェブブラウザへ転送する転送手段と、を有する。
【0012】
本発明の一形態に係るクライアントは、前記ウェブサイトから提供される提供情報を閲覧するためのクライアントであって、前記ウェブサイトから前記提供情報を取得する処理を代行するプロキシシステムへ、特定の項目に対して特定のコードを含む要求データを送信する送信手段と、前記プロキシシステムから送信されてきた前記提供情報を表示する表示手段と、を有する。
【発明の効果】
【0013】
本発明によると、機密情報の保護の確実性を従来よりも向上させることができる。
【図面の簡単な説明】
【0014】
【
図1】ウェブシステムの全体的な構成の例を示す図である。
【
図2】端末装置のハードウェア構成の例を示す図である。
【
図3】アクセス制御サーバのハードウェア構成の例を示す図である。
【
図4】アクセス制御サーバおよび端末装置それぞれの機能的構成の例を示す図である。
【
図5】認証時の流れの例を説明するシーケンス図である。
【
図9】操作対応処理の流れの例を説明するフローチャートである。
【
図10】ウェブサイトのウェブページからのコピーペーストの処理の例を示す図である。
【
図11】他のアプリケーションのウィンドウからのコピーペーストの処理の例を示す図である。
【
図12】プロキシソフトウェアおよび専用ウェブブラウザそれぞれによる全体的な処理の流れの例を説明するフローチャートである。
【発明を実施するための形態】
【0015】
図1は、ウェブシステム1の全体的な構成の例を示す図である。
図2は、端末装置3のハードウェア構成の例を示す図である。
図3は、アクセス制御サーバ2のハードウェア構成の例を示す図である。
図4は、アクセス制御サーバ2および端末装置3それぞれの機能的構成の例を示す図である。
【0016】
図1に示すウェブシステム1は、特定の業務における情報処理を行うシステムであって、アクセス制御サーバ2、端末装置3、情報管理システム4、および通信回線5などによって構成される。アクセス制御サーバ2は、端末装置3および情報管理システム4と通信回線5を介して通信することができる。通信回線5として、インターネット、LAN(Local Area Network)、または公衆回線などが用いられる。以下、医療機関において患者の情報を取り扱うためにウェブシステム1が使用される場合を例に説明する。
【0017】
情報管理システム4は、患者の情報を管理するシステムであって、データ管理およびウェブサーバなどの機能を有する。
【0018】
例えば、情報管理システム4は、患者の情報を端末装置3から受信してデータベース41に保存したり、端末装置3からの要求に基づいて患者の情報をデータベース41から提供したり、端末装置3からの要求に基づいてデータベース41内の患者の情報を更新しまたは削除したりする。
【0019】
また、情報管理システム4には、端末装置3のユーザによる作業を支援するためのウェブサイト42がウェブサーバの機能によって構築されている。ユーザは、ウェブサイト42の中の任意のウェブページを端末装置3で閲覧し、患者の情報についての上述の処理のための作業を行うことができる。
【0020】
データベースソフトウェアおよびウェブサーバソフトウェアなどをいわゆるサーバ機にインストールし、データベース41およびウェブサイト42を情報管理システム4に構築してもよい。または、クラウドサービスによってデータベース41およびウェブサイト42を構築してもよい。
【0021】
端末装置3は、情報管理システム4のサービスを受けるためのクライアントである。端末装置3として、パーソナルコンピュータ、スマートフォン、またはタブレットコンピュータなどが用いられる。以下、端末装置3としてパーソナルコンピュータが用いられる場合を例に説明する。
【0022】
端末装置3は、
図2に示すように、プロセッサ31、RAM(Random Access Memory)32、ROM(Read Only Memory)33、補助記憶装置34、ディスプレイ35、ネットワークコントローラ36、キーボード37、およびポインティングデバイス38などによって構成される。
【0023】
ROM33または補助記憶装置34には、オペレーティングシステム381、オフィスソフトウェア382、および標準ウェブブラウザ383などのプログラムがインストールされている。さらに、専用ウェブブラウザ30がインストールされている。補助記憶装置34として、ハードディスクまたはSSD(Solid State Drive)が用いられる。
【0024】
オペレーティングシステム381は、端末装置3のリソースの管理およびユーザインタフェースの提供などを行う。さらに、オペレーティングシステム381は、テキストまたは画像などのオブジェクトのデータを記憶するためのクリップボードを有する。ユーザは、あるアプリケーションで開いているファイルのデータの一部分をこのクリップボードにコピーしまたはカットし、そのファイル、他のファイル、または他のアプリケーションで開いている他のファイルなどにペーストすることができる。オペレーティングシステム381として、マイクロソフト社のWindows、アップル社のMAC OS、またはグーグル社のChrome OSなどが用いられる。Windows、MAC OS、およびChrome は、各社の商標または登録商標である。
【0025】
オフィスソフトウェア382は、ワープロ、表計算、およびプレゼンテーション等のアプリケーションプログラムである。標準ウェブブラウザ383は、ウェブページの閲覧用のアプリケーションプログラムである。標準ウェブブラウザ383として、マイクロソフト社のMicrosoft Edge、アップル社のSafari、グーグル社のChrome、またはモジラ社のFirefoxなどの一般に公開されているウェブブラウザが用いられる。専用ウェブブラウザ30については、後述する。Microsoft Edge、Safari、Chrome、およびFirefoxは、各社の商標または登録商標である。
【0026】
RAM32は、端末装置3のメインメモリである。RAM32には、適宜、ROM33または補助記憶装置34からプログラムがロードされる。プロセッサ31は、CPU(Central Processing Unit)またはGPU(Graphics Processing Unit)であって、RAM32にロードされたプログラムを実行する。
【0027】
ディスプレイ35は、オフィスソフトウェア382、標準ウェブブラウザ383、および専用ウェブブラウザ30それぞれの画面などを表示する。
【0028】
ネットワークコントローラ36は、TCP/IP(Transmission Control Protocol/Internet Protocol)などのプロトコルでアクセス制御サーバ2などの装置と通信する。ネットワークコントローラ36として、NIC(Network Interface Card)またはWi-Fi用通信装置などが用いられる。
【0029】
キーボード37およびポインティングデバイス38は、コマンドまたは情報をユーザが入力するために用いられる。
【0030】
図1に戻って、アクセス制御サーバ2は、情報管理システム4のセキュリティを確保するために、端末装置3とウェブサイト42との間でやり取りされるデータを仲介するプロキシである。
【0031】
アクセス制御サーバ2は、
図3に示すように、プロセッサ21、RAM22、ROM23、補助記憶装置24、およびネットワークコントローラ25などによって構成される。
【0032】
ROM23または補助記憶装置24には、オペレーティングシステム261およびプロキシソフトウェア20などのプログラムがインストールされている。
【0033】
RAM22は、アクセス制御サーバ2のメインメモリである。プロセッサ21には、適宜、ROM23または補助記憶装置24からプログラムがロードされる。プロセッサ21は、RAM22にロードされたプログラムを実行する。
【0034】
ネットワークコントローラ25は、TCP/IPなどのプロトコルで端末装置3および情報管理システム4などの装置と通信する。
【0035】
ところで、ウェブサイト42のドメイン名およびIPアドレスは公開されていない。さらに、情報管理システム4は、情報管理システム4と同じイントラネットに所属する装置およびアクセス制御サーバ2からのアクセスを受け付けるが、それ以外の装置からのアクセスを拒否するように設定されている。また、アクセス制御サーバ2のドメイン名およびIPアドレスも、公開されていない。アクセス制御サーバ2へアクセスするためには、専用ウェブブラウザ30が必要である。
【0036】
プロキシソフトウェア20および専用ウェブブラウザ30によると、このような環境において、ユーザは、情報管理システム4のサービスを受けることができる。以下、この仕組みについて説明する。
【0037】
プロキシソフトウェア20によると、
図4に示すアクセス権記憶部201、コネクション処理部202、デバイス認証部203、拒否通知部204、およびプロキシ処理部205などの機能がアクセス制御サーバ2に実現される。
【0038】
専用ウェブブラウザ30によると、
図4に示す初期設定値記憶部301、初期アクセス処理部302、ウェブページ表示処理部303、ウェブページ要求部304、標準ウェブブラウザ起動部305、第一のコピー処理部306、専用クリップボード307、第二のコピー処理部308、および入力データ送信部309などの機能が端末装置3に実現される。
【0039】
〔初期設定〕
アクセス権記憶部201には、アクセス権データ601が予め記憶されている。アクセス権データ601は、1つの認証用コード(特定のコード)を示すデータであって、端末装置3が正当なアクセス権を有することを認証するためのキーとして用いられる。この認証用コードは、多数のアルファベットおよび数字をランダムに組み合わせたものである。
【0040】
初期設定値記憶部301には、認証用データ602が予め記憶されている。認証用データ602は、データベース41へのゲートウェイのウェブサイトであるゲートウェイサイトのURL(Uniform Resource Locator)またはIPアドレスが示される。このゲートウェイサイトは、アクセス制御サーバ2に用意されている。さらに、認証用データ602には、認証用コードが示される。ユーザは、認証用データ602を閲覧することができない。認証用データ602を暗号化して初期設定値記憶部301に記憶させておいてもよい。
【0041】
〔デバイスの認証〕
図5は、認証時の処理の流れの例を説明するシーケンス図である。
図6は、初期リクエストデータ641の例を示す図である。
図7は、提供拒否ページ81の例を示す図である。
図8は、トップページ82の例を示す図である。
【0042】
端末装置3のユーザは、ウェブサイト42へアクセスしたい場合は、専用ウェブブラウザ30を端末装置3に起動させる。すると、端末装置3とウェブサイト42との間で通信を可能にするための処理が、
図5に示す手順で行われる。
【0043】
初期アクセス処理部302は、アクセス制御サーバ2を介して情報管理システム4のサービスを受けるための初期の処理を次のように実行する。
【0044】
初期アクセス処理部302は、初期設定値記憶部301から認証用データ602を読み出し、認証用データ602に示されるURLまたはIPアドレスに基づいてアクセス制御サーバ2へアクセスする。なお、読み出した認証用データ602が暗号化されている場合は、復号する。
【0045】
すると、初期アクセス処理部302およびコネクション処理部202は、TCPコネクションを確立し、さらに、SSL(Secure Sockets Layer)SocketによってTLS(Transport Layer Security)のネゴシエーションを行う(#721、#731)。これにより、暗号化通信が可能になる。つまり、アクセス制御サーバ2と端末装置3との間でデータが暗号化されてやり取りされるようになる。
【0046】
そして、初期アクセス処理部302は、初期リクエストデータ641をHTTP(Hypertext Transfer Protocol)リクエストとしてアクセス制御サーバ2へ送信する(#732)。
【0047】
図6のように、初期リクエストデータ641のヘッダには、「Secret-Gate」という名称の項目(特定の項目)および「79d85bc6306e6249306e9375」というコード(特定のコード)が記述されている。以下、この特定の項目を「認証用項目」と記載する。このコードは、上述の認証用コードである。
認証用項目は、標準化団体(例えば、IETF(Internet Engineering Task Force)のRFC(Request for Comments))の仕様に該当しない独自の項目であって、後述する認証のために新たに決めた特別の項目である。
【0048】
また、初期リクエストデータ641のリクエスト行には、ゲートウェイサイトのトップページを要求するコードが記述される。このコードは、認証用データ602に示されるゲートウェイサイトのURLまたはIPアドレスに基づいて定められる。なお、認証用項目の名称は、上記の条件に合えば「Secret-Gate」に限られない。
【0049】
デバイス認証部203は、初期リクエストデータ641を受信すると(#722)、初期リクエストデータ641のヘッダをチェックする(#723)。
【0050】
そして、初期リクエストデータ641に認証用項目が含まれない場合は(#724でNo)、拒否通知部204は、ウェブサイト42のウェブページの提供を拒否するメッセージを記したウェブページのウェブページデータ681をHTTPレスポンスとして端末装置3へ送信する(#726)。認証用項目が含まれるが(#724でYes)、認証用項目の値(コード)が、アクセス権記憶部201に記憶されるアクセス権データ601に示される認証用コードと一致しない場合も(#725でNo)、ウェブページデータ681を端末装置3へ送信する(#726)。なお、いずれの場合も、ウェブページデータ681の送信後、TCPコネクションが切断されてもよい。
【0051】
ウェブページ表示処理部303は、アクセス制御サーバ2からウェブページデータ681を受信すると(#733)、
図7のような提供拒否ページ81をディスプレイ35に表示させる(#734)。
【0052】
初期リクエストデータ641に認証用項目が含まれ(#724でYes)、かつ、認証用項目の値が、アクセス権データ601に示される認証用コードと一致する場合は(#725でYes)、プロキシ処理部205は、ウェブサイト42のトップページのリクエストを情報管理システム4へ送信する(#727)。
【0053】
情報管理システム4は、このリクエストを受信すると(#741)、ウェブサイト42のトップページのウェブページデータ682をアクセス制御サーバ2へ送信する(#742)。プロキシ処理部205は、ウェブページデータ682をHTTPレスポンスとして端末装置3へ転送する(#728)。
【0054】
さらに、デバイス認証部203は、端末装置3が正当なデバイスであると判別し、端末装置3へのサービスの提供を許可する(#729)。
【0055】
ウェブページ表示処理部303は、アクセス制御サーバ2からウェブページデータ682を受信すると(#735)、
図8のような、ウェブサイト42のトップのウェブページであるトップページ82をディスプレイ35に表示させる(#736)。
【0056】
ウェブページデータ682をはじめ、ウェブサイト42からアクセス制御サーバ2を介して端末装置3へ提供されるデータは、原則としてRAM32などの揮発性記憶媒体に一時的に記憶される。補助記憶装置34またはUSB(Universal Serial Bus)メモリなどの不揮発性記憶媒体には記憶されない。不揮発性記憶媒体の所定のディレクトリに記憶させてもよいが、このディレクトリへのユーザのアクセスを禁止し、または、データを暗号化してこのディレクトリに記憶させる。
【0057】
〔ユーザの操作に応じた処理〕
図9は、操作対応処理の流れの例を説明するフローチャートである。
図10は、ウェブサイト42のウェブページからのコピーペーストの処理の例を示す図である。
図11は、他のアプリケーションのウィンドウからのコピーペーストの処理の例を示す図である。
【0058】
端末装置3へのサービスの提供が許可されると、ユーザは、ウェブサイト42の任意のウェブページを使用することによって種々の業務を行うことができる。端末装置3において、ユーザが操作を行うごとに、
図9に示す手順で処理が行われる。
【0059】
アクティブであるウェブページ(以下、「カレントページ」と記載する。)に含まれるハイパーリンクがクリックされると(
図9の#751でYes)、そのハイパーリンクに対応付けられているウェブページ(以下、「リンク先ページ」と記載する。)がウェブサイト42のものであれば(#752でYes)、ウェブページ要求部304は、提供リクエストデータ642をHTTPリクエストとしてアクセス制御サーバ2へ送信することによって、リンク先ウェブページを要求する(#753)。提供リクエストデータ642は、HTTPリクエストであって、リンク先ページのURLおよびGETメソッドなどがリクエスト行に示されている。
【0060】
プロキシ処理部205は、提供リクエストデータ642を受信すると、提供リクエストデータ642のリクエスト行に示されるURLに基づいてリンク先ページのウェブページデータ683をウェブサイト42から取得し、HTTPレスポンスとして端末装置3へ転送する。
【0061】
そして、ウェブページ表示処理部303は、ウェブページデータ683を受信すると(#754)、ウェブページデータ683に基づいてウェブページ83をリンク先ページとしてディスプレイ35に表示させる(#755)。
【0062】
一方、リンク先ページがウェブサイト42のものでなければ(#752でNo)、標準ウェブブラウザ起動部305は、標準ウェブブラウザ383を起動し(#756)、リンク先ページのURLを標準ウェブブラウザ383へ与えることによって、標準ウェブブラウザ383にリンク先ページへアクセスさせる(#757)。
【0063】
すると、標準ウェブブラウザ383は、そのURLに基づいてリンク先ページのデータを取得し、リンク先ページをディスプレイ35に表示させる。
【0064】
または、カレントページの中のコンテンツが選択されコピーコマンドが入力されると(#758でYes)、第一のコピー処理部306は、選択されたコンテンツのデータをコピーデータ603として専用クリップボード307に記憶させる(#759)。例えば、カレントページの中の文字列が選択されコピーコマンドが入力されると、その文字列のテキストデータまたはリッチテキストデータをコピーデータ603として専用クリップボード307に記憶させる。
【0065】
なお、既に他のデータが専用クリップボード307に記憶されている場合は、第一のコピー処理部306は、当該他のデータを専用クリップボード307から削除し、選択されたコンテンツのデータを新たにコピーデータ603として専用クリップボード307に記憶させる。すなわち、上書きする。また、専用ウェブブラウザ30以外のアプリケーション(例えば、オフィスソフトウェア382および標準ウェブブラウザ383)が専用クリップボード307を参照することができない。
【0066】
または、専用ウェブブラウザ30以外のアプリケーションの画面(例えば、ウィンドウ)がアクティブである状態から専用ウェブブラウザ30のウェブページがアクティブになったら(#760でYes)、オペレーティングシステム381のクリップボードにデータが記憶されていれば、第二のコピー処理部308は、このデータをコピーデータ603として専用クリップボード307に記憶させる(#761)。以下、オペレーティングシステム381のクリップボードを「標準クリップボード51」と記載する。
【0067】
なお、既に他のデータが専用クリップボード307に記憶されている場合は、当該他のデータを専用クリップボード307から削除し、標準クリップボード51にデータが記憶されているデータを新たにコピーデータ603として専用クリップボード307に記憶させる。
【0068】
または、カレントページの中の入力用のコントロール(例えば、テキストボックス)に対してペーストコマンドが入力されると(#762でYes)、ウェブページ表示処理部303は、専用クリップボード307に記憶されているコピーデータ603のコンテンツ(例えば、文字列)をそのコントロールに貼り付け、カレントページを表示し直す(#763)。
【0069】
または、カレントページの中の送信ボタン(submitボタン)がクリックされると(#764でYes)、入力データ送信部309は、更新リクエストデータ643をHTTPリクエストとしてアクセス制御サーバ2へ送信する(#765)。更新リクエストデータ643には、カレントページのURLおよびPOSTメソッドを示すデータのほか、送信ボタンに対応する入力用のコントロール(例えば、テキストボックス)に入力されているコンテンツのデータが含まれている。
【0070】
アクセス制御サーバ2において、プロキシ処理部205は、更新リクエストデータ643を受信すると、更新リクエストデータ643に示される通りにデータベース41を更新するようにウェブサイト42に対して指令する。この際に、更新リクエストデータ643をウェブサイト42へ転送してもよい。
【0071】
ステップ#758~#763の処理によると、標準クリップボード51および専用クリップボード307が例えば次のように用いられる。
【0072】
専用ウェブブラウザ30によって表示されているウェブページ(カレントページ)の中のコンテンツが選択されコピーコマンドが入力された場合は、
図10に示すように、選択されたコンテンツのデータがコピーされコピーデータ603として専用クリップボード307に記憶される(#801)。そして、カレントページの中の入力用のコントロールにおいてペーストコマンドが入力されると、コピーデータ603に基づいてコンテンツがコントロールに貼り付けられる(#802)。専用ウェブブラウザ30の他のウェブページの中の入力用のコントロールにおいてペーストコマンドが入力された場合も同様に、コンテンツが貼り付けられる。
【0073】
一方、専用ウェブブラウザ30以外のアプリケーションの画面においてペーストコマンドが入力されても、そのアプリケーションは専用クリップボード307を参照することができないので、コンテンツは貼り付けられない。なお、標準クリップボード51にデータが記憶されている場合は、そのデータに基づいてコンテンツが貼り付けられることがある。
【0074】
または、専用ウェブブラウザ30以外のアプリケーションの画面の中のコンテンツが選択されコピーコマンドが入力された場合は、
図11に示すように、選択されたコンテンツのデータがコピーされ標準クリップボード51に記憶される(#811)。専用ウェブブラウザ30によって表示されるウェブページがアクティブになると、標準クリップボード51に記憶されているデータがコピーされコピーデータ603として専用クリップボード307に記憶される(#812)。そして、そのウェブページ(カレントページ)の中の入力用のコントロールにおいてペーストコマンドが入力されると、コピーデータ603に基づいてコンテンツがコントロールに貼り付けられる(#813)。
【0075】
〔ファイルのダウンロードの禁止〕
標準ウェブブラウザ383には、ファイルをダウンロードしてローカルのディスクに保存する機能が備わっている。すなわち、ウェブページが標準ウェブブラウザ383によって表示されているときに、ユーザがこのウェブページの中の画像、動画像、または音声などのオブジェクトを選択しダウンロードのコマンドを入力すると、標準ウェブブラウザ383は、選択されたオブジェクトのファイルをウェブサイトからダウンロードし、補助記憶装置34またはUSBメモリなどに保存する。
【0076】
しかし、専用ウェブブラウザ30には、このようなコマンドが用意されていない。したがって、ユーザは、ウェブサイト42からダウンロードされたファイルを補助記憶装置34またはUSBメモリなどに保存することができない。
【0077】
図12は、プロキシソフトウェア20および専用ウェブブラウザ30それぞれによる全体的な処理の流れの例を説明するフローチャートである。
【0078】
次に、アクセス制御サーバ2および端末装置3それぞれの全体的な処理の流れを、フローチャートを参照しながら説明する。
【0079】
アクセス制御サーバ2は、プロキシソフトウェア20に基づいて、
図12(A)に示す手順で処理を行う。
【0080】
アクセス制御サーバ2は、アクセス制御サーバ2とのコネクションが未だ確立されていない端末装置3から初期リクエストデータ641を受信した場合は(
図12(A)の#71でYes)、その端末装置3とのコネクションを確立するための処理を行う(#72)。この処理の手順は、
図5で説明した通りである。
【0081】
または、アクセス制御サーバ2とのコネクションが既に確立されている端末装置3から提供リクエストデータ642または更新リクエストデータ643を受信した場合は(#73でYes)、アクセス制御サーバ2は、その端末装置3の代わりにアクセス制御サーバ2とのやり取りを行う(#74)。具体的には、提供リクエストデータ642を受信した場合は、提供リクエストデータ642に基づいてウェブページデータ683をウェブサイト42から取得し、HTTPレスポンスとして端末装置3へ転送する。更新リクエストデータ643を受信した場合は、更新リクエストデータ643に示される通りにデータベース41を更新するようにウェブサイト42に対して指令する。
【0082】
アクセス制御サーバ2は、ステップ#72の処理およびステップ#74の処理を、サービスを継続している間(#75でNo)、適宜、実行する。
【0083】
一方、端末装置3は、専用ウェブブラウザ30に基づいて、
図12(B)に示す手順で処理を行う。
【0084】
端末装置3は、専用ウェブブラウザ30を起動すると、アクセス制御サーバ2とのコネクションを確立するための処理を行う(
図12(B)の#81)。この処理の手順は、
図5で説明した通りである。
【0085】
コネクションの確立に成功すると(#82でYes)、端末装置3は、ユーザによって操作がなされるごとに(#83でYes)、
図9に示した手順で、その操作に対応する処理を実行する(#84)。
【0086】
専用ウェブブラウザ30が終了するまでの間(#85でNo)、端末装置3は、ステップ#84の処理を適宜、実行する。ステップ#81においてコネクションの確立に失敗した場合は(#82でNo)、専用ウェブブラウザ30を終了する。
【0087】
本実施形態によると、ユーザは、情報管理システム4のウェブサイト42から提供されるウェブページを、一般のウェブブラウザでは取得することができず、専用ウェブブラウザ30を使用しなければならない。したがって、情報管理システム4で管理されている患者の機密情報を従来よりも確実に保護することができる。しかも、認証用項目および認証用コードが正しく設定されていなければ、専用ウェブブラウザ30へのサービスの提供が許可されないので、機密情報を一層確実に保護することができる。
【0088】
また、サービスの提供を許可するか否かをアクセス制御サーバ2が行うので、既存の情報管理システム4を大幅に改修しなくても、機密情報の保護を図ることができる。
【0089】
さらに、専用ウェブブラウザ30によると、ウェブサイト42の中のウェブページの情報を、そのウェブページまたはウェブサイト42の中の他のウェブページへコピーペーストすることはできるが、他のアプリケーションへコピーペーストすることはできない。他のアプリケーションで使用される情報をウェブサイト42の中のウェブページへコピーペーストすることができる。したがって、ユーザの利便性を図りつつ、情報管理システム4で管理される情報の保護を図ることができる。
【0090】
本実施形態では、アクセス制御サーバ2は、端末装置3から受信した初期リクエストデータ641に「Secret-Gate」という独自かつ特定の項目が設けられ、かつ、その項目の値として特定のコードが示される場合に、端末装置3へのサービスの提供を許可したが、さらに条件を課してもよい。
【0091】
例えば、アクセス可能なデバイスの識別子(UUID(Universally Unique Identifier)、IPアドレス、またはMAC(Media Access Control)アドレス)を示すデバイス一覧表をアクセス制御サーバ2に用意しておく。アクセス制御サーバ2は、端末装置3から識別子を取得し、取得した識別子が一覧表に示されていれば、サービスの提供を許可する。示されていなければ、サービスの提供を拒否する。
【0092】
または、アクセス可能なユーザの識別子およびパスワードを示すユーザ一覧表をアクセス制御サーバ2に用意しておく。アクセス制御サーバ2は、端末装置3からユーザの識別子およびパスワードを取得し、取得した識別子およびパスワードがユーザ一覧表に示されていれば、サービスの提供を許可する。示されていなければ、サービスの提供を拒否する。
【0093】
本実施形態では、端末装置3は、認証用項目および認証用コードを、初期リクエストデータ641のみに記述したが、常時または定期的に、提供リクエストデータ642または更新リクエストデータ643にも記述してもよい。そして、アクセス制御サーバ2は、提供リクエストデータ642または更新リクエストデータ643に認証用項目および認証用コードが記述されている場合は、初期リクエストデータ641を受信したときと同様に、サービスの提供の可否を判別する。
【0094】
本実施形態では、リンク先ページがウェブサイト42のものであるか否かを端末装置3が判別したが、アクセス制御サーバ2によって判別してもよい。この場合において、端末装置3の専用ウェブブラウザ30は、ハイパーリンクがクリックされると、リンク先ページがウェブサイト42のものであるか否かに関わらず、リンク先ページのURLを示すデータを提供リクエストデータ642としてアクセス制御サーバ2へ送信する。
【0095】
アクセス制御サーバ2は、提供リクエストデータ642を受信すると、提供リクエストデータ642に示されるURLがウェブサイト42以外のウェブサイトのウェブページのものである場合は、標準ブラウザ起動コマンドを専用ウェブブラウザ30へ送信する。
【0096】
そして、専用ウェブブラウザ30は、標準ブラウザ起動コマンドをアクセス制御サーバ2から受信すると、標準ウェブブラウザ383を起動し、標準ウェブブラウザ383にリンク先ページへアクセスさせる。
本実施形態では、アクセス権データ601には、認証用コードが1つしか示されていなかったが、異なる複数の認証用コードが示されていてもよい。そして、アクセス制御サーバ2は、これらの認証用コードのうちのいずれか1つが認証用項目の値として初期リクエストデータ641に示されていれば、情報管理システム4のサービスの提供を許可する。
または、認証用項目が複数、定義されていてもよい。この場合は、認証用項目ごとにアクセス権データ601を用意し、それぞれのアクセス権データ601に1つまたは複数の認証用コードを記述しておく。そして、アクセス制御サーバ2は、初期リクエストデータ641にいずれかの認証用項目が設けられており、かつ、この認証用項目の値として示されるコードがこの認証用項目のアクセス権データ601に示されていれば、情報管理システム4のサービスの提供を許可する。
【0097】
本実施形態では、情報管理システム4として、医療機関の患者の情報を管理するシステムを例に挙げて説明したが、他の情報を管理するシステムを情報管理システム4として用いることもできる。例えば、企業において顧客情報または従業員情報を管理するシステム、役所において住民の個人情報を管理するシステム、研究機関において技術情報を管理するシステムなどを情報管理システム4として使用することができる。
【0098】
その他、ウェブシステム1、アクセス制御サーバ2、端末装置3の全体または各部の構成、処理の内容、処理の順序、データの構成、画面の構成などは、本発明の趣旨に沿って適宜変更することができる。
【符号の説明】
【0099】
1 ウェブシステム(情報閲覧支援システム)
2 アクセス制御サーバ(プロキシシステム)
20 プロキシソフトウェア(コンピュータプログラム)
202 コネクション処理部(受信手段)
203 デバイス認証部(判別手段)
204 拒否通知部(通知手段)
205 プロキシ処理部(転送手段、取得手段)
3 端末装置(クライアント)
30 専用ウェブブラウザ(ウェブブラウザ)
302 初期アクセス処理部(送信手段)
303 ウェブページ表示処理部(表示手段)
35 ディスプレイ(表示手段)
42 ウェブサイト
603 コピーデータ(コピー情報)
641 初期リクエストデータ(要求データ)
681 ウェブページデータ
682 ウェブページデータ
683 ウェブページデータ
81 提供拒否ページ
82 トップページ(提供情報)
83 ウェブページ(提供情報)