(57)【要約】【課題】  セキュリティと利便性を備えた共有ファイルへのアクセス制限を実現するための技術を提供すること。【解決手段】  外部機器が有する共有ファイルに対するアクセス要求が取得手段によって検知された場合、該アクセス要求に含まれているアドレス情報が、アクセスが許可されている外部機器のアドレス情報であるか否かを、パケットフィルタを用いて若しくは外部機器との通信によって特定する。該特定の結果に応じて、外部機器に対するアクセス制御を行う。【選択図】  図１
2015049646.tif 000002
【特許請求の範囲】
【請求項１】
外部機器が有する共有ファイルに対するアクセス要求が取得手段によって検知された場合、該アクセス要求に含まれているアドレス情報が、アクセスが許可されている外部機器のアドレス情報であるか否かを、パケットフィルタを用いて若しくは前記外部機器との通信によって特定する特定手段と、
前記特定手段による特定の結果に応じて、前記外部機器に対するアクセス制御を行う制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記取得手段は、ファイルシステムフィルタドライバ、パケットフィルタ、またはＡＰＩフックであることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記アクセスが許可されている外部機器は、セキュリティソフトウェアがインストールされている外部機器、若しくは予めアクセスが許可されている外部機器であることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記制御手段は、
前記アクセス要求に含まれているアドレス情報が、アクセスが許可されている外部機器のアドレス情報である場合には、前記アクセス要求に応じたアクセスを許可することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記制御手段は、
前記アクセス要求に含まれているアドレス情報が、アクセスが許可されている外部機器のアドレス情報ではなく、前記アクセス要求が前記共有ファイルの読み込み要求であれば、該読み込み要求を許可することを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
前記制御手段は、
前記アクセス要求に含まれているアドレス情報が、アクセスが許可されている外部機器のアドレス情報ではなく、前記アクセス要求が前記共有ファイルに対する書き込み要求、コピー要求、移動要求、削除要求、の少なくとも何れかの要求であれば、前記共有ファイルを暗号化することを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
更に、
外部機器からのアクセスをパケットフィルタによって検知すると、該外部機器のアドレス情報が、アクセスが許可されている外部機器のアドレス情報であれば、該アクセスを許可する第１の制御手段を備えることを特徴とする請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
前記第１の制御手段は、
外部機器からのアクセスをパケットフィルタによって検知すると、該外部機器のアドレス情報がアクセスが許可されている外部機器のアドレス情報ではなく且つ該アクセスが共有ファイルに係るアクセスではない場合には、該アクセスを許可する
ことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記第１の制御手段は、
外部機器からのアクセスをパケットフィルタによって検知すると、該外部機器のアドレス情報がアクセスが許可されている外部機器のアドレス情報ではなく且つ該アクセスが共有ファイルに係るアクセスである場合には、該アクセスを禁止する
ことを特徴とする請求項７又は８に記載の情報処理装置。
【請求項１０】
前記アドレス情報は、前記アクセス要求に含まれている前記共有ファイルのファイルパスから取得されることを特徴とする請求項１乃至９の何れか１項に記載の情報処理装置。
【請求項１１】
情報処理装置が行う情報処理方法であって、
前記情報処理装置の特定手段が、外部機器が有する共有ファイルに対するアクセス要求が取得手段によって検知された場合、該アクセス要求に含まれているアドレス情報が、アクセスが許可されている外部機器のアドレス情報であるか否かを、パケットフィルタを用いて若しくは前記外部機器との通信によって特定する特定工程と、
前記情報処理装置の制御手段が、前記特定工程における特定の結果に応じて、前記外部機器に対するアクセス制御を行う制御工程と
を備えることを特徴とする情報処理方法。
【請求項１２】
コンピュータを、請求項１乃至１０の何れか１項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法に関し、特に、ファイル共有へのアクセス制御技術に関する。
【背景技術】
【０００２】
近年、コンピュータの普及により、あらゆる書類の電子化が進んでいる。ワードプロセッサなどの文章作成ソフトウェアを用いてファイルを電子的に作成し、これがハードディスクに蓄積されていく。企業内などの環境では、コンピュータ同士をネットワークで接続し、複数の文章ファイルをファイルサーバに保管して複数ユーザの間で共有することも多い。
【０００３】
ファイルサーバは通常、ユーザＩＤとパスワードとでユーザを管理し、該ファイルサーバへのログインを正しいユーザにだけ許可する。一方、ファイルサーバがインターネット経由でもログイン可能な場合には、他人のユーザＩＤやパスワードを盗用して侵入を試みる不正アクセス者からの危険にさらされる。こうした不正アクセスを未然に防止するため、サーバ管理者は、ネットワーク設計やパスワード管理を強化しなければならない。なお、これは、ファイルサーバのみならず、ネットワークで接続された端末（パーソナルコンピュータ）間でファイルを共有するファイル共有にも当てはまる。
【０００４】
また、近年、端末に各種ウィルスが侵入・潜伏し、それによってデータの盗聴、盗難、改ざん、漏洩及び攻撃等の被害が生じている。ウィルスによっては、情報処理端末内から外部にあるファイル共有サーバへアクセスし、企業の機密ファイルを抜き取り、情報漏洩する被害もある。
【０００５】
一度ファイルサーバからログインを許可されたユーザにとっては、そのファイルをサーバ以外の場所にコピーして再利用することも容易である。これは内部漏洩者にとっても同様であり、ＩＤとパスワードによるログイン制限だけに頼るファイルサーバでは、ファイル管理において脆弱な一面を持つ。一度、他の場所にコピーされると、もはやそのファイルの再コピーや不特定多数への配布を防止する有効手段はないため、データ管理の強化は、今日の情報化社会において極めて重要である。
【０００６】
そこで特許文献１に開示されているように、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）フック技術を用いてファイル操作を監視する技術が知られている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−１７５６４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら上記従来技術にあって、ＡＰＩフック技術はＡＰＩの同一機能においても複数のＡＰＩが存在する等、全てのＡＰＩを監視するのは困難であり、かつ各プログラムが独自に定義しているＡＰＩを含めると全てのＡＰＩに対応することは不可能に近い。また、ＡＰＩフック技術を用いて作成されたセキュリティソフトは、セキュリティソフトをインストールしたＰＣ内の操作を監視することは可能であるが、外部からのアクセスを監視識別することは困難である。
【０００９】
そこで、ＳＭＢ（Sever Message Block）通信を利用して制御することで、信頼領域（セキュリティソフトがインストールされているＰＣ）から非信頼領域（セキュリティソフトがインストールされていないＰＣ）へのアクセス、非信頼領域から信頼領域へのアクセスを制御する手法がある。
【００１０】
しかしながら、信頼領域から非信頼領域へのアクセスを禁止すると、例えば、ネットワークプリンタ（非信頼領域）を使用する際、クライアント端末（信頼領域）がネットワークプリンタのファイルを読み込んだり、クライアント端末（信頼領域）がある端末（非信頼領域）のファイル共有にアクセスする際、ある端末のファイルをクライアント端末が読み込んだりする必要があるため、信頼領域から非信頼領域へのアクセスを読み込みのみ許可の状態（ファイルは参照することはできるが編集することができない）にする必要性があった。しかしながら、ＳＭＢ通信を読み込みのみ許可にすることは困難であった。
【００１１】
本発明はこのような問題に鑑みてなされたものであり、セキュリティと利便性を備えた共有ファイルへのアクセス制限を実現するための技術を提供する。
【課題を解決するための手段】
【００１２】
本発明の一様態は、外部機器が有する共有ファイルに対するアクセス要求が取得手段によって検知された場合、該アクセス要求に含まれているアドレス情報が、アクセスが許可されている外部機器のアドレス情報であるか否かを、パケットフィルタを用いて若しくは前記外部機器との通信によって特定する特定手段と、前記特定手段による特定の結果に応じて、前記外部機器に対するアクセス制御を行う制御手段とを備えることを特徴とする。
【発明の効果】
【００１３】
本発明の構成によれば、セキュリティと利便性を備えた共有ファイルへのアクセス制限を実現することができる。
【図面の簡単な説明】
【００１４】
【図１】情報処理システムの構成例を示すブロック図。
【図２】設定情報の構成例を示す図。
【図３】クライアント端末装置が行う処理のフローチャート。
【図４】ステップＳ３０４における処理の詳細を示すフローチャート。
【図５】アクセス管理リスト１３２の構成例を示す図。
【図６】ステップＳ４０７における処理の詳細を示すフローチャート。
【図７】ＮｅｔＢｉｏｓ名リスト１３３の構成例を示す図。
【図８】クライアント端末装置が行う処理のフローチャート。
【図９】クライアント端末装置が行う処理のフローチャート。
【図１０】クライアント端末装置が行う処理のフローチャート。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つである。
【００１６】
［第１の実施形態］
＜情報処理システム＞
先ず、本実施形態に係る情報処理システムの構成例について、図１のブロック図を用いて説明する。図１に示す如く、本実施形態に係る情報処理システムは、端末装置１１０，１３０，１４０，１５０、を有しており、それぞれの端末装置はＬＡＮやインターネットなどのネットワーク１２０に接続されている。以下では、端末装置１１０，１３０，１４０，１５０、のうち端末装置１３０，１４０，１５０のそれぞれをクライアント端末装置、端末装置１１０をサーバ装置と呼称する場合がある。
【００１７】
また、端末装置１１０，１３０，１４０，１５０のそれぞれは、ＰＣ（パーソナルコンピュータ）、携帯端末装置等の、端末装置が行うものとして後述する各処理を実行可能な装置であれば、如何なる装置であっても構わない。
【００１８】
＜クライアント端末装置（端末装置１３０，１４０，１５０）＞
以下では説明を簡単にするために、クライアント端末装置は何れも同じハードウェア構成を有するものとして説明する。然るに、ハードウェア構成については端末装置１３０を例にとり説明する。
【００１９】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１は、ＲＡＭ１２やＲＯＭ１３に格納されているコンピュータプログラムやデータを用いて各種の処理を実行することで、本装置全体の動作制御を行うと共に、本装置が行うものとして後述する各処理を実行する。
【００２０】
ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１２は、外部記憶装置１６からロードされたコンピュータプログラムやデータを一時的に記憶するためのエリアや、Ｉ／Ｆ（インターフェース）１７を介して外部機器から受信した各種のデータを一時的に記憶するためのエリアを有する。更にＲＡＭ１２は、ＣＰＵ１１が各種の処理を実行する際に用いるワークエリアも有する。このようにＲＡＭ１２は、各種のエリアを適宜提供することができる。
【００２１】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３には、本装置の設定データやブートプログラムなどが格納されている。
【００２２】
操作部１４は、マウスやキーボードなどにより構成されており、本装置の操作者が操作することで、各種の指示をＣＰＵ１１に対して入力することができる。
【００２３】
表示部１５は、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ１１による処理結果を画像や文字などでもって表示することができる。
【００２４】
外部記憶装置１６は、ハードディスクドライブ装置に代表される大容量情報記憶装置である。この外部記憶装置１６には、ＯＳ（オペレーティングシステム）や、本装置が行うものとして後述する各処理をＣＰＵ１１に実行させるためのコンピュータプログラムやデータが保存されている。このコンピュータプログラムには、セキュリティソフトウェア１３１が含まれている。また、このデータには、アクセス管理リスト１３２、ＮｅｔＢｉｏｓ名リスト１３３が含まれている。外部記憶装置１６に保存されているコンピュータプログラムやデータは、ＣＰＵ１１による制御に従って適宜ＲＡＭ１２にロードされ、ＣＰＵ１１による処理対象となる。
【００２５】
Ｉ／Ｆ１７は、本装置を上記のネットワーク１２０に接続するためのもので、本装置はこのＩ／Ｆ１７を介してネットワーク１２０に接続されている外部機器とのデータ通信を行うことができる。
【００２６】
上記の各部は何れも、バス１８に接続されている。
【００２７】
次に、端末装置１３０の外部記憶装置１６に保存されている、セキュリティソフトウェア１３１、アクセス管理リスト１３２、ＮｅｔＢｉｏｓ名リスト１３３、のそれぞれについて説明する。
【００２８】
セキュリティソフトウェア１３１は、自装置（ここでは端末装置１３０）から外部機器へのアクセスや、外部機器から自装置（ここでは端末装置１３０）へのアクセスを監視し、その後の動作制御を行うためのソフトウェアである。なお、このセキュリティソフトウェア１３１がインストールされた端末装置１３０から送信されるＩＰパケットには、セキュリティソフトウェア１３１がインストールされていることを識別するためのフラグが含まれている。
【００２９】
また、セキュリティソフトウェア１３１は、アクセス管理リスト１３２と、ＮｅｔＢｉｏｓ名リスト１３３と、を管理している。アクセス管理リスト１３２には、アドレス情報としてのＩＰアドレスと、該ＩＰアドレスを有する外部機器からのアクセスの可否を示すフラグと、のセットが１セット以上登録されている。ＮｅｔＢｉｏｓ名リスト１３３には、ＩＰアドレスとＮｅｔＢｉｏｓ名とのセットが１セット以上登録されている。
【００３０】
なお、端末装置１５０の外部記憶装置１６にも、セキュリティソフトウェア１５１、アクセス管理リスト１５２、ＮｅｔＢｉｏｓ名リスト１５３が登録されており、それぞれは、上記のセキュリティソフトウェア１３１、アクセス管理リスト１３２、ＮｅｔＢｉｏｓ名リスト１３３と同様のものである。そして、このセキュリティソフトウェア１５１がインストールされた端末装置１５０から送信されるＩＰパケットにも、セキュリティソフトウェア１５１がインストールされていることを識別するためのフラグが含まれている。
【００３１】
また、端末装置１４０には、このようなセキュリティソフトウェア、アクセス管理リスト、ＮｅｔＢｉｏｓ名リストはインストールされていない。
【００３２】
＜サーバ装置（端末装置１１０）＞
サーバ装置のハードウェア構成は、上記で説明したクライアント端末装置のハードウェア構成と同様であるとする。即ち、サーバ装置のＣＰＵ１１は、サーバ装置の外部記憶装置１６に保存されているコンピュータプログラムやデータを用いて、サーバ装置のＩ／Ｆ１７を介して外部機器とのデータ通信を行うと共に、サーバ装置が行うものとして後述する各処理を実行する。また、サーバ装置の外部記憶装置１６には、ユーザごと、クライアント端末装置ごと、ＭＡＣアドレスごと、などの個別の設定情報１１１が登録されている。
【００３３】
この設定情報には、図２に示す如く、外部機器のうち自装置に対するアクセスが許可されている外部機器のＩＰアドレスが登録されている。例えば、端末装置１３０の設定情報１１１には、端末装置１４０，１５０のうち端末装置１３０にアクセス可能な端末装置のＩＰアドレスが登録されていることになる。これは、端末装置１４０，１５０についても同様である。
【００３４】
なお、ＩＰアドレスの代わりに、ＭＡＣアドレス、ユーザ名など、クライアント端末装置を一意に特定するための情報であれば、如何なる情報を採用しても構わない。また、それぞれのクライアント端末装置の設定情報をサーバ装置の外部記憶装置１６が一括して管理する代わりに、それぞれのクライアント端末装置が自身の設定情報を保持しておくようにしても構わない。然るにこのような場合には、サーバ装置は必須ではない。
【００３５】
＜パケットフィルタ処理及びファイルシステムフィルタ処理＞
次に、端末装置１３０がパケットフィルタ処理及びファイルシステムフィルタ処理を開始するために行う一連の処理について、同処理のフローチャートを示す図３を用いて説明する。なお、端末装置１５０も同様に、図３のフローチャートに従った処理を実行する。
【００３６】
ステップＳ３０１では、ＣＰＵ１１は、セキュリティソフトウェア１３１を外部記憶装置１６からＲＡＭ１２にロードし、該ロードされたセキュリティソフトウェア１３１を起動する。セキュリティソフトウェア１３１は、サービスプログラムとして自動的に起動するようにしても構わないし、ユーザからの操作指示に応じて任意に起動するようにしても構わない。
【００３７】
次に、ユーザが操作部１４を操作してログイン操作を行うので、ステップＳ３０２ではＣＰＵ１１は、該ユーザに対する認証処理を実行する。例えば、ユーザが操作部１４を操作して自身のユーザ名とパスワードとを入力すると、ＣＰＵ１１はこの入力されたユーザ名とパスワードとを用いて認証処理を行う。そして認証処理が成功した場合には、このユーザのログインを許可する。
【００３８】
ステップＳ３０３では、ＣＰＵ１１は、端末装置１１０にアクセスし、設定情報１１１を、端末装置１３０のＲＡＭ１２にダウンロードする。この設定情報１１１は、ログインしているユーザに対応するものであっても良いし、端末装置１３０に対応するものであっても良いし、ＭＡＣアドレスに対応するものであっても良い。また、図３のフローチャートでは、設定情報１１１の取得はログイン後に行っているが、セキュリティソフトウェア１３１の起動後且つログイン前に行うようにしても構わない。
【００３９】
ステップＳ３０４では、ＣＰＵ１１は、セキュリティソフトウェア１３１を実行し、外部機器からのアクセスを監視するためのパケットフィルタ処理を開始すると共に、アクセス管理リスト１３２及びＮｅｔＢｉｏｓ名リスト１３３を作成する。アクセス管理リスト１３２及びＮｅｔＢｉｏｓ名リスト１３３を作成する処理の詳細については後述する。
【００４０】
ステップＳ３０６では、ＣＰＵ１１は、セキュリティソフトウェア１３１を実行し、外部機器に対するアクセス（ネットワーク１２０経由で行うファイル操作）を監視するために、ファイルシステムフィルタ処理を開始する。
【００４１】
＜ステップＳ３０４における処理＞
上記のステップＳ３０４において行われる処理について、同処理のフローチャートを示す図４を用いて説明する。
【００４２】
ステップＳ４０１では、ＣＰＵ１１は、外部機器からのアクセスを検知すると、このアクセスによって外部機器から送信されたＩＰパケット（ＩＰパケット情報）を、セキュリティソフトウェア１３１のパケットフィルタによって検知する。
【００４３】
そしてステップＳ４０２では、ＣＰＵ１１は、このＩＰパケットをＲＡＭ１２に取得する。このＩＰパケットには、上記のフラグ（送信元の機器にセキュリティソフトウェアがインストールされているか否かを示すフラグ）、送信元の機器のＩＰアドレス、宛先のＩＰアドレス、コマンドなどの情報が含まれている。
【００４４】
ステップＳ４０３では、ＣＰＵ１１は、ＩＰパケットからフラグを抽出し、このフラグの値が「ＩＰパケットの送信元の機器にセキュリティソフトウェアがインストールされている」ことを示す値である（フラグが立っている）か否かを判断する。この判断の結果、フラグが立っている場合には、処理はステップＳ４０５に進み、フラグが立っていない場合には、処理はステップＳ４０４に進む。
【００４５】
ステップＳ４０４では、ＣＰＵ１１は、ＩＰパケットから送信元の機器のＩＰアドレスを抽出する。そしてＣＰＵ１１は、この抽出したＩＰアドレスが、上記のステップＳ３０３で取得した設定情報１１１に登録されているか否かを判断する。この判断の結果、登録されている場合には、処理はステップＳ４０５に進み、登録されていない場合には、処理はステップＳ４０６に進む。
【００４６】
ステップＳ４０５では、ＣＰＵ１１は、この送信元の機器からのアクセスを許可すべく、ステップＳ４０４でＩＰパケットから抽出した該送信元の機器のＩＰアドレスと、アクセス許可を示すフラグ値と、をセットにしてアクセス管理リスト１３２に登録する。
【００４７】
ステップＳ４０６では、ＣＰＵ１１は、この送信元の機器からのアクセスを禁止すべく、ステップＳ４０４でＩＰパケットから抽出した該送信元の機器のＩＰアドレスと、アクセス禁止を示すフラグ値と、をセットにしてアクセス管理リスト１３２に登録する。
【００４８】
このような処理により、例えば、図５に示す如く、外部機器から受信したＩＰパケット中のＩＰアドレスと、該外部機器からのアクセスを許可するか禁止するかを示すフラグ値と、をセットにして管理するアクセス管理リスト１３２を作成することができる。
【００４９】
ステップＳ４０７では、ＣＰＵ１１は、ステップＳ４０４で抽出したＩＰアドレスからＮｅｔＢｉｏｓ名リスト１３３を作成する。ステップＳ４０７における処理の詳細については、後述する。
【００５０】
アクセス管理リスト１３２及びＮｅｔＢｉｏｓ名リスト１３３を作成することにより、ＩＰアドレスが動的に変更された場合でも、後述する処理を行うことが可能となる。
【００５１】
また、上記処理に限定されず、アクセス管理リスト１３２に端末装置１３０のＩＰアドレスを許可設定で格納してもよい。
【００５２】
また、上記処理は、外部機器から端末装置１３０へのアクセスを検知したことをトリガにしてＩＰパケットを取得しているが、端末装置１３０から外部機器へのアクセスを検知したことをトリガにしてＩＰパケットを取得するようにしても構わない。その場合、ステップＳ４０２にて端末装置１３０から外部機器へのＩＰパケットを取得した後、ステップＳ４０４に進み、アクセス管理リスト１３２には、宛先ＩＰアドレスとアクセス許可／禁止フラグが格納される。
【００５３】
なお、外部機器との通信は、ユーザが操作部１４を操作することで開始しても良いし、ユーザ操作を介さずにＣＰＵ１１が自発的に行うようにしても構わない。
【００５４】
＜ステップＳ４０７における処理＞
次に、上記のステップＳ４０７における処理の詳細について、同処理のフローチャートを示す図６を用いて説明する。
【００５５】
ステップＳ６０１では、ＣＰＵ１１は、ＩＰパケットから、ステップＳ４０４で抽出したＩＰアドレスに対応するＮｅｔＢｉｏｓ名を抽出する。そしてステップＳ６０２では、ＣＰＵ１１は、ステップＳ４０４で抽出したＩＰアドレスと、ステップＳ６０１で抽出したＮｅｔＢｉｏｓ名と、をセットにしてＮｅｔＢｉｏｓ名リスト１３３に登録する。既にＮｅｔＢｉｏｓ名リストにＩＰアドレスが登録されていた場合、ＮｅｔＢｉｏｓ名を再設定する。
【００５６】
このような処理により、図７に示す如く、ＩＰアドレスごとに、対応するＮｅｔＢｉｏｓ名（図７ではＰＣ名）が登録されたＮｅｔＢｉｏｓ名リスト１３３を作成することができる。なお、図７では、ＩＰアドレスとＰＣ名とが１対１の関係であるが、ＰＣ名に対してＩＰアドレスが複数個割り当てられていてもよい。また、端末装置１３０自身のＩＰアドレスとＮｅｔＢｉｏｓ名をＮｅｔＢｉｏｓ名リストに登録しても良い。
【００５７】
＜外部機器からのアクセスに対する制御処理＞
次に、上記のアクセス管理リスト１３２及びＮｅｔＢｉｏｓ名リスト１３３の作成後に、外部機器からのアクセスがあった場合に、端末装置１３０が行う処理について、同処理のフローチャートを示す図８を用いて説明する。なお、端末装置１５０も同様に、図８のフローチャートに従った処理を実行する。
【００５８】
ステップＳ８０１ではＣＰＵ１１は、外部機器からのアクセスを検知すると、このアクセスによって外部機器から送信されたＩＰパケット（ＩＰパケット情報）を、セキュリティソフトウェア１３１のＳＭＢ通信フィルタ（パケットフィルタ）によって検知する。
【００５９】
そしてステップＳ８０２では、ＣＰＵ１１は、このＩＰパケットをＲＡＭ１２に取得する。
【００６０】
ステップＳ８０３では、ＣＰＵ１１は、ＩＰパケットから、送信元の機器のＩＰアドレスを抽出する。そしてＣＰＵ１１は、アクセス管理リスト１３２から、ステップＳ８０３で抽出したＩＰアドレスに対応するフラグ値を検索する。
【００６１】
ステップＳ８０４では、ＣＰＵ１１は、上記検索から、ステップＳ８０３で抽出したＩＰアドレスに対応するフラグ値を特定し、該特定したフラグ値がアクセス許可を示す値であるか、アクセス禁止を示す値であるかを判断する。この判断の結果、アクセス許可を示す値である場合には、処理はステップＳ８０５に進み、アクセス禁止を示す値である場合には、処理はステップＳ８０６に進む。
【００６２】
ステップＳ８０５では、ＣＰＵ１１は、ステップＳ８０１で検知した外部機器からのアクセスを許可し、以降、該外部機器からのアクセスに応じた処理を実行する。
【００６３】
一方、ステップＳ８０６では、ＣＰＵ１１は、ＩＰパケットから、コマンド情報を抽出する。
【００６４】
ステップＳ８０７では、ＣＰＵ１１は、ステップＳ８０６で抽出したコマンド情報が、例えば、ＳＭＢ＿ＣＯＭ＿ＯＰＥＮのような、共有ファイルに対するアクセス要求に係るコマンドであるか否かを判断する。この判断の結果、共有ファイルに対するアクセス要求に係るコマンドであれば、処理はステップＳ８０８に進み、共有ファイルに対するアクセス要求に係るコマンドではない場合には、処理はステップＳ８０５に進む。
【００６５】
ステップＳ８０８では、ＣＰＵ１１は、ステップＳ８０１で検知した外部機器からのアクセスを禁止する。具体的には、アクセス要求を破棄したり、アクセス要求を無視したり、アクセス要求に対して禁止応答を行ったり、もしくは不正な要求に改ざんなどをおこなって、アクセス要求を失敗させる。そのため、外部からアクセスしてきたユーザにはアクセス要求が失敗したことが通知されるため、結果として、アクセスを禁止することができる。
【００６６】
＜外部機器へのアクセスに対する制御処理＞
次に、上記のアクセス管理リスト１３２及びＮｅｔＢｉｏｓ名リスト１３３の作成後に、端末装置１３０が外部機器に対してアクセスを行った場合に、端末装置１３０が行う処理について、同処理のフローチャートを示す図９を用いて説明する。なお、端末装置１５０も同様に、図９のフローチャートに従った処理を実行する。
【００６７】
また、以下では、ファイルシステムフィルタドライバを用いて説明するが、ＣｒｅａｔｅＦｉｌｅなどのＡＰＩフックを用いて、外部機器が有する共有ファイルに対するアクセス要求の検知、アクセス要求に含まれているファイル情報からファイルパス／ＩＰアドレスの取得、アクセス要求の制御を行うことも可能である。
【００６８】
ステップＳ９０１では、ＣＰＵ１１は、外部機器が有する共有ファイルに対するアクセス要求（ファイルシステムへのアクセス要求）を発生させる。このアクセス要求は、ユーザが操作部１４を操作することで発生させても良いし、ＣＰＵ１１が適当なタイミングで発生させても良い。
【００６９】
ステップＳ９０２では、ＣＰＵ１１は、ステップＳ９０１で発生させたアクセス要求を、セキュリティソフトウェア１３１のファイルシステムフィルタドライバ（取得手段）によって検知し、このアクセス要求に含まれているファイル情報を取得する。
【００７０】
ステップＳ９０３では、ＣＰＵ１１は、ファイルシステムフィルタドライバを用いて、ステップＳ９０２で取得したファイル情報からファイルパスを抽出し、更に、ＣＰＵ１１は、このファイルパスに含まれている（ファイルパス中の）ＩＰアドレスを抽出する。
【００７１】
たとえば、端末装置１３０からＩＰアドレス「１０．７．３３．８０」のＴＥＳＴというファイル共有にアクセスする場合、「￥￥１０．７．３３．８０￥ＴＥＳＴ」というファイルパスでアクセスする事が可能である。このファイルパスでアクセスした際は、ファイルパスに上記の文字列が取得できる。そこで「￥￥」から次の「￥」までの文字列を抜き出し、ＩＰアドレスを取得する。
【００７２】
また、もし端末装置１３０からＮｅｔＢｉｏｓ名を指定してファイル共有にアクセスする場合、「￥￥ＰＣ１￥ＴＥＳＴ」というファイルパスが取得できるので、同様に「￥￥」から次の「￥」までの文字列を抜き出し、ＮｅｔＢｉｏｓ名を取得する。取得したＮｅｔＢｉｏｓ名を用いてＮｅｔＢｉｏｓ名リスト１３３からＩＰアドレスを取得する。
【００７３】
ステップＳ９０４では、ＣＰＵ１１は、パケットフィルタを用いて、アクセス管理リスト１３２から、ステップＳ９０３で取得したＩＰアドレスに対応するフラグ値を取得する。
【００７４】
ステップＳ９０５では、ＣＰＵ１１は、ステップＳ９０４で取得したフラグ値がアクセス許可を示す値であるか、アクセス禁止を示す値であるか、を判断する。この判断の結果、アクセス許可を示す値である場合には、処理はステップＳ９０７に進み、アクセス禁止を示す値である場合には、処理はステップＳ９０６に進む。
【００７５】
ステップＳ９０７では、ＣＰＵ１１は、ファイルシステムフィルタドライバの機能により、何も制御せずに、ステップＳ９０２で検知したアクセス要求をＯＳに渡す。ＯＳにアクセス要求を渡すことにより、ＣＰＵ１１はＯＳの機能により、このアクセス要求を外部機器に対して行う。
【００７６】
ステップＳ９０６では、ＣＰＵ１１は、アクセス要求に応じた制御処理（アクセス制御）を行う。
【００７７】
例えば、アクセスが許可されていない端末装置が有する共有ファイルに対して読み込み要求を行った場合には、ファイルシステムフィルタドライバは何も制御せずにアクセス要求をＯＳへ返す。
【００７８】
また、例えば、アクセスが許可されていない端末装置が有する共有ファイルに対して書き込み要求を行った場合には、ＣＰＵ１１は、該端末装置の外部記憶装置１６にアクセスし、該共有ファイルを暗号化する。暗号化は、該端末装置に行わせても良い。これにより、アクセスが許可されていない端末装置が有する共有ファイルに対してアクセスしてファイル操作をおこなっても、閲覧は可能であるが、ファイルの内容を編集することはできず、読み込みのみ許可の状態を実現できる。
【００７９】
また、例えば、アクセスが許可されていない端末装置が有する共有ファイルに対してコピー要求、移動要求、削除要求等の要求を行った場合には、ＣＰＵ１１は、該端末装置の外部記憶装置１６にアクセスし、該共有ファイルを暗号化する。暗号化は、該端末装置に行わせても良い。
【００８０】
なお、ここでいう暗号化は一例であって、暗号化されずにアクセスが拒否されたり、削除されたりしてもよい。
【００８１】
このように、本実施形態によれば、アクセス権限のないユーザがファイルを持出することを禁止でき、マルウェアによる、ユーザの意図しないファイルの持出し、ユーザの操作ミスによるファイルの持出し、故意のファイル持出しを禁止することが可能である。
【００８２】
また、ファイルの暗号化を行った際に、管理者に不正なファイル操作があったことをメールで知らせることも可能であり、よりセキュリティの向上にもなる。
【００８３】
また、例えば、誤ってコピーを行い、ファイルを暗号化させた場合でも、復号を行えばファイルを再生することが可能である。この復号は、暗号化されたファイルを保持している装置のＣＰＵ１１が行っても良いし、暗号化した装置のＣＰＵ１１が行っても良い。復号のタイミングについては特定のタイミングに限るものではない。
【００８４】
なお、プロセスによっては、アクセスが許可されていない端末装置が有する共有ファイルに対して読み込み要求を行った場合であっても、書き込み要求も同時に発行される場合がある。そこで、プロセスによっては、アクセスが許可されていない端末装置が有する共有ファイルに対して読み込み要求を行った場合でも、アクセス要求を拒否する構成としてもよい。
【００８５】
このように、本実施形態によれば、上記の非信頼領域から信頼領域へのアクセスをパケットフィルタ（ＳＭＢ通信フィルタ）によって制御し、信頼領域から非信頼領域へのアクセスはファイルシステムフィルタドライバを利用して制御することができる。
【００８６】
なお、本実施形態では、外部機器にセキュリティソフトウェアがインストールされているか否かを確認するために、ＩＰパケット内のフラグを参照していたが、確認するための仕組みはこれに限るものではない。例えば、セキュリティソフトウェア間でソフトウェア間通信を行い、相手側にセキュリティソフトウェアがインストールされているか否かを確認するようにしても構わない。
【００８７】
また、本実施形態では、外部機器へのアクセスに対して、ファイルシステムドライバを用いてファイルパスからアクセス先（ＩＰアドレス）を取得していた。しかし、パケットフィルタを用いてファイルアクセス時に発生したＳＭＢ通信からパケット情報を取得し、その中に含まれる宛先アドレスから、アクセス先（ＩＰアドレス）を特定してもよい。その場合、ＣＰＵ１１が、パケットフィルタとファイルシステムドライバの同期をとるように構成すれば、パケットフィルタを用いて検出したアクセスに対して、ファイルシステムドライバを用いてアクセス制御を行うことができる。
【００８８】
［第２の実施形態］
本実施形態では、端末装置１３０がドメインに属している場合について説明する。このような場合に、端末装置１３０がパケットフィルタ処理及びファイルシステムフィルタ処理を開始するために行う一連の処理について、同処理のフローチャートを示す図１０を用いて説明する。なお、端末装置１５０もドメインに属していれば、図１０のフローチャートに従った処理を実行する。
【００８９】
図１０のフローチャートにおいて図３に示した処理ステップと同じ処理ステップには同じステップ番号を付しており、この処理ステップに係る説明は省略する。図１０のフローチャートは、図３のフローチャートのステップＳ３０１とステップＳ３０２との間にステップＳ１００１を挿入したものである。
【００９０】
ステップＳ１００１では、ＣＰＵ１１は、ドメインコントローラ（ＤＣ）のＩＰアドレスを取得する。そして、アクセス管理リスト１３２には、このＩＰアドレスと、アクセス許可を示すフラグと、を登録する。このような一連の処理により、ユーザ・プロファイルの読み込みなどを可能にする。
【００９１】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015049646.tif 000003
【図２】
2015049646.tif 000004
【図３】
2015049646.tif 000005
【図４】
2015049646.tif 000006
【図５】
2015049646.tif 000007
【図６】
2015049646.tif 000008
【図７】
2015049646.tif 000009
【図８】
2015049646.tif 000010
【図９】
2015049646.tif 000011
【図１０】
2015049646.tif 000012