(57)【要約】【課題】  ユーザのアクセス権限をデータベースのスキーマ上に保持し、アプリケーション側でのアクセス権限に関するロジック実装を軽減するデータベースシステム等を提供する。【解決手段】  データベース３００は、実データ３１０を記憶するデータスキーマ３０１と、ユーザグループ１０４毎の実データ３１０のデータ参照範囲情報３３０、アクセス権限情報３４０を記憶する複数のアクセススキーマ３０２からなり、アプリケーション１１１は、クライアント端末１０３からのログイン情報に応じて、当該ユーザグループ１０４に対応付けられるアクセススキーマ３０２に接続し、データ参照範囲情報３３０、アクセス権限情報３４０に基づいてフィルタリング処理やアクセス制限を行うアクセススキーマ３０２を介して、データスキーマ３０１の実データ３１０をアクセスする。【選択図】  図７
2006268265.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末にネットワークを介して接続され、データを記憶する少なくとも１つのデータベースを有し、前記データベースを操作、管理するサーバであって、
前記データベースは、
前記データを記憶するデータスキーマと、ユーザグループ毎の前記データスキーマに対する前記データの参照範囲情報、アクセス権限情報を記憶する少なくとも１つのアクセススキーマと、からなり、
前記クライアント端末からのログイン情報に応じて、当該ユーザのユーザグループに対応付けられるアクセススキーマに接続する接続手段と、
前記アクセススキーマを介して、前記データスキーマのデータをアクセスするアクセス手段と、
を備え、
前記アクセススキーマは、
前記アクセス権限情報に基づいて、前記データスキーマのデータに対するアクセス制限を行うアクセス制限手段と、
前記参照範囲情報に基づいて、前記データスキーマのデータに対するフィルタリング処理を行うフィルタリング手段と、
を具備することを特徴とするデータベースサーバ。
【請求項２】
前記アクセス権限情報は、前記データスキーマのデータに対して、値の制限情報、読み取り、書き込み、削除等の属性の制限情報の少なくともいずれかを有することを特徴とする請求項１記載のデータベースサーバ。
【請求項３】
前記参照範囲情報は、前記データスキーマのデータに対して、所定のレコードデータ及び／又はカラムデータのみを参照可能とする情報を有することを特徴とする請求項１記載のデータベースサーバ。
【請求項４】
前記アクセススキーマのデータ構成は、前記データスキーマの実データのデータ構成と同一であることを特徴とする請求項１から請求項３までのいずれかに記載のデータベースサーバ。
【請求項５】
前記アクセス手段は、
前記データベースのデータの検索、閲覧、登録等の少なくともいずれかの操作であることを特徴とする請求項１記載のデータベースサーバ。
【請求項６】
ユーザ毎にログイン情報とユーザグループとを対応付けたユーザ情報を保持し、
前記接続手段は、
前記ユーザ情報に基づいて、前記ログイン情報から前記ユーザグループを特定することを特徴とする請求項１記載のデータベースサーバ。
【請求項７】
クライアント端末と、データを記憶する少なくとも１つのデータベースを有し、前記データベースを操作、管理するデータベースサーバと、がネットワークを介して接続されるシステムであって、
前記データベースは、
前記データを記憶するデータスキーマと、ユーザグループ毎の前記データスキーマに対する前記データの参照範囲情報、アクセス権限情報を記憶する少なくとも１つのアクセススキーマと、からなり、
前記データベースサーバは、
前記クライアント端末からのログイン情報に応じて、当該ユーザのユーザグループに対応付けられるアクセススキーマに接続する接続手段と、
前記アクセススキーマを介して、前記データスキーマのデータをアクセスするアクセス手段と、
を備え、
前記アクセススキーマは、
前記アクセス権限情報に基づいて、前記データスキーマのデータに対するアクセス制限を行うアクセス制限手段と、
前記参照範囲情報に基づいて、前記データスキーマのデータに対するフィルタリング処理を行うフィルタリング手段と、
を具備することを特徴とするデータベースシステム。
【請求項８】
コンピュータを請求項１から請求項６のいずれかに記載のデータベースサーバとして機能させるプログラム。
【請求項９】
コンピュータを請求項１から請求項６のいずれかに記載のデータベースサーバとして機能させるプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを利用したデータベースシステムに係り、特に、アクセススキーマを介したデータ制限方法に関する。
【背景技術】
【０００２】
近年、カタログ制作を行う際、コンピュータの普及に伴い、カタログに載せる商品データをデータベース化して利用することが始まっている。データベースと連携し、デスクトップパブリッシング（ＤＴＰ）等でカタログ制作作業を行い、その効率化が図られてきている。例えば、商品情報等を蓄積したデータベースと、データベースの情報を管理し、データベースの情報の入出力、検索、閲覧等の機能を提供するサーバと複数のユーザ端末装置等からなるＷｅｂ上で動作するデータベースシステムが幾つか存在する（例えば、特許文献１）。
【０００３】
【特許文献１】特開２００１−３０６３７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のデータベースシステムでは、データ参照範囲やアクセス権限の設定情報に基づいたアクセス制限やフィルタリング処理をそれぞれのアプリケーションで構築する必要があった。
図９は、従来のデータシステムにおけるユーザのアクセス権限に関するデータ制限方法を示す図である。図９に示すように、従来データシステム１０００は、データベース１３００に実データ、ユーザグループ１０４毎の設定情報等を有し、例えば、ユーザグループ１０４−１のクライアント端末１０３からのログイン要求に対して、アプリケーション１１１１は、ログインしようとしているユーザグループ１０４−１の設定情報を、データベース１３００から読み込み、ユーザグループ１０４−１の設定情報に基づいて、アクセス制限やフィルタリング処理を行っていた。
その結果、データベース１３００に接続する種類の異なるアプリケーション１１１１毎に同様のロジック実装が必要となり、ロジック実装量が膨らむほか、アプリケーション１１１１開発効率及びメンテナンス効率の低下を招く原因となっていた。
【０００５】
本発明は、以上の点に鑑みてなされたものであり、ユーザのアクセス権限をデータベースのスキーマ上に保持し、アプリケーション側でのアクセス権限に関するロジック実装を軽減するデータベースシステム等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
前述した目的を達成するために第１の発明は、クライアント端末にネットワークを介して接続され、データを記憶する少なくとも１つのデータベースを有し、前記データベースを操作、管理するサーバであって、前記データベースは、前記データを記憶するデータスキーマと、ユーザグループ毎の前記データスキーマに対する前記データの参照範囲情報、アクセス権限情報を記憶する少なくとも１つのアクセススキーマと、からなり、前記クライアント端末からのログイン情報に応じて、当該ユーザのユーザグループに対応付けられるアクセススキーマに接続する接続手段と、前記アクセススキーマを介して、前記データスキーマのデータをアクセスするアクセス手段と、を備え、前記アクセススキーマは、前記アクセス権限情報に基づいて、前記データスキーマのデータに対するアクセス制限を行うアクセス制限手段と、前記参照範囲情報に基づいて、前記データスキーマのデータに対するフィルタリング処理を行うフィルタリング手段と、を具備することを特徴とするデータベースサーバである。
【０００７】
また、前記アクセス手段は、前記データベースのデータの検索、閲覧、登録等の少なくともいずれかの操作を有することが望ましい。
また、ユーザ毎にログイン情報とユーザグループとを対応付けたユーザ情報を保持し、前記接続手段は、前記ユーザ情報に基づいて、前記ログイン情報からユーザグループを特定することが望ましい。
【０００８】
第１の発明によるサーバは、クライアント端末にネットワークを介して接続され、データを記憶する少なくとも１つのデータベースを有し、データベースは、データを記憶するデータスキーマと、ユーザグループ毎のデータスキーマに対するデータの参照範囲情報、アクセス権限情報を記憶する少なくとも１つのアクセススキーマと、からなり、クライアント端末からのログイン情報に応じて、当該ユーザのユーザグループに対応付けられるアクセススキーマに接続し、アクセススキーマを介して、データスキーマのデータをアクセスする。アクセススキーマは、アクセス権限情報に基づいて、データスキーマのデータに対するアクセス制限を行い、参照範囲情報に基づいて、データスキーマのデータに対するフィルタリング処理を行う。
【０００９】
「データスキーマ」には、実データを記憶する。
「アクセススキーマ」は、ユーザグループ毎の、データスキーマに対するデータの参照範囲やアクセス権限等の情報を保持し、このデータの参照範囲やアクセス権限等の情報に基づく、アクセス制限、フィルタリング処理を行う。
「アクセス権限情報」は、データスキーマのデータに対して、値の制限、読み取り、書き込み、削除等の属性等の制限情報である。
「参照範囲情報」は、データスキーマのデータに対して、アクセス可能なレコードデータや、カラムデータの参照範囲情報である。
【００１０】
第１の発明では、データベースサーバは、これらのアクセス制限やフィルタリングロジックをデータベース管理手段で担うようにし、アプリケーション側のロジック実装の負荷を軽減し、プログラム開発効率が向上できる。
また、アクセス制限やフィルタリング処理のビジネスロジックの統一が得られると共に、個々のアプリケーションには手を入れなくて済むので、メンテナンス効率が向上できる。
更に、データの登録・更新時に、権限等の細かなチェック処理をデータベース管理手段が併せて担う分、アプリケーション側での事前チェック処理等が不要になるので、全体の処理パフォーマンスの向上が見込める。
【００１１】
また、第２の発明は、クライアント端末と、データを記憶する少なくとも１つのデータベースを有し、前記データベースを操作、管理するサーバと、がネットワークを介して接続されるシステムであって、前記データベースは、前記データを記憶するデータスキーマと、ユーザグループ毎の前記データスキーマに対する前記データの参照範囲情報、アクセス権限情報を記憶する少なくとも１つのアクセススキーマと、からなり、前記データベースサーバは、前記クライアント端末からのログイン情報に応じて、当該ユーザのユーザグループに対応付けられるアクセススキーマに接続する接続手段と、前記アクセススキーマを介して、前記データスキーマのデータをアクセスするアクセス手段と、を備え、前記アクセススキーマは、前記アクセス権限情報に基づいて、前記データスキーマのデータに対するアクセス制限を行うアクセス制限手段と、前記参照範囲情報に基づいて、前記データスキーマのデータに対するフィルタリング処理を行うフィルタリング手段と、を具備することを特徴とするデータベースシステムである。
【００１２】
第２の発明は、第１の発明のデータベースサーバと、データベースに対して操作要求を行うクライアント端末から構成されるデータベースシステムに関する発明である。
【００１３】
第３の発明は、コンピュータを第１の発明のデータベースサーバとして機能させるプログラムである。
第４の発明は、コンピュータを第１の発明のデータベースサーバとして機能させるプログラムを記録した記録媒体である。
【００１４】
上述のプログラムをＣＤ−ＲＯＭ等の記録媒体に保持させて流通させてもよいし、このプログラムを通信回線を介して送受することもできる。
【発明の効果】
【００１５】
本発明は、ユーザのアクセス権限をデータベースのスキーマ上に保持し、アプリケーション側でのアクセス権限に関するロジック実装を軽減するデータベースシステム等を提供することができる。
【発明を実施するための最良の形態】
【００１６】
以下に、添付図面を参照しながら、本発明に係るデータベースシステム等の好適な実施形態について詳細に説明する。なお、以下の説明および添付図面において、略同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略することにする。
【００１７】
図１は、本発明の本実施の形態に係るデータベースシステム１００の概略構成を示す図である。
【００１８】
図１は、データベースシステム１００の一例であり、図１に示すように、データベースシステム１００は、サーバ１０１、複数のユーザグループ１０４−１、１０４−２、１０４−３のユーザが有する複数のクライアント端末１０３等が、ネットワーク１０９を介して接続されて構成される。尚、データベースシステム１００は、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）技術を用いて実現した場合の構成図である。
【００１９】
ネットワーク１０９は、インターネット、ローカルエリアネットワーク（ＬＡＮ）、社内ＬＡＮ等のネットワークであり、有線、無線を問わない。
【００２０】
サーバ１０１は、サーバコンピュータ等であり、Ｗｅｂサーバ１１０、アプリケーション１１１、データベース管理手段１１２等を有する。
アプリケーション１１１は、Ｗｅｂサーバ１１０上で動作するアプリケーションであり、クライアント端末１０３からのアクセスにより、Ｗｅｂサーバ１１０から呼び出され、データベース３００の情報（文字列や画像等）の検索、閲覧、登録等の各種操作を行い、ユーザの登録や各種設定等のシステム運用・管理を行う。クライアント端末１０３のＷｅｂブラウザ１２０上に情報を送信、表示する。
データベース管理手段１１２は、データベースエンジン等であり、データスキーマ３０１と、実データを記憶するデータスキーマ３０１に対するデータの参照範囲やアクセス権限等の情報を保存する複数のアクセススキーマ３０２−１、３０２−２、３０２−３と、からなるデータベース３００を有し、データベース３００への検索、参照、登録、削除等の各種要求に対する該当処理を行う。
【００２１】
複数のユーザグループ１０４−１、１０４−２、１０４−３は、ユーザを、データベース３００の運用／操作形態や、営業部門、開発部門、企画部門等の企業内の部署別にグループ化した情報であり、例えば、一般ユーザのユーザグループ１０４−１、特別ユーザのユーザグループ１０４−２、管理者（ユーザ）のユーザグループ１０４−３等である。ユーザグループ１０４−１、１０４−２、１０４−３のユーザは、夫々クライアント端末１０３を有する。クライアント端末１０３は、パーソナルコンピュータ、携帯型端末機（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等であり、クライアント端末１０３には、Ｗｅｂブラウザ１２０が搭載される。クライアント端末１０３は、Ｗｅｂブラウザ１２０を介して、サーバ１０１のアプリケーション１１１にアクセスし、データベース３００の所望する情報の検索、閲覧、登録要求や操作指示等を送信し、受信した情報等を表示する。
【００２２】
次に、サーバ１０１のハードウェア構成を説明する。図２は、サーバ１０１のハードウェア構成図である。
【００２３】
サーバ１０１は、制御部２０１、記憶部２０２、メディア入出力部２０３、通信制御部２０４、入力部２０５、表示部２０６、印刷部２０７等が、システムバス２０９を介して接続されて構成される。
【００２４】
制御部２０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ  ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ  ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成される。
【００２５】
ＣＰＵは、記憶部２０２、ＲＯＭ、記録媒体等に格納されるプログラムをＲＡＭ上のワークメモリ領域に呼び出して実行し、システムバス２０９を介して接続された各装置を駆動制御し、サーバ１０１が行う後述する各種処理（図８参照）を実現する。
ＲＯＭは、不揮発性メモリであり、コンピュータのブートプログラムやＢＩＯＳ等のプログラム、データ等を恒久的に保持している。
ＲＡＭは、揮発性メモリであり、記憶部２０２、ＲＯＭ、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部２０１が各種処理を行う為に使用するワークエリアを備える。
【００２６】
記憶部２０２は、ＨＤＤ（ハードディスクドライブ）であり、制御部２０１が実行するプログラム、プログラム実行に必要なデータ、ＯＳ（オペレーティングシステム）等が格納される。プログラムに関しては、ＯＳ（オペレーティングシステム）に相当する制御プログラム３９１や、本コンピュータを適用するサーバ１０１が行う後述の処理に相当するアプリケーションプログラム３９２等が格納されている。
これらの各プログラムコードは、制御部２０１により必要に応じて読み出されてＲＡＭに移され、ＣＰＵに読み出されて各種の手段として実行される。
【００２７】
メディア入出力部２０３（ドライブ装置）は、データの入出力を行い、例えば、フロッピディスクドライブ、ＰＤドライブ、ＣＤドライブ（−ＲＯＭ、−Ｒ、−ＲＷ等）、ＤＶＤドライブ（−ＲＯＭ、−Ｒ、−ＲＷ等）、ＭＯドライブ等のメディア入出力装置等を有する。
【００２８】
通信制御部２０４は、通信制御装置、通信ポート等を有し、サーバ１０１とネットワーク１０９間の通信を媒介する通信インタフェースであり、ネットワーク１０９を介して、サーバ１０１と、クライアント端末１０３間の通信制御を行う。
【００２９】
入力部２０５は、データの入力を行い、例えば、キーボード、マウス等のポインティングデバイス、テンキー等の入力装置を有する。
入力部２０５を介して、サーバ１０１に対して、操作指示、動作指示、データ入力等を行うことができる。
【００３０】
表示部２０６は、ＣＲＴモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等（ビデオアダプタ等）を有する。
【００３１】
印刷部２０７は、プリンタであり、印刷出力処理を行う。
【００３２】
システムバス２０９は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
【００３３】
次に、図３を参照しながら、サーバ１０１の記憶部２０２が保持する情報について説明する。図３は、記憶部２０２が保持する情報を示す図である。
【００３４】
記憶部２０２内には、複数のデータベース３００、管理スキーマ３２５及び制御プログラム３９１、アプリケーションプログラム３９２等が格納されている。
【００３５】
データベース３００は、データスキーマ３０１と、複数のアクセススキーマ３０２からなる。データスキーマ３０１に対し、複数のアクセススキーマ３０２が関係付けられ、各アクセススキーマ３０２には、一つのユーザグループ１０４が紐付けられ、ユーザが所属するユーザグループ１０４毎にアクセス権限、データ参照範囲等を設定する。
尚、サーバ１０１が管理するデータベース３００は、必要に応じて、複数存在してもよい。
【００３６】
図４は、データスキーマ３０１を示す図である。
図４に示すように、データスキーマ３０１は、実データ３１０、アクセススキーマ接続情報３１５等を少なくとも有する。
実データ３１０は、文字情報や画像情報である複数の情報３１１からなる。例えば、情報３１１は、商品情報であり、商品のスペック等の文字情報、商品の素材情報である画像情報等からなる。
アクセススキーマ接続情報３１５は、アクセススキーマ特定・接続するための情報であり、アクセススキーマ名３１６とユーザグループＩＤ３２２等を少なくとも有し、接続するアクセススキーマ３０２とユーザグループ１０４が対応付けられている。
【００３７】
図５は、アクセススキーマ３０２を示す図である。
図５に示すように、アクセススキーマ３０２は、一つのユーザグループ１０４が紐付けられる当該ユーザグループ１０４のデータ参照範囲情報３３０、アクセス権限情報３４０等を有する。
データ参照範囲情報３３０は、データスキーマ３０１の実データ３１０に対して、当該ユーザグループ１０４のアクセス可能なレコードデータやカラムデータ等を参照可能とする範囲を設定した情報である。
アクセス権限情報３４０は、データスキーマ３０１の実データ３１０に対して、当該ユーザグループ１０４の値の制限、読み取り、書き込み、削除等の属性等の制限情報である。
アクセススキーマ３０２のデータ構成は、データスキーマ３０１の実データの構成と同一である（後述、詳しく説明する）。
【００３８】
管理スキーマ３２５は、データベース管理手段１１２によって管理されるデータであり、データベースサーバに１つ存在し、複数のユーザ情報３２０、データベースの情報等を保持する。
ユーザ情報３２０は、接続可能なユーザ情報であり、ユーザＩＤ３２１、ユーザグループＩＤ３２２、パスワード、ユーザの個人情報等を有する。
【００３９】
制御プログラム３９１は、サーバ１０１の各構成部分を駆動制御するプログラムであり、ＯＳ（オペレーティングシステム）に相当する。
アプリケーションプログラム３９２は、サーバ１０１が行う後述の処理（図８参照）に相当する実行可能プログラムであり、ＷＷＷサーバ１１０、アプリケーション１１１等に該当するプログラムである。
【００４０】
次に、図６を参照しながら、クライアント端末１０３のハードウェア構成を説明する。図６は、クライアント端末１０３のハードウェア構成図である。
【００４１】
クライアント端末１０３は、制御部４０１、記憶部４０２、通信制御部４０３、メディア入出力部４０４、入力部４０５、表示部４０６、印刷部４０７等が、システムバス４０９を介して接続される。
尚、クライアント端末１０３のハードウェア構成は、図２について前述したサーバ１０１と同様の構成を採る。
【００４２】
次に、図７を参照しながら、データベースシステム１００におけるユーザのアクセス権限に関するデータ制限方法について説明する。図７は、データベースシステム１００におけるユーザのアクセス権限に関するデータ制限方法を示す図である。
【００４３】
ユーザグループ１０４−１、１０４−２、１０４−３の各クライアント端末１０３は、サーバ１０１のアプリケーション１１１にアクセス、データベース３００にログイン要求を行う。
アプリケーション１１１は、クライアント端末１０３からのログイン要求に対するユーザＩＤ３２１に対応付けられるユーザグループＩＤ３２２からアクセススキーマ３０２を特定、接続し、アクセススキーマ３０２を介して、データスキーマ３０１上の実データ３１０をアクセスする。
アクセススキーマ３０２−１、３０２−２、３０２−３は、夫々保持されているユーザグループ１０４−１、１０４−２、１０４−３毎のデータ参照範囲情報３３０、アクセス権限情報３４０に基づくフィルタリング処理やアクセス制限処理を行う。
【００４４】
次に、図８を参照しながら、データベースシステム１００における、アクセススキーマ３０２を介したユーザのアクセス権限に関するデータ制限方法の処理手順について詳しく説明する。図８は、データベースシステム１００におけるユーザのアクセス権限に関するデータ制限方法の処理手順を示すフローチャートである。
【００４５】
サーバ１０１は、アプリケーション１１１、データベース管理手段１１２（アクセススキーマ３０２−１、３０２−２、３０２−３（以下３０２−１を代表として説明する））、データスキーマ３０１）を介して、ユーザグループ１０４−１、１０４−２、１０４−３（以下１０４−１を代表として説明する）の各クライアント端末１０３に対して、ユーザのアクセス権限に関するデータ制限処理を行う。
【００４６】
サーバ１０１の記憶部２０２には、アプリケーションプログラム３９２であるＷｅｂサーバ１１０、アプリケーション１１１に相当する実行可能プログラムがインストールされている。以下のサーバ１０１の処理は、Ｗｅｂサーバ１１０、アプリケーション１１１、データベース管理手段１１２を介して、このプログラムの制御に従って、サーバ１０１の制御部２０１によって行われる。
【００４７】
また、クライアント端末１０３の記憶部４０２には、アプリケーションプログラム３９２であるＷｅｂブラウザ１２０がインストールされており、以下のクライアント端末１０３の処理（Ｗｅｂブラウザ１２０を介したサーバ１０１へのアクセス、サーバ１０１への操作指示等）は、クライアント１０３の制御部４０１によって行われる。
【００４８】
ユーザグループ１０４−１のクライアント端末１０３の制御部４０１は、サーバ１０１のアプリケーション１１１を介して、データベース３００にログイン要求を行う（ステップＳ８０１）。
【００４９】
例えば、クライアント端末１０３のＷｅｂブラウザ１２０から、サーバ１０１のアプリケーション１１１の所定のＵＲＬを指定してサーバ１０１にアクセスし、サーバ１０１の制御部２０１は、ログイン画面データをクライアント端末１０３に送信する。クライアント端末１０３の制御部４０１は、ログイン画面（図示せず）に従って、入力されたユーザＩＤ３２１、パスワード３２３等をサーバ１０１に送信する。
【００５０】
サーバ１０１の制御部２０１は、受け取ったユーザＩＤ３２１、パスワード３２３から、データベース管理手段１１２の管理スキーマ３２５を介して、取得した管理スキーマ３２５上のユーザ情報３２０に基づいて、ユーザ認証を行い、正しくユーザ認証された場合、ユーザＩＤ３２１に対応付けられるユーザグループＩＤ３２２（ユーザグループ１０４−１に相当）を取得する（ステップＳ８０２）。
【００５１】
制御部２０１は、ユーザグループＩＤ３２２に応じた接続可能なデータベース一覧データをクライアント端末１０３に送信する（ステップＳ８０３）。
【００５２】
クライアント端末１０３の制御部４０１は、データベース一覧（図示せず）を表示し、所望するデータベースを選択し、送信する（ステップＳ８０４）。
【００５３】
サーバ１０１の制御部２０１は、選択されたデータベース名、ユーザグループＩＤ３２２（ユーザグループ１０４−１に相当）から、データベース管理手段１１２のデータスキーマ３０１上のアクセススキーマ接続情報３１５に基づいて、ユーザグループＩＤ３２２に対するアクセススキーマ名３１６を取得し、アクセススキーマ３０２−１を特定し、アクセススキーマ３０２−１を接続する（ステップＳ８０５）。
【００５４】
クライアント端末１０３の制御部４０１は、例えば、データベース３００に対して、データの登録、検索、閲覧等の操作要求を行う（ステップＳ８０６）。
サーバ１０１の制御部２０１は、アクセススキーマ３０２−１を介して、データベース（データスキーマ）の実データ３１０の登録、検索等の操作を行う（ステップＳ８０７）。
アクセススキーマ３０２−１は、アクセススキーマ３０２−１のユーザグループ１０４−１用のデータ参照範囲情報３３０、アクセス権限情報３４０に基づいて、データスキーマ３０１の実データ３１０に対する、フィルタリング処理、アクセス制限を行う（ステップＳ８０８）。
【００５５】
次に、アクセススキーマ３０２のアクセス権限制御や参照範囲制御について、詳しく説明する。
【００５６】
アクセススキーマ３０２のアクセス権限制御や参照範囲制御は、例えば、Ｖｉｅｗ、シノニム、オブジェクト権限設定、トリガーなどを用いて実現する。アクセススキーマ３０２のデータ参照範囲情報３３０はＶｉｅｗ、シノニム等であり、アクセス権限情報３４０はオブジェクト権限設定、トリガー等である。
【００５７】
データスキーマ３０１の各実データ３１０（実表）は、アクセススキーマ３０２のＶｉｅｗやシノニムに対応しており、データスキーマ３０１の実データ３１０（実表）にアクセスする際には、対象の実表に対するＶｉｅｗ又はシノニムを介してアクセスする。
アクセススキーマ３０２のＶｉｅｗとシノニムのデータ構成が、データスキーマの実データの構成と同一である。
【００５８】
Ｖｉｅｗは、例えば、ＳＱＬ（Ｓｔｒｕｃｔｕｒｅｄ Ｑｕｅｒｙ Ｌａｎｇｕａｇｅ）文が設定されており、このＳＱＬ文にて参照できるレコードやカラムがフィルタリングされ、Ｖｉｅｗ（仮想表）がデータスキーマ３０１の実データ３１０（実表）を基に作成される。Ｖｉｅｗを通して、実際にはデータスキーマ３０１の実データ３１０に対して参照・更新が行われる。
また、Ｖｉｅｗによる参照範囲制限を行う必要のない実データ３１０（実表）に対しては、シノニムを使用して、データスキーマ３０１の実表にアクセスする。シノニムは、データスキーマ３０１の実データ３１０（実表）をリンク付け、データスキーマ３０１の実データ３１０（実表）にアクセスする。
【００５９】
また、それぞれＶｉｅｗやシノニムに対して、アクセス権限制御のオブジェクト権限、トリガーを設定する。
オブジェクト権限は、表などのオブジェクトに対するデータの参照／追加／更新／削除などの権限であり、データスキーマ３０１の実データ３１０（実表）に対して、アクセススキーマ３０２からアクセスする際に、データの参照／追加／更新／削除等の可／不可を設定する。
トリガーは、登録／更新／削除権限に応じて、権限を持たない操作が行われた際に、その操作を中止するなどの、登録／更新／削除作業の制限を設定する。トリガーが動作するように設定しているテーブルに対して、データの追加や更新、削除などが行われた際に、設定している制限機能が動作する。
【００６０】
以上説明したように、本発明の実施の形態によれば、サーバ１０１の制御部２０１は、実データ３１０を記憶するデータスキーマ３０１と、ユーザグループ１０４毎のデータスキーマ３０１に対する実データ３１０のデータ参照範囲情報３３０、アクセス権限情報３４０を記憶する少なくとも１つ以上のアクセススキーマ３０２と、からなるデータベース３００を有し、クライアント端末１０３からのログイン情報に応じて、当該ユーザのユーザグループ１０４に対応付けられるアクセススキーマ３０２に接続し、アクセススキーマ３０２を介して、データスキーマ３０１の実データ３１０をアクセスする。各アクセススキーマ３０２は、対応付けられたユーザグループ１０４毎のデータ参照範囲情報３３０、アクセス権限情報３４０に基づいて、データスキーマ３０１の実データ３１０に対するフィルタリング処理やアクセス制限を行う。
【００６１】
これにより、これらのアクセス制限やフィルタリングロジックをデータベース管理システム（データベース管理手段）で担うようにし、アプリケーション側のロジック実装の負荷を軽減し、プログラム開発効率が向上できる。
また、アクセス制限やフィルタリング処理のビジネスロジックの統一が得られると共に、個々のアプリケーションには手を入れなくて済むので、メンテナンス効率が向上できる。
更に、データの登録・更新時に、権限等の細かなチェック処理をデータベース管理システムが併せて担う分、アプリケーション側での事前チェック処理等が不要になるので、全体の処理パフォーマンスの向上が見込める。
また、アクセススキーマ３０２内のデータ参照範囲情報３３０、アクセス権限情報３４０等の物理テーブル構成やファンクション等は同一であるので、アプリケーション１１１が権限等を意識せずにアクセスすることを可能とする。
【００６２】
尚、本実施の形態では、サーバ１０１に、Ｗｅｂサーバ１１０、アプリケーション１１１、データベース管理手段１１２等を有し、クライアント端末１０３から、サーバ１０１にアクセスし、Ｗｅｂサーバ１１０を介してアプリケーション１１１を起動したが、予め、クライアント端末１０３側にアプリケーション１１１のプログラムをダウンロードにしておき、クライアント端末１０３上のアプリケーション１１１の実行可能プログラムを起動し、サーバ１０１側のデータベース管理手段１１２のデータベース３００（データスキーマ３０１）をアクセスしてもよい。
【００６３】
尚、図８に示す処理を行うプログラムはＣＤ−ＲＯＭ等の記録媒体に保持させて流通させてもよいし、このプログラムを通信回線を介して送受することもできる。
【００６４】
以上、添付図面を参照しながら、本発明に係るデータベースシステム等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【図面の簡単な説明】
【００６５】
【図１】本実施の形態に係るデータベースシステム１００の概略構成を示す図
【図２】サーバ１０１のハードウェア構成図
【図３】記憶部２０２が保持する情報を示す図
【図４】デースキーマ３０１を示す図
【図５】アクセススキーマ３０２を示す図
【図６】クライアント端末１０３のハードウェア構成図
【図７】データベースシステム１００におけるユーザのアクセス権限に関するデータ制限方法を示す図
【図８】データベースシステム１００におけるユーザのアクセス権限に関するデータ制限方法の処理手順を示すフローチャート
【図９】従来のデータシステムにおけるユーザのアクセス権限に関するデータ制限方法を示す図
【符号の説明】
【００６６】
１００………データベースシステム
１０１………サーバ
１０３………クライアント端末
１０４………ユーザグループ
１０９………ネットワーク
１１０………Ｗｅｂサーバ
１１１………アプリケーション
１１２………データベース管理手段
１２０………Ｗｅｂブラウザ
２０１、４０１………制御部
２０２、４０２………記憶部
３００………データベース
３０１………データスキーマ
３０２………アクセススキーマ
３１０………実データ
３１１………情報
３１５………アクセススキーマ接続情報
３２０………ユーザ情報
３２１………ユーザＩＤ
３２２………ユーザグループＩＤ
３２３………パスワード
３２５………管理スキーマ
３３０………データ参照範囲情報
３４０………アクセス権限情報
【図１】
2006268265.tif 000003
【図２】
2006268265.tif 000004
【図３】
2006268265.tif 000005
【図４】
2006268265.tif 000006
【図５】
2006268265.tif 000007
【図６】
2006268265.tif 000008
【図７】
2006268265.tif 000009
【図８】
2006268265.tif 000010
【図９】
2006268265.tif 000011