説明

SQLマスキング装置及び方法

【課題】既存のプログラムやデータベースの修正なしに、データベースの保安性を強化し、その管理をより容易にし、既存のマスキング処理方法に比べて速度を改善すること。
【解決手段】実行されるSQL文を分析し、そのSQL文に該当するマスキング情報を生成し、実行されたSQL文に応じた結果データを使用者の権限に応じて、一部あるいは全部を変更して伝達する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、SQLマスキング装置及び方法に関する。特に、本発明は、SQL処理の際に使用者権限に合うように個別SQLのマスキング情報を生成し、実行されたSQL結果データの一部あるいは全部を変更して伝達することにより、データベースの保安性及び速度を高め、その管理を容易にしたSQLマスキング装置及び方法に関する。
【背景技術】
【0002】
情報通信時代に入り、各種情報を収集して活用するか、これを通じて、ビジネス情報(BI:Business Information)を得るための多様なシステムが登場しており、このようなシステムは、DBMS(DataBase Management System)関連技術の進歩に基づいている。
【0003】
このようなDBMSは、ビジネス関連情報、顧客情報、商品情報、コンテンツ情報などを含む多様で膨大な資料を格納及び管理している。このような情報を効果的に管理するための関係型データベース管理システムとして、オラクル(Oracle)、サイベース(Sybase)、マイSQL(MySQL)、マイクロソフトSQLサーバ(MS SQL Server)等の多様なDBMSが使われている。
【0004】
また、重要な情報を管理するDBMSの保安性を高めるための保安システムの構成は、最近頻繁に発生する情報の流出や情報の操作のような多様な保安事故を防止するために、一定の規模以上のシステムにおいては一般に適用されている。
【0005】
図1は、保安構成が適用された基本的なデータベースシステムの構成を示す。ここで、複数のクライアント端末機1が、通信網2を介してDBMS5、6に接続され、このDBMS5、6に対する接続情報をログで管理するために、ゲートウェイサーバやスニッフィング(Sniffing)のための保安モジュール3などを備える。このような構成以外にも、プロキシーゲートウェイサーバやDBMS5、6の内部にエージェント(agent)を構成する方式が、個別にあるいは複合的に構成され得る。
【0006】
上記保安モジュールは、基本的にログイン情報(セッション情報、IP住所、ログイン時刻、DB情報、DB勘定情報、プロトコル、ログイン時の適用規則情報)を含むことができる。
【0007】
このような保安構成は、管理者により許可された使用者のみがDBMSに接近することができるようにするか、DBMSへの接近及び使用内訳に対するモニタリング、強制セッション終了などを実施することができるようにし、使用内容をログで格納し、使用者別に接近政策を設定するなどの多様な保安機能を提供することができる。
【0008】
このような保安構成にもかかわらず、多様な方法でデータの情報流出や操作が発生する。一般に、データベースの情報流出や情報操作は、SQL(Structured Query Langugage)を通じて行われる。従って、使用者の権限に応じて、使用することができるSQLを制限するか、照合及び更新することができるコラムを制限することにより、DBMSの保安性を強化する。
【0009】
上記のように照合を制限するために、データの照合の際に、照合されたデータの一部あるいは全部を、データベースに格納されているもとのデータと違った字、形などに置き換える。これをマスキングであると言う。マスキングの一般的な方法は、以下のようである。
【0010】
図2は、商用データベースシステムにおけるマスキングシステムの構成を示す。複数のクライアント端末機10が通信網20を介してDBMS50、51に接続され、DBMS50にデータ暗号化52により既に格納されたデータが、SQLにより要請されると、保安モジュールが使用者権限をチェックし、権限がある場合、データ復号化53により、SQL結果データが返還される。
【0011】
上記方法は、DB自体の保安性はあるが、SQL結果返還54以後のデータは、暗号化が解除された状態で、保安性がなく、DBMSに直接設けられ運営されるので、DBMSの性能低下の原因となり、使用者の権限に応じて暗号化フォーマットの設定などの細部的なマスキングが不可能である。
【0012】
図3は、プログラムによるマスキングシステムの構成を示す。プログラム60によりSQLが呼出62され、SQL結果データが返還(63)されると、返還されたデータを使用者権限に応じてマスキング部61がマスキングして伝達するように構成される。
【0013】
上記方法は、使用者権限に応じた細部的なマスキングを適用することができるが、既に使われているシステムとDBMSに適用する場合、そのシステムとDBMSに合うようにカスタマイズを必要とし、SQL結果返還(63)の際にデータ流出の可能性が存在する。また、システムが変更されるか、使用者権限が変更される場合、プログラム60の内部のマスキング部61のコードを変更しなければならないので、汎用性が落ち、カスタマイズに応じた費用が発生する。
【0014】
図4は、保安モジュール110の内部に位置するマスキング部116を利用したマスキングシステムの構成を示す。保安モジュール110は、保安管理部115と、マスキング部116とを備える。
【0015】
図5は、図4のマスキング部116の構成図を示す。マスキング部116は、実行SQL結果データ200を、マスキングルール格納部225に格納されたマスキングルールと比較して、マスキングの可否を判断し、マスキング適用部226でマスキングを適用してマスキングされたSQL結果データ210を生成する。上記マスキングルールは、正規式の表現による方法と、テーブルの列及び行の指定による方法とがある。
【0016】
例えば、正規式によるマスキング方法は、実行SQL結果データ200から住民番号様式(XXXXXX−XXXXXXX)あるいは生年月日XX/XX/XXなどのフォーマットを発見してマスキングをする方法である。テーブルの列及び行の指定による方法は、実行SQL結果データ200のヘッダからコラムや区分子を認識し、各コラムがマスキング対象に該当するかを、マスキングルール格納部225に格納されたマスキングルールと比較してマスキングする方法である。
【0017】
上記方法は、既に使われているプログラム及びDBMSに、カスタマイズなしに適用可能であり、使用者権限に応じた細部的なマスキングの適用が可能である。しかし、正規式による表現方法は、様式のみ同じであれば、データがマスキングされるので、願わないデータがマスキングされるか、様式を変えて照合する場合にマスキングされない。また、列及び行の指定による方法は、該当列及び行を、分けて照合するか、合わせて照合する場合にマスキングされない。即ち、上記方法のように、実行SQL結果データ200に既に格納されているマスキングルールを使用してマスキングの有無を判断する場合、いかなる情報を検索することか、知らない状態で受信されるSQL結果データに含まれている情報のみを根拠に、マスキングを実施するので、SQLが変更されるか複雑になる場合に相変らずデータの流出の可能性が存在する。
【0018】
従って、多様な使用者の権限に応じて、細部的なマスキングが可能であり、多様なプログラム及びDBMSに汎用的に適用することができ、既に使われているプログラム及びDBMSにカスタマイズなしに適用可能であり、データの流出の可能性のないマスキング方法が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0019】
前述した問題点を改善するための本発明の目的は、実行されるSQL文を分析し、そのSQL文に該当する個別のSQLマスキング情報を生成することにより、多様な使用者の権限に応じて、細部的にマスキングの適用を可能にしたSQLマスキング装置及び方法を提供することである。
【0020】
本発明の他の目的は、実行されるSQLの結果データを使用してマスキングすることにより、多様なプログラム及びDBMSに共通的に適用することができるようにしたSQLマスキング装置及び方法を提供することである。
【0021】
本発明の更に他の目的は、既存のプログラムの修正やDBMSの変更なしに、マスキングルールを変更することにより、実行されるSQLの結果データを変更して提供することにより、既存のシステムの環境の変更なしに、適用することができるようにしたSQLマスキング装置及び方法を提供することである。
【0022】
本発明の更に他の目的は、要請されたSQL文をパーシングして、要請されたSQL結果データに対するマスキングフォーマットを決定することにより、SQL文を変形、操作しても、該当部分のマスキングを維持することができるようにしたSQLマスキング装置及び方法を提供することである。
【課題を解決するための手段】
【0023】
上記課題を解決するために、本発明の第1の形態に係るSQLマスキング装置は、保安管理部とマスキング部とを備える。
【0024】
保安管理部は、ログイン情報(セッション情報、IP住所、ログイン時刻、DB情報、DB勘定情報、プロトコル、ログイン時の適用規則情報)及びSQL情報(ログイン情報別要請SQL、ログイン情報別実行SQL結果)等を含む。
【0025】
上記マスキング部は、実行SQL文を分析し、実質的にマスキングする対象に関する実行SQLマスキング情報を生成する実行SQLマスキング情報部と、上記実行SQLマスキング情報と、実行SQL結果データとを利用して、マスキングされたSQL結果データを生成する実行SQLマスキング適用部とを備える。
【0026】
上記実行SQLマスキング情報部は、実行SQL文をパーシングし、そのパーシングされた結果を分析して、マスキング可能部分を選別するSQLパーシング部と、マスキングする部分を判断するルールを格納するマスキングルール格納部と、上記マスキングルール格納部のルールを基準に上記SQLパーシング部のマスキング可能部分の構文分析上の組合せを解釈して実行されたSQL結果のデータフォーマットの中のマスキングする部分に関する情報を生成する実行SQLマスキング情報生成部とを備える。
【0027】
上記実行SQLマスキング適用部は、上記実行SQLマスキング情報部が提供する実行SQLマスキング情報と、上記実行SQL文により実行されたSQL結果データとを使用してマスキングされたSQL結果データを生成する。
【発明の効果】
【0028】
本発明に係るSQLマスキング装置及び方法は、実行されるSQL文を分析し、使用者の権限に応じて、個別のSQLマスキング政策を生成して適用する。これにより、多様な使用者の権限に応じて、細部的にマスキングを適用可能にするので、データベースの保安性を改善する優れた効果を有する。
【0029】
本発明に係るSQLマスキング装置及び方法は、実行されるSQLの結果データを使用してマスキングする。これにより、多様なプログラム及びDBMSに共通的に適用可能にするので、多様なシステムの環境においても、汎用性に優れる。また、別途のカスタマイズが必要でないので、費用が節減される効果を有する。
【0030】
本発明に係るSQLマスキング装置及び方法は、既存のプログラムの修正やDBMSの変更なしに、マスキング判断政策を変更する。これにより、実行されるSQLの結果データが変更し提供されるので、使用者権限管理及び情報制御管理が容易になり、データベース管理の容易性が増大する効果を有する。
【0031】
本発明に係るSQLマスキング装置及び方法は、要請されたSQL文をパーシングして、要請されたSQL結果データに対するマスキングフォーマットを決定する。これにより、SQL文を変形、操作しても、該当部分のマスキングを維持することができるので、データベースの保安性を増大させる効果を有する。
【0032】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0033】
【図1】ログ情報を格納する保安モジュールが適用されたデータベースシステムの構成図である。
【図2】商用DBMSの暗号化/復号化により示されるSQLマスキングシステムの構成図である。
【図3】プログラムにより示されるSQLマスキングシステムの構成図である。
【図4】保安モジュールにより示される一般的なSQLマスキングシステムの構成図である。
【図5】一般的なSQLマスキングシステムのマスキング部の構成図である。
【図6】本発明の実施形態に係るSQLマスキングシステムのマスキング部の構成図である。
【図7】本発明の実施形態に係る実行SQLマスキング情報部の構成図である。
【図8】図5のマスキング部と図6のマスキング部との結果の差異を示す例示図である。
【図9】本発明の実施形態に係るマスキング部の動作のフローチャートである。
【発明を実施するための形態】
【0034】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0035】
上記のような本発明を、添付の図面を参照して詳しく説明する。
【0036】
図4は、SQLマスキング方式を説明するための一般的なデータベースシステムの構成を示す。図4に示されたように、複数のクライアント端末機100と、DBMS120と、これらの間に設けられてSQL実行を監視する保安モジュール110とを備える構成を概略的に示す。
【0037】
上記保安モジュール110は、データベースシステムの保安のために、ゲートウェイ、プロキシーゲートウェイ、スニッフィングサーバ、エージェントなどを含む任意の保安モジュールのうちの一つでありうる。
【0038】
上記保安モジュール110は、保安管理部115とマスキング部116とを備える。上記保安管理部115は、基本的にログイン情報(セッション情報、IP住所、ログイン時刻、DB情報、DB勘定情報、プロトコル、ログイン時の適用規則情報)及びSQL情報(ログイン情報別要請SQL、ログイン情報別実行SQL結果)等を含み、DB接近保安を管理し、ログDB40にログを残す。上記マスキング部116は、SQL実行結果中の一部をマスキングルールに応じてマスキングする機能を行う。
【0039】
図6は、本発明の一実施形態に係るマスキング部の構成を示し、実行SQLマスキング情報部330と、実行SQLマスキング適用部340とを備える。
【0040】
上記マスキング部は、実行SQL文を受信し、該当SQL文を分析し、該当SQL文のマスキング情報を生成し、該当SQL文の結果データに対して、該当SQL文のマスキング情報を使用してマスキングを適用した後、マスキングされたSQL結果データを伝送する。
【0041】
上記マスキング部は、マスキングルールを更新するか又は変更するために、保安管理部と通信することができる。また、該当SQL文のマスキング情報をログDBに格納して監査資料として活用するか、マスキングルールの更新に用いることができる。
【0042】
上記実行SQLマスキング情報部330は、実行SQL文300を受信し、実行SQL結果データ341のマスキングに用いる実行SQLマスキング情報331を生成する。
【0043】
上記実行SQLマスキング適用部340は、上記実行SQLマスキング情報部330から生成された実行SQLマスキング情報331と、上記実行SQL文300により実行された実行SQL結果データ341とを使用してマスキングされたSQL結果データ310を生成する。
【0044】
上記実行SQLマスキング情報部330は、クライアントから実行要請されたSQL文を受信し、マスキングしなければならない部分を分析する。また、マスキングしなければならない部分のフォーマットが多様であっても、マスキングが可能であるように格納されているマスキングルールを使用して、マスキングしなければならない部分に対するマスキングの可能の可否、フォーマットの設定などの情報を含む実行SQLマスキング情報310を生成する。
【0045】
上記実行SQLマスキング情報331は、ただ要請されたSQL結果データのコラム単位の操作、即ちコラム単位のマスキングの可否だけでなく、該当コラム値の範囲を制限し、範囲を超過する行に対するマスキングを実施するか、特定の行の範囲を制限してマスキングを実施するなどのすべての可能な種類のマスキング情報であることに留意する。
【0046】
上記実行SQLマスキング適用部340は、該当SQLの結果データが伝送されると、上記実行SQLマスキング情報331を使用して、該当結果データにマスキングを実施し、マスキングされたSQL結果データ310を生成する。
【0047】
図7は、本発明の一実施形態に係る実行SQLマスキング情報部420を示す。図7に示されたように、SQL対象とマスキング情報を通じてマスキング対象を具体的に決定するように構成された例である。
【0048】
上記実行SQLマスキング情報部420は、実行SQL文をパーシングし、そのパーシングされた結果を分析して、マスキング可能部分を選別するSQLパーシング部430と、マスキングする部分を判断するルールを格納するマスキングルール格納部440と、上記マスキングルール格納部440のルールを基準に上記SQLパーシング部430のマスキング可能部分の構文分析上の組合せを解釈し、実行されたSQL結果データのフォーマットの中のマスキングする部分に関する情報を生成する実行SQLマスキング情報生成部450とを備える。
【0049】
上記SQLパーシング部430は、クライアントからSQLが要請される場合、該当SQLをパーシングして意味のあるトークン(token)に分解し、構文分析を実施し、マスキングをすることができるトークンをマスキング可能部分として設定する。
【0050】
上記SQLパーシング部430は、必要な場合、実行されるSQLの使用者情報、実行されるSQL文など、実行SQL文と関連した可能な情報を格納することができる。
【0051】
一方、上記SQLパーシング部430は、保安管理部が権限の管理のために使用するSQLパーシング部を利用するか、そのパーシングされたトークンを選別する比較的簡単な追加の構成を付加して、実行SQLマスキング情報部420において活用することができる。
【0052】
以下の表1及び表2は、本発明の動作の原理を説明するためのマスキングルールとSQL文の例を示すものである。
【0053】
【表1】

