(57)【要約】【課題】所定の装置に対するリモートアクセスの監査を支援する。【解決手段】監査装置１６は、ユーザ端末１２から送信された要求データをサーバ１４へ転送し、サーバ１４から送信された応答データをユーザ端末１２へ転送する。監査装置１６は、サーバ１４から送信された応答データに基づいて、ユーザ端末１２で表示された第１のウェブページの画像データと、第１のウェブページの後に表示された第２のウェブページの画像データを生成する。監査装置１６は、ユーザ端末１２から送信された要求データに基づいて、ユーザ端末１２でなされた第１のウェブページに対する操作を検出する。証跡生成部４４は、第１のウェブページの画像データ、第１のウェブページに対する操作を示すデータ、第２のウェブページの画像データを対応付けた監査証跡を生成する。【選択図】図１
2018022358.tif 000002
【特許請求の範囲】
【請求項１】
第１装置から送信された第２装置に対する要求データを取得し、要求データを前記第２装置へ転送する要求転送部と、
前記要求データに応じて前記第２装置から送信された応答データを取得し、応答データを前記第１装置へ転送する応答転送部と、
前記応答転送部により取得された応答データに基づいて、前記第１装置で表示された第１画面の画像データを生成する画像生成部と、
前記要求転送部により取得された要求データに基づいて、前記第１装置でなされた前記第１画面に対する操作を検出する操作検出部と、
証跡生成部と、
を備え、
前記画像生成部は、前記応答転送部により取得された応答データに基づいて、前記第１画面の後に前記第１装置で表示された第２画面の画像データをさらに生成し、
前記証跡生成部は、前記第１画面の画像データ、前記第１画面に対する操作を示すデータ、前記第２画面の画像データを対応付けた監査証跡データを生成することを特徴とする監査装置。
【請求項２】
前記画像生成部は、前記操作検出部により検出された前記第１画面に対する操作を示唆するように前記第１画面を変更した操作示唆画面の画像データをさらに生成し、
前記証跡生成部は、前記第１画面、前記操作示唆画面、前記第２画面の順に遷移したことを示すデータを前記監査証跡データとして生成することを特徴とする請求項１に記載の監査装置。
【請求項３】
前記操作検出部は、前記第１画面を構成する複数の要素のうち操作対象となった要素を検出し、
前記画像生成部は、前記第１画面における前記操作対象となった要素に関連する外観を変更することにより前記操作示唆画面の画像データを生成することを特徴とする請求項２に記載の監査装置。
【請求項４】
前記証跡生成部は、前記第１画面、前記操作示唆画面、前記第２画面の順に再生される動画データを前記監査証跡データとして生成することを特徴とする請求項２または３に記載の監査装置。
【請求項５】
前記応答転送部は、前記第１装置におけるキャッシュを無効化するデータを付加した応答データを前記第１装置へ転送することを特徴とする請求項１から４のいずれかに記載の監査装置。
【請求項６】
第１装置から送信された第２装置に対する要求データを取得し、要求データを前記第２装置へ転送するステップと、
前記要求データに応じて前記第２装置から送信された応答データを取得し、応答データを前記第１装置へ転送するステップと、
取得された応答データに基づいて、前記第１装置で表示された第１画面の画像データを生成するステップと、
取得された要求データに基づいて、前記第１装置でなされた前記第１画面に対する操作を検出するステップと、
取得された応答データに基づいて、前記第１画面の後に前記第１装置で表示された第２画面の画像データを生成するステップと、
前記第１画面の画像データ、前記第１画面に対する操作を示すデータ、前記第２画面の画像データを対応付けた監査証跡データを生成するステップと、
をコンピュータが実行することを特徴とする監査方法。
【請求項７】
第１装置から送信された第２装置に対する要求データを取得し、要求データを前記第２装置へ転送する機能と、
前記要求データに応じて前記第２装置から送信された応答データを取得し、応答データを前記第１装置へ転送する機能と、
取得された応答データに基づいて、前記第１装置で表示された第１画面の画像データを生成する機能と、
取得された要求データに基づいて、前記第１装置でなされた前記第１画面に対する操作を検出する機能と、
取得された応答データに基づいて、前記第１画面の後に前記第１装置で表示された第２画面の画像データを生成する機能と、
前記第１画面の画像データ、前記第１画面に対する操作を示すデータ、前記第２画面の画像データを対応付けた監査証跡データを生成する機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、データ処理技術に関し、特に監査装置、監査方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
業務システムやネットワークを構成する機器（以下「操作対象装置」とも呼ぶ。）に対して、通信網を介して遠隔地から操作（例えば管理者アカウントを用いた設定作業等）が入力されることがある。本出願人は、操作対象装置とユーザ端末との間でＨＴＴＰ通信を中継し、操作対象装置に対する遠隔操作の内容を監査用のログへ記録するゲートウェイ方式の監査システムを提案している（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１１７００７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
監査システムで記録された監査用のログは、定期的な監査において参照され、また、情報漏えいや不正操作が疑われる際にも参照される。しかし、監査用のログには可読性が低いデータが含まれることがあり、監査用のログを解析することは容易ではなかった。
【０００５】
本発明は、こうした課題に鑑みてなされたものであり、主たる目的は、所定の装置に対するリモートアクセスの監査を支援することである。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様の監査装置は、第１装置から送信された第２装置に対する要求データを取得し、要求データを第２装置へ転送する要求転送部と、要求データに応じて第２装置から送信された応答データを取得し、応答データを第１装置へ転送する応答転送部と、応答転送部により取得された応答データに基づいて、第１装置で表示された第１画面の画像データを生成する画像生成部と、要求転送部により取得された要求データに基づいて、第１装置でなされた第１画面に対する操作を検出する操作検出部と、証跡生成部と、を備える。画像生成部は、応答転送部により取得された応答データに基づいて、第１画面の後に第１装置で表示された第２画面の画像データをさらに生成し、証跡生成部は、第１画面の画像データ、第１画面に対する操作を示すデータ、第２画面の画像データを対応付けた監査証跡データを生成する。
【０００７】
本発明の別の態様は、監査方法である。この方法は、第１装置から送信された第２装置に対する要求データを取得し、要求データを第２装置へ転送するステップと、要求データに応じて第２装置から送信された応答データを取得し、応答データを第１装置へ転送するステップと、取得された応答データに基づいて、第１装置で表示された第１画面の画像データを生成するステップと、取得された要求データに基づいて、第１装置でなされた第１画面に対する操作を検出するステップと、取得された応答データに基づいて、第１画面の後に第１装置で表示された第２画面の画像データを生成するステップと、第１画面の画像データ、第１画面に対する操作を示すデータ、第２画面の画像データを対応付けた監査証跡データを生成するステップと、をコンピュータが実行する。
【０００８】
なお、以上の構成要素の任意の組合せ、本発明の表現をシステム、コンピュータプログラム、コンピュータプログラムを格納した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によれば、所定の装置に対するリモートアクセスの監査を支援できる。
【図面の簡単な説明】
【００１０】
【図１】実施例の情報システムの構成を示す図である。
【図２】図１の監査装置の機能構成を示すブロック図である。
【図３】サーバからユーザ端末へウェブページが提供される場合の動作を示すシーケンス図である。
【図４】サーバからユーザ端末へウェブページが提供される場合の動作を示すシーケンス図である。
【図５】サーバからユーザ端末へウェブページが提供される場合の動作を示すシーケンス図である。
【図６】操作示唆ページを模式的に示す図である。
【図７】監査証跡データを模式的に示す図である。
【発明を実施するための形態】
【００１１】
本発明の実施例を説明する前にまず概要を説明する。これまでの監査システムにより記録される監査用のログ（以下「監査ログ」とも呼ぶ。）には、ＨＴＴＰによる通信データ（例えばＨＴＴＰ要求データ、ＨＴＴＰ応答データ）の文字列がそのまま記録され、監査ログの可読性は低かった。例えば、監査ログには、圧縮データやＢａｓｅ６４による符号化データが含まれることがあった。そのため、監査ログに記録されたサーバに対する操作の中から不正操作を見つけ出す等の、監査ログの解析作業は容易でなく、解析作業に多大な時間を要していた。この結果、数ヶ月に１回の定期的な監査や、不正発覚時における監査ログを用いた原因調査が困難になることがあった。
【００１２】
そこで実施例の監査装置は、ユーザと操作対象装置の間で中継したＨＴＴＰデータをウェブブラウザと同様の仕組みの画面表示エンジン（言い換えればレンダリングエンジン）により画像化し、複数の画像を時系列に対応付けたデータを監査証跡として記録する。これにより、ユーザ端末において実際に表示された内容を監査者へ提示でき、不正操作の容易かつ効率的な発見を支援する。
【００１３】
図１は、実施例の情報システムの構成を示す。企業システムとして構築された情報システム１０は、ユーザ端末１２で総称されるユーザ端末１２ａ、ユーザ端末１２ｂと、サーバ１４で総称されるサーバ１４ａ、サーバ１４ｂと、監査装置１６とを備える。これらの各装置は、ＬＡＮ・ＷＡＮ・インターネット等を含む通信網１８を介して接続される。
【００１４】
ユーザ端末１２は、ユーザにより操作される情報端末であり、例えばＰＣ、タブレット端末、スマートフォンであってもよい。ユーザ端末１２を操作するユーザは、サーバ１４に対する正当な操作権限を有する運用担当者かもしれないし、また、サーバ１４に対して不正な操作を行う第三者かもしれない。実施例のユーザ端末１２にはウェブブラウザがインストールされており、ユーザは、ユーザ端末１２でウェブブラウザを起動し、ウェブブラウザを介してサーバ１４へアクセスする。
【００１５】
サーバ１４は、ユーザ端末１２からアクセスされる情報処理装置であり、企業内外の情報端末（ユーザ端末１２も含みうる）へ各種情報処理サービスを提供する。サーバ１４は、ウェブサーバ（ＨＴＴＰサーバ）の機能を備え、ユーザ端末１２に対してウェブインタフェースを提供する。例えば、各種設定情報を入力可能な管理コンソールのウェブページを提供してもよい。サーバ１４は、ユーザによる遠隔操作の対象となる操作対象装置とも言える。情報システム１０は、サーバ１４に代えて、レイヤ２スイッチやルータ等のネットワーク機器を操作対象装置として備える構成であってもよい。
【００１６】
監査装置１６は、ユーザ端末１２とサーバ１４との通信を中継するゲートウェイとしての情報処理装置である。実施例の監査装置１６は、ＨＴＴＰプロキシとして機能する。例えば、ユーザ端末１２ａがサーバ１４ａへＨＴＴＰによりアクセスする場合に、監査装置１６は、ユーザ端末１２ａとサーバ１４ａ間のＨＴＴＰ通信を中継する。同様に、ユーザ端末１２ｂがサーバ１４ｂへＨＴＴＰによりアクセスする場合に、監査装置１６は、ユーザ端末１２ｂとサーバ１４ｂ間のＨＴＴＰ通信を中継する。具体的には、ユーザ端末１２〜監査装置１６間でＴＣＰコネクションが設定され、そのＴＣＰコネクション上でＨＴＴＰ通信が実行される。それとともに、監査装置１６〜サーバ１４間でもＴＣＰコネクションが設定され、そのＴＣＰコネクション上でＨＴＴＰ通信が実行される。
【００１７】
図２は、図１の監査装置１６の機能構成を示すブロック図である。監査装置１６は、制御部２０、記憶部２２、通信部２４を備える。制御部２０は、ユーザ端末１２からサーバ１４へのアクセスに関する監査を支援するためのデータ処理を実行する。記憶部２２は、制御部２０により参照または更新されるデータを記憶する記憶領域である。通信部２４は、所定の通信プロトコルにしたがって外部装置と通信する。制御部２０は、通信部２４を介してユーザ端末１２、サーバ１４とデータを送受する。
【００１８】
本明細書のブロック図において示される各ブロックは、ハードウェア的には、コンピュータのＣＰＵ・メモリをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
【００１９】
例えば、制御部２０の各ブロックの機能はコンピュータプログラムとして実装され、そのコンピュータプログラムが監査装置１６のストレージにインストールされてもよい。そして監査装置１６のＣＰＵが、そのコンピュータプログラムをメインメモリへ読み出して実行することにより制御部２０の各ブロックの機能が発揮されてもよい。また、記憶部２２は、監査装置１６のメインメモリやストレージにより実現されてもよい。
【００２０】
記憶部２２は、ログ保持部２６、証跡保持部２８を含む。ログ保持部２６は、制御部２０により生成された監査ログを記憶する。実施例の監査ログは、ＨＴＴＰ要求データの文字列と、ＨＴＴＰ応答データの文字列の両方を含む。ＨＴＴＰ応答データには、サーバ１４からユーザ端末１２へ提供される画像データをＢａｓｅ６４により符号化した文字列データが含まれることがある。また、ＨＴＴＰ応答データには、デフレートによる圧縮データが含まれることがある。
【００２１】
証跡保持部２８は、制御部２０により生成された監査証跡データを保持する。後述するように、実施例の監査証跡データは、ユーザ端末１２で表示された画面の推移と、その画面に対するユーザの操作を示す動画データである。
【００２２】
制御部２０は、ログイン処理部３０、要求転送部３２、応答転送部３４、ログ記録部３６、再現データ取得部３８、画像生成部４０、画面操作検出部４２、証跡生成部４４、証跡記録部４６、証跡提供部４８を含む。
【００２３】
ログイン処理部３０は、ユーザ端末１２から送信されたサーバ１４へのログイン要求を受け付ける。ログイン処理部３０は、ログイン要求に含まれるユーザアカウント（ユーザＩＤおよびパスワード等）に基づいて要求元のユーザを認証する。ログイン処理部３０は、ユーザの認証に成功すると、記憶部２２に予め保持されたサーバ１４の特権アカウント（特権ＩＤおよびパスワード）を使用してサーバ１４へログインする。なお、ログイン処理部３０は、ユーザ端末１２から送信された監査装置１６へのログイン要求を受け付けてユーザを認証し、認証に成功した場合に、ユーザ端末１２から指定されたサーバ１４に対して特権アカウントでログインしてもよい。
【００２４】
ユーザの認証に成功した場合、ログイン処理部３０は、ユニークなセッションＩＤを発行し、セッションＩＤをユーザ端末１２に渡す。以降、ユーザ端末１２は、ＨＴＴＰ要求データを監査装置１６へ渡す際に、セッションＩＤも監査装置１６へ渡す。この仕組みは、クッキーにより実現されてもよい。これにより、監査装置１６では、認証に成功したユーザ端末１２からの要求か否かを識別可能になる。また、監査装置１６において、同一のユーザ端末１２から送信された複数のＨＴＴＰ要求データ、同一のユーザ端末へ提供された複数のＨＴＴＰ応答データを識別可能になる。
【００２５】
要求転送部３２は、認証に成功したユーザ端末１２から送信されたサーバ１４に対するＨＴＴＰ要求データを取得し、取得したデータをサーバ１４へ転送する。ＨＴＴＰ要求データは、少なくともヘッダ部を含み、必要に応じてボディ部を含む（例えばＰＯＳＴデータの場合）。
【００２６】
応答転送部３４は、要求転送部３２により送信されたＨＴＴＰ要求データへの応答としてサーバ１４から送信されたＨＴＴＰ応答データを受信する。典型的なＨＴＴＰ応答データは、ヘッダ部とボディ部の両方を含む。応答転送部３４は、受信したＨＴＴＰ応答データに対して、ユーザ端末１２におけるキャッシュを無効化する所定のヘッダ情報を付加し、当該ヘッダ情報を付加後の応答データをユーザ端末１２へ送信する。実施例では、オリジナルのＨＴＴＰ応答データのヘッダ部に対して「Cache-Control:no-cache」「Pragma:no-cache」の２行を追加する。
【００２７】
ログ記録部３６は、ユーザ端末１２別、かつ、認証情報別に監査ログを生成し、監査ログをログ保持部２６に格納する。具体的には、ログ記録部３６は、要求転送部３２により取得されたＨＴＴＰ要求データを、ユーザの識別情報と対応付けて当該ユーザ用の監査ログへ記録する。またログ記録部３６は、応答転送部３４により取得されたＨＴＴＰ応答データを、ユーザの識別情報と対応付けて当該ユーザ用の監査ログへ記録する。ユーザの識別情報は、ログイン要求時にユーザ端末１２から送信されたユーザＩＤでもよく、認証成功後にログイン処理部３０が発行したセッションＩＤでもよい。実施例では、ユーザの識別情報として、ログイン時のユーザＩＤを用いる。
【００２８】
実施例のログ記録部３６は、或るユーザのログインからログオフまでの間に、そのユーザから送信された１つ以上のＨＴＴＰ要求データと、そのユーザへ提供された１つ以上のＨＴＴＰ応答データを、当該ユーザの監査ログに時系列に並べて記録する。典型的には、ＨＴＴＰ要求データとＨＴＴＰ応答データを交互に記録していく。また、ログ記録部３６は、ＨＴＴＰ要求データとＨＴＴＰ応答データのそれぞれに、現在時刻を対応付けて記録してもよい。
【００２９】
再現データ取得部３８は、ログ保持部２６の或るユーザの監査ログに記録されたＨＴＴＰ応答データに基づいて、そのユーザのユーザ端末１２で画面表示された内容を再現するためのデータ（以下「再現用データ」とも呼ぶ。）を取得する。具体的には、再現データ取得部３８は、ＨＴＴＰ応答データから、そのボディ部のデータ（典型的にはＨＴＭＬデータ）を抽出し、抽出したデータを再現用データに含める。また、再現データ取得部３８は、ＨＴＴＰ応答データのヘッダ部に、ボディ部を圧縮（例えばデフレートやＧＺＩＰ等）した旨が記述されている場合、ボディ部のデータを解凍し、再現用データに含める。また、再現データ取得部３８は、ボディ部のデータに符号化データ（例えばＢａｓｅ６４で符号化された画像データ等）が含まれる場合、その符号化データをデコードし、デコード後のデータを再現用データに含める。
【００３０】
画像生成部４０は、ウェブブラウザと同様のＨＴＭＬレンダリングエンジンを備える。ＨＴＭＬレンダリングエンジンは、ＨＴＭＬ、ＸＨＴＭＬ、ＸＭＬ、ＣＳＳ、Ｊａｖａｓｃｒｉｐｔ（登録商標）を解釈して、画面表示用の画像データを生成するものであり、公知のＨＴＭＬレンダリングエンジンを用いてもよい。画像生成部４０は、再現データ取得部３８により取得された再現用データ（例えばＨＴＭＬデータ、画像データ等）をＨＴＭＬレンダリングエンジンへ入力し、ＨＴＭＬレンダリングエンジンにより生成された画像データ（例えばビットマップ画像のデータ等）を出力する。
【００３１】
画像生成部４０が出力する画像データを以下「表示ページ画像」と呼ぶ。なお、画像生成部４０は、ウェブページのサムネイル画像を生成するエンジンを使用して、再現用データから表示ページ画像を生成してもよい。画像生成部４０は、異なる時点で監査ログに記録された複数のＨＴＴＰ応答データに基づいて、異なる時点でユーザ端末１２に表示された複数のウェブページに対応する複数の表示ページ画像を生成する。画像生成部４０は、生成した画像データを記憶部２２へ格納する。
【００３２】
画面操作検出部４２は、ログ保持部２６の監査ログにおいて或るユーザに対応付けて記録されたＨＴＴＰ要求データに基づいて、当該ユーザのユーザ端末１２でなされた画面操作を検出し、実施例ではウェブページに対する操作を検出する。具体的には、画面操作検出部４２は、ユーザに提供されたウェブページを構成する複数の画面要素（テキスト、画像、ボタン、リンク等）のうち、ユーザによる操作の対象となった画面要素（以下「操作対象要素」とも呼ぶ。）を検出する。
【００３３】
例えば、画面操作検出部４２は、ＨＴＴＰ要求データのヘッダ部のリクエスト行で指定されたリソース名（典型的には「index.html」等のファイル名）を検出してもよい。画面操作検出部４２は、同ユーザに対して直前に提供されたＨＴＴＰ応答データを参照し、ＨＴＴＰ応答データにおいて上記リソース名が設定された画面要素を検出した場合、ユーザ端末１２において上記画面要素が操作されたと判定してもよい。この例では、クリック等の選択操作が入力されたと判定してもよい。画面操作検出部４２は、操作対象要素のデータとして、ＨＴＴＰ応答データから、操作対象要素の名称（例えば「name」属性値等）を抽出してもよい。
【００３４】
また画面操作検出部４２は、ＨＴＴＰ要求データ（ＧＥＴ要求）のリクエスト行においてリソース名の後に設定されたパラメータの名称と値を検出してもよい。同様に、画面操作検出部４２は、ＨＴＴＰ要求データ（ＰＯＳＴ要求）のボディ部に設定されたパラメータの名称と値を検出してもよい。画面操作検出部４２は、同ユーザに対して直前に提供されたＨＴＴＰ応答データを参照し、ＨＴＴＰ応答データにおいて上記パラメータ名が設定された画面要素を検出した場合、ユーザ端末１２において上記画面要素が操作されたと判定してもよい。画面操作検出部４２は、操作対象要素のデータとして、ＨＴＴＰ応答データから、操作対象要素の名称を抽出してもよい。それとともに画面操作検出部４２は、操作態様要素へ入力するデータとして、パラメータの名称と値をＨＴＴＰ要求データから抽出してもよい。
【００３５】
画像生成部４０は、サーバ１４からユーザ端末１２へ提供されたウェブページ（以下「オリジナルページ」とも呼ぶ。）に対する画面操作検出部４２により検出された操作の内容を示唆するように、オリジナルページの表示態様を変更したウェブページ（以下「操作示唆ページ」とも呼ぶ。）の画像データを生成する。具体的には、画像生成部４０は、オリジナルページの一部を変更し、具体的にはオリジナルページにおける操作対象要素に関連する外観を変更することにより操作示唆ページの画像データを生成する。操作対象要素に関連する外観を変更するとは、（１）操作対象要素をオリジナルページの態様より強調した態様（サイズ、色彩等）へ変更し、（２）操作対象要素に対して入力データ（上記のパラメータ値）を設定し、（３）操作対象要素の上位置もしくは近傍位置にマウスポインタ（マウスカーソル）の画像を追加設定することを含む。
【００３６】
例えば、画像生成部４０は、上記（１）〜（３）のいずれかの変更を、再現データ取得部３８により抽出された再現用データ（典型的にはＨＴＭＬデータ）に直接反映させてもよい。例えば、操作対象要素を強調表示するようにオリジナルページのデータ（ＨＴＭＬデータやＣＳＳデータ）を改変し、改変後のページデータをレンダリングエンジンに入力することで操作示唆ページの画像データを生成してもよい。別の態様として、画像生成部４０は、レンダリングエンジンに対して、操作対象要素の識別情報（ＩＤや要素名等）と改変態様の指定情報（サイズ、色彩、入力データ、マウスポインタの追加指示等）とを入力することにより、操作示唆ページの画像データを生成してもよい。
【００３７】
証跡生成部４４は、第１のオリジナルページの画像データ、第２のオリジナルページの画像データ、操作示唆ページの画像データとを対応付けた監査証跡データを生成する。第１のオリジナルページは、ある時点でサーバ１４からユーザ端末１２へ提供されたウェブページであり、第２のオリジナルページは、第１のオリジナルページより後にサーバ１４からユーザ端末１２へ提供されたウェブページである。また、操作示唆ページは、第２のオリジナルページを取得するための操作内容であり、第１のオリジナルページに対する操作内容を示唆するように第１のオリジナルページを変更したウェブページである。
【００３８】
ここで、第１のオリジナルページの画像データは、第１のＨＴＴＰ応答データに基づいて生成されたものであり、操作示唆ページの画像データは、第１のＨＴＴＰ応答データの直後に監査ログに記録されたＨＴＴＰ要求データに基づいて生成されたものである。また、第２のオリジナルページの画像データは、第１のＨＴＴＰ応答データの次に監査ログに記録された第２のＨＴＴＰ応答データに基づいて生成されたものである。証跡生成部４４は、（１）第１のオリジナルページ、（２）操作示唆ページ、（３）第２のオリジナルページの順に遷移した（この順でユーザ端末１２に表示された）ことを示す時系列データを監査証跡データとして生成する。
【００３９】
実施例の証跡生成部４４は、第１のオリジナルページ、操作示唆ページ、第２のオリジナルページの順に表示画像が再生される動画データを監査証跡データとして生成する。例えば、第１のオリジナルページの画像、操作示唆ページの画像、第２のオリジナルページの画像を、この順で２秒間ずつ表示させる動画データを生成してもよい。動画データのフォーマットに制限はなく、例えばＡＶＩ（Audio Video Interleave）形式の動画データを生成してもよい。
【００４０】
証跡記録部４６は、証跡生成部４４により生成された監査証跡データをユーザに対応付けて証跡保持部２８へ格納する。例えば、証跡記録部４６は、あるユーザの識別情報が対応付けられた監査ログに基づいて監査証跡データが生成された場合に、当該ユーザの識別情報と監査証跡データとを対応付けて証跡保持部２８へ格納してもよい。
【００４１】
証跡提供部４８は、証跡保持部２８に格納された監査証跡データを、監査者の端末（不図示）へ提供する。例えば、監査者の端末から１人以上のユーザの識別情報が指定された場合、それらの識別情報に対応付けられた１つ以上の監査証跡データを証跡保持部２８から読み出し、読み出した監査証跡データを監査者の端末へ送信してもよい。
【００４２】
以上の構成による監査装置１６の動作を説明する。
図３〜図５は、サーバ１４からユーザ端末１２へウェブページが提供される場合の動作を示すシーケンス図である。ユーザ端末１２では、監査装置１６がプロキシサーバとして設定される。ユーザ端末１２は、監査装置１６とＨＴＴＰ通信を実行し、監査装置１６を介してサーバ１４へアクセスする。
【００４３】
まず図３を説明する。図３には不図示だが、監査装置１６は、ユーザの認証に成功し、ユーザにより指定されたサーバ１４へログイン済とする。以下、認証に成功したユーザを単に「ユーザ」と呼ぶ。ユーザは、ユーザ端末１２のウェブブラウザにおいて所望のウェブページ６０（ここでは「example.com/index.html」）を指定する。ユーザ端末１２は、ウェブページ６０の提供を要求するＨＴＴＰ要求データ６２を監査装置１６へ送信する（Ｓ１）。監査装置１６のログ記録部３６は、ＨＴＴＰ要求データ６２をユーザの監査ログへ記録し（Ｓ２）、監査装置１６の要求転送部３２は、ＨＴＴＰ要求データ６２をサーバ１４へ送信する（Ｓ３）。
【００４４】
サーバ１４は、監査装置１６から受信したＨＴＴＰ要求データ６２への応答として、ウェブページ６０のＨＴＭＬデータを含むＨＴＴＰ応答データ６４を監査装置１６へ送信する（Ｓ４）。監査装置１６のログ記録部３６は、ＨＴＴＰ応答データ６４をユーザの監査ログへ記録する（Ｓ５）。監査装置１６の応答転送部３４は、監査装置１６から受信したＨＴＴＰ応答データ６４に対して、ウェブページのキャッシュを無効化するようにウェブブラウザへ指示するためのキャッシュ無効化ヘッダ６７を追加することにより、ユーザ端末１２へ提供するＨＴＴＰ応答データ６６を生成する（Ｓ６）。応答転送部３４は、キャッシュ無効化ヘッダ６７を追加したＨＴＴＰ応答データ６６をユーザ端末１２へ送信する（Ｓ７）。
【００４５】
図４は、図３に続く動作を示し、具体的には、ウェブページ６０に設定すべき画像データ（「logo.jpg」）を取得する際の動作を示している。図３のＨＴＴＰ応答データ６６を受け付けたユーザ端末１２は、ＨＴＴＰ応答データ６６で指定された画像ファイル（「logo.jpg」）の提供を要求するＨＴＴＰ要求データ６８を監査装置１６へ送信する（Ｓ８）。監査装置１６のログ記録部３６は、ＨＴＴＰ要求データ６８をユーザの監査ログへ記録し（Ｓ９）、監査装置１６の要求転送部３２は、ＨＴＴＰ要求データ６８をサーバ１４へ送信する（Ｓ１０）。
【００４６】
サーバ１４は、監査装置１６から受信したＨＴＴＰ要求データ６２への応答として、「logo.jpg」のデータ（Ｂａｓｅ６４で符号化したデータ）を含むＨＴＴＰ応答データ７０を監査装置１６へ送信する（Ｓ１１）。監査装置１６のログ記録部３６は、ＨＴＴＰ応答データ７０をユーザの監査ログへ記録する（Ｓ１２）。監査装置１６の応答転送部３４は、ＨＴＴＰ応答データ７０に対してキャッシュ無効化ヘッダ６７を追加することにより、ユーザ端末１２へ提供するＨＴＴＰ応答データ７２を生成する（Ｓ１３）。応答転送部３４は、ＨＴＴＰ応答データ７２をユーザ端末１２へ送信する（Ｓ１４）。この結果、ユーザ端末１２のウェブブラウザにより図３のウェブページ６０が表示される。
【００４７】
図５は、図４に続く動作を示し、具体的には、ユーザ端末１２において図３のウェブページ６０上のリンク（「test.html」へのアンカー）がクリックされたとする。ユーザ端末１２は、リンク先のウェブページ７４（「test.html」）の提供を要求するＨＴＴＰ要求データ７６を監査装置１６へ送信する（Ｓ１５）。監査装置１６のログ記録部３６は、ＨＴＴＰ要求データ７６をユーザの監査ログへ記録し（Ｓ１６）、監査装置１６の要求転送部３２は、ＨＴＴＰ要求データ７６をサーバ１４へ送信する（Ｓ１７）。
【００４８】
サーバ１４は、ＨＴＴＰ要求データ７６への応答として、ウェブページ７４のデータを含むＨＴＴＰ応答データ７８を監査装置１６へ送信する（Ｓ１８）。監査装置１６のログ記録部３６は、ＨＴＴＰ応答データ７８をユーザの監査ログへ記録する（Ｓ１９）。監査装置１６の応答転送部３４は、ＨＴＴＰ応答データ７８に対してキャッシュ無効化ヘッダ６７を追加することにより、ユーザ端末１２へ提供するＨＴＴＰ応答データ８０を生成する（Ｓ２０）。応答転送部３４は、ＨＴＴＰ応答データ８０をユーザ端末１２へ送信する（Ｓ２１）。これにより、この結果、ユーザ端末１２のウェブブラウザにより図５のウェブページ７４が表示される。
【００４９】
次に監査証跡データの生成処理について説明する。監査装置１６は、予め定められた日時に到達した場合や、監査者の端末から監査証跡データの生成が要求された場合等に、監査証跡データの生成処理を開始する。
【００５０】
再現データ取得部３８は、監査対象のあるユーザ（以下「対象ユーザ」と呼ぶ。）に対応付けられた監査ログの中から、ＨＴＭＬデータ、画像データ等を含む再現用データを抽出する。ここでの例では、再現データ取得部３８は、監査ログに記録されたＨＴＴＰ応答データ６４から、図３のウェブページ６０のＨＴＭＬデータを取得し、適宜解凍およびデコードを実行する。また、再現データ取得部３８は、監査ログに記録されたＨＴＴＰ応答データ７０から、ロゴ画像（「logo.jpg」）のデータを取得し、適宜解凍およびデコードを実行する。また、再現データ取得部３８は、監査ログに記録されたＨＴＴＰ要求データ６２、ＨＴＴＰ要求データ６８、ＨＴＴＰ要求データ７６も取得する。
【００５１】
画像生成部４０は、ＨＴＴＰ応答データ６４に含まれる「logo.jpg」がＨＴＴＰ要求データ６８で要求されているため、ＨＴＴＰ応答データ７０のロゴ画像が、ウェブページ６０（「index.html」）に設定すべきものであることを検出する。画像生成部４０は、ウェブページ６０のＨＴＭＬデータとロゴ画像のデータとをレンダリングエンジンへ入力することにより、ウェブページ６０を示す画像データを生成し、当該画像データをタイミング１の画像として記憶部２２へ格納する。
【００５２】
また、画面操作検出部４２は、ＨＴＴＰ要求データ７６で指定されたリソース名「test.html」が、ＨＴＴＰ応答データ６４（ウェブページ６０）内のアンカータグに設定されたものであるため、当該アンカータグをウェブページ６０における操作対象要素として検出する。画像生成部４０は、レンダリングエンジンと連携して、ウェブページ６０における操作対象要素に関する外観を変更することにより操作示唆ページの画像を生成する。
【００５３】
図６は、操作示唆ページを模式的に示す。同図の操作示唆ページ８２では、操作対象要素として検出したアンカータグの文字列「テストページ」の近傍にマウスポインタ画像８４を追加配置している。画像生成部４０は、操作示唆ページ８２を示す画像データをタイミング２の画像として記憶部２２へ格納する。図６では不図示だが、画面操作検出部４２により特定の入力フィールドへのデータ入力（操作対象要素名、パラメータ名、パラメータ値）が検出された場合、画像生成部４０は、レンダリングエンジンと連携して、ウェブページ６０の操作対象要素におけるパラメータ名で特定される領域に、パラメータ値を示す文字列を配置した操作示唆ページを生成してもよい。
【００５４】
また、再現データ取得部３８は、監査ログに記録されたＨＴＴＰ応答データ７８からウェブページ７４のＨＴＭＬデータを取得する。画像生成部４０は、ウェブページ７４のＨＴＭＬデータをレンダリングエンジンへ入力することにより、ウェブページ７４を示す画像データを生成し、当該画像データをタイミング３の画像として記憶部２２へ格納する。
【００５５】
図７は、監査証跡データの例を示す。証跡生成部４４は、画像生成部４０により生成された複数の画像データを、画像生成部４０により決定された順に再生する動画データを監査証跡データとして生成する。ここでの例では、証跡生成部４４は、再生時間の経過に伴って、タイミング１に対応付けられた図３のウェブページ６０の画像、タイミング２に対応付けられた図６の操作示唆ページ８２の画像、タイミング３に対応付けられた図５のウェブページ７４の画像の順に表示対象を切り替える動画データを監査証跡データとして生成する。
【００５６】
証跡記録部４６は、証跡生成部４４により生成された監査証跡データをユーザに対応付けて証跡保持部２８へ記録する。証跡提供部４８は、監査者の端末から特定のユーザを指定した監査証跡閲覧要求を受け付けると、そのユーザに関する監査証跡データを監査者の端末へ送信する。なお、証跡提供部４８は、定期的に、証跡保持部２８に新たに格納された複数の監査証跡データを一括して監査者の端末へ提供してもよい。
【００５７】
実施例の監査装置１６によると、ユーザ端末１２からサーバ１４へのアクセス（言い換えれば操作）中に、ユーザ端末１２で実際に表示された画面内容を示す監査証跡を生成する。また、監査証跡は、ユーザが実際に画面へ入力した操作を示唆する内容を含む。これにより、サーバ１４に対する遠隔操作の監査を支援することができる。例えば、監査者は、実施例の監査証跡を参照することで、ユーザが不正操作を入力したか否かの判別が容易になり、監査作業を効率的に遂行できる。また、キャッシュ無効ヘッダを付加したＨＴＴＰ応答データをユーザ端末１２へ提供することにより、ウェブコンテンツ取得のための監査装置１６へのアクセスをユーザ端末１２へ強制し、ユーザ端末１２に表示されたウェブページを監査装置１６が再現する際の正確度を高めることができる。
【００５８】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００５９】
上記実施例では言及していないが、ユーザ端末１２〜監査装置１６間と、監査装置１６〜サーバ１４間の一方または両方でＨＴＴＰＳ（HTTP over SSL/TLS）通信が実行されてもよい。この場合、監査装置１６の要求転送部３２は、ユーザ端末１２から受信したＨＴＴＰ要求データを復号し、ログ記録部３６は、復号されたＨＴＴＰ要求データを監査ログへ記録してもよい。そして要求転送部３２は、ＨＴＴＰ要求データを再度暗号化して、暗号化後のＨＴＴＰ要求データをサーバ１４へ転送してもよい。同様に、監査装置１６の応答転送部３４は、サーバ１４から受信したＨＴＴＰ応答データを復号し、ログ記録部３６は、復号されたＨＴＴＰ応答データを監査ログへ記録してもよい。そして応答転送部３４は、ＨＴＴＰ応答データを再度暗号化して、暗号化後のＨＴＴＰ応答データをユーザ端末１２へ送信してもよい。
【００６０】
また、上記実施例の証跡生成部４４は、サーバ１４からユーザ端末１２へ提供されたオリジナルページの画像と、操作示唆ページの画像とを順に表示する動画データを監査証跡として生成した。変形例として、証跡生成部４４は、動画データ以外の監査証跡を生成してもよい。例えば、証跡生成部４４は、サーバ１４からユーザ端末１２へ提供された複数のオリジナルページの静止画と、操作示唆ページの静止画とを時系列に並べて示す文書データを生成してもよい。証跡生成部４４は、この文書データに、複数のオリジナルページの静止画と、操作示唆ページの静止画における遷移順（ユーザ端末１２での表示順）を示す情報を記録してもよい。また、証跡生成部４４は、サーバ１４からユーザ端末１２へ提供された第１のオリジナルページの静止画と、第１のオリジナルページに対する操作内容を示す文章と、その操作の結果としてサーバ１４からユーザ端末１２へ提供された第２のオリジナルページの静止画とを時系列に並べて示す文書データを生成してもよい。
【００６１】
上述した実施例および変形例の任意の組み合わせもまた本発明の実施の形態として有用である。組み合わせによって生じる新たな実施の形態は、組み合わされる実施例および変形例それぞれの効果をあわせもつ。請求項に記載の各構成要件が果たすべき機能は、実施例および変形例において示された各構成要素の単体もしくはそれらの連携によって実現されることも当業者には理解されるところである。
【符号の説明】
【００６２】
１０  情報システム、  １２  ユーザ端末、  １４  サーバ、  １６  監査装置、  ３２  要求転送部、  ３４  応答転送部、  ４０  画像生成部、  ４２  画面操作検出部、  ４４  証跡生成部。
【図１】
2018022358.tif 000003
【図２】
2018022358.tif 000004
【図３】
2018022358.tif 000005
【図４】
2018022358.tif 000006
【図５】
2018022358.tif 000007
【図６】
2018022358.tif 000008
【図７】
2018022358.tif 000009