(57)【特許請求の範囲】
【請求項１】
コピー元文書がコピー抑止文書であるか否かを判別する手順、
上記コピー元文書がコピー抑止文書でなければ、そのコピー元文書において指定されたコピーデータを第１の記憶領域に書き込み、上記コピー元文書がコピー抑止文書であれば、そのコピー元文書において指定されたコピーデータを第２の記憶領域に書き込む手順、
コピー先文書がコピー抑止文書であるか否かを判断する手順、
上記コピー先文書がコピー抑止文書でなければ、上記第１の記憶領域に書き込まれているコピーデータをそのコピー先文書に転送し、上記コピー先文書がコピー抑止文書であれば、上記第１の記憶領域または上記第２の記憶領域に書き込まれているコピーデータをそのコピー先文書に転送する手順、
上記コピー元文書がコピー抑止文書ではなく且つ上記コピー先文書がコピー抑止文書であった場合に上記第２の記憶領域をクリアする手順、
をコンピュータに実行させるコピー制御プログラム。
【請求項２】
請求項１に記載のプログラムであって、
上記コピー元文書がコピー抑止文書であった場合に上記第１の記憶領域をクリアする手順をさらにコンピュータに実行させる
ことを特徴とするコピー制御プログラム。
【請求項３】
請求項１に記載のプログラムであって、
上記コピー先文書がコピー抑止文書であったときは、上記第１の記憶領域に対して優先的に読出しアクセスが行われ、その上記第１の記憶領域にコピーデータが格納されていない場合に上記第２の記憶領域に対して読出しアクセスが行われる
ことを特徴とするコピー制御プログラム。
【請求項４】
コピー元文書において指定されたコピーデータを第１の記憶領域を介してコピー先文書にコピーするためのプログラムであって、
コンピュータを
コピー元文書およびコピー先文書がそれぞれコピー抑止文書であるか否かを判別する判別手段と、
上記コピー元文書がコピー抑止文書であったときに、そのコピー元文書において指定されたコピーデータが上記第１の記憶領域に書き込まれるのを阻止すると共に、そのコピーデータを第２の記憶領域に書き込み、上記第１の記憶領域をクリアする第１の抑止手段と、
上記コピー先文書がコピー抑止文書であったときに、上記第１の記憶領域または上記第２の記憶領域に書き込まれているコピーデータを上記コピー先文書に転送し、上記コピー元文書がコピー抑止文書でなかったときに上記第２の記憶領域をクリアする第２の抑止手段、
として機能させるためのコピー制御プログラム。
【請求項５】
コピー元文書がコピー抑止文書であるか否かを判別する手段、
上記コピー元文書がコピー抑止文書でなければ、そのコピー元文書において指定されたコピーデータを第１の記憶領域に書き込み、上記コピー元文書がコピー抑止文書であれば、そのコピー元文書において指定されたコピーデータを第２の記憶領域に書き込む手段、
コピー先文書がコピー抑止文書であるか否かを判断する手段、
上記コピー先文書がコピー抑止文書でなければ、上記第１の記憶領域に書き込まれているコピーデータをそのコピー先文書に転送し、上記コピー先文書がコピー抑止文書であれば、上記第１の記憶領域または上記第２の記憶領域に書き込まれているコピーデータをそのコピー先文書に転送する手段、
上記コピー元文書がコピー抑止文書ではなく且つ上記コピー先文書がコピー抑止文書であった場合に上記第２の記憶領域をクリアする手段、
を備えることを特徴とするコンピュータを用いたコピー制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書の一部または全部のコピーを制御する方法に係わり、特に、クリップボードを利用する電子文書の一部または全部のコピーを抑止する方法に係わる。
【背景技術】
【０００２】
電子文書（以下、単に「文書」と呼ぶことがある。）を作成または編集する際に、他の文書の一部または全部（あるいは、同一文書内の一部）をコピーして利用することがしばしば行われている。この場合、コピーすべきデータは、ユーザの操作に応じていったん所定の記憶領域に格納され、その後、その記憶領域から読み出されてコピー先の文書上に書き込まれる。ここで、この記憶領域は、しばしば、クリップボードと呼ばれる。また、上記ユーザ操作は、通常、コピーアンドペーストと呼ばれている。
【０００３】
ところで、近年、個人情報や秘密文書等（以下、「重要文書」と呼ぶことがある。）の漏洩または流出が問題になることがある。そして、このような重要文書の漏洩または流出は、しばしば、上述のクリップボードを介して行われている。このため、クリップボードを利用した情報の漏洩または流出を防止するために、例えば、下記の３つの方法が提案されている。
【０００４】
（１）クリップボードのクリア
この方法においては、あるアプリケーションで重要文書を開いた場合には、そのアプリケーションを利用してコピー操作が行われたときに、クリップボードの内容がクリアされてコピー操作が実質的に無効にされる。なお、この方法に関連する技術は、例えば、特許文献１に記載されている。
【特許文献１】特開２００２−１４９２９７号公報
【０００５】
（２）クリップボードを一時的に使用できない状態にする
この方法においては、重要文書が開いている期間は、他の文書が１つでも開かれると、クリップボードがロックされて使用できなくなる。
【０００６】
（３）クリップボードに意味のないデータを書き込む
この方法においては、あるアプリケーションで重要文書を開いた場合には、そのアプリケーションを利用してコピー操作が行われたときに、クリップボードに記憶されるべきデータに対して何らかの加工（例えば、暗号化）が施される。
【０００７】
上述の（１）〜（３）の方法によれば、重要文書の一部または全部が他の文書へコピーされてしまうことは防止できる。すなわち、情報の漏洩または不正な流出を防ぐことができる。
【０００８】
しかし、重要文書の一部または全部の他の文書へのコピーを一律に禁止してしまうと、しばしば、文書の作成あるいは編集の効率が低下してしまう。
【発明の開示】
【０００９】
本発明の目的は、文書編集の効率を低下させることなく、重要文書の漏洩を防止することである。
本発明に係るコピー制御方法は、コピー元文書がコピー抑止文書であるか否かを判別する手順、上記コピー元文書がコピー抑止文書でなければ、そのコピー元文書において指定されたコピーデータを第１の記憶領域に書き込み、上記コピー元文書がコピー抑止文書であれば、そのコピー元文書において指定されたコピーデータを第２の記憶領域に書き込む手順、コピー先文書がコピー抑止文書であるか否かを判断する手順、上記コピー先文書がコピー抑止文書でなければ、上記第１の記憶領域に書き込まれているコピーデータをそのコピー先文書に転送し、上記コピー先文書がコピー抑止文書であれば、上記第１の記憶領域または上記第２の記憶領域に書き込まれているコピーデータをそのコピー先文書に転送する手順、を有する。
【００１０】
上記方法においては、コピー元文書およびコピー先文書の双方がコピー抑止文書（例えば、重要文書）であれば、コピーデータは、コピー抑止文書をコピーするための第２の記憶領域を介してコピーされる。
【００１１】
コピー元文書がコピー抑止文書であり且つコピー先文書がコピー抑止文書でなければ（すなわち、コピー先文書が一般文書）、コピーデータは第２の記憶領域に書き込まれるが、コピーデータの読出しアクセスは、第１の記憶領域に対して行われる。よって、コピー先文書には、コピーデータは転送されない。すなわち、コピー抑止文書から一般文書へのコピーは禁止される。
【００１２】
コピー元文書がコピー抑止文書でなければ、コピーデータは第１の記憶領域に書き込まれるので、コピー先文書がコピー抑止文書であるか否かにかかわらず、そのコピーデータはコピー先に転送される。
【００１３】
このように、本発明によれば、重要文書から一般文書へのコピーが抑止されると共に、重要文書間のコピーは可能である。よって、文書編集の効率を低下させることなく、重要文書の漏洩を防止することが出来る。
【発明を実施するための最良の形態】
【００１４】
本発明に係る文書コピー制御方法は、ある文書（コピー元文書）の一部または全部を予め用意されている記憶領域を利用してある文書（コピー先文書またはペースト先文書）にコピーする手順を含むことを前提とする。ここで、上記記憶領域は、この実施例では、ＯＳ（例えば、マイクロソフト社のWindows (登録商標)）が提供するクリップボードである。また、コピー元文書およびコピー先文書は、互いに同じ文書であってもよいし、互いに異なる文書であってもよい。なお、コピー元文書においてその一部または全部をコピーデータとして指定するユーザの操作のことを「コピー操作」と呼ぶことがあり、コピーデータをコピー先文書内の所望の位置に挿入するユーザの操作のことを「ペースト操作」と呼ぶことがある。
【００１５】
図１〜図４は、本発明の実施形態のクリップボード抑止装置（コピー制御装置）の構成および動作を説明する図である。なお、図１〜図４において、太実線で描かれている矢印は、コピー元文書からクリップボードへコピーデータを書き込む処理に係わる信号またはデータの流れを表している。一方、太破線で描かれている矢印は、クリップボードからコピー先文書へコピーデータを転送する処理に係わる信号またはデータの流れを表している。なお、クリップボード抑止装置は、予め記述されたプログラムをコンピュータで実行することによって実現される。
【００１６】
図１は、重要文書から重要文書へのデータコピーの概略手順を説明する図である。図１において、文書編集モジュール１１Ｓは、たとえば、コピー元文書を編集するアプリケーションプログラムまたはその一部の機能である。また、文書編集モジュール１１Ｄは、たとえば、ペースト先文書を編集するアプリケーションプログラムまたはその一部の機能である。ここで、文書編集モジュール１１Ｓ、１１Ｄを提供するアプリケーションプログラムは、特に限定されるものではないが、例えば、マイクロソフト社のMS-Word 、MS-Excelなどである。
【００１７】
クリップボード１２は、ＯＳが提供する記憶領域であり、コピー元文書からペースト先文書へコピーすべきコピーデータを一時的に格納する。なお、クリップボード１２は、基本的に、任意のアプリケーションからアクセス可能である。
【００１８】
重要文書クリップボード１３は、クリップボード１２とは別個に設けられた記憶領域であり、重要文書に係わるコピーデータを一時的に格納する。なお、重要文書クリップボード１３は、後述する抑止モジュール１５Ｓ、１５Ｄによってのみアクセス可能である。
【００１９】
文書判別モジュール１４は、コピー元文書およびペースト先文書がそれぞれ重要文書であるのか或いは一般文書であるのかを判別する。ここで、重要文書とは、他の文書へのコピーを抑止する必要のある情報（例えば、個人情報または機密情報など）を含む文書である。一方、一般文書とは、重要文書以外の文書である。なお、各文書が重要文書であるのか一般文書であるのかは、ユーザにより予め指定されるものとする。
【００２０】
クリップボード抑止モジュール１５Ｓは、コピー元文書が重要文書であったときに起動され、文書編集モジュール１１Ｓに結合される。そして、コピー元文書においてコピーデータが指定されると、クリップボード抑止モジュール１５Ｓは、そのコピーデータがクリップボード１２に書き込まれるのを抑止すると共に、そのコピーデータを重要文書クリップボード１３に書き込む。このとき、クリップボード抑止モジュール１５Ｓは、クリップボード１２の内容をクリアする。
【００２１】
クリップボード抑止モジュール１５Ｄは、ペースト先文書が重要文書であったときに起動され、文書編集モジュール１１Ｄに結合される。そして、文書編集モジュール１１Ｄによってクリップボード１２が呼び出されると、クリップボード抑止モジュール１５Ｄは、クリップボード１２または重要文書クリップボード１３に書き込まれているコピーデータを文書編集モジュール１１Ｄに転送する。
【００２２】
上記構成のクリップボード抑止装置において、コピー元文書およびペースト先文書の双方が重要文書であれば、クリップボード抑止モジュール１５Ｓおよび１５Ｄが起動され、それぞれ、文書編集モジュール１１Ｓおよび１１Ｄに結合される。ここで、これらの起動処理および結合処理は、文書判別モジュール１４からの起動結合指示ａ１、ａ２により実行される。
【００２３】
ここで、文書編集モジュール１１Ｓを利用したコピー操作により、コピー元文書においてコピーデータＣＤが指定されたものとする。なお、ユーザによるコピー操作は、特に限定されるものではないが、例えば、コピーデータＣＤを指定すると共に「コピー」に対応するアイコンをクリックする手順、またはコピーデータＣＤを指定すると共に所定のキー（たとえば、「CTRL」＋「C」）を押圧する手順に相当する。このコピー操作が行われると、処理がクリップボード抑止モジュール１５Ｓに移る。クリップボード抑止モジュール１５Ｓは、文書編集モジュール１１Ｓから受け取ったコピーデータＣＤを重要文書クリップボード１３に書き込むと共に、クリア指示ａ３を発行してクリップボード１２をクリアする。
【００２４】
続いて、文書編集モジュール１１Ｄを利用したペースト操作により、クリップボードに格納されているコピーデータが呼び出される。なお、ユーザによるペースト処理は、特に限定されるものではないが、例えば、コピーデータＣＤを挿入すべき位置を指定すると共に「ペースト」に対応するアイコンをクリックする手順に相当する。このペースト操作が行われると、処理がクリップボード抑止モジュール１５Ｄに移る。クリップボード抑止モジュール１５Ｄは、重要文書クリップボード１３に書き込まれているコピーデータＣＤを文書編集モジュール１１Ｄに転送する。これにより、コピーデータＣＤのコピーアンドペーストが完了する。
【００２５】
このように、コピー元文書およびペースト先文書の双方が重要文書であったときは、コピー元文書から切り出されたコピーデータＣＤは、クリップボード１２を利用することなく、重要文書クリップボード１３を介してペースト先文書にコピーされる。すなわち、重要文書の一部または全部は、任意のアプリケーションからアクセス可能なクリップボード１２に格納されることはないので、個人情報や機密情報の漏洩を防止でき、セキュリティが向上する。
【００２６】
図２は、重要文書から一般文書へのデータコピーの概略手順を説明する図である。この場合、コピー元文書が重要文書なので、クリップボード抑止モジュール１５Ｓが起動されて文書編集モジュール１１Ｓに結合される。しかし、ペースト先文書は一般文書なので、図１に示したクリップボード抑止モジュール１５Ｄは起動されない。
【００２７】
上記構成において、文書編集モジュール１１Ｓを利用してコピー元文書においてコピーデータＣＤが指定されると、図１を参照しながら説明したように、クリップボード抑止モジュール１５Ｓは、コピーデータＣＤを重要文書クリップボード１３に書き込むと共に、クリップボード１２をクリアする。
【００２８】
続いて、ユーザにより文書編集モジュール１１Ｄを利用してペースト操作が行われる。そうすると、文書編集モジュール１１Ｄは、クリップボード１２にアクセスし、そこに格納されているデータを読み出そうとする。しかし、コピーデータＣＤは重要文書クリップボード１３に格納されており、また、クリップボード１２はクリアされている。したがって、文書編集モジュール１１Ｄは、ペースト先文書にペーストすべきデータを取得することができない。
【００２９】
このように、コピー元文書が重要文書であり且つペースト先文書が一般文書であるときは、コピー元文書から切り出されたコピーデータＣＤは、ペースト先文書を編集する文書編集モジュール１１Ｄがアクセスすることができない重要文書クリップボード１３に格納される。すなわち、重要文書の一部または全部が一般文書にコピーされることは禁止される。よって、重要文書に含まれている個人情報や機密情報の漏洩を防止でき、セキュリティが向上する。
【００３０】
図３は、一般文書から重要文書へのデータコピーの概略手順を説明する図である。この場合、コピー元文書が一般文書なので、図１に示したクリップボード抑止モジュール１５Ｓは起動されない。一方、ペースト先文書は重要文書なので、クリップボード抑止モジュール１５Ｄが起動されて文書編集モジュール１１Ｄに結合される。
【００３１】
上記構成において、コピー元文書においてコピーデータＣＤが指定されると、文書編集モジュール１１Ｓは、そのコピーデータＣＤをクリップボード１２に書き込む。続いて、文書編集モジュール１１Ｄを利用してペースト操作が行われる。そうすると、クリップボード抑止モジュール１５Ｄは、クリップボード１２にアクセスし、そこに格納されているコピーデータＣＤを読み出す。これにより、コピーデータＣＤのコピーアンドペーストが完了する。なお、このとき、クリップボード抑止モジュール１５Ｄは、クリア指示ａ４を発行して重要文書クリップボード１３をクリアする。
【００３２】
図４は、一般文書から一般文書へのデータコピーの概略手順を説明する図である。この場合、コピー元文書およびペースト先文書の双方が一般文書なので、図１に示したクリップボード抑止モジュール１５Ｓ、１５Ｄはいずれも起動されない。
【００３３】
上記構成において、コピー元文書においてコピーデータＣＤが指定されると、文書編集モジュール１１Ｓは、そのコピーデータＣＤをクリップボード１２に書き込む。続いて、文書編集モジュール１１Ｄを利用してペースト操作が行われる。そうすると、文書編集モジュール１１Ｄは、クリップボード１２にアクセスし、そこに格納されているコピーデータＣＤを読み出す。これにより、コピーデータＣＤのコピーアンドペーストが完了する。
【００３４】
このように、コピー元文書が一般文書であれば、ペースト先文書が重要文書であるか一般文書であるかにかかわらず、コピー元文書から切り出されたコピーデータＣＤは、クリップボード１２を介してペースト先文書にコピーされる。すなわち、個人情報や機密情報等を含んでいない一般文書から切り出されるコピーデータは、任意のアプリケーションがアクセス可能なクリップボード１２を介してコピーされる。
【００３５】
なお、ユーザは、上述のコピー操作およびペースト操作に際して、重要文書クリップボード１３を意識することはない。すなわち、ユーザは、クリップボード１２を介してコピーされたのか、或いは重要文書クリップボード１３を介してコピーされたのかを認識することなく、コピーアンドペーストを行うことが出来る。ただし、重要文書の一部または全部を一般文書にコピーしようとしたときは、そのコピーが禁止される。この場合、ユーザは、例えば、表示装置に表示される警報メッセージ等により、コピーが出来ない旨を認識する。
【００３６】
図５は、クリップボードの使用の抑止について説明する図である。図５において、重要文書を編集するアプリケーション２１は、クリップボード抑止モジュール１５Ｓ、１５Ｄが結合された文書編集モジュール１１Ｓ、１１Ｄに相当する。また、一般文書を編集するアプリケーション２２は、クリップボード抑止モジュール１５Ｓ、１５Ｄが結合されていない文書編集モジュール１１Ｓ、１１Ｄに相当する。
【００３７】
重要文書を編集するアプリケーション２１においてコピー操作が行われると、コピーＣ１が実行される。このコピーＣ１は、指定されたコピーデータを重要文書クリップボード１３に書き込む処理（Set Data）、およびクリップボード１２の内容をクリアする処理を含む。また、重要文書を編集するアプリケーション２１においてペースト操作が行われると、ペーストＰ１が実行される。このペーストＰ１は、クリップボード１２または重要文書クリップボード１３に格納されているコピーデータを取得する処理（Get Data）を含む。なお、ペーストP１では、重要文書クリップボード１３にアクセスする前に、クリップボード１２に優先的にアクセスする。そして、クリップボード１２からコピーデータを取得できたときは、重要文書クリップボード１３にはアクセスすることなくその内容をクリアする。
【００３８】
一般文書を編集するアプリケーション２２においてコピー操作が行われると、コピーＣ２が実行される。コピーＣ２は、指定されたコピーデータをクリップボード１２に書き込む処理（Set Data）を含む。また、一般文書を編集するアプリケーション２２においてペースト操作が行われると、ペーストＰ２が実行される。ペーストＰ２は、クリップボード１２に格納されているコピーデータを取得する処理（Get Data）を含む。
【００３９】
このように、実施形態のコピー制御方法においては、ＯＳが提供するクリップボード１２とは別個に重要文書クリップボード１３を設け、その重要文書クリップボード１３を利用して重要文書の一部または全部がコピーされるので、重要文書から一般文書への情報漏洩を防ぎながら、重要文書間のコピーを可能としている。これにより、上述した従来技術１（クリップボードのクリア）および従来技術３（クリップボードに意味のないデータを書き込む）の問題点が解決される。また、実施形態のコピー制御方法においては、ＯＳのクリップボード１２をロックする必要がないので、重要文書間のコピーおよび一般文書から重要文書へのコピーが可能である。これにより、従来技術２（クリップボードを一時的に使用できない状態にする）の問題点が解決される。
【００４０】
図６は、実施形態のコピー処理を示すフローチャートである。なお、このフローチャートの処理は、ユーザがコピー元文書を編集するためのアプリケーションを利用してコピー操作を行ったときに実行される。
【００４１】
ステップＳ１では、動作中のＯＳがクリップボード１２の内容をクリアする。クリップボード１２は、上述したように、ＯＳによって提供される記憶領域である。
ステップＳ２では、コピー元文書が重要文書であるか否かを調べる。そして、コピー元文書が重要文書でなければ、クリップボード抑止制御を行う必要がないのでステップＳ３に進み、コピー元文書が重要文書であれば、クリップボード抑止制御を行う必要があるのでステップＳ４に進む。なお、コピー元文書が重要文書であるか否かは、コピー防止情報に基づいて判断される。すなわち、あるアプリケーションによって編集すべき文書が開かれると、その文書（または、その文書を格納するフォルダ）に付されているコピー防止情報が文書判別モジュール１４に送られる。そして、文書判別モジュール１４は、受信したコピー防止情報に基づいて、その文書が重要文書であるか否かを判定する。コピー防止情報については、後で詳しく説明する。
【００４２】
ステップＳ３では、通常のクリップボード書込み処理を実行する。一例としては、ＯＳがWindows であるものとすると、指定されたコピーデータをクリップボード１２に書き込むためのWINAPI関数を呼び出して実行する。なお、ステップＳ３の処理は、図１〜図４においては、文書編集モジュール１１Ｓにより実行される。
【００４３】
ステップＳ４では、コピーデータの種別（アスキーコードデータ、バイナリデータ、ビットマップデータなど）をチェックする。そして、ステップＳ５において、コピーデータの種別に応じてそのコピーデータを重要文書クリップボード１３の対応するバッファに書き込む。なお、ステップＳ４およびＳ５の処理は、図１〜図４においては、クリップボード抑止モジュール１５Ｓにより実行される。このとき、クリップボード抑止モジュール１５Ｓは、文書編集モジュール１１Ｓにより呼び出されたWINAPI関数を取得し、その関数に応じてステップＳ４およびＳ５を実行するようにしてもよい。
【００４４】
図１〜図４に示した手順と図６に示すフローチャートとの関係は、以下の通りである。すなわち、図１および図２に示すケースでは、ステップＳ４、Ｓ５が実行され、重要文書において指定されたコピーデータが重要文書クリップボード１３に格納される。一方、図３および図４に示すケースでは、ステップＳ３が実行され、一般文書において指定されたコピーデータがクリップボード１２に格納される。
【００４５】
図７は、実施形態のペースト処理を示すフローチャートである。なお、このフローチャートの処理は、ユーザがペースト先文書を編集するためのアプリケーションを利用してペースト操作を行ったときに実行される。
【００４６】
ステップＳ１１では、ペースト先文書が重要文書であるか否かを調べる。そして、ペースト先文書が重要文書でなければ、クリップボード抑止制御を行う必要がないのでステップＳ１２に進み、ペースト先文書が重要文書であれば、クリップボード抑止制御を行う必要があるのでステップＳ１３に進む。なお、コピー元文書が重要文書であるか否かは、図６のステップＳ２と同様に、コピー防止情報に基づいて判断される。
【００４７】
ステップＳ１２では、通常のクリップボードペースト処理を実行する。一例としては、ＯＳがWindows であるものとすると、クリップボード１２に格納されているコピーデータをペースト先文書内の指定された位置に挿入するためのWINAPI関数を呼び出して実行する。なお、ステップＳ１２の処理は、図１〜図４においては、文書編集モジュール１１Ｄにより実行される。
【００４８】
ステップＳ１３では、クリップボード１２にコピーデータが格納されているか否か調べる。ここで、クリップボード１２は、上述したように、ＯＳによって提供される記憶領域である。このとき、クリップボード１２にコピーデータが格納されていれば、ステップＳ１４において、重要文書クリップボード１３をクリアする。そして、ステップＳ１５において、クリップボード１２からコピーデータを読み出し、ペースト先文書内の指定された位置に挿入する。
【００４９】
クリップボード１２にコピーデータが格納されていなければ、ステップＳ１６において重要文書クリップボード１３にコピーデータが格納されているか否か調べる。このとき、重要文書クリップボード１３にコピーデータが格納されていれば、ステップＳ１７でそのコピーデータの種別をチェックする。そして、ステップＳ１８において、コピーデータの種別に応じて重要文書クリップボード１３の対応するバッファからコピーデータを読み出し、ペースト先文書内の指定された位置に挿入する。なお、クリップボード１２および重要文書クリップボード１３のいずれにもコピーデータが格納されていない場合には、ペースト処理を行うことなく処理を終了する。
【００５０】
上記ステップＳ１３〜Ｓ１８の処理は、図１〜図４においては、クリップボード抑止モジュール１５Ｄにより実行される。このとき、クリップボード抑止モジュール１５Ｄは、文書編集モジュール１１Ｄにより呼び出されたWINAPI関数を取得し、その関数に応じてステップＳ１３〜Ｓ１８を実行するようにしてもよい。また、ステップＳ１５、Ｓ１８において、クリップボード抑止モジュール１５Ｄは、クリップボード（クリップボード１２または重要文書クリップボード１３）からコピーデータを読み出して文書編集モジュール１１Ｄに転送し、文書編集モジュール１１Ｄがそのコピーデータをペースト先文書内の指定された位置に挿入するようにしてもよい。
【００５１】
図１〜図４に示した手順と図７に示すフローチャートとの関係は、以下の通りである。すなわち、図１に示すケースでは、クリップボード１２がクリアされており且つ重要文書クリップボード１３にコピーデータが格納されているので、ステップＳ１７、Ｓ１８が実行され、重要文書クリップボード１３からそのコピーデータが読み出されてペースト先文書に挿入される。図２に示すケースでは、図１に示すケースと同様に、重要文書クリップボード１３にコピーデータが格納されている。しかし、ステップＳ１２が実行され、重要文書クリップボード１３にアクセスすることなくクリップボード１２のみにアクセスするので、ペースト先文書には何もペーストされない。図３に示すケースでは、クリップボード１２にコピーデータが格納されているので、ステップＳ１４、Ｓ１５が実行され、クリップボード１２からそのコピーデータが読み出されてペースト先文書に挿入される。図４に示すケースでは、クリップボード１２にコピーデータが格納されている状態でステップＳ１２が実行されるので、クリップボード１２からそのコピーデータが読み出されてペースト先文書に挿入される。
【００５２】
図８は、コピー防止情報について説明する図である。なお、この実施例では、１または複数の文書ファイルを格納するフォルダ毎にコピー防止情報が設定されるものとする。
コピー防止情報設定モジュール３１は、管理者からの指示に応じて起動されると、コンピュータの表示装置３２にコピー防止情報を入力するためのフォーム３３を表示する。管理者は、このフォーム３３を利用して下記の情報を入力する。
１．コピー防止フォルダのパス名
２．設定名称
３．クリップボード使用の抑止：有効／無効
４．印刷の抑止：有効／無効
５．別名保存の抑止：有効／無効
６．使用可能アプリケーション
７．使用可能アプリケーションの実行モジュールパス
フォーム３３を利用してフォルダ毎に入力されたコピー防止情報は、各フォルダを識別する識別子を検索キーとしてコピー防止情報格納ファイル３４に格納される。
【００５３】
文書編集モジュール１１（１１Ｓ、１１Ｄ）が起動され、その文書編集モジュール１１がある文書を開くと、文書判別モジュール１４は、その文書を格納するフォルダの識別子を検索キーとしてコピー防止情報格納ファイル３４にアクセスする。そして、対応するコピー防止情報が格納されていれば、文書判別モジュール１４は、そのコピー防止情報を抽出し、クリップボード抑止モジュール１５（１５Ｓ、１５Ｄ）およびコピー防止ドライバ３５に送信する。送信されたコピー防止情報は、それぞれクリップボード抑止モジュール１５およびコピー防止ドライバ３５に登録される。
【００５４】
クリップボード抑止モジュール１５は、受信したコピー防止情報において「クリップボード使用の抑止」が有効であれば、対応する文書編集モジュール１１と結合し、以降、その文書編集モジュール１１と連携して動作する。クリップボード抑止モジュール１５の動作については、前述した通りである。
【００５５】
コピー防止ドライバ３５は、受信したコピー情報に基づいて、対応するフォルダへのアクセスを制限する。すなわち、例えば、管理者によって登録されたアプリケーション以外のアプリケーションからのアクセスを拒絶し、また、対応するフォルダからのファイルのコピー、移動、削除を禁止する。
【００５６】
なお、複数の端末において共通のポリシでコピー防止を行う場合には、ネットワークを介してコピー防止情報格納ファイル３４に格納されているコピー防止情報をそれらの複数の端末に配布すればよい。このような構成を導入すれば、複数の端末において重要文書の持ち出しが出来ないセキュリティの高いシステムが構築される。なお、このとき、各端末のユーザは、コピー防止機能の設定を意識することはない。
【００５７】
図９は、ファイルコピーの防止について説明する図である。図９において、ユーザにより、コピー防止フォルダ４１に格納されている文書ファイルＡを他のフォルダにコピーまたは移動する操作が行われると、以下の処理が実行される。なお、ファイルのコピーまたは移動は、例えば、ファイル管理ソフト（例えば、マイクロソフト社のエクスプローラ）を利用して行われる。上記ユーザ操作が行われると、処理がコピー防止ファイルシステムドライバ４２に移る。コピー防止ファイルシステムドライバ４２は、予め登録されている許可フォルダリストを参照し、ファイルのコピー先または移動先のフォルダが許可されているか否かをチェックする。そして、そのコピー先または移動先のフォルダが許可されていれば、ユーザにより指定されたファイルをコピーまたは移動する。一方、そのコピー先または移動先のフォルダが許可されていなければ、ユーザにより指定されたファイルのコピーまたは移動を拒絶し、エラー通知を行う。この構成により、管理者以外のユーザが重要文書を持ち出すことを防止できる。
【００５８】
本発明に係わる機能は、コンピュータを用いて上述のフローチャートに示した処理を記述したプログラムを実行することによって実現される。そのプログラムを実行するコンピュータ１００のブロック図を図１０に示す。
【００５９】
ＣＰＵ１０１は、上述の機能を記述したプログラムを記憶装置１０２からメモリ１０３にロードして実行する。記憶装置１０２は、例えばハードディスクであり、上記プログラムを格納する。なお、記憶装置１０２は、コンピュータ１００に接続される外部記憶装置であってもよい。メモリ１０３は、例えば半導体メモリであり、ＣＰＵ１０１の作業領域として使用される。
【００６０】
記録媒体ドライバ１０４は、ＣＰＵ１０１の指示に従って可搬性記録媒体１０５にアクセスする。可搬性記録媒体１０５は、例えば、半導体デバイス（ＰＣカード等）、磁気的作用により情報が入出力される媒体（フレキシブルディスク、磁気テープ等）、光学的作用により情報が入出力される媒体（光ディスク等）を含むものとする。入出力装置１０６は、キーボード、マウス、表示装置、プリンタを含むものとする。そして、通信制御装置１０７は、ＣＰＵ１０１の指示に従って、ネットワークを介してデータを送受信する。
【００６１】
コンピュータ１００において、クリップボード１２および重要文書クリップボード１３は、メモリ１０３の所定の領域に設けられ、コピー防止情報格納ファイル３４は、記憶装置１０２またはメモリ１０３に設けられる。また、文書編集モジュール１１（１１Ｓ、１１Ｄ）、文書判断モジュール１４、クリップボード抑止モジュール１５（１５Ｓ、１５Ｄ）、コピー防止情報設定モジュール３１は、ＣＰＵ１０１によって実行されるプログラムである。
【００６２】
図１１は、本発明に係わるソフトウェアプログラムの提供方法を説明する図である。本発明に係わるプログラムは、例えば、以下の３つの方法の中の任意の方法で提供される。
（１）コンピュータにインストールされて提供される。この場合、プログラムは、たとえば、コンピュータ１００の出荷前にそのコンピュータ１００にプレインストールされる。
（２）可搬性記録媒体に格納されて提供される。この場合、可搬性記録媒体１０５に格納されるプログラムは、基本的に、記録媒体ドライバ１０４を介して記憶装置１０２にインストールされる。
（３）ネットワーク上に設けられているプログラムサーバから提供される。この場合、基本的には、コンピュータ１００は、プログラムサーバからダウンロードすることにより対応するプログラムを取得する。
【００６３】
なお、上述の実施例では、「コピー」が、いわゆる「コピーアンドペースト」であるものとして説明したが、いわゆる「カットアンドペースト」も含む。すなわち、本発明に係る「コピー」は、ある文書の一部または全部をクリップボード（クリップボード１２または重要文書クリップボード１３）を介して他の文書に移動する場合の処理も含むものとする。
【００６４】
また、上述の実施例では、フォルダ毎にコピー防止情報が設定され、重要フォルダに格納されている文書が重要文書であるものとしているが、本発明はこれに限定されるものではない。すなわち、文書毎に重要／非重要（すなわち、コピー抑止文書／コピー非抑止文書）を識別する情報を付与するようにしてもよい。あるいは、文書内の特定部分が「重要部分」であることを定義できるようにしてもよい。この場合、その特定部分の一部または全部をコピーする際に重要文書クリップボード１３が使用され、その文書内の他の部分をコピーする際にはクリップボード１２が使用される。
【図面の簡単な説明】
【００６５】
【図１】重要文書から重要文書へのデータコピーの概略手順を説明する図である。
【図２】重要文書から一般文書へのデータコピーの概略手順を説明する図である。
【図３】一般文書から重要文書へのデータコピーの概略手順を説明する図である。
【図４】一般文書から一般文書へのデータコピーの概略手順を説明する図である。
【図５】クリップボードの使用の抑止について説明する図である。
【図６】実施形態のコピー処理を示すフローチャートである。
【図７】実施形態のペースト処理を示すフローチャートである。
【図８】コピー防止情報について説明する図である。
【図９】ファイルコピーの防止について説明する図である。
【図１０】本発明の機能を記述したプログラムを実行するコンピュータのブロック図である。
【図１１】本発明に係わるソフトウェアプログラムの提供方法を説明する図である。
【図１】
0004516598.tif 000002
【図２】
0004516598.tif 000003
【図３】
0004516598.tif 000004
【図４】
0004516598.tif 000005
【図５】
0004516598.tif 000006
【図６】
0004516598.tif 000007
【図７】
0004516598.tif 000008
【図１０】
0004516598.tif 000009
【図１１】
0004516598.tif 000010
【図８】
0004516598.tif 000011
【図９】
0004516598.tif 000012