JP6419143B2 - 共通プログラム、データベース管理装置、及びデータベース管理方法 - Google Patents

共通プログラム、データベース管理装置、及びデータベース管理方法

Info

Publication number
JP6419143B2
JP6419143B2 JP2016246211A JP2016246211A JP6419143B2 JP 6419143 B2 JP6419143 B2 JP 6419143B2 JP 2016246211 A JP2016246211 A JP 2016246211A JP 2016246211 A JP2016246211 A JP 2016246211A JP 6419143 B2 JP6419143 B2 JP 6419143B2
Authority
JP
Japan
Prior art keywords
identification information
information
verification
database
user
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.)
Active
Application number
JP2016246211A
Other languages
English (en)
Other versions
JP2018101239A (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.)
MIROKU JYOHO SERVICE CO., LTD.
Original Assignee
MIROKU JYOHO SERVICE CO., LTD.
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 MIROKU JYOHO SERVICE CO., LTD. filed Critical MIROKU JYOHO SERVICE CO., LTD.
Priority to JP2016246211A priority Critical patent/JP6419143B2/ja
Priority to KR1020197020090A priority patent/KR102087325B1/ko
Priority to PCT/JP2017/045566 priority patent/WO2018117107A1/ja
Publication of JP2018101239A publication Critical patent/JP2018101239A/ja
Application granted granted Critical
Publication of JP6419143B2 publication Critical patent/JP6419143B2/ja
Priority to US16/443,888 priority patent/US20190303595A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • 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/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Description

