(57)【要約】【課題】アクセス制御の容易化とセキュリティ向上とを目的とする。【解決手段】モード制御部１７は、アクセス制御を行うための情報を蓄積する制御モードと、前記蓄積モードで蓄積した情報に基づきアクセス制御を行う運用モードとのモードを制御する。制御ＤＢ１４は、クライアントからアクセスを受け付けた場合に、モードが制御モードである場合、クライアントの識別情報を制御情報として記憶する。アクセス制御部１３は、クライアントからアクセスを受け付けた場合に、モードが運用モードである場合、クライアントの識別情報が制御ＤＢに記憶されていれば、クライアントのサーバへのアクセスを許可する。一方、アクセス制御部１３は、クライアントの識別情報が制御ＤＢに記憶されていなければ、クライアントのサーバへのアクセスを許可しない。【選択図】図２
2010191855.tif 000002
【特許請求の範囲】
【請求項１】
アクセス制御を行うための情報を蓄積する蓄積モードと、前記蓄積モードで蓄積した情報に基づきアクセス制御を行う運用モードとのモードを処理装置により制御するモード制御部と、
クライアントから識別情報を含むアクセス要求を通信装置を介して受信することにより、サーバへのアクセスを受け付けるインターフェース部と、
前記インターフェース部がクライアントからアクセスを受け付けた場合に、前記モード制御部が制御するモードが蓄積モードである場合、前記クライアントの識別情報を制御情報として記憶装置に記憶する制御情報記憶部と、
前記インターフェース部がクライアントからアクセスを受け付けた場合に、前記モード制御部が制御するモードが運用モードである場合、前記クライアントの識別情報を前記制御情報記憶部が前記制御情報として記憶していれば、前記クライアントの前記サーバへのアクセスを処理装置により許可するアクセス制御部と
を備えることを特徴とするアクセス制御装置。
【請求項２】
前記インターフェース部は、複数のクライアントからアクセスを受け付け、
前記モード制御部は、クライアント毎に、前記蓄積モードと前記運用モードとのモードを制御し、
前記制御情報記憶部は、前記インターフェース部がクライアントからアクセスを受け付けた場合に、前記クライアントについての前記モードが蓄積モードである場合、前記クライアントの識別情報を前記制御情報として記憶し、
前記アクセス制御部は、前記インターフェース部がクライアントからアクセスを受け付けた場合に、前記クライアントについてのモードが運用モードである場合、前記クライアントの識別情報を前記制御情報記憶部が前記制御情報として記憶していれば、前記クライアントの前記サーバへのアクセスを許可する
ことを特徴とする請求項１に記載のアクセス制御装置。
【請求項３】
前記インターフェース部は、前記クライアントの識別情報とともに、クライアントがサーバへ依頼する処理内容を示す関数情報を受信し、
前記モード制御部は、前記関数情報毎に、前記蓄積モードと前記運用モードとのモードを制御し、
前記制御情報記憶部は、前記インターフェース部がクライアントから関数情報を受信した場合に、前記関数情報についての前記モードが前記蓄積モードである場合、前記クライアントの識別情報と前記関数情報との組を前記制御情報として記憶し、
前記アクセス制御部は、前記インターフェース部がクライアントから関数情報を受信した場合に、前記関数情報についての前記モードが運用モードである場合、前記クライアントの識別情報と前記関数情報との組を前記制御情報記憶部が前記制御情報として記憶していれば、前記クライアントの前記関数情報に基づくサーバへのアクセスを許可する
ことを特徴とする請求項１又は２に記載のアクセス制御装置。
【請求項４】
前記インターフェース部は、サーバが提供する複数のサービスに対して、クライアントからのアクセスを受け付け、
前記モード制御部は、前記サービス毎に、前記蓄積モードと前記運用モードとのモードを制御し、
前記アクセス制御部は、前記インターフェース部がクライアントから前記複数のサービスの所定のサービスに対してアクセスを受け付けた場合に、前記所定のサービスについての前記モードが前記蓄積モードである場合、前記クライアントの識別情報と前記サービスの識別情報との組を前記制御情報として記憶し、
前記アクセス制御部は、前記インターフェース部がクライアントから前記複数のサービスの所定のサービスに対してアクセスを受け付けた場合に、前記所定のサービスについての前記モードが運用モードである場合、前記クライアントの識別情報と前記サービスの識別情報との組を前記制御情報記憶部が前記制御情報として記憶していれば、前記クライアントの前記サービスへのアクセスを許可する
ことを特徴とする請求項１から３までのいずれかに記載のアクセス制御装置。
【請求項５】
複数のアクセス制御装置と制御情報記憶装置とを備えるアクセス制御システムであり、
前記複数のアクセス制御装置の各アクセス制御装置は、
クライアントから識別情報を含むアクセス要求を通信装置を介して受信することにより、サーバへのアクセスを受け付けるインターフェース部を備え、
前記制御情報記憶装置は、
アクセス制御を行うための情報を蓄積する蓄積モードと、前記蓄積モードで蓄積した情報に基づきアクセス制御を行う運用モードとのモードを処理装置により制御するモード制御部と、
前記インターフェース部がクライアントからアクセスを受け付けた場合に、前記モード制御部が制御するモードが蓄積モードである場合、前記クライアントの識別情報を制御情報として記憶装置に記憶する制御情報記憶部と、
前記インターフェース部がクライアントからアクセスを受け付けた場合に、前記モード制御部が制御するモードが運用モードである場合、前記クライアントの識別情報を前記制御情報記憶部が前記制御情報として記憶していれば、前記クライアントの前記サーバへのアクセスを処理装置により許可するアクセス制御部と
を備えることを特徴とするアクセス制御システム。
【請求項６】
アクセス制御を行うための情報を蓄積する蓄積モードと、前記蓄積モードで蓄積した情報に基づきアクセス制御を行う運用モードとのモードを処理装置が制御し、
クライアントから識別情報を含むアクセス要求を通信装置が受信することにより、サーバへのアクセスを受け付け、
クライアントからアクセスを受け付けた場合に、前記モードが蓄積モードである場合、前記クライアントの識別情報を制御情報として記憶装置が記憶し、
クライアントからアクセスを受け付けた場合に、前記モードが運用モードである場合、前記クライアントの識別情報を前記制御情報として記憶していれば、前記クライアントの前記サーバへのアクセスを処理装置が許可する
ことを特徴とするアクセス制御方法。
【請求項７】
アクセス制御を行うための情報を蓄積する蓄積モードと、前記蓄積モードで蓄積した情報に基づきアクセス制御を行う運用モードとのモードを制御するモード制御処理と、
クライアントから識別情報を含むアクセス要求を受信することにより、サーバへのアクセスを受け付けるインターフェース処理と、
前記インターフェース処理でクライアントからアクセスを受け付けた場合に、前記モード制御処理で制御するモードが蓄積モードである場合、前記クライアントの識別情報を制御情報として記憶する制御情報記憶処理と、
前記インターフェース処理でクライアントからアクセスを受け付けた場合に、前記モード制御処理で制御するモードが運用モードである場合、前記クライアントの識別情報を前記制御情報記憶処理で前記制御情報として記憶していれば、前記クライアントの前記サーバへのアクセスを許可するアクセス制御処理と
をコンピュータに実行させることを特徴とするアクセス制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、サーバが提供するサービスへのクライアントからのアクセスを制御する技術に関する。
【背景技術】
【０００２】
特許文献１には、ログ履歴を参照し、特定のサービスに対してアクセス制御を行うアクセス制御機構についての記載がある。
特許文献２には、アクセスポリシーの生成手段として汎化手段を導入し、アクセスポリシーを汎用化する技術についての記載がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２４２９３４号公報
【特許文献２】特開２００５−２３４６６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載されたアクセス制御機構は、クライアントからある特定のサービスに対するアクセスの制御を対象とする。クライアントが複数のサービスにアクセスする場合には、個別にアクセスポリシーを設定し、動作確認を行う必要がある。また、クライアントとサービスとがアクセスポリシーで密に連携している。そのため、サービスの改修やバージョンアップを行った場合は、再度アクセスポリシーを修正する必要がある。
この発明は、例えば、アクセス制御の容易化とセキュリティ向上とを目的とする。
【課題を解決するための手段】
【０００５】
本発明に係るアクセス制御装置は、例えば、
アクセス制御を行うための情報を蓄積する蓄積モードと、前記蓄積モードで蓄積した情報に基づきアクセス制御を行う運用モードとのモードを処理装置により制御するモード制御部と、
クライアントから識別情報を含むアクセス要求を通信装置を介して受信することにより、サーバへのアクセスを受け付けるインターフェース部と、
前記インターフェース部がクライアントからアクセスを受け付けた場合に、前記モード制御部が制御するモードが蓄積モードである場合、前記クライアントの識別情報を制御情報として記憶装置に記憶する制御情報記憶部と、
前記インターフェース部がクライアントからアクセスを受け付けた場合に、前記モード制御部が管理するモードが運用モードである場合、前記クライアントの識別情報を前記制御情報記憶部が前記制御情報として記憶していれば、前記クライアントの前記サーバへのアクセスを処理装置により許可するアクセス制御部と
を備えることを特徴とする。
【発明の効果】
【０００６】
この発明に係るアクセス制御装置は、動作を検証モードと運用モードとに分け、検証モード時にアクセスしたクライアントに対して、運用モード時にアクセスを許可する。これにより、アクセス制御を容易なものとし、セキュリティ向上が可能となる。
【図面の簡単な説明】
【０００７】
【図１】実施の形態１におけるアクセス制御システムの構成図。
【図２】実施の形態１に係るアクセスコントロールレイヤ１０の構成図。
【図３】検証モード時のアクセスコントロールレイヤ１０の動作を示すフローチャート。
【図４】制御ＤＢ１４が記憶する情報の一例を示す図。
【図５】ログＤＢ１６が記憶する情報の一例を示す図（検証モード時）。
【図６】運用モード時のアクセスコントロールレイヤ１０の動作を示すフローチャート。
【図７】ログ記憶部１５が記憶する情報の一例を示す図（運用モード時）。
【図８】実施の形態２に係るアクセスコントロールレイヤ１０の構成図。
【図９】実施の形態２に係るモードＤＢ１８が記憶する情報の一例を示す図。
【図１０】アクセスコントロールレイヤ１０の動作を示すフローチャート。
【図１１】実施の形態３に係るモードＤＢ１８が記憶する情報の一例を示す図。
【図１２】実施の形態４に係るモードＤＢ１８が記憶する情報の一例を示す図。
【図１３】実施の形態５に係るアクセスコントロールレイヤ１０の構成図。
【図１４】実施の形態６に係るアクセス制御システムの構成図。
【図１５】実施の形態６に係るアクセスコントロールレイヤ１０の構成図。
【図１６】アクセスコントロールレイヤ１０のハードウェア構成の一例を示す図。
【発明を実施するための形態】
【０００８】
実施の形態１．
図１は、アクセス制御システムの構成図である。
アクセス制御システムは、サーバ１と複数のクライアント２（クライアント１〜クライアントＭ）を備える。サーバ１と各クライアント２とは、相互にネットワーク３を介して接続される。
サーバ１は、アクセスコントロールレイヤ１０（アクセス制御装置）、複数のサービス２０（サービス１〜サービスＮ）、複数のサービスインターフェース３０（サービス１用インターフェース〜サービスＮ用インターフェース）を備える。
アクセスコントロールレイヤ１０は、各クライアント２から各サービス２０へのアクセス制御を行う。サービス２０は、サーバ１が各クライアント２へ提供するサービス（処理）である。サービスインターフェース３０は、サービス２０のインターフェースであり、サービス２０毎に設けられる。つまり、サービス１には、サービス１用インターフェースが設けられ、サービス２には、サービス２用インターフェースが設けられる。
【０００９】
図２は、アクセスコントロールレイヤ１０の構成図である。
アクセスコントロールレイヤ１０は、インターフェース部１１、変換部１２、アクセス制御部１３、制御ＤＢ１４（制御情報記憶部）、ログ記憶部１５、ログＤＢ１６、モード制御部１７を備える。インターフェース部１１は、サービス２０毎（サービスインターフェース３０毎）に代替インターフェースを備える。つまり、サービス１（サービス１用インターフェース）には、サービス１用代替インターフェースが設けられ、サービス２（サービス１用インターフェース）には、サービス２用代替インターフェースが設けられる。
【００１０】
アクセスコントロールレイヤ１０の動作について説明する。
アクセスコントロールレイヤ１０は、モード制御部１７が検証モード（蓄積モード）と運用モードとの２つのモードを切り替えることにより、アクセス制御を実現する。検証モードは、アクセス制御を行うための情報を蓄積するモードである。運用モードは、検証モードで蓄積した情報に基づきアクセス制御を行うモードである。モード制御部１７は、例えば、管理者等からの指示に従い、あるいは所定のタイミングでモードを切り替える（モード制御ステップ）。
検証モードでは、アクセスコントロールレイヤ１０は、クライアント２からサービス２０へのアクセス要求を示すクライアント情報を受信すると、受信したクライアント情報を制御ＤＢ１４に蓄積する。運用モードでは、制御ＤＢ１４に蓄積されたクライアント情報に基づくアクセス要求があった場合には、アクセスコントロールレイヤ１０はアクセスを許可する。一方、制御ＤＢ１４に蓄積されていないクライアント情報に基づくアクセス要求があった場合には、アクセスコントロールレイヤ１０はアクセスを許可しない。つまり、アクセスコントロールレイヤ１０は、検証モード時にアクセス要求のあったものについては運用モード時にアクセスを許可とし、検証モード時にアクセス要求のなかったものについては運用モード時にアクセスを不許可とする。言い換えると、アクセスコントロールレイヤ１０は、検証モード時におけるアクセス要求のあり／なしに基づきアクセスポリシーを生成し、運用モード時には生成したアクセスポリシーに従ってアクセス制御を行う。
以下、検証モード時と運用モード時とのアクセスコントロールレイヤ１０の動作を詳細に説明する。
【００１１】
図３は、検証モード時のアクセスコントロールレイヤ１０の動作を示すフローチャートである。
（Ｓ１０１：受信ステップ）
インターフェース部１１は、クライアント２が送信したクライアント情報を通信装置を介して受信することにより、クライアント２からのサーバ１が提供する所定のサービス２０へのアクセス要求（サービス接続要求）を受け付ける。特に、クライアント２が接続を要求するサービス２０に対応する代替インターフェースがサービス接続要求を受け付ける。インターフェース部１１は、受信したクライアント情報を変換部１２へ送信する。
なお、クライアント情報には、例えば、クライアント２の識別情報、関数情報、サービスの識別情報等が含まれる。クライアント２の識別情報は、クライアント２を一意に識別するＩＤ（ＩＤｅｎｔｉｆｉｅｒ）である。関数情報は、サービス２０へ依頼する処理内容を示す情報等である。関数情報には、例えば、呼び出し関数や呼び出し行数が含まれる。呼び出し関数は、サービス２０に実行させる関数（処理）を示す。呼び出し行は、サービス接続要求を出力したクライアント２におけるプログラムの行数を示す。サービスの識別情報は、サービス２０を一意に識別するＩＤであり、クライアント２がアクセスを要求するサービス２０を示す。
（Ｓ１０２：制御情報記憶ステップ）
変換部１２は、クライアント情報をアクセス制御部１３へ送信する。アクセス制御部１３は、クライアント情報を制御ＤＢ１４に記憶する。
図４は、制御ＤＢ１４が記憶する情報の一例を示す図である。制御ＤＢ１４は、検証日時、要求元、呼び出し関数、呼び出し行、要求サービスを記憶する。検証日時は、クライアント情報を記憶する日時である。要求元は、アクセス要求を出したクライアント２の識別情報である。呼び出し関数、呼び出し行は、関数情報に含まれる呼び出し関数、呼び出し行である。要求サービスは、クライアント２がアクセスを要求するサービス２０の識別情報である。
（Ｓ１０３：ログ記憶ステップ）
変換部１２は、クライアント情報をログ記憶部１５へ送信する。ログ記憶部１５は、クライアント情報をログＤＢ１６に記憶する。
図５は、ログＤＢ１６が記憶する情報の一例を示す図である。ログＤＢ１６は、日時、要求元、要求サービス、変換結果、クライアントＩ／Ｆ引数、クライアント返り値、サービスＩ／Ｆ引数、サービスＩ／Ｆ返り値を記憶する。日時は、情報が記憶される日時、すなわちレコードの作成日時である。要求元と要求サービスとは、制御ＤＢ１４の要求元と要求サービスと同一の情報である。変換結果は、サービス２０へのアクセスが許可されたか否かを示す情報である。クライアントＩ／Ｆ引数は、クライアント２からアクセスコントロールレイヤ１０へ送信される情報であり、クライアント情報の関数情報である。クライアントＩ／Ｆ返り値は、アクセスコントロールレイヤ１０からクライアント２へ送信する返り値である。サービスＩ／Ｆ引数は、アクセスコントロールレイヤ１０からサービス２０へ送信する情報である。サービスＩ／Ｆ返り値は、サービス２０からアクセスコントロールレイヤ１０へ送信される返り値である。
なお、この時点では、ログ記憶部１５は、ログＤＢ１６の日時、要求元、要求サービス、クライアントＩ／Ｆ引数、サービスＩ／Ｆ引数だけを記憶する。つまり、この時点では、ログ記憶部１５は、ログＤＢ１６のクライアントＩ／Ｆ返り値、サービスＩ／Ｆ返り値は記憶しない。なお、検証モードでは、原則としてサービス２０へのアクセスは全て許可され、変換結果にはアクセス許可を示す情報が記憶される。
（Ｓ１０４：クライアント情報変換ステップ）
変換部１２は、制御ＤＢ１４とログＤＢ１６とへのクライアント情報を記憶した後、クライアント情報を該当のサービスインターフェース３０用に処理装置により変換する。該当のサービスインターフェース３０とは、クライアント２がアクセスを要求するサービス２０に対応するサービスインターフェース３０である。
（Ｓ１０５：クライアント情報送信ステップ）
変換部１２は、変換したクライアント情報（サービスＩ／Ｆ引数を含む情報）を該当のサービスインターフェース３０へ送信する。
すると、該当のサービス２０は、サービスインターフェース３０を介してクライアント情報を受信する。サービス２０は、受信したクライアント情報に従い処理を実行する。そして、サービス２０は、処理を実行した結果を示す結果情報（サービスＩ／Ｆ返り値）を、サービスインターフェース３０を介してアクセスコントロールレイヤ１０へ送信する。
（Ｓ１０６：結果情報受信ステップ）
変換部１２は、サービス２０が送信した結果情報を受信する。
（Ｓ１０７：ログ記憶ステップ）
変換部１２は、受信した結果情報をログ記憶部１５へ送信する。ログ記憶部１５は、結果情報をログＤＢ１６に記憶する。ここでは、ログ記憶部１５は、クライアントＩ／Ｆ返り値、サービスＩ／Ｆ返り値をログＤＢ１６の該当のレコードに記憶する。
（Ｓ１０８：結果情報送信ステップ）
変換部１２は、該当の代替インターフェースを介して、クライアント２へ結果情報（クライアント返り値）を通信装置を介して送信する。
【００１２】
図６は、運用モード時のアクセスコントロールレイヤ１０の動作を示すフローチャートである。
（Ｓ２０１）では、（Ｓ１０１）と同様に、クライアント２からクライアント情報を受信する。
（Ｓ２０２：制御ＤＢ検索ステップ）
変換部１２は、クライアント情報をアクセス制御部１３へ送信する。アクセス制御部１３は、クライアント情報を制御ＤＢ１４から処理装置により検索する。ここでは、アクセス制御部１３は、クライアント情報に含まれるクライアント２の識別情報、関数情報（呼び出し関数、呼び出し行数）、サービス２０の識別情報を検索キーとして、制御ＤＢ１４からレコードを検索する。
（Ｓ２０３：アクセス判定ステップ）
制御ＤＢ１４からレコードが検索された場合（Ｓ２０３でＹＥＳ）、アクセス制御部１３はサービス２０へのアクセス許可を示す許可情報を変換部１２へ送信して、（Ｓ２０４）へ進む。一方、制御ＤＢ１４からレコードが検索されない場合（Ｓ２０３でＮＯ）、アクセス制御部１３はサービス２０へのアクセス不許可を示す不許可情報を変換部１２へ送信して、（Ｓ２１０）へ進む。つまり、アクセス制御部１３は、レコードが検索された場合、アクセスを許可し、レコードが検索されない場合、アクセスを許可しない。
（Ｓ２０４：ログ記憶ステップ）
変換部１２は、（Ｓ２０３）でアクセス制御部１３が送信した許可情報を受信する。変換部１２は、受信した許可情報をクライアント情報とともにログ記憶部１５へ送信する。ログ記憶部１５は、許可情報とクライアント情報とをログＤＢ１６に記憶する。つまり、ログ記憶部１５は、ログＤＢ１６の日時、要求元、要求サービス、変換結果、クライアントＩ／Ｆ引数、サービスＩ／Ｆ引数を記憶する。変換結果には、アクセス許可を示す情報が記憶される。
（Ｓ２０５）から（Ｓ２０９）までは、（Ｓ１０４）から（Ｓ１０８）までと同様である。つまり、アクセスコントロールレイヤ１０は、クライアント情報を変換して該当のサービス２０へ送信し、サービス２０から結果情報を受信して、クライアント２へ結果情報を送信する。
（Ｓ２１０：ログ記憶ステップ）
変換部１２は、（Ｓ２０３）でアクセス制御部１３が送信した不許可情報を受信する。変換部１２は、受信した不許可情報をクライアント情報とともにログ記憶部１５へ送信する。ログ記憶部１５は、不許可情報とクライアント情報とをログＤＢ１６に記憶する。
図７は、（Ｓ２１０）で記憶されるログ記憶部１５の情報の一例を示す図である。図７の３行目が（Ｓ２１０）で記憶される情報を示す。つまり、ログ記憶部１５は、ログＤＢ１６の日時、要求元、要求サービス、変換結果、クライアントＩ／Ｆ引数、クライアントＩ／Ｆ返り値を記憶する。特に、変換結果には、アクセス不許可（ＥＲＲＯＲ）を示す情報が記憶される。また、サービス２０へのアクセスが許可されないのであるから、サービスＩ／Ｆ引数、サービスＩ／Ｆ返り値には情報が記憶されない。
（Ｓ２１１：ログ記憶ステップ）
変換部１２は、クライアントＩ／Ｆ返り値にアクセス不許可（ＥＲＲＯＲ）を示す情報を設定する。そして、（Ｓ２０９）へ進み、アクセス不許可を示す情報を設定したクライアントＩ／Ｆ返り値をクライアント２へ送信する。
【００１３】
以上のように、アクセスコントロールレイヤ１０は、動作を検証モードと運用モードに分け、検証モード時にアクセス要求を送信したクライアント２に対して、運用モードではアクセス許可を行う。これにより、アクセス制御が容易なものとなり、セキュリティが向上する。
【００１４】
なお、上記説明では、（Ｓ２０２）で、クライアント２の識別情報、関数情報（呼び出し関数、呼び出し行数）、サービス２０の識別情報を検索キーとして制御ＤＢ１４からレコードを検索した。そして、（Ｓ２０３）でレコードが検索されたか否かにより、アクセス許可、不許可を決定した。したがって、要求元のクライアント２、関数情報（呼び出し関数、呼び出し行数）、アクセスするサービス２０毎にアクセス制御が行われることになる。
しかし、これに限らず、例えば、（Ｓ２０２）で、クライアント２の識別情報だけを検索キーとして制御ＤＢ１４からレコードを検索し、（Ｓ２０３）でレコードが検索されたか否かにより、アクセス許可、不許可を決定してもよい。この場合、要求元のクライアント２毎にアクセス制御が行われることになる。
また、例えば、（Ｓ２０２）で、クライアント２の識別情報、関数情報（呼び出し関数、呼び出し行数）を検索キーとして制御ＤＢ１４からレコードを検索し、（Ｓ２０３）でレコードが検索されたか否かにより、アクセス許可、不許可を決定してもよい。関数情報については、呼び出し関数だけとしてもよいし、呼び出し行数だけとしてもよい。
つまり、アクセス制御を行いたい単位に応じて、検索キーとして用いる情報を変更してもよい。
【００１５】
実施の形態２．
実施の形態１では、アクセスコントロールレイヤ１０は検証モードと運用モードとの切り替えを全てのクライアント２に対して同時に行うことを前提として説明した。つまり、検証モードと運用モードとは、排他的に実行された。実施の形態２では、アクセスコントロールレイヤ１０が検証モードと運用モードとの切り替えをクライアント２毎に行う例を説明する。
【００１６】
図８は、アクセスコントロールレイヤ１０の構成図である。
図８に示すアクセスコントロールレイヤ１０は、図２に示すアクセスコントロールレイヤ１０が備える機能に加え、さらにモードＤＢ１８を備える。
モードＤＢ１８は、クライアント２毎に現在のモードがどのモードであるかを記憶する。図９は、モードＤＢ１８が記憶する情報の一例を示す図である。モードＤＢ１８は、要求元、モードを記憶する。要求元は、クライアント２の識別情報である。モードは、現在のモードを示す情報である。
【００１７】
図１０は、アクセスコントロールレイヤ１０の動作を示すフローチャートである。なお、実施の形態２では、実施の形態１とは異なり、検証モードと運用モードとでフローチャートを分けていない。実施の形態２では、図１０に示す１つのフローチャートの中で、クライアント２毎にモードの判断を行い、実行する処理を分けている。
（Ｓ３０１）では、（Ｓ１０１）と同様に、クライアント２からクライアント情報を受信する。
（Ｓ３０２：モードＤＢ検索ステップ）
変換部１２は、クライアント情報をモード制御部１７へ送信する。モード制御部１７は、クライアント情報をモードＤＢ１８から処理装置により検索する。ここでは、モード制御部１７は、クライアント情報に含まれるクライアント２の識別情報を検索キーとしてモードＤＢ１８からレコード検索する。
（Ｓ３０３：情報有無判定ステップ）
モードＤＢ１８からクライアント２の識別情報が検索された場合（Ｓ３０３でＹＥＳ）、モード制御部１７は、そのクライアント２についてのモード情報を抽出して、（Ｓ３０４）へ進む。一方、モードＤＢ１８からクライアント２の識別情報が検索されない場合（Ｓ３０３でＮＯ）、モード制御部１７は（Ｓ３０５）へ進み、クライアント情報をモードＤＢ１８に記憶する。
（Ｓ３０４：モード判定ステップ）
モード制御部１７は、抽出したモード情報が示すモードが検証モードであるか否かを処理装置により判定する。検証モードである場合、（Ｓ３０６）へ進み、検証モードの処理を実行する。一方、検証モードでない場合、（Ｓ３０７）へ進み、運用モードの処理を実行する。
（Ｓ３０５：モード記憶ステップ）
モード制御部１７は、クライアント２のモードを不明とモードＤＢ１８に記憶する。そして、（Ｓ３０７）へ進み、運用モードの処理を実行する。
（Ｓ３０６）と（Ｓ３０９）から（Ｓ３１４）までとは、（Ｓ１０２）から（Ｓ１０８）までと同様であり、検証モードの処理である。
（Ｓ３０７）から（Ｓ３１６）までは、（Ｓ２０２）から（Ｓ２１１）までと同様であり、運用モードの処理である。
【００１８】
以上のように、クライアント毎に動作を検証モードと運用モードに分け、アクセスコントロールレイヤ１０がアクセス制御を行う。これにより、あるクライアント２からのアクセスが検証中であっても、他のクライアント２からのアクセス制御が可能となり、セキュリティ向上する。
【００１９】
実施の形態３．
実施の形態２では、アクセスコントロールレイヤ１０は検証モードと運用モードとの切り替えをクライアント２毎に行う例について説明した。実施の形態３では、アクセスコントロールレイヤ１０が検証モードと運用モードとの切り替えをクライアント２毎、関数情報毎に行う例を説明する。
【００２０】
実施の形態３に係るアクセスコントロールレイヤ１０の構成は、図８に示す実施の形態２に係るアクセスコントロールレイヤ１０の構成と同一である。但し、モードＤＢ１８が記憶する情報が異なる。
図１１は、モードＤＢ１８が記憶する情報の一例を示す図である。モードＤＢ１８は、要求元、モードに加え、さらにクライアントＩ／Ｆ引数を記憶する。クライアントＩ／Ｆ引数は、上述したように、関数情報である。つまり、モードＤＢ１８において、モードは、クライアント２、クライアントＩ／Ｆ引数毎に記憶される。なお、モードＤＢ１８は、クライアントＩ／Ｆ引数に代え、関数名（呼び出し関数）を記憶するとしてもよい。つまり、モードＤＢ１８において、モードは、クライアント２、呼び出し関数毎に記憶されるとしてもよい。
なお、実施の形態３に係るアクセスコントロールレイヤ１０の動作の流れは、図１０に示す実施の形態２に係るアクセスコントロールレイヤ１０の動作の流れと同一である。但し、（Ｓ３０２）で、モード制御部１７は、クライアント情報に含まれるクライアント２の識別情報と関数情報とを検索キーとしてモードＤＢ１８からレコード検索する。
【００２１】
以上のように、クライアント２の呼び出し関数毎に動作を検証モードと運用モードに分け、アクセスコントロールレイヤ１０がアクセス制御を切り替える。これにより、ある関数からのアクセスが検証中であっても、他の関数からのアクセス制御が可能となり、セキュリティ向上が可能となる。
【００２２】
実施の形態４．
実施の形態２では、アクセスコントロールレイヤ１０は検証モードと運用モードとの切り替えをクライアント２毎に行う例について説明した。実施の形態４では、アクセスコントロールレイヤ１０が検証モードと運用モードとの切り替えをクライアント２、サービス２０毎に行う例を説明する。
【００２３】
実施の形態４に係るアクセスコントロールレイヤ１０の構成は、図８に示す実施の形態２に係るアクセスコントロールレイヤ１０の構成と同一である。但し、モードＤＢ１８が記憶する情報が異なる。
図１２は、モードＤＢ１８が記憶する情報の一例を示す図である。モードＤＢ１８は、要求元、モードに加え、さらに要求サービスを記憶する。要求サービスは、上述したように、クライアント２がアクセスを要求するサービス２０の識別情報である。つまり、モードＤＢ１８において、モードは、クライアント２、サービス２０毎に記憶される。
なお、実施の形態４に係るアクセスコントロールレイヤ１０の動作の流れは、図１０に示す実施の形態２に係るアクセスコントロールレイヤ１０の動作の流れと同一である。但し、（Ｓ３０２）で、モード制御部１７は、クライアント情報に含まれるクライアント２の識別情報とサービス２０の識別情報とを検索キーとしてモードＤＢ１８からレコード検索する。
【００２４】
以上のように、クライアント２の要求サービス毎に動作を検証モードと運用モードに分け、アクセスコントロールレイヤ１０がアクセス制御を切り替える。これにより、あるクライアント２があるサービス２０に対するアクセスが検証中であっても、そのクライアント２からの他のサービス２０に対するアクセス制御が可能となり、セキュリティ向上が可能となる。
【００２５】
実施の形態５．
実施の形態１−４では、１台のサーバ１におけるサービス２０に対するアクセス制御を示した。実施の形態５では、複数のサーバ１におけるサービス２０に対するアクセス制御を実現する例について説明する。
【００２６】
図１３は、アクセスコントロールレイヤ１０の構成図である。
アクセスコントロールレイヤ１０は、複数のアクセスコントロールレイヤ変換部４０（アクセス制御装置）（アクセスコントロールレイヤ変換部ａ〜アクセスコントロールレイヤ変換部ｋ）と、アクセスコントロールレイヤＤＢ部５０（制御情報記憶装置）とを備える。各アクセスコントロールレイヤ変換部４０は、例えば、サービス２０を提供するサーバ１毎に設けられる。各アクセスコントロールレイヤ変換部４０は、サーバ１の内部に設けられるとしてもよい。一方、アクセスコントロールレイヤＤＢ部５０は、例えば、サーバ１の数とは無関係に１台だけ設けられる。アクセスコントロールレイヤＤＢ部５０は、例えば、サーバ１の外部に設けられる。
各アクセスコントロールレイヤ変換部４０は、インターフェース部１１、変換部１２を備える。また、アクセスコントロールレイヤＤＢ部５０は、アクセス制御部１３、制御ＤＢ１４、ログ記憶部１５、ログＤＢ１６、モード制御部１７、モードＤＢ１８を備える。
アクセスコントロールレイヤ変換部４０とアクセスコントロールレイヤＤＢ部５０とが備える各機能は、変換部１２と、アクセス制御部１３、ログ記憶部１５、モード制御部１７とがネットワーク３を経由することを除いて、実施の形態１−４の機能と同一である。
【００２７】
以上のように、サービス２０を提供する複数のサーバ１が分散されて配置される場合であっても、アクセスコントロールレイヤ１０を用いたアクセス制御が可能である。したがって、大規模なシステムであってもアクセス制御を容易にできる。
【００２８】
実施の形態６．
実施の形態１−５では、アクセスコントロールレイヤ１０は、クライアント２とサービスインターフェース３０との間に設けられた。しかし、何らかの方法によりクライアント２からサービスインターフェース３０へ直接アクセスされた場合、アクセスコントロールレイヤ１０によるアクセス制御が行えない。つまり、クライアント２はサービスインターフェース３０へ直接アクセスすることで、アクセスコントロールレイヤ１０によるアクセス制御を回避できる。この実施の形態では、クライアント２がサービスインターフェース３０へ直接アクセスした場合であっても、アクセスコントロールレイヤ１０によるアクセス制御を回避できないアクセス制御システムについて説明する。
【００２９】
図１４は、アクセス制御システムの構成図である。
アクセス制御システムは、クライアント２とサービスインターフェース３０との間ではなく、サービスインターフェース３０とサービス２０との間にアクセスコントロールレイヤ１０を備える。つまり、クライアント２は、直接サービスインターフェース３０へアクセスする。そして、サービスインターフェース３０が受信したクライアント情報に基づき、実施の形態１−４で説明した方法により、アクセスコントロールレイヤ１０はサービスインターフェース３０へのアクセス制御を行う。
【００３０】
図１５は、アクセスコントロールレイヤ１０の構成図である。
図１５に示すアクセスコントロールレイヤ１０は、図２に示す実施の形態１に係るアクセスコントロールレイヤ１０が備える機能のうち、インターフェース部１１を備えていない。つまり、アクセス制御システムは、サービスインターフェース３０がクライアント２からのアクセスを直接受信する。すなわち、サービスインターフェース３０がクライアント情報を受信する。そして、サービスインターフェース３０からクライアント情報をアクセスコントロールレイヤ１０の変換部１２が受信する。そして、アクセスコントロールレイヤ１０は、実施の形態１−４で説明したアクセス制御を行う。クライアント２からサービス２０へのアクセスを許可する場合には、変換部１２は、クライアント情報を該当のサービス２０用に変換してサービス２０へ送信する。
なお、図１５では、モードＤＢ１８を示していないが、実施の形態２−４で説明したアクセス制御を行うのであれば、アクセスコントロールレイヤ１０はモードＤＢ１８を備える必要がある。
【００３１】
以上のように、サービスインターフェース３０とサービス２０との間にアクセスコントロールレイヤ１０を配置する。これにより、クライアント２がサービスインターフェース３０へ直接アクセスすることによる、アクセスコントロールレイヤ１０のアクセス制御回避を防止できる。
【００３２】
なお、実施の形態２−６においても実施の形態１と同様に、モード制御部１７は、例えば、管理者等からの指示に従い、あるいは所定のタイミングでモードを切り替える。
【００３３】
以上の実施の形態をまとめると次のようになる。
アクセス制御システムが実現するアクセス制御機構は、１つ以上のサービスとサービスインターフェースと、１つ以上の代替サービインターフェース、変換部、変換制御部、制御ＤＢ、ログ記憶部、ログＤＢを備えたアクセスコントロールレイヤをもつサーバと、サーバに接続された１つ以上のクライアントからなり、
前記サービスは、サービスを提供するためのサービスインターフェースを備え、
前記アクセスコントロールレイヤは、検証モードと運用モードの２つの状態を持ち、また前記アクセスコントロールレイヤは、サービスインターフェースの代替となる代替インターフェースと、外部向けサービスのインターフェースと代替インターフェースを相互に変換する変換部と、検証モード時は変換部が変換した変換結果を蓄積し運用モード時は蓄積した変換結果を元に変換部に対して変換制御を行う変換制御部と、変換制御情報を蓄積するための制御ＤＢと、クライアントからのアクセス履歴およびサービスからの返り値や変換結果を記憶するためのログ記憶部と、ログデータを蓄積するためのログＤＢを備え、
検証モード時に変換部が変換したクライアントからのアクセス実績に基づいて、運用モード時のクライアントからのサービスに対するアクセス可否を制御することを特徴とする。
また、前記アクセスコントロールレイヤが、クライアントごとに検証モードと運転モードを個別に管理することを特徴とする。
さらに、前記アクセスコントロールレイヤが、クライアントの関数ごとに検証モードと運転モードを個別に管理することを特徴とする。
また、さらに、前記アクセスコントロールレイヤが、クライアントおよびサービスごとに検証モードと運転モードを個別に管理することを特徴とする。
また、前記アクセスコントロールレイヤが、複数のサーバに配置され、サーバ間で検証モードと運転モードを連携することを特徴とする。
【００３４】
図１６は、アクセスコントロールレイヤ１０のハードウェア構成の一例を示す図である。
図１６に示すように、アクセスコントロールレイヤ１０は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、ＬＣＤ９０１（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、キーボード９０２（Ｋ／Ｂ）、通信ボード９１５、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０（固定ディスク装置）の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。磁気ディスク装置９２０は、所定の固定ディスクインタフェースを介して接続される。
【００３５】
ＲＯＭ９１３、磁気ディスク装置９２０は、不揮発性メモリの一例である。ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３とＲＡＭ９１４と磁気ディスク装置９２０とは、記憶装置（メモリ）の一例である。また、キーボード９０２、通信ボード９１５は、入力装置の一例である。また、通信ボード９１５は、通信装置（ネットワークインタフェース）の一例である。さらに、ＬＣＤ９０１は、表示装置の一例である。
【００３６】
磁気ディスク装置９２０又はＲＯＭ９１３などには、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００３７】
プログラム群９２３には、上記の説明において「インターフェース部１１」、「変換部１２」、「アクセス制御部１３」、「ログ記憶部１５」、「モード制御部１７」等として説明した機能を実行するソフトウェアやプログラムやその他のプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、上記の説明において「制御ＤＢ１４」、「ログＤＢ１６」、「モードＤＢ１８」等に記憶される情報やデータや信号値や変数値やパラメータが、「ファイル」や「データベース」の各項目として記憶される。「ファイル」や「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵ９１１の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵ９１１の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００３８】
また、上記の説明におけるフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、その他光ディスク等の記録媒体やＩＣチップに記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体や電波によりオンライン伝送される。
また、上記の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。また、「〜装置」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。さらに、「〜処理」として説明するものは「〜ステップ」であっても構わない。すなわち、「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ＲＯＭ９１３等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、上記で述べた「〜部」としてコンピュータ等を機能させるものである。あるいは、上記で述べた「〜部」の手順や方法をコンピュータ等に実行させるものである。
【符号の説明】
【００３９】
１  サーバ、２  クライアント、３  ネットワーク、１０  アクセスコントロールレイヤ、１１  インターフェース部、１２  変換部、１３  アクセス制御部、１４  制御ＤＢ、１５  ログ記憶部、１６  ログＤＢ、１７  モード制御部、１８  モードＤＢ、２０  サービス、３０  サービスインターフェース、４０  アクセスコントロールレイヤ変換部、５０  アクセスコントロールレイヤＤＢ部。
【図１】
2010191855.tif 000003
【図２】
2010191855.tif 000004
【図３】
2010191855.tif 000005
【図４】
2010191855.tif 000006
【図５】
2010191855.tif 000007
【図６】
2010191855.tif 000008
【図７】
2010191855.tif 000009
【図８】
2010191855.tif 000010
【図９】
2010191855.tif 000011
【図１０】
2010191855.tif 000012
【図１１】
2010191855.tif 000013
【図１２】
2010191855.tif 000014
【図１３】
2010191855.tif 000015
【図１４】
2010191855.tif 000016
【図１５】
2010191855.tif 000017
【図１６】
2010191855.tif 000018