(57)【要約】【課題】利用者に与えられた権限の範囲内での無差別的な情報取得行為からデータベース中のデータを防衛できるようにする。【解決手段】本来の用途（業務）では決して参照されることの無いダミーデータをデータベース中に含ませる。このダミーデータを地雷データと称す。この地雷データへのアクセスが発生した場合、データベース管理装置は、不正なデータベースアクセスと判断し、処理を中止して、該当利用者端末へエラーを返す等、あらかじめ定義された内容の対処を行うことで、データベース利用者の権限逸脱行為を防止する。【選択図】図１
2006350421.tif 000002
【特許請求の範囲】
【請求項１】
本来用途では参照されることの無いダミーデータをデータベース中に含ませておき、利用者からの前記データベースへのアクセスを制御・実行する機能を備えたデータベース管理装置は、前記ダミーデータへのアクセスが発生した場合、不正なデータベースアクセスと判断することを特徴とするデータベース管理方法。
【請求項２】
前記データベース管理装置は、前記ダミーデータへのアクセスにより不正と判断されたデータベースアクセスについて、処理を中止することを特徴とする請求項１記載のデータベース管理方法。
【請求項３】
前記データベース管理装置は、前記ダミーデータへのアクセスによる不正データベースアクセスの検知後、データベースの他のデータへのアクセスも含めて、該不正データベースアクセスを行った利用者による以降のアクセスを制限することを特徴とする請求項１記載のデータベース管理方法。
【請求項４】
前記データベース管理装置は、前記ダミーデータヘのアクセスによる不正データベースアクセスの検知後、他の利用者によるアクセスも含めて、データベースに対する以降のアクセスを制限することを特徴とするデータベース管理方法。
【請求項５】
前記データベース管理装置は、データベース管理者からの指示を受けて、前記データベースに対するアクセス制限の一部あるいは全部を解除することを特徴とする請求項３もしくは４記載のデータベース管理方法。
【請求項６】
各種データが保管されるデータベースと、利用者からの前記データベースへのアクセスを制御・実行する機能を備えたデータベース管理装置とからなるデータベースシステムにおいて、
前記データベース中に本来用途では参照されることの無いダミーデータを含ませ、
前記データベース管理装置は、前記ダミーデータへのアクセスが発生した場合、不正なデータベースアクセスと判断する手段を有することを特徴とするのデータベースシステム。
【請求項７】
前記データベース管理装置は、前記ダミーデータヘのアクセスにより不正と判断されたデータベースアクセスについて、処理を中止し、当該利用者に対して処理エラーを応答する手段をさらに有することを特徴とする請求項６記載のデータベースシステム。
【請求項８】
前記データベース管理装置は、前記ダミーデータヘのアクセスによる不正データベースアクセスの検知後、データベースの他のデータへのアクセスも含めて、該不正データベースアクセスを行った利用者による以降のアクセスを制限する手段をさらに有することを特徴とする請求項６記載のデータベースシステム。
【請求項９】
前記データベース管理装置は、前記ダミーデータヘのアクセスによる不正データベースアクセスの検知後、他の利用者によるアクセスも含めて、該データベースに対する以降のアクセスを制限する手段をさらに有することを特徴とする請求項６記載のデータベースシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベース中のデータを保護する技術に係り、特に利用者による、自身に与えられた権限の範囲内での無差別的な情報取得を行う行為から、データベース中のデータを防御するデータベース管理方法及びそれを適用したデータベースシステムに関する。
【背景技術】
【０００２】
企業などの組織では、顧客情報等のデータベースを構築して管理していることが多い。近年、これらのデータベースの情報が組織外部へ不正に流出する情報漏洩事件が頻発している。特に顧客情報のような個人情報が漏洩し、さらに、漏洩した情報が悪用されることは、顧客の権利が侵害されるだけでなく、企業のブランドや顧客からの信用に大きな傷がつくことになる。このように、組織内部のデータベースの内容が漏洩することは、その組織にとって大きな損害を被ることになることから、その防止は非常に重要であると言える。
【０００３】
これらの事件の原因としては、組織外部からの不正侵入によるものもあるが、顧客情報に対するアクセス権限を与えられた正規利用者による権限逸脱行為が大半になっているのが実態である。ここで言う権限逸脱行為とは、自身の業務に必要な範囲を超えて、業務に必要の無い情報にアクセスすることを指し、権限が与えられている情報の全てを無差別的に取得することが多い。この問題の本質は、業務に必要の無い顧客情報へのアクセスが許可されていることにあり、その対策として一般にはアクセス制御と監査が行われている（例えば、特許文献１参照）。
【０００４】
データベース管理システムは通常、アクセス制御機能を備えているため、利用者一人一人に対し、業務で必要となっている顧客情報に対してのみアクセス権限を与えるよう、細かい設定を行うことが可能である。一方の監査では、データベースの利用を履歴として記録し、その記録を定期的に参照することで、利用者の権限逸脱行為の有無を確認することが可能である。
【０００５】
【特許文献１】特開２００４−１０２５２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
前述のデータベースアクセス制御と監査は、正規利用者の権限逸脱行為に対して一定の効果がある。しかしながら、実際の運用を鑑みると次のような問題があり、必ずしも十分とは言えない。
【０００７】
アクセス制御機能を、実際の業務内容に合わせて厳密に運用した場合は、アクセス権限の変更が頻発し、データベース管理者の負荷が急激に増すばかりか、設定ミスによる弊害も発生しかねない。そのため多くの組織では実際には、利用者に与えるアクセス権限を広めにし、静的に設定してしまっている。例えば、営業部門における顧客対応データベースにおいて、個々の営実マンに対して、自身が担当となっている顧客情報だけをアクセス可能にする設定では、緊急で発生した顧客対応に支障が出る可能性があるため、実際のアクセス設定としては担当エリア全体の顧客情報がアクセス可能にしていることが多いのである。このため、現状のアクセス制御機能では、顧客情報データベースの正規利用者である営業マンによる、担当エリア内顧客情報の無差別的な取得が防げているとは言い難い。
【０００８】
一方、定期的に監査を行うことは、直接的な効果である正規利用者による権限逸脱行為の発見のほか、権限逸脱行為の抑止という間接的な効果もある。しかし、監査での発見は事後対応であるため、情報の漏洩は起きてしまっていることを意味し、防止にはならない。情報の漏洩が発生してから、発見されるまでの時間が長くなればなるほど、情報漏洩による被害も大きくなる可能性が高くなる。また、抑止についても、権限逸脱行為が発見されることによるデメリット（罰等）よりも、情報を取得することによるメリット（報酬等）が大きい場合には、その効果は小さくなり、こちらも十分な防止策とは言い難い。
【０００９】
本発明は、従来のデータベースアクセス制御と監視の前述のような課題を解決し、利用者自身に与えられた権限の範囲内での無差別的な情報取得行為からデータベース中のデータをより安全に防衛することが可能なデータベース管理方法及びデータベースシステムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明では、本来用途では決して参照されることの無いダミーデータ（以降、地雷データと称す）をデータベース中に含ませる。利用者からのデータベースへのアクセスを制御・実行する機能を備えたデータベース管理装置は、この地雷データヘのアクセスが発生した場合、不正なデータベースアクセスと判断し、処理を中止するなど、あらかじめ定義されたロック内容の対処を行うことで、データベース利用者の権限逸脱行為を防止する。
【発明の効果】
【００１１】
本発明によれば、データベースのアクセス制御設定は従来のアクセス制御や監視を用いた運用方法と同様に、広めかつ静的な内容にすることが可能である。その上で、正規利用者の無差別的な情報取得の検知と防御を可能としている。地雷データにさえアクセスしなければ、情報の取得が可能とも言えるが、実際にはどこに設けられたか分からない地雷データを避けつつ、複数回に分けてデータを取得しなければならないため、困難性は高いと言える。
【００１２】
また、ロックの種別を使い分けることで、不審な挙動を行った利用者に着目した行動制限だけでなく、狙われたデータに着目したアクセス制限が可能である。特に、狙われたデータに着目したアクセス制限を実施することで、内部の正規利用者による権限逸脱行為だけでなく、外部からの侵入者による不正行為に対しても有効な対策となる。これにより、不正なアクセスがあった事実を管理者が認知し、対処を行うまでの時間でも、システムが自身でデータを防御することが可能となり、従来の監査と比較して安全性は高くなる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について図面を参照して説明する。
【００１４】
図１は本発明の一実施の形態の全体的システム構成例を示したものである。図１において、１０１はデータベース利用者、２０１はデータベース管理者、１００はデータベース利用者が操作を行う利用者端末、２００はデータベース管理者２０１が操作を行う管理者端末、３００はデータベースシステムとしてのサーバホストである。利用者端末１００や管理者端末２００とサーバホスト３００とはＬＡＮ，ＷＡＮなどのネットワークを通して接続されている。
【００１５】
サーバホスト３００はデータベース３２０を管理するデータベース管理装置３１０、及び、各種データが保管されるデータベース３２０からなる。ここで、データベース管理装置３１０は要求解析・応答機構３１１、ロック確認機構３１２、データベースアクセス機構３１３、地雷確認機構３１４から構成される。データベース３２０には、地雷データをどこに設定しているかについて記述した地雷管理表３２１、地雷データに対するアクセスを契機としたロック（データベースアクセス制限）について記述したロック管理表３２２、データベース利用者が業務で利用するデータを含む業務データ表３２３が含まれる。なお、地雷管理表３２１とロック管理表３２２はデータベース管理装置３１０内に保持することでもよい。
【００１６】
図３は地雷管理表３２１の構成例であり、“表名、属件名、地雷値、ロック種別”の項目で構成される。表名と属性名には、地雷データを設置する場所を指す表と属性の名称を格納する。地雷値には、地雷となるデータの値を格納する。ロック種別には、該当トランザクションのロールバック、または、該当表や該当ユーザに対するロックなど、地雷データに対するアクセスが発生した際の対処方法を指す識別子を格納する。図６にロック種別とロックの内容の一例を示す。なお、本地雷表３２１に登録される地雷データの“表名、属性名、値”は、地雷データ以外のデータと一致しないものであることが必要になるため、“属性名”には、その表内のキー属性を用いることが望ましい。
【００１７】
図４は、ロック管理表３２２の構成例であり、“ロック種別、対象識別子、利用者識別子”の項目で構成される。ロック種別には、図３の地雷管理表３２１のロック種別と同等の識別子を格納する。対象識別子には、地雷データに対するアクセスを契機に生じたロックの対象を指す識別子を格納する。利用者識別子には、地雷データに対するアクセスを行った利用者の識別子を格納する。
【００１８】
図５は、業務データ表３２３の構成例であり、“顧客識別子、氏名、住所、電話番号、生年月日、営業記録”の項目で構成される。業務データ表自体は、何も特別なものではないが、この業務データ表３２３中に、本来の用途（業務）では決して参照されることはないダミーデータを地雷データとして含ませる。図５では、顧客識別子５００５のデータが地雷データである。
【００１９】
図１に戻り、データベース管理装置３１０は、利用者端末１００とデータベース３２０との間に位置して、利用者１０１からのデータベース３２０への接続要求に対するアクセス制御、検索や更新の操作要求を実行する機能を司る。要求解析・応答機構３１１は、利用者喘末１００との通信を行い、利用者１０１からの要求受付と応答を行う機能、利用者１０１から受け付けた要求内容に含まれる表や項目の内容を解析し、ロック確認機構３１２に渡す機能、および、地雷確認機構３１４から利用者要求の処理結果を受け取る機能を有する。ロック確認機構３１２は、要求解析・応答機構３１１が解析した要求内容を受け取る機能、ロック管理表３２２を参照し、要求内容がロックに該当するかを確認する機能、および、データベースアクセス機構３１３へ利用者の要求を渡す機能を有する。データベースアクセス機構３１３は、ロック確認機構３１２から利用者の要求を受け取る機能、利用者のデータベース３２６に対する要求を実行する機能、および、利用者要求の処理結果を地雷確認機構３１４へ渡す機能を有する。地雷確認機構３１４は、データベースアクセス機構３１３から利用者要求の処理結果を受け取る機能、地雷管理表３２１を参照し、利用者要求の処理結果に地雷データが含まれるかを確認する機能、地雷管理表３２１の内容に従ってロック管理表３２２へロックを登録する機能、および、利用者要求の処理結果を要求解析・応答機構３１１へ渡す機能を有する。
【００２０】
次に、本発明のデータベース管理方法を適用したデータベースシステムの全体的動作について説明する。
【００２１】
まず、本発明のデータベースシステムを利用する前に、データベース管理者２０１は管理者端末２００から、サーバホスト３００に対して以下の操作を行う。
（ｉ）地雷データの登録
地雷データとして取り扱うデータを用意し、地雷管理表３２１へ“表名、属件名、値”を登録する。さらに、この地雷データに対するアクセスが発生した際に行う対処の種別を決定し、地雷管理表３２１の“ロック種別”として登録する。
（ii）地雷データの挿入
前述の手順で地雷管理表３２１に登録した地雷データの内容に合わせ、地雷データを、該当の業務データ表３２３へ追加する。この際、地雷管理表３２１の“属性名”に登録した以外の属性には、任意の値を用いる。
【００２２】
次に、データベース利用者１０１がデータベース３２０をアクセスした場合の動作について説明する。図２は、この場合のデータベース管理装置３１０の処理フローの一例である。
【００２３】
データベース利用者１０１が、利用者端末１００からサーバホスト３００に対して、業務データ表３２３のデータの取得を要求する。データベース管理装置３１０の要求解析・応答機構３１１は、利用者からの要求内容を受け付け（ステップ１００１）、その内容を解析する（ステップ１００２）。該要求解析・応答機構３１１は、解析により抽出した表や項目の名称や値の内容を、要求元の利用者識別子とともにロック確認機構３１２へ渡す。
【００２４】
ロック確認機構３１２は、要求解析・応答機構３１１から要求の内容と利用者識別子が渡されると、その内容がロック管理表３２２に登録されているかを確認する（ステップ１００３）。そして、ロック管理表３２２に登録されていた場合、ロック確認機構３１２は、該当要求の処埋を中止し、要求解析・応答機構３１１に対してエラーを返す（ステップ１００４）。要求解析・応答機構３１１も同様に、利用者端末１００ヘエラーを通知する（ステップ１００５）。ロック管理表３２２に登録されていない場合、ロック確認機構３１２は、要求元の利用者識別子とともに、該当要求の処理実行をデータベースアクセス機構３１３へ依頼する（ステップ１００６）。
【００２５】
データベースアクセス機構３１３は、ロック確認機構３１２から受け取った要求を業務データ表３２３に対して行い、その結果を要求元の利用者識別子とともに地雷確認機構３１４へ渡す（ステップ１００７）。地雷確認機構３１４は、データベースアクセス機構３１３から受け取った内容の一部が、地雷管理表３２１に登録されているかを確認する（ステップ１００８）。地雷管理表３２１に登録されていた場合、地雷確認機構３１４は該当要求の処理を中止し、要求解析・応答機構３１１に対してエラーを返す（ステップ１００９）。さらに、地雷確認機構３１４は地雷管理表３２１に記述されたロック種別の内容に従い、ロック管理表３２１ヘロックの登録を行う（ステップ１０１０）。地雷管理表３２１０に登録されていない場合、地雷確認機構３１４は要求解析・応答機構３１１に対して、データベースアクセス機構３１３から受け取った要求処理結果をそのまま返す（ステップ１０１１）。要求解析・応答機構３１１は、地雷確認機構３１４から受け取ったエラーまたは要求処理結果を、利用者端末１００送信する（ステップ１０１２）。
【００２６】
次に、地雷管理表３２１のロックの確認と解除について説明する。データベース管理者２０１は管理者端末２００から、サーバホスト３００に対して以下の操作を行う。データベース管理装置３１０の要求解析・応答機構３１１を介し、ロック管理表３２２を参照することで、現在実施されているロックの内容を確認する。その際、業務データ表３２３内の地雷データに対するアクセスをどの利用者が行ったかを把握するには、ロック管理表３２２の利用者識別子を参照する。これらの中で、不要になったロックを解除するには、データベースアクセス機構３１３を介し、ロック管理表３２２からの該当ロックに関するデータを削除をする。
【００２７】
＜実施例＞
図１において、サーバホスト３００のデータベース管理装置３１０は、ＳＱＬ言語を解釈するリレーショナルデータベース管理システムとし、データベース３２０はリレーショナルデータベースとする。
【００２８】
地雷管理表３２１は図３の状態とする。ロック管理表３２２は図４の形式で、最初はデータが無い状態とする。業務データ表３２３は表名が“顧客”で、図５の状態とする。地雷管理表３２１およびロック管理表３２２のロック種別には、図６の値を用いるものとし、そのロックの内容は図６に記述の内容とする。
【００２９】
ここで、図３に記述された地雷管理表３２１の内容の意味は、業務データ表“顧客”の属性“顧客識別子”の値が“５００５”のデータは地雷データであり、本データへのアクセスが発生した際には、ロック種別が“ＴＡＢＬＥ＿ＵＳＥＲ”であるから、該当トランザクションのロールバックを行った後、該当利用者による業務データ表“顧客”へのアクセスについてロックする。」となる。
【００３０】
データベース利用者の利用者識別子は“ｓａｉｔｏｕ”とし、現在は、顧客識別子が“５００１”と“５００２”の顧客情報に対するアクセスだけが必要な業務を担当しているものとする。一方、データベース管理システムのアクセス制御内容では、“ｓａｉｔｏｕ”に対して、業務データ表“顧客”の全データに対するアクセス権限が付与されているものとする。
【００３１】
ここで、データベース利用者“ｓａｉｔｏｕ”が、業務に必要な範囲を逸脱し、業務データ表“顧客”で管理されている全ての顧客情報を取得しようとした場合の動作について説明する。
【００３２】
データベース利用者“ｓａｉｔｏｕ”が、利用者端末１００からサーバホスト３００に対して全顧客情報の取得を要求する。データベース管理装置３１０の要求解析・応答機構３１１は、この要求を受け付けて内容を解釈し、対応するＳＱＬ文“ＳＥＬＥＣＴ  ＊  ＦＲＯＭ  顧客；”を生成する。このＳＱＬ文は、利用者識別子“ｓａｉｔｏｕ”とともにロック確認機構３１２に渡される。ロック確認機構３１２はロック管理表３２２に業務データ表“顧客”、および、データベース利用者“ｓａｉｔｏｕ”に該当するロックが存在しないことを確認してから、データベースアクセス機構３１３へ利用者識別子とＳＱＬ文を渡す。データベースアクセス機構３１３は、受け取ったＳＱＬ文を実行し、業務データ表“顧客”の全ての内容を取得する。ここでは、図５の業務データ表３２３内の顧客識別子５００１〜５００５の全ての内容を取得する。この内容は、利用者識別子とともに地雷確認機構３１４へ渡される。
【００３３】
地雷確認機構３１４は、データベースアクセス機構３１３から受け取ったデータベースの内容（業務データ表３２３）の一部が、地雷管理表３２１に含まれているかを確認し、ここでは顧客識別子“５００５”の地雷データが含まれていることを検出する。そこで、地雷確認機構３１４は、本アクセスが権限逸脱の不正な要求と判断し、地雷管理表３２１に記載のロック種別“ＴＡＢＬＥ＿ＵＳＥＲ”の内容に従った対処を行う。具体的には、要求解析・応答機構３１１へエラーを通知してトランザクションのロールバック処理を行ったのち、ロック管理表３２２に対して図４に記述の内容を追加する。要求解析・応答機構３１１は、同様に利用者端末１００へエラーを通知する。
【００３４】
このように、データベース利用者“ｓａｉｔｏｕ”が本来の業務に必要な範囲を逸脱して業務データ表３２３の全ての顧客情報を取得しようとした場合、当該利用者端末１００へはエラーが通知されるため、データベース利用者“ｓａｉｔｏｕ”へ顧客情報が渡されることが防御できたことになる。
【００３５】
次にロック管理表３２２に対して図４の記述の内容が追加された後、引き続きデータベース利用者“ｓａｉｔｏｕ”が業務データ表“顧客”で管理されている顧客情報を取得しようとした場合の動作について説明する。
【００３６】
データベース利用者“ｓａｉｔｏｕ”が、利用者端末１００からサーバホスト３００に対して、自身が営業担当をしている顧客識別子“５００１”の顧客情報の取得を要求したとする。データベース管理装置３１０の要求解析・応答機構３１１は、この要求を受け付けて内容を解釈し、対応するＳＱＬ文“ＳＥＬＥＣＴ  ＊  ＦＲＯＭ  顧客  ＷＨＥＲＥ  顧客識別子＝‘５００１’；”を生成する。このＳＱＬ文は、利用者識別子“ｓａｉｔｏｕ”とともにロック確認機構３１２に渡される。ロック確認機構３１２はロック管理表３２２に業務データ表“顧客”、および、データベース利用者“ｓａｉｔｏｕ”に該当するロックが存在するかを確認する。ここでは、ロック管理表３２２に記述されたロック内容と合致するため、ロック確認機構３１２は、本アクセスが権限逸脱の不正な要求と判断して処理を中断し、要求解析・応答機構３１１ヘエラーを通知する。要求解析・応答機構３１１は、同様に利用者端末１００へエラーを通知する。
【００３７】
このように、ロックが生成された後、引き続きデータベース利用者が正当な要求を行った場合、当該利用者端末１００へはエラーが通知されるため、過去に権限逸脱行為を行った、つまり、地雷データへのアクセスを行ったデータベース利用者“ｓａｉｔｏｕ”は、データベース管理者がそのロックを確認、解除するまでデータ表“顧客”へのアクセスが一切遮断されることになる。本動作により、不審な行動があったデータベース利用者“ｓａｉｔｏｕ”の権限を一時的に制限し、他の権限逸脱行為も防止することができる。
なお、本発明は、実施例で挙げたロック種別のほか、図６に記述のような他のロック種別を定義、利用することで、不審な行動があったデータベース利用者の行動制限、および、不審なアクセスがあったデータ表に対するアクセス制限が可能である。
【００３８】
また、実施例で挙げたリレーショナルデータベースシステムのほか、データベース管理システムとしてオブジェクトデータベース管理システムや、データベースとして独自のファイル形式を用いたデータベース管理システムでも、本発明を実施する形態として可能である。
【００３９】
また、図１で挙げたシステム構成のほか、利用者端末、管理者端末、サーバホストの全てまたは一部を、同一の端末上に実装する形態も、本発明を実施する形態として可能である。
【００４０】
さらに、実施例で挙げた顧客情報のほか、業務データ表としては社員情報や技術情報などの他の内容を用いること、および複数種類の業務データ表を用いることも本発明を実施する形態として可能である。
【００４１】
なお、図１で示したデータベース管理装置における各部の一部もしくは全部の処理機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができること、あるいは、図２で示した処理手順をコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができることは言うまでもない。また、コンピュータでその処理機能を実現するためのプログラム、あるいは、コンピュータにその処理手順を実行させるためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、ＦＤ、ＭＯ、ＲＯＭ、メモリカード、ＣＤ、ＤＶＤ、リムーバブルディスクなどに記録して、保存したり、提供したりすることができるとともに、インターネット等のネットワークを通してそのプログラムを配布したりすることが可能である。
【図面の簡単な説明】
【００４２】
【図１】本発明の一実施の形態のシステム構成図。
【図２】データベース管理装置の処理フロー図。
【図３】地雷管理表の構成例を示す図。
【図４】ロック管理表の構成例を示す図。
【図５】業務データ表の構成例を示す図。
【図６】ロック種別とロック内容の対応図。
【符号の説明】
【００４３】
１００  利用者端末
１０１  データベース利用者
２００  管理者端末
２０１  データベース管理者
３００  サーバホスト（データベースシステム）
３１０  データベース管理装置
３１１  要求解析・応答機構
３１２  ロック確認機構
３１３  データベースアクセス機構
３１４  地雷確認機構
３２０  データベース
３２１  地雷管理表
３２２  ロック管理表
３２３  業務データ表
【図１】
2006350421.tif 000003
【図２】
2006350421.tif 000004
【図３】
2006350421.tif 000005
【図４】
2006350421.tif 000006
【図５】
2006350421.tif 000007
【図６】
2006350421.tif 000008