本発明は、共通プログラム、データベース管理装置、及びデータベース管理方法に関する。
近年、仮想化技術の発達により、複数のユーザのデータを一つのデータベースで管理すること(マルチテナント)が行われている(例えば、特許文献1参照)。複数のユーザのデータを一つのデータベースで管理する場合、ユーザを識別するユーザ識別情報をデータベース上の各テーブルに含ませておく。そして、ログインしたユーザに対応するユーザ識別情報に基づいて、データベースから当該ユーザの情報を抽出する。
特開2013−088830号公報
ところで、マルチテナントに対応するデータベースに含まれている情報を操作するプログラムに不具合があると、他のユーザの情報が操作されてしまうことがあるという問題がある。例えば、プログラムにおいて、所定のユーザに対応するユーザ識別情報を含む情報を抽出する場合に、ユーザ識別情報が所定のユーザに対応するユーザ識別情報に一致するという抽出条件を指定するところ、異なる情報を抽出条件に指定してしまうという不具合が含まれている場合を考える。この場合には、所定のユーザに対応するユーザ識別情報を含まない情報、すなわち他のユーザの情報が抽出されてしまう。そこで、プログラムに不具合が含まれていても、他のユーザの情報を操作しないようにすることが求められている。
そこで、本発明はこれらの点に鑑みてなされたものであり、他のユーザの情報を操作しないようにすることができる共通プログラム、データベース管理装置、及びデータベース管理方法を提供することを目的とする。
本発明の第1の態様に係る共通プログラムは、複数の個別プログラムにおいて呼び出される共通プログラムであって、コンピュータを、前記複数の個別プログラムのいずれかが複数のユーザの情報を格納するデータベースにユーザを識別するユーザ識別情報を新たに記憶させる場合に、前記ユーザを識別するとともに前記ユーザ識別情報とは異なる検証用識別情報を関連付けて記憶させる識別情報登録部、前記複数の個別プログラムのいずれかが前記ユーザ識別情報に基づく前記データベースへの接続を要求する場合に、当該ユーザ識別情報に関連付けられている前記検証用識別情報を取得する取得部、前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記ユーザ識別情報を含む情報を前記データベースに追加する場合に、当該情報に前記取得部が取得した前記検証用識別情報を付与して追加する追加部、及び、前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記データベースに記憶されている前記ユーザ識別情報を含む情報を操作する場合に、前記取得部が取得した前記検証用識別情報と、当該情報に関連付けられている前記検証用識別情報とに基づいて、前記情報を操作する操作部、として機能させる。
前記取得部は、前記複数の個別プログラムのいずれかが前記ユーザ識別情報に関連付けられているログイン情報に基づいて前記データベースへの接続を要求した場合に、当該ユーザ識別情報に関連付けられている前記検証用識別情報を取得してもよい。
前記操作部は、前記データベースから前記ユーザ識別情報を含む情報を選択する場合に、前記取得部が取得した前記検証用識別情報を含む情報を選択してもよい。
前記操作部は、前記データベースから前記ユーザ識別情報を含む情報を選択した後、選択された情報のうち、前記取得部が取得した前記検証用識別情報を含まない情報を破棄してもよい。
前記操作部は、前記データベースにおいて前記ユーザ識別情報を含む情報を更新する場合において、当該情報に含まれる前記検証用識別情報と、前記取得部が取得した前記検証用識別情報とが一致しないとき、当該情報を更新せずにエラー情報を出力してもよい。
前記操作部は、前記データベースにおいて前記ユーザ識別情報を含む情報を消去する場合において、当該情報に含まれる前記検証用識別情報と、前記取得部が取得した前記検証用識別情報とが一致しないとき、当該情報を消去せずにエラー情報を出力してもよい。
前記追加部は、前記ユーザ識別情報を含む情報を前記データベースに追加する場合において、前記取得部によって前記検証用識別情報が取得されていないとき、当該情報を追加せずにエラー情報を出力してもよい。
本発明の第2の態様に係るデータベース管理装置は、複数の個別プログラムのいずれかが複数のユーザの情報を格納するデータベースにユーザを識別するユーザ識別情報を新たに記憶させる場合に、前記ユーザを識別するとともに前記ユーザ識別情報とは異なる検証用識別情報を関連付けて記憶させる識別情報登録部と、前記複数の個別プログラムのいずれかが前記ユーザ識別情報に基づく前記データベースへの接続を要求する場合に、当該ユーザ識別情報に関連付けられている前記検証用識別情報を取得する取得部と、前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記ユーザ識別情報を含む情報を前記データベースに追加する場合に、当該情報に前記取得部が取得した前記検証用識別情報を付与して追加する追加部と、前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記データベースに記憶されている前記ユーザ識別情報を含む情報を操作する場合に、前記取得部が取得した前記検証用識別情報と、当該情報に関連付けられている前記検証用識別情報とに基づいて、前記情報を操作する操作部と、を備える。
本発明の第3の態様に係るデータベース管理方法は、コンピュータが実行する、複数の個別プログラムのいずれかが複数のユーザの情報を格納するデータベースにユーザを識別するユーザ識別情報を新たに記憶させる場合に、前記ユーザを識別するとともに前記ユーザ識別情報とは異なる検証用識別情報を関連付けて記憶させるステップと、前記複数の個別プログラムのいずれかが前記ユーザ識別情報に基づく前記データベースへの接続を要求する場合に、当該ユーザ識別情報に関連付けられている前記検証用識別情報を取得するステップと、前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記ユーザ識別情報を含む情報を前記データベースに追加する場合に、当該情報に前記取得するステップにおいて取得された前記検証用識別情報を付与して追加するステップと、前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記データベースに記憶されている前記ユーザ識別情報を含む情報を操作する場合に、前記取得するステップにおいて取得された前記検証用識別情報と、当該情報に関連付けられている前記検証用識別情報とに基づいて、前記情報を操作するステップと、を備える。
本発明によれば、他のユーザの情報を操作しないようにすることができるという効果を奏する。
本実施形態に係る業務システムの概要を示す図である。 本実施形態に係るサーバの構成を示す図である。 本実施形態に係るログインユーザテーブルの一例を示す図である。 本実施形態に係る顧客マスタテーブルの一例を示す図である。 本実施形態に係る商品マスタテーブルの一例を示す図である。 本実施形態に係る商品詳細マスタテーブルの一例を示す図である。 本実施形態に係る取得部が取得した検証用IDを含まないレコードを破棄する例を説明する図である。
[業務システムSの概要]
図1は、本実施形態に係る業務システムSの概要を示す図である。
業務システムSは、サーバ1と、サーバ1と通信可能な複数のクライアント端末2とを備えるシステムである。
サーバ1は、業務システムSが備える各種機能を実現する。サーバ1は、業務システムSを提供するサービス提供業者によって運営される。クライアント端末2は、業務システムSを利用する顧客(以下、ユーザという。)が使用するコンピュータであり、パーソナルコンピュータや、スマートフォン等である。
サーバ1は、複数のクライアント端末2のそれぞれから、各種情報をクライアント端末2に表示したり、サーバ1に追加したりするためのリクエストを受け付ける。サーバ1は、各種リクエストに応じて個別プログラムを実行する。サーバ1は、複数のクライアント端末2のそれぞれに対応するユーザの情報を格納するデータベースを備えており、データベース管理装置として機能する。
データベースに格納されている各テーブルには、クライアント端末2のユーザを識別するユーザ識別情報としてのユーザIDが記憶されている。また、各テーブルには、他のユーザの情報を誤って操作することを防止するために、検証用識別情報としての検証用IDが格納されている。
個別プログラムは、データベースに接続する際に、クライアント端末2のユーザに対応するログイン情報を指定して共通プログラムを呼び出す。共通プログラムは、ログイン情報に基づいて認証を行い、認証に成功すると、ユーザIDに関連付けられている検証用IDを取得する。個別プログラムは、データベースへの接続後にデータベースに記憶されている情報の操作を行う場合、共通プログラムを呼び出す。共通プログラムは、データベースの接続時に取得した検証用IDと、操作対象の情報に含まれている検証用IDとに基づいてユーザIDに対応する情報のみを操作し、実行結果を個別プログラムに返す。これにより、共通プログラムは、他のユーザの情報を操作しないようにすることができる。
個別プログラムは、共通プログラムが返した実行結果に基づいて、クライアント端末2に各種リクエストに対応する実行結果を出力する。業務システムSでは、個別プログラムが、他のユーザの情報を操作しない共通プログラムを介してデータベースに格納されているユーザの情報を操作するので、業務システムSは、個別プログラムに不具合がある場合であっても他のユーザの情報を操作しないようにすることができる。
[サーバ1の構成]
続いて、サーバ1の構成について説明する。図2は、本実施形態に係るサーバ1の構成を示す図である。
サーバ1は、記憶部11と、制御部12とを備える。
記憶部11は、例えば、ROM、RAM及びハードディスク等の記憶媒体である。記憶部11は、制御部12が実行するプログラムを記憶する。例えば、記憶部11は、業務システムSが備える各機能を実現するための複数の個別プログラムを記憶する。また、記憶部11は、制御部12を、取得部141、識別情報登録部142、追加部143、及び操作部144として機能させる共通プログラムを記憶する。共通プログラムには、複数のクライアント端末2のそれぞれのユーザに対応する情報を記憶するデータベース111を管理するデータベースエンジンが含まれているものとする。
データベース111は、例えば、ログインユーザテーブルと、顧客マスタテーブルと、商品マスタテーブルと、商品詳細マスタテーブルとが格納されている。
図3は、本実施形態に係るログインユーザテーブルの一例を示す図である。図3に示すように、ログインユーザテーブルは、クライアント端末2のユーザを識別するユーザIDと、データベース111に接続する際に用いられるログインIDと、当該ログインIDに対応するパスワードとを関連付けて記憶する。ユーザID、ログインID及びログインパスワードは、例えば、業務システムSのサービス提供者によって生成され、ログインユーザテーブルに格納される。
図4は、本実施形態に係る顧客マスタテーブルの一例を示す図である。図4に示すように、顧客マスタテーブルは、ユーザIDと、ユーザ名称と、共通プログラムが使用する検証用IDとを関連付けて記憶する。ここで、検証用IDは、ユーザIDと同様にクライアント端末2のユーザを識別する識別情報であり、ユーザIDとは異なる識別情報である。
図5は、本実施形態に係る商品マスタテーブルの一例を示す図である。図5に示すように、商品マスタテーブルは、ユーザIDと、商品を識別する商品IDと、商品名と、検証用IDとを関連付けて記憶する。
図6は、本実施形態に係る商品詳細マスタテーブルの一例を示す図である。図6に示すように、商品詳細マスタテーブルは、ユーザIDと、商品の詳細部分(例えば、商品の色等)により同一の商品IDの商品を識別するための商品詳細IDと、商品IDと、商品名と、検証用IDとを関連付けて記憶する。
制御部12は、例えばCPUである。制御部12は、記憶部11に記憶されている各種プログラムや、通信ネットワークを介して外部機器から取得したプログラムを実行することにより、サーバ1に係る機能を制御する。制御部12は、個別プログラムを実行する個別プログラム実行部13と、共通プログラムを実行する共通プログラム実行部14とを備える。
個別プログラム実行部13は、クライアント端末2から各種リクエストを受け付けたことに応じて、各種リクエストのそれぞれに対応する個別プログラムを実行する。個別プログラムは、例えば、業務システムSのサービス提供者によって構築されたプログラムである。個別プログラムは、データベース111にアクセスする場合には、共通プログラムを呼び出してアクセスするように構築されている。
共通プログラム実行部14は、複数の個別プログラムにおいて共通プログラムが呼び出されたことに応じて共通プログラムを実行する。共通プログラム実行部14は、共通プログラムを実行することにより、取得部141、識別情報登録部142、追加部143、及び操作部144として機能する。
取得部141は、複数の個別プログラムのいずれかがユーザIDに基づくデータベース111への接続を要求する場合に、当該ユーザIDに関連付けられている検証用IDを取得する。取得部141は、複数の個別プログラムのいずれかがユーザIDに関連付けられているログイン情報に基づいてデータベース111への接続を要求した場合に、当該ユーザIDに関連付けられている検証用IDを取得する。
具体的には、まず、複数の個別プログラムのいずれかが、ログインID及びログインパスワードを指定して共通プログラムを呼び出すことにより、データベース111への接続を要求する。取得部141は、指定されたログインID及びログインパスワードが、ログインユーザテーブルに記憶されているログインID及びログインパスワードと一致する場合に、データベース111への接続を要求した個別プログラムからデータベース111へのアクセスを許可する。ここで、個別プログラムからデータベース111へのアクセスが許可されている状態を、個別プログラムがデータベース111に接続されている状態という。
取得部141は、個別プログラムがデータベース111に接続した場合に、ログインユーザテーブルにおいて、指定されたログインIDに関連付けられているユーザIDを特定する。取得部141は、顧客マスタテーブルにおいて、特定されたユーザIDに関連付けられている検証用IDを取得する。取得部141は、取得した検証用IDを、セッション情報として記憶部11に一時的に記憶させる。なお、取得部141は、顧客マスタテーブルにおいて、特定されたユーザIDが存在していない場合には、セッション情報として検証用IDを記憶させない。
識別情報登録部142は、複数の個別プログラムのいずれかが、データベース111に、ユーザIDを新たに記憶させる場合に、検証用IDを関連付けて記憶させる。具体的には、識別情報登録部142は、複数の個別プログラムのいずれかが、ユーザIDと、ユーザ名称とを含むレコードを新たに顧客マスタテーブルに記憶させる場合に、検証用IDを生成する。そして、識別情報登録部142は、ユーザIDとユーザ名称と検証用IDとを含むレコードを顧客マスタテーブルに記憶させる。
ここで、識別情報登録部142が有する機能は、顧客マスタテーブルに対して設定されるデータベースエンジンのセキュリティポリシーやトリガーによって実現される。このようにすることで、個別プログラムが、顧客マスタテーブルにレコードを追加する場合には、必ず識別情報登録部142の機能が実行されるので、当該テーブルにユーザIDが記憶される場合に、当該ユーザIDと検証用IDとを確実に記憶させることができる。
なお、本実施形態では、ログインユーザテーブルと、顧客マスタテーブルとに、異なるタイミングでユーザIDを含む情報が記憶されることとしたが、これに限らない。例えば、ログインユーザテーブルと、顧客マスタテーブルとに、例えば、一連の処理によって同じタイミングでユーザIDを含む情報が記憶されるようにしてもよい。
追加部143は、ユーザIDに基づくデータベース111への接続後、複数の個別プログラムのいずれかが当該ユーザIDを含むレコードをデータベース111に追加する場合に、当該レコードに取得部141が取得した検証用IDを付与して追加する。具体的には、追加部143は、データベース111に格納されている複数のテーブルのうち、ログインユーザテーブル及び顧客マスタテーブルとは異なるテーブルにユーザIDを含むレコードを追加する場合に、当該レコードにセッション情報として記憶部11に一時的に記憶されている検証用IDを付与する。追加部143は、ユーザID及び検証用IDを含むレコードをテーブルに記憶させる。本実施形態では、商品マスタテーブル及び商品詳細マスタテーブルにユーザIDを含むレコードを追加する場合に、当該レコードに検証用IDを付与して追加させる。
ここで、追加部143は、ユーザIDを含むレコードをデータベース111に格納されているテーブルに追加する場合において、取得部141によって検証用IDが取得されていないとき、ユーザIDを含むレコードを追加せずにエラー情報を出力する。例えば、追加部143は、データベース111に格納されているテーブルにレコードを追加するために共通プログラムを呼び出した個別プログラムに、検証用IDを取得できていないことを示すエラー情報を含む実行結果を出力する。このようにすることで、個別プログラム側に、検証用IDを取得できていないことを通知することができる。
なお、追加部143が有する機能は、ユーザIDを含むテーブルに対して設定されるデータベースエンジンのセキュリティポリシーやトリガーによって実現される。このようにすることで、個別プログラムが、追加部143が有する機能に対応するセキュリティポリシーやトリガーが設定されているテーブルにレコードを追加する場合には、必ず追加部143の機能が実行されるので、当該テーブルにユーザIDが記憶される場合に、確実に検証用IDも記憶させることができる。
操作部144は、ユーザIDに基づくデータベース111への接続後、複数の個別プログラムのいずれかがデータベース111に記憶されている当該ユーザIDを含む情報を操作する場合に、取得部141が取得した検証用IDと、当該情報に関連付けられている検証用IDとに基づいて、情報を操作する。ここで、情報の操作は、テーブルから情報を選択する選択操作、テーブルに記憶されている情報を更新する更新操作、テーブルに記憶されているレコードを消去する消去操作が含まれるものとする。
具体的には、操作部144は、データベース111に格納されているテーブルからユーザIDを含むレコードを選択する場合に、取得部141が取得した検証用IDを含む情報を選択する。具体的には、操作部144は、データベース111に格納されているテーブルから、ユーザIDを含むレコードを選択する。その後、操作部144は、選択されたレコードのうち、取得部141が取得した検証用IDを含まないレコードを破棄する。操作部144は、破棄されなかったレコードを含む情報を実行結果として個別プログラムに出力する。
図7は、取得部141が取得した検証用IDを含まないレコードを破棄する例を説明する図である。例えば、個別プログラムが、ユーザID「1」に対応するログイン情報によってデータベース111に接続し、取得部141が、ユーザID「1」に対応する検証用ID「AAA」を取得したとする(図7の(1))。さらに、個別プログラムにおいて、図7に示す商品マスタテーブルからユーザID「1」のデータを選択する場合に、ユーザID「1」を選択条件とするところ、ユーザIDの値として誤って商品IDの値を指定してしまい、さらに商品IDが「2」であったとする。この場合には、操作部144は、ユーザID「2」のレコードを選択する(図7の(2))。操作部144は、ユーザID「2」のレコードに含まれる検証用IDが「BBB」であり、取得部141が取得した検証用ID「AAA」が含まれていないことから、選択したレコードを破棄する(図7の(3))。
このようにすることで、サーバ1は、異なるユーザIDに対応するレコードが個別プログラムに出力されないようにすることができる。また、操作部144は、ユーザIDを含むレコードを選択した後、当該レコードのうち、取得部141が取得した検証用IDを含まないレコードを破棄するので、ユーザIDにインデックスが付されている場合に、取得部141が取得した検証用IDを含む情報を高速に選択することができる。
また、操作部144は、データベース111に格納されているテーブルにおいてユーザIDを含むレコードを更新する場合において、当該レコードに含まれる検証用IDと、取得部141が取得した検証用IDとが一致するとき、当該レコードを更新し、レコードが更新されたことを示す情報を実行結果として個別プログラムに出力する。
また、操作部144は、データベース111に格納されているテーブルにおいてユーザIDを含むレコードを更新する場合において、当該レコードに含まれる検証用IDと、取得部141が取得した検証用IDとが一致しないとき、当該レコードを更新せずにエラー情報を出力する。操作部144は、レコードが更新されなかったことを示す情報を実行結果として個別プログラムに出力する。
また、操作部144は、データベース111に格納されているテーブルにおいてユーザIDを含むレコードを消去する場合において、当該レコードに含まれる検証用IDと、取得部141が取得した検証用IDとが一致するとき、当該レコードを消去し、レコードが消去されたことを示す情報を実行結果として個別プログラムに出力する。
また、操作部144は、データベース111に格納されているテーブルにおいてユーザIDを含むレコードを消去する場合において、当該レコードに含まれる検証用IDと、取得部141が取得した検証用IDとが一致しないとき、当該レコードを消去せずにエラー情報を出力する。操作部144は、レコードが消去されなかったことを示す情報を実行結果として個別プログラムに出力する。
なお、操作部144が有する機能は、ユーザIDを含むテーブルに対して設定されるデータベースエンジンのセキュリティポリシーやトリガーによって実現される。このようにすることで、個別プログラムが、操作部144が有する機能に対応するセキュリティポリシーやトリガーが設定されているテーブルを操作(選択、更新、削除)する場合には、必ず操作部144の機能が実行されるので、他のユーザの情報を操作することを確実に防止することができる。
[本実施形態における効果]
以上説明した通り、本実施形態に係るサーバ1は、共通プログラムを実行することにより、複数の個別プログラムのいずれかがユーザIDに基づくデータベース111への接続を要求する場合に、当該ユーザIDに関連付けられている検証用IDを取得し、ユーザIDに基づくデータベース111への接続後、複数の個別プログラムのいずれかがユーザIDを含む情報をデータベース111に追加する場合に、当該情報に取得された検証用IDを付与して追加し、当該ユーザIDに基づくデータベース111への接続後、複数の個別プログラムのいずれかがデータベース111に記憶されている当該ユーザIDを含む情報を操作する場合に、取得された検証用IDと、当該情報に関連付けられている検証用IDとに基づいて、当該情報を操作する。このようにすることで、サーバ1は、取得された検証用IDと、当該情報に関連付けられている検証用IDとが一致しない場合に、情報を操作しないようにすることができるので、他のユーザの情報を操作しないようにすることができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
1・・・サーバ、11・・・記憶部、111・・・データベース、12・・・制御部、13・・・個別プログラム実行部、14・・・共通プログラム実行部、141・・・取得部、142・・・識別情報登録部、143・・・追加部、144・・・操作部、2・・・クライアント端末、S・・・業務システム