【0054】
【表2】

【0055】
上記例において、上記SQLパーシング部430は、表2のSQL文をパーシングして、表2のマスキング可能部分に表示されたマスキング可能部分を抽出することができる。表2のマスキング可能部分とマスキング対象部分とにおいて、{}の内は、該当マスキング可能部分の演算に使用されるすべてのマスキング可能部分の和集合である。
【0056】
上記マスキングルール格納部440は、使用者権限に応じて、マスキング可能部分をマスキング対象部分に選別する可能な種類のルールを格納しており、その格納形態は、テーブル、コーディング、メモリなど多様である。
【0057】
例えば、上記マスキングルール格納部440のように、表1のテーブルの形態に格納されれば、使用者権限に応じた各コラムのマスキングの有無、即ち使用者ID、テーブル名、コラム名、コラム内のマスキング領域、マスキングの有無などの情報により表現されることができる。
【0058】
SQLマスキング情報生成部450は、SQLパーシング部430から得られるマスキング可能部分と、マスキングルール格納部440のルールを使用して実行されるSQL文を要請した使用者情報とをマッピングして、実行SQLマスキング情報を生成する。
【0059】
例えば、表1のマスキングルールを有するマスキングシステムにおいて、scottという使用者が、表2のSQL文を使用してクエリーをする場合に、SQLパーシング部430は、表2のマスキング可能部分を生成し、表1のマスキングルールに応じて、jumin_noを含むすべてのコラム、すなわちuser_info.jumin_no、ju_no1{user_info.jumin_no}、ju_no2{user_info.jumin_no}を、マスキング対象部分として実行SQLマスキング情報を生成する。また、user_info.user_nameが、表1のマスキングルールに応じて、マスキングされないように、実行SQLマスキング情報を生成する。
【0060】
上記例においては、マスキングの有無だけを含んだが、各コラムに対するフォーマットや行値の範囲のようなコラム内のマスキング領域(例えば、住民番号の場合に後の桁の8字のみをマスキング)等、多様な条件により実行SQLマスキング情報を生成することができる。
【0061】
上記例においては、マスキング可能部分のうちの使用者権限のない部分が、1つ以上含まれれば、全てマスキング対象部分として演算したが、その演算は、マスキングルールに格納されている形態で多様に実施することができることは自明である。
【0062】
図8は、本発明の一実施形態に係る実行結果と、既存の方式の実行結果との差異を示す。表1のマスキングルールと表2のSQL文をもって実行すれば、図5のマスキング部を適用したSQLマスキング方法500においては、実行されたSQLの結果データのヘッダ情報を使用してマスキングルールを適用することにより、実行されるSQL文のフォーマットが変更されるか、該当コラム名が変更されて、照合によりマスキングされることはない。しかし、同一のSQL文を使用して図6のマスキング部を適用したSQLマスキング方法510においては、実行されるSQL文をパーシングしてマスキング対象を全てチェックするので、フォーマットに合わないか、個別のSQL文が変更されても、マスキングが適用されることが分かる。
【0063】
図8に示されたように、既存の方式(505)を適用すれば、jumin_no(501)のようなヘッダ情報やフォーマットの明確なマスキング可能部分は、マスキング対象部分に変わってマスキングされるが、ju_no1(502)やju_no2(503)のようなマスキング可能部分は、ヘッダ情報やフォーマットが明確でなくて、データがそのまま露出される。しかし、本発明の実施形態に係る方式(515)を適用すれば、jumin_no(510)、ju_no1(511)、ju_no2(512)等のようなマスキング可能部分が、全てSQL文の段階でマスキング対象部分に設定されてマスキングされるので、データの保安性を維持することができる。
【0064】
図9は、本発明の一実施形態に係るマスキング部のフローチャートを示す。図9に示されたフローチャートは、基本的に、SQL文を要請する段階Aと、要請されたSQL文で実行SQLマスキング情報を生成する段階Bと、要請されたSQL文を実行する段階Cと、生成された実行SQLマスキング情報を適用する段階Dと、マスキングされたSQL結果データを伝送する段階Eとを含む。
【0065】
ここで、上記実行SQLマスキング情報段階Bは、要請されたSQL文をパーシングする段階B−1と、パーシングされたSQL文及びマスキングルール格納部のマスキングルールを使用して、実行SQLマスキング情報を生成する段階B−2とに分けられる。
【0066】
示されたように、クライアントからSQL文が要請されると、要請されたSQL文をパーシングしてマスキング可能部分に設定し、既に格納されたマスキングルールに応じて、要請されたSQL文に対するマスキング情報を生成し、該当SQL文が実行されてその結果データが伝達されると、生成されたマスキング情報を使用して該当SQL文の結果データをマスキングし、マスキングされたSQL結果データを伝送する。
【0067】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【0068】
40 ログDB、100 クライアント、110 保安モジュール、
115 保安管理部、116、220、320 マスキング部、
120 DBMS、420 実行SQLマスキング情報部

