(57)【特許請求の範囲】
【請求項１】
印刷対象物に対して印刷対象情報の印刷を行う際に、前記印刷対象物に持ち出しの抑制を促す追跡情報を付加する印刷画像生成プログラムにおいて、
コンピュータを、
アプリケーションからプリンタドライバへの印刷要求があると、前記印刷要求を取得するとともに前記プリンタドライバへの前記印刷要求を遮断する印刷要求遮断手段、
前記印刷要求を出したユーザに関する印刷ポリシー情報を、前記コンピュータを管理する管理サーバに要求し、前記管理サーバから前記印刷ポリシー情報を取得する印刷ポリシー情報取得手段、
前記印刷ポリシー情報から前記追跡情報を生成する追跡情報生成手段、
前記印刷対象情報に前記追跡情報を書き込んだ追跡印刷画像情報を生成する追跡印刷画像情報生成手段、
遮断した前記印刷要求に代えて、前記プリンタドライバに前記追跡印刷画像情報の印刷要求を行う印刷要求手段、
として機能させることを特徴とする印刷画像生成プログラム。
【請求項２】
前記追跡情報は、前記印刷対象物の前記印刷要求元を識別し得る情報であることを特徴とする請求項１記載の印刷画像生成プログラム。
【請求項３】
印刷対象物に対して印刷対象情報の印刷を行う際に、前記印刷対象物に持ち出しの抑制を促す追跡情報を付加する印刷画像生成プログラムを記録したコンピュータ読み取り可能な記録媒体において、
コンピュータを、
アプリケーションからプリンタドライバへの印刷要求があると、前記印刷要求を取得するとともに前記プリンタドライバへの前記印刷要求を遮断する印刷要求遮断手段、
前記印刷要求を出したユーザに関する印刷ポリシー情報を、前記コンピュータを管理する管理サーバに要求し、前記管理サーバから前記印刷ポリシー情報を取得する印刷ポリシー情報取得手段、
前記印刷ポリシー情報から前記追跡情報を生成する追跡情報生成手段、
前記印刷対象情報に前記追跡情報を書き込んだ追跡印刷画像情報を生成する追跡印刷画像情報生成手段、
遮断した前記印刷要求に代えて、前記プリンタドライバに前記追跡印刷画像情報の印刷要求を行う印刷要求手段、
として機能させることを特徴とする印刷画像生成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項４】
印刷対象物に対して印刷対象情報の印刷を行う際に、コンピュータにより前記印刷対象物に持ち出しの抑制を促す追跡情報を付加する印刷画像生成方法において、
アプリケーションからプリンタドライバへの印刷要求があると、前記印刷要求を取得するとともに前記プリンタドライバへの前記印刷要求を遮断し、
前記コンピュータを管理する管理サーバに、遮断した前記印刷要求を出したユーザに関する印刷ポリシー情報を要求し、前記管理サーバから前記印刷ポリシー情報を取得し、
前記印刷ポリシー情報から前記追跡情報を生成し、
前記印刷対象情報に前記追跡情報を書き込んだ追跡印刷画像情報を生成し、
遮断した前記印刷要求に代えて、前記プリンタドライバに前記追跡印刷画像情報の印刷要求を行う、
ことを特徴とする印刷画像生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は印刷画像生成プログラムおよびその記録媒体並びに印刷画像生成方法に関し、特に、印刷対象物に持ち出しの抑制を促す情報を付加する印刷画像生成プログラムおよびその記録媒体並びに印刷画像生成方法に関する。
【背景技術】
【０００２】
近年、コンピュータで取り扱われる情報の漏洩防止が求められている。外部からの不正アクセスによるデータの漏洩であれば、ネットワーク上にファイアウォールを設置することで防止できる。ただし、ファイアウォール等の技術では、システム内のユーザによる情報の不正持ち出しを抑制、防止することはできない。【０００３】
そこで、システム内部のユーザによる情報の不正持ち出しを防止する方法としては、例えば、システム内で保存するデータを暗号化する方法がある。暗号化データは、システム内部でのみ復号でき、外部のシステムでは復号できないようにしておく。これにより、システム内の情報の電子データによる不正持ち出しを防止できる。【０００４】
ところが、重要なデータを内部のシステムで紙に印刷し、印刷された用紙を外部に不正に持ち出すことも可能である。そこで、一般的には、重要なデータが印刷された用紙には「社外秘」の文字等を印字し、その用紙が不注意により外部に持ち出されるのを抑制、防止している。また、不正に持ち出された場合においても、その持ち出された用紙を発見したときに印刷者を特定できるように、印刷内容に印刷者の名前を印字したり、重要なデータ中に、人間の目には一見分からないような形で透かし情報を埋込んだりする方法が知られている（例えば、特許文献１参照）。
【特許文献１】特開２００１−７８００６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、このような印刷を行うためには専用の（指定された）プリンタを使用する必要があるため、使用するプリンタが限定されてしまうという問題があった。
本発明はこのような点に鑑みてなされたものであり、プリンタの機種に依存することなく、印刷物の不正な持ち出しを抑制する情報を印刷することができる印刷画像生成プログラムおよびその記録媒体並びに印刷画像生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明では上記問題を解決するために、コンピュータに実行させるための印刷画像生成プログラムが提供される。印刷画像生成プログラムは、コンピュータを、印刷画像生成装置として機能させる。
【０００７】
印刷画像生成装置は、印刷要求遮断手段、印刷ポリシー情報取得手段、追跡情報生成手段、追跡印刷画像情報生成手段、印刷要求手段を有し、印刷対象物に対して印刷対象情報の印刷を行う際に、印刷対象物に持ち出しの抑制を促す追跡情報を付加する。
【０００８】
印刷要求遮断手段は、アプリケーションからプリンタドライバへの印刷要求があると、印刷要求を取得するとともにプリンタドライバへの印刷要求を遮断する。印刷ポリシー情報取得手段は、印刷要求を出したユーザに関する印刷ポリシー情報を、コンピュータを管理する管理サーバに要求し、管理サーバから印刷ポリシー情報を取得する。追跡情報生成手段は、印刷ポリシー情報から追跡情報を生成する。
【０００９】
追跡印刷画像情報生成手段は、印刷対象情報に追跡情報を書き込んだ追跡印刷画像情報を生成する。印刷要求手段は、遮断した印刷要求に代えて、プリンタドライバに追跡印刷画像情報の印刷要求を行う。
【００１０】
なお、印刷対象情報としては、文字や画像等の情報が挙げられる。
【００１１】
また、上記課題を解決するために、印刷対象物に対して印刷対象情報の印刷を行う際に、印刷対象物に持ち出しの抑制を促す追跡情報を付加する印刷画像生成方法において、アプリケーションからプリンタドライバへの印刷要求があると、印刷要求を取得するとともにプリンタドライバへの印刷要求を遮断し、遮断した印刷要求に代えて、プリンタドライバに追跡印刷画像情報の印刷要求を行うことを特徴とする印刷画像生成方法が提供される。
【００１２】
このような印刷画像生成方法によれば、上記印刷画像生成プログラムを実行するコンピュータと同様の処理が実行される。
【発明の効果】
【００１３】
本発明によれば、プリンタの機種に依存することなく、印刷物の不正な持ち出しを抑制する情報を印刷することができる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
【図面の簡単な説明】
【００１４】
【図１】本実施の形態の概略を示す原理図である。
【図２】本実施の形態のシステム構成例を示す図である。
【図３】本実施の形態に用いるクライアントのハードウェア構成例を示す図である。
【図４】クライアントのプログラムモジュールの構成を示すブロック図である。
【図５】管理サーバのプログラムモジュールの構成を示すブロック図である。
【図６】印刷ポリシー情報の管理画面を示す図である。
【図７】印刷画像生成システムにより印刷された印刷物を示す図である。
【図８】印刷画像生成システムの印刷動作を示すフローチャートである。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態を、図面を参照して説明する。
まず、実施の形態に適用される発明の概念について説明し、その後、実施の形態の具体的な内容を説明する。【００１６】
図１は、本実施の形態の概略を示す原理図である。
本発明の印刷画像生成プログラムが適用されると、コンピュータは、印刷画像生成装置１として動作する。【００１７】
印刷画像生成装置１は、アプリケーション２と、プリンタドライバ３と、印刷監視手段４と、仮想ドライバ５とを有し、印刷対象物に対して印刷対象情報の印刷を行う際に、印刷対象物に持ち出しの抑制を促す追跡情報を付加する。この追跡情報は、例えば、印刷物の印刷元（コンピュータ、ユーザ、グループ等）を識別し得る情報である。【００１８】
アプリケーション２は、アプリケーションプログラムに従って所定の処理を実行し、印刷を行う場合は、プリンタドライバ３へ印刷要求を出力する。
プリンタドライバ３は、入力される情報を対応するプリンタ（図示せず）に印刷させる機能を有している。【００１９】
印刷監視手段４は、アプリケーション２からの印刷要求の出力を監視しており、印刷要求が出力されると、その印刷要求を取得するとともにプリンタドライバ３への印刷要求を遮断する。なお、印刷監視手段４は、状況に応じてアプリケーション２からの印刷要求を遮断せず、そのままプリンタドライバ３に渡す処理を行うこともできる。【００２０】
印刷監視手段４は印刷要求を取得した後、印刷要求が適切なものかの確認を行い、適切なものであれば、仮想ドライバ５に対して処理実行命令を与える。
仮想ドライバ５は、処理実行命令を受けると、印刷対象情報と、追跡情報を取得する。この印刷対象情報は、例えば、アプリケーション２から印刷要求が出力された際に、アプリケーション２から出力された印刷対象情報である。そして、印刷対象情報に追跡情報を付加した追跡印刷画像情報を生成してプリンタドライバ３に出力する。【００２１】
このような印刷画像生成装置１の動作について説明する。
まず、アプリケーション２により印刷要求が出力されると、印刷監視手段４により印刷要求が取得されるとともに、アプリケーション２からプリンタドライバ３への直接的な印刷要求が遮断される。その後、印刷監視手段４は印刷要求が適切なものかの確認が行われ、適切なものであれば、仮想ドライバ５に対して処理実行命令が与えられる。そして、仮想ドライバ５により印刷対象情報と追跡情報が取得され、追跡印刷画像情報が生成されてプリンタドライバ３に出力される。プリンタドライバ３は、この追跡印刷画像情報に基づいてプリンタに画像を印刷させる。【００２２】
このように、印刷要求があると、追跡印刷画像情報がプリンタドライバ３に供給されることにより、プリンタの機種に依存することなく、印刷対象情報に追跡情報を付加した追跡印刷画像情報が印刷されるため、印刷物の不正な持ち出しを抑制することができる。【００２３】
次に、本実施の形態の詳細を説明する。
図２は、本実施の形態のシステム構成例を示す図である。
印刷画像生成システム５０では、複数のコンピュータで構成されるクライアント（図２ではクライアント１００、１００ａ）と、管理サーバ２００と、プリンタ２１、２２、２３とがネットワーク１０を介して接続されている。【００２４】
クライアント１００、１００ａは、内部アプリケーションによる印刷要求を受けて、印刷処理を行って、対応するプリンタ２１、２２、２３への印刷要求を出力する。
管理サーバ２００は、クライアント１００、１００ａからの種々の要求に対して応答する。【００２５】
プリンタ２１、２２、２３は、クライアント１００、１００ａから送信される情報を印刷する機能を有し、印刷されたものは外部へ持ち出し可能である。なお、本実施の形態では、プリンタ２１、２２、２３は、ネットワーク１０を介してクライアント１００、１００ａに接続されているが、これに限らず、クライアント１００、１００ａに直接接続されているローカルプリンタであってもよい。【００２６】
次に、クライアント１００、１００ａのハードウェア構成を説明するが、以下では代表的にクライアント１００について説明する。
図３は、本実施の形態に用いるクライアントのハードウェア構成例を示す図である。【００２７】
クライアント１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０８を介してＲＡＭ（Random Access Memory）１０２、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、通信インタフェース１０６およびドライブ１０７が接続されている。【００２８】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。ＨＤＤ１０３には、ＯＳやアプリケーションプログラムが格納される。【００２９】
グラフィック処理装置１０４には、モニタ１１が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１の画面に表示させる。入力インタフェース１０５には、キーボード１２とマウス１３とが接続されている。入力インタフェース１０５は、キーボード１２やマウス１３から送られてくる信号を、バス１０８を介してＣＰＵ１０１に送信する。【００３０】
通信インタフェース１０６は、ネットワーク１０に接続されている。通信インタフェース１０６は、ネットワーク１０を介して、他のコンピュータとの間でデータの送受信を行う。【００３１】
ドライブ１０７は、読み出し／書き込み操作要求によって、外部記憶媒体の情報データの読み出しや書き込みを行う機能を有し、情報データが書き込まれた外部記憶媒体は、外部へ持ち出し可能である。【００３２】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお、管理サーバ２００についても、クライアント１００と同様のハードウェア構成で実現することができる。【００３３】
次に、クライアント１００、１００ａおよび管理サーバ２００の各プログラムモジュールの構成について説明する。なお、各プログラムモジュールは、クライアント１００、１００ａおよび管理サーバ２００に実行させる処理を記述した情報であり、プログラムモジュールに基づいてクライアント１００、１００ａおよび管理サーバ２００が所定の機能を実行することができる。【００３４】
まず、クライアント１００、１００ａのプログラムモジュールの構成を説明するが、以下では代表的にクライアント１００について説明する。
図４は、クライアントのプログラムモジュールの構成を示すブロック図である。【００３５】
クライアント１００は、印刷要求およびその印刷データ（ファイル）を出力するアプリケーション１１０と、アプリケーションからの印刷要求に応じて処理を行う印刷クライアント部１２０と、プリンタ２１に対応して設けられるプリンタドライバ１３１と、プリンタ２２に対応して設けられるプリンタドライバ１３２と、プリンタ２３に対応して設けられるプリンタドライバ１３３と、ネットワーク１０を介して管理サーバ２００およびプリンタ２１、２２、２３に接続される通信制御部１４０とを有している。【００３６】
アプリケーション１１０としては、例えば文書作成アプリケーション等が挙げられる。
印刷クライアント部１２０は、アプリケーション１１０からの印刷要求を監視する印刷監視部１２１と、追跡情報（後述）を格納する追跡情報格納部１２２と、アプリケーション１１０からスプール（SPOOL）される印刷データを格納する印刷データ格納部１２３と、仮想ドライバ１２４と、追跡情報付き印刷データ格納部１２５とを有している。【００３７】
印刷監視部１２１は、アプリケーション１１０からプリンタドライバ１３１、１３２、１３３のうちのいずれかのプリンタドライバ（以下では一例としてプリンタドライバ１３１とする）に印刷要求が出力されると、その印刷要求をフック（HOOK）する、すなわち、印刷要求を取得するとともにプリンタドライバ１３１への印刷要求を遮断する。そしてアプリケーション１１０の印刷先のプリンタ２１の性能を確認（判断）する。例えば、プリンタ２１の解像度を確認し、プリンタ２１が印刷対象物に追跡情報を印刷することができるか否かを確認する。その結果、プリンタ２１の解像度が低く、機能的に追跡情報を印刷することができないと判断した場合、印刷不可である旨を、例えばモニタ１１に表示させることによりユーザに通知し、印刷をキャンセルする。【００３８】
一方、機能的に追跡情報を埋め込むことができるプリンタに対する印刷要求であった場合、印刷監視部１２１は、印刷ポリシー情報ダウンロード依頼を管理サーバ２００に対して要求する。【００３９】
印刷ポリシー情報は、印刷要求を出したクライアント１００、１００ａのユーザ（ユーザアカウント）に関する情報である。なお、印刷ポリシー情報については、後に詳述する。【００４０】
印刷監視部１２１は、管理サーバ２００から印刷ポリシー情報を受け取ると、印刷許可の判定処理を行う。具体的には、この印刷ポリシー情報に基づいて、クライアント１００にログインしているユーザが、印刷許可されたグループであるか否か、印刷許可されたユーザであるか否か、印刷ポリシー情報に含まれる過去の印刷履歴を参照して不正な利用履歴がないか否か、アプリケーション１１０の印刷データ（ファイル）が、印刷許可されたデータ（ファイル）であるか否か等を確認し、いずれの条件をも満たす場合は、印刷ポリシー情報に基づいて追跡情報を生成して追跡情報格納部１２２に出力するとともに印刷許可指示を仮想ドライバ１２４に出力する。一方、いずれかの条件を満たさない場合は、印刷不可である旨をユーザに通知し、印刷をキャンセルする。【００４１】
追跡情報格納部１２２は、印刷監視部１２１から出力される追跡情報を格納する。
仮想ドライバ１２４は、追跡情報付加処理部１２４ａおよび印刷処理部１２４ｂを有している。【００４２】
追跡情報付加処理部１２４ａは、印刷監視部１２１からの印刷許可指示を受けると、追跡情報格納部１２２からの追跡情報および印刷データ格納部１２３からの印刷データを受け取り、印刷データに追跡情報を埋め込み、追跡情報付き印刷データを生成して追跡情報付き印刷データ格納部１２５に出力するとともに、印刷指示を印刷処理部１２４ｂに出力する。【００４３】
印刷処理部１２４ｂは、印刷指示を受け取ると、追跡情報付き印刷データ格納部１２５から追跡情報付き印刷データを読み出し、選択されたプリンタドライバ１３１に対して追跡情報付き印刷データおよびそのデータの印刷命令を出力し、それとともに追跡情報および印刷の状況（印刷の成功、失敗）の情報を備える追跡ログを、通信制御部１４０を介して管理サーバ２００に送信する。【００４４】
プリンタドライバ１３１は、印刷処理部１２４ｂからの印刷命令を受け取ると、通信制御部１４０を介してプリンタ２１に追跡情報付き印刷データを送信してプリンタ２１を動作させる。【００４５】
次に、管理サーバ２００のプログラムモジュールの構成を説明する。
図５は、管理サーバのプログラムモジュールの構成を示すブロック図である。
管理サーバ２００は、クライアント１００、１００ａの印刷クライアント部１２０が正常に動作しているか否か（不正に変更・削除されていないか否か）を管理する印刷クライアント管理部２１１と、印刷ポリシー提供部２１２と、印刷ポリシー情報が格納された印刷ポリシー格納部２１３と、追跡ログ管理部２１４と、追跡ログ格納部２１５とを備える印刷サーバ部２１０と、クライアント１００、１００ａとの間で通信を行うための通信制御部２２０とを有している。【００４６】
印刷ポリシー提供部２１２は、通信制御部２２０を介してクライアント１００、１００ａからの印刷ポリシー情報ダウンロード依頼を受信すると、印刷ポリシー格納部２１３に印刷ポリシー出力要求を送る。【００４７】
印刷ポリシー格納部２１３は、印刷ポリシー出力要求があると、この要求に応じて印刷ポリシー情報を通信制御部２２０に出力する。これにより、印刷ポリシー情報が、印刷ポリシー情報ダウンロード依頼を出力したクライアント１００（１００ａ）に伝送される。【００４８】
追跡ログ管理部２１４は、追跡ログ格納部２１５に格納される追跡ログを管理し、必要に応じて追跡ログを管理サーバ２００の備えるモニタ（図示せず）に表示する。
追跡ログ格納部２１５は、受信した追跡ログを格納する。【００４９】
通信制御部２２０はネットワーク１０を介してクライアント１００、１００ａに接続されている。
次に、クライアント１００、１００ａにおける印刷監視部１２１のアプリケーション１１０からの印刷要求のフックについて説明する。【００５０】
ＯＳにＷｉｎｄｏｗｓ（登録商標）を用いた場合、印刷時は、操作方法に拘わらず必ず関数、またはメソッドが実行される。そのためこれらをフックすることで全ての印刷操作を制御することができる。【００５１】
本実施の形態では、印刷監視部１２１が、常駐アプリケーションであるＡＰＩフックとＡＰＩフックでカバーできないケースを補うＳｈｅｌｌフックとにより印刷要求を監視し、アプリケーション１１０の印刷要求が行われるときに出力先のプリンタドライバを判定する。そして、特定のプリンタドライバ以外への出力の場合は印刷要求をキャンセルすることで、他のプリンタでの印刷を禁止する。【００５２】
具体的には、アプリケーション１１０の印刷要求の出力が完了したときに関数ＥｎｄＤｏｃ（）が呼ばれた（Ｃａｌｌされた）とき、印刷監視部１２１は、ＡＰＩフックを用いて関数ＥｎｄＤｏｃ（）をフックする。【００５３】
実際の印刷は、この関数の後に実行されるため、関数ＥｎｄＤｏｃ（）をフックすることにより、アプリケーションによる直接的な印刷を停止させることができる。
また、印刷監視部１２１は、アプリケーション１１０の印刷要求の出力が完了したときにメソッドＩｓｈｅｌｌｅｘｅｃｕｔｅｈｏｏｋ：：ｅｘｅｃｕｔｅが呼ばれたとき、印刷監視部１２１は、Ｓｈｅｌｌフックを用いてメソッドＩｓｈｅｌｌｅｘｅｃｕｔｅｈｏｏｋ：：ｅｘｅｃｕｔｅをフックする。【００５４】
実際の印刷は、このメソッドの後に実行されるため、メソッドＩｓｈｅｌｌｅｘｅｃｕｔｅｈｏｏｋ：：ｅｘｅｃｕｔｅをフックすることにより、アプリケーションによる直接的な印刷を停止させることができる。【００５５】
また、印刷監視部１２１は、フックしたプロセスの中に含まれるドライバのプロパティ情報を比較し、対象となるプリンタかどうかを判別する。これにより、ユーザがドライバ名を書き換えた場合においても、対象外のプリンタに対する印刷要求が出力されてしまうことを確実に防止することができる。【００５６】
次に、印刷ポリシー情報について説明する。
印刷ポリシー情報は、ユーザのアカウント名、ユーザ名、グループ名、利用可能ファイル、印刷実績、印刷枚数上限、所定ファイルの印刷可否情報等が含まれた情報であり、管理サーバ２００の管理権限を有する管理者により設定される。【００５７】
図６は、印刷ポリシー情報の管理画面を示す図である。
図６に示す管理画面４００には、管理テーブル４１０が表示されている。管理テーブル４１０には、「アカウント名」、「ユーザ名」、「グループ名」、「印刷実績」および「印刷枚数上限」の欄が設けられ、横方向の情報が互いに関連づけられている。このように、管理テーブル４１０は、アカウント名、ユーザ名、グループ名等が集合単位で設定されている。【００５８】
「アカウント名」にはユーザのアカウントが登録されている。「ユーザ名」には、クライアント１００にログインすることができるユーザ名（ユーザＩＤ）が登録されている。「グループ名」にはユーザの属するグループ名が登録されている。「印刷実績」には、今までに印刷クライアント部１２０を介して印刷を行った印刷物の実績枚数が登録されている。「印刷枚数上限」には、一度に印刷することができる枚数の上限が登録されている。このように、印刷実績および印刷枚数上限の欄を設定することで、印刷コストを削減することができる。【００５９】
また、印刷ポリシー情報は、グループ単位、ユーザ単位等、管理テーブル４１０の各欄毎に変更することができる。これにより、管理者は、容易に管理を行うことができる。
印刷ポリシー情報を変更する際には、管理者は、例えば、該当するユーザ名やグループ名等を、マウスで右クリックする等により選択して、印刷ポリシー情報を変更する。【００６０】
印刷ポリシー情報が印刷される印刷項目（印刷箇所）としては、ヘッダ、フッダ、背景等が挙げられる。また、これらの位置、角度、フォント、透明度（可視透かし、不可視透かし（電子透かし）、地紋の透かし）等は、任意に選択することができる。【００６１】
次に、印刷画像生成システム５０により印刷される印刷物について説明する。
図７は、印刷画像生成システムにより印刷された印刷物を示す図である。
印刷物３００は、印刷ポリシー情報に設定された印字項目等が、追跡情報として付加されて印刷されたものである。【００６２】
図７では追跡情報としてヘッダにユーザ名３１０、日時３２０が印刷され、フッダにドキュメント名（ファイル名）３３０が印刷され、背景に社外秘の文字列３４０が可視透かしで印刷された例を示している。【００６３】
なお、追跡情報としては、印刷物の不正な持ち出しの抑制を促す情報であれば特に限定されないが、印刷元を特定できる情報であるのが好ましく、例えば、アカウント名、ドキュメント名や、印刷を行ったクライアントのコンピュータ名、ＩＰアドレス、ＭＡＣアドレス、プリンタ名等の、文字や画像等が挙げられる。【００６４】
次に、印刷画像生成システム５０の印刷動作について説明する。なお、以下では一例としてプリンタドライバ１３２に対して印刷要求を出力した場合について説明する。
図８は、印刷画像生成システムの印刷動作を示すフローチャートである。【００６５】
まず、アプリケーション１１０が印刷要求を出力する（ステップＳ１１）と、印刷監視部１２１が、印刷要求を検出し（ステップＳ１２）、アプリケーション１１０からの直接的なプリンタドライバ１３２への印刷指示を停止する。【００６６】
次に、印刷監視部１２１が、プリンタ２２が追跡情報を印刷可能か否かを判断する（ステップＳ１３）。
プリンタ２２が追跡情報を印刷することができないと判断した場合（ステップＳ１３のＮｏ）、印刷不可である旨をモニタ１１に表示し、印刷動作を終了する。【００６７】
一方、プリンタ２２が追跡情報を印刷することができると判断した場合（ステップＳ１３のＹｅｓ）、印刷ポリシー提供部２１２にダウンロード要求を送信する（ステップＳ１４）。【００６８】
次に、印刷ポリシー提供部２１２が、印刷要求を出したユーザの印刷ポリシー情報を取得し、印刷監視部１２１に印刷ポリシー情報を出力する。これにより、印刷監視部１２１に印刷ポリシー情報がダウンロードされる（ステップＳ１５）。【００６９】
次に、印刷監視部１２１が、印刷許可の判定処理を行う（ステップＳ１６）。
印刷不可の場合（ステップＳ１６のＮｏ）、印刷監視部１２１は、印刷不可である旨をモニタ１１に表示し、印刷動作を終了する。【００７０】
一方、印刷許可の場合（ステップＳ１６のＹｅｓ）、印刷監視部１２１が印刷ポリシー情報から追跡情報を生成する（ステップＳ１７）。
次に、印刷監視部１２１が追跡情報を追跡情報格納部１２２に出力するとともに追跡情報付加処理部１２４ａに印刷許可指示を出力する（ステップＳ１８）。【００７１】
次に、追跡情報付加処理部１２４ａが、追跡情報および印刷データを読み込む（ステップＳ１９）。
次に、追跡情報付加処理部１２４ａが、追跡情報付き印刷データを生成する（ステップＳ２０）。【００７２】
次に、追跡情報付加処理部１２４ａが、追跡情報付き印刷データを追跡情報付き印刷データ格納部１２５に出力するとともに、印刷指示を印刷処理部１２４ｂに出力する（ステップＳ２１）。【００７３】
次に、印刷処理部１２４ｂが、追跡情報付き印刷データを読み込む（ステップＳ２２）。そして、プリンタドライバ１３２に対して追跡情報付き印刷データの印刷命令を出力し（ステップＳ２３）、追跡ログを追跡ログ格納部２１５に出力する（ステップＳ２４）。【００７４】
次に、追跡ログ格納部２１５が、追跡ログを格納する（ステップＳ２５）。
次に、プリンタ２２が、印刷物の印刷を行う（ステップＳ２６）。
以上で印刷動作を終了する。【００７５】
以上説明したように、本実施の形態の印刷画像生成システム５０によれば、クライアント１００、１００ａは、アプリケーション１１０の印刷要求に対して、印刷監視部１２１が印刷要求をフックし、所定の確認動作を行った後に、仮想ドライバ１２４が追跡情報付き印刷データを生成してプリンタドライバに渡すように構成されているため、プリンタの機種に依存することなく、追跡情報を埋め込むことができる。よって、追跡情報として例えば誰が、いつ、どんな情報を印刷したのかという追跡情報を埋め込むことにより、不正な持ち出しを抑制することができる印刷物を印刷することができる。また、印刷物が不正に持ち出された場合においても、印刷元のプリンタ、ユーザ等を容易に特定することができる。【００７６】
また、クライアント１００、１００ａの印刷要求の度に印刷ポリシー情報のダウンロード要求を行って管理サーバ２００から印刷ポリシー情報をダウンロードすることにより、クライアント１００、１００ａ側での追跡情報の書き換えを困難にすることができるため、システムの安全性が向上し、また、管理サーバ２００で変更された内容を自動的に、容易かつ確実に反映させることができる。【００７７】
また、印刷監視部１２１が、ＡＰＩフックおよびｓｈｅｌｌフックを監視することにより、アプリケーション１１０からの印刷要求を容易かつ確実に検出することができるため、使用するアプリケーションに拘わらず、印刷要求を検出することができる。【００７８】
また、印刷クライアント管理部２１１が設けられているため、管理者は、クライアント１００、１００ａで不正行為が行われたことを容易かつ確実に検出することができる。
また、追跡ログをとることにより、実際に印刷物を確認しなくても誰が、いつ、どんな情報を印刷したのかを容易かつ確実に知ることができるため、より安全かつ確実にデータの管理を行うことができる。【００７９】
また、追跡情報を付加することができない解像度が低いプリンタに対して、印刷物の印刷を禁止するため、情報の漏洩をより容易かつ確実に防止することができる。
なお、印刷クライアント部１２０は、追跡情報を作成する際に、追跡情報の正当性を過去の追跡情報に基づいて、追跡情報を自律的に判断するように構成されていてもよい。例えば、クライアント１００、１００ａにログインしたユーザが、所定のグループに属している場合、管理サーバ２００から受信した印刷ポリシー情報にグループ名に関する情報が含まれていなくても、印刷対象物にそのグループ名の追跡情報を付加するように構成されていてもよい。これにより、追跡をより容易に行うことができる。【００８０】
また、印刷クライアント部１２０は、仮想ドライバ１２４が印刷処理に成功すると、印刷が正常に終了した旨を印刷監視部１２１に通知し、印刷監視部１２１が管理サーバ２００に通知するように構成されていてもよい。これにより、管理サーバ２００（管理者）は、印刷が正常に終了したか否かをより確実に知ることができる。【００８１】
また、印刷監視部１２１は、印刷クライアント部１２０の設定情報が変更されないことや、違うクライアントになりすまされることを判断するように構成されていてもよい。これにより、印刷物の情報漏洩をより確実に防止することができる。【００８２】
また、印刷監視部１２１は、アプリケーション１１０の印刷要求があった場合において、印刷をキャンセルした場合も、管理者にその旨を通知するように構成されていてもよい。【００８３】
以上本発明の好適な実施の形態について詳述したが、本発明は、その特定の実施の形態に限定されるものではない。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、クライアント１００、１００ａが有すべき機能の処理内容を記述した印刷画像生成プログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等が挙げられる。磁気記録装置としては、例えば、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープ等が挙げられる。光ディスクとしては、例えば、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等が挙げられる。光磁気記録媒体としては、例えば、ＭＯ（Magneto-Optical disk）等が挙げられる。【００８４】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。【００８５】
印刷画像生成プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。【００８６】
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
【符号の説明】
【００８７】
１  印刷画像生成装置
２、１１０  アプリケーション
３、１３１、１３２、１３３  プリンタドライバ
４  印刷監視手段
５、１２４  仮想ドライバ
１０  ネットワーク
２１、２２、２３  プリンタ
５０  印刷画像生成システム
１００、１００ａ  クライアント
１２０  印刷クライアント部
１２１  印刷監視部
２００  管理サーバ
２１０  印刷サーバ部
【図１】
0004620741.tif 000002
【図２】
0004620741.tif 000003
【図３】
0004620741.tif 000004
【図４】
0004620741.tif 000005
【図５】
0004620741.tif 000006
【図６】
0004620741.tif 000007
【図７】
0004620741.tif 000008
【図８】
0004620741.tif 000009