Claims (9)

  1. 複数の個別プログラムにおいて呼び出される共通プログラムであって、
    コンピュータを、
    前記複数の個別プログラムのいずれかが複数のユーザの情報を格納するデータベースにユーザを識別するユーザ識別情報を新たに記憶させる場合に、前記ユーザを識別するとともに前記ユーザ識別情報とは異なる検証用識別情報を関連付けて記憶させる識別情報登録部、
    前記複数の個別プログラムのいずれかが前記ユーザ識別情報に基づく前記データベースへの接続を要求する場合に、当該ユーザ識別情報に関連付けられている前記検証用識別情報を取得する取得部、
    前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記ユーザ識別情報を含む情報を前記データベースに追加する場合に、当該情報に前記取得部が取得した前記検証用識別情報を付与して追加する追加部、及び、
    前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記データベースに記憶されている前記ユーザ識別情報を含む情報を操作する場合に、前記取得部が取得した前記検証用識別情報と、当該情報に関連付けられている前記検証用識別情報とに基づいて、前記情報を操作する操作部、
    として機能させる共通プログラム。
  2. 前記取得部は、前記複数の個別プログラムのいずれかが前記ユーザ識別情報に関連付けられているログイン情報に基づいて前記データベースへの接続を要求した場合に、当該ユーザ識別情報に関連付けられている前記検証用識別情報を取得する、
    請求項1に記載の共通プログラム。
  3. 前記操作部は、前記データベースから前記ユーザ識別情報を含む情報を選択する場合に、前記取得部が取得した前記検証用識別情報を含む情報を選択する、
    請求項1又は2に記載の共通プログラム。
  4. 前記操作部は、前記データベースから前記ユーザ識別情報を含む情報を選択した後、選択された情報のうち、前記取得部が取得した前記検証用識別情報を含まない情報を破棄する、
    請求項3に記載の共通プログラム。
  5. 前記操作部は、前記データベースにおいて前記ユーザ識別情報を含む情報を更新する場合において、当該情報に含まれる前記検証用識別情報と、前記取得部が取得した前記検証用識別情報とが一致しないとき、当該情報を更新せずにエラー情報を出力する、
    請求項1から4のいずれか1項に記載の共通プログラム。
  6. 前記操作部は、前記データベースにおいて前記ユーザ識別情報を含む情報を消去する場合において、当該情報に含まれる前記検証用識別情報と、前記取得部が取得した前記検証用識別情報とが一致しないとき、当該情報を消去せずにエラー情報を出力する、
    請求項1から5のいずれか1項に記載の共通プログラム。
  7. 前記追加部は、前記ユーザ識別情報を含む情報を前記データベースに追加する場合において、前記取得部によって前記検証用識別情報が取得されていないとき、当該情報を追加せずにエラー情報を出力する、
    請求項1から5のいずれか1項に記載の共通プログラム。
  8. 複数の個別プログラムのいずれかが複数のユーザの情報を格納するデータベースにユーザを識別するユーザ識別情報を新たに記憶させる場合に、前記ユーザを識別するとともに前記ユーザ識別情報とは異なる検証用識別情報を関連付けて記憶させる識別情報登録部と、
    前記複数の個別プログラムのいずれかが前記ユーザ識別情報に基づく前記データベースへの接続を要求する場合に、当該ユーザ識別情報に関連付けられている前記検証用識別情報を取得する取得部と、
    前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記ユーザ識別情報を含む情報を前記データベースに追加する場合に、当該情報に前記取得部が取得した前記検証用識別情報を付与して追加する追加部と、
    前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記データベースに記憶されている前記ユーザ識別情報を含む情報を操作する場合に、前記取得部が取得した前記検証用識別情報と、当該情報に関連付けられている前記検証用識別情報とに基づいて、前記情報を操作する操作部と、
    を備えるデータベース管理装置。
  9. コンピュータが実行する、
    複数の個別プログラムのいずれかが複数のユーザの情報を格納するデータベースにユーザを識別するユーザ識別情報を新たに記憶させる場合に、前記ユーザを識別するとともに前記ユーザ識別情報とは異なる検証用識別情報を関連付けて記憶させるステップと、
    前記複数の個別プログラムのいずれかが前記ユーザ識別情報に基づく前記データベースへの接続を要求する場合に、当該ユーザ識別情報に関連付けられている前記検証用識別情報を取得するステップと、
    前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記ユーザ識別情報を含む情報を前記データベースに追加する場合に、当該情報に前記取得するステップにおいて取得された前記検証用識別情報を付与して追加するステップと、
    前記ユーザ識別情報に基づく前記データベースへの接続後、前記複数の個別プログラムのいずれかが前記データベースに記憶されている前記ユーザ識別情報を含む情報を操作する場合に、前記取得するステップにおいて取得された前記検証用識別情報と、当該情報に関連付けられている前記検証用識別情報とに基づいて、前記情報を操作するステップと、
    を備えるデータベース管理方法。
JP2016246211A 2016-12-20 2016-12-20 共通プログラム、データベース管理装置、及びデータベース管理方法 Active JP6419143B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016246211A JP6419143B2 (ja) 2016-12-20 2016-12-20 共通プログラム、データベース管理装置、及びデータベース管理方法
KR1020197020090A KR102087325B1 (ko) 2016-12-20 2017-12-19 공통 프로그램, 데이터베이스 관리장치 및 데이터베이스 관리방법
PCT/JP2017/045566 WO2018117107A1 (ja) 2016-12-20 2017-12-19 共通プログラム、データベース管理装置、及びデータベース管理方法
US16/443,888 US20190303595A1 (en) 2016-12-20 2019-06-18 Method and apparatus for managing database and non-transitory storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016246211A JP6419143B2 (ja) 2016-12-20 2016-12-20 共通プログラム、データベース管理装置、及びデータベース管理方法

Publications (2)

Publication Number Publication Date
JP2018101239A JP2018101239A (ja) 2018-06-28
JP6419143B2 true JP6419143B2 (ja) 2018-11-07

Family

ID=62626488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016246211A Active JP6419143B2 (ja) 2016-12-20 2016-12-20 共通プログラム、データベース管理装置、及びデータベース管理方法

Country Status (4)

Country Link
US (1) US20190303595A1 (ja)
JP (1) JP6419143B2 (ja)
KR (1) KR102087325B1 (ja)
WO (1) WO2018117107A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3905092A1 (en) * 2019-02-15 2021-11-03 MasterCard International Incorporated A computer-implemented method for removing access to data

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8069153B2 (en) * 2005-12-02 2011-11-29 Salesforce.Com, Inc. Systems and methods for securing customer data in a multi-tenant environment
JP4708177B2 (ja) 2005-12-09 2011-06-22 財団法人エヌエイチケイエンジニアリングサービス データベース管理方法および個人情報管理システム
JP4988035B2 (ja) * 2010-12-22 2012-08-01 三菱電機インフォメーションシステムズ株式会社 情報制御装置および情報制御プログラム
AU2012203903B2 (en) * 2011-07-12 2015-03-12 Apple Inc. System and method for linking pre-installed software to a user account on an online store
JP5427866B2 (ja) 2011-10-13 2014-02-26 株式会社日立製作所 マルチテナント情報処理方法、装置及びプログラム
JP2014219762A (ja) * 2013-05-02 2014-11-20 株式会社リコー データ共有システム、データ共有方法および情報処理装置
JP6540063B2 (ja) * 2015-02-05 2019-07-10 日本電気株式会社 通信情報制御装置、中継システム、通信情報制御方法、および、通信情報制御プログラム