【特許請求の範囲】
【請求項1】
データベースの保安構成に適用されてSQLの実行に応じた結果の一部をマスキングするSQLマスキング装置であって、
受信SQL文を単位構成に区分し、その相関関係を既に設定されているマスキングルールを基準に分類し、SQL結果のデータフォーマットの中のマスキングされる部分に対する情報を含むマスキング情報を生成する実行SQLマスキング情報部と、
上記実行SQLマスキング情報部から生成されたマスキング情報を、上記SQL文の実行に応じたSQL結果データに適用し、マスキングされたSQL結果データを生成する実行SQLマスキング適用部と
を備えることを特徴とするSQLマスキング装置。
【請求項2】
上記実行SQLマスキング情報部は、受信SQL文の単位構成のうち、マスキングする部分を判断するルールを格納するマスキングルール格納部を備えることを特徴とする請求項1に記載のSQLマスキング装置。
【請求項3】
上記マスキングルール格納部は、使用者ID、テーブル名、コラム名、コラム内のマスキング領域、及びマスキングの有無のうちの少なくとも一つ以上の情報を格納することを特徴とする請求項2に記載のSQLマスキング装置。
【請求項4】
上記実行SQLマスキング情報部は、
実行されるSQL文をパーシングし、パーシングされた結果中のマスキング可能部分を選別するSQLパーシング部と、
マスキングする部分を判断するルールを格納するマスキングルール格納部と、
上記SQLパーシング部が選別したマスキング可能部分の間の相関関係を把握し、上記マスキングルール格納部に格納されているマスキングルールに応じて、マスキング対象を選別し、SQL結果のデータフォーマットの中のマスキング対象をマスキング情報として生成する実行SQLマスキング情報生成部と
を備えることを特徴とする請求項1に記載のSQLマスキング装置。
【請求項5】
上記SQLパーシング部は、上記データベースの保安構成に既に含まれているSQLパーシング部を利用することを特徴とする請求項4に記載のSQLマスキング装置。
【請求項6】
上記実行SQLマスキング情報生成部は、上記マスキングルールと、マスキング可能部分の間の相関関係とに応じて、マスキング対象と関連した全てのマスキング可能部分を選別し、それにより得られるSQL結果のデータフォーマットの中のマスキングされる部分の位置情報をマスキング情報として生成することを特徴とする請求項4に記載のSQLマスキング装置。
【請求項7】
データベースの保安構成に適用されてSQLの実行に応じた結果の一部をマスキングするSQLマスキング方法であって、
受信SQL文を単位構成に区分し、その相関関係を既に設定されているマスキングルールを基準に分類し、SQL結果のデータフォーマットの中のマスキングされる部分に対する情報を含むマスキング情報を生成する実行SQLマスキング情報段階と、
上記実行SQLマスキング情報段階において生成されたマスキング情報を、上記SQL文の実行に応じたSQL結果データに適用し、マスキングされたSQL結果データを生成する実行SQLマスキング適用段階と
を含むことを特徴とするSQLマスキング方法。
【請求項8】
上記実行SQLマスキング情報段階は、受信SQL文の単位構成のうち、マスキングする部分を判断するルールを格納するマスキングルール格納段階を含むことを特徴とする請求項7に記載のSQLマスキング方法。
【請求項9】
上記マスキングルール格納段階は、使用者ID、テーブル名、コラム名、コラム内のマスキング領域、及びマスキングの有無のうちの少なくとも一つ以上の情報を格納することを特徴とする請求項8に記載のSQLマスキング方法。
【請求項10】
上記実行SQLマスキング情報段階は、
実行されるSQL文をパーシングし、パーシングされた結果中のマスキング可能部分を選別するSQLパーシング段階と、
マスキングする部分を判断するルールを格納するマスキングルール格納段階と、
上記SQLパーシング段階において選別されたマスキング可能部分の間の相関関係を把握し、上記マスキングルール格納段階において格納されたマスキングルールに応じて、マスキング対象を選別し、SQL結果のデータフォーマットの中のマスキング対象をマスキング情報として生成する実行SQLマスキング情報生成段階と
を含むことを特徴とする請求項7に記載のSQLマスキング方法。
【請求項11】
上記SQLパーシング段階においては、上記データベースの保安構成に既に含まれているSQLパーシング部を利用することを特徴とする請求項10に記載のSQLマスキング方法。
【請求項12】
上記実行SQLマスキング情報生成段階は、上記マスキングルールと、マスキング可能部分の間の相関関係とに応じて、マスキング対象と関連した全てのマスキング可能部分を選別し、それにより得られるSQL結果のデータフォーマットの中のマスキングされる部分の位置情報をマスキング情報として生成することを特徴とする請求項10に記載のSQLマスキング方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate