(57)【要約】【課題】  従来に比べてよりセキュリティを高く保つことができる、アクセス制御装置を提供する。【解決手段】  アクセス制御装置１のフェーズ判定部１４段が、操作ユーザからの指示としての命令を受付けて、当該命令を受付けた際の一連の処理の単位におけるフェーズの情報を判定条件記憶部１２から読み取り、アクセス制御部１３が、受付けた命令を指示した操作ユーザの情報と、読み取ったフェーズの情報との組み合わせに対応付けられてアクセス権限記憶部１１に記録されているアクセス権限の情報を読み取り、当該アクセス権限に基づいて、操作ユーザからの指示として受付けた命令で示されるアクセス対象オブジェクトへの処理を実行するか否かを判定する。【選択図】    図１
2006120013.tif 000002
【特許請求の範囲】
【請求項１】
自装置で記録しているアクセス対象オブジェクトに対するアクセス権限の情報を、自装置を操作する操作ユーザの全てについて変更できるアクセス制御装置であって、
所定の一連の処理の単位ごとに、前記操作ユーザの情報と、前記一連の処理の単位におけるそれぞれの段階で前記操作ユーザからの指示として受付ける命令と、当該命令を受付けることにより前記一連の処理の単位におけるそれぞれの段階のうちの何れの段階であるのかを示す段階指定情報と、の組み合わせの情報を記憶する判定条件記憶手段と、
前記一連の処理の単位におけるそれぞれの段階に応じたアクセス権限の情報を前記操作ユーザごとに記憶するアクセス権限記憶手段と、
前記操作ユーザからの指示としての前記命令を受付けて、当該命令を受付けた際の前記一連の処理の単位における段階の情報を示す前記段階指定情報を前記判定条件記憶手段から読み取る段階判定手段と、
前記受付けた命令を指示した操作ユーザの情報と、前記読み取った前記段階指定情報で示される前記一連の処理の単位における段階との組み合わせに対応付けられて前記アクセス権限記憶手段に記録されているアクセス権限の情報を読み取り、当該アクセス権限に基づいて、前記操作ユーザからの指示として受付けた命令で示される前記アクセス対象オブジェクトの処理を実行するか否かを判定するアクセス制御手段と、
を備えることを特徴とするアクセス制御装置。
【請求項２】
前記一連の処理は、前記操作ユーザの操作に基づく１つのアプリケーションプログラムが行なう所定の一連の処理である
ことを特徴とする請求項１に記載のアクセス制御装置。
【請求項３】
前記一連の処理は、前記操作ユーザの操作に基づく複数のアプリケーションプログラムそれぞれが行なう所定の一連の処理であり、
前記一連の処理の単位における各段階は、前記複数のアプリケーションプログラムごとの処理の段階を示す
ことを特徴とする請求項１に記載のアクセス制御装置。
【請求項４】
所定の一連の処理の単位ごとに、操作ユーザの情報と、一連の処理の単位におけるそれぞれの段階で操作ユーザからの指示として受付ける命令と、当該命令を受付けることにより前記一連の処理の単位におけるそれぞれの段階のうちの何れの段階であるのかを示す段階指定情報と、の組み合わせの情報を記憶する判定条件記憶手段と、
前記一連の処理の単位におけるそれぞれの段階に応じたアクセス権限の情報を前記操作ユーザごとに記憶するアクセス権限記憶手段と、
を備え、
自装置で記録しているアクセス対象オブジェクトに対するアクセス権限の情報を、自装置を操作する操作ユーザの全てについて変更できるアクセス制御装置のコンピュータに実行させるプログラムであって、
前記操作ユーザからの指示としての前記命令を受付けて、当該命令を受付けた際の前記一連の処理の単位における段階の情報を示す前記段階指定情報を前記判定条件記憶手段から読み取る段階判定処理と、
前記受付けた命令を指示した操作ユーザの情報と、前記読み取った前記段階指定情報で示される前記一連の処理の単位における段階との組み合わせに対応付けられて前記アクセス権限記憶手段に記録されているアクセス権限の情報を読み取り、当該アクセス権限に基づいて、前記操作ユーザからの指示として受付けた命令で示される前記アクセス対象オブジェクトの処理を実行するか否かを判定するアクセス制御処理と、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作ユーザがアクセスできるプログラムをアクセス権限に基づいて判定するアクセス制御装置およびアクセス制御方法ならびにそのプログラムに関する。
【背景技術】
【０００２】
ＵＮＩＸ（登録商標）系のＯＳの従来のアクセス制御の概略について簡単に説明する。
まず、ユーザ“ｊｄｏｅ”が、アプリケーションを介して、“ｆｏｏ”というディレクトリの削除要求を発行したとする（コマンド実行ａ）。この要求はシステムコール“ｒｍｄｉｒ（）”により処理がユーザモードからカーネルに委託される（システムコールｂ）。そして、処理関数“ｖｆｓ＿ｒｍｄｉｒ（）”の中で、パーミッションチェック“ｍａｙ＿ｃｒｅａｔｅ（）”が呼ばれ、アクセス制御が実行される（アクセス制御ｃ）。ここで、カーネルは、サブジェクト（アクセスする側）、オブジェクト（アクセスの対象）のプログラム、メソッド（アクセスの種類：例えばコマンドの種類）の組み合わせ対して、アクセス権が与えられているか否かを、アクセス権限の情報に基づいて判定する。
【０００３】
ＵＮＩＸ（登録商標）系ＯＳでは、ファイルのオーナー、グループ、それ以外のユーザに対しての、“ｒｅａｄ／ｗｒｉｔｅ／ｅｘｅｃｕｔｅ”に関するパーミッションがオブジェクト毎に付与されており、サブジェクトのＵＩＤ（User Identifier）やＧＩＤ（Group Identifier）に基づき、アクセス許可、不許可を判定する（パーミッションチェックｄ）。“ｒｍｄｉｒ：ディレクトリの削除”であれば、削除対象の上位ディレクトリに対してのｗｒｉｔｅ／ｅｘｅｃｕｔｅ権限が必要とされる。そして、アクセスが許可されれば、“ｒｍｄｉｒ”：処理）を実行し、不許可であればユーザにエラーを返す（判定結果に応じた処理ｅ）。
【０００４】
上記したように、ＯＳによるアクセス制御は、一般ユーザはもちろん、管理者に対してもアクセス権への制御を課すことができる。しかしながら、アクセス権設定そのものへの権限を持つ管理者はシステムに必ず存在するため、このユーザ権限を不正に取得することで、システムの全権が掌握されてしまう。Ｕｎｉｘ（登録商標）系のＯＳにおいては、ｒｏｏｔユーザがこれに該当し、不正にｒｏｏｔ権限が取得できてしまうような種々の脆弱性を解消することが望まれていた。
【０００５】
上記した従来技術においては、アクセス制御情報を保護する上で以下の問題を有している。すなわち、アクセス権限の情報そのものもオブジェクトであり、従って、それらへのアクセス、変更が可能な管理者は必ず存在するので、それがアクセス権限の情報の改竄というリスクにならないようにする必要がある。通常のＵＮＩＸ（登録商標）系ＯＳであれば、オブジェクト毎のアクセス権（所有者、グループ・パーミッション）についてはそのオブジェクトの所有者であれば、“ｃｈｏｗｎ／ｃｈｇｒｐ／ｃｈｍｏｄ”等のコマンドにより、変更可能である。また、ｒｏｏｔ等の管理者権限を持ってすれば、全てのオブジェクトについて、アクセス権の変更が可能である。このため、ｒｏｏｔ権限を奪取するような形で、不正侵入が行われた場合には、アクセス権による各オブジェクトの保護の意味が低減する。
【０００６】
このような問題に対し、管理者のアクセス権限の設定に基づく「アクセス権限の強制」、あるいは、ｒｏｏｔ権限を縮小してアクセス権限の設定できる権限を別管理者に与える「権限縮小」等によるセキュリティの強化が施された高信頼ＯＳが実用化されている。また、アプリケーションを操作する権限レベルをＩＤカードに記録されている操作者コードに基づいて取得して、その権限レベルに基づいてアプリケーションの操作権限を満たしているか否かをチェックする技術が公開されている（例えば特許文献１参照）。
【特許文献１】特開２００１−９２７８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ここで、上述のような従来技術において、例えばＦＴＰ（File Transfer Protocol）の一連の処理によるファイルの他サーバへの送信の処理などでは、ＯＳはその一連の処理における各段階においてアクセスが行なわれうる全てのオブジェクト（ＦＴＰサーバの設定情報、認証の際に参照されるユーザ情報、ＦＴＰ転送するファイル、ログ情報の出力先であるシスログファイル等）へのアクセス許可を権限として与えられている。ＦＴＰの一連の処理における各段階とは、コマンド指示等に基づき設定ファイル等を参照しつつＦＴＰデーモンが起動される段階（フェーズ１）、ＦＴＰ接続ユーザからの認証要求を受付ける段階（フェーズ２）、認証成功後にＦＴＰデーモンのＵＩＤ（ユーザＩＤ）を接続ユーザのＵＩＤに変更する段階（フェーズ３）、接続ユーザからの指示に基づき送信すべきファイルへのアクセス（ｒｅａｄ）もしくは受信したファイルへのアクセス（ｗｒｉｔｅ）を行なう段階（フェーズ４）等である。
【０００８】
しかしながら、上記一連の処理における各段階に共通したアクセス権限を操作ユーザに対して付与する方法においては、当該一連の処理におけるフェーズ２の段階で不正アクセスが行なわれて（例えば、認証時にパスワードフィールド等をバッファオーバーフローさせるような攻撃）、アクセス権限を不正アクセスを行なったユーザに取られてしまった場合には、その後のフェーズ３、フェーズ４における操作も、取られてしまったアクセス権限で処理できるので、不正アクセスを行なったユーザにフェーズ３、フェーズ４の処理を許可してしまうこととなり、セキュリティを確保することができない。
【０００９】
そこでこの発明は、従来に比べてよりセキュリティを高く保つことができる、アクセス制御装置およびアクセス制御方法ならびにそのプログラムを提供することを目的としている。
【課題を解決するための手段】
【００１０】
本発明は、上述の課題を解決すべくなされたもので、自装置で記録しているアクセス対象オブジェクトに対するアクセス権限の情報を、自装置を操作する操作ユーザの全てについて変更できるアクセス制御装置であって、所定の一連の処理の単位ごとに、前記操作ユーザの情報と、前記一連の処理の単位におけるそれぞれの段階で前記操作ユーザからの指示として受付ける命令と、当該命令を受付けることにより前記一連の処理の単位におけるそれぞれの段階のうちの何れの段階であるのかを示す段階指定情報と、の組み合わせの情報を記憶する判定条件記憶手段と、前記一連の処理の単位におけるそれぞれの段階に応じたアクセス権限の情報を前記操作ユーザごとに記憶するアクセス権限記憶手段と、前記操作ユーザからの指示としての前記命令を受付けて、当該命令を受付けた際の前記一連の処理の単位における段階の情報を示す前記段階指定情報を前記判定条件記憶手段から読み取る段階判定手段と、前記受付けた命令を指示した操作ユーザの情報と、前記読み取った前記段階指定情報で示される前記一連の処理の単位における段階との組み合わせに対応付けられて前記アクセス権限記憶手段に記録されているアクセス権限の情報を読み取り、当該アクセス権限に基づいて、前記操作ユーザからの指示として受付けた命令で示される前記アクセス対象オブジェクトの処理を実行するか否かを判定するアクセス制御手段と、を備えることを特徴とするアクセス制御装置である。
【００１１】
また本発明は、前記一連の処理が、前記操作ユーザの操作に基づく１つのアプリケーションプログラムが行なう所定の一連の処理であることを特徴とする。
【００１２】
また本発明は、前記一連の処理が、前記操作ユーザの操作に基づく複数のアプリケーションプログラムそれぞれが行なう所定の一連の処理であり、前記一連の処理の単位における各段階は、前記複数のアプリケーションプログラムごとの処理の段階を示すことを特徴とする。
【００１３】
また本発明は、所定の一連の処理の単位ごとに、操作ユーザの情報と、一連の処理の単位におけるそれぞれの段階で操作ユーザからの指示として受付ける命令と、当該命令を受付けることにより前記一連の処理の単位におけるそれぞれの段階のうちの何れの段階であるのかを示す段階指定情報と、の組み合わせの情報を記憶する判定条件記憶手段と、前記一連の処理の単位におけるそれぞれの段階に応じたアクセス権限の情報を前記操作ユーザごとに記憶するアクセス権限記憶手段と、を備え、自装置で記録しているアクセス対象オブジェクトに対するアクセス権限の情報を、自装置を操作する操作ユーザの全てについて変更できるアクセス制御装置のコンピュータに実行させるプログラムであって、前記操作ユーザからの指示としての前記命令を受付けて、当該命令を受付けた際の前記一連の処理の単位における段階の情報を示す前記段階指定情報を前記判定条件記憶手段から読み取る段階判定処理と、前記受付けた命令を指示した操作ユーザの情報と、前記読み取った前記段階指定情報で示される前記一連の処理の単位における段階との組み合わせに対応付けられて前記アクセス権限記憶手段に記録されているアクセス権限の情報を読み取り、当該アクセス権限に基づいて、前記操作ユーザからの指示として受付けた命令で示される前記アクセス対象オブジェクトの処理を実行するか否かを判定するアクセス制御処理と、をコンピュータに実行させるプログラムである。
【発明の効果】
【００１４】
本発明によれば、アクセス制御手段は、一連の処理における各段階のそれぞれにおいて、状態判定手段で判定された段階に対応するアクセス権限の情報をアクセス権限記憶手段から読み取り、そのアクセス権限の情報に基づいて、各段階でアプリケーションのプログラムが指示する命令の示すアクセス対象オブジェクトを実行するか否かを判定する。従って、一連の処理における各段階において、不正アクセスが行なわれることにより当該不正アクセスを行なったユーザにアクセス権限を取得されてしまっても、その権限を当該フェーズで与えられている範囲のものに限定することが可能であり、他のフェーズで許可している権限については不正アクセスを行なったユーザは得ることができないため、これまでより高度なセキュリティを確保することができるという効果が得られる。本効果即ちフェーズの推移抑制は、不正アクセスによる攻撃をうけたプログラムにおいてはその影響により、以降の処理不ロジックが変わってしまうという性質によりもたらされる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の一実施形態によるアクセス制御装置を図面を参照して説明する。図１は同実施形態によるアクセス制御装置の構成を示すブロック図である。
この図において、符号１はアクセス制御装置である。このアクセス制御装置１はコンピュータのＵＮＩＸ（登録商標）などのＯＳ（Operating System）の機能の一部に対応するものであり、実際にはコンピュータが、このアクセス制御装置１の機能に加え他の機能を備えている。本実施形態においては、説明の便宜上、アクセス制御装置１の機能についてのみ説明するものとする。
【００１６】
アクセス制御装置１において、符号１１はアクセス権限記憶部であり、アクセス権限テーブルを保持している。また符号１２は判定条件記憶部であり、判定条件テーブルを保持している。また１３はアクセス制御部であり、ある操作ユーザからの指示として受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行するか否かを判定する。また１４はフェーズ判定部であり、操作ユーザからの指示として受付けたコマンドに基づいて、当該コマンドを受付けた際の一連の処理の単位における段階（フェーズ）を判定する処理を行なう。
【００１７】
そして、アクセス制御装置１は、一連の処理の単位におけるフェーズに基づいて、当該フェーズに対応するアクセス権限に基づき、操作ユーザからの指示として受付けた命令で示されるアクセス対象オブジェクトへの処理を実行するか否かを判定する処理を行なう。なお、上記ＯＳは、一般ユーザのアクセス権限および管理者ユーザ（ｒｏｏｔユーザ）のアクセス権限を変更できるＯＳである。
【００１８】
図２はアクセス権限テーブルのデータ構成を示す図である。
図３は判定条件テーブルのデータ構成を示す図である。
次に、図２、図３を用いて、アクセス権限記憶部の記憶するアクセス権限テーブルと、判定条件記憶部の記憶する判定条件テーブルについて説明する。
まず、図２より、アクセス権限テーブルには、一連の処理における各フェーズごとに、ＵＩＤ（ユーザＩＤ）またはＧＩＤ（グループＩＤ）と、そのフェーズにおいてアクセスするアクセス対象オブジェクトと、そのアクセス対象オブジェクトへのアクセス権限（read/write/execute）の情報が対応付けて記録されている。アクセス制御部１３はこのアクセス権限テーブルに基づいて、操作ユーザからの指示として受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行するか否かを判定を行なう。
【００１９】
また図３より、判定条件テーブルには、一連の処理の種類と、ＵＩＤ（ユーザＩＤ）またはＧＩＤ（グループＩＤ）の情報と、プロセスから実行要求された命令の種類と、その命令を受付けた際の前記一連の処理におけるフェーズの情報と、その命令を受付けた次に遷移する前記一連の処理におけるフェーズの情報（遷移先のフェーズ）とが対応付けて記録されている。そして、フェーズ判定部１４はこの判定条件テーブルに基づいて、一連の処理において実行要求されたアクセスへの判定を行ない、該当するものであれば「遷移先のフェーズ」の内容に従い、所定のフェーズへの遷移を行なう。
なお、一連の処理とは、予め設定された処理の単位であれば良く、例えば、ＦＴＰ（File Transfer Protocol）の処理におけるユーザのＦＴＰ処理開始の指示（ＦＴＰコマンド入力）からデータ転送の完了までの一連の処理であっても、複数のアプリケーションを用いて、最初の処理から最後の処理までを行なう一連の処理であってもよい。
【００２０】
図４はアクセス制御装置の処理概要を示す第１の図である。
図５はアクセス制御装置の第１の処理フローである。
次に、図４、図５を用いてアクセス制御装置の第１の処理フローについて説明する。
まず、操作ユーザである利用者ＡのアプリケーションＡの操作における一連の処理Ａの動作において、アクセス制御部１３は、当該アプリケーションＡのプログラムによってアクセス対象オブジェクトへの処理を実行するコマンドを受付ける（ステップＳ１ａ）。またアクセス制御部１３は、このコマンドを受付ける際に、このコマンドを指示した利用者Ａの識別情報であるＵＩＤ（またはＧＩＤ）を受付ける。アクセス制御部１３は利用者Ａからの処理Ａにおける指示としての最初のコマンドを受付けるとそのコマンドを処理Ａにおけるフェーズ１において指示されるコマンドであることを判断し、処理Ａの種類と、フェーズの種類「フェーズ１」の情報と、利用者ＡのＵＩＤと、コマンドに基づいて処理されるアクセス対象オブジェクトとに対応付けられてアクセス権限記憶部１１のアクセス権限テーブルに記録されているアクセス権限（１）を読み込む（ステップＳ２ａ）。ここで、アクセス権限が実行可能（execute）であれば、アクセス制御部１３は受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行する（ステップＳ３ａ）。
【００２１】
またアクセス制御部３は処理Ａのフェーズ１において、アプリケーションＡのプログラムが利用者ＡのＵＩＤで指示するコマンドを検知する。そして、その検知したコマンドの情報と処理Ａの情報と利用者ＡのＵＩＤの情報をフェーズ判定部１４に通知する。フェーズ判定部１４は、アクセス制御部１３から通知されたコマンドの情報「コマンドａ」と処理Ａの情報と利用者ＡのＵＩＤの情報の組み合わせが判定条件記憶部１２の判定条件テーブルに記録されているか否かを判定し、記録されている場合には、「遷移先のフェーズ」の情報「フェーズ２」を読み取る（ステップＳ４ａ）。そしてフェーズ判定部１４は読み取った「遷移先のフェーズ」の情報をアクセス制御部１３に通知する（ステップＳ５ａ）。これにより、アクセス制御部１３は、その後アプリケーションＡのプログラムから指示されたコマンドを実行するか否かの判定において、処理Ａ、「遷移先のフェーズ」の情報である「フェーズ２」の情報、利用者ＡのＵＩＤ、コマンドに基づいて処理されるアクセス対象オブジェクトと、に対応付けられてアクセス権限情報記憶部１１のアクセス権限テーブルに記録されているアクセス権限（２）を読み取って（ステップＳ６ａ）、当該読み取ったアクセス権限に基づいて、フェーズ２においてアプリケーションＡのプログラムにより指示されるコマンドが示すアクセス対象オブジェクトへの処理を実行できるか否かの判定を行なう。そして、アクセス対象オブジェクトへの処理が実行できると判定した場合には、アクセス制御部１３は受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行する（ステップＳ７ａ）。
【００２２】
またアクセス制御部３は処理Ａのフェーズ２において、アプリケーションＡのプログラムが利用者ＡのＵＩＤで指示するコマンドを検知する。そして、その検知したコマンドの情報と処理Ａの情報と利用者ＡのＵＩＤの情報をフェーズ判定部１４に通知する。フェーズ判定部１４は、アクセス制御部１３から通知されたコマンドの情報「コマンドｂ」と処理Ａの情報と利用者ＡのＵＩＤの情報の組み合わせが判定条件記憶部１２の判定条件テーブルに記録されているか否かを判定し、記録されている場合には、「遷移先のフェーズ」の情報「フェーズ３」を読み取る（ステップＳ８ａ）。そしてフェーズ判定部１４は読み取った「遷移先のフェーズ」の情報をアクセス制御部１３に通知する（ステップＳ９ａ）。これにより、アクセス制御部１３は、その後アプリケーションＡのプログラムから指示されたコマンドを実行するか否かの判定において、処理Ａ、「遷移先のフェーズ」の情報である「フェーズ３」の情報、利用者ＡのＵＩＤ、コマンドに基づいて処理されるアクセス対象オブジェクト、に対応付けられてアクセス権限情報記憶部１１のアクセス権限テーブルに記録されているアクセス権限（３）を読み取って（ステップＳ１０ａ）、当該読み取ったアクセス権限に基づいて、フェーズ３においてアプリケーションＡのプログラムにより指示されるコマンドが示すアクセス対象オブジェクトへの処理を実行できるか否かの判定を行なう。そして、アクセス対象オブジェクトへの処理が実行できると判定した場合には、アクセス制御部１３は受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行する（ステップＳ１１ａ）。
【００２３】
またアクセス制御部３は処理Ａのフェーズ３において、アプリケーションＡのプログラムが利用者ＡのＵＩＤで指示するコマンドを検知する。そして、その検知したコマンドの情報と処理Ａの情報と利用者ＡのＵＩＤの情報をフェーズ判定部１４に通知する。フェーズ判定部１４は、アクセス制御部１３から通知されたコマンドの情報「コマンドｃ」と処理Ａの情報と利用者ＡのＵＩＤの情報の組み合わせが判定条件記憶部１２の判定条件テーブルに記録されているか否かを判定し、記録されている場合には、「遷移先のフェーズ」の情報「フェーズ４」を読み取る（ステップＳ１２ａ）。そしてフェーズ判定部１４は読み取った「遷移先のフェーズ」の情報をアクセス制御部１３に通知する（ステップＳ１３ａ）。これにより、アクセス制御部１３は、その後アプリケーションＡのプログラムから指示されたコマンドを実行するか否かの判定において、処理Ａ、「遷移先のフェーズ」の情報である「フェーズ４」の情報、利用者ＡのＵＩＤ、コマンドに基づいて処理されるアクセス対象オブジェクト、に対応付けられてアクセス権限情報記憶部１１のアクセス権限テーブルに記録されているアクセス権限（４）を読み取って（ステップＳ１４ａ）、当該読み取ったアクセス権限に基づいて、フェーズ３においてアプリケーションＡのプログラムにより指示されるコマンドが示すアクセス対象オブジェクトへの処理を実行できるか否かの判定を行なう。そして、アクセス対象オブジェクトへの処理が実行できると判定した場合には、アクセス制御部１３は受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行する（ステップＳ１５ａ）。
【００２４】
以上、一つのアプリケーションプログラムによる一連の処理の各フェーズにおいて、それぞれのアクセス権限を操作ユーザにサービスを行なっているアプリケーションプロセスに対して適用する例について説明したが、上述の処理で示すように、アクセス制御部１３は、一連の処理Ａにおけるフェーズ１〜４のそれぞれにおいて、状態判定部１４で判定されたフェーズに対応するアクセス権限をアクセス権限テーブルから読み取り、そのアクセス権限に基づいて、各フェーズでアプリケーションＡのプログラムが指示するコマンドの示すアクセス対象オブジェクトへの処理を実行するか否かを判定する。
本提案手法を用いない従来のアクセス制御装置／方式においては、このような不正アクセスの状況においては不正アクセスを行なったユーザには、当該アプリケーションプロセスに許可されている全ての権限を駆使した不正操作が可能となるため、より大きな被害を招いてしまう可能性がある。一方、例えばフェーズ２において、サービスを行なっているアプリケーションプロセスの脆弱性を攻撃することにより当該不正アクセスを行なったユーザが前記アプリケーションプロセスを介した不正アクセスを行なう場合であっても、そのアクセス権限はフェーズ２で許可されたものに限定されることとなり、他のフェーズでの権限は与えられないことから、より被害を抑えることが可能となる。このように本提案手法を用いることで、より高度なセキュリティを確保することができる。
【００２５】
図６はアクセス制御装置の処理概要を示す第２の図である。
図７はアクセス制御装置の第２の処理フローである。
次に、図６、図７を用いてアクセス制御装置の第２の処理フローについて説明する。
第２の処理フローは一連の処理が複数のアプリケーションのプログラムによって処理される場合についてのフローである。
まず、操作ユーザである利用者ＢのアプリケーションＡ、Ｂ、Ｃの各アプリケーションの操作における一連の処理Ｂの動作において、アクセス制御部１３は、初めに、当該アプリケーションＡの各プログラムの処理としてアクセス対象オブジェクトへの処理が実行される各コマンドを受付ける（ステップＳ１ｂ）。またアクセス制御部１３は、それらコマンドを受付ける際に、コマンドを指示した利用者Ｂの識別情報であるＵＩＤ（またはＧＩＤ）を受付ける。アクセス制御部１３は利用者Ｂからの処理Ｂにおいて、アプリケーションＡのプログラムからアクセス対象オブジェクトへの処理を実行するコマンドを受付けると、そのコマンドを処理Ｂにおけるフェーズ１において指示されるコマンドであることを判断し、処理Ｂの種類と、フェーズの種類「フェーズ１」の情報と、利用者ＢのＵＩＤと、コマンドに基づいて処理されるアクセス対象オブジェクトとに対応付けられてアクセス権限記憶部１１のアクセス権限テーブルに記録されているアクセス権限（５）を読み込む（ステップＳ２ｂ）。ここで、アクセス権限が実行可能（execute）であれば、アクセス制御部１３は受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行する（ステップＳ３ｂ）。
【００２６】
またアクセス制御部３は処理Ｂのフェーズ１において、アプリケーションＡのプログラムが利用者ＢのＵＩＤで指示するコマンドを検知する。そして、その検知したコマンドの情報と処理Ｂの情報と利用者ＢのＵＩＤの情報をフェーズ判定部１４に通知する。フェーズ判定部１４は、アクセス制御部１３から通知されたコマンドの情報「コマンドｅ」と処理Ｂの情報と利用者ＢのＵＩＤの情報の組み合わせが判定条件記憶部１２の判定条件テーブルに記録されているか否かを判定し、記録されている場合には、「遷移先のフェーズ」の情報「フェーズ２」を読み取る（ステップＳ４ｂ）。そしてフェーズ判定部１４は読み取った「遷移先のフェーズ」の情報をアクセス制御部１３に通知する（ステップＳ５ｂ）。これにより、アクセス制御部１３は、その後，アプリケーションＢのプログラムから指示されたコマンドを実行するか否かの判定において、処理Ｂ、「遷移先のフェーズ」の情報である「フェーズ２」の情報、利用者ＢのＵＩＤ、コマンドに基づいて処理されるアクセス対象オブジェクトと、に対応付けられてアクセス権限情報記憶部１１のアクセス権限テーブルに記録されているアクセス権限（６）を読み取って（ステップＳ６ｂ）、当該読み取ったアクセス権限に基づいて、フェーズ２においてアプリケーションＢのプログラムにより指示されるコマンドが示すアクセス対象オブジェクトへの処理を実行できるか否かの判定を行なう。そして、アクセス対象オブジェクトへの処理が実行できると判定した場合には、アクセス制御部１３は受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行する（ステップＳ７ｂ）。
【００２７】
またアクセス制御部３は処理Ｂのフェーズ２において、アプリケーションＢのプログラムが利用者ＢのＵＩＤで指示するコマンドを検知する。そして、その検知したコマンドの情報と処理Ｂの情報と利用者ＢのＵＩＤの情報をフェーズ判定部１４に通知する。フェーズ判定部１４は、アクセス制御部１３から通知されたコマンドの情報「コマンドｆ」と処理Ｂの情報と利用者ＢのＵＩＤの情報の組み合わせが判定条件記憶部１２の判定条件テーブルに記録されているか否かを判定し、記録されている場合には、「遷移先のフェーズ」の情報「フェーズ３」を読み取る（ステップｓ８ｂ）。そしてフェーズ判定部１４は読み取った「遷移先のフェーズ」の情報をアクセス制御部１３に通知する（ステップＳ９ｂ）。これにより、アクセス制御部１３は、その後、アプリケーションＣのプログラムから指示されたコマンドを実行するか否かの判定において、処理Ｂ、「遷移先のフェーズ」の情報である「フェーズ３」の情報、利用者ＢのＵＩＤ、コマンドに基づいて処理されるアクセス対象オブジェクト、に対応付けられてアクセス権限情報記憶部１１のアクセス権限テーブルに記録されているアクセス権限（７）を読み取って（ステップＳ１０ｂ）、当該読み取ったアクセス権限に基づいて、フェーズ３においてアプリケーションＣのプログラムにより指示されるコマンドが示すアクセス対象オブジェクトへの処理を実行できるか否かの判定を行なう。そして、アクセス対象オブジェクトへの処理が実行できると判定した場合には、アクセス制御部１３は受付けたコマンドで示されるアクセス対象オブジェクトへの処理を実行する（ステップＳ１１ｂ）。
【００２８】
以上、複数のアプリケーションプログラムによる一連の処理の各フェーズにおいて、それぞれのアクセス権限を操作ユーザに適用する例について説明したが、上述の処理で示すように、アクセス制御部１３は、一連の処理Ｂにおけるフェーズ１〜３のそれぞれにおいて、状態判定部１４で判定されたフェーズに対応するアクセス権限をアクセス権限テーブルから読み取り、そのアクセス権限に基づいて、各フェーズでアプリケーションＡ〜Ｃそれぞれのプログラムが指示するコマンドの示すアクセス対象オブジェクトへの処理を実行するか否かを判定する。従って、例えばフェーズ２において、不正アクセスが行なわれることにより当該不正アクセスを行なったユーザにアクセス権限が取得されてしまっても、その次のフェーズ３におけるアクセス権限は、フェーズ２におけるアクセス権限と異なる場合があるので、ユーザの操作におけるアクセス権限の付与において、より高度なセキュリティを確保することができる。
【００２９】
なお上述のアクセス制御装置は内部に、コンピュータシステムを有している。そして、上述した処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【００３０】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【図面の簡単な説明】
【００３１】
【図１】本発明の一実施形態によるアクセス制御装置の構成を示すブロック図である。
【図２】本発明の一実施形態によるアクセス権限テーブルのデータ構成を示す図である。
【図３】本発明の一実施形態による判定条件テーブルのデータ構成を示す図である。
【図４】本発明の一実施形態によるアクセス制御装置の処理概要を示す第１の図である。
【図５】本発明の一実施形態によるアクセス制御装置の第１の処理フローを示す図である。
【図６】本発明の一実施形態によるアクセス制御装置の処理概要を示す第２の図である。
【図７】本発明の一実施形態によるアクセス制御装置の第２の処理フローを示す図である。
【符号の説明】
【００３２】
１・・・アクセス制御装置
１１・・・アクセス権限記憶部
１２・・・判定条件記憶部
１３・・・アクセス制御部
１４・・・フェーズ判定部
【図１】
2006120013.tif 000003
【図２】
2006120013.tif 000004
【図３】
2006120013.tif 000005
【図４】
2006120013.tif 000006
【図５】
2006120013.tif 000007
【図６】
2006120013.tif 000008
【図７】
2006120013.tif 000009