Also Published As

Publication number Publication date
KR102087325B1 (ko) 2020-03-10
JP2018101239A (ja) 2018-06-28
US20190303595A1 (en) 2019-10-03
KR20190086777A (ko) 2019-07-23
WO2018117107A1 (ja) 2018-06-28

Similar Documents

Publication Publication Date Title
US9667661B2 (en) Privileged account manager, dynamic policy engine
JP2019075161A (ja) サービス処理方法、装置、及びサーバ
US8838679B2 (en) Providing state service for online application users
US20200174818A1 (en) Virtual machine management
US20170104747A1 (en) Methods and systems for single sign-on while protecting user privacy
US11706204B2 (en) Partner integration network
US8875164B2 (en) Information processing apparatus and method for controlling information processing apparatus
JP6419143B2 (ja) 共通プログラム、データベース管理装置、及びデータベース管理方法
JP6184316B2 (ja) ログイン中継サーバ装置、ログイン中継方法、及びプログラム
US11102188B2 (en) Multi-tenant enterprise application management
CN115733666A (zh) 一种密码管理方法、装置、电子设备及可读存储介质
JP5433659B2 (ja) ユーザ情報提供装置及びプログラム
US20210144117A1 (en) Secure directory services
US9225552B2 (en) Mail service management system
JP6583076B2 (ja) データベースクライアント、データベースクライアントプログラム、データベースクライアント制御方法及びデータベースシステム
Ranjini et al. PRS Generic Data Store Service
JP2013047865A (ja) 情報処理装置、個人認証システム、個人認証方法及び個人認証プログラム
JP6326807B2 (ja) 情報処理システム及びプログラム
JP6147147B2 (ja) 情報処理システム、情報処理方法、およびプログラム
JP2012123660A (ja) 情報管理システムとそのデータ更新操作方法
CN111708588A (zh) 云平台资源处理方法、装置、计算机设备和存储介质
JP2015053007A (ja) 制御装置、制御方法及び制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180613

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180613

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180907

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180925

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181009

R150 Certificate of patent or registration of utility model

Ref document number: 6419143

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250