(57)【要約】【課題】非階層的なカテゴリによるアクセス制御において、情報の流出を防止でき、複数のカテゴリを効率よく扱うことができ、ライトアップを可能にしたデータベースシステムを提供する。【解決手段】サブジェクトのカテゴリがオブジェクトのカテゴリを全て含む場合に読み取りおよび書き込みを可能にするアクセス制御機能を備えたデータベースシステムにおいて、カテゴリ比較処理部２１は更新要求に応答してサブジェクトのカテゴリとオブジェクトのカテゴリとを比較し、オブジェクトのカテゴリがサブジェクトのカテゴリの全てを含まないことを判断した場合は、オブジェクトへの書き込みを不可能とする更新不可応答を返す。アクセス制御回避データ更新処理部２３はサブジェクトの全てのカテゴリがオブジェクトのカテゴリを含むことが判断された場合にオブジェクトへの書き込みを可能とする。【選択図】図１
2007072895.tif 000002
【特許請求の範囲】
【請求項１】
サブジェクトのカテゴリがオブジェクトのカテゴリを全て含む場合に読み取りおよび書き込みを可能にするアクセス制御機能を備えたデータベースシステムにおいて、
更新要求に応答してサブジェクトのカテゴリとオブジェクトのカテゴリとを比較し、オブジェクトのカテゴリがサブジェクトのカテゴリの全てを含まないことを判断した場合は、オブジェクトへの書き込みを不可能とする更新不可応答を返すカテゴリ比較処理部を備えることを特徴とするデータベースシステム。
【請求項２】
前記カテゴリ比較処理部における比較によってサブジェクトの全てのカテゴリがオブジェクトのカテゴリを含むことが判断された場合に、オブジェクトへの書き込みを可能とするアクセス制御回避データ更新処理部を備えることを特徴とする請求項１記載のデータベースシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、非階層的なカテゴリによる強制アクセス制御機能を有するデータベースシステムに関し、特に書き込みアクセスを制御する技術に関する。
【背景技術】
【０００２】
従来、センシティビティラベルを利用したアクセス制御機能を備えたデータベースシステムが知られている。このデータベースシステムでは、階層的な秘密区分による書き込みのアクセス制御については、ライトダウン（Write down）を禁止し、ライトアップ（Write up）を実現する機能を備えている。なお、ライトダウンおよびライトアップの詳細については後述する。
【０００３】
これに対し、非階層的なカテゴリ（例えば、営業部、総務部、技術部といった部署）による書き込みのアクセス制御については、ユーザ（サブジェクト）のカテゴリが、検索または更新対象となるデータ（オブジェクト）のカテゴリと一致するか、データの全てのカテゴリを含む場合に読み取りおよび書き込みを可能とするアクセス制御を行っている。
【０００４】
なお、データベースシステムのアクセス制御に関する技術として、特許文献１は、情報の間接的な漏洩経路が多数存在してもユーザ相互の情報漏洩に起因する損害を最小限に抑えてデータベースシステムの利用を高めることが可能な情報アクセス制御方法および装置を開示している。
【０００５】
この特許文献１に開示された情報アクセス制御方法は、伝達経路判定器を使用して各端末から送出されたアクセス許可要求情報およびセキュリティ情報から複数のユーザの内の所要の二つのユーザ毎に情報伝達経路を検索し、選択器を使用して両ユーザの利得が均衡する経路を検索した経路から選択して、間接的漏洩経路に起因する情報書き込みの却下を緩和すると共に、制御器を使用してその選択した経路のみをセキュリティ情報で指定した情報が辿るように情報蓄積装置を制御して二つのユーザ相互の間接的漏洩経路に起因する損害を低減する。
【特許文献１】特開平６−１１０７６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述したような、複数のカテゴリに所属する（保持する）ユーザが、単一のカテゴリのみを持つデータに対して書き込みを許可するような従来のアクセス制御では、守られるべき重要な情報が意図的または操作ミスによって、１つのカテゴリのみに所属する誰でもアクセス可能になる。
【０００７】
具体例で説明すると、カテゴリ（Ｘ，Ｙ）に所属するユーザは、カテゴリ（Ｘ）のデータおよびカテゴリ（Ｙ）のデータにアクセス可能であるので、意図的または操作ミスによってカテゴリ（Ｙ）のデータがカテゴリ（Ｘ）のデータに書き込まれる恐れがある。このような書き込みをライトダウンという。
【０００８】
すなわち、ライトダウンとは、複数のカテゴリに属するユーザが、ユーザのカテゴリに含まれるカテゴリのデータに書き込むこと、例えばカテゴリ（Ｘ，Ｙ）に所属するユーザが、カテゴリ（Ｘ）またはカテゴリ（Ｙ）のデータに書き込むことをいう。このようなライトダウンが許されると、カテゴリ（Ｘ）のみに所属するユーザが、本来はアクセスできないカテゴリ（Ｙ）のデータにアクセス可能になるという事態が発生し、情報が流出する危険性があるという問題がある。
【０００９】
また、情報の流出を防止するために、データベースに対する読み出しおよび書き込みにおいてカテゴリが一致しなければデータベースにアクセスできないという仕組みが考えられる。しかしながら、この仕組みでは、カテゴリの組み合わせの数だけカテゴリが存在し、かつ、各カテゴリに所属するユーザ間のデータのやり取りはできないことになり、システムとして効率が悪い。
【００１０】
また、従来の非階層的なカテゴリによるアクセス制御においては、ユーザが属するカテゴリ以外のカテゴリを含むデータへの書き込みができないという問題がある。このような書き込みをライトアップという。すなわち、ライトアップとは、複数のカテゴリに属するユーザが、さらに他のカテゴリを含むデータに書き込むこと、例えばカテゴリ（Ｘ，Ｙ）に所属するユーザが、カテゴリ（Ｘ，Ｙ，Ｚ）のデータに書き込むことをいう。
【００１１】
本発明の第１の課題は、上述した問題を解消するためになされたものであり、非階層的なカテゴリによるアクセス制御において、情報の流出を防止でき、しかも複数のカテゴリを効率よく扱うことができるデータベースシステムを提供することにある。
【００１２】
また、本発明の第２の課題は、非階層的なカテゴリによるアクセス制御において、ライトアップを可能にしたデータベースシステムを提供することにある。
【課題を解決するための手段】
【００１３】
上記第１の課題を解決するために、第１の発明に係るデータベースシステムは、サブジェクトのカテゴリがオブジェクトのカテゴリを全て含む場合に読み取りおよび書き込みを可能にするアクセス制御機能を備えたデータベースシステムにおいて、更新要求に応答してサブジェクトのカテゴリとオブジェクトのカテゴリとを比較し、オブジェクトのカテゴリがサブジェクトのカテゴリの全てを含まないことを判断した場合は、オブジェクトへの書き込みを不可能とする更新不可応答を返すカテゴリ比較処理部を備えることを特徴とする。
【００１４】
また、上記第２の課題を解決するために、第２の発明に係るデータベースシステムは、第１の発明に係るデータベースシステムにおいて、カテゴリ比較処理部における比較によってサブジェクトの全てのカテゴリがオブジェクトのカテゴリを含むことが判断された場合に、オブジェクトへの書き込みを可能とするアクセス制御回避データ更新処理部を備えることを特徴とする。
【発明の効果】
【００１５】
第１の発明に係るデータベースシステムによれば、サブジェクトのカテゴリの全てを含まないオブジェクトに対する書き込み、すなわちライトダウンを禁止するように構成したので、情報の流出を防ぐことができる。また、サブジェクトのカテゴリとオブジェクトのカテゴリとは必ずしも一致する必要がないので、複数のカテゴリを効率よく扱うことができる。
【００１６】
第２の発明に係るデータベースシステムによれば、ユーザのカテゴリを全て含むカテゴリのデータに対して書き込み、すなわちライトアップを許可するように構成したので、複数のカテゴリを効率よく扱う安全なシステムを実現することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施例を、図面を参照しながら詳細に説明する。なお、以下では、本発明のサブジェクトの一例として「ユーザ」を、オブジェクトの一例として「データ」をそれぞれ使用して説明する。
【実施例１】
【００１８】
図１は、本発明の実施例１に係るデータベースシステムの構成を示すブロック図である。このデータベースシステムは、端末１０、アプリケーションサーバ２０およびデータベース（ＤＢ）サーバ３０を有して構成されている。
【００１９】
端末１０は、例えばブラウザなどによる検索システムから構成されている。この端末１０は、アプリケーションサーバ２０に対して更新要求を送ることにより、アプリケーションサーバ２０から更新可能応答または更新不可応答を得る。また、端末１０は、アプリケーションサーバ２０に対して読取要求を送ることにより、アプリケーションサーバ２０から読取可能応答または読取不可応答を得る。
【００２０】
アプリケーションサーバ２０は、例えばＷＥＢサーバとして実現されており、カテゴリ比較処理部２１、データ更新処理部２２、アクセス制御回避データ更新処理部２３およびデータ読取処理部２４を有して構成されている。これらの構成要素は、例えばアプリケーションサーバ２０を構成する処理装置によって実行可能なプログラムによって構成することができる。
【００２１】
カテゴリ比較処理部２１は、端末１０からの更新要求を受け付け、ユーザのカテゴリとデータのカテゴリとを比較する。カテゴリとしては、上述したように、例えば、会社における営業部、総務部、技術部といった部署が使用される。そして、カテゴリ比較処理部２１は、比較の結果に応じて次の３つの処理を実行する。
【００２２】
（１）データのカテゴリが、ユーザのカテゴリのサブセット（一致する場合を除く）である場合は、データの更新不可として端末１０に更新不可応答を返す。
【００２３】
（２）データのカテゴリとユーザのカテゴリが一致する場合、ユーザのカテゴリとデータのカテゴリとが全く異なる場合、およびユーザのカテゴリとデータのカテゴリとが一部重複する場合は、データをデータ更新処理部２２に渡す。
【００２４】
（３）ユーザのカテゴリが、データのカテゴリのサブセット（一致する場合を除く）である場合、データをアクセス制御回避データ更新処理部２３に渡す。
【００２５】
データ更新処理部２２は、従来のアクセス制御機能におけるデータ更新機能と同じ機能を実現する。すなわち、データ更新処理部２２は、ユーザのカテゴリがデータのカテゴリと一致するか、ユーザのカテゴリがデータのカテゴリの全て含む場合に、読み取りおよび書き込みを可能とするといった従来のデータ更新処理を行う。
【００２６】
アクセス制御回避データ更新処理部２３は、「ユーザのカテゴリが検索または更新対象となるデータのカテゴリと一致するか、データの全てのカテゴリを含む場合に読み取りおよび書き込みを可能といった従来のアクセス制御機能」を一時的に回避する権限を有し、ユーザのカテゴリの全てを含むカテゴリのデータに対するデータ更新処理を行う。より具体的には、アクセス制御部３１（詳細は後述する）におけるアクセス制御を一時的に無効にするような特別のコマンドをデータベースサーバ３０のアクセス制御部３１に送る。
【００２７】
データ読取処理部２４は、従来のアクセス制御機能におけるデータ読取機能と同じ機能を実現する。すなわち、データ読取処理部２４は、端末１０からの読取要求に応じてデータベースサーバ３０に対するアクセスの可否を判断し、アクセス可能であればデータベースサーバ３０からデータを読み取って端末１０に送る読取可能応答を行い、アクセス不可能であれば、読取不可応答を端末１０に返すといった従来のデータ読取処理を行う。
【００２８】
データベースサーバ３０は、従来のデータベースサーバと同じであり、アクセス制御部３１およびデータベース３２から構成されている。アクセス制御部３１は、ユーザのカテゴリが検索または更新対象となるデータのカテゴリと一致するか、データの全てのカテゴリを含む場合に、データベース３２に対する読み取りおよび書き込みを可能にする制御を行う。
【００２９】
なお、アクセス制御回避データ更新処理部２３から特別のコマンドが送られてきた場合は、アクセス制御を無効にし、アクセス権限とは無関係にデータの書き込みを許可する。
【００３０】
データベース３２は、実際にデータを格納する。このデータベース３２には、アクセス制御部３１から要求に応じてデータが書き込まれる。また、このデータベース３２に格納されているデータは、アクセス制御部３１からの要求に応じデータが読み取られる。
【００３１】
次に、上記のように構成される本発明の実施例１に係るデータベースシステムの動作を図２に示すフローチャートを参照しながら説明する。なお、データの読み取りの動作は従来と同じであるので、以下では、データの書き込みの動作についてのみ説明する。また、以下では、ユーザはカテゴリ（Ｙ，Ｚ）に所属するものとする。
【００３２】
まず、更新要求が端末１０からアプリケーションサーバ２０に送られる（ステップＳ１）。次いで、端末１０から更新要求を受け取ったアプリケーションサーバ２０のカテゴリ比較処理部２１において、データのカテゴリ（Ｚ）が、ユーザのカテゴリ（Ｙ，Ｚ）のサブセットであるかどうか、つまり、データのカテゴリがユーザのカテゴリの全てを含むかどうかが調べられる（ステップＳ２）。
【００３３】
ステップＳ２において、データのカテゴリ（Ｚ）が、ユーザのカテゴリ（Ｙ，Ｚ）のサブセットであることが判断されると、端末１０に対して更新不可応答が返される（ステップＳ３）。その後、処理は終了する。以上の処理により、ライトダウンを禁止する機能が実現されており、情報の流出を防ぐことができるようになっている。
【００３４】
上記ステップＳ２において、データのカテゴリ（Ｚ）が、ユーザのカテゴリ（Ｙ，Ｚ）のサブセットでないことが判断されると、次いで、ユーザのカテゴリ（Ｙ，Ｚ）がデータのカテゴリ（Ｘ，Ｙ，Ｚ）のサブセットであるか、つまり、データのカテゴリがユーザのカテゴリの全てを含むかどうかが調べられる（ステップＳ４）。このステップＳ４において、ユーザのカテゴリ（Ｙ，Ｚ）がデータのカテゴリ（Ｘ，Ｙ，Ｚ）のサブセットであることが判断されると、次いで、アクセス制御回避データ更新処理部２３にデータが渡される（ステップＳ５）。
【００３５】
アクセス制御回避データ更新処理部２３は、受け取ったデータをデータベースサーバ３０に送る。データベースサーバ３０のアクセス制御部３１は、アクセス制御を無効にして強制的にデータをデータベース３２に書き込んで更新する。その後、処理は終了する。以上の処理により、ライトアップが行われ、複数のカテゴリを効率よく扱うデータベースシステムが実現されている。
【００３６】
上記ステップＳ６において、ユーザのカテゴリ（Ｙ，Ｚ）がデータのカテゴリ（Ｘ，Ｙ，Ｚ）のサブセットでないことが判断されると、データ更新処理部２２にデータが渡される（ステップＳ６）。換言すれば、データのカテゴリ（Ｙ，Ｚ）とユーザのカテゴリ（Ｙ，Ｚ）とが一致する場合、ユーザのカテゴリ（Ｙ，Ｚ）とデータのカテゴリ（Ｗ）とが全く異なる場合およびユーザのカテゴリ（Ｙ，Ｚ）とデータのカテゴリ（Ｘ，Ｙ）とが一部重複する場合は、データ更新処理部２２によって、従来と同様のアクセス制御が実施される。
【００３７】
すなわち、ユーザのカテゴリとデータのカテゴリが一致する場合は、従来の強制アクセス制御機能におけるアクセス条件を満たしているので、データ更新処理部２２において、更新可能応答が端末１０に返され、通常の更新処理でデータベース３２のデータが更新される。
【００３８】
一方、ユーザのカテゴリとデータのカテゴリが全く異なる場合や一部重複する場合は、データ更新処理部２２は、従来の強制アクセス制御機能を用いてアクセスを禁止し、端末１０に更新不可応答を返す。その後、処理は終了する。
【００３９】
上述した実施例１に係るデータベースシステムでは、従来のデータベースシステムのアクセス制御機能を実現しているデータ更新処理部２２およびデータ読取処理部２２はそのまま利用し、カテゴリ比較処理部２１およびアクセス制御回避データ更新処理部２３を追加のみで、複数のカテゴリのデータを効率的に取り扱うことが可能になり、また、より高いセキュリティを確保することができる。
【産業上の利用可能性】
【００４０】
本発明は、セキュリティを高く維持することが要求されるデータベースシステムに利用可能である。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施例１に係るデータベースシステムの構成を示すブロック図である。
【図２】本発明の実施例１に係るデータベースシステムの動作を示すフローチャートである。
【符号の説明】
【００４２】
１０  端末
２０  アプリケーションサーバ
２１  カテゴリ比較処理部
２２  データ更新処理部
２３  アクセス制御回避データ更新処理部
２４  データ読取処理部
３０  データベースサーバ
３１  アクセス制御部
３２  データベース
【図１】
2007072895.tif 000003
【図２】
2007072895.tif 000004