以下、本発明を実施形態について、図面を用いて詳細を説明する。
図1に、本発明を適用した一実施の形態である計算機システムの概要構成を示す。
計算機システムは、複数のクライアント装置101a〜d、複数のコンテンツ生成サーバ装置102a〜c及び操作再生サーバ装置103が通信線(イントラネット150)と接続され、更に、操作再生サーバ装置103は、映像再生装置104と通信線を介して接続されて構成されている。
なお、本実施形態では、各装置の通信形態としてイントラネット150を適用しているが、インターネットや専用線を適用することも可能である。また、操作再生サーバ装置103と104とは、専用線で接続されることとするが、イントラネットやインターネットで接続されてもよい。
本実施形態の計算機システムの概要を説明すれば、クライント装置101a〜dは、Webアプリケーションサービス利用するために、所定のコンテンツ生成サーバ装置102a〜cに、イントラネット150を介してリクエストを送信する。リクエストを受信した所定のコンテンツ生成サーバ装置101a〜dは、所定のコンテンツを生成し、クライアント装置101a〜dに送信するようになっている。
この所定のコンテンツを受信したリクエスト送信元である所定のクライアント装置101a〜dは、画面上にそのコンテンツを表示し、ユーザは表示されたコンテンツ内の所定の入力部分に、キーボードやタッチパネルといった入力装置を介して、所定の情報の入力(機密情報を含む場合もある。)を行い、所定のコンテンツ生成サーバ装置102a〜cに、処理のリクエストを送信する。
クライント装置101a〜dは、ユーザによって入力された所定の情報を含むそのリクエストに対し、Webアプリケーションが有する所定の処理を実行するようになっている。また、必要であれば、ユーザに次の入力等を要求するために、クライント装置101a〜dは、再度コンテンツを生成し、クライアント装置101a〜dに、次のコンテンツを送信する。以上のように、計算機システムは、Webアプリケーションサービスを実行するようになっている。
また、コンテンツ生成サーバ102a〜cからクライント装置101a〜dにコンテンツを送信する際、コンテンツ生成サーバ102a〜cは、送信するコンテンツに機密情報が含まれているか否かを判別し、機密情報が含まれている場合には、当該コンテンツに識別子を付加するようになっている。
クライアント装置101a〜bは、自装置の操作内容を操作ログ111として格納するようになっている。この操作ログ111には、コンテンツに対してユーザが行った操作内容も格納されるようになっている。クライアント装置101a〜bで不具合等が生じた際、操作再生者(管理者)は、操作ログ111に対して操作再生サーバ装置103及び映像再生装置104を利用してその不具合の原因を究明することができるようになっている。
操作再生サーバ装置103は、イントラネット150を介してクライアント装置101a〜dの各操作ログ111を、取得することができようになっており、クライアント装置101a〜dで不具合が生じた際、この操作ログ111を映像再生装置104に再生(表示)するようになっている。操作再生者(管理者)は、映像表示装置104に表示された操作ログ111を解析して不具合の原因究明を行うことができるようになっている。
また、前述のように、操作ログ111中には、コンテンツの所定箇所に入力した機密情報が含まれていることがある。このため操作再生サーバ装置103は、コンテンツ再生サーバ102a〜cがコンテンツに付加した識別子を参照し、その識別子に基づいて操作ログ111から機密情報が隠匿(マスク)したデータ(操作ログ111)を映像再生装置104に出力するようになっている。このため、映像再生装置104の画面上では、機密情報が隠匿された操作ログ111が表示されることとなる。
また、コンテンツ生成サーバ装置102a〜cが、機密情報に識別子を付加するか否かの判定は、生成したコンテンツ内の文字列が、後述する機密情報DB114に格納された機密情報と一致するかによって行うようになっている。機密情報DB114に格納された機密情報は、初期設定として予め操作再生者(管理者)等が登録する他、クライアント装置からのリクエスト中に含まれ且つ機密情報DB114に登録されていない機密情報が適宜登録されるようになっている。
更に、コンテンツ生成サーバ装置102は、イントラネット150を介して他のコンテンツ生成サーバ装置102のコンテンツから所定の契機で機密情報を取得するようになっており、他のコンテンツ生成サーバ装置102のコンテンツに有って、自装置の機密情報DB114にない機密情報を適宜更新するようになっている。
以上が、本実施形態の計算機システムの概要である。
以下に、本実施形態の計算機システムを構成する装置について詳細に説明する。
図2に、クライアント装置101、コンテンツ生成サーバ装置102、映像再生装置103及び操作再生サーバ装置104の構成を詳細に示す。なお、簡単のために、図2では、クライアント装置101と、コンテンツ生成サーバ装置102とを1台ずつ示している。
また、コンテンツ生成サーバ装置102、映像再生装置103及び操作再生サーバ装置104は、同一筐体内のサーバ装置として構成してもよいし、一部を別筐体としてイントラネット150等の通信線で接続する構成であってもよい。
クライアント装置101は、コンテンツ生成サーバ装置102にリクエストを送信し、コンテンツ生成サーバ装置102から送信されたコンテンツを用いて、各種処理を実行する。
クライアント装置101は、CPU105、主記憶部106、補助記憶部107及びインタフェース141を備える。
CPU105は、主記憶部106に格納されるプログラムを実行する。
主記憶部106は、CPU105によって実行されるプログラムを格納する。主記憶部106は、例えば、メモリ等である。主記憶部106は、ブラウザ108及び操作ログ取得部109を格納する。
ブラウザ108は、コンテンツ生成サーバ装置102にコンテンツ生成のリクエストを送信し又コンテンツ生成サーバ装置102から送信されるコンテンツを表示して、各種処理を実行する。また、ブラウザ108は、再生されたコンテンツを補助記憶部107に格納する。クライアント装置101を操作するユーザは、ブラウザ108を用いて、各種処理を実行することができる。
本実施形態では、コンテンツ生成サーバ装置102から送信されるコンテンツには、参照権限に対応する機密箇所であることを示す印が付与される。
ここで、機密箇所であることを示す印は、コンテンツ生成サーバ装置102から送信されるコンテンツのうち、機密情報に該当する部分を示すための印である。また、参照権限は、機密箇所であることを示す印が付与された部分を参照するための権限である。つまり、参照可能な参照権限が設定されていない場合、機密箇所であることを示す印が付与された部分は参照できないように設定される。
以下、参照権限に対応する機密箇所であることを示す印を「機密箇所マーク」と呼ぶ。本実施形態では、参照権限ごとに異なる機密箇所マークが付与される。
本実施形態では、コンテンツ生成サーバ装置102からクライアント装置101へ送信されるレスポンスに、ブラウザ108上におけるクライアントの操作内容を記録するためのスクリプトコードが挿入される。
操作ログ取得部109は、ブラウザ108上におけるクライアントの操作記録(操作ログ)を取得する。具体的には、操作ログ取得部109は、コンテンツ生成サーバ装置102から送信されるレスポンスに挿入されたスクリプトコードを読み出すことによって、ブラウザ108上におけるクライアントの操作記録を取得する。
補助記憶部107は、CPU105が実行するプログラムに必要となる情報及び処理結果を格納する。補助記憶部107は、例えば、HDD等である。補助記憶部107は、コンテンツ110及び操作ログ111を格納する。
コンテンツ110は、ブラウザ108上で表示されたコンテンツであり、コンテンツ生成サーバ装置102によって、機密箇所マークが付与される。
操作ログ111は、操作ログ取得部109によって取得された、ブラウザ108上におけるクライアントの操作記録である。
インタフェース141は、他の装置と接続するためのインタフェースである。
コンテンツ生成サーバ装置102は、クライアント装置101から送信されたリクエストにしたがって、コンテンツを生成する。また、コンテンツ生成サーバ装置102は、生成されたコンテンツに機密箇所マークを付与し、機密箇所マークが付与されたコンテンツ(コンテンツ110)をクライアント装置101に送信する。
コンテンツ生成サーバ装置102は、CPU112、主記憶部113、機密情報DB114、コンテンツ生成用DB115及びインタフェース142を有する。
CPU112は、主記憶部113に格納されるプログラムを実行する。
主記憶部113は、CPU112によって実行されるプログラムを格納する。主記憶部106は、例えば、メモリ等である。主記憶部113は、コンテンツ生成処理部116、機密取得部117、及び機密情報付与部118を格納する。
コンテンツ生成処理部116は、ブラウザ108から送信されるリクエストにしたがって、コンテンツを生成する。生成されたコンテンツは、機密情報付与部118に出力される。
機密情報付与部118は、生成されたコンテンツに含まれる機密情報に該当する部分を特定し、当該特定された部分に機密箇所マークを付与する。機密情報付与部118は、機密箇所マーク付与部119及びコンテンツ解析部120を有する。
コンテンツ解析部120は、コンテンツ生成処理部116から入力されたコンテンツを解析し、解析結果に基づいて、機密情報DB114を更新する。
機密箇所マーク付与部119は、機密情報DB114を参照し、コンテンツ解析部120から入力されたコンテンツに含まれる機密情報に該当する部分を特定し、当該特定された部分に機密箇所マークを付与する。また、機密箇所マーク付与部119は、機密箇所マークが付与されたコンテンツ(コンテンツ110)をブラウザ108に送信する。
機密取得部117は、生成されるコンテンツに含まれる情報のうち、機密情報となる情報を決定する。また、機密取得部117は、機密情報として決定された情報の参照権限を決定する。決定された機密情報及び参照権限は、機密情報DB114に格納される。
機密情報DB114は、コンテンツに含まれる機密情報を判別するための情報を格納する。機密情報DB114は、機密情報付与部118によって参照される。コンテンツに含まれる機密情報を判別するための情報は、コンテンツ生成処理部116の出力内容を決定する、コンテンツ作成者によって設定される。なお、機密情報DB114の詳細については、図10Aを用いて後述する。
コンテンツ生成用DB115は、コンテンツを生成するために必要となる情報を格納する。コンテンツ生成用DB115は、コンテンツ生成処理部116及び機密取得部117によって参照される。なお、コンテンツ生成用DB115の詳細については、図10Bを用いて後述する。
インタフェース142は、他の装置と接続するためのインタフェースである。
映像再生装置103は、ブラウザ108上におけるクライアントの操作内容を再生する。操作再生サーバ装置104には、マシン管理者のような特定の人物しかログインできないように認証設定がされており、操作再生者は、操作再生サーバ装置104に直接ログインすることはできない。操作再生者は、映像再生装置103を介してのみ、操作再生サーバ装置104に格納される情報にアクセスできる。
映像再生装置103は、CPU121、主記憶部122及びインタフェース143を備える。
CPU121は、主記憶部122に格納されるプログラムを実行する。
主記憶部122は、CPU121によって実行されるプログラムを格納する。主記憶部106は、例えば、メモリ等である。
主記憶部122は、操作映像再生部123を格納する。
操作映像再生部123は、ブラウザ108上におけるクライアントの操作内容を操作再生サーバ装置104から取得し、ブラウザ108上におけるクライアントの操作内容を再生する。
操作映像再生部123は、再生制御部124及び映像出力部125を有する。
再生制御部124は、操作再生サーバ装置104を制御する。具体的には、再生制御部124は、操作再生サーバ装置104に操作ログ111の再生又は停止などを命令する。
映像出力部125は、操作再生サーバ装置104から送信されたブラウザ108上におけるクライアントの操作内容を、画像として再生する。これによって、映像再生装置103を操作する操作再生者は、ブラウザ108上におけるクライアントの操作内容を確認することができる。
インタフェース143は、操作再生サーバ装置と接続するためのインタフェースである。
操作再生サーバ装置104は、映像再生装置103から送信された命令にしたがって、ブラウザ108上におけるクライアントの操作内容を生成し、生成されたブラウザ108上におけるクライアントの操作内容を映像再生装置103に送信する。
操作再生サーバ装置104は、CPU126、主記憶部127、補助記憶部128及びインタフェース144を備える。
CPU126は、主記憶部127に格納されるプログラムを実行する。
主記憶部127は、CPU126によって実行されるプログラムを格納する。主記憶部127は、例えば、メモリ等である。主記憶部127は、操作再生部129及びブラウザ130を有する。
操作再生部129は、映像再生装置103から要求された、ブラウザ108上におけるクライアントの操作内容を生成し、生成されたブラウザ108上におけるクライアントの操作内容を、映像として映像再生装置103に送信する。
操作再生部129は、制御受付部131、操作再生部132、画像生成部133、及び画像配信部134を有する。
制御受付部131は、映像再生装置103から送信された命令を受信し、受信した命令に基づいて、操作再生部132の処理を指示する。
操作再生部132は、制御受付部131から送信された指示にしたがって、ブラウザ108上におけるクライアントの操作内容を再生するための処理を実行する。
具体的には、操作再生部132は、コンテンツ110に付与された機密箇所マークを読み出し、操作再生者の参照権限に基づいて、ブラウザ130に出力されるコンテンツのうち機密箇所マークが付与された部分をマスク(隠匿)する。
機密箇所であることを示す印が付与された部分がマスクされたコンテンツは、ブラウザ130に出力される。
操作再生部132は、機密箇所読取部135、操作再現スクリプト136、及びマスク付与部137を有する。
機密箇所読取部135は、再生されるコンテンツ110のうち、機密箇所マークが付与された部分を読み出す。
操作再現スクリプト136は、操作ログ111を読み出し、ブラウザ108上におけるクライアントの操作内容を再現するためのスクリプトを生成する。生成されたスクリプトは、ブラウザ130に出力される。
マスク付与部137は、操作再生者の参照権限に基づいて、再生されるコンテンツ110のうち、機密箇所マークが付与された部分をマスクする。機密箇所マークが付与された部分がマスクされたコンテンツは、ブラウザ130に出力される。
ブラウザ130は、操作再生部132から入力された各種情報に基づいて、ブラウザ108上におけるクライアントの操作内容を再現する。
画像生成部133は、ブラウザ130上で再現された、ブラウザ108上におけるクライアントの操作内容を、画像として取得する。取得された画像は、画像配信部134に出力される。本実施形態では、取得された画像は動画であるものとする。これによって、操作再生者は、クライアントの行った操作内容を時系列順に容易に把握することができる。なお、本発明はこれに限定されることなく、取得される画像は静止画であってもよい。
画像配信部134は、画像生成部133から入力された画像を映像再生装置103に送信する。
ブラウザ130は、ブラウザ108と同一のものである。ブラウザ130は、操作再生部132から入力された情報に基づいて、ブラウザ108上におけるクライアントの操作内容を再生する。
補助記憶部128は、CPU126が実行するプログラムに必要となる情報及び処理結果を格納する。補助記憶部107は、例えば、HDD等である。
補助記憶部128は、コンテンツ110及び操作ログ111を格納する。なお、コンテンツ110及び操作ログ111は、クライアント装置101に格納される、コンテンツ110及び操作ログ111と同一のものである。
操作再生サーバ装置104が、クライアント装置101から、コンテンツ110及び操作ログ111を取得する方法としては、例えば、クライアント装置101と操作再生サーバ装置104とがネットワーク(図示省略)で接続されている場合は、ネットワークを介して取得される。また、他の方法としては、クライアント装置101に格納されるコンテンツ110及び操作ログ111を記憶メディア等に記録し、当該記録メディア等から取得する方法が考えられる。
インタフェース144は、他の装置と接続するためのインタフェースである。
まず、クライアント装置101及びコンテンツ生成サーバ装置102の構成並びにコンテンツ110及び操作ログ111の取得方法について説明する。
なお、本実施形態における計算機システムは、操作再生者の個人情報を管理するデータベース(図示省略)を備える。映像再生装置103は、当該データベースを参照することによって、映像再生装置103を操作する操作再生者の個人情報を取得し、認証処理等を実行することができる。なお、当該データベースは少なくとも、操作再生者の参照権限に関する情報を含む。
図3は、本実施形態における、コンテンツ取得時のクライアント装置101及びコンテンツ生成サーバ装置102の処理を説明するシーケンス図である。
クライアント装置101上のブラウザ108は、コンテンツ生成サーバ装置102上のコンテンツ生成処理部116にリクエストを送信する(S2001)。
リクエストを受信した、コンテンツ生成サーバ装置102上のコンテンツ生成処理部116は、受信したリクエストに対するレスポンスとしてコンテンツを生成し、生成されたコンテンツをコンテンツ生成サーバ装置102上の機密情報付与部118に出力する(S2002)。なお、この時点では、生成されたコンテンツには機密箇所マークは付与されていない。
生成されたコンテンツが入力された機密情報付与部118は、コンテンツ解析部120及び機密箇所マーク付与部119を呼び出す(S2003、S2004)。
呼び出されたコンテンツ解析部120及び機密箇所マーク付与部119は、それぞれ処理を開始する。なお、機密箇所マーク付与部119が実行する処理によって、生成されたコンテンツに機密箇所マークが付与される。
機密情報付与部118は、機密箇所マークが付与されたコンテンツをブラウザ108に送信する(S2005)。
図4は、本実施形態の機密情報付与部118が機密箇所を判別する処理を説明するブロック図である。
まず、機密情報DB114について説明する。機密情報DB114は、機密取得部117又は機密情報付与部118によって更新される。
機密取得部117は、機密情報DB更新部201及びイントラ検索部202を有する。
イントラ検索部202は、イントラネット150を介して、他のコンテンツ生成サーバ装置内のコンテンツを取得する。また、イントラ検索部202は、機密情報DB114から正規表現902(図10Aを用いて後述する。)を取得し、正規表現902と一致する文字列が、イントラネット150を介して取得されたコンテンツに含まれるか否かを判定する。
正規表現902と一致する文字列が、イントラネット150を介して取得されたコンテンツに含まれないと判定された場合、つまり、イントラネット150から取得されたコンテンツが、正規表現902とは異なる文字列を含む場合、イントラ検索部202は、正規表現902とは異なる文字列を含むコンテンツが存在する旨を機密情報DB更新部201に通知する。なお、当該通知には、新たに機密情報となり得る文字列の情報が含まれる。
イントラ検索部202から通知を受けた機密情報DB更新部201は、新たに機密情報となり得る文字列を機密情報DB114に格納する。
正規表現902と一致する文字列が、イントラネット150を介して取得されたコンテンツに含まれると判定された場合、イントラ検索部202は、処理を終了する。
次に、機密箇所の判別処理について説明する。
クライアント装置101からリクエストを受信したコンテンツ生成処理部116は、コンテンツを生成し、生成されたコンテンツを機密情報付与部118に出力する。
機密情報付与部118において、生成されたコンテンツが入力されたコンテンツ解析部120は、機密情報DB114を参照し、入力されたコンテンツを解析し、解析結果に基づいて、機密情報DB114を更新する。なお、コンテンツ解析部120が実行する処理の詳細は、図5を用いて後述する。
機密箇所マーク付与部119は、機密情報DB114を参照し、コンテンツ解析部120から入力されたコンテンツに含まれた機密情報部分を特定し、特定された部分に機密箇所マークを付与する。
具体的には、入力されたコンテンツに、正規表現902と一致する文字列が含まれると判定された場合、機密箇所マーク付与部119は、入力されたコンテンツが機密情報を含むと判定する。
さらに、機密箇所マーク付与部119は、入力されたコンテンツに含まれる機密情報である部分に含まれる文字列と、機密文字列903(図10Aを用いて後述する。)とを対比し、具体的な機密文字列を特定する。
機密箇所マーク付与部119は、入力されたコンテンツに含まれる文字列と一致する機密文字列903に対応する参照権限904(図10Aを用いて後述する。)を参照する。
機密箇所マーク付与部119は、コンテンツにおける機密情報である部分に、参照権限904に対応した機密箇所であることを示す印を付与する。
以上の処理のよって、入力されたコンテンツに機密箇所マークが付与される。
機密箇所マーク付与部119は、機密箇所マークが付与されたコンテンツをクライアント装置101に送信する。
なお、コンテンツ解析部120によって、入力されたコンテンツに、正規表現902と一致する文字列が含まれないと判定された場合、機密箇所マーク付与部119は、何も処理を実行せずに、入力されたコンテンツをクライアント装置101に送信する。
図10Aは、本実施形態の機密情報DB114の詳細を示す説明図である。
機密情報DB114は、機密情報識別子901、正規表現902、機密文字列903、及び参照権限904を含む。
機密情報識別子901は、機密情報を識別するための識別子である。正規表現902は、機密情報に該当する文字列のパターンである。機密文字列903は、実際にコンテンツに含まれる機密情報を示す文字列である。参照権限904は、機密情報を参照するための権限である。
機密情報識別子901及び正規表現902は、コンテンツ作成者等によって、予め設定されておくことが望ましい。
また、正規表現で記述することが難しい文字列を設定する場合には、機密文字列903もコンテンツ製作者が、予め設定してもよい。参照権限904についても、コンテンツ製作者が設定してもよい。
本実施形態では、住所、銀行口座、電話番号、名前及びパスワードが機密情報として設定されている。特に、名前は、正規表現で記述することが難しいため、コンテンツ製作者が予め機密情報DB114に設定するようにしてもよい。
図5は、本実施形態のコンテンツ解析部120が機密情報DB114を更新する処理を説明するフローチャートである。
コンテンツ解析部120は、コンテンツにおける機密箇所の解析処理を開始する(ステップS401)。まず、コンテンツ解析部120は、コンテンツ生成処理部116によって生成されたコンテンツを取得する(ステップS402)。
コンテンツ解析部120は、機密情報DB114を参照し、正規表現902の文字列を取得する(ステップS403)。
次に、コンテンツ解析部120は、取得されたコンテンツに含まれる文字列と、正規表現902の文字列とが一致するか否かを判定する(ステップS404)。
取得されたコンテンツに含まれる文字列と、正規表現902の文字列とが一致しないと判定された場合、コンテンツ解析部120は、処理を終了する(ステップS409)。
取得されたコンテンツに含まれる文字列と、正規表現902の文字列とが一致すると判定された場合、コンテンツ解析部120は、当該コンテンツに含まれる文字列から、正規表現902の文字列と一致する文字列を切り出す(ステップS405)。
コンテンツ解析部120は、取得されたコンテンツから切り出された文字列が機密情報DB114に含まれるか否かを判定する(ステップS406)。具体的には、コンテンツ解析部120は、取得されたコンテンツから切り出された文字列と一致する文字列が機密文字列903に存在するか否かを判定する。
取得されたコンテンツから切り出された文字列と一致する文字列が機密文字列903に存在すると判定された場合、コンテンツ解析部120は、処理を終了する(ステップS409)。
取得されたコンテンツから切り出された文字列と一致する文字列が機密文字列903に存在しないと判定された場合、コンテンツ解析部120は、機密情報DB更新部203を呼び出し、コンテンツから切り出された文字列を機密情報DB114に格納させる(ステップ407)。
具体的には、コンテンツ解析部120は、ステップS404において、取得されたコンテンツに含まれる文字列と一致すると判定された正規表現902に対応する機密文字列903に、新たにエントリを追加する。さらに、コンテンツ解析部120は、新たに追加されたエントリに、ステップS405において、コンテンツから切り出された文字列を格納し、参照権限付与部601を呼び出す。参照権限付与部601は、新たに追加されたエントリの参照権限904を設定する。
コンテンツ解析部120は、機密箇所マーク付与部119を呼び出し(ステップS408)、処理を終了する(ステップS409)。
なお、ステップS402〜ステップS409の処理は、全ての正規表現902について実行される。具体的には、コンテンツ解析部120は、ステップS403において一つの正規表現902を選択し、選択された正規表現902に対して、ステップS404〜ステップ408の処理を実行し、処理が終了した後に、次の正規表現902を選択し、同様の処理を実行する。つまり、ループ処理が実行される。
図6は、本実施形態のイントラ検索部202が実行する処理を説明するフローチャートである。
イントラ検索部202は、周期的にイントラネット検索を開始する(ステップS501)。なお、イントラネット検索処理を開始する周期は、コンテンツ作成者等によって設定されてもよい。
まず、イントラ検索部202は、機密情報DB114の正規表現902を参照し、正規表現902の文字列を取得する(ステップS502)。
イントラ検索部202は、イントラネット150内の一定範囲を検索することによって、コンテンツを収集する(ステップS503)。イントラ検索部202がコンテンツを収集するために検索する一定範囲は、コンテンツ作成者等によって設定され、例えば、イントラネット150の入り口を示すURLが指定された、当該URLからリンクが張られているURLに再帰的にアクセスすることによってコンテンツが収集される。
イントラ検索部202は、収集されたコンテンツを解析し(ステップS504)、解析されたコンテンツに含まれる文字列と、取得された正規表現902の文字列とが一致するか否かを判定する(ステップS505)。
解析されたコンテンツに含まれる文字列と、取得された正規表現902の文字列とが一致しないと判定された場合、イントラ検索部202は、処理を終了する(ステップS507)。
解析されたコンテンツに含まれる文字列と、取得された正規表現の文字列とが一致すると判定された場合、イントラ検索部202は、機密情報DB更新部201を呼び出し(ステップS506)、処理を終了する(ステップS507)。
なお、読み出された機密情報DB更新部201は、取得された正規表現の文字列に一致する文字列を含むコンテンツから、取得された正規表現の文字列に一致する文字列を切り出し、当該切り出された文字列を、正規表現902に対応する機密文字列903に追加する。
図7は、本発明の実施形態の参照権限付与部601を説明するブロック図である。
図7に示すように、機密取得部117は、参照権限付与部601を有する。
参照権限付与部601は、複数の参照権限を用いて、コンテンツ生成用DB115に格納される文字列を参照するための機能を備える。
参照権限付与部601は、コンテンツ解析部120に呼び出され(ステップS408)、又は、機密情報DB更新部201に呼び出され、以下で説明する処理を実行する。
参照権限付与部601は、コンテンツ生成用DB115に含まれ、正規表現902の文字列に一致する文字列を参照するための参照権限を決定する。
参照権限付与部601は、決定された参照権限を機密情報DB更新部201に通知し、機密情報DB更新部201は、当該通知に基づいて、機密情報DB114の参照権限904に決定された参照権限を格納する。
具体的には、参照権限付与部601は、任意の参照権限を用いて、コンテンツ生成用DB115に含まれ、正規表現902の文字列に一致する文字列を参照できるか否かを判定する。機密取得部117は、当該文字列を参照できた参照権限を参照権限904として決定する。当該文字列を参照できた参照権限が複数ある場合、最もレベルの低い参照権限が参照権限904として決定される。
図7に示す例では、参照権限付与部601は、担当者権限、主任権限、及び課長権限の、それぞれの参照権限を用いて、コンテンツ生成用DB115に格納された文字列を参照できるか否かを判定する。
参照権限付与部601が、担当者権限又は主任権限を用いた場合、コンテンツ生成用DB115に格納された文字列を参照できない。一方、参照権限付与部601が、課長権限を用いた場合、コンテンツ生成用DB115に格納された文字列を参照できる。したがって、図7に示す例の場合、参照権限付与部601は、参照権限904を「課長権限」に決定する。
ここで、参照権限付与部601がアクセスするコンテンツ生成用DB115について
説明する。
図10Bは、本実施形態のコンテンツ生成用DB115を示す説明図である。
コンテンツ生成用DB115は、コンテンツを生成するために必要な情報を格納する。具体的には、コンテンツを生成するために必要となる文字列等を格納する。
コンテンツ生成用DB115に格納される情報は、コンテンツ生成サーバ装置102が提供するサービスに依存する。コンテンツ生成用DB115は、コンテンツ作成者によって作成される。
図10Bに示す例では、名前905と住所906とを含む。名前905は、名前の文字列を格納する。住所906は、住所の文字列を示す。なお、コンテンツ生成用DB115は、他の情報及び文字列を含んでもよい。
図8は、本実施形態の参照権限付与部601が実行する処理を説明するフローチャートである。
参照権限付与部601は、コンテンツ解析部120に呼び出され(図5のステップS408)又は機密情報DB更新部201に呼び出され、参照権限を付与するための処理を開始する(ステップS701)。また、参照権限付与部601は、コンテンツ作成者等によって設定された周期にしたがって、周期的に処理を実行してもよい。
参照権限付与部601は、機密情報DB114を参照し、参照権限904が設定されていない機密文字列903を取得する(ステップS702)。
次に、参照権限付与部601は、コンテンツ生成用DB115に格納され、取得された機密文字列903と一致する文字列にアクセスするための参照権限を最低のレベルに設定する(ステップS703)。
参照権限付与部601は、設定された参照権限を用いて、コンテンツ生成用DB115にアクセスする(ステップS704)。
参照権限付与部601は、コンテンツ生成用DB115にアクセスできたか否かを判定する(ステップS705)。
コンテンツ生成用DB115にアクセスできると判定された場合、参照権限付与部601は、機密情報DB更新部201を呼び出し(ステップS706)、処理を終了する(ステップS710)。
呼び出された機密情報DB更新部201は、ステップ702において取得された機密文字列903に対応する参照権限904に、コンテンツ生成用DB115にアクセスすることが可能となった参照権限を設定する。
コンテンツ生成用DB115にアクセスできないと判定された場合、参照権限付与部601は、設定された参照権限が最高のレベルであるか否かを判定する(ステップS707)。
設定された参照権限が最高のレベルでないと判定された場合、参照権限付与部601は、ステップ704において用いられた参照権限のレベルより高いレベルの参照権限を設定し(ステップS709)、ステップS704に戻り、ステップS704〜ステップS710の処理を実行する。
設定された参照権限が最高のレベルであると判定された場合、参照権限付与部601は、機密情報DB更新部201を呼び出し(ステップS708)、処理を終了する(ステップS710)。
呼び出された機密情報DB更新部201は、ステップS702において取得された機密文字列903に対応する参照権限904に、最高のレベルの参照権限を設定する。
図9は、本実施形態の機密情報DB114に格納される情報が更新されるタイミングを示す説明図である。
図9に示すように、イントラ検索部202がイントラネット150から機密情報となり得る文字列が含まれるコンテンツを収集し、当該機密情報となり得る文字列を機密情報DB114に格納する場合に、機密情報DB更新部201によって、機密文字列903は更新される。
また、参照権限付与部601が機密文字列903に対応する参照権限904に参照権限を設定する場合に、機密情報DB更新部201によって、参照権限904が更新される。
図11は、本実施形態のコンテンツ生成サーバ装置102がコンテンツに機密箇所マークを付与する処理の一例を示す説明図である。
クライアント装置101からリクエストを受信したコンテンツ生成処理部116は、コンテンツ1001を生成し、生成されたコンテンツ1001を機密情報付与部118に出力する。ここで、生成されたコンテンツ1001は、機密部分1002を含む。
コンテンツ生成処理部116から出力された時点においては、コンテンツ1001の機密部分1002は特定されていない。
コンテンツ解析部120は、コンテンツ生成処理部116から入力されたコンテンツ1001に基づいて、機密情報DB114を更新する。具体的には、機密文字列903及び参照権限904が更新される。
次に、機密箇所マーク付与部119は、機密情報DB114を参照し、コンテンツ1001に含まれる機密情報である部分(機密部分1002)を特定し、当該特定された部分に機密箇所マーク1003を付与する。
さらに、機密箇所マーク付与部119は、機密箇所マーク1003が付与されたコンテンツ110をクライアント装置101に送信する。
図12は、本実施形態の機密箇所マーク付与部119が実行する処理を説明するフローチャートである。
機密箇所マーク付与部119は、コンテンツ解析部120からコンテンツが入力されると処理を開始する(ステップS1101)。
まず、機密箇所マーク付与部119は、機密情報DB114を参照し、機密情報DB114から機密文字列903を取得する(ステップS1102)。
機密箇所マーク付与部119は、入力されたコンテンツに含まれる文字列と、機密文字列903とを対比する(ステップS1103)。
機密箇所マーク付与部119は、対比の結果に基づいて、入力されたコンテンツに含まれる文字列が機密文字列903と一致するか否かを判定する(ステップS1104)。
入力されたコンテンツに含まれる文字列が取得された機密文字列903と一致しないと判定された場合、機密箇所マーク付与部119は、処理を終了する(ステップS1107)。
入力されたコンテンツに含まれる文字列が取得された機密文字列903と一致すると判定された場合、機密箇所マーク付与部119は、機密文字列903と一致文字列を含むコンテンツに、機密箇所マークを付与する(ステップS1105)。具体的には機密文字列903に対応する参照権限904に対応する機密箇所であることを示す印が、当該文字列に付与される。
機密箇所マーク付与部119は、機密箇所マークが付与されたコンテンツをクライアント装置101に送信し(ステップS1106)、処理を終了する(ステップS1107)。
なお、ステップS1101〜ステップS1107の処理は、機密文字列903に格納される全ての文字列について実行される。
図13Aは、本実施形態におけるコンテンツの一例を示す説明図である。
本実施形態では、同一のURLにアクセスする場合に、アクセスする人又はアクセスする時間等の要因によって、コンテンツの表示内容が変わる部分を動的箇所と呼ぶ。
図13Aに示す例では、住所を表示する部分1201が動的箇所となる。以下、当該部分を動的箇所1201と呼ぶ。
本実施形態では、同一のURLにアクセスする場合に、アクセスする人又はアクセスする時間等の要因によって、コンテンツの表示内容が変わらない部分を静的箇所と呼ぶ。
図13Aに示す例では、指示を示す部分1202が静的箇所となる。以下、当該部分を静的箇所1202と呼ぶ。
本実施形態では、動的箇所を含むコンテンツを動的コンテンツと呼び、静的コンテンツのみを含むコンテンツを静的コンテンツと呼ぶ。なお、図13Aに示すコンテンツは、動的コンテンツである。
図13Bは、本実施形態におけるコンテンツの機密箇所に、機密箇所マークを付与する方法の一例を示す説明図である。
本実施形態では、コンテンツ生成処理部116によって生成されたコンテンツが、動的コンテンツ又は静的コンテンツであっても、文字列として出力される。また、コンテンツ生成サーバ装置102からクライアント装置101に送信されるコンテンツは、HTML形式で送信される。
本実施形態では、前述したコンテンツの特性を利用する。具体的には、機密箇所であることを示す印を付与する場合に、機密箇所マーク付与部119は、HTMLのタグを利用し、機密箇所の前後に、参照権限904に対応するタグを埋め込みことによって、機密箇所であることを示す印を付与する。
図13Bに示す例では、機密文字列903と一致した文字列の前後に、参照権限904に対応するマスク属性が埋め込まれることによって、参照権限904に対応する機密箇所であることを示す印が付与される。
以上が、クライアント装置101及びコンテンツ生成サーバ装置102の構成並びにコンテンツ110及び操作ログ111の取得方法についての説明である。
次に、映像再生装置103及び操作再生サーバ装置104の構成、並びに、コンテンツ110及び操作ログ111の再生方法について説明する。
図14は、本実施形態のブラウザ108上におけるクライアントの操作内容を再生するための処理の流れを説明するブロック図である。
再生制御部124は、制御受付部131に、ブラウザ108上におけるクライアントの操作内容を再生するよう命令する。なお、再生制御部124は、ブラウザ108上におけるクライアントの操作内容の再生の停止及び一時停止等も命令できる。
再生制御部124から再生命令を受信した制御受付部131は、操作再生部132に再生命令を発行する。
制御受付部131から再生命令を受けた操作再生部132は、ブラウザ108上におけるクライアントの操作内容を再生するための処理を開始する。以下、操作再生部132が実行する処理について説明する。
まず、操作再現スクリプト136が、補助記憶部128に格納される操作ログ111を読み出し、読み出された操作ログ111に基づいて、ブラウザ108上におけるクライアントの操作内容を再現するためのスクリプトを生成し、生成されたスクリプトをブラウザ130に出力する。
また、機密箇所読取部135は、補助記憶部128に格納されるコンテンツ110を読み出し、読み出されたコンテンツ110を解析することによって、機密箇所マークが付与された部分を特定する。
機密箇所マークが付与された部分を特定する方法としては、例えば、機密箇所読取部135がコンテンツ内に埋め込まれたマスク属性を読み出す方法が考えられる。
機密箇所読取部135は、読み出されたコンテンツ110と当該コンテンツ110の解析結果とをマスク付与部137に出力する。
マスク付与部137は、機密箇所読取部135から入力された、コンテンツ110及び当該コンテンツ110の解析結果に基づいて、コンテンツ110内の機密箇所マークが付与された部分をマスクする。
具体的には、マスク付与部137は、コンテンツ110に付与された機密箇所マークにおける参照権限が、制御受付部131から受けた再生命令に含まれる参照権限以上のレベルであるか否かを判定する。
コンテンツ110に付与された機密箇所マークにおける参照権限が、制御受付部131から受けた再生命令に含まれる参照権限より低いレベルであると判定された場合、マスク付与部137は、マスク処理を実行せず、入力されたコンテンツ110をブラウザ130に出力する。
コンテンツ110に付与された機密箇所マークにおける参照権限が、制御受付部131から受けた再生命令に含まれる参照権限以上のレベルであると判定された場合、マスク付与部137は、マスク処理を実行する。具体的には、マスク付与部137は、機密箇所マークが付与された部分をマスクする。
マスク付与部137は、マスク処理が実行されたコンテンツ110をブラウザ130に出力する。
以上が、操作再生部132が実行する処理の説明である。
ブラウザ108上におけるクライアントの操作内容を再生するための処理の説明に戻る。
ブラウザ130は、操作再現スクリプト136から入力されたスクリプト、及びマスク付与部137から入力されたコンテンツ110に基づいて、ブラウザ108上におけるクライアントの操作内容を再生する。ブラウザ130上に再生されたコンテンツ1300は、マスク処理が実行されたコンテンツ110、及びマスク処理が実行されていないコンテンツ110を含む。
制御受付部131から画像生成命令が入力された画像生成部133は、処理を開始する。画像生成部133は、ブラウザ130上で再生される、ブラウザ108上におけるクライアントの操作内容の画像をキャプチャし、映像再生装置103に送信するための画像を生成する。生成された画像は、画像配信部134に出力される。
制御受付部131から配信命令が入力された画像配信部134は、画像生成部133から入力された画像を、映像出力部125に送信する。
映像出力部125は、画像配信部134から受信した画像を再生する。
以上の処理によって、ブラウザ130上で再生される、ブラウザ108上におけるクライアントの操作内容における機密情報である部分はマスクされて表示される。
図15は、本実施形態のブラウザ108上におけるクライアントの操作内容を再生するための処理の流れを説明するシーケンス図である。
再生制御部124は、制御受付部131に再生命令を送信する(S1401)。
再生制御部124から再生命令を受信した制御受付部131は、操作再生部132に再生命令を発行する(S1402)。
操作再生部132は、制御受付部131から再生命令の発行を受け、機密箇所読取部135を呼び出す(S1403)。読み出された機密箇所読取部135は、機密箇所マークが付与された部分を特定する。
次に、操作再生部132は、マスク付与部137を呼び出す(S1404)。呼び出されたマスク付与部137は、再生制御部124から送信された再生命令に含まれる操作再生者の参照権限と機密箇所マークとに基づいて、機密箇所マークが付与された部分をマスクする。
次に、操作再生部132は、操作再現スクリプト136を呼び出す(S1405)。呼び出された操作再現スクリプト136は、操作ログ111を読み出し、ブラウザ108上におけるクライアントの操作内容を再生するためのスクリプトを生成する。
ブラウザ130は、マスク処理が実行されたコンテンツ及び生成されたスクリプトに基づいて、ブラウザ108上におけるクライアントの操作内容を再生する(S1406)。
制御受付部131は、画像生成部133に画像生成命令を発行する(S1407)。
画像生成部133は、制御受付部131から画像生成命令を受け、ブラウザ130上で再生される、ブラウザ108上におけるクライアントの操作内容の画像をキャプチャし、映像再生装置103に送信するための画像(操作再生画像1416)を生成する(S1408)。操作再生画像1416は、画像配信部134に出力される。
操作再現スクリプト136が、ブラウザ108上におけるクライアントの操作内容を再生するためのスクリプトの生成を終了することによって、ブラウザ130は、ブラウザ108上におけるクライアントの操作内容の再生を終了する(S1409)。
操作再生部132は、画像生成部133に映像記録終了命令を発行する(S1410)。
画像生成部133は、操作再生部132から映像記録終了命令を受け、制御受付部131に画像生成完了命令を発行する(S1411)。
制御受付部131は、画像生成部133から画像生成完了命令を受け、画像配信部134に画像配信の命令を発行する(S1412)。
画像配信部134は、制御受付部131から画像配信の命令を受け、操作再生画像1416を映像出力部125に送信する(S1413)。操作再生画像1416の送信方法としては、ストリーミング配信等が考えられる。
画像配信部134は、映像出力部125への操作再生画像1416の送信が終了した後、制御受付部131に出力完了命令を発行する(S1414)。
制御受付部131は、画像配信部134から出力完了命令を受け、再生制御部124に再生完了命令を送信する(S1415)。
図16Aは、本実施形態の機密箇所読取部135が実行する処理を説明するフローチャートである。図16Bは、本発明の実施形態のマスク付与部137が実行する処理を説明するフローチャートである。
機密箇所読取部135は、制御受付部131から呼び出されることによって処理を開始する(ステップS1501)。
機密箇所読取部135は、コンテンツ110を読み出す(ステップS1502)。
機密箇所読取部135は、再生制御部124から送信された再生命令に含まれる操作再生者の参照権限と、読み出されたコンテンツ110に付与された機密箇所マークとに基づいて、マスクする箇所を決定し(ステップS1503)、処理を終了する(ステップS1504)。
具体的には、再生制御部124から送信された再生命令に含まれる操作再生者の参照権限が、機密箇所マークに含まれる参照権限より低いレベルであると判定された場合、機密箇所読取部135は、機密箇所マークが付与された部分をマスク箇所として決定する。
なお、再生制御部124から送信された再生命令に含まれる操作再生者の参照権限が、機密箇所マークに含まれる参照権限以上のレベルであると判定された場合、機密箇所マークが付与された部分は、マスク箇所ではないと決定される。
次に、操作再生部132によって、マスク付与部137が呼び出される。
呼び出されたマスク付与部137は、マスク処理を開始する(ステップS1505)。なお、ステップS1503において、再生制御部124から送信された再生命令に含まれる操作再生者の参照権限が、機密箇所マークに含まれる参照権限以上のレベルである場合、マスク処理は開始されない。
マスク付与部137は、ステップS1503において決定されたマスク箇所に対してマスク処理を実行し(ステップS1506)、処理を終了する(ステップS1507)。
前述したマスク処理によって、例えば、コンテンツ110に付与された機密箇所マークに含まれる参照権限が課長権限であった場合、権限が課長権限以上である操作再生者のみが映像出力部125から再生されるブラウザ108上におけるクライアントの操作内容に含まれる機密情報を見ることができる。
以上の処理によって、ブラウザ130には、機密箇所であることを示す印が付与された部分がマスクされた、ブラウザ108上におけるクライアントの操作内容が再生される。
図17Aは、本実施形態の再生制御部124を操作する場合に表示されるGUIを示す説明図である。
映像再生装置103は、表示装置(図示省略)を備え、当該表示装置上にGUI1610が表示される。
GUI1610は、操作ログ選択表示部1608、再生ボタン1603、一時停止ボタン1604、及び停止ボタン1605を含む。
操作ログ選択表示部1608は、操作ログ111に格納される操作内容を選択するための表示部である。
図16Aに示す例では、操作ログ選択表示部1608において、操作ログ1(1601)及び操作ログ2(1602)が選択される。
操作ログ選択表示部1608は、操作再生者の個人情報を識別するための個人情報ID入力部1607を含む。
映像再生装置103は、個人情報ID入力部1607に入力されたIDを用いて、操作再生者の個人情報を管理するデータベース(図示省略)を参照し、操作再生者の参照権限を取得する。なお、不正なIDの使用を防止するため、映像再生装置103は、GUI1610にパスワードを入力するための入力部を備えていてもよい。
再生ボタン1603、一時停止ボタン1604、及び停止ボタン1605は、ブラウザ108上におけるクライアントの操作内容の再生、一時停止、及び停止を操作再生サーバ装置104に指示するための操作ボタンである。
図17Bは、本実施形態の映像出力部125によって再生された、ブラウザ108上におけるクライアントの操作内容を表示するGUIの一例を示す説明図である。
GUI1611は、映像再生装置103が備える表示装置(図示省略)上に表示される。GUI1611には、操作再現映像1606が表示される。操作再現映像1606には、画像生成部133がブラウザ130をキャプチャすることによって生成された、ブラウザ108上におけるクライアントの操作内容が表示される。
さらに、操作再現映像1606に表示される操作内容のうち、機密箇所マークが付与された部分はマスクされ、操作再生者には表示されない。
本発明の一実施形態によれば、ブラウザ108上におけるクライアントの操作内容が再生される場合、コンテンツにおける機密箇所がマスクされて表示されるため、操作再生者が機密情報を容易に見ることができない。
また、本発明の一実施形態によれば、操作再生者は、映像再生装置103を介してのみ、操作再生サーバ装置104に格納された、ブラウザ108上におけるクライアントの操作内容を確認することができる。したがって、不正な手段を用いて、当該操作内容を閲覧される危険がない。
また、本発明の一実施形態によれば、イントラネットを介して他のコンテンツを取得し、それまで自装置の機密情報DBで管理していない機密情報を動的に更新するようになっている。したがって、隠匿するべき機密情報をより多く動的に記憶することができ、機密情報の管理がより安全になるとともに機密情報DBに初期設定として予め機密情報を入力する手間を軽減させることができる。
更に、本発明の一実施形態によれば、隠匿する機密情報に参照権限を設けているため、機密情報の再生に関し、階層的な管理を行うことができる。