(57)【要約】【課題】データの柔軟な保護を可能とする。【解決手段】処理対象となるデータに対する処理の指令を取得するファイル操作命令手段２０と、ファイル操作命令手段２０で取得された指令で特定される処理の内容に応じて処理の内容に応じたデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行うファイル保護手段２６と、を備えるファイル管理装置により上記課題を解決することができる。【選択図】図２
2009217433.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
処理対象となるデータに対する処理の指令を取得する第１のステップと、
前記第１のステップで取得された指令で特定される処理の内容に応じて前記処理の内容に応じたデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行う第２のステップと、
を含む処理を実行させることを特徴とするファイル管理プログラム。
【請求項２】
請求項１に記載のファイル管理プログラムにおいて、
前記第２のステップは、前記第１のステップで取得された指令に関するアプリケーションに応じてデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行うことを特徴とするファイル管理プログラム。
【請求項３】
請求項１に記載のファイル管理プログラムにおいて、
前記第２のステップは、前記第１のステップで取得された指令で特定される処理におけるデータの取得元又は出力先に応じてデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行うことを特徴とするファイル管理プログラム。
【請求項４】
請求項１に記載のファイル管理プログラムにおいて、
前記第２のステップは、前記第１のステップで取得された指令で特定される処理のタイプに応じてデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行うことを特徴とするファイル管理プログラム。
【請求項５】
請求項１〜４のいずれか１つに記載のファイル管理プログラムにおいて、
前記第１のステップで取得された指令に関するアプリケーション又は前記第１のステップで取得された命令の入力手段と、前記処理対象となるデータに対する処理を行うオペレーションシステムと、の間において前記第１のステップ及び前記第２のステップを行うことを特徴するファイル管理プログラム。
【請求項６】
請求項１〜５のいずれか１つに記載のファイル管理プログラムにおいて、
前記第２のステップは、前記第１のステップで取得された指令で特定される処理に応じて、前記処理対象となるデータ処理の前又は前記処理対象となるデータ処理の後を切り替えて前記処理対象となるデータの保護処理を行うことを特徴とするファイル管理プログラム。
【請求項７】
処理対象となるデータに対する処理の指令を取得する第１の手段と、
前記第１の手段で取得された指令で特定される処理の内容に応じて前記処理の内容に応じたデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行う第２の手段と、
を備えることを特徴とするファイル管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル管理プログラム及びファイル管理装置に関する。
【背景技術】
【０００２】
コンピュータシステムにおいてデータを保護するための技術が知られている。
【０００３】
例えば、保護対象となるリソースに対してアクセス可能なプログラムの識別情報をアクセス許可管理テーブルに登録しておき、保護対象となるリソースに対するアクセス要求があると、アクセス要求したプログラムの識別情報を取得してアクセス許可管理テーブルにその識別情報が登録されているか否かにより、リソースへのアクセスの許否を判定する技術が開示されている（特許文献１）。
【０００４】
また、保護領域にアプリケーションがアクセスするとアプリケーションの識別情報を取得し、識別情報がテーブルに登録されているか否かを判定し、登録されていなければアクセスを許可し、テーブルに識別情報が登録されていればアクセス先を検出し、アクセス先が保護領域であればアクセスを許可し、保護領域でなければアクセスを禁止する技術が開示されている（特許文献２）。
【０００５】
また、ハードディスク等のデバイスドライバを制御するための制御関数を取得し、暗号領域内の暗号化ファイルが非暗号領域への移動又は複製されることを検知すると制御関数を用いて暗号化ファイルを開き、制御関数を用いてオープンした暗号化ファイルを読み出して復号し、移動先又は複製先にて制御関数を用いて復号化されたファイルを書き込む技術が開示されている（特許文献３）。
【０００６】
【特許文献１】特開２００４−０４６３０７号公報
【特許文献２】特開２００４−３０２９９５号公報
【特許文献３】特開２００２−１７５２１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ファイルやリソースへのアクセスの許可・不許可を行うことによりデータを保護する方法やデータの暗号化・復号化を行うことによりデータを保護する方法は知られている。
【０００８】
しかしながら、オペレーションシステム（ＯＳ）に対する処理要求の内容に応じてデータの保護方法を変更する技術は知られていない。したがって、データの取得先や出力先に応じてデータの保護方法を変更したり、データを使用するアプリケーション毎にデータの保護方法を変更したりして、柔軟にデータを保護することができなかった。
【課題を解決するための手段】
【０００９】
本発明の１つは、コンピュータに、処理対象となるデータに対する処理の指令を取得する第１のステップと、前記第１のステップで取得された指令で特定される処理の内容に応じて前記処理の内容に応じたデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行う第２のステップと、を含む処理を実行させることを特徴とするファイル管理プログラムである。
【００１０】
また、本発明の１つは、処理対象となるデータに対する処理の指令を取得する第１の手段と、前記第１の手段で取得された指令で特定される処理の内容に応じて前記処理の内容に応じたデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行う第２の手段と、前記第１の手段で取得された指令で特定される処理の内容に応じて前記処理の内容に応じたデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行う第２の手段と、を備えることを特徴とするファイル管理装置である。
【００１１】
ここで、前記第２のステップ又は手段は、前記第１のステップ又は手段で取得された指令に関するアプリケーションに応じてデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行うものとしてもよい。
【００１２】
また、前記第２のステップ又は手段は、前記第１のステップ又は手段で取得された指令で特定される処理におけるデータの取得元又は出力先に応じてデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行うものとしてもよい。
【００１３】
また、前記第２のステップ又は手段は、前記第１のステップ又は手段で取得された指令で特定される処理のタイプに応じてデータの保護方法を求め、その保護方法により前記処理対象となるデータの保護処理を行うものとしてもよい。
【００１４】
また、前記第１のステップ又は手段で取得された指令に関するアプリケーション又は前記第１のステップ又は手段で取得された命令の入力手段と、前記処理対象となるデータに対する処理を行うオペレーションシステムと、の間において前記第１のステップ又は手段及び前記第２のステップ又は手段を行うものとしてもよい。
【００１５】
また、前記第２のステップ又は手段は、前記第１のステップ又は手段で取得された指令で特定される処理に応じて、前記処理対象となるデータ処理の前又は前記処理対象となるデータ処理の後を切り替えて前記処理対象となるデータの保護処理を行うものとしてもよい。
【発明の効果】
【００１６】
請求項１及び７の発明によれば、データの処理の内容に応じた保護方法でデータを保護することができる。
【００１７】
請求項２の発明によれば、データを処理するアプリケーションに応じた保護方法でデータを保護することができる。
【００１８】
請求項３の発明によれば、処理対象となるデータの取得元、出力先等となる処理のアクセス先に応じた保護方法でデータを保護することができる。
【００１９】
請求項４の発明によれば、アプリケーションやアクセス対象のタイプに応じた保護方法でデータを保護することができる。
【００２０】
請求項５の発明によれば、従来から使用してきたオペレーションシステム及びオペレーションシステム上で動作するアプリケーションを変更することなく柔軟にデータを保護することができる。
【００２１】
請求項６の発明によれば、処理の内容に応じて、データに対する処理の前又はデータに対する処理の後の適切なタイミングでデータに保護を施すことができる。
【発明を実施するための最良の形態】
【００２２】
本発明の実施の形態におけるファイル管理装置１００は、図１に例示するように、中央処理部１０、記憶部１２、入力部１４、表示部１６及びインターフェース部１８を含んで構成される。これらの構成部は、バスやネットワーク等の情報伝達手段によって相互に情報伝達可能に接続される。
【００２３】
中央処理部１０は、ＣＰＵ（中央制御装置）を含んで構成される。中央処理部１０は、記憶部１２、入力部１４及びインターフェース部１８から情報を受け取り、その情報に対してプログラムに従って演算等の処理を施し、表示部１６及びインターフェース部１８へ出力することによって情報処理を行う。本実施の形態では、中央処理部１０は、記憶部１２に予め格納されているファイル管理プログラムを実行することによって、ファイル管理装置１００としての機能を実現する。
【００２４】
記憶部１２は、半導体メモリ、ハードディスク装置、光ディスク装置等の情報記憶装置を含んで構成される。記憶部１２は、ファイル管理装置１００で実行されるファイル管理プログラムやファイル管理装置１００での処理に供される保護方法データベースや各種データを格納及び保持する。
【００２５】
入力部１４は、キーボード等の文字データ入力側装置、マウス等のポインティングデバイス等の情報入力側装置を含んで構成される。入力部１４は、ファイル管理装置１００に対して情報を入力するユーザによって操作され、ユーザからの指示や処理のためのデータを受け付けるために用いられる。入力部１４から入力されたデータは記憶部１２に格納及び保持される。
【００２６】
表示部１６は、ディスプレイ等の表示装置を含んで構成される。表示部１６は、アプリケーションでの処理を行う際にユーザにユーザインターフェース画像や処理対象である情報を呈示するために用いられる。例えば、ユーザに対して、ファイル管理装置１００での処理に必要な情報の入力を促すユーザインターフェース画像を表示する。
【００２７】
インターフェース部１８は、ファイル管理装置１００をＬＡＮ、ＷＡＮ、インターネット等の通信手段を介して他の装置へ情報伝達可能に接続するための装置を含んで構成される。本実施の形態において、ファイル管理装置１００は、インターフェース部１８を用いて外部のコンピュータにアクセス可能に接続することができる。また、ファイル管理装置１００は、インターフェース部１８を用いて外部のプリンタやファクシミリ等から情報を出力することができる。インターフェース部１８は、例えば、ＴＣＰ／ＩＰ等の既存のプロトコルに則って情報伝達を実現する装置としてもよい。
【００２８】
図２は、本実施の形態におけるファイル管理装置１００を機能ブロック図として示したものである。
【００２９】
ファイル管理装置１００は、図２に示すように、ファイル操作命令手段２０、アプリケーション処理手段２２、ファイル操作命令取得手段２４、ファイル保護手段２６、データ位置特定手段２８、保護方法データベース記憶手段３０及びオペレーティングシステム処理手段３２を含む装置として機能する。
【００３０】
＜ファイル管理処理＞
以下、ファイル管理装置１００において図２の機能ブロック図に示す機能を実現する際の処理について説明する。ファイル管理処理は、図３に示すフローチャートに沿って実行される。中央処理部１０は、記憶部１２に記憶されているファイル管理プログラムを実行して、ステップＳ１０からの処理を行う。
【００３１】
ステップＳ１０では、データ（ファイル）に対する処理を特定する命令を取得する。中央処理部１０は、データに対する処理の命令を取得する。このステップの処理がファイル操作命令取得手段２４に相当する。取得された処理内容はファイル保護手段２６へ送られる。
【００３２】
データに対する処理は、オペレーティングシステムに含まれるファイルマネージャ等に対して、入力部１４を用いてユーザがファイル管理装置１００に直接行うものがある。これがファイル操作命令手段２０に相当する。この場合、ファイル操作命令手段２０から処理内容がファイル操作命令取得手段２４に入力される。また、アプリケーションに含まれるプロセスの処理に必要なデータを読み出す等のアプリケーションからファイル管理装置１００に行うものがある。これがアプリケーション処理手段２２に相当する。この場合、アプリケーション処理手段２２から処理内容がファイル操作命令取得手段２４に入力される。
【００３３】
データに対する処理の命令は、例えば、ファイルの複写（ｃｏｐｙ）、ファイルの移動（ｍｏｖｅ）、ファイルの印刷（ｐｒｉｎｔ）、ファイルの削除（ｄｅｌｅｔｅ）、ファイルの読み出し（ｒｅａｄ）、ファイルの書き込み（ｗｒｉｔｅ）、ファイルの生成（ｃｒｅａｔ）、ファイルの送信（ｓｅｎｄ）、ファイルの受信（ｒｅｃｅｉｖｅ）が挙げられる。
【００３４】
ファイルの複写（ｃｏｐｙ）は、記憶部１２のある記憶領域に保持されているファイルを残したまま読み出し、記憶部１２の別の記憶領域に同一のファイルを格納する処理である。ファイルの複写（ｃｏｐｙ）処理では、複写処理のコマンドと共に、複写元のファイルの記憶領域と複写先の記憶領域を指定する。ファイルの移動（ｍｏｖｅ）は、記憶部１２のある記憶領域に保持されているファイルを残こさず（消去して）読み出し、記憶部１２の別の記憶領域に同一のファイルを格納する処理である。ファイルの移動（ｍｏｖｅ）処理では、移動処理のコマンドと共に、移動元のファイルの記憶領域と移動先の記憶領域を指定する。ファイルの印刷（ｐｒｉｎｔ）は、記憶部１２のある記憶領域に保持されているファイル、又は、アプリケーションで処理されているファイルをｐｏｓｔｓｃｒｉｐｔ等の表現形式に変換してプリンタへ送信し、プリンタによって印刷媒体上に画像形成させる処理である。ファイルの印刷（ｐｒｉｎｔ）処理では、印刷処理のコマンドと共に、印刷を行うプリンタを指定する。ファイルの削除（ｄｅｌｅｔｅ）は、記憶部１２に保持されているファイルを消去する処理である。ファイルの削除（ｄｅｌｅｔｅ）処理では、削除処理のコマンドと共に、削除対象となるファイルが格納されている記憶領域を指定する。ファイルの読み出し（ｒｅａｄ）は、記憶部１２のある記憶領域に保持されているファイルを残したまま読み出す処理である。読み出されたファイルはアプリケーション等に引き渡し、ファイルに対して必要な処理を施してもよい。ファイルの読み出し（ｒｅａｄ）処理では、読み出し処理のコマンドと共に、読み出し対象となるファイルが保持されている記憶領域を指定する。ファイルの書き込み（ｗｒｉｔｅ）は、アプリケーション等で生成された新たなファイルやインターフェース部１８等から新たに得られたファイルを記憶部１２に格納する処理である。ファイルの書き込み（ｗｒｉｔｅ）では、ファイルの書き込み処理のコマンドと共に、ファイルの格納先となる記憶領域を指定する。ファイルの生成（ｃｒｅａｔ）は、ユーザからの指示やアプリケーションからの指示に基づいてファイルを生成する処理である。なお、各処理において指定される記憶領域は、物理的な記憶領域として指定してもよいし、フォルダ等の論理的な記憶領域として指定してもよい。
【００３５】
例えば、ファイルの複写（ｃｏｐｙ）の指示には、"copy c:\work\test.txt c:\share"のように複写命令のコマンド"copy"、複写元の記憶領域" c:\work"、複写先の記憶領域" c:\share"及びファイル名"test.txt"が含まれる。
【００３６】
また、ファイルの書き込み（ｗｒｉｔｅ）の指示には、"write data c:\share\test.txt"のように、書き込み命令のコマンド"write"、書き込み対象となるデータ"data"、書き込み先の記憶領域"c:\share"及び書き込みデータのファイル名"test.txt"が含まれる。
【００３７】
また、アプリケーションからのファイルの読み出し（ｒｅａｄ）の指示には、対象となるファイルを特定する情報とアプリケーションを特定する識別子（アプリケーション名、プロセス名等）とが含まれる。具体的には、"read c:\work\test.txt ‘Mail Tool’"のように、読み出し命令のコマンド"read"、処理対象となるファイルの記憶領域" c:\work"、電子メールとして処理することを示す"Mail Tool"及びファイル名"test.txt"が含まれる。また、"read c:\work\test.txt ‘文書Viewer’"のように、電子メールとして処理することを示す"Mail Tool"の代りに、ファイルの内容を表示してユーザに呈示する"文書Viewer"を指定したり、プリンタによる画像形成をするためにプリンタ"printer A"を指定したりしてもよい。
【００３８】
ステップＳ１２では、処理内容から出力先の記憶領域または識別子を抽出する。ここでの処理はファイル保護手段２６及びデータ位置特定手段２８に相当する。なお、記憶領域または識別子は処理内容に直接含まれている場合と処理内容に含まれる情報から間接的に取得される場合がある。例えば、"read c:\work\test.txt HANDLE" のような処理内容があり、HANDLEが読み先のメモリ領域を示す情報である場合、HANDLEから読み込み先のプロセスを特定する。あるいは処理命令の指示元のプロセスを読み込み先としてもよい。
【００３９】
中央処理部１０は、ステップＳ１０で取得された処理内容から処理内容に含まれる記憶領域又はアプリケーションを特定する識別子を抽出する処理を行う。これは、ファイル保護手段２６がステップＳ１０で取得された処理内容をデータ位置特定手段２８に送り、データ位置特定手段２８が処理内容に含まれる記憶領域又はアプリケーションを特定する識別子を抽出してファイル保護手段２６へ出力するという処理に相当する。
【００４０】
ステップＳ１４では、処理内容に応じたデータ（ファイル）の保護方法を決定する。中央処理部１０は、記憶部１２に予め格納されている保護方法データベースを参照し、ステップＳ１０で取得した処理内容に応じてデータ（ファイル）の保護方法を決定する。ここでの処理はファイル保護手段２６及び保護方法データベース記憶手段３０に相当する。
【００４１】
保護方法データベースは、記憶領域又はアプリケーションを特定する識別子に保護方法を関連付けたデータベースである。保護方法データベースが格納及び保持された記憶部１０が保護方法データベース記憶手段３０に相当する。
【００４２】
例えば、図４に例示するように、記憶領域"c:\share"に安全性"1"、記憶領域"c:\Documents and Setting\userA\desktop"に安全性"2"、記憶領域"\\server1\confidential"に安全性"3"、記憶領域"ごみ箱"に安全性"1"が関連付けられる。また、アプリケーションを特定する識別子"文書viewer"に安全性"3"、識別子"Mail Tool"に安全性"1"、識別子"printer A"に安全性"2"、識別子"printer B"に安全性"1"が関連付けられる。
【００４３】
ここで、図５に例示するように、安全性"0"とはファイル操作禁止による保護を意味し、安全性"1"はＤＲＭ(Digital Rights Management)による保護を意味し、安全性"2"はファイル操作の履歴（ログ）の保存を意味し、安全性"3"は平文による処理（ＯＳによる通常のファイル操作）を許可することを意味する。
【００４４】
ここで、安全性は0〜3としたが、これらは保護の安全性の順序やレベルを示す必要はなく、処理対象となるデータ（ファイル）にどのような保護を適用するか特定できるものであればよい。
【００４５】
中央処理部１０は、記憶部１２に記憶されている保護方法データベースにアクセスし、処理内容に含まれる記憶領域又はアプリケーションを特定する識別子に関連付けられている安全性を抽出する。
【００４６】
これは、データ位置特定手段２８から記憶領域又はアプリケーションを特定する識別子を受け取ったファイル保護手段２６が、保護方法データベース記憶手段３０を参照して、記憶領域又はアプリケーションを特定する識別子に応じた保護方法を抽出する処理に相当する。
【００４７】
ステップＳ１６では、処理内容毎に、処理前（オペレーションシステムに渡す前）にデータ（ファイル）に保護を施すか、処理後（オペレーションシステムから戻ってきた後）にデータ（ファイル）に保護を施すかを判断する。
【００４８】
データ（ファイル）に保護を施すタイミングは、処理の内容に応じて変更される。図６に例示するように、ファイルの印刷（ｐｒｉｎｔ）、ファイルの削除（ｄｅｌｅｔｅ）、ファイルの書き込み（ｗｒｉｔｅ）、ファイルの送信（ｓｅｎｄ）については、データ（ファイル）に対する処理前に保護を施す。この場合、ステップＳ１８に処理を移行させる。一方、データ（ファイル）に対する処理がファイルの複写（ｃｏｐｙ）、ファイルの移動（ｍｏｖｅ）、ファイルの読み出し（ｒｅａｄ）、ファイルの生成（ｃｒｅａｔ）、ファイルの受信（ｒｅｃｅｉｖｅ）については、データ（ファイル）に対する処理後に保護を施す。この場合、ステップＳ２０に処理を移行させる。
【００４９】
ステップＳ１８では、決定された保護方法でデータ（ファイル）に保護を施す。中央処理部１０は、ステップＳ１０で指定されたデータ（ファイル）に対して取得して処理命令で特定される処理を施す前にステップＳ１４で決定した保護方法を施す。ここでの処理は、ファイル保護手段２６及びオペレーティングシステム処理手段３２で行われる。
【００５０】
例えば、ファイルの書き込み（ｗｒｉｔｅ）の指示として"write data c:\share\test.txt"という処理内容が取得された場合、ファイルに対する書き込み処理前に保護処理を施す。中央処理部１０は、取得したファイルに対して保護を施した後、オペレーションシステムに書き込み対象となるデータ"data"を渡し、書き込み先の記憶領域"c:\share"にファイル名"test.txt"としてデータ"data"を格納する。図４の保護方法データベースの例では書き込み先の記憶領域" c:\share"は安全性"1"に指定されているので、オペレーションシステムにファイルを引き渡す前にデータ"data"にDRMによる保護を施す。
【００５１】
なお、ＤＲＭによる保護とは、ファイルに含まれるコンテンツを暗号化すると共に、利用条件をコンテンツに対応付ける保護を指す。ＤＲＭによる保護がされたファイルを利用する際には、復号鍵と利用条件を含んだライセンスを取得し、その利用条件にしたがった利用が可能である。ＤＲＭにおける処理は一般的な技術であるので詳しい説明は省略する。
【００５２】
また、"print c:\work\test.txt printer A"のようにプリンタによる画像形成をする処理が指定された場合、ファイルをプリンタへ出力する前に保護処理を施す。中央処理部１０は、処理対象となるファイルの記憶領域" c:\work"からファイル名"test.txt"で特定されるファイルを読み出し、ファイルに対して保護処理を行った後に、インターフェース部１８を介して識別子"printer A"で特定されるプリンタへファイル名"test.txt"で特定されるファイルを出力する。図４の保護方法データベースの例ではプロセス"printer A"は安全性"2"に指定されているので、ファイル名"test.txt"に対する操作の履歴を記憶部１２に記録する処理を行う。
【００５３】
削除（ｄｅｌｅｔｅ）及び送信（ｓｅｎｄ）についても同様にファイル操作前に保護を施す。
【００５４】
ステップＳ２０では、決定された保護方法でデータ（ファイル）に保護を施す。中央処理部１０は、ステップＳ１０で指定されたデータ（ファイル）に対して取得して処理命令で特定される処理を施した後にステップＳ１４で決定した保護方法を施す。ここでの処理は、ファイル保護手段２６及びオペレーティングシステム処理手段３２で行われる。
【００５５】
例えば、ファイルの複写（ｃｏｐｙ）の指示として"copy c:\work\test.txt c:\share"という処理内容が取得された場合、ファイルに対する複写処理後に保護処理を施す。中央処理部１０は、複写元の記憶領域" c:\work"からファイル名"test.txt"で特定されるファイルを読み出してオペレーションシステムに引き渡す。オペレーションシステムではファイルの複製処理を行い、複製されたファイルに対して保護を行った後、複写先の記憶領域" c:\share"にそのファイルをファイル名"test.txt"で保存する。保護方法データベースでは、複写先の記憶領域" c:\share"は安全性"1"に指定されているので、記憶領域" c:\share"に格納されたファイル名"test.txt"のファイルにDRMによる保護を施す。
【００５６】
また、アプリケーションからのファイルの読み出し（ｒｅａｄ）の指示として"read c:\work\test.txt ‘Mail Tool’"という処理内容が取得された場合、ファイルに対する読み出し処理後に保護処理を施す。中央処理部１０は、対象となるファイルの記憶領域" c:\work"からファイル名"test.txt"で特定されるファイルを読み出し、そのファイルに保護を施した後、電子メールのメールツールである"Mail Tool"へファイルの出力を行う。保護方法データベースでは、読み出し先のプロセス"Mail Tool"は安全性"1"に指定されているので、読み出し処理後にプロセス"Mail Tool"に出力される前にファイル名"test.txt"のファイルにDRMによる保護を施す。
【００５７】
同様に、"read c:\work\test.txt ‘文書Viewer’"のようにファイルの内容を表示してユーザに呈示する"文書Viewer"が指定された場合、ファイルに対する読み出し処理後に保護処理を施す。中央処理部１０はオペレーションシステムを呼び出し、処理対象となるファイルの記憶領域" c:\work"からファイル名"test.txt"で特定されるファイルを読み出し、文書ビューアであるアプリケーションにファイルの出力を行う。保護方法データベースでは、読み出し先のプロセス"文書Viewer"は安全性"3"に指定されているので、読み出し処理後にファイル名"test.txt"のファイルが平文であればそのまま文書ビューアであるアプリケーションにファイルを出力する。一方、ファイル名"test.txt"のファイルが平文でなければ、ファイルを平文に戻す処理を施して文書ビューアであるアプリケーションにファイルを出力する。
【００５８】
ただし、平文に戻す処理において、保護の条件に応じて平文に戻す処理が許されない場合には保護された状態のままアプリケーション等にファイルを送ってもよい。または、処理エラー等としてもよい。例えば、対象のファイルにＤＲＭによる保護がかけられており、ライセンスよる保護解除が許可されていない場合には、ＤＲＭで保護された状態のままアプリケーションにファイルを渡してもよい。
【００５９】
ファイル操作後に保護を施す移動（ｍｏｖｅ）、生成（ｃｒｅａｔｅ）、ファイルの受信（ｒｅｃｅｉｖｅ）についても同様に処理を行う。
【００６０】
また、保護方法データベースに処理内容から抽出された記憶領域又はアプリケーションを特定する識別子が登録されていない場合には、オペレーションシステムの機能をそのまま適用してもよい。例えば、安全性"3"に対する平文による処理を適用してもよいし、他の保護方法を適用してもよい。また、データ（ファイル）に対する処理内容毎に保護方法を変更してもよい。
【００６１】
＜変形例１＞
上記実施の形態では、ファイルの記憶領域又はファイルを処理するアプリケーションの識別子毎に保護処理を定めるものとしたが、ファイルの記憶領域又はファイルを処理するアプリケーションの識別子毎にタイプを定め、それらのタイプ毎に保護方法を定めてもよい。
【００６２】
具体的には、図７に例示するように、保護方法データベースとして、記憶領域"c:\share"にタイプ「共有フォルダ」、記憶領域"c:\Documents and Setting\userA\desktop"にタイプ「ローカルディスク」、記憶領域"\\server1\confidential"にタイプ「サーバ」を関連付ける。また、アプリケーションを特定する識別子"文書viewer"にタイプ「セキュアアプリケーション」、識別子"Mail Tool"にタイプ「アプリケーション」、識別子"printer A"にタイプ「セキュアプリンタ」、識別子"printer B"にタイプ「プリンタ」を関連付ける。
【００６３】
さらに、図８に例示するように、タイプと安全性を関連付けるデータベースとして、タイプ「共有フォルダ」には安全性"1"、 タイプ「ローカルディスク」には安全性"2"、 タイプ「サーバ」には安全性"3"、 タイプ「セキュアアプリケーション」には安全性"3"、 タイプ「アプリケーション」には安全性"1"、 タイプ「セキュアプリンタ」には安全性"2"、 タイプ「プリンタ」には安全性"1"を関連付ける。
【００６４】
本変形例の場合、ステップＳ１４では、保護方法データベースを参照して処理内容に対するタイプを求め、求められたタイプに関連付けられた安全性をさらに求め、その安全性に基づいてデータ（ファイル）の保護方法を決定する。ステップＳ１４以降の処理については、上記実施の形態と同様に行う。
【００６５】
＜変形例２＞
上記実施の形態では、保護方法を決めるための安全性を保護方法データベースに登録するものとしたが、デバイスやアプリケーションから安全性を取得するものとしてもよい。
【００６６】
安全性をアプリケーションやデバイスから取得する場合、信頼できる第三者又は信頼できる作成者による署名付でアプリケーションやデバイスから取得できるようにする。
【００６７】
本変形例の場合、上記ステップＳ１４は図９に示すサブルーチンに沿って処理される。以下の処理はファイル保護手段２６の機能に相当する。
【００６８】
ステップＳ１４−１では、中央処理部１０は処理の対象となる記憶領域に対応するデバイス、又は、アプリケーションに対して安全性を問い合わせる。問い合わせ先となるデバイスは、例えば、記憶部１２である。また、問い合わせ先となるアプリケーションは、例えば、ファイルの処理を依頼したアプリケーションやファイルの出力先となるアプリケーションである。
【００６９】
ステップＳ１４−２では、中央処理部１０は、アプリケーション又はデバイスから署名付の安全性を取得する。各アプリケーションや各デバイスには、予め要求に応じて安全性を各々割り当てておき、要求に応じて割り当てられた安全性を署名付で返信する機能を備えておく。
【００７０】
ステップＳ１４−３では、中央処理部１０は、ステップＳ１４−２で取得した署名を検証し、正しい署名であると共に信頼できる署名者である場合にその安全性に基づいてファイルに対する保護方法を決定する。正しい署名でない、又は、信頼できる署名者でない場合にはオペレーションシステムの機能をそのまま適用してもよい。
【００７１】
ステップＳ１４−３の処理を終了すると、メインルーチンのステップＳ１６へ処理を戻す。ステップＳ１４以降の処理は上記実施の形態と同様に行う。
【００７２】
なお、アプリケーションやデバイスに署名鍵が割り付けられている場合には、ステップＳ１４−１において乱数を付けて問い合わせを行い、ステップＳ１４−２においてその乱数を含む署名を返信するものとしてもよい。
【００７３】
また、アプリケーションやデバイスに署名鍵が割り当てられていない場合には、予め署名を埋め込んだ安全性を返信するが、署名をアプリケーションの実行ファイルやデバイスドライバのファイルのハッシュ値に基づいて求めてもよい。
【００７４】
また、アプリケーションやデバイスに問い合わせに対して安全性を返答する機能を設ける代わりに、中央処理部１０がアプリケーションの実行ファイルやデバイスドライバのファイルに含まれている安全性を読み出すものとしてもよい。
【００７５】
また、ファイルの出力先となるアプリケーションやファイルの出力先となる記憶領域に応じて安全性の取得方法を変更するものとしてもよい。例えば、図１０に例示するように、記憶領域やアプリケーションの識別子に対して安全性を取得するためのメソッドや安全性の格納先となるメモリのアドレスを登録しておき、それを読み出して安全性を取得してもよい。
【００７６】
例えば、図１０の例では、"文書Viewer"に対しては"getSafetyLevel"という関数を呼び出して安全性を取得する。また、"Printer A"に対しては"0x89AB"というメモリのアドレスで特定される記憶領域に格納されている安全性を取得する。
【００７７】
＜変形例３＞
上記の実施の形態では、出力先の安全性に応じて保護方法を決定したが、処理内容から入力元の記憶領域または識別子と出力先の記憶領域または識別子とを抽出し、入力元の安全性と出力先の安全性から、処理方法を決定するようにしてもよい。例えば、図４の保護方法データベースを持つ時に"copy c:\share\doc1.txt c:\share\doc2.txt" という処理内容を実行する場合、入力元と出力先は同じ安全性なので、再度保護処理を行わずそのままファイルの複写を行うようにしてもよい。また、入力元よりも出力先の安全性が低い場合は処理を禁止するようにしてもよいし、逆に入力元よりも出力先の安全性が高い場合には入力元の安全性に従った保護処理を施し元の保護よりも弱い保護にはしないようにしてもよい。
【図面の簡単な説明】
【００７８】
【図１】本発明の実施の形態におけるファイル管理装置の構成を示す図である。
【図２】本発明の実施の形態におけるファイル管理装置の機能ブロック図である。
【図３】本発明の実施の形態におけるファイル管理処理のフローチャートである。
【図４】本発明の実施の形態における保護方法データベースの登録例を示す図である。
【図５】本発明の実施の形態における安全性と保護方法とを関連付けるデータベースの登録例を示す図である。
【図６】本発明の実施の形態における処理のタイミングを登録したデータベースの例を示す図である。
【図７】本発明の変形例１における保護方法データベースの登録例を示す図である。
【図８】本発明の変形例１における安全性と保護方法とを関連付けるデータベースの登録例を示す図である。
【図９】本発明の変形例２における処理のサブルーチンのフローチャートである。
【図１０】本発明の変形例２における保護方法データベースの登録例を示す図である。
【符号の説明】
【００７９】
１０  中央処理部、１２  記憶部、１４  入力部、１６  表示部、１８  インターフェース部、２０  ファイル操作命令手段、２２  アプリケーション処理手段、２４  ファイル操作命令取得手段、２６  ファイル保護手段、２８  データ位置特定手段、３０  保護方法データベース記憶手段、３２  オペレーティングシステム処理手段、１００  ファイル管理装置。
【図１】
2009217433.tif 000003
【図２】
2009217433.tif 000004
【図３】
2009217433.tif 000005
【図４】
2009217433.tif 000006
【図５】
2009217433.tif 000007
【図６】
2009217433.tif 000008
【図７】
2009217433.tif 000009
【図８】
2009217433.tif 000010
【図９】
2009217433.tif 000011
【図１０】
2009217433.tif 000012