従来技術による機密文書検索技術の第1の問題点は、閲覧が制限される機密文書と一般的な機密情報に関する説明を含む公開文書との区別ができない場合があることである。「取扱注意」等の語句が文書のヘッダ部分等に含まれているとしても、その文書は機密文書に該当しない場合がある。例えば、ヘッダ部分にタイトルとして「当社の取扱注意文書に関する説明」と記載された文書があり、その文書自体は機密文書ではないとする。従来の検索技術では、「取扱注意」等の語句が含まれている文書を検索して、機密文書であると判定するので、上記のような文書まで機密文書であると判定してしまう。その結果、機密文書と公開文書とを区別できない場合が生じる。非特許文献1に記載されたベクトル空間モデルに基づく検索では、各単語の出現頻度を計算しているが、出現頻度を計算したとしても上記のような問題は解決されない。
また、第2の問題点として、文書の中に住所や生年月日など個人情報の一部となりうる記述があったとしても、その記述が特定の個人に関する本来の個人情報かどうかを判別できないという点が挙げられる。その理由は、従来の機密文書検索技術では、個人情報の一部となりうる個々の要素記述それぞれを個別に検出しているのみであり、検出した住所等が秘密にすべき個人の住所等であるのかを判定することができないためである。その結果、従来技術では、秘密にすべき個人情報が記述された数に応じて文書の重要度を判定する等の処理を行えなかった。
例えば、図36に例示するような必ずしも氏名や住所などを全て記入されるとは限らないアンケートの収集結果を示した文書があるとする。図36に示す文書の最終行(「No.4」の行)のように、住所として都道府県名や市区名までしか書かれない場合などは、個人に対する連絡先として不完全なためそれ自体を個人情報とは言い難い。従来技術では、このような不完全な住所等の記述と正確に記述した住所等の区別を行っているわけではないので、不完全な住所等の記述であっても個人情報と判定されてしまう。また、文書中に住所や電話番号等が記述されていたとしても、従来技術では、それらが秘密にすべき個人の連絡先情報であるのか、会社等の組織の公開されている連絡先情報であるのかを判定することができない。そのため、公開されている住所や電話番号等も秘密にすべき個人情報であると判定してしまうおそれがある。従って、秘密にすべき個人情報が記述された数に応じて文書の重要度を判定する等の処理を行うことが困難であった。
第2の問題点に対処するために非特許文献1に記載された情報抽出技術を利用することが考えられる。しかし、非特許文献1に記載された情報抽出技術は、自然言語で書かれた文章を主な対象として、例えば「誰が(人名)」「いつ(時刻や時間帯)」「どこで(場所)」「何をした(行動)」といった一連の要素の組を抽出する技術である。一方、文書中に個人情報が記述される場合、「山田一郎さんの住所は東京都・・・で、電話番号は・・・です。」といった完全な文章で記述されることは少ないと考えられる。一般に、個人情報の記述態様は、独自に定義された表形式で記述されたり、単に氏名や住所などが上下左右に並べて記述されたりするものであることが多いと予想される。また、そのような態様で個人情報を記述した文書が存在する可能性は非常に高い。よって、非特許文献1に記載された自然言語解析を中心とした情報抽出技術が適用可能な文書は少なく、非特許文献1に記載の情報抽出技術で第2の問題点を十分に解決することは困難である。
従来技術による機密文書検索技術の第3の問題点は、機密情報や個人情報を含む文書を検出するために、文書と検索用辞書との間で膨大な量の照合処理を行なわなければならない場合が生じ得ることである。昨今の企業や官公庁、研究機関などが抱える文書の量は数万のオーダーを大きく上回ることも珍しくなく、それら全てに対して単純なキーワード照合による検索を行なうだけでもかなりの計算量となる。さらに、様々な種類の機密情報や個人情報を検出するためにそれらの特徴を定義した辞書も、大規模なものとなることが予想される。辞書に定義された全種類の機密情報や個人情報の特徴集合を、組織が抱える全ての文書内の全領域と照合することは、現在の高速なコンピュータを用いてもなお長時間を要する処理である。
第4の問題点は、機密文書の洗い出しによって大量の機密文書が検出された場合、それら1つ1つの文書に対して個別に適切な保護処置が施されているか、またはどのような保護処置を施すべきかを判断することが、それらの文書の管理者にとって大きな負担となることである。
また、組織内で一定の基準に基づいて機密文書を適切に保護するためには、その基準となるセキュリティポリシーを決定しなければならないが、組織が保有する機密文書の種類や存在場所が明確でなければ具体的で効果のあるポリシーを決定できない。例えば、情報セキュリティポリシーの策定方法は、ISO/IEC TR13335(GMITS:Guidelines for the maanagement of IT Security)やISO/IEC 17799(BS7799)などの国際標準により規定されており、これらの規定に従った情報セキュリティポリシーの策定が国際的に推奨されている。これらで規定された手順には、ポリシー策定の対象となる組織におけるポリシーの適用対象や範囲、情報資産の定義が必須事項として含まれている。しかし、同組織内にどのような種類の情報資産がどこにあるのかを正確に把握していなければ、前述の必須事項を満たすことはできない。従来技術の第5の問題点として、既に説明した第1の問題点等により、機密文書の存在場所を正確に把握することができず、その結果として、具体的で効果のあるポリシーを決定することが困難であるという点が挙げられる。
また、例えば、特許文献4に記載の技術では、前提となる情報セキュリティポリシー自体を予め人手で綿密に調査・検討を行なった上で策定しておく必要がある。このとき、情報セキュリティポリシーを容易に作成できることが好ましい。一般に、アクセス制御に用いられるセキュリティポリシーでは、保護すべき情報と、その情報へのアクセスを許可(または禁止)するシステムの範囲、または、その情報へのアクセスを許可(または禁止)するユーザの情報を記述する。保護すべき情報が機密文書である場合、セキュリティポリシには、その機密文書の保存場所(例えば、ディレクトリやURLによって特定される保存場所)を記述することになるが、文書の保存場所を把握することが困難であることは既に述べたとおりである。また、アクセスを許可(または禁止)するシステムの範囲は、例えば、ネットワークドメインやアクセス元となる装置のIPアドレスの集合で記述され、アクセスを許可(または禁止)するユーザの情報は、例えばユーザIDなどによって表される。しかし、ネットワークドメイン、IPアドレス、ユーザID等は、人間にとって扱いやすいデータではなく、人間がそれらのデータを直接記述することは困難である。特に、保護すべき文書の数が数十万件(時には数億件となることもあり得る)等の膨大な数になると、人手でセキュリティポリシーを作成することは不可能である。
また、過剰なセキュリティポリシーが定義されていると、保護すべき情報の種類が必要以上に多くなり、セキュリティ設定自体の作業量に加えて同設定に基づく業務上の制約や負荷が大きくなることで、業務効率を低下させる恐れがある。そのため、セキュリティポリシの数が過剰にならないようにすることが好ましい。
そこで、本発明は、大量の電子文書から機密情報を含む文書を自動的に検出できるようにすることを目的とする。
本発明の他の目的は、大量の電子文書から自動的に検出した機密文書を機密情報の種類に応じて自動分類できるようにすることである。
本発明のさらに他の目的は、大量の電子文書から機密情報を含む文書を自動的に検出する処理を効率化できるようにすることである。
本発明のさらに他の目的は、検出された各機密文書に対して、その保護処置が適切であるかどうかを確認するための作業、またはその保護処置を施すための作業を効率化できるようにすることである。
本発明のさらに他の目的は、機密文書とその所在およびその機密文書の種類を明らかにし、特定の場所にある特定種類の機密文書に対して特定ユーザからのアクセスまたは特定ユーザ以外からのアクセスを制限または許可するためのセキュリティポリシーの作成を容易にすることにある。
本発明による機密文書検索システムは、少なくとも文字情報を含む1つ以上の文書を格納する文書格納手段に格納された文書のうち、閲覧が制限される機密文書を検索する機密文書検索システムであって、文書格納手段に格納された文書を読み込む文書参照手段と、文書内に含まれているときに当該文書が機密文書に該当する可能性があることを示す特徴要素を定めた特徴定義辞書を格納する特徴定義辞書格納手段と、読み込まれた文書内から特徴定義辞書に基づいて特徴要素を検出し、当該特徴要素に基づいて、文書が分類される機密文書としてのカテゴリの候補を定める特徴要素検出手段と、文書内における特徴要素の配置状態を示す評価値を計算する相関性評価手段と、候補とされた個々のカテゴリが適切か否かを、相関性評価手段に計算された評価値に基づいて判定し、適切でないと判定されたカテゴリを候補から除外するカテゴリ絞り込み手段と、カテゴリ絞り込み手段によって適切と判定されたカテゴリに基づいて、文書が分類されるカテゴリを決定する機密情報分類手段と、少なくとも、機密情報分類手段によってカテゴリが決定された文書の文書名と、カテゴリとを出力する結果出力手段とを備え、特徴定義辞書格納手段が、機密文書が分類される各カテゴリ毎に、カテゴリの重要度を示す値を定めた特徴定義辞書を格納し、機密情報分類手段が、1つの文書が分類されるカテゴリとして複数のカテゴリを決定した場合に、複数のカテゴリの重要度を示す値のうち最大の値を、文書の重要度を示す文書スコアとし、文書の内容の解読され易さを示す値を計算し、値と文書スコアとに基づいて、文書が漏洩する危険度を示すリスク値を計算するリスク評価手段を備えたことを特徴とする。
そのような構成によれば、文書参照手段が、文書格納手段から文書を読み込み、特徴要素検出手段が、その文書から特徴要素を検出して機密文書としてのカテゴリの候補を定め、相関性評価手段が、文書内における特徴要素の配置状態を示す評価値を計算し、カテゴリ絞り込み手段が、評価値に基づいて適切でないと判定されたカテゴリを候補から除外し、機密情報分類手段が、適切と判定されたカテゴリに基づいて文書が分類されるカテゴリを決定するので、機密情報を含む文書を自動的に検出することができ、また、検出した機密文書を機密情報の種類に応じて自動分類することができる。また、カテゴリ絞り込み手段が、文書内における特徴要素の配置状態を示す評価値に基づいて、候補とされた個々のカテゴリが適切か否かを判定するので、単に特徴要素が記述されているだけで実際には機密文書に該当しない文書が、機密文書としてのカテゴリに分類されてしまうことを防止できる。また、オペレータは、文書が漏洩する危険度を示すリスク値を参照して、検出された各機密文書の保護処置が適切であるかどうかを確認するための作業や、検出された各機密文書に保護処置を施すための作業を効率化することができる。
特徴定義辞書格納手段が、機密文書が分類される各カテゴリ毎にカテゴリに応じた特徴要素を定めた特徴定義辞書を格納する構成であってもよい。
特徴要素検出手段が、特徴定義辞書に基づいて、各カテゴリ毎に特徴要素を文書から検出し、検出した特徴要素によって、当該特徴要素に対応するカテゴリを文書の分類候補とするか否かを決定する構成であってもよい。そのような構成によれば、特徴要素検出手段が、各カテゴリ毎にカテゴリに応じた特徴要素を文書から検出し、その特徴要素によって、分類候補を定めるので、適切に分類候補を定めることができ、単なる特定の記述の有無によって文書の分類を定める場合に生じるような誤った分類を防止することができる。
特徴定義辞書格納手段が、カテゴリ毎に特徴要素を区分し、第1の区分の特徴要素は、当該特徴要素が全て文書から検出されることを条件に、当該特徴要素に対応するカテゴリが文書の分類候補となることを定め、第2の区分の特徴要素は、当該特徴要素のうちの少なくとも1つが文書から検出されることを条件に、当該特徴要素に対応するカテゴリが文書の分類候補となることを定めた特徴定義辞書を格納し、特徴要素検出手段が、一のカテゴリにおける第1の区分の特徴要素が全て検出されているか否かおよびカテゴリにおける第2の区分の特徴要素のうちの少なくとも1つが検出されているか否かに応じて、カテゴリを文書の分類候補とするか否かを決定する構成であってもよい。
相関性評価手段が、カテゴリ毎に評価値を計算し、カテゴリ絞り込み手段が、評価値が予め規定された閾値以上である場合に、評価値に対応するカテゴリを適切なカテゴリと判定する構成であってもよい。
相関性評価手段が、カテゴリ毎に、カテゴリに応じた特徴要素によって定められる文書中の範囲内における特徴要素の占める割合を評価値として計算する構成であってもよい。カテゴリ絞り込み手段が、そのような評価値に基づいて、候補とされた個々のカテゴリが適切か否かを判定するので、単に特徴要素が記述されているだけで実際には機密文書に該当しない文書が、機密文書としてのカテゴリに分類されてしまうことを防止できる。
相関性評価手段が、カテゴリ毎に、カテゴリに応じた特徴要素によって定められる文書中の範囲と他のカテゴリに応じた特徴要素によって定められる文書中の範囲との重複の程度を評価値として計算する構成であってもよい。カテゴリ絞り込み手段が、そのような評価値に基づいて、候補とされた個々のカテゴリが適切か否かを判定するので、単に特徴要素が記述されているだけで実際には機密文書に該当しない文書が、機密文書としてのカテゴリに分類されてしまうことを防止できる。
相関性評価手段が、カテゴリ毎に、特徴要素の検出対象範囲に対するカテゴリに応じた特徴要素によって定められる文書中の範囲の占める割合を評価値として計算する構成であってもよい。カテゴリ絞り込み手段が、そのような評価値に基づいて、候補とされた個々のカテゴリが適切か否かを判定するので、単に特徴要素が記述されているだけで実際には機密文書に該当しない文書が、機密文書としてのカテゴリに分類されてしまうことを防止できる。
文書を所定の部分領域に分割する領域分割手段を備え、特徴要素検出手段が、部分領域毎に、特徴要素を検出し、各部分領域が分類されるカテゴリの候補を当該特徴要素に基づいて定める構成であってもよい。
特徴定義辞書格納手段は、各部分領域に対応する複数の特徴定義辞書を格納し、特徴要素検出手段は、部分領域毎に、各部分領域に対応する特徴定義辞書に基づいて特徴要素を検出する構成であってもよい。そのような構成によれば、1つの辞書に多くの情報を含めておく必要がなく、また、その1つの辞書のみを用いて辞書内の多くの情報を参照しなく済む。従って、辞書参照負荷を軽減でき、処理を高速化、効率化することができる。また、その結果、文書格納手段に大量の文書が格納されていても、機密文書の検出や分類を行うことができる。
相関性評価手段が、部分領域毎に、部分領域内における特徴要素の配置状態を示す評価値を計算する構成であってもよい。そのような構成によれば、単に部分領域内に特徴要素が記述されているだけで実際には機密文書に該当しない文書が、機密文書としてのカテゴリに分類されてしまうことを防止できる。
相関性評価手段が、各部分領域でカテゴリ毎に評価値を計算し、カテゴリ絞り込み手段は、複数のカテゴリそれぞれの特徴要素によって定められる範囲が1つの部分領域内で重複する場合に、複数のカテゴリに対応する評価値を比較して、複数のカテゴリのうちの1つのみを適切なカテゴリと判定する構成であってもよい。
カテゴリ絞り込み手段が、1つの部分領域内で、一のカテゴリの特徴要素によって定められる範囲が、他のカテゴリの特徴要素によって定められる範囲と重複しない場合、一のカテゴリを適切なカテゴリと判定する構成であってもよい。
機密情報分類手段が、各部分領域で適切と判断されたカテゴリをそれぞれ、文書が分類されるカテゴリとして決定する構成であってもよい。
リスク評価手段が、同一の文書格納場所に格納された複数の文書それぞれのリスク値を計算し、各文書のリスク値のうち最大の値を、文書格納場所から文書が漏洩する危険度を示す値として定める構成であってもよい。そのような構成によれば、個々の文書単位で機密情報の管理状態を確認したり保護処置を決定する場合に比べ、効率の良い情報セキュリティ監査を実現ことができる。
結果出力手段が、文書が分類されたカテゴリとともに、カテゴリの特徴要素として、特徴要素検出手段が検出した特徴要素を出力する構成であってもよい。
特徴定義辞書に追加する内容を入力するユーザインタフェースを表示し、ユーザインタフェースに入力された内容を、特徴定義辞書格納手段に格納された特徴定義辞書に追加する特徴定義辞書拡張手段を備えた構成であってもよい。
読み込むべき文書が格納された文書格納場所を文書参照手段に対して指定する検索範囲指定手段を備えた構成であってもよい。
検索範囲指定手段が、文書が漏洩する可能性のある文書格納場所または過去に不正にアクセスされたことがある文書格納場所を指定する構成であってもよい。そのような構成によれば、文書格納手段のセキュリティ状況の実態に応じた文書検索を実現することができる。
文書参照手段が、検索範囲指定手段に指定された文書格納場所に格納された文書を読み込む構成であってもよい。そのような構成によれば、文書が漏洩する可能性のある文書格納場所または過去に不正にアクセスされたことがある文書格納場所から機密文書が検索され、機密文書の分類が行われるので、機密文書を文書格納場所に格納する処置が適切に行われているか否かを効率的に確認することができる。また、オペレータは、不適切なセキュリティポリシーが適用されている可能性を調べることができる。すなわち、機密文書に対する保護処置が適切であるかどうかを調べることができる。
文書を閲覧しようとするユーザのグループと、グループに属するユーザのユーザIDとを対応付けた情報を記憶する記憶装置を備え、
文書を閲覧しようとするユーザのグループ、およびカテゴリの選択を促すユーザインタフェースを表示し、ユーザインタフェース上でグループおよびカテゴリが選択されることによって、ユーザインタフェース上で選択されたグループから、ユーザインタフェース上で選択されたカテゴリの文書へのアクセスの許可を示す上位セキュリティポリシーを作成し、上位セキュリティポリシーに記述されたグループを当該グループに属するユーザのユーザIDに置き換え、結果出力手段によって出力された文書名であって、上位セキュリティポリシーに記述されたカテゴリの文書の文書名を上位セキュリティポリシーに追加することによって、個々の文書にどのユーザがアクセス可能であるかを示すセキュリティポリシーを作成するポリシー生成手段を備えた構成であってもよい。そのような構成によれば、個々の文書毎に、文書にアクセス可能な者を示すセキュリティポリシーを、容易に作成することができる。
ポリシー生成手段が、グループおよび結果出力手段によって出力されたカテゴリを列挙して、グループおよびカテゴリの選択を促すユーザインタフェースを表示し、ユーザインタフェース上で選択されたグループおよびカテゴリから上位セキュリティポリシーを生成する構成であってもよい。文書格納手段13に格納された文書が分類されるカテゴリに該当しないカテゴリについては、結果出力手段によって出力されないので、上記のような構成によれば、そのような不要なカテゴリの選択を促さずに済み、また、そのような不要なカテゴリに基づいて上位セキュリティポリシーを生成しなくて済む。そして、その結果、セキュリティポリシーが過剰に増加することを防止できる。
結果出力手段が、文書が格納されていた文書格納場所の情報を出力する構成であってもよい。そのような構成によれば、オペレータが機密文書の格納場所を容易に把握することができる。
また、本発明による機密文書検索方法は、少なくとも文字情報を含む1つ以上の文書を格納する文書格納手段に格納された文書のうち、特定の者による閲覧が制限される機密文書を検索する機密文書検索方法であって、 特徴定義辞書格納手段が、文書内に含まれているときに当該文書が機密文書に該当する可能性があることを示す特徴要素を定めるとともに、文書が分類される機密文書としての各カテゴリ毎に、カテゴリの重要度を示す値を定めた特徴定義辞書を格納し、文書参照手段が、文書格納手段に格納された文書を読み込み、特徴要素検出手段が、読み込まれた文書内から特徴定義辞書に基づいて特徴要素を検出し、当該特徴要素に基づいて、文書が分類される機密文書としてのカテゴリの候補を定め、相関性評価手段が、文書内における特徴要素の配置状態を示す評価値を計算し、カテゴリ絞り込み手段が、候補とされた個々のカテゴリが適切か否かを、相関性評価手段に計算された評価値に基づいて判定し、適切でないと判定されたカテゴリを候補から除外し、機密情報分類手段が、カテゴリ絞り込み手段によって適切と判定されたカテゴリに基づいて、文書が分類されるカテゴリを決定し、文書が分類されるカテゴリとして複数のカテゴリを決定した場合に、複数のカテゴリの重要度を示す値のうち最大の値を、文書の重要度を示す文書スコアとし、結果出力手段が、少なくとも、機密情報分類手段によってカテゴリが決定された文書の文書名と、カテゴリとを出力し、リスク評価手段が、文書の内容の解読され易さを示す値を計算し、値と文書スコアとに基づいて、文書が漏洩する危険度を示すリスク値を計算することを特徴とする。
また、本発明による機密文書検索プログラムは、少なくとも文字情報を含む1つ以上の文書を格納する文書格納手段に格納された文書のうち、特定の者による閲覧が制限される機密文書を検索するコンピュータであって、文書内に含まれているときに当該文書が機密文書に該当する可能性があることを示す特徴要素を定めるとともに、文書が分類される機密文書としての各カテゴリ毎に、カテゴリの重要度を示す値を定めた特徴定義辞書を格納する特徴定義辞書格納手段を備えたコンピュータに、文書格納手段に格納された文書を読み込む文書参照処理、読み込まれた文書内から特徴定義辞書に基づいて特徴要素を検出し、当該特徴要素に基づいて、文書が分類される機密文書としてのカテゴリの候補を定める特徴要素検出処理、文書内における特徴要素の配置状態を示す評価値を計算する相関性評価処理、候補とされた個々のカテゴリが適切か否かを、相関性評価処理で計算された評価値に基づいて判定し、適切でないと判定されたカテゴリを候補から除外するカテゴリ絞り込み処理、カテゴリ絞り込み処理で適切と判定されたカテゴリに基づいて、文書が分類されるカテゴリを決定し、文書が分類されるカテゴリとして複数のカテゴリを決定した場合に、複数のカテゴリの重要度を示す値のうち最大の値を、文書の重要度を示す文書スコアとする機密情報分類処理、少なくとも、機密情報分類処理でカテゴリが決定された文書の文書名と、カテゴリとを出力する結果出力処理、および文書の内容の解読され易さを示す値を計算し、値と文書スコアとに基づいて、文書が漏洩する危険度を示すリスク値を計算するリスク評価処理を実行させることを特徴とする。
本発明によれば、文書格納手段に格納された文書から機密文書を自動的に検出することができる。また、検出した機密文書を機密情報のカテゴリに応じて分類することができる。また、文書内における特徴要素の配置状態を示す評価値を計算する相関性評価手段と、候補とされた個々のカテゴリが適切か否かを、相関性評価手段に計算された評価値に基づいて判定し、適切でないと判定されたカテゴリを候補から除外するカテゴリ絞り込み手段とを備えているので、単に特徴要素と一致する語を含むだけで機密文書に該当しない文書を検索することを防止できる。従って、機密文書の検出を確実に、また効率的に行うことができる。
以下、本発明を実施するための最良の形態を、図面を参照して説明する。
実施の形態1.
図1は、本発明による機密文書検索システムの第1の実施の形態を示すブロック図である。文書格納手段13は、少なくとも文字情報を含む1つ以上の文書を記憶する。文書参照手段1は、文書格納手段13が記憶している文書を参照する(読み込む)。領域分割手段2は、文書参照手段1によって読み込まれた文書を、その文書における語の配置等に基づいて1つ以上の部分領域(例えば、ヘッダ、本文、フッタ等の所定の部分領域)に分割する。
特徴定義辞書格納手段5は、各種部分領域(例えば、ヘッダ領域等の各種部分領域)に応じた辞書を記憶する。各部分領域に応じた辞書は、その部分領域に記述された機密情報の種類を判断するための語句の情報を含んでいる。そして、この語句には、個別具体的な個人名、電話番号、住所等の記述(以下、このような個別具体的な記述をインスタンス文字列と記す。)の属性を表す語句(例えば、「山田」等のインスタンス文字列の属性を表す「人名」等の語句)も含まれる。また、文書内に含まれているときにその文書が機密文書に該当する可能性があることを示す語句やインスタンス文字列を特徴要素と記す。特徴定義辞書格納手段5に格納される辞書は、特徴要素を定めている。
領域別辞書参照手段4は、特徴要素検出手段3に従って、特徴定義辞書格納手段5から各部分領域に応じた辞書を参照する。特徴要素検出手段3は、領域別辞書参照手段4を介して各部分領域に応じた辞書を参照し、領域分割手段2によって分割された各部分領域から、各種機密情報を含んでいるかの判断材料となる特徴要素を検出する。相関性評価手段6は、検出された特徴要素が同じ領域内に複数個存在する場合に、各特徴要素間の関連性の高さを評価する処理(相関性評価処理)を実行する。機密情報分類手段7は、各特徴要素間の関連性の高さを考慮して部分領域毎に、記述された機密情報の種類を決定する。さらに機密情報分類手段7は、各部分領域ごとの機密情報の種類を総合して文書全体の機密情報の種類を判定する。結果出力手段8は、各文書の保存場所(保存場所の情報には文書名が含まれてもよい。)とその文書に対して判定された機密情報の種類の組を出力する。
機密文書検索システムの各構成部の動作を、図2に示す文書例を用いてより詳細に説明する。文書参照手段1が文書30のようなファイルを参照した(読み込んだ)とする。この場合、まず領域分割手段2は、文書30の文面をヘッダ領域31、本文領域33、およびフッタ領域34に分割する。さらに領域分割手段2は、可能ならばヘッダ領域31からタイトル領域32を抽出し、また本文領域33から図表領域35,36,37を抽出する。領域分割手段2は、文書30がHTML形式等のようにタグを用いて記述された文書である場合には、文書内の各種タグを参照して各領域の分割や抽出を行えばよい。タイトル領域や図表領域が抽出可能かどうかは、文書30にそれらを示すタグや罫線情報が含まれているか等に依存する。また、例えば、Microsoft Office(商標)のWORD(商標)やEXCEL(商標)、PowerPoint(登録商標)といった編集ツールで作成された文書やPDF形式の文書が読み込まれた場合には、領域分割手段2は、それらの文書をHTML形式の文書に変換し、タグを参照して各領域の分割や抽出を行えばよい。ここに挙げた各種文書をHTML形式の文書に変換するためのソフトウェアとして、フリーウェアとして提供されているxlhtmlやxpdf(いずれもソフトウェアの名称)等の変換ソフトウェアがある。領域分割手段2は、これらの変換ソフトウェアを用いて、HTML形式への文書変換を行ってもよい。
HTMLにおけるタグのようなテキスト解析で認識可能な有効な手掛りを含まない文書、またはタグからは本来のレイアウトを推定できない文書等については、領域分割手段2は、文書全体の先頭X行(例えば5行)をヘッダ領域、最後のY行(例えば5行)をフッタ領域、それらを除く領域を本文領域などとすることで近似的に領域の分割を行ってもよい。また、既に広く普及しているOCRの技術を用いて文書を画面に表示または印刷したイメージからレイアウト解析を行なうことで、ヘッダ領域やフッタ領域、図表領域などを抽出してもよい。例えば、文字集合領域を認識し、その領域を囲む最小の矩形または多角形領域を抽出し、文書の上端、文書の下端に最も近い矩形または多角形領域をそれぞれヘッダ領域、フッタ領域としてもよい。
領域分割手段2が文書を部分領域に分割すると、特徴要素検出手段3は、領域別辞書参照手段4を通じて特徴定義辞書格納手段5を参照する。そして、特徴要素検出手段3は、例えばヘッダ領域とフッタ領域に共通の辞書を用いて「取扱注意」や「社外秘」、「Confidential」などの単語(特徴要素)がヘッダ領域31またはフッタ領域34に含まれているかどうかを調べる。これらの単語は、一般に文書の先頭や末尾、またはページの先頭や末尾に記述されることでその文書が機密文書であることを示す。従って、本例では、これらの単語は、ヘッダ領域とフッタ領域に共通の辞書(ここでは、ヘッダ領域に応じた辞書とフッタ領域に応じた辞書が共通であるものとして説明する。)に含まれているものとする。一方、これらの単語が本文領域33に記載されていたとしても、それが文書30の機密性を示す場合は少ないため、これらの単語を本文領域用辞書から除外する。このように、各領域の特性に応じた辞書をそれぞれ用意しておき、部分領域毎に対応する辞書を参照して、各部分領域に記述された特徴要素を検出すれば、1つの辞書に多くの情報を含めておく必要がなく、また、その1つの辞書のみを用いて辞書内の多くの情報を参照しなく済む。従って、辞書参照負荷を軽減でき、処理を高速化することができる。
住所や電話番号、Eメールアドレスなどの連絡先に属する個人情報は、一連の自然言語文で書かれている場合もあり得るが、氏名や住所などが個別に表または単なる並びとして記述されている場合が非常に多い。図表領域35は、厳密な表ではないが個人を特定し連絡をとるための指名やEメールアドレス、住所が記載されている。ただし、社名や部署名、”内線”といった記述もあり、個人のプライベートな連絡先ではないものと推測できる。相関性評価手段6は、図表領域37のような明示的な表に対しては行や列の対応関係から個人情報の単位(ある人に関する氏名と連絡先などの組)を判断する。一方で、図表領域35のように表形式ではない場合は、氏名や住所等の特徴要素と他の語との空間的位置関係を定量的に計算し、その計算結果を用いて、近接する特徴要素が一組の個人情報となるかどうかを判定する。
図3は、特徴定義辞書格納手段5に格納される辞書(以下、特徴定義辞書と記す。)の例を示す説明図である。図4は、機密文書検索システムの動作を示すフローチャートである。以下、特徴要素検出手段3の処理について、図3および図4を用いてより具体的に説明する。ここでは、まず、特徴定義辞書の記述について説明する。
特徴定義辞書は、例えばXML形式で記述される。図3に示す各category要素(<category・・・> 〜 </category>で囲まれた部分)は、それぞれ1つの機密情報カテゴリ(すなわち、機密情報の種類)を示す。機密情報カテゴリ名はcategory要素のname属性に記述される。図3の例では“顧客情報”と“名刺情報”がそれぞれ機密情報カテゴリ名である。category要素のimportance属性の値は、各機密情報カテゴリに対して与えられた重要度を示す0以上1以下の値である。category要素の下位要素として、word要素とattrib要素が設けられる。
word要素の値としては、固定文字列が記述される。そして、word要素の値として記述された固定文字列が文書中に含まれていた場合、その固定文字列は、そのword要素を記述した機密情報カテゴリの特徴要素とされる。図3に示す例では、“顧客情報”カテゴリと“名詞情報”カテゴリのいずれにも、“電話場号”というword要素が含まれている。従って、特徴要素検出手段3は、“電話番号”という固定文字列が文書中に含まれているときには、その文字列を “顧客情報”の特徴要素であると判断し、また、“名刺情報”に属する特徴要素であると判断する。
attrib要素の値としては、インスタンス文字列の属性を表す語句が記述される。そして、attrib要素の値として記述された属性に該当するインスタンス文字列が文書中に含まれていた場合、そのインスタンス文字列は、そのattrib要素を記述した機密情報カテゴリの特徴要素とされる。図3に例示する“人名”という属性のインスタンス文字列の例として、“山田”や“一郎”等の具体的な名字や名前が挙げられる。同様に、図3に例示する“電話番号”という属性のインスタンス文字列の例として、“03−1234−5678”等の具体的な電話番号が挙げられる。例えば、特徴要素検出手段3は、“山田”というインスタンス文字列が文書中に含まれているときには、そのインスタンス文字列を“顧客情報”の特徴要素であると判断し、また、“名刺情報”に属する特徴要素であると判断する。
word要素およびattrib要素におけるclass属性は、ある文書が、そのword要素やattrib要素を記述した機密情報カテゴリに分類されるための条件を示す。class属性の値“M”は、そのclass属性“M”を有する各word要素および各attrib要素が示す文字列が全て同一文書(同一の部分領域)から検出されることを条件に、その文書(部分領域)が、attrib要素やword要素を記述した機密情報カテゴリに分類され得ることを表している。また、class属性の値“A”は、そのclass属性“A”を有する各word要素および各attrib要素のうちの少なくとも1つが示す文字列が文書(部分領域)から検出されることを条件に、その文書(部分領域)が、attrib要素やword要素を記述した機密情報カテゴリに分類され得ることを表している。class属性の値“O”は、そのclass属性“O”を有する各word要素および各attrib要素が示す文字列が文書(部分領域)内から検出されることは必須ではないが、それらの文字列が多く検出されるほど、その文書(部分領域)が、attrib要素やword要素を記述した機密情報カテゴリに分類される確度が高いことを示している。
図4は、機密文書検索システムの動作、特に、特徴要素検出手段3の動作を示すフローチャートである。まず、文書参照手段1は、文書格納手段13に格納された未参照の文書の1つを参照する(ステップS1501)。領域分割手段2は、その文書を1つ以上の部分領域に分割する(ステップS1502)。
次に、特徴要素検出手段3は、分割された部分領域のうち読み込んだ文書の中で未評価の部分領域(すなわち、後述のステップS1504〜S1509の処理が行われていない部分領域)を1つ選択する(ステップS1503)。さらに、特徴要素検出手段3は、領域別辞書参照手段4を通じて特徴定義辞書格納手段5を参照することにより、選択した部分領域に対応付けられている特徴定義辞書を選択する(ステップS1504)。各部分領域に応じた特徴定義辞書は、図3に例示するように、1つ以上のカテゴリのcategory要素を含み、個々の機密情報カテゴリに対応するcategory要素は、それぞれattrib要素やword要素によって定義されている。特徴要素検出手段3は、選択した特徴定義辞書から未照合の機密情報カテゴリ(すなわち、後述のステップS1506の処理で用いられていないcategory要素)の1つを選択する(ステップS1505)。
続いて、特徴要素検出手段3は、選択した部分領域内に記述された情報と、選択した機密情報カテゴリの定義内容とを照合し、選択した機密情報カテゴリに分類するために必要な特徴要素全てが部分領域内に含まれているか否かを評価する(ステップS1506)。すなわち、選択した部分領域に含まれる特徴要素の集合が、選択した機密情報カテゴリに分類すべき必須の特徴要素(class属性が“M”の全ての要素が示す文字列、およびclass属性が“A”の要素のうち1つ以上の要素が示す文字列)を全て含むかどうかを評価する。必須の特徴要素を全て含むと判断した場合、選択した機密情報カテゴリを、選択した部分領域の分類候補に指定する(ステップS1507)。必須の特徴要素を全て含んでいるわけではないと判断した場合、ステップS1507の処理を実行せずに、ステップS1508に移行する。
例えば、ある部分領域内に図5に示す自然言語文41のような記述があった場合を例に説明する。特徴要素検出手段3は、自然言語文41に対して形態素解析を行う。そして、図3に例示する特徴定義辞書を参照した場合、特徴要素検出手段3は、機密情報カテゴリ“顧客情報”について、自然言語文41を形態素解析した結果42から属性“人名”のインスタンス文字列“山田”、固定文字列“電話番号”、属性“電話番号”のインスタンス文字列“03−XXXX−XXXX”、固定文字列“メール”、属性“Eメールアドレス”のインスタンス文字列“yamada@xxxx.yyy.zzz”を特徴要素としてそれぞれ検出する。検出された特徴要素は、機密情報カテゴリ“顧客情報”に分類する必須の特徴要素が全て含んでいるので、自然言語文41を記述した部分領域は、 “顧客情報”に分類され得る。
なお、形態素解析によって分割された各品詞や記号には、特徴要素に該当しないものが存在する。これらの各品詞や記号のうち、特定の品詞や記号を除いたものを非特徴要素と呼ぶことにする。本例では、少なくとも助詞および読点は、非特徴要素に該当しないものとする。また、図5に記載したカテゴリ領域サイズおよびカテゴリ密度については後述する。
選択した機密情報カテゴリが部分領域の分類候補となるか否かを決定する処理を終えると、特徴要素検出手段3は、未照合の機密情報カテゴリが残っているか否かを判定する(ステップS1508)。未照合の機密情報カテゴリが残っていれば、ステップS1505に移行してステップS1505以降の処理を繰り返す。未照合の機密情報カテゴリが残っておらず、全ての機密情報カテゴリについて照合を終えたと判定した場合、相関性評価手段6が相関性評価処理を行う(ステップS1509)。相関性評価処理については、後述する。ステップS1509の後、特徴要素検出手段3は、未評価の部分領域が残っているか否かを判定する(ステップSS1510)。未評価の部分領域が残っていれば、ステップS1503に移行してステップS1503以降の処理を繰り返す。未評価の部分領域が残っていおらず、ステップS1501で読み込んだ文書を構成する全ての部分領域について評価したと判定した場合、機密情報分類手段7が機密情報分類処理を行う(ステップS1511)。機密情報分類処理については後述する。なお、図4に示すフローチャートでは省略しているが、ステップS1511の後、結果出力手段8が、例えば、機密情報を含む機密文書の保存場所、およびその機密情報の分類結果を出力する。
文書格納手段13に複数の文書が記憶されているならば、各文書に対してステップS1501以降の処理を行えばよい。
次に、図6、図7、図8を用いて、ステップS1509の相関性評価処理について説明する。図6および図7は、相関性評価処理の処理経過を示すフローチャートである。相関性評価手段6は、ステップS1507(図4参照。)で分類候補として指定された機密情報カテゴリのうちの1つを選択する(ステップS3101)。続いて、相関性評価手段6は、選択した機密情報カテゴリに属する特徴要素のうち、評価対象としている部分領域(すなわち、ステップS1503で選択した部分領域)内での最初と最後の特徴要素からカテゴリ領域を同定する(ステップS3102)。そして、機密情報カテゴリとカテゴリ領域とを対応付ける。以降の処理では、各機密情報カテゴリに応じた各カテゴリ領域について、カテゴリ密度、カテゴリ純度、およびカテゴリ占度という3つの値を計算する。
図8は、カテゴリ密度、カテゴリ純度、およびカテゴリ占度の説明図である。図8に示す部分領域Aには、それぞれが単語や番号等からなる特徴要素および非特徴要素が含まれているものとする。特徴要素3,7,8は、それぞれ機密情報カテゴリC1に属する特徴要素であるものとする。同様に、特徴要素5,7,10,11は、それぞれ機密情報カテゴリC2に属する特徴要素であるものとする。特徴要素7は、機密情報カテゴリC1,C2の両方に属する特徴要素である。ここで、部分領域A内の特徴要素および非特徴要素を部分領域Aの左上から右下へ番号順に並んだ一列の要素列とみなす。機密情報カテゴリC1に属する特徴要素のうち最初のものは特徴要素3であり、最後のものは特徴要素8となる。ステップS3101において機密情報カテゴリC1を選択した場合には、この特徴要素3から特徴要素8までの要素列を、機密情報カテゴリC1のカテゴリ領域AC1とする(ステップS3101)。同様に、機密情報カテゴリC2に属する特徴要素のうち最初のものは特徴要素5であり、最後のものは特徴要素11となる。従って、ステップS3101において機密情報カテゴリC2を選択した場合には、この機密情報5から機密情報11までの要素列を、機密情報カテゴリC2のカテゴリ領域AC2とする(ステップS3101)。以下、特徴要素と非特徴要素とを特に区別しない場合には、単に要素と記す。
以上のように定めたカテゴリ領域において、カテゴリ密度、カテゴリ純度、カテゴリ占度をそれぞれ次のように定義する。カテゴリ密度は、カテゴリ領域に含まれる特徴要素数をカテゴリ領域サイズで除算した値とする。カテゴリ領域サイズは、そのカテゴリ領域に含まれる要素の総数である。例えば、カテゴリ領域AC1のカテゴリ密度は、以下のように計算される。カテゴリ領域AC1に含まれる機密情報カテゴリC1の特徴要素の数は3つ(特徴要素3,7,8)であり、カテゴリ領域AC1のカテゴリ領域サイズは、要素3から要素8までの各要素の総数(すなわち、6)であるので、カテゴリ密度は、3/6=0.5となる。
カテゴリ純度は、ある機密情報カテゴリのカテゴリ領域において、カテゴリ領域サイズに対する他のカテゴリ領域と重複する要素数の割合を1から引いた値とする。カテゴリ領域AC1は、要素3から要素8までのうち、要素5から要素8までの4つがカテゴリ領域AC2と重複する。従って、カテゴリ領域AC1のカテゴリ領域サイズに対する重複要素の割合は、4/6=0.67となる。1からこの値を引いた値0.33が、カテゴリ領域AC1におけるカテゴリ純度となる。
また、カテゴリ占度は、カテゴリ領域サイズをそのカテゴリ領域が含まれる部分領域の領域サイズで割った値とする。部分領域の領域サイズは、カテゴリ領域サイズと同様にその部分領域に含まれる要素の総和である。図8に示す部分領域に含まれる要素数は12である。従って、例えば、カテゴリ領域サイズが6であるカテゴリ領域AC1のカテゴリ占度は、6/12=0.5となる。
以上のように定義したカテゴリ領域、カテゴリ密度、カテゴリ純度、カテゴリ占度を用いて、図6および図7に示す処理を実行する。機密情報カテゴリに応じたカテゴリ領域を定めた後(ステップS3102の後)、相関性評価手段6は、そのカテゴリ領域のカテゴリ密度を計算する。続いて、相関性評価手段6は、分類候補のうち、カテゴリ密度を計算していない機密情報カテゴリがあるか否かを判定する(ステップS3104)。そのような機密情報カテゴリがあるならば、ステップS3101に移行し、ステップS3101以降の処理を繰り返す。カテゴリ密度を計算していない機密情報カテゴリがなくなったならば、分類候補とされた各機密情報カテゴリ毎にカテゴリ領域が定められ、各カテゴリ領域のカテゴリ密度が全て計算されたことになる。この場合、ステップ3105(図7参照。)に移行する。なお、相関性評価手段6は、ステップS3102で定めたカテゴリ領域の情報およびステップS3103で計算したカテゴリ密度を、それぞれ対応付けて記憶しておく。
相関性評価手段6は、分類候補として指定された機密情報カテゴリのうちの1つを選択し、その機密情報カテゴリのカテゴリ領域におけるカテゴリ密度を参照する(ステップS3105)。次に、相関性評価手段6は、そのカテゴリ密度が、予め規定された密度閾値以上であるか否かを判定する(ステップS3106)。密度閾値として、例えば0.25等の値を用いればよいが、0.25以外の値であってもよい。カテゴリ密度が密度閾値未満であれば、相関性評価手段6は、評価対象としている部分領域の分類候補から、ステップS3105で選択した機密情報カテゴリを除外する(ステップS3113)。カテゴリ密度が密度閾値以上であるならば、相関性評価手段6は、次にカテゴリ純度を計算し(ステップS3107)、そのカテゴリ純度が、予め規定された純度閾値以上であるか否かを判定する(ステップS3108)。純度閾値として、例えば0.8等の値を用いればよいが、0.8以外の値であってもよい。カテゴリ純度が純度閾値未満であれば、相関性評価手段6は、ステップS3015で選択した機密情報カテゴリのカテゴリ領域と重複する他のカテゴリ領域を特定する。そして、選択した機密情報カテゴリのカテゴリ領域のカテゴリ密度が、そのカテゴリ領域と重複する他のカテゴリ領域のカテゴリ密度より高いか否かを判定する(ステップS3109)。ステップS3105に移行する前に、分類候補とされた各機密情報カテゴリ毎にカテゴリ領域が定められ、各カテゴリ領域のカテゴリ密度が全て計算されているので、相関性評価手段6は、ステップS3109の処理を実行することができる。選択した機密情報カテゴリのカテゴリ領域のカテゴリ密度が他のカテゴリ領域のカテゴリ密度より低ければ(ステップS3109におけるNO)、選択した機密情報カテゴリを、評価対象としている部分領域の分類候補から除外する(ステップS3113)。
カテゴリ純度が純度閾値以上である場合(ステップS3108におけるYES)または、選択した機密情報カテゴリのカテゴリ領域のカテゴリ密度が他のカテゴリ領域のカテゴリ密度より高い場合(ステップS3109におけるYES)、相関性評価手段6は、カテゴリ占度を計算する(ステップS3110)。続いて、相関性評価手段6は、そのカテゴリ占度が、予め規定された占度閾値以上であるか否かを判定する(ステップS3112)。占度閾値として、例えば0.4等の値を用いればよいが、0.4以外の値であってもよい。カテゴリ占度が占度閾値未満であれば、相関性評価手段6は、評価対象としている部分領域の分類候補から、ステップS3105で選択した機密情報カテゴリを除外する(ステップS3113)。カテゴリ占度が占度閾値以上であるならば、ステップS3105で選択した機密情報カテゴリを部分領域の機密情報カテゴリとして採用する(ステップS3112)。続いて、相関性評価手段6は、分類候補とされた機密情報カテゴリのうち、未評価の機密情報カテゴリ(すなわち、未だステップS3105移行の処理対象とされていない機密情報カテゴリ)の有無を判定する(ステップS3114)。未評価の機密情報カテゴリがあれば、ステップS3105に移行し、ステップS3105以降の処理を繰り返す。
なお、ステップS3109の判定およびステップS3113の処理を行っているため、複数のカテゴリ領域が重複している場合には、各カテゴリ領域に応じた各機密情報カテゴリのうち、ステップS3112で採用され得るものは1つだけである。また、複数のカテゴリ領域が重複していない場合には、各カテゴリ領域に応じた機密情報カテゴリがそれぞれ、ステップS3112で採用される可能性がある。
また、図6および図7に示したフローチャートは、相対性評価処理の一例を示すものであり、カテゴリ密度、カテゴリ純度、カテゴリ占度の計算順序等は、図6および図7に示す場合に限定されない。カテゴリ密度、カテゴリ純度、カテゴリ占度のうち1つまたは2つだけを計算して相関性評価を行なってもよく、またこれらの計算順序を変更したり、各々の値の計算と閾値との比較評価を独立に行なってもよい。また、密度閾値、純度閾値、占度閾値は、それぞれ全ての機密情報カテゴリについて共通の値であっても、各機密情報カテゴリ毎に個別に定められた値であってもよい。
また、密度閾値、純度閾値、占度閾値は、例えば、予め実験により適切な値を定めておけばよい。
図5の自然言語文41を例にして、カテゴリ密度、カテゴリ純度、カテゴリ占度の計算の具体例を示す。自然言語文41に対する形態素解析結果42において、特徴要素検出手段3は、図3に示す機密情報カテゴリ“顧客情報”に基づいて、「山田」(人名)、「電話番号」、「03−XXXX−XXXX」(電話番号)、「メール」、「yamada@xxxx.yyy.zzz」(Eメールアドレス)の5つの特徴要素を検出する。また、特徴要素検出手段3は、図3に示す機密情報カテゴリ“名刺情報”に基づいて、特徴要素を検出する際にも上記の5つの特徴要素を検出する。そして、相対性評価手段6が、機密情報カテゴリ“顧客情報”を検出したとする。このとき、相対性評価手段6は、機密情報カテゴリ“顧客情報”のカテゴリ領域は、「山田」から「yamada@xxxx.yyy.zzz」までであると判定する。さらに、「山田」「さん」「電話番号」「03−XXXX−XXXX」「です」「。」「メール」「yamada@xxxx.yyy.zzz」の要素数合計である8を、そのカテゴリ領域サイズとして定める。相対性評価手段6は、特徴要素数「5」と、カテゴリ領域サイズ「8」とにより、カテゴリ密度を5/8=0.625と計算する。機密情報カテゴリ“名刺情報”に対応するカテゴリ領域は、“顧客情報”に対応するカテゴリ領域と同一である。従って、“顧客情報”に対応するカテゴリ領域サイズに対する、“名刺情報”のカテゴリ領域の重複要素数は8である。よって、特徴定義辞書に定義された機密情報カテゴリが図3に記載した“顧客情報”と“名刺情報”のみであるとすると、相対性評価手段6は、機密情報カテゴリ“顧客情報”のカテゴリ純度を(1−8/8)=0と計算する。また、自然言語文41が記述された部分領域の領域サイズは、「山田」から最後の句点「。」までの要素の総数であるので、「10」となる。よって、相対性評価手段6は、機密情報カテゴリ“顧客情報”のカテゴリ占度を8/10=0.8と計算する。
上記の例では、部分領域に自然言語文41が含まれる場合の例を示した。次に、部分領域に自然言語文ではない記述(非文と記すことにする。)含まれる場合を示す。図9は、ある部分領域内に記述された非文の例と、その非文に対する形態素解析結果の例を示す説明図である。ある部分領域内に、図9に例示する非文51が記述されているとする。非文51では、“山田”や“電話”といった単語と“( )”や“:”などの記号、および電話番号やEメールアドレスなどの英数記号列が並んでいるのみであり、助詞などによって単語間の関係を判断することができない。しかし、非文51に対して形態素解析を行うことにより、単語の特定および品詞判定を行って図9に例示する形態素解析結果52を得ることは可能である。ただし、図9に示す形態素結果52では、“電話番号”等の特徴要素となる単語や“:”などの記号に関する形態素解析結果(例えば、「電話番号−名詞−一般」等)の表記を省略している。なお、形態素解析は、例えば、非特許文献3に記載された「茶筌(ソフトウェアの名称)」を用いて行えばよい。(ただし、「茶筌」は標準では数字列や英数記号列を電話番号やEメールアドレスとは判定できないため、「茶筌」用の辞書の拡張や前処理または後処理によってこれらの判定を行なう必要がある。)
図9に示した非文51の形態素解析結果52を参照して、図3の特徴定義辞書を用いた場合の相関性評価処理の一例を示す。図9に示す形態素解析結果52が得られているものとする。相対性評価手段6は、機密情報カテゴリ“顧客情報(図3参照。)”のカテゴリ領域は、「山田」(人名)から「yamada@xxxx.yyy.zzz」(Eメールアドレス)までであると判定し、カテゴリ領域サイズを「11」と判定する。また、“顧客情報”に属する特徴要素は、「山田」、「一郎」、「電話番号」、「03−XXXX−XXXX」、「メール」、および「yamada@xxxx.yyy.zzz」の6個である。従って、相対性評価手段6は、カテゴリ密度を6/11=0.545と計算する。また、相対性評価手段6は、機密情報カテゴリ“名刺情報(図3参照。)”のカテゴリ領域を、機密情報カテゴリ“顧客情報”の場合と同一に定める。そして、“名刺情報”に属する特徴要素として、上記の6個の特徴要素に「外線」が追加される。従って、相対性評価手段6は、“名刺情報”に対するカテゴリ領域のカテゴリ密度を7/11=0.636と計算する。よって、機密情報カテゴリ“顧客情報”よりも機密情報カテゴリ“名刺情報”の方がカテゴリ密度が高いため、相対性評価手段6は、図9に示す非文51を記述した部分領域の分類候補から機密情報カテゴリ“顧客情報”を外す(図8に示すステップS3109,S3113参照。)。
複数の分類候補の中から不適当な分類候補を除外する他の例を示す。ここでは、ヘッダ領域やフッタ領域に対応する特徴定義辞書として、図10に例示する特徴定義辞書が特徴定義辞書格納手段5に記憶されているものとする。また、占度閾値が0.4と規定されているものとする。この場合、特徴要素検出手段3は、図2に例示するヘッダ領域31に記載の“取扱注意”やヘッダ領域34に記載の“Confidential”などを検出して、機密情報カテゴリ“社外秘”をヘッダ領域やフッタ領域の分類候補に指定することができる。ただし、例えば、図11に示す自然言語文1901(「当社の取扱注意文書に関する説明」)が記述されたヘッダ領域に対する処理では、特徴要素検出手段3が形態素解析を行い、形態素解析結果1902からヘッダ領域に記載の“取扱注意”を検出して、機密情報カテゴリ“社外秘”をヘッダ領域の分類候補に指定する(ステップS1507参照。)。この場合、相関性評価手段6が、機密情報カテゴリ“社外秘”を選択して、“社外秘”に対応するカテゴリ領域のカテゴリ占度を計算すると、カテゴリ占度は以下のようになる。このヘッダ領域に含まれる要素は、「当社」、「取扱注意」、「文書」、「関する」、「説明」であるので、ヘッダ領域の領域サイズは「5」である。また、“社外秘”に対応するカテゴリ領域サイズは「1」である(特徴要素が「取扱注意」のみであるため)。よって、“社外秘”に対応するカテゴリ領域のカテゴリ占度は、1/5=0.2となる。この値は、占度閾値0.4未満であるので、“社外秘”はヘッダ領域の分類候補から除外される。なお、図11に示す例では、カテゴリ領域サイズと特徴要素数が共に1であるので、カテゴリ密度は、1/1=1となる。また、重複する他のカテゴリ領域が存在しないので、他のカテゴリ領域サイズは0となる。よって、図11に示す例におけるカテゴリ純度は、1−0/1=1となる。
一方、「取扱注意文書」という文言のみがヘッダ領域に含まれているとする。この場合も、特徴要素検出手段3は、機密情報カテゴリ“社外秘”をヘッダ領域の分類候補に指定する。この場合、相関性評価手段6は、以下のように“社外秘”に対応するカテゴリ領域のカテゴリ占度を計算する。このヘッダ領域に含まれる要素は、「取扱注意」、「文書」の2つであるので、ヘッダ領域の領域サイズは「2」である。また、“社外秘”に対応するカテゴリ領域サイズは「1」である。よって、“社外秘”に対応するカテゴリ領域のカテゴリ占度は、1/2=0.5となる。この値は、占度閾値0.4以上であるので、“社外秘”はヘッダ領域の分類候補として残る。
このように相関性評価手段6による相関性評価処理では、文書が機密文書であると判断しうる特徴要素(例えば、“取扱注意”、“秘密事項”、“Confidential”等)が、文書全体や各ページの先頭(ヘッダ領域)や末尾(フッタ領域)にあるかどうかという判定基準だけでなく、それらの語が「取扱注意とは社外に無断で公開してはならない・・・」といった多くの要素からなる文の一部である可能性があるか否かも判断基準としている。従って、文書が機密文書であるか否かの精度を向上させることが可能となる。
また、表に対する処理の例を説明する。部分領域内に、図36に例示するアンケートデータのような表が記述されているとする。また、本例では、図36に例示するデータがHTMLによって記述されているものとする。図12は、図36に示す表をHTMLで記述した場合の記述内容を示す説明図である。例えば、領域分割手段2は、HTMLのタグを解析することによって、同じTR要素内にあるTHまたはTD要素は同一の行に存在し、また各TR要素のi番目(iは1から、1つのTR要素内のTD要素数の最大値までのいずれかの値)のTHまたはTD要素は同一の列に存在すると判定することができる(実際にはCOLSPANやROWSPAN属性を考慮して各要素の対応関係を計算する必要がある)。このような各TD要素の対応関係の解析により、領域分割手段2(特徴要素検出手段3であってもよい。)は、例えば“1”、“山本洋”、“31”、“hiro001@xxx.net”、“東京都○○区△△1−2−301”、“3”が1つの組であると推定することができる。また、同一の列上に並ぶ“山本洋”、“山口陽子”等の対応関係も推定することができる。領域分割手段2(特徴要素検出手段3であってもよい。)は、表の最初のTR要素内や各TR要素の最初のTD要素、または一連のTH要素は、それぞれその表の各行や列のタイトルや識別番号であることが予測できるため、このような予測が正しいとみなして、“31”や“28”が“年齢”に属する値であると認識することができる。また、特徴要素検出手段3は、行単位または列単位の各TD要素に、特徴定義辞書で定義された“顧客情報”や“名刺情報”などいずれかの機密情報カテゴリへの分類候補となる条件となる特徴要素が含まれていれば、各行(または各列)についてその機密情報カテゴリに属する機密情報であると判定できる。例えば、図3に例示する機密情報カテゴリ“顧客情報”と図36の表の2行目とを照合すると、“山本洋”、“hiro001@xxx.net”、“東京都○○区△△1−2−301”がそれぞれ人名、Eメールアドレス、住所として合致する。従って、“顧客情報”を図36の2行目の分類候補とする条件を満たしており、特徴要素検出手段は、“顧客情報”を図36の2行目の分類候補としてよい。
このような表の1つの行を1つの部分領域として相関性評価を行なうこともできる。すなわち、図12のHTML文のうち1つのTR要素(ある<TR>タグから次の</TR>タグまでの領域)を1つの部分領域とすると、例えば2番目のTR要素について、相関性評価手段6は、機密情報カテゴリ“顧客情報”のカテゴリ領域が“山本洋”から“東京都○○区△△1−2−301”までであると判定し、そのカテゴリ領域サイズが4であると判定する。このカテゴリ領域内の特徴要素数は3である。よって、相関性評価手段6は、カテゴリ密度を3/4=0.75と計算する。また、“名刺情報”に対応するカテゴリ領域も、“山本洋”から“東京都○○区△△1−2−301”までであり、“顧客情報”のカテゴリ領域と完全に重複する。従って、“顧客情報”のカテゴリ領域におけるカテゴリ純度を、1−4/4=0と計算する。また、2番目のTR要素からなる部分領域の領域サイズは、全てのTD要素(第1列目の“1”から第6列目の“3”まで)の総数6である。従って、相関性評価手段6は、カテゴリ占度を4/6=0.67と計算する。以上のように計算したカテゴリ密度、カテゴリ純度、カテゴリ占度を用いて、2番目のTR要素からなる部分領域の機密情報カテゴリとして“顧客情報”を採用するか否かを判定すればよい。
このように、表と認識できた場合は行や列単位で特徴定義辞書との照合および相関性評価を行なうことで、機密情報カテゴリの候補判定が可能となる。
図36のアンケートデータの例において、従来技術のように行や列単位での判定を行わず、また要素間の相関性も考慮しないとすると、表全体で氏名、eメールアドレス、住所がそれぞれ3つ存在すると判定される。仮に、不完全な住所を除外できると仮定した場合、住所は2つ存在すると判定されるが、氏名とeメールアドレスはそれぞれ3つ存在するので、3件分の個人情報として認識されてしまう。本発明では、特徴要素検出手段3の処理により、eメールアドレスと年齢のみが記述されたNo.3の行、およびeメールアドレスが記述されず、住所も不完全な記述となっているNo.4の行に対しては、分類候補カテゴリの指定を行わないようにすることができる。その結果、個人情報(連絡先情報)はNo.1とNo.2の2件であると判定することができる。また、相関性評価手段6によって、No.1とNo.2の各行に対して相関性評価処理を実行して、この2つの行における分類候補を絞り込むことができる。
特徴要素検出手段3および相関性評価手段6による処理を行なった後の、機密情報分類手段7による機密情報分類処理(図4に示すステップS1511)について説明する。領域分割手段2によって分割された文書内の各部分領域について、特徴要素抽出手段3および相関性評価手段6が分類すべき機密情報カテゴリを決定すると、機密情報分類手段7は、それら各部分領域ごとの機密情報カテゴリと各機密情報カテゴリに付与された重要度の値を比較する。重要度は、各機密情報カテゴリ(category要素)毎に、importance属性として定められている。機密情報分類手段7は、各部分領域の機密情報カテゴリの重要度のうち最大の重要度を、文書の重要度(文書スコア)として定める。また、機密情報分類手段7は、各部分領域の機密情報カテゴリをそれぞれ、文書の機密情報カテゴリとして定める。
例えば、ヘッダ領域およびフッタ領域に共通の特徴定義辞書に、図3および図10それぞれに示す機密情報カテゴリが共に定義されていたとする。そして、文書参照手段1が図2に例示する文書を読み込んだとする。この場合、相関性評価処理において、ヘッダ領域31の機密文書カテゴリとして機密情報カテゴリ“社外秘”が採用される。同様に、フッタ領域34の機密文書カテゴリとしても機密情報カテゴリ“社外秘”が採用される。機密情報カテゴリ“社外秘”の重要度は、0.7である(図10参照。)。また、本文領域の特徴定義辞書に図3に示す機密情報カテゴリが定義されていたとする。この場合、相関性評価処理において、図表領域35および図表領域37がそれぞれ機密情報カテゴリ“名刺情報”に分類される。機密情報カテゴリ“名刺情報”の重要度は0.5である(図3参照)。このような結果から、機密情報分類手段7は、図2の文書全体としては機密情報カテゴリ“社外秘”および“名刺情報”に分類され、その重要度は各部分領域における重要度の最大値として0.7とする。
また、機密情報分類手段7は、1つの文書に対して同時に割り当てられてはならない機密情報カテゴリの組を予め記憶し、各部分領域の機密情報カテゴリをそれぞれ文書の機密情報カテゴリとして定めたときに、上記の組に該当する機密情報カテゴリが存在した場合には、予め定めた所定の機密情報カテゴリを優先させるようにしてもよい。例えば、同一文書内の異なる部分領域で“社外秘”と“部外秘”それぞれに分類されたとする。そして、機密情報分類手段7が、「1つの文書が同時に“社外秘”と“部外秘”それぞれに分類されてはならず、“社外秘”と“部外秘”それぞれに分類されることとなったときには“部外秘”への分類を優先させる」という情報を記憶していたとする。この場合、機密情報分類手段7は、予め記憶していた情報に基づいて、より重要度の高い“部外秘”を優先させ、文書を“部外秘”として分類する。このように、このように、機密情報分類手段7は、相互に排他的な機密情報カテゴリを検出し、そのうちのいずれかを選択する処理を行ってもよい。
また、1つの文書が同時に分類されることがない機密情報カテゴリをグループとして定義しておき、機密情報分類手段7は、個々のグループそれぞれにおいて、文書をグループ内の1つの機密情報カテゴリだけに分類してもよい。機密情報分類手段7は、各部分領域の機密情報カテゴリをそれぞれ文書の機密情報カテゴリとして定めたときに、同一グループに属する複数種類の機密情報カテゴリが存在した場合には、文書が1つのグループにつき1つの機密情報カテゴリのみに分類されるようにする。このとき、1つのグループ内で、最も重要度(importance属性の値)が高い機密情報カテゴリを優先させればよい。例えば、「社内文書」というグループを“社外秘”および“部外秘”という機密情報カテゴリで定義し、また、「個人情報」というグループを“名刺情報”、“従業員情報”、“顧客情報”という機密情報カテゴリで定義しているとする。この場合、1つの文書が、例えば“部外秘”および“顧客情報”に分類されることはあっても、“部外秘”および“社外秘”に分類されることはない。また、機密情報カテゴリがどのグループに属するかは、例えば、図10に例示する特徴定義辞書において、「<category name”社外秘” group=”社内文書” importance=”0.7”>」等のように記載して定めればよい。すなわち、グループを、category要素のgroup属性として記載すればよい。
さらに、機密情報分類手段7は、文書が属する全ての機密情報カテゴリと、そのカテゴリに分類される根拠となった特徴要素、およびその文書の重要度を示す文書スコアをそれぞれ一定の形式で列挙する。図13は、機密情報分類結果の例を示す説明図である。文書スコアの算出方法は、例えば当該文書が属する全ての機密情報カテゴリについて、特徴定義辞書の中で設定されたカテゴリ重要度(図3のimportanceの値)のうち最大のものを文書スコアの値とする。また、図13に示す“scope”の値1,4,7は、それぞれヘッダ領域、フッタ領域、本文領域を表している。また、例えば、機密情報分類手段7(他の手段であってもよい)が、文書データの複雑さ、解読の困難さを示すエントロピー値を計算し、そのエントロピー値も機密情報分類結果に含めてもよい。エントロピー値の計算方法については後述する。結果出力手段8は、機密情報分類手段によって生成された図13に示す結果出力手段8によって表示される機密情報分類結果の例を図14に示す。図14に示すように、結果出力手段8は、文書が分類されたカテゴリとともに、そのカテゴリの特徴要素として、特徴要素検出手段が検出した特徴要素を出力する。
特許文献3等に記載された従来技術では領域分割手段2、領域別辞書参照手段4、相関性評価手段6に相当する機能を備えていない。そのため、図2のような文書では「取扱注意」など特定の位置に記載することで文書の機密性を示す語の判断や、プライベートな個人情報(連絡先情報)と公開された住所等を含む名刺情報との区別ができず、辞書参照頻度も高くなるため効率も悪い。
一方、本発明では、領域分割手段2が文書を部分領域に分割し、各部分領域の特性に応じた特徴定義辞書を予め特徴定義辞書格納手段5に記憶させておく。そして、特徴要素検出手段3が、部分領域毎に特徴要素を特定して、その部分領域の機密情報カテゴリとなる候補を決定する。従って、候補を効率的に決定することができ、処理時間を迅速化することができる。また、相関性評価手段6が、特徴要素の配置に依存して決定されるカテゴリ密度、カテゴリ純度、カテゴリ占度等を用いて、部分領域が分類されるべき機密情報カテゴリを定める。従って、特徴要素の配置状態に応じて適切に、機密情報であるか否か、あるいは、どの機密情報カテゴリに分類すべきかを判定することができる。
上記の実施の形態では、特許請求の範囲に記載のカテゴリ絞り込み手段は、相関性評価手段6によって実現される。
次に、第1の実施の形態の変形例について説明する。上記の説明では、相関性評価手段6がステップS3101〜ステップS3114の処理を行う場合を示した。相関性評価手段6が先に各部分領域のカテゴリ密度、カテゴリ純度、カテゴリ占度を計算し、各種閾値との比較を機密情報分類手段7が実行してもよい。以下、この場合における相関性評価手段6および機密情報分類手段7の動作について説明する。なお、以下に示す変形例では、特許請求の範囲に記載のカテゴリ絞り込み手段は、機密情報分類手段7によって実現される。
図15は、第1の実施の形態の変形例における相関性評価手段6の動作を示すフローチャートである。本変形例では、相関性評価処理(図4に示すステップS1509)として、以下の動作を行う。まず、相関性評価手段6は、分類候補として指定された機密情報カテゴリのうちの1つを選択する(ステップS3401)。そして、選択した機密情報カテゴリに属する特徴要素のうち、部分領域内での最初と最後の特徴要素からカテゴリ領域を同定する(ステップS3402)。ステップS3401,S3402は、ステップS3101,S3102(図6参照)と同様の処理である。続いて、相関性評価手段6は、ステップS3402で定めたカテゴリ領域におけるカテゴリ密度、カテゴリ純度、およびカテゴリ占度をそれぞれ計算する(ステップS3403,S3404,S3405)。カテゴリ密度、カテゴリ純度、およびカテゴリ占度の計算処理は、並列に行っても、順番に行ってもよい。なお、相関性評価手段6は、機密情報カテゴリ、カテゴリ領域、カテゴリ密度、カテゴリ純度、およびカテゴリ占度を対応付けて、記憶装置(図1において図示せず。)等に記憶させておく。続いて、相関性評価手段6は、ステップS3402〜S3405の処理を行っていない分類候補があるか否かを判定する(ステップS3406)。そのような分類候補があれば、ステップS3401に移行し、ステップS3401以降の動作を繰り返す。そのような分類候補がなければ、相関性評価処理を終了する。
図16は、本変形例における機密情報分類手段7の動作を示すフローチャートである。本変形例では、機密情報分類処理(図4に示すステップS1511)として、以下の動作を行う。機密情報分類手段7は、文書中の未評価の部分領域(後述のステップS3502〜S3510の処理が行われていない部分領域)を1つ選択する(ステップS3501)。機密情報分類手段7は、選択した部分領域において分類候補とされた機密情報カテゴリの中から1つの機密情報カテゴリを選択する(ステップS3502)。そして、機密情報分類手段7は、選択した機密情報カテゴリに対応するカテゴリ密度が密度閾値以上であるか否かを判定する(ステップS3503)。カテゴリ密度が密度閾値未満であれば、機密情報分類手段7は、評価対象としている部分領域の分類候補から、ステップS3502で選択した機密情報カテゴリを除外する(ステップS3507)。
カテゴリ密度が密度閾値以上であるならば、機密情報分類手段7は、選択した機密情報カテゴリに対応するカテゴリ純度が純度閾値以上であるか否かを判定する(ステップS3504)。カテゴリ純度が純度閾値未満であれば、機密情報分類手段7は、ステップS3502で選択した機密情報カテゴリのカテゴリ領域と重複する他のカテゴリ領域を特定する。そして、選択した機密情報カテゴリのカテゴリ領域のカテゴリ密度が、そのカテゴリ領域と重複する他のカテゴリ領域のカテゴリ密度より高いか否かを判定する(ステップS3505)。ステップS3505で低いと判定された場合(ステップS3505におけるNO)、ステップS3507に移行する。ステップS3505で高いと判定された場合(ステップS3505におけるYES)、ステップS3506に移行する。
ステップS3506において、機密情報分類手段7は、選択した機密情報カテゴリに対応するカテゴリ占度が占度閾値以上であるか否かを判定する。カテゴリ占度が占度閾値未満であれば、ステップS3507に移行する。カテゴリ占度が占度閾値以上であれば、ステップS3502で選択した機密情報カテゴリを部分領域の機密情報カテゴリとして採用する(ステップS3508)。
ステップS3507の後およびステップS3508の後に、機密情報分類手段7は、選択した部分領域において分類候補とされた機密情報カテゴリのうち、ステップS3502以降の処理を行っていない機密情報カテゴリの有無を判定する(ステップS3509)。そのような機密情報カテゴリがあれば、ステップS3502に移行し、ステップS3502以降の処理を繰り返す。そのような機密情報カテゴリがなければ、機密情報分類手段7は、採用された機密情報カテゴリの重要度のうち、最大値を選択した部分領域の重要度とする(ステップS3510)。続いて、機密情報分類手段7は、未評価の部分領域の有無を判定し(ステップS3511)、未評価の部分領域があれば、ステップS3501以降の処理を繰り返す。未評価の部分領域がなければ、機密情報分類手段7は、各部分領域の重要度のうち、最大値を文書全体の重要度(文書スコア)とする(ステップS3512)。
実施の形態2.
図17は、本発明による機密文書検索システムの第2の実施の形態を示すブロック図である。第1の実施の形態と同様の構成部については、図1と同一の符号を付し、説明を省略する。本実施の形態における機密文書検索システムは、第1の実施の形態における各構成部の他に、検索範囲指定手段9と、特徴定義辞書拡張手段10と、リスク評価手段11とを備える。また、本実施の形態における結果出力手段12は、リスク評価手段11の処理結果を出力する。
検索範囲指定手段9は、オペレータの操作に応じて、文書格納手段13に格納されている文書集合の参照範囲を詳細に指定する。文書参照範囲1は、検索範囲指定手段9によって指定された範囲の文書を読み込む。
検索範囲指定手段9は、文書の参照先を、例えばURLまたはファイルパス名で指定するようにユーザに促すユーザインタフェース(以下、UIと記す。)を表示する。図18は、検索範囲指定手段9が表示するUIの例を示す説明図である。UIは、図18に示すように、URLを直接入力する欄を備えていてもよい。また、選択候補となるURLやファイルパス名を列挙し、列挙したURL等を参照先として有効とする(参照先として指定する)か否かを選択する選択欄を備えていてもよい。UIにおいて、参照先として1つの文書ファイルのURL等が入力された場合、検索範囲指定手段9は、そのURL等を文書参照手段1に通知し、文書参照手段は、そのURL等によって特定される文書ファイルを参照する。また、参照先としてディレクトリやドメインが入力された場合、検索範囲指定手段9は、そのディレクトリやドメインを文書参照手段1に通知する。この場合、文書参照手段1は、通知されたディレクトリの下層またはドメインの下層に格納された全ての文書ファイルを参照する。文書格納手段13が階層構造を持つディレクトリに文書を格納している場合、指定したディレクトリから何階層下までの文書を参照するのかを指定する階層数指定欄(図示せず。)をUI内に設けてもよい。この場合、検索範囲指定手段9は、階層数指定欄に入力された階層数も文書参照手段1に通知し、文書参照手段1は、指定したディレクトリから指定された階層分下がったディレクトリまでの文書を参照する。
第2の実施の形態では、検索範囲指定手段9を備えているので、機密文書であるか否か、あるいはどのような種類の機密文書であるのかを調べる対象となる文書をオペレータが指定できる。
特徴定義辞書拡張手段10は、オペレータの操作に応じて、特徴定義辞書格納手段5内の特徴定義辞書の内容を追加する処理を行う。図19および図20は、特徴定義辞書拡張手段10が表示するUIの例である。図19に例示するUIは、カテゴリ名入力欄と重要度入力欄とを備える。特徴定義辞書拡張手段10は、図19に例示するUIを表示して、カテゴリ名および重要度の入力をオペレータに促す。カテゴリ名および重要度が入力されると、特徴定義辞書拡張手段10は、図20に例示するUIを表示する。図20に例示するUIは、特徴定義辞書におけるword要素やattrib要素の入力をオペレータに促す。具体的は、word要素とattrib要素のいずれを追加するのかを指定する種類指定欄、class属性(“M”,“A”,“O”)を指定するクラス指定欄、word要素やattrib要素の値となる文字列を入力する検索テキスト入力欄を備える。また、本例では、特徴定義辞書拡張手段10は、既に入力されたカテゴリ名と重要度(本例では「個人特性」および「0.7」)を図20に示すUIの上部に表示する。
特徴定義辞書拡張手段10は、図19に例示するUIにおいて入力されたカテゴリ名および重要度をそれぞれname属性、importance属性とするcategory要素を特徴定義辞書格納手段5に追加記憶させる。また、図20に示すUIにおいて、word要素の追加を指定され、クラスおよび検索テキストが入力されると、特徴定義辞書拡張手段10は、入力されたクラスをclass属性とし、検索テキストの文字列を値として持つword要素を、追加したcategory要素内に追加する。attrib要素の追加が指定された場合も同様である。
なお、特徴定義辞書拡張手段10は、作成するcategory要素がどの部分領域に対応するのかを、オペレータから入力され、その部分領域に対応するcategory要素として、特徴定義辞書格納手段5に記憶させてもよい。
第2の実施の形態では、特徴定義辞書拡張手段10を備えているので、機密文書検索システムを導入する組織特有の機密情報カテゴリを定義することができる。換言すれば、機密文書検索システムを導入する組織が、所望の特徴定義辞書を作成することができる。
リスク評価手段11は、ディレクトリなどの特定の場所に存在する機密文書からその場所全体についての情報漏洩リスクを評価する処理を行う。リスク評価手段11は、個々の機密文書または1つ以上の機密文書を含むディレクトリやドメイン単位で情報漏洩リスクを評価する。評価態様は、例えば、リスク値の算出、リスク値に基づく文書の順序付け、色分けなどによる高リスクから低リスクまでの分類表示等の態様である。リスク評価手段11は、リスク値を算出するときに、例えば、各機密文書の文書スコアと同機密文書の文書脆弱性(後述)との値の積を文書リスク値として計算する。そして、リスク評価手段11は、同一ディレクトリや同一ドメイン内での文書リスク値の最大値をそのディレクトリやドメインのリスク値とする。
ここで文書脆弱性は、ある文書データが予めその文書データの形式や内容について知らないユーザやプログラムにとってどの程度解読し易いかを示す指標である。文書脆弱性の値は、例えば図21に示したような表および計算式によって与えることができる。リスク評価手段11は、文書脆弱性の値の算出対象の文書ファイルがプレーンテキストであったり、拡張子が”HTML”,”doc “,”xls “,”ppt ”,”pdf ”であるファイルであるときには、図21に示す表に従ってファイルタイプ判定値と解析可否判定値を定め、その積として文書脆弱性の値を計算する。解析可否判定値は、文書に対する形態素解析が成功するか否かによって決定される値である。「Microsoft Office(商標)」で作成されたDOC形式の日本語文章ファイルを例にして文書脆弱性の値を計算する例を示す。リスク評価手段11は、文書脆弱性算出対象のファイルがDOC形式のファイルであるので、ファイルタイプ判定値を0.8に決定する。また、このファイルは日本語文章ファイルであり、形態素解析を行えるので、解析可否判定値を1.0に決定する。よって、リスク評価手段11は、このファイルの脆弱性の値を0.8×1.0=0.8と計算する。この値と文書スコアとの積が文書のリスク値となる。このファイルの文書スコアが0.7であったとすると、リスク評価手段11は、この日本語文書ファイルの文書リスク値を0.7×0.8=0.56と計算する。
また、上記の各種ファイル以外のバイナリデータファイルについては、リスク評価手段11は、1からその文書(ファイル)のエントロピー値を減算した値と、0.2のうち、小さい方の値を文書脆弱性の値と決定する。ここでは、暗号化されたファイル(暗号化された文書)を例に、文書脆弱性の値の算出例を示す。リスク評価手段11は、文書脆弱性の値の算出対象の文書ファイルがバイナリデータファイルである場合、ファイルがバイナリデータファイルであることを判定する。暗号化されたファイルについては、ファイルの拡張子でなくファイル先頭部分のマジックナンバーに基づいて、「その他のバイナリデータ」に該当すると判定することができる。例えば、暗号化された文書ファイルのエントロピー値が0.993であったとする。この場合、1−0.993=0.007と、0.2とを比較すると0.007の方が小さい。よって、リスク評価手段11は、文書脆弱性の値を0.007とする。なお、既に述べたように、エントロピー値は、文書データの複雑さ、解読の困難さを示す値である。
また、リスク評価手段11は、エントロピー値(Hcとする。)を以下の式によって計算すればよい。
エントロピー値は、0<Hc≦1となる値として求められる。また、式1において、nは、ある1つのコンテンツ(文書)に含まれる互いに独立した要素eiの総数である。文書を構成するデータを同一の長さで分割した場合において、その長さに分割された個々の分割要素をeiとする。例えば、文書がビット列で構成されているものとし、その文書を2ビットの長さで分割するとする。この場合、分割によって得られた個々の2ビットのデータがeiとなる。また、「互いに独立した要素eiの総数」とは、eiの取りうる値の種類の数である。例えば、上記の2ビットデータを例にすると、eiの取りうる値は「00」、「01」、「10」、「11」の4種類である。よって、「互いに独立した要素eiの総数」は「4」となる。
また、式1において、P(ei)は、要素eiがコンテンツ(文書)内に出現する確率であり、要素eiの出現回数を、総サンプル数で除算した値として求めればよい。総サンプル数は、分割によって得られたeiの数である。ただし、総サンプル数の最大値は、例えば1000とする。
以上のように、例えばあるディレクトリ内で検出された全ての機密文書について文書リスク値を求め、その最大値をそのディレクトリのリスク値とすることができる。算出されたリスク値は、その対象となったディレクトリやドメイン、または文書ファイルの位置と、その中で最大の文書リスク値を示した機密文書のファイル名および機密情報カテゴリなどと共に、例えば図22に示したような形式で結果出力手段12が出力(例えば表示出力)する。図22では、ディレクトリやURL毎にリスク値を表示する表示態様を示している。図22に示すように、ディレクトリ等における主要機密文書名や、その機密情報カテゴリ、機密文書数を表示してもよい。なお、図22に示すレベルは、文書を厳重に保護、管理すべき度合いを段階的に示す値であり、レベルが高いほど、アクセス可能な者を制限する等の管理が必要になることを意味する。レベルは、例えば、機密情報カテゴリと対応付けて定めておいてもよい。あるいは、主要機密文書に含まれる「住所」等の特徴要素の数に応じてレベルを決定してもよい。また、図22では、各ディレクトリやURLをリスク値が高い順に並べて表示している。このとき、リスク値に応じて各ディレクトリやURLを色分けして表示してもよい。例えば、リスク値が0.7以上のディレクトリを表す行は赤色、リスク値が0.4〜0.7のディレクトリを表す行は黄色、その他の行は白色で表示するなどのように色分けしてもよい。
なお、検索範囲指定手段9が、参照先の一部として1つの文書を指定した場合には、その文書の文書リスク値を結果出力手段12が出力する。
以上の説明で用いたリスク値計算方法や出力形式は例示であり、ディレクトリやドメイン単位でのリスク値を算出可能な他の計算方法や異なる出力形式を用いてもよい。同様に、以上の説明で用いたUIも例示であり、UIを他の表示態様で表示してもよい。
従来技術はリスク評価手段9を備えていないため、機密文書を含むディレクトリの単位で検出結果を得られず、同様の機密文書が多数蓄積されたディレクトリがある場合(アンケート調査結果のファイルを溜めておくディレクトリ等)には、ユーザは文書単位で長い機密情報のリストを見なければならない。それに対し、本発明では、リスク評価手段9を備えているので、機密文書の格納場所(ディレクトリやURL等によって特定される格納場所)毎に、格納されている文書のリスク値をオペレータに伝えることができる。よって、オペレータは、効率の良い情報セキュリティ監査を行なうことができる。
第2の実施の形態では、第1の実施の形態に検索範囲指定手段9と、特徴定義辞書10と、リスク評価手段11とを追加した構成となっている。第1の実施の形態に、検索範囲指定手段9、特徴定義辞書10、およびリスク評価手段11のうちのいずれか1つまたは2つの手段を追加した構成であってもよい。
また、上記の実施形態では、検索範囲指定手段9が文書の格納場所を指定するUIを表示する場合を説明した。検索範囲指定手段9は、文書格納手段13として用いられる装置における脆弱な文書格納場所を文書参照手段1に通知する装置であってもよい。例えば、文書格納手段13として用いられる装置のセキュリティ状態を検査し、脆弱な文書格納場所を検知した場合に、その文書格納場所を文書参照手段1に通知するセキュリティ設定検証システムによって、検索範囲指定手段9を実現してもよい。また、文書格納手段13において不正アクセスがあった文書格納場所(例えば、ディレクトリ等)の情報を記憶するデータベースを備え、データベースが記憶する情報に基づいて、不正アクセスがあった文書格納場所を文書参照手段1に通知する装置によって、検索範囲指定手段9を実現してもよい。この場合、脆弱と判定される文書格納場所や実際に不正アクセスされた文書格納場所に機密文書が格納されてしまっているか、機密文書が格納されてしまっているとすると、その機密文書カテゴリは何であるか、または、その文書格納場所のリスク値がいくつであるか等を調べることができる。また、検索範囲指定手段9は、脆弱と判定される文書格納場所や不正アクセスがあった文書格納場所以外の文書格納場所を文書参照手段1に通知してもよい。この場合、脆弱と判定される文書格納場所や不正アクセスがあった文書格納場所以外の文書格納場所に、機密文書が格納されているか否かなどを調べることができる。検索範囲指定手段9が通知した文書格納場所における文書の検索および分類結果により、文書格納手段13として用いられる装置に適切なセキュリティポリシーが適用されているか否かを調べることができる。例えば、脆弱と判定される文書格納場所に文書格納場所に機密文書が格納されている場合や、脆弱と判定されなかった文書格納場所に機密文書が存在しない場合に、不適切な文書格納場所に機密文書を格納してしまったという可能性の他に、機密文書の格納場所自体は適切であるが文書格納手段13として用いられる装置に不適切なセキュリティポリシーが適用されているという可能性を、管理者は調べることができる。
実施の形態3.
図23は、本発明による機密文書検索システムの第3の実施の形態を示すブロック図である。第1の実施の形態と同様の構成部については、図1と同一の符号を付し、説明を省略する。本実施の形態における機密文書検索システムは、第1の実施の形態における各構成部の他に、ポリシー生成手段14を備える。
ポリシー生成手段14は、機器に適用されるセキュリティポリシーに記述される項目(例えば、ネットワークドメイン、IPアドレス、またはユーザID)の集合を表す各グループと、機密情報カテゴリをそれぞれ列挙して、グループと機密情報カテゴリの選択を促すUIを表示する。そして、UIに入力された情報を元に、オペレータに理解し易く記述されたセキュリティポリシーを作成する。そして、ポリシー生成手段14は、そのセキュリティポリシーと、機密文書の機密文書カテゴリとを用いて、機器が解釈可能なセキュリティポリシーを作成する。
図24は、ポリシー生成手段14が表示するUIの例である。本実施の形態では、結果出力手段8は、ポリシー生成手段14に、機密文書と判定された文書のファイル名およびその格納場所と、その文書の機密情報カテゴリを出力する。ポリシー生成手段14は、結果出力手段8が出力した各機密情報カテゴリを、図24に示すカテゴリ表示欄3301に表示し、オペレータに機密情報カテゴリの選択を促す。また、ポリシー生成手段14は、UI内にグループの選択を促すための欄3302,3303を表示する。図24では、各種ユーザのグループが選択される場合の例を示している。欄3302は、ユーザの部署(例えば「社内」、「部内」等)の一覧を表示する。欄3303は、ユーザの種類(例えば、「社員」、「課長以上」等)の一覧を表示する。欄3302および欄3303で部署および社員の種類が選択されことにより、ポリシー生成手段14は、グループを特定する。例えば、欄3302で「社内」が選択され、欄3303で「課長以上」が選択されると、「社内の課長以上」というグループを特定する。
さらに、ポリシー生成手段14は、カテゴリ表示欄3301で選択された機密文書カテゴリと、特定したグループとにより、セキュリティポリシーを作成する。例えば、カテゴリ表示欄3301で「従業員情報」という機密情報カテゴリが選択された場合、『「従業員情報」は、「社内の課長以上」からのみアクセスを許可する』等のセキュリティポリシーを生成する。「アクセスを許可する」としたが、「アクセスを禁止する」というセキュリティポリシーを生成してもよい。ポリシー生成手段14は、UI内のポリシー表示欄3304に作成したセキュリティポリシーを表示する。UIで選択された項目に基づいて作成されたセキュリティポリシーは、『「従業員情報」は、「社内の課長以上」からのみアクセスを許可する』等のように理解容易に記述されている。UIで選択された項目に基づいて作成されたセキュリティポリシーを上位セキュリティポリシーと呼ぶことにする。セキュリティポリシーが適用される機器は、上位セキュリティポリシーの内容を直接解釈できるわけではない。
また、ポリシー生成手段14は、UIにおいて選択され得る各種グループと、機器が解釈可能なセキュリティポリシーに記述される項目であって各種グループに属する項目との対応関係を示す情報を記憶する記憶装置(図示せず。)を備える。例えば、機器が解釈可能なセキュリティポリシーにユーザIDが記述されるとする。この場合、ポリシー生成手段14は、「社内の課長以上」、「社内の部長以上」等の各種グループと、そのグループに属するユーザのユーザIDとを対応付けた情報を記憶装置(図示せず。)に予め記憶する。この情報は、例えば、管理者によって予め用意される。ポリシー生成手段14は、この情報を用いて、上位セキュリティポリシー内のグループをユーザID等に置き換え、また、上位セキュリティポリシー内の機密情報カテゴリをキーとして、文書のファイル名およびその格納場所を追加することにより、機器に直接解釈可能なセキュリティポリシーを生成する。
以下に、セキュリティポリシーの生成処理の具体例を示す。結果出力手段8が、「//host1/home/hogehoge/data/group/renraku.txt」を、機密文書と判定された文書のファイル名およびその格納場所として出力したとする。また、結果出力手段8は、その機密文書の機密文書カテゴリとして“従業員情報”を出力したとする。そして、ポリシー生成手段14が、図24に例示するUIで選択された項目に基づいて、『「従業員情報」は、「社内の課長以上」からのみアクセスを許可する』という上位セキュリティポリシーを作成したとする。「//host1/home/hogehoge/data/group/renraku.txt」は、従業員情報に分類されるので、ポリシー生成手段14は、『「//host1/home/hogehoge/data/group/renraku.txt」は「従業員情報」であり、「社内の課長以上」からのみアクセスを許可する』という情報を生成する。さらに、ポリシー生成手段14は、「社内の課長以上」というグループを具体的なユーザIDの集合に置き換える。そして、機器が解釈可能なセキュリティポリシーであって、そのユーザIDから「//host1/home/hogehoge/data/group/renraku.txt」にアクセスを許可する旨のセキュリティポリシーを生成する。
ユーザID(または、ネットワークドメイン、IPアドレス)は、オペレータにとって読みにくいデータであるが、それらをグループ化した「社内の課長以上」等のグループは、オペレータにとって理解しやすい。ポリシー生成手段14は、図24に例示するUIにより、そのようなグループの指定を促して、オペレータにとって理解容易な上位セキュリティポリシーを生成する。そして、ポリシー生成手段14は、上位セキュリティポリシーに記述されたグループを、機器が解釈可能なセキュリティポリシーにおいて必要となる具体的なユーザID(ネットワークドメイン、IPアドレス等であってもよい。)に置き換え、セキュリティポリシーを生成する。従って、オペレータにユーザID等の読みにくいデータを意識させずに、機器が解釈可能なセキュリティポリシーを生成することができる。この結果、オペレータにとっては、セキュリティポリシーを効率的に生成することができる。また、ポリシー生成手段14は、結果出力手段8が出力した各機密情報カテゴリを、図24に例示するカテゴリ表示欄3301に列挙して表示する。従って、特徴定義辞書にはカテゴリとして記述されているが、文書格納手段13に格納された文書のカテゴリに該当しないカテゴリについてはカテゴリ表示欄3301に表示されない。よって、そのような不要なカテゴリの選択をオペレータに促さずに済み、また、そのような不要なカテゴリに基づいて上位セキュリティポリシーを生成しなくて済む。
また、第1の実施の形態と同様に、文書が機密情報であるか否か、あるいは、機密文書をどの機密情報カテゴリに分類すべきかを、特徴要素の配置状態に応じて適切に判定することができる。従って、結果出力手段8は、機密文書でない文書を機密文書として出力することはなく、ポリシー生成手段9は、機密文書でない文書に対するアクセス制御を規定するセキュリティポリシーを生成することが防止される。この結果、セキュリティポリシーが過剰に生成されることが防止され、セキュリティポリシーの過剰生成に伴う業務効率の低下を防止することができる。