JP6376734B2 - データベースを管理する装置、データベースの制御方法およびプログラム - Google Patents

データベースを管理する装置、データベースの制御方法およびプログラム Download PDF

Info

Publication number
JP6376734B2
JP6376734B2 JP2013167887A JP2013167887A JP6376734B2 JP 6376734 B2 JP6376734 B2 JP 6376734B2 JP 2013167887 A JP2013167887 A JP 2013167887A JP 2013167887 A JP2013167887 A JP 2013167887A JP 6376734 B2 JP6376734 B2 JP 6376734B2
Authority
JP
Japan
Prior art keywords
rule
data
processing
read request
application condition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013167887A
Other languages
English (en)
Other versions
JP2015036868A (ja
Inventor
雅俊 山田
雅俊 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2013167887A priority Critical patent/JP6376734B2/ja
Priority to US14/329,621 priority patent/US11899668B2/en
Publication of JP2015036868A publication Critical patent/JP2015036868A/ja
Application granted granted Critical
Publication of JP6376734B2 publication Critical patent/JP6376734B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データへのアクセス制御に特徴を有するデータベース、その制御方法およびプログラムに関する。
一般に、データベース・システムにおけるデータのアクセス制御は、データベースのアカウントに対して設定されるアクセス権限の制御や、検索結果として得られるデータ・セットに対するフィルタリングなどを組み合わせて実現されている。アカウントに対して設定されるアクセス権限により、アカウントごとに、アクセスが許容される対象であるデータベース・オブジェクト(データ、テーブル、レコードあるいはカラム等のデータやデータの集合、以下、単に「オブジェクト」と呼ぶ)と、許容される操作内容(読み出し、書き込み、更新)が特定される。
文献記載の従来技術として、例えば特許文献1に開示されたシステムは、複数のデータベース表にデータを格納すると共にその表からデータを取り出すためのデータベース管理システムを含み、このデータベース表内のデータは、データベース表に格納されているプライバシーパラメーターにしたがって制御可能にアクセスすることができるものである。また、このシステムは、データベース管理システムインターフェースを含み、このインターフェースは、データベース管理システムに作動上結合されており、プライバシーパラメーターにしたがってデータベース表内のデータへのアクセスを制御するものである。また、このシステムは、監査モジュールを含み、このモジュールは、データベース管理システムインターフェースと通信できるように結合されており、データベース管理システム内のデータプライバシーパラメーターが有効に適用できるようにするものである。
また、特許文献2に開示された従来技術は、ユーザ属性などの属性情報に基づいたデータベースアクセス制御において、属性情報が変更された場合の管理負荷を軽減しながら、データベースへアクセスするデータアクセスプログラムの性能の低下を防止するものである。この従来技術において、コンテキスト記憶部は、属性管理サーバから取得したデータオブジェクトにアクセスするユーザなどに関する属性情報を記憶する。また、ポリシー関数記憶部は、コンテキスト記憶部が記憶する属性情報に基づいて制御条件を生成するポリシー関数を記憶する。関数実行部は、ユーザがデータアクセスプログラムでデータオブジェクトにアクセスする場合、ポリシー関数を実行する。制御条件付加部は、ポリシー関数によって生成された制御条件をデータアクセスプログラムに付加する。実行部は、制御条件を付加したデータアクセスプログラムを実行する。
特開2000−112796号公報 特開2007−18309号公報
従来のデータベース・システムにおけるアクセス制御は、主としてアカウントに対するデータへのアクセス権限の設定によって実現されていた。そのため、アカウントに設定されたアクセス権限に基づいてデータへのアクセスが行われた場合は、アクセス権限自体は正当なものであるため、アクセスの態様に関わらず、制限することができなかった。そのため、例えば、通常は同時に読み出す必要のない大量の情報を読み出すというような異常なアクセスを制限することが困難であった。
本発明は、このような課題に鑑み、アカウントの権限に依存しない高度なアクセス制御を実現することを目的とする。
上記の目的を達成するため、本発明は、次のような装置として実現される。この装置は、データベースを管理する装置であって、データベース・オブジェクトを格納したオブジェクト格納部と、処理要求に基づいて、オブジェクト格納部に格納されたデータベース・オブジェクトに対する処理を実行する処理実行部と、この処理実行部による処理の態様に基づく適用条件とこの処理の内容を変更するための規則とを対応付けて保持するルール記憶部と、処理要求に基づく処理の態様がルール記憶部に保持された適用条件に適合する場合に、適合した適用条件に対応付けられた規則にしたがって、処理実行部が実行する処理の内容を変更するルール適用部と、を備える。
より詳細には、ルール適用部は、処理要求に基づく処理の態様が所定の適用条件に適合し、適合した適用条件に対応する規則が前記処理実行部による処理の結果を出力しないように変更する規則である場合、処理実行部によるこの処理要求に基づく処理の実行を取り消す。
さらに詳細には、ルール適用部は、読み出し項目が指定されたデータの読み出し要求に基づく読み出し処理の態様が所定の適用条件に適合し、適合した適用条件に対応する規則が特定の項目のデータ読み出し結果を出力しないように変更する規則である場合、処理実行部によるこのデータの読み出しを行わないように処理要求に基づく処理を変更する。
また、ルール適用部は、処理要求に基づく処理の態様が所定の適用条件に適合する場合に、適合した適用条件に対応する規則に基づき、処理実行部による処理の結果として得られたデータに替えて、データに関する情報を出力する。
さらにまた、ルール適用部は、処理要求に基づく処理の態様が所定の適用条件に適合する場合に、適合した適用条件に対応する規則に基づき、処理実行部による処理の結果として得られたデータのうち、予め定められた量を超えるデータを削除して出力する。
また、本発明は、次のような方法としても実現される。この方法は、データベースに対するアクセスを制御する方法であって、受け付けた処理要求に基づく処理が予め定められた処理の態様に基づく適用条件に適合するか否かを判断するステップと、処理要求に基づいてデータベースに格納されているデータベース・オブジェクトに対する処理を実行するステップと、処理が適合した適用条件に対応付けて定められた規則に基づいて、処理の実行により得られた処理結果に対する変換処理を行うステップと、を含む。
あるいは、この方法は、データベースに対するアクセスを制御する方法であって、受け付けた処理要求に基づく処理が予め定められた処理の態様に基づく適用条件に適合するか否かを判断するステップと、処理が適合した適用条件に対応付けて定められた規則に基づいて、処理要求に対する変換処理を行うステップと、適用条件に適合しない処理要求に関しては、この処理要求に基づいてデータベースに格納されているデータベース・オブジェクトに対する処理を実行し、適用条件に適合した処理要求に関しては、変換された処理要求に基づいてデータベースに格納されているデータベース・オブジェクトに対する処理を実行するステップと、を含む。
さらにまた、本発明は、コンピュータを制御して上述した装置の各機能を実現するプログラム、あるいは、コンピュータに上記の各ステップに対応する処理を実行させるプログラムとしても実現される。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより、提供することができる。
本発明によれば、アカウントの権限に依存しない高度なアクセス制御を実現することができる。
本実施形態が適用されるデータベース・システムの機能構成の一例を示す図である。 本実施形態のデータベース・システムを構成するのに好適なハードウェア構成例を示す図である。 オブジェクトである表の一例を示す図である。 アクセス規則の一例を示す図である。 本実施形態のデータベース・システムにおける処理実行部およびルール適用部の処理手順を説明するフローチャートである。 本適用例において処理対象となるオブジェクトである表「顧客テーブル」の構成例を示す図である。 本適用例において用いられるアクセス規則の構成例を示す図である。 他の適用例において用いられるアクセス規則の構成例を示す図である。
以下、添付図面を参照して、本発明の実施形態について詳細に説明する。
<システム構成>
図1は、本実施形態が適用されるデータベース・システムの機能構成の一例を示す図である。図1に示す本実施形態のデータベース・システム(サーバ)100は、情報記憶手段として、オブジェクト格納部110と、アカウント情報記憶部120と、ルール情報記憶部130とを備える。また、処理の実行手段として、ログイン制御部140と、処理実行部150と、ルール適用部160とを備える。
オブジェクト格納部110には、表やビュー表等のオブジェクトが格納されている。オブジェクト格納部110に格納されるオブジェクトは、既存のデータベース・システムにおいて扱われる一般的なオブジェクトと同様である。
アカウント情報記憶部120には、オブジェクト格納部110に格納されたオブジェクトへのアクセス権限を設定したアカウントの情報が保持されている。アカウント情報記憶部120に保持される情報は、既存のデータベース・システムにおけるアカウント情報と同様であり、例えば、各アカウントに対して、アクセスが許容されるオブジェクトと、許容される操作内容が設定される。
ルール情報記憶部130には、オブジェクト格納部110に格納されたオブジェクトへのアクセス規則が保持されている。ルール情報記憶部130に保持されるアクセス規則は、アカウント情報記憶部120に保持されるアカウントに設定されたアクセス権限とは異なり、オブジェクトに対する処理の仕方を規定するものである。具体的には、規則の適用条件としての処理の内容と、適用条件に適合する処理の結果に対する実行規則とが対応付けられている。したがって、アカウントによるアクセス権限の内容に関わらず(言い換えれば、誰の処理要求であっても)、ルール情報記憶部130に記憶されたアクセス規則に従った態様でしか、オブジェクトに対する処理を行うことができない。具体的なアクセス規則の内容およびアクセス規則の処理要求への適用の詳細については後述する。
ログイン制御部140は、クライアントからのログイン要求を受け付け、ユーザ認証を行う。具体的には、例えば、ログイン要求からアカウント名とパスワードを取得し、アカウント情報記憶部120に保持されているアカウント情報と照合し、正当なアカウントであることが確認されたならば、ログインを許可する。この機能は、既存のデータベース・システム等におけるログイン制御の機能と同様である。
処理実行部150は、ログインしたクライアントからの処理要求を受け付け、受け付けた処理要求に基づき、オブジェクト格納部110に格納されたオブジェクトに対する処理を実行する。具体的には、アカウントに設定されたアクセス権限の範囲で、オブジェクトに対する読み出し、書き込み、更新などの操作を行う。なお、処理要求は、ネットワーク等を介して接続された外部のクライアント装置から受信することもできるし、データベース・システム100の入力デバイス(キーボード等)をオペレータが操作することにより入力することもできる。
ルール適用部160は、処理実行部150が実行する処理(クライアントからの処理要求に基づく処理)が、ルール情報記憶部130に保持されているアクセス規則の適用条件に適合する処理か否かを判断する。そして、アクセス規則の適用条件に適合する処理であった場合は、その適用条件に対応する実行規則に基づいて処理要求に係る処理の内容を変換する。これにより、処理実行部150は、アクセス規則に従った態様でオブジェクトに対する処理を行うこととなる。ルール適用部160の機能および動作の詳細については後述する。
<システムのハードウェア構成例>
図2は、本実施形態のデータベース・システム100を構成するのに好適なハードウェア構成例を示す図である。ここでは、コンピュータに適用する場合について説明する。図2に示すコンピュータは、演算手段であるCPU(Central Processing Unit)10aと、主記憶手段であるメモリ10cを備える。また、外部デバイスとして、磁気ディスク装置(HDD:Hard Disk Drive)10g、ネットワーク・インターフェイス10f、ディスプレイ装置を含む表示機構10d、音声機構10h、キーボードやマウス等の入力デバイス10i等を備える。
図2に示す構成例では、メモリ10cおよび表示機構10dは、システム・コントローラ10bを介してCPU10aに接続されている。また、ネットワーク・インターフェイス10f、磁気ディスク装置10g、音声機構10hおよび入力デバイス10iは、I/Oコントローラ10eを介してシステム・コントローラ10bと接続されている。各構成要素は、システム・バスや入出力バス等の各種のバスによって接続される。
なお、図2は、本実施形態が適用されるのに好適なコンピュータのハードウェア構成を例示するに過ぎない。本実施形態は、オブジェクトへの処理要求を受け付けてオブジェクトに対する処理を行うデータベース・システムとして機能する情報処理装置に広く適用できるものであり、図示の構成においてのみ本実施例が実現されるのではない。
図2において、磁気ディスク装置10gにはOSのプログラムやアプリケーション・プログラムが格納されている。そして、これらのプログラムがメモリ10cに読み込まれてCPU10aに実行されることにより、本実施形態におけるログイン制御部140、処理実行部150およびルール適用部160の各機能が実現される。また、オブジェクト格納部110、アカウント情報記憶部120およびルール情報記憶部130は、メモリ10cや磁気ディスク装置10g等の記憶手段により実現される。
<アクセス規則の適用プロセス>
次に、ルール適用部160によるアクセス規則の適用プロセスについて説明する。図3は、オブジェクトである表の一例を示す図である。図4は、アクセス規則の一例を示す図である。
図3に示す例では、表「Table1」には、「Col1」、「Col2」、「Col3」の3列に各々データが格納されている。また、図4に示す例では、処理要求としてデータの読み出し要求が行われた場合に関するアクセス規則として、3種類の適用条件と実行規則とが規定されている。具体的には、規則aは、「Table1」に対し、「Col1」と「Col2」の値を指定して読み出し要求が行われたことを適用条件として、「Table1」における「Col1」、「Col2」、「Col3」のデータを読み出すことを規定する。規則bは、「Table1」に対し、「Col1」の値のみを指定して読み出し要求が行われたことを適用条件として、「Table1」における「Col1」および「Col3」のデータのみを読み出し、「Col2」のデータは読み出さずにマスクする(隠す)ことを規定する。規則cは、「Table1」に対し、いずれの列の値も指定せずに読み出し要求が行われたことを適用条件として、「Table1」におけるデータの読み出し結果を出力しない(エラーとする)ことを規定する。
ここで、次の3種類のSQL文によるデータの読み出し要求が行われたものとする。
要求1:SELECT * FROM Table1 WHERE Col1='A1' AND Col2='A2'
要求2:SELECT * FROM Table1 WHERE Col1='A1'
要求3:SELECT * FROM Table1
要求1は、「Col1」の値が「A1」であり、「Col2」の値が「A2」である行のデータの読み出し要求である。この場合、アクセス規則を適用することなく、単に処理実行部150がこの読み出し要求に基づく処理を行ったとすると、「Col1」の値が「A1」であり、「Col2」の値が「A2」である行のデータが読み出される。そして、処理結果として、「A1、A2、A3」が得られる。一方、図4に示すアクセス規則では、この要求1は、規則aの適用条件に適合する。したがって、「Col1」の値が「A1」であり、「Col2」の値が「A2」である行において、「Col1」、「Col2」、「Col3」のデータが読み出される。これにより、処理結果として、アクセス規則が適用されなかった場合と同様に、「A1、A2、A3」が得られる。
要求2は、「Col1」の値が「A1」である行のデータの読み出し要求である。この場合、アクセス規則を適用することなく、単に処理実行部150がこの読み出し要求に基づく処理を行ったとすると、「Col1」の値が「A1」である行のデータが読み出される。そして、処理結果として、「A1、A2、A3」が得られる。一方、図4に示すアクセス規則では、この要求2は、規則bの適用条件に適合する。したがって、「Col1」の値が「A1」である行において、「Col1」および「Col3」のデータが読み出され、「Col2」のデータはマスクされる(意味のない出力値「XX」が付与される)。これにより、処理結果として、「A1、XX、A3」が得られる。
要求3は、いずれの列の値も指定せずに行われた読み出し要求である。この場合、アクセス規則を適用することなく、単に処理実行部150がこの読み出し要求に基づく処理を行ったとすると、「Table1」の全ての行のデータが読み出される。そして、処理結果として、「A1、A2、A3、B1、B2、B3、C1、C2、C3」が得られる。一方、図4に示すアクセス規則では、この要求3は、規則cの適用条件に適合する。したがって、上記の処理結果は出力されず、処理結果は「ERROR」となる。
以上のように、処理要求に基づく処理の内容が本実施形態によるアクセス規則の適用条件に適合する場合、実行規則に基づいて処理の内容が変換されるため、アクセス規則が適用されない場合とは異なる処理結果が得られる。また、要求1と要求2とを比較すると、アクセス規則が適用されない場合は同じ処理結果が得られるのに対し、要求1の処理に対して適用される実行規則(規則a)と要求2の処理に対して適用される実行規則(規則b)とが異なるため、アクセス規則が適用されることによって異なる処理結果が得られる。ここで、上記のアクセス規則は、処理要求に基づく処理の内容(どのような条件でデータの読み出しが要求されたか)のみに基づいて適用される。すなわち、処理要求を行ったクライアントのアカウントに設定されたアクセス権限の内容に関わらず、処理要求の内容がアクセス規則の適用条件に適合すれば、上記のような処理の変換が行われる。
なお、上記の例では、要求2に対して「Col2」のデータの読み出しを行わず、要求3に対して「Table1」の全てのデータの読み出しを行わないこととしたが、データの読み出しは実行し、処理結果の出力において該当するデータを提示しないようにしても良い。詳しくは後述するが、ルール適用部160による処理を、処理実行部150による処理の前に行うか、後に行うかによって、上記の制御内容が異なる。
また、上記の例では、データの読み出し処理を対象とし、処理要求に基づけば読み出し対象となるデータのうち、一部または全てのデータの読み出しを行わないという処理の変換を行った。本実施形態では、アクセス規則を定義することによって、上記の例の他に、様々な処理の変換を実現することができる。例えば、図3および図4を参照して説明した上記の例では、「Table1」のみを指定して行われた読み出し要求に対し、データの読み出しを行わずに処理結果を「ERROR」としたが、同様の読み出し要求を受け付けたことを適用条件として、「Col3」のデータのみ(すなわち、一部のデータのみ)読み出しを行わないという実行規則を規定しても良い。この場合、上記の要求3が行われると、処理結果は、「A1、A2、B1、B2、C1、C2」となる。なお、ここでは、読み出さなかった「Col3」のデータに対してマスク(意味のない出力値「XX」の付与)も行っていない。
また、読み出したデータの出力やデータの読み出し処理を取り消すような変換だけでなく、読み出したデータに替えてそのデータに関する情報(属性情報等)を出力するように処理を変換することもできる。例えば、「Table1」のみを指定して行われた読み出し要求に対し、「Col3」のデータ(すなわち、一部のデータ)については、特定の値(例えば、「A3」)と一致しているか否かの判定結果を処理結果として出力するという実行規則を規定しても良い。この場合、上記の要求3が行われると、処理結果は、「A1、A2、Yes、B1、B2、No、C1、C2、No」となる。
また、「Table1」のみを指定して行われた読み出し要求に対し、「Col3」のデータ(すなわち、一部のデータ)については、データの値の一部(例えば、下3桁)のみを処理結果として出力するという実行規則を規定しても良い。例として、「A3」=「12345」、「B3」=「67890」、「C3」=「98765」とする。この場合、上記の要求3が行われると、処理結果は、「A1、A2、345、B1、B2、890、C1、C2、765」となる。
また、「Col1」の値のみを指定して行われた読み出し要求に対してはデータの読み出しを行わないという実行規則を規定すると共に、「Col1」および「Col2」の値を指定して行われた読み出し要求に対してはデータの読み出しを行うという実行規則を規定しても良い。この場合、上記の要求1が行われると、処理結果は、「A1、A2、A3」となり、上記の要求2が行われると、データの読み出しは行われない。
また、「Col1」および「Col2」のデータを同時に読み出すための読み出し要求に対しては、データの読み出しを行わないという実行規則を規定しても良い。この場合、上記の要求3が行われると、「Col1」のデータおよび「Col2」のデータの読み出しが要求されることになるので、データの読み出しは行われない。これに対し、「Col1」および「Col3」のデータの読み出し要求が行われると、処理結果は、「A1、A3、B1、B3、C1、C3」となる。同様に、「Col2」および「Col3」のデータの読み出し要求が行われると、処理結果は、「A2、A3、B2、B3、C2、C3」となる。
この他、例えば、読み出し要求の条件に合致するデータの量(例えば行の数)が所定量までであれば読み出しを行うが、所定量を超える場合には読み出しを行わないという実行規則を規定することができる。また、この場合、所定量を超えてデータの読み出しが行われない場合には、適合したデータの数を処理結果として報知するという実行規則を規定しても良い。また、特定の値のデータを読み出す要求が行われた場合に、そのデータを読み出すのではなく、その値のデータが存在することを報知するという実行規則を規定しても良い。さらに、データの読み出し処理だけでなく、データの書き込み処理や更新処理に対して適用条件および実行規則を定義しても良い(例えば、所定数以上のデータを同時に書き込む処理は実行しない等)。このように、本実施形態では、データベース・システム100により管理するデータの種類やデータベース・システム100の運用条件、仕様等に応じて、様々なアクセス規則を適宜定義して用いることが可能である。
ところで、ルール適用部160によるアクセス規則の適用は、原則的には、処理実行部150による処理が行われた後に行うことができる。一方、規則の適用条件および実行規則の内容によっては、処理実行部150による処理が行われる前に行うことができる場合もある。例えば、図3に示した規則cのように、適用条件に適合した読み出し要求に関してデータの読み出し結果を出力しないというアクセス規則が規定されている場合を考える。この場合、その適用条件に適合する読み出し要求に基づくデータの読み出しは無用なので、処理実行部150による処理(データの読み出し)の前にアクセス規則を適用して処理要求を変換し、処理自体を実行しない方が効率的である。一方で、所定数以上のデータが読み出されたことを適用条件として実行規則に基づく処理結果の変換が行われる場合を考える。この場合、データを読み出した後でなければ適用条件に適合するか否か(所定数以上のデータを読み出したか否か)を判断することができない。したがって、この場合は処理実行部150による処理が行われた後にアクセス規則を適用して処理結果を変換しなければならない。したがって、個々のアクセス規則ごとに、適用条件および実行規則の内容に応じて、処理実行部150による処理の前に適用するか、後に適用するかを設定することが望ましい。
<データベース・システムの動作>
図5は、本実施形態のデータベース・システム100における処理実行部150およびルール適用部160の処理手順を説明するフローチャートである。初期状態として、クライアントのログイン処理が既に済んでいるものとする。また、この動作例では、処理実行部150による処理に先立って適用するアクセス規則と、処理実行部150による処理の後に適用するアクセス規則の両方が規定されているものとする。
図5に示すように、データベース・システム100が、クライアントからSQL文等による処理要求を受け付けると(ステップ501)、ルール適用部160は、受け付けた処理要求に関して、処理実行部150による処理の実行前に適用するアクセス規則の適用条件に適合するか否かを判断する(ステップ502)。そして、処理要求が適合する適用条件が存在する場合は、その適用条件に対応する実行規則を適用し、処理要求の内容を変換する(ステップ503)。
この後、処理実行部150は、処理要求(ステップ503で実行規則が適用された場合は、変換後の処理要求)に基づき処理を実行する(ステップ504)。次に、ルール適用部160は、処理実行部150による処理の結果に基づいて、この処理要求がアクセス規則の適用条件に適合するか否かを判断する(ステップ505)。そして、処理要求が適合する適用条件が存在する場合は、その適用条件に対応する実行規則を適用し、処理結果の内容を変換する(ステップ506)。そして、処理実行部150は、得られた処理結果(ステップ506で実行規則が適用された場合は、変換後の処理結果)を出力する(ステップ507)。
<適用例1>
次に、本実施形態のさらに詳細な適用例を説明する。図6は、本適用例において処理対象となるオブジェクトである表「顧客テーブル」の構成例を示す。また、図7は、本適用例において用いられるアクセス規則の構成例を示す。図6に示す「顧客テーブル」には、「顧客番号」、「氏名」、「住所」、「電話番号」、「性別」、「誕生日」、「収入」、「カード番号」、「パスワード」の各列に各々データが格納されている。また、図7に示すアクセス規則において、規則1〜規則4は、列の指定に関して適用条件が設定されており、規則5〜規則7は、処理結果のデータサイズ(個数)に基づいて適用条件が設定されている。
図7に示すアクセス規則について、さらに具体的に説明する。規則1は、「顧客テーブル」を対象として「顧客番号」および「パスワード」の値が指定された読み出し要求に関して(適用条件)、「パスワード」の値を「NULL」(非表示)とする実行規則が規定されている。規則2は、「顧客テーブル」を対象として「顧客番号」の値が指定された読み出し要求に関して(適用条件)、「電話番号」の値をマスク(意味のない値を付与)し、「収入」、「カード番号」および「パスワード」の値を「NULL」(非表示)とする実行規則が規定されている。規則3は、「顧客テーブル」を対象として「住所」の値が指定された読み出し要求に関して(適用条件)、「顧客番号」、「氏名」、「カード番号」および「パスワード」の値を「NULL」(非表示)とする実行規則が規定されている。規則4は、「顧客テーブル」を対象として全てのデータを読み出す読み出し要求に関して(適用条件)、処理を実行しない(処理結果は「ERROR」)とする実行規則が規定されている。したがって、規則1〜規則4については、処理実行部150による処理の実行前に、処理要求に対してルール適用部160によるアクセス規則の適用を行って、上記の「NULL」値を出力する項目については、データの読み出し自体を行わないように処理を変更することができる。
また、規則5は、処理結果としてデータ・セット(「顧客テーブル」の行)が1以上取得されたときは(適用条件)、そのデータ・セットにおける「パスワード」の値を「NULL」(非表示)とする実行規則が規定されている。規則6は、処理結果としてデータ・セットが3以上取得されたときは(適用条件)、そのデータ・セットにおける「顧客番号」、「氏名」、「カード番号」および「パスワード」の値を「NULL」(非表示)とし、「電話番号」の値をマスク(意味のない値を付与)する実行規則が規定されている。規則7は、処理結果としてオブジェクト「電話番号」、オブジェクト「顧客テーブル」を対象とするデータ・セットの読み出しにおいて、取得(出力)可能なデータ・セットの最大数を3とする実行規則が規定されている。したがって、規則5〜規則7については、処理実行部150による処理の実行後に、処理結果に対してルール適用部160によるアクセス規則の適用を行って、読み出されたデータの削除や置き換えを行うように処理を変更することができる。
なお、本適用例では、無用な処理の実行や重複実行を避けて処理効率を向上するため、重複して適用可能なアクセス規則に関しては、最も適合性の高いアクセス規則のみを適用する。適合性の高いアクセス規則とは、他のアクセス規則における適用条件の項目(条件項目)を包含し、かつより多くの条件項目が処理要求に合致するアクセス規則である。例えば、図7に示すアクセス規則において、規則1の条件項目は規則2の条件項目を包含し、より多くの条件項目を有するため、規則1に適合する処理要求は、必ず規則2にも適合する。このような場合に、規則1のみを適用し、規則2は適用しない。これは、複数のアクセス規則が適合する場合に、処理結果として取得されるデータ・セットの数がより小さくなるアクセス規則を優先することを意味する。
また、本適用例では、上記とは別に、適用条件が適合した場合に処理を行わない(または処理結果を出力しない)とするアクセス規則を最も優先的に適用し、取得(出力)可能なデータ・セットの最大数を規定するアクセス規則を次に優先させて適用する。すなわち、図7に示す例では、規則4の適用を最優先とし、次に規則7の適用を優先させる。
ここで、次のSQL文による処理要求が行われた場合を考える。
要求4:SELECT * FROM 顧客 WHERE 顧客番号=0001 AND パスワード=AAAA;
このSQL文を解析すると、処理の種類はデータの読み出し(SELECT)であり、データ読み出し対象の列は指定されておらず、処理対象のオブジェクトは「顧客テーブル」であり、「顧客番号」および「パスワード」の値が指定されている。
図7を参照して、上記の要求4が適合するアクセス規則を調べると、規則1、規則2、規則4が適合する。ただし、ここでは規則1の適合性が最も高いので、規則1のみを適用し、規則2、規則4は不適用とする。また、処理実行部150による処理の結果によっては、規則5〜規則7が適合する可能性がある。
次に、処理実行部150が要求4に基づく処理を実行すると、図6における「顧客番号」=「0001」のデータ・セットが取得される。このデータ・セットは1行なので、規則6、規則7の適用条件は適合しないため、規則6および規則7は適用されない。一方、規則5の適用条件は適合するので、この処理結果に対して、規則1および規則5が適用される。これにより処理結果は、
「0001、安○いちご、東京都、03−1234−0001、女、1月1日、600万、1234−5678−0001、(NULL)」
となる。すなわち、処理実行部150による処理結果から「パスワード」の値が「NULL」(非表示)に変更された。
次に、次のSQL文による処理要求が行われた場合を考える。
要求5:SELECT * FROM 顧客WHERE 顧客番号=0002;
このSQL文を解析すると、処理の種類はデータの読み出し(SELECT)であり、データ読み出し対象の列は指定されておらず、処理対象のオブジェクトは「顧客テーブル」であり、「顧客番号」の値が指定されている。
図7を参照して、上記の要求5が適合するアクセス規則を調べると、規則2、規則4が適合する。ただし、ここでは規則2の適合性が高いので、規則2のみを適用し、規則4は不適用とする。また、処理実行部150による処理の結果によっては、規則5〜規則7が適合する可能性がある。
次に、処理実行部150が要求5に基づく処理を実行すると、図6における「顧客番号」=「0002」のデータ・セットが取得される。このデータ・セットは1行なので、規則6、規則7の適用条件は適合しないため、規則6および規則7は適用されない。一方、規則5の適用条件は適合するので、この処理結果に対して、規則2および規則5が適用される。これにより処理結果は、
「0002、石○次郎、東京都、03−XXXX−XXXX、男、2月2日、(NULL)、(NULL)、(NULL)」
となる。すなわち、処理実行部150による処理結果から「電話番号」がマスクされ、「収入」、「カード番号」および「パスワード」の値が「NULL」(非表示)に変更された。
次に、次のSQL文による処理要求が行われた場合を考える。
要求6:SELECT * FROM 顧客WHERE 住所=神奈川県;
このSQL文を解析すると、処理の種類はデータの読み出し(SELECT)であり、データ読み出し対象の列は指定されておらず、処理対象のオブジェクトは「顧客テーブル」であり、「住所」の値が指定されている。
図7を参照して、上記の要求6が適合するアクセス規則を調べると、規則3、規則4が適合する。ただし、ここでは規則3の適合性が高いので、規則3のみを適用し、規則4は不適用とする。また、処理実行部150による処理の結果によっては、規則5〜規則7が適合する可能性がある。
次に、処理実行部150が要求6に基づく処理を実行すると、図6における「顧客番号」=「0006」のデータ・セットが取得される。このデータ・セットは1行なので、規則6、規則7の適用条件は適合しないため、規則6および規則7は適用されない。一方、規則5の適用条件は適合するので、この処理結果に対して、規則3および規則5が適用される。これにより処理結果は、
「(NULL)、(NULL)、神奈川県、03−1234−0006、男、6月6日、1000万、(NULL)、(NULL)」
となる。すなわち、処理実行部150による処理結果から「顧客番号」、「氏名」、「カード番号」および「パスワード」の値が「NULL」(非表示)に変更された。
次に、次のSQL文による処理要求が行われた場合を考える。
要求7:SELECT * FROM 顧客WHERE 住所=東京都;
このSQL文を解析すると、処理の種類はデータの読み出し(SELECT)であり、データ読み出し対象の列は指定されておらず、処理対象のオブジェクトは「顧客テーブル」であり、「住所」の値が指定されている。
図7を参照して、上記の要求7が適合するアクセス規則を調べると、規則3、規則4が適合する。ただし、ここでは規則3の適合性が高いので、規則3のみを適用し、規則4は不適用とする。また、処理実行部150による処理の結果によっては、規則5〜規則7が適合する可能性がある。
次に、処理実行部150が要求7に基づく処理を実行すると、図6における「顧客番号」=「0001」、「0002」、「0005」、「0007」のデータ・セットが取得される。このデータ・セットは4行なので、まず規則7が適用され、4行目の「顧客番号」=「0007」のデータ・セットが削除される。次に、規則5および規則6の適用条件はいずれも適合するので、この処理結果に対して、規則3、規則5および規則6が適用される。これにより処理結果は、
「(NULL)、(NULL)、東京都、03−XXXX−XXXX、女、1月1日、600万、(NULL)、(NULL);
(NULL)、(NULL)、東京都、03−XXXX−XXXX、男、2月2日、500万、(NULL)、(NULL);
(NULL)、(NULL)、東京都、03−XXXX−XXXX、男、5月5日、500万、(NULL)、(NULL)」
となる。すなわち、処理実行部150による処理結果から1行分のデータ・セットが削除され、「顧客番号」、「氏名」、「カード番号」および「パスワード」の値が「NULL」(非表示)に変更され、「電話番号」がマスクされた。
次に、次のSQL文による処理要求が行われた場合を考える。
要求8:SELECT * FROM 顧客;
このSQL文を解析すると、処理の種類はデータの読み出し(SELECT)であり、データ読み出し対象の列は指定されておらず、処理対象のオブジェクトは「顧客テーブル」であり、いずれの列の値も指定されていない。
図7を参照して、上記の要求8が適合するアクセス規則を調べると、規則4が適合する。また、処理実行部150による処理の結果によっては、規則5〜規則7が適合する可能性がある。ここでは、規則4が適合しているので、この規則4が最優先で適用される。なお、規則4の適用は、処理実行部150による処理の実行に先立って行われる。したがって、処理実行部150による処理は実行されず、処理結果は「ERROR」となる。
<適用例2>
次に、本実施形態の他の適用例を説明する。本適用例において処理対象となるオブジェクトは、図6に示した表「顧客テーブル」を用いる。また、図8は、本適用例において用いられるアクセス規則の構成例を示す。図8に示すアクセス規則において、規則8〜規則10は、列の指定に関して適用条件が設定されている。
図8に示すアクセス規則について、さらに具体的に説明する。規則8は、「顧客テーブル」を対象として「住所」の値が指定された読み出し要求に関して(適用条件)、「住所」と「性別」以外の全ての列の値を「NULL」(非表示)とする実行規則が規定されている。規則9は、「顧客テーブル」を対象として「性別」の値が「男」に指定された読み出し要求に関して(適用条件)、「収入」以外の全ての列の値を「NULL」(非表示)とする実行規則が規定されている。規則10は、「顧客テーブル」を対象として「性別」の値が「女」に指定された読み出し要求に関して(適用条件)、「誕生日」以外の全ての列の値を「NULL」(非表示)とする実行規則が規定されている。
ここで、次のSQL文による処理要求が行われた場合を考える。
要求9:SELECT * FROM 顧客 WHERE 住所='東京';
このSQL文を解析すると、処理の種類はデータの読み出し(SELECT)であり、データ読み出し対象の列は指定されておらず、処理対象のオブジェクトは「顧客テーブル」であり、「住所」の値が指定されている。図8を参照して、上記の要求9が適合するアクセス規則を調べると、規則8が適合する。
次に、処理実行部150が要求9に基づく処理を実行すると、図6における「顧客番号」=「0001」、「0002」、「0005」、「0007」のデータ・セットが取得される。この結果に対して規則8が適用されるので、処理結果は、
「(NULL)、(NULL)、東京都、(NULL)、女、(NULL)、(NULL)、(NULL)、(NULL);
(NULL)、(NULL)、東京都、(NULL)、男、(NULL)、(NULL)、(NULL)、(NULL);
(NULL)、(NULL)、東京都、(NULL)、男、(NULL)、(NULL)、(NULL)、(NULL);
(NULL)、(NULL)、東京都、(NULL)、女、(NULL)、(NULL)、(NULL)、(NULL)」
となる。すなわち、処理実行部150による処理結果から「住所」および「性別」以外の全ての値が「NULL」(非表示)に変更された。
次に、次のSQL文による処理要求が行われた場合を考える。
要求10:SELECT * FROM 顧客 WHERE 性別='男';
このSQL文を解析すると、処理の種類はデータの読み出し(SELECT)であり、データ読み出し対象の列は指定されておらず、処理対象のオブジェクトは「顧客テーブル」であり、「性別」の値が「男」に指定されている。図8を参照して、上記の要求10が適合するアクセス規則を調べると、規則9が適合する。
次に、処理実行部150が要求10に基づく処理を実行すると、図6における「顧客番号」=「0002」、「0003」、「0004」、「0005」、「0006」のデータ・セットが取得される。この結果に対して規則9が適用されるので、処理結果は、
「(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、500万、(NULL)、(NULL);
(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、800万、(NULL)、(NULL);
(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、450万、(NULL)、(NULL);
(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、500万、(NULL)、(NULL);
(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、1000万、(NULL)、(NULL)」
となる。すなわち、処理実行部150による処理結果から「収入」以外の全ての値が「NULL」(非表示)に変更された。
次に、次のSQL文による処理要求が行われた場合を考える。
要求11:SELECT * FROM 顧客 WHERE 性別='女';
このSQL文を解析すると、処理の種類はデータの読み出し(SELECT)であり、データ読み出し対象の列は指定されておらず、処理対象のオブジェクトは「顧客テーブル」であり、「性別」の値が「女」に指定されている。図8を参照して、上記の要求11が適合するアクセス規則を調べると、規則10が適合する。
次に、処理実行部150が要求11に基づく処理を実行すると、図6における「顧客番号」=「0001」、「0007」のデータ・セットが取得される。この結果に対して規則10が適用されるので、処理結果は、
「(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、1月1日、(NULL)、(NULL)、(NULL);
(NULL)、(NULL)、(NULL)、(NULL)、(NULL)、7月7日、(NULL)、(NULL)、(NULL)」
となる。すなわち、処理実行部150による処理結果から「誕生日」以外の全ての値が「NULL」(非表示)に変更された。
以上、本発明の実施形態について説明したが、本発明の具体的な構成は、上記の実施形態には限定されない。例えば、アクセス対象のオブジェクトは、上記の例で説明した表やそのデータ構成に限定されない。また、アクセス規則を上記の例以外にも様々に設定し得ることは上述した通りである。その他、上記の実施形態に、種々の変更または改良を加えたものも、本発明の技術的範囲に含まれる。
100…データベース・システム、110…オブジェクト格納部、120…アカウント情報記憶部、130…ルール情報記憶部、140…ログイン制御部、150…処理実行部、160…ルール適用部

Claims (8)

  1. データベースを管理する装置であって、
    データベース・オブジェクトを格納したオブジェクト格納部と、
    データの読み出し要求に基づいて、前記オブジェクト格納部に格納された前記データベース・オブジェクトに対する処理を実行する処理実行部と、
    前記処理実行部が実行するデータの読み出し処理に関して、読み出し要求における読み出し対象の項目の指定の仕方を特定した適用条件と実行する処理を規定した規則とを対応付けて保持するルール記憶部と、
    前記読み出し要求における読み出し対象の項目の指定の仕方が前記ルール記憶部に保持された前記適用条件に適合する場合に、データに対するアクセス主体のアクセス権限に関わらず、当該適用条件に対応付けられた前記規則にしたがって、前記処理実行部が実行する処理を変更するルール適用部と、
    を備える、装置。
  2. 前記ルール記憶部に保持された前記適用条件には、1または複数の項目を指定した一の適用条件と、当該一の適用条件で指定された項目の少なくとも一部と同一の項目を含み当該一の適用条件とは異なる組み合わせの複数の項目を指定した他の一の適用条件とが含まれ、当該一の適用条件に対応付けられた前記規則および当該他の一の適用条件に対応付けられた前記規則は、相異なる処理を規定する規則である、請求項1に記載の装置。
  3. 前記ルール記憶部に保持された前記規則には、前記読み出し要求において指定された項目が所定の前記適用条件に適合する場合に、当該項目のデータに代えて当該項目のデータが特定のデータと一致しているか否かの判定結果を処理結果として出力する規則が含まれる、請求項1に記載の装置。
  4. 前記ルール記憶部に保持された前記適用条件には、前記読み出し要求の条件に合致するデータの量が所定量よりも多いという適用条件が含まれ、当該適用条件に対応付けられた前記規則には、当該データに代えて当該データが存在することを示す情報を出力する規則が含まれる、請求項1に記載の装置。
  5. 前記ルール記憶部に保持された前記適用条件には、前記読み出し要求の条件に合致するデータの量が所定量よりも多いという適用条件が含まれ、当該適用条件に対応付けられた前記規則には、当該データに代えて当該データの数を処理結果として出力する規則が含まれる、請求項1に記載の装置。
  6. データベースに対するアクセスを制御する方法であって、
    受け付けたデータの読み出し要求における読み出し対象の項目の指定の仕方が、予め定められた読み出し要求における読み出し対象の項目の指定の仕方を特定した適用条件に適合するか否かを判断するステップと、
    前記読み出し要求に基づいてデータベースに格納されているデータベース・オブジェクトに対する処理を実行するステップと、
    データに対するアクセス主体のアクセス権限に関わらず、前記適用条件に対応付けて定められた規則に基づいて、当該適用条件に適合した前記読み出し要求に基づく処理の実行により得られた処理結果を変換するステップと、
    を含む、方法。
  7. データベースに対するアクセスを制御する方法であって、
    受け付けたデータの読み出し要求における読み出し対象の項目の指定の仕方が、予め定められた読み出し要求における読み出し対象の項目の指定の仕方を特定した適用条件に適合するか否かを判断するステップと、
    前記適用条件に対応付けて定められた規則に基づいて、当該適用条件に適合した前記読み出し要求に基づく処理を変換するステップと、
    前記読み出し要求により要求された処理に関して、当該読み出し要求が前記適用条件に適合しない場合は、データに対するアクセス主体のアクセス権限にしたがい、当該読み出し要求に基づいてデータベースに格納されているデータベース・オブジェクトを読み出す処理を実行し、当該読み出し要求が前記適用条件に適合する場合は、データに対するアクセス主体のアクセス権限に関わらず、当該データベースに格納されているデータベース・オブジェクトに対して前記規則に基づいて変換された処理を実行するステップと、
    を含む、方法。
  8. データベースを管理するコンピュータを、
    受け付けたデータの読み出し要求における読み出し対象の項目の指定の仕方が、予め定められた読み出し要求における読み出し対象の項目の指定の仕方を特定した適用条件に適合するか否かを判断する手段と、
    前記適用条件に適合すると判断された読み出し要求に基づく処理に関して、当該適用条件に対応付けて定められた規則に基づいて、当該読み出し要求に基づく処理を変換する手段と、
    前記適用条件に適合しない前記読み出し要求に関しては、データに対するアクセス主体のアクセス権限にしたがい、当該読み出し要求に基づいてデータベースに格納されているデータベース・オブジェクトを読み出す処理を実行し、前記適用条件に適合した前記読み出し要求に関しては、データに対するアクセス主体のアクセス権限に関わらず、当該データベースに格納されているデータベース・オブジェクトに対して前記規則に基づいて変換された処理を実行する手段と、
    前記適用条件に適合すると判断された読み出し要求に基づく処理に関して、当該適用条件に対応付けて定められた規則に基づいて、当該処理の実行により得られた処理結果を変換する手段として、
    機能させる、プログラム。
JP2013167887A 2013-08-12 2013-08-12 データベースを管理する装置、データベースの制御方法およびプログラム Expired - Fee Related JP6376734B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013167887A JP6376734B2 (ja) 2013-08-12 2013-08-12 データベースを管理する装置、データベースの制御方法およびプログラム
US14/329,621 US11899668B2 (en) 2013-08-12 2014-07-11 Database management apparatus, database control method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013167887A JP6376734B2 (ja) 2013-08-12 2013-08-12 データベースを管理する装置、データベースの制御方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2015036868A JP2015036868A (ja) 2015-02-23
JP6376734B2 true JP6376734B2 (ja) 2018-08-22

Family

ID=52449544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013167887A Expired - Fee Related JP6376734B2 (ja) 2013-08-12 2013-08-12 データベースを管理する装置、データベースの制御方法およびプログラム

Country Status (2)

Country Link
US (1) US11899668B2 (ja)
JP (1) JP6376734B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6376734B2 (ja) * 2013-08-12 2018-08-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データベースを管理する装置、データベースの制御方法およびプログラム
US11106540B1 (en) 2017-04-03 2021-08-31 Amazon Technologies, Inc. Database command replay
US11500824B1 (en) * 2017-04-03 2022-11-15 Amazon Technologies, Inc. Database proxy
US11392603B1 (en) 2017-04-03 2022-07-19 Amazon Technologies, Inc. Database rest API
US11182496B1 (en) 2017-04-03 2021-11-23 Amazon Technologies, Inc. Database proxy connection management
US10649962B1 (en) 2017-06-06 2020-05-12 Amazon Technologies, Inc. Routing and translating a database command from a proxy server to a database server

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5204939A (en) * 1989-12-14 1993-04-20 Fujitsu Limited Rule base processing system and rule evaluation control method therein
US5261102A (en) 1991-03-28 1993-11-09 International Business Machines Corporation System for determining direct and indirect user access privileges to data base objects
US6147976A (en) * 1996-06-24 2000-11-14 Cabletron Systems, Inc. Fast network layer packet filter
JP4054398B2 (ja) * 1997-03-24 2008-02-27 キヤノン株式会社 情報処理装置及びその方法
US6085191A (en) 1997-10-31 2000-07-04 Sun Microsystems, Inc. System and method for providing database access control in a secure distributed network
US6038563A (en) 1997-10-31 2000-03-14 Sun Microsystems, Inc. System and method for restricting database access to managed object information using a permissions table that specifies access rights corresponding to user access rights to the managed objects
JPH11282740A (ja) 1998-03-31 1999-10-15 Casio Comput Co Ltd データベースシステム制御装置およびそのプログラム記録媒 体
US6182142B1 (en) * 1998-07-10 2001-01-30 Encommerce, Inc. Distributed access management of information resources
US6275824B1 (en) 1998-10-02 2001-08-14 Ncr Corporation System and method for managing data privacy in a database management system
JP3790661B2 (ja) * 2000-09-08 2006-06-28 インターナショナル・ビジネス・マシーンズ・コーポレーション アクセス制御システム
JP2002149468A (ja) 2000-11-06 2002-05-24 Hitachi Ltd マルチデータベース統合システムのアクセス権管理方法
US20020095405A1 (en) 2001-01-18 2002-07-18 Hitachi America, Ltd. View definition with mask for cell-level data access control
JP2002342376A (ja) * 2001-05-18 2002-11-29 Nikon Corp サイト検索方法
US7260555B2 (en) 2001-12-12 2007-08-21 Guardian Data Storage, Llc Method and architecture for providing pervasive security to digital assets
US9218507B2 (en) * 2002-07-19 2015-12-22 Charles R. Bowers Method and apparatus for managing confidential information
US20040139043A1 (en) 2003-01-13 2004-07-15 Oracle International Corporation Attribute relevant access control policies
US7620630B2 (en) * 2003-11-12 2009-11-17 Oliver Lloyd Pty Ltd Directory system
US7310647B2 (en) * 2003-12-24 2007-12-18 Oracle International Corporation Column masking of tables
US8055672B2 (en) * 2004-06-10 2011-11-08 International Business Machines Corporation Dynamic graphical database query and data mining interface
JP2006040186A (ja) 2004-07-29 2006-02-09 I Dam Network Kk 秘密情報漏洩防止方法及び装置
US7533420B2 (en) * 2004-12-09 2009-05-12 Microsoft Corporation System and method for restricting user access to a network document
US8732856B2 (en) * 2004-12-30 2014-05-20 Oracle International Corporation Cross-domain security for data vault
US7593942B2 (en) * 2004-12-30 2009-09-22 Oracle International Corporation Mandatory access control base
JP4810113B2 (ja) * 2005-03-29 2011-11-09 日本電気株式会社 データベースチューニング装置及びデータベースチューニング方法並びにプログラム
JP2006323688A (ja) * 2005-05-19 2006-11-30 Canon Inc 文書管理装置、その制御方法、及びプログラム
JP2007018309A (ja) 2005-07-08 2007-01-25 Mitsubishi Electric Corp データベース装置およびdbアクセス制御装置およびアクセス制御システムおよびアクセス制御方法およびアクセス制御プログラム
JP2007109016A (ja) 2005-10-13 2007-04-26 Nec Corp アクセスポリシ生成システム、アクセスポリシ生成方法及びアクセスポリシ生成用プログラム
US8805883B1 (en) * 2006-08-18 2014-08-12 United Services Automobile Association (Usaa) Systems and methods for publishing profiled content
US8606626B1 (en) * 2007-01-31 2013-12-10 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US20080288332A1 (en) * 2007-05-19 2008-11-20 Itaggit, Inc. Designating a parting price for a physical item in the control of a user
US8166000B2 (en) * 2007-06-27 2012-04-24 International Business Machines Corporation Using a data mining algorithm to generate format rules used to validate data sets
JP2009151581A (ja) 2007-12-21 2009-07-09 Duaxes Corp データベースアクセス制御装置
US8108367B2 (en) * 2008-05-20 2012-01-31 International Business Machines Corporation Constraints with hidden rows in a database
JP2011059254A (ja) * 2009-09-08 2011-03-24 Sharp Corp 画像形成装置
US8438190B2 (en) * 2010-01-08 2013-05-07 Sap Ag Generating web services from business intelligence queries
JP5707250B2 (ja) * 2011-06-23 2015-04-22 株式会社日立システムズ データベースアクセス管理システム、方法、及びプログラム
US8930410B2 (en) * 2011-10-03 2015-01-06 International Business Machines Corporation Query transformation for masking data within database objects
US9553757B1 (en) * 2013-05-21 2017-01-24 Amazon Technologies, Inc. Substitution of requests or results in access control systems
JP6376734B2 (ja) * 2013-08-12 2018-08-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データベースを管理する装置、データベースの制御方法およびプログラム
US20150242531A1 (en) * 2014-02-25 2015-08-27 International Business Machines Corporation Database access control for multi-tier processing

Also Published As

Publication number Publication date
US11899668B2 (en) 2024-02-13
US20150046487A1 (en) 2015-02-12
JP2015036868A (ja) 2015-02-23

Similar Documents

Publication Publication Date Title
JP6376734B2 (ja) データベースを管理する装置、データベースの制御方法およびプログラム
US8185546B2 (en) Enhanced control to users to populate a cache in a database system
US8732127B1 (en) Method and system for managing versioned structured documents in a database
US9330166B2 (en) User-specific search over protected contextual data
US8898193B2 (en) Method and apparatus for controlling replication processing of object
US9864876B2 (en) Live editing and publishing of documents within a content management system using a hybrid draft authorization workflow
US20110313981A1 (en) Data Privacy, Redaction and Integrity for Relational Databases
JP6070936B2 (ja) 情報処理装置、情報処理方法及びプログラム
WO2010109568A1 (ja) ストレージ装置
WO2017013701A1 (ja) 計算機システム及びデータベース管理方法
US20220335007A1 (en) Method and system for using dynamic content types
US20170329852A1 (en) Page query method and data processing node in oltp cluster database
US9965473B2 (en) System, information processing apparatus, method for controlling the same, and non-transitory computer-readable medium
CN112912870A (zh) 租户标识符的转换
US20230164208A1 (en) Method and system for enforcing governance across multiple content repositories using a content broker
JP2009211496A (ja) 画像形成装置及びアクセス制御方法
US9111114B1 (en) Method of transforming database system privileges to object privileges
JP2017215868A (ja) 匿名化処理装置、匿名化処理方法、及びプログラム
US7801921B2 (en) Deletion of data from child tables with multiple parents
US10430287B2 (en) Computer
US20230169067A1 (en) Online Updates to Schema Information in Multi-Tenant Database System
US11580251B1 (en) Query-based database redaction
US20150106884A1 (en) Memcached multi-tenancy offload
US9208343B2 (en) Transitive closure security
US20220222207A1 (en) Management computer and data management method by management computer

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151127

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20160115

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20160218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160913

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161014

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170412

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20170419

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20170707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180508

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20180703

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180724

R150 Certificate of patent or registration of utility model

Ref document number: 6376734

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees