(57)【特許請求の範囲】
【請求項１】
アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置において、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定部と、
前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開部と、
を備えることを特徴とするアクセス制御リスト変換装置。
【請求項２】
アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置において、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定部と、
前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開部と、
を備えることを特徴とするアクセス制御リスト変換装置。
【請求項３】
請求項１又は２に記載のアクセス制御リスト変換装置において、
前記リソース展開部は、包含している側のアクセス制御ルールに記載のアクセス対象リソースの全リソース情報を参照し、包含されている側のアクセス制御ルールに記載のアクセス対象リソースを表現できる集合あるいは要素に展開し、当該包含されている側のアクセス制御ルールに記載のアクセス対象リソースと重複するアクセス対象リソースを、当該包含している側のアクセス制御ルールに記載のアクセス対象リソースを展開したものから除いて当該包含している側のアクセス制御ルールのアクセス対象リソースに記載することにより前記変換を行うことを特徴とするアクセス制御リスト変換装置。
【請求項４】
統合アクセス制御サーバと、前記統合アクセス制御サーバに接続された制御対象マシンとを有するアクセス制御リスト配付システムの前記統合アクセス制御サーバであって、
請求項１乃至３の何れか１項に記載のアクセス制御リスト変換装置と、
アクセス制御リストを記憶するアクセス制御リストデーターベースと、
前記アクセス制御リスト変換装置が変換したアクセス制御リストと、前記アクセス制御リストデーターベースに記憶されているアクセス制御リストと、の差分を抽出する差分抽出部と、
抽出した前記差分を前記制御対象マシンに配信する配信部と、
を備えることを特徴とする統合アクセス制御サーバ。
【請求項５】
アクセス対象となるリソースの状況を記録しているリソースデータベースに接続されているアクセス制御リスト変換装置において、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換方法であって、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部を用意するステップと、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定ステップと、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定ステップと、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定ステップと、
前記第２のルール判定ステップの判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開ステップと、
を備えることを特徴とするアクセス制御リスト変換方法。
【請求項６】
アクセス対象となるリソースの状況を記録しているリソースデータベースに接続されているアクセス制御リスト変換装置において、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換方法であって、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部を用意するステップと、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定ステップと、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定ステップと、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定ステップと、
前記第２のルール判定ステップの判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開ステップと、
を備えることを特徴とするアクセス制御リスト変換方法。
【請求項７】
請求項５又は６に記載のアクセス制御リスト変換方法において、
前記リソース展開ステップにおいて、包含している側のアクセス制御ルールに記載のアクセス対象リソースの全リソース情報を参照し、包含されている側のアクセス制御ルールに記載のアクセス対象リソースを表現できる集合あるいは要素に展開し、当該包含されている側のアクセス制御ルールに記載のアクセス対象リソースと重複するアクセス対象リソースを、当該包含している側のアクセス制御ルールに記載のアクセス対象リソースを展開したものから除いて当該包含している側のアクセス制御ルールのアクセス対象リソースに記載することにより前記変換を行うことを特徴とするアクセス制御リスト変換方法。
【請求項８】
請求項５乃至７の何れか１項に記載のアクセス制御リスト変換方法において、
アクセス制御リストを記憶するアクセス制御リストデーターベースを用意するステップと、
前記変換したアクセス制御リストと、前記アクセス制御リストデーターベースに記憶されているアクセス制御リストと、の差分を抽出する差分抽出ステップと、
抽出した前記差分を制御対象マシンに配信する配信ステップと、
を備えることを特徴とするアクセス制御リスト変換方法。
【請求項９】
アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置に搭載される、アクセス制御リスト変換プログラムにおいて、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定部と、
前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開部と、
を備えるアクセス制御リスト変換装置としてコンピュータを機能させるアクセス制御リスト変換プログラム。
【請求項１０】
アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置に搭載される、アクセス制御リスト変換プログラムにおいて、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定部と、
前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開部と、
を備えるアクセス制御リスト変換装置としてコンピュータを機能させるアクセス制御リスト変換プログラム。
【請求項１１】
請求項９又は１０に記載のアクセス制御リスト変換プログラムにおいて、
前記リソース展開部は、包含している側のアクセス制御ルールに記載のアクセス対象リソースの全リソース情報を参照し、包含されている側のアクセス制御ルールに記載のアクセス対象リソースを表現できる集合あるいは要素に展開し、当該包含されている側のアクセス制御ルールに記載のアクセス対象リソースと重複するアクセス対象リソースを、当該包含している側のアクセス制御ルールに記載のアクセス対象リソースを展開したものから除いて当該包含している側のアクセス制御ルールのアクセス対象リソースに記載することにより前記変換を行うことを特徴とするアクセス制御リスト変換プログラム。
【請求項１２】
請求項９乃至１１の何れか１項に記載のアクセス制御リスト変換プログラムにおいて、
前記アクセス制御リスト変換装置が、
アクセス制御リストを記憶するアクセス制御リストデーターベースと、
前記変換したアクセス制御リストと、前記アクセス制御リストデーターベースに記憶されているアクセス制御リストと、の差分を抽出する差分抽出部と、
抽出した前記差分を制御対象マシンに配信する配信部と、
を更に備えることを特徴とするアクセス制御リスト変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はアクセス制御リスト（以下の説明及び図面では、適宜「ＡＣＬ」と記載する。）により構成されるポリシの生成及び変換システム、そのポリシの配付システムに関する。
【背景技術】
【０００２】
アクセス制御リストとして表現されるポリシの配付に関して、複数の制御対象マシンに対して１つの統合アクセス制御サーバで、アクセス制御を実施する例が多く見られるようになってきている。【０００３】
このような状況下で、ポリシの変更に伴うアクセス制御リストの修正をする際のメンテナンス性の向上が望まれている。【０００４】
ここで、アクセス制御リストとは、アクセス主体ユーザ、アクセス対象リソース、許可又は禁止のアクセス権、の３つを組としたアクセス制御ルールの組み合わせとして構成されるのが一般的である。【０００５】
この点、システム構成の変更に伴うポリシ更新方法として特許文献１に記載の発明がある。また、ポリシの変更に応じて必要な対象機器へ再配付する方法として特許文献２に記載の発明がある。これらの発明では、非変更箇所を含めて変更したポリシを含むアクセス制御リスト全体を再構築し、再構築した制御リスト全体を再配付している。そして、このような手段を取ることによりシステム構成変更時のポリシルールの修正の容易化を図っている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−０８７２３２号公報
【特許文献２】特開２００７−３１６９５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、上述の各発明には以下のような問題点があった。【０００８】
第１の問題点は、アクセス制御ポリシ変更時のアクセス制御リストの修正コストが膨大であるということである。【０００９】
その理由は、アクセス制御リストにおいては、アクセス制御ルールの記述順序に意味があり、記述順序によってアクセス制御機構の解釈が異なる。そのため、アクセス制御リストの変更はアクセス制御ルールの追加や削除による変更だけではなく、その記述順序を考慮せねばならないためである。【００１０】
この点、記述順序を考慮しなかった場合は、アクセス制御ルールそれぞれの内容が同一であっても、アクセス制御リストの変更者の意図通りに解釈される保証が無い。これについて、以下に具体例を示して説明する。【００１１】
（ルール１）任意のユーザは/etcディレクトリ配下のファイルを読み書きしてはならない。
と記述されたアクセス制御リストに対して、ユーザyamadaに特権を与えるために、【００１２】
（ルール２）ユーザyamadaは/etc/passwdファイルを変更してよい。
というルール２を、ルール１の後に追記したとする。【００１３】
この場合、アクセス制御機構はユーザyamadaによる/etc/passwdの変更を禁止するというアクセス制御リストの変更者の意図に反する制御をする。【００１４】
これは、該アクセス制御機構が先に合致する条件を優先的に処理するという解釈特性を持つために、当該アクセス要求に対して、ルール１を先に合致させるためである。上記特権を正しく反映するには、ルール２を少なくともルール１よりも先に記述しなければならない。【００１５】
このように、アクセス制御ルールの記述順序によりアクセス制御機構の振舞いが変わるという特性は、アクセス制御リストの適切な変更だけでなく、現在のアクセス制御リストの下でどのユーザがどのリソースにアクセスできるか、またはできないかを検証することも困難にする。【００１６】
こうしたアクセス制御リストの変更に伴う課題は、アクセス制御リスト内のルール数が増えるにつれ、より深刻なものとなり、アクセス権設定不備の要因の１つであった。【００１７】
第２の問題点は、アクセス制御機構ごとにアクセス制御リストの生成の必要性があるということである。【００１８】
その理由は、複数の様々なアクセス制御機構によってアクセス制御を実施する場合には、同一内容のアクセス制御内容のアクセス制御ポリシを、アクセス制御リストの上位に記述された順にアクセス制御ルールから処理する特性や、任意の順に処理する特性など異なる特性をもつアクセス制御機構ごとに生成する必要があるからである。すなわち、複数の様々な特性を持つアクセス制御対象マシンが存在する現在では、アクセス制御のポリシを新規に策定する場合や、変更する場合に、アクセス制御機構の特性ごとにアクセス制御リストを生成あるいは修正せねばならないからである。【００１９】
そこで、本発明はアクセス制御ルールの記述順序の制約が無く、アクセス制御ポリシの変更に伴うアクセス制御リストの修正コストを削減することが可能な、ポリシ生成及び変換システム、ポリシ配付システム、その方法及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２０】
本発明の第１の観点よれば、アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置において、前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定部と、前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定部と、前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開部と、を備えることを特徴とするアクセス制御リスト変換装置が提供される。
【００２１】
本発明の第２の観点よれば、アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置において、前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定部と、前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定部と、前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開部と、を備えることを特徴とするアクセス制御リスト変換装置が提供される。
【００２２】
本発明の第３の観点よれば、アクセス対象となるリソースの状況を記録しているリソースデータベースに接続されているアクセス制御リスト変換装置において、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換方法であって、前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部を用意するステップと、受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定ステップと、前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定ステップと、前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定ステップと、前記第２のルール判定ステップの判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開ステップと、を備えることを特徴とするアクセス制御リスト変換方法が提供される。
【００２３】
本発明の第４の観点よれば、アクセス対象となるリソースの状況を記録しているリソースデータベースに接続されているアクセス制御リスト変換装置において、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換方法であって、前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部を用意するステップと、受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定ステップと、前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定ステップと、前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定ステップと、前記第２のルール判定ステップの判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開ステップと、を備えることを特徴とするアクセス制御リスト変換方法が提供される。
【００２４】
本発明の第５の観点よれば、アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置に搭載される、アクセス制御リスト変換プログラムにおいて、前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定部と、前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定部と、前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開部と、を備えるアクセス制御リスト変換装置としてコンピュータを機能させるアクセス制御リスト変換プログラムが提供される。
【００２５】
本発明の第６の観点よれば、アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置に搭載される、アクセス制御リスト変換プログラムにおいて、前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定部と、前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定部と、前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開部と、を備えるアクセス制御リスト変換装置としてコンピュータを機能させるアクセス制御リスト変換プログラムが提供される。
【発明の効果】
【００２６】
本発明によれば、アクセス制御ルールの記述に関して順序制約が無いアクセス制御リストを作成できるためアクセス制御ポリシの変更に伴うアクセス制御リストの修正コストを削減することが可能となる。
【図面の簡単な説明】
【００２７】
【図１】本発明の第１の実施形態であるアクセス制御リスト生成・変換システムの構成例を示すブロック図である。
【図２】本発明の第１の実施形態におけるアクセス制御リスト生成・変換アルゴリズムの動作を表すフローチャートである。
【図３】本発明の第２の実施形態であるアクセス制御リストの差分配信システムの構成例を示すブロック図である。
【図４】本発明の第２の実施形態におけるアクセス制御リストの差分配信システムの動作を表すフローチャートである。
【図５】本発明の第３の実施形態であるアクセス制御リストの差分配信一貫性保証システムの構成例を示すブロック図である。
【図６】本発明の実施例であるアクセス制御リストの生成・変換・配信システムを示すブロック図である。
【図７】一般的な上位優先のアクセス制御リストについて示す図である。
【図８】アクセス対象リソースの構成について示す図である。
【図９】変換済のアクセス制御ルールの記述順序制約のないアクセス制御リストについて示す図である。
【図１０】ポリシの配信・設定プロトコルについて示すシーケンス図である。
【図１１】ＳＯＡＰによるポリシ設定準備問い合わせメッセージついて示す図である
【図１２】ＳＯＡＰによるポリシの設定指示メッセージついて示す図である。
【符号の説明】
【００２８】
１１  既出ルール判定部
１２  第１のルール判定部
１３  第２のルール判定部
１４  リソース展開部
１５  一時記憶部
１６  許可ルール記憶部
１７  禁止ルール記憶部
１００、１１０、１２０  統合アクセス制御サーバ
１０１  ＡＣＬ変換部
１０２  リソースＤＢ
１０３  ＡＣＬ生成部
１０４  差分抽出部
１０５  配信部
１０６  ポリシＤＢ
１０７  ＡＣＬＤＢ
１０８  署名部
２００、２１０  制御対象マシン
２０１  設定部
２０２  マージ部
２０３  受信部
２０４  署名検証部
【発明を実施するための形態】
【００２９】
次に、発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００３０】
本発明の実施形態は、概略、アクセス制御ルールの系列であるアクセス制御リストの入力に対して、当該リスト中の任意の2つのルールが矛盾しないよう、アクセス制御リストを変換するというものである。
【００３１】
図１を参照すると、本発明の第１の実施の形態であるアクセス制御リスト生成・変換システムは、ＡＣＬ変換部１０１と、リソースＤＢ１０２を有している。
【００３２】
リソースＤＢ１０２は、アクセス制御リスト（ＡＣＬ：Access Control List）によってアクセス制御の対象となるリソースの最新の情報を全て記憶している。
【００３３】
なお、本明細書、図面及び特許請求の範囲の記述において、アクセス制御ルールとは（アクセス主体ユーザ、アクセス対象リソース、許可または禁止のアクセス権）の３組を有するものとする。
【００３４】
アクセス対象リソースは、集合あるいは要素として表現され、＊は直下を表現する集合記法であり、＊＊は配下すべてを表現する集合記法である。
【００３５】
ＡＣＬ変換部１０１は、既出ルール判定部１１と、第１のルール判定部１２と、第２のルール判定部１３と、リソース展開部１４と、一時記憶部１５を有している。
【００３６】
更に、一時記憶部１５は、許可ルール記憶部１６と、禁止ルール記憶部１７を有している。
【００３７】
許可ルール記憶部１６は、アクセス主体ユーザのアクセス対象リソースに対するアクセスを許可するというルールである「許可ルール」を記憶する機能を有する。一方、禁止ルール記憶部１７は、アクセス主体ユーザのアクセス対象リソースに対するアクセスを禁止するというルールである「禁止ルール」を記憶する機能を有する。
【００３８】
既出ルール判定部１１は、ＡＣＬ変換部１０１が新たなアクセス制御リストを受け付けた場合に、アクセス制御リストに記述された順に新たなアクセス制御ルールを１つずつ読み込む（読み込んだ、本ルールを以下では「該新ルール」と記述する。）。更に、既出ルール判定部１１はアクセス制御ルールを読み込みながら、一時記憶部１５を参照する。そして、今回読み込んだ新アクセス制御ルールが、該新ルールより上部にて既出のルールのアクセス制御内容に含まれているか否かを判定する。判定の結果、該新ルールが既出ルールのアクセス制御内容に含まれる場合は、既出ルール判定部１１は、次のアクセス制御ルールを対象として動作を繰り返す。一方、含まれない場合は、第１のルール判定部１２に該新ルールを引き渡す。
【００３９】
第１のルール判定部１２は、該新ルールが既出ルールのアクセス制御内容に含まれない場合に、該新ルールが許可ルールか禁止ルールかを判定し、該新ルールが、許可ルールであった場合に、許可ルール記憶部１６に記憶する。そして、この場合は既出ルール判定部１１の動作に戻る。一方許可ルールでなかった場合、すなわち禁止ルールだった場合は第２のルール判定部１３に該新ルールを引き渡す。
【００４０】
第２のルール判定部１３は、該新ルールが、禁止ルールであった場合に、許可ルール記憶部１６に記憶されている許可ルールに、アクセス主体ユーザが該新ルールと同一で、かつアクセス対象リソースが該新ルールのアクセス対象リソースに含まれているか否か判定する。すなわち該ルールが許可ルール記憶部１６に記憶された許可ルールと相反するか否かを判定する。そして、相反しない場合は、該ルールを禁止ルール記憶部１７に記憶する。そして、この場合は既出ルール判定部１１の動作に戻る。一方相反している場合は、該新ルールをリソース展開部１４に引き渡す。
【００４１】
リソース展開部１４は、許可ルール記憶部１６に記憶されたルールと相反する該新ルールのアクセス対象リソースを、許可ルール記憶部１６に記憶されたルールのアクセス対象リソースを含まないリソースの集合となるように、リソースＤＢ１０２を利用して抽出・展開を行う。こうすることによりルール間でアクセス対象リソースが重ならないようにアクセス制御ルールを書き換えることができる。そして、抽出・展開を行った該新ルールを禁止ルール記憶部１７に記憶し、該新ルールがアクセス制御リストの最終ルールでない場合は、既出ルール判定部１１の動作に戻る。一方、最終ルールだった場合は動作を終了する。
【００４２】
次に、図１に加えて、図２のフローチャートを参照して本実施形態の動作について詳細に説明する。
【００４３】
まず、本実施形態にアクセス制御リストの入力があると、既出ルール判定部１１にアクセス制御リストが供給される。既出ルール判定部１１は、受け付けたアクセス制御リストに記述された順に、アクセス制御ルールを１行毎に読み込む（図２のステップＡ３０１）。
【００４４】
次に、既出ルール判定部１１は、一時記憶部１５に記憶されている既出の許可ルール及び禁止ルールを参照し、読み込んだ該新ルールが、該新ルールより上部の既出の許可ルール及び禁止ルールに包含されているか否かを判定する（図２のステップＡ３０２）。
【００４５】
ここで、ルールが包含されているとは、或るルールと包含ルールのアクセス主体及びアクセス権（許可又は禁止）何れもが同一であり、或るルールのアクセス対象リソースが包含ルールのアクセス対象リソースの部分集合である状態を指す。
【００４６】
判定の結果、該新ルールが一時記憶部１５で記憶されているものに包含されていない場合は（図２のステップＡ３０２においてＮＯ）、該新ルールは第１のルール判定部１２に供給される（図２のステップＡ３０３に進む）。
【００４７】
一方、該新ルールが既に一時記憶部１５で記憶されているルールに包含されている場合は（図２のステップＡ３０２においてＹＥＳ）、今回処理した該新ルールを新たに追加する必要は無い。そのため、今回読み込んだ該新ルールが、アクセス制御リストの終端であるか否かを確認し、終端のルールであれば動作を終了する（図２のステップＡ３０９においてＹＥＳ）。一方、今回処理した該新ルールが、アクセス制御リストの終端でなければ１つ次のルールを対象としてステップＡ３０１からの処理を再度実施する（図２のステップＡ３０９においてＮＯ）。
【００４８】
続いて、第１のルール判定部１２は、該新ルールが許可ルールであるか否かを判定する（図２のステップＡ３０３）。
【００４９】
該新ルールが許可ルールでない場合（図２のステップＡ３０３においてＮＯ）、つまり禁止ルールである場合は、該新ルールは第２のルール判定部１３に供給される（図２のステップＡ３０４に進む）。
【００５０】
一方、該新ルールが許可ルールである場合は（図２のステップＡ３０３においてＹＥＳ）、該新ルールを許可ルール記憶部１６に記憶する（図２のステップＡ３０５）。その後、今回処理した該新ルールが、アクセス制御リストの終端であれば動作を終了する（図２のステップＡ３０９においてＹＥＳ）。一方、今回処理した該新ルールが、アクセス制御リストの終端でなければ１つ次のルールを対象としてステップＡ３０１からの処理を再度実施する（図２のステップＡ３０９においてＮＯ）。
【００５１】
第２のルール判定部１３は、該新ルールに記述されているアクセス主体ユーザが許可ルール記憶部１６に記憶されている許可ルールのアクセス主体ユーザと等しく、かつ該新ルールに記述されているアクセス対象リソースが、許可ルール記憶部１６に記憶される許可ルールに記述されたアクセス対象リソースを包含しているか否かを判定する（図２のステップＡ３０４）。
【００５２】
判定の結果、包含していない場合は（図２のステップＡ３０４においてＮＯ）、該新ルールをそのまま禁止ルール記憶部１７に記憶する（ステップＡ３０８）。包含している場合は（図２のステップＡ３０４においてＹＥＳ）、該新ルールはリソース展開部１４に供給される（図２のステップＡ３０６に進む）。
【００５３】
リソース展開部１４は、該新ルールに記述されているアクセス対象リソースを、該新ルールを包含する許可ルール記憶部１６に記憶されている許可ルールに記述されているアクセス対象リソースの集合あるいは要素を表現できる深度まで、該新ルールのアクセス対象リソースを展開する（図２のステップＡ３０６）。ここで、リソースの深度が同じとは、リソースの表現階層が同等であり、互いが互いの部分集合とはなっていないことを指す。許可ルールに記述されたリソースと同じ深度まで展開された該新ルールのリソースは、許可ルールに記述されたリソースを除き、禁止ルール記憶部１７に記憶される（図２のステップＡ３０７及びＡ８）。
【００５４】
その後、今回処理した該新ルールが、アクセス制御リストの終端であれば動作を終了する（図２のステップＡ３０９においてＹＥＳ）。一方、今回処理した該新ルールが、アクセス制御リストの終端でなければ１つ次のルールを対象としてステップＡ３０１からの処理を再度実施する（図２のステップＡ３０９においてＮＯ）。
【００５５】
最終出力としては、禁止ルール記憶部１７に記憶されたルール群がアクセス制御リストとして出力される。
【００５６】
今回説明した本実施形態は、いわゆるブラックリスト形式の記述順序制約のないアクセス制御リストへの変換手法である。もっとも上述の各ステップにおいて許可と禁止を入れ替えることで、許可ルールを列挙する、いわゆるホワイトリスト形式の記述順序制約のないアクセス制御リストへ変換することも可能である。ここで、ブラックリスト形式とは、生成されるアクセス制御リストのデフォルトのアクセス制御条件が、記述されないリソースに対してはアクセスが許可されるものを指す。また、ホワイトリスト形式とは、記述されないリソースに対してはアクセスを禁止されるものを指す。
【００５７】
次に、本発明の第２の実施形態であるアクセス制御リストの差分配信システムについて図面を参照して詳細に説明する。
【００５８】
本実施形態では、アクセス制御リストを統合的に管理し、更新されたポリシに基づいてアクセス制御リストを更新する。更に、各制御対象マシンに、更新前のアクセス制御リストと更新後のアクセス制御リストとの差分を配信する。
【００５９】
図３を参照すると、本実施形態は、統合アクセス制御サーバ１００と、制御対象マシン２００から構成される。
【００６０】
統合アクセス制御サーバ１００は、ポリシＤＢ１０６と、リソースＤＢ１０２と、ＡＣＬＤＢ１０７と、ＡＣＬ生成部１０１と、ＡＣＬ変換部１０３と、差分抽出部１０４と、配信部１０５を有する。
【００６１】
ポリシＤＢ１０６にはアクセス制御に関する情報を記したポリシが蓄積されている。また、ＡＣＬＤＢ１０７には過去に生成・配信したアクセス制御リストが蓄積されている。
【００６２】
制御対象マシン２００は、設定部２０１と、マージ部２０２と、受信部２０３を有する。
【００６３】
統合アクセス制御サーバ１００では、更新したアクセス制御情報であるポリシをポリシＤＢ１０６よりＡＣＬ生成部１０３に供給する。該ポリシは、制御対象マシン２００へ配信されるポリシの素材となるものである。
【００６４】
ＡＣＬ生成部１０３は、供給されたポリシを用いて、アクセス主体ユーザ、アクセス対象リソース、許可あるいは禁止のアクセス権、で表現されるアクセス制御ルールを優先度の高い順に上位に記述したアクセス制御リストを生成する（図４のステップＡ４０１）。なお、このアクセス制御リストは、ポリシ内でアクセス制御を実施されるユーザをアクセス主体ユーザとして、ポリシ内でアクセス制御されるリソースをアクセス対象リソースとして、ポリシ内でユーザに対して付与されるアクセス権を許可あるいは禁止のアクセス権として記述する。
【００６５】
生成されたアクセス制御リストは、ＡＣＬ変換部１０１に供給され、リソースＤＢ１０２のリソース情報を用いて記述順序制約のないアクセス制御リストに変換される（図４のステップＡ４０２）。リソースＤＢ１０２とＡＣＬ変換部１０１による記述順序制約のないアクセス制御リストの生成手順は、図１に示した第１の実施形態と同一の処理である。
【００６６】
次に、差分抽出部１０４は、ＡＣＬ変換部１０１によって変換された順序制約のないアクセス制御リストと、ＡＣＬＤＢ１０７に蓄積されている該アクセス制御リストの更新前のアクセス制御リストの、それぞれに記述された同一のアクセス主体ユーザが含まれるアクセス制御ルールを１つずつアクセス対象リソースと許可あるいは禁止のアクセス権に関して文字列比較する（図４のステップＡ４０３）。そして、更新前のアクセス制御リストに記述されているが新規に変換済のアクセス制御リストに記述されていないアクセス制御ルール、あるいは更新前のＡＣＬに記述されていないが新規に変換済のアクセス制御リストには記述されているアクセス制御ルールを、差分情報として抽出する（図４のステップＡ４０４）。
【００６７】
この差分情報は、更新前のアクセス制御リストに対して新規に変換済のアクセス制御リストにおいて追加あるいは削除されたアクセス制御ルールの集合からのみ成り、記述順序情報は含まれない。抽出された差分情報は、配信部１０５に供給される。
【００６８】
続いて、配信部１０５は供給された差分情報を制御対象マシン２００へと配信する（図４のステップＡ４０５）。
【００６９】
制御対象マシン２００では、受信部２０３によって、統合アクセス制御サーバ１００の配信部１０５によって配信された差分情報を受信し、受信した差分情報をマージ部２０２に供給する（図４のステップＡ４０６）。
【００７０】
マージ部２０２は、差分情報に基づき、現在適用されている更新前のアクセス制御リストに対して、追加されたアクセス制御ルールを追記し、削除されたアクセス制御ルールを削除することによってマージを行い、更新後のアクセス制御リストを得る。マージされたアクセス制御リストは設定部２０１に供給される（図４のステップＡ４０７）。
【００７１】
その後、設定部２０１によって、制御対象マシンにマージされたアクセス制御リストを適用する（図４のステップＡ４０８）。
【００７２】
本実施形態では、差分情報としてアクセス制御ルールの追加情報と削除情報のみを配信することで更新後のアクセス制御リストを生成することが可能である。また、更新に必要な情報に順序制約を含まないため、統合アクセス制御サーバ１００と制御対象マシン２００間の通信量を削減できる。加えて、記述順序を考慮したアクセス制御リストの再構築を行う必要がないため、アクセス制御リストの更新に使用される制御対象マシンのリソースの使用量を抑えられる。
【００７３】
次に、本発明の第３の実施形態であるアクセス制御リストの一貫性保証差分配信システムについて図面を参照して詳細に説明する。
【００７４】
本実施形態では、アクセス制御リストの差分配信における一貫性を保証する例を示す。図５を参照すると、本実施形態は、統合アクセス制御サーバ１１０と、制御対象マシン２１０を有している。統合アクセス制御サーバ１１０は、統合アクセス制御サーバ１００と比較して署名部１０８を更に有している点が相違する。制御対象マシン２１０は、制御対象マシン２００と比較して署名検証部２０４を更に有している点が相違する。統合アクセス制御サーバ１１０及び制御対象マシン２１０のそれ以外の部分及び各データーベースの機能及び動作は第２の実施形態と同じである。
【００７５】
次に、相違する各部の動作について説明する。
【００７６】
統合アクセス制御サーバ１１０の差分抽出部１０４によって抽出された差分情報は、署名部１０８に供給される。署名部１０８では、供給された差分情報に対して統合アクセス制御サーバ１１０に格納された正規の統合アクセス制御サーバを示す秘密鍵でＲＳＡ署名方式など所定の署名方式によりデジタル署名を付加する。
【００７７】
署名の付加されたアクセス制御リストの差分情報は、第２の実施形態と同様に配信部１０５により制御対象マシン２１０に配信される。
【００７８】
制御対象マシン２１０では、受信部２０３によって受信された署名の付与された差分情報が、マージ部２０２に供給される。
【００７９】
マージ部２０２は、供給される差分情報に付加された署名を署名検証部２０４に供給する。そして署名検証部２０４は、制御対象マシンに格納された正規の統合アクセス制御サーバ１１０の発行している公開鍵によって差分情報の正当性を検証する。
【００８０】
差分情報の正当性が保証された場合には、マージ部２０２は、現在適用されている更新前のアクセス制御リストに対して、追加されたアクセス制御ルールを追記し、削除されたアクセス制御ルールを削除する。マージされたアクセス制御リストは設定部２０１によって、制御対象マシンに適用される。一方、差分情報の正当性が認められなかった場合は当該アクセス制御リストは適用されない。
【００８１】
本実施形態では、アクセス制御ルールの集合情報である差分情報の正当性が保証されれば、更新前のアクセス制御リストに差分情報をマージして得られる更新後のアクセス制御リストの正当性が保証されるという効果を奏する。
【実施例】
【００８２】
以下、より具体的な実施例について図面を参照して詳細に説明する。【００８３】
本実施例では、アクセス制御リスト（ＡＣＬ）を統合的に管理し、策定されたポリシからアクセス制御リストを生成し、各制御対象マシンにアクセス制御リストを配信・設定する。【００８４】
図６を参照すると、本実施例は、統合アクセス制御サーバ１２０と、複数のｎ台の制御対象マシン２００−１乃至２００−ｎを有する。【００８５】
統合アクセス制御サーバ１２０は、ポリシＤＢ１０６と、リソースＤＢ１０２と、ＡＣＬ生成部１０３と、ＡＣＬ変換部１０１と、配信部１０５を有する。また、制御対象マシン２００−１乃至２００−ｎは、それぞれが設定部２０１と受信部２０３を有する。各部の機能については上述した各実施形態の対応する部分と同様なので説明を省略する。【００８６】
統合アクセス制御サーバ１２０では、策定されたポリシを蓄積しているポリシＤＢ１０６より、配信対象のポリシをＡＣＬ生成部１０３に供給することによりＡＣＬを得る。【００８７】
例えば、策定されたポリシは、経理部のyamadaは、Webサーバの共用の/var/samba/pub/以下と経理部専用の/var/samba/keiri/以下は読み書きしてよいが、それ以外の/var/samba/以下は読み書き実行してはならないというものであるとする。そして、それに対しＡＣＬ生成部１０３ではポリシに記述されている経理部のyamadaのアクセス主体がyamadaと記述されているものとする。また、アクセス対象リソースとしてそれぞれ/var/samba/pub/、/var/samba/keiri/、/var/samba/**が記述されているものとする。また、それぞれのアクセス対象リソースに対してのアクセス権が、書き込み許可の場合はwrite+、禁止の場合はwrite-と表現する。すなわち、許可を+禁止を-と表現する。そして、書き込み、読み込み、実行のアクセス権に関して記述されることによってアクセス制御ルールが記述されているものとする。また、ポリシ内で上位に記述され優先度の高い順に、ＡＣＬ内でもアクセス制御ルールが優先度の高い順に記述されているものとする。また、ＡＣＬ内でのアクセス対象リストの*と**の表記に関しては、*はディレクトリ直下を指し、**はディレクトリ配下全てを指すものとする。具体的には、ＡＣＬは図７のように生成される。【００８８】
そして、前記ＡＣＬをＡＣＬ変換部１０１に入力する。ＡＣＬ変換部１０１は、制御対象マシンのリソース情報が蓄積されたリソースＤＢ１０２を参照しながら、前記ＡＣＬをアクセス制御ルールの記述順序に依存しないＡＣＬに、変換、出力する。前記のＡＣＬに対して、リソースＤＢ１０２に蓄積されている制御対象マシンの全リソース情報を図８としたときの変換手順を図１および図２を参照しながら具体的に説明する。【００８９】
まず図７に示すＡＣＬのアクセス制御ルールを１行読み込む（図２のステップＡ３０１）。【００９０】
今回は、既出ルール判定部１１にて一時記憶部１５に記憶されたルールに該ルールが包含されていない（図２のステップＡ３０２においてＮＯ）。そのため、該ルールは第１のルール判定部１２に供給され許可ルールであるか否か判定される（図２のステップＡ３０３）。【００９１】
許可ルールであるyamada:/var/samba/pub:read+、yamada:/var/samba/pub:wirte+は許可ルール記憶部１６に記憶される（図２のステップＡ３０３においてＹＥＳ、ステップＡ３０５）。【００９２】
一方、禁止ルールであるyamada:/var/samba/pub:execute-は第２のルール判定部１３に供給される（ステップＡ３０３においてＮＯ）。【００９３】
ここで、今回の例では、供給された該ルールが許可ルール記憶部１６に記憶された許可ルールとアクセス主体ユーザが同一である。加えて該ルールのアクセス対象リソースが許可ルール記憶部１６に記憶された許可ルールに記述されたアクセス対象リソースを含んでいない、つまり相反していない。そのため、第２のルール判定部１３が、該ルールを禁止ルール記憶部１７に記憶する（図２のステップＡ３０４においてＮＯ、ステップＡ３０８）。【００９４】
そして該ルールが最終ルールか否かの判定において、入力ＡＣＬは最終行に達していない（図２のステップＡ３０９においてＮＯ）。【００９５】
よって、次の２行目のアクセス制御ルールを読み込む（図２のステップＡ３０１）。今回も、既出ルール判定部１１にて一時記憶部１５に記憶されたルールに該ルールが包含されていない（図２のステップＡ３０２においてＮＯ）。【００９６】
そのため、該ルールは第１のルール判定部１２に供給され許可ルールであるか否か判定される（図２のステップＡ３０３）。【００９７】
許可ルールであるyamada:/var/samba/keiri:read+、yamada:/var/samba/keiri:wirte+は許可ルール記憶部１６に記憶される（図２のステップＡ３０３においてＹＥＳ、ステップＡ３０５）。
【００９８】
一方、禁止ルールであるyamada:/var/samba/keiri:execute-は第２のルール判定部１３に供給される（図２スのテップＡ３０３においてＮＯ）。【００９９】
第２のルール判定部１３では、供給された該ルールが許可ルール記憶部１６に記憶された許可ルールと相反さないので禁止ルール記憶部１７に記憶される（図２のステップＡ３０４においてＮＯ、ステップＡ３０８）。そして該ルールが最終ルールか否かの判定（図２のステップＡ３０９）において、入力ＡＣＬは最終行に達していないので次の３行目のアクセス制御ルールを読み込む（図２のステップＡ３０１）。
【０１００】
既出ルール判定部１１にて一時記憶部１５に記憶されたルールに該ルールが包含されていないので（図２のステップＡ３０２においてＮＯ）、該ルールは第１のルール判定部１２に供給され許可ルールであるか否か判定される。そして、禁止ルールであるので第２のルール判定部１３に供給される（図２のステップＡ３０３においてＮＯ）。【０１０１】
第２のルール判定部１３では、供給されたyamada:/var/samba/**:execute-は許可ルール記憶部１６に記憶された許可ルールと相反さないので禁止ルール記憶部１７に記憶される（図２のステップＡ３０４においてＮＯ、ステップＡ３０８）。【０１０２】
一方、yamada:/var/samba/**:read-及びyamada:/var/samba/**:write-は、許可ルール記憶部１６に記憶されたyamada:/var/samba/pub:read+、yamada:/var/samba/pub:wirte+,yamada:/var/samba/keiri:read+、yamada:/var/samba/keiri:wirte+と相反するのでリソース展開部１４に供給される（図２のステップＡ３０４においてＹＥＳ）。【０１０３】
リソース展開部１４では、yamada:/var/samba/**:read-が供給されるとリソースＤＢ１０６を参照し、/var/samba/以下にpub、keiri、soumuが存在することを認識し、許可ルール記憶部１６に記憶されているyamada:/var/samba/pub:read+、yamada:/var/samba/keiri:read+と同じ階層のリソース情報を表現できるように展開する（図２のステップＡ３０６）。【０１０４】
そして、yamada:/var/samaba/pub:read-、yamada:/var/samba/keiri:read-、yamada:/var/samba/soumu:read-、yamada:/var/samba/*:read-を得、許可ルール記憶部１６に記憶されているアクセス対象リソースである/var/samba/pubおよび/var/samba/keiriを除いたyamada:/var/samba/soumu:read-およびyamada:/var/samba/*:read-を禁止ルール記憶部１７に記憶する（図２のステップＡ３０７およびA８）。【０１０５】
更に、供給されたyamada:/var/samba/**:wirte-に関しても同様の処理にてyamada:/var/samba/soumu:wirte-およびyamada:/var/samba/*:wirte-を禁止ルール記憶部１７に記憶する（図２のステップＡ３０４、Ａ３０６、Ａ３０７及びＡ３０８）。そして入力ＡＣＬは最終行に達したので（図２のステップＡ３０９においてＹＥＳ）禁止ルール記憶部１７に記憶されたyamada:/var/samba/pub:execute-、yamada:/var/samba/keiri:execute-、yamada:/var/samba/soumu:read-,wirte-およびyamada:/var/samba/*:read-,wirte-が出力されブラックリスト形式のＡＣＬが得られる。【０１０６】
ブラックリストではデフォルトルールが許可であるので、出力されたアクセス対象リソースに対して記述されていないアクセス権に関して許可を付与したＡＣＬとして図９が出力として得られる。出力として得られるＡＣＬは、記述されたアクセス制御ルールに記述順序制約がないために、アクセス制御ルールを任意に入れ替えても、アクセス制御機構が上位に記述された順に処理せずとも、ＡＣＬに記述されたアクセス制御ルールがすべてアクセス制御されれば、同一のアクセス制御効果をもたらす。【０１０７】
最後に、配信部１０５は、前記ＡＣＬ変換部１０１の出力したＡＣＬを、制御対象マシン２００−ｎに配信し、設定指示を出す。ここで、ＡＣＬの配信・設定方法として、ｔｅｌｎｅｔやｓｓｈなど任意の通信プロトコルを用いてよいが、図１０に示す通信プロトコルを用いることが望ましい。【０１０８】
図１０のプロトコルについて説明する。【０１０９】
まず、ＡＣＬを配信する統合アクセス制御サーバ１２０は配信部１０５によって、制御対象マシン２００−ｎに対して、設定準備問い合わせを行う（図１０のステップＢ５０１）。【０１１０】
そして、制御対象マシン２００−ｎの設定部２０１が有効であるかや、配信するＡＣＬを転送するプロトコルとして制御対象マシン２００−ｎの受信部２０３がどの通信プロトコルに対応していて本ＡＣＬ転送部としてどのプロトコルを用いるかといった情報を取得する（図１０のステップＢ５０２）。その際のメッセージは図１１に示すようなＳＯＡＰベースのWS-Managementに準拠することが望ましい。本例では、WS-ManagementのGetアクションを用いてリソースURIとして設定部２０１の設定を表現するリソースや対応プロトコルを表現するリソースを指定して制御対象マシン２００−ｎの受信部２０３にメッセージを送り問い合わせている。これに対する設定準備問い合わせ応答は、制御対象マシン２００−ｎの受信部２０３によってＳＯＡＰベースのWS-Managementに準拠したGettResponseアクションとして統合アクセス制御サーバ１２０の送信部１０５に応答される。【０１１１】
次に、統合アクセス制御サーバ１２０の配信部１０５は、前記の設定準備問い合わせで得たプロトコルに従ってＡＣＬを制御対象マシン２００−ｎの受信部２０３に対して転送する（図１０のステップＢ５０３）。ここで用いられる転送プロトコルは、前段の設定準備問い合わせで得たプロトコルに従い、特段の指定はない。【０１１２】
そして、統合アクセス制御サーバ１２０の配信部１０５は、図１２に示すようなＳＯＡＰベースのWS-Managementに準拠し、更新の場合はWS-ManagementのPutアクションを、削除の場合はWS-ManagementのDeleteを用いて、リソースURIとして設定部２０１を表現するリソースを指定する。加えて、設定対象となるＡＣＬを指し示すPolicy_Idを指定して、制御対象マシン２００−ｎの受信部２０３にメッセージを送りＡＣＬ設定要求を行う（図１０のステップＢ５０４）。【０１１３】
これを受けた受信部２０３は、設定部２０１に該設定指示を出し（図１０のステップＢ５０５）、設定部２０１よりその設定指示応答を得る（図１０のステップＢ５０６）。【０１１４】
設定指示応答を得た受信部２０３は、ＡＣＬ設定要求応答として、ＳＯＡＰベースのWS-Managementに準拠したPutResponseアクションあるいはDeleteResponseアクションとして統合アクセス制御サーバ１２０の配信部１０５に応答する（図１０のステップＢ５０７）。【０１１５】
制御対象マシン２００−ｎに設置された設定部２０１がブラックリスト形式のＡＣＬを処理するものであれば、ＡＣＬを配信する統合アクセス制御サーバ１２０から配信されるＡＣＬは、図９に示すＡＣＬのみで良く、制御対象マシン２００−１、２００−２、・・・２００−ｎそれぞれに対応するように用意する必要がないため、統合アクセス制御サーバ１２０では配信対象のポリシから生成する必要のあるＡＣＬの個数は制御対象マシン数が増加しても１つでよい。【０１１６】
以上説明した本発明の実施形態及び実施例は、下記の効果を奏する。【０１１７】
第１の効果は、アクセス制御ポリシの変更に伴うアクセス制御リストの修正コストを削減することができる。【０１１８】
その理由は、本発明によって変換されたアクセス制御リストはアクセス制御ルールの記述に関して順序制約がないため、アクセス制御リストをアクセス制御ルールの集合のみを扱えばよいためである。【０１１９】
第２の効果は、単一のアクセス制御リストで複数のアクセス制御機構に対して同一のアクセス制御効果をもたらすことができる。【０１２０】
その理由は、本発明によって変換された順序制約のないアクセス制御リストは、当事者が別段定めをしなければそうなるというルールであるデフォルトルールが同一であるアクセス制御リストを解釈対象とする任意のアクセス制御機構に関して同一の解釈結果を出せることから、１つのアクセス制御リストで複数のアクセス制御機構に対して同内容のアクセス制御を実施可能になることにある。【０１２１】
なお、本発明の実施形態である統合アクセス制御サーバ及び制御対象マシンは、ハードウェアにより実現することもできるが、コンピュータをその統合アクセス制御サーバ及び制御対象マシンとして機能させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。【０１２２】
また、本発明の実施形態によるアクセス制御方法は、ハードウェアにより実現することもできるが、コンピュータにその方法を実行させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。【０１２３】
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。【０１２４】
本願は、日本の特願２００９−０６６０１６（２００９年３月１８日に出願）に基づいたものであり、又、特願２００９−０６６０１６に基づくパリ条約の優先権を主張するものである。特願２００９−０６６０１６の開示内容は、特願２００９−０６６０１６を参照することにより本明細書に援用される。  本発明の代表的な実施の形態が詳細に述べられたが、様々な変更(changes)、置き換え(substitutions)及び選択(alternatives)が請求項で定義された発明の精神と範囲から逸脱することなくなされることが理解されるべきである。また、仮にクレームが出願手続きにおいて補正されたとしても、クレームされた発明の均等の範囲は維持されるものと発明者は意図する。【０１２５】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。【０１２６】
（付記１）  アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置において、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定部と、
前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開部と、
を備えることを特徴とするアクセス制御リスト変換装置。
【０１２７】
（付記２）  アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置において、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定部と、
前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開部と、
を備えることを特徴とするアクセス制御リスト変換装置。
【０１２８】
（付記３）  付記１又は２に記載のアクセス制御リスト変換装置において、
前記リソース展開部は、包含している側のアクセス制御ルールに記載のアクセス対象リソースの全リソース情報を参照し、包含されている側のアクセス制御ルールに記載のアクセス対象リソースを表現できる集合あるいは要素に展開し、当該包含されている側のアクセス制御ルールに記載のアクセス対象リソースと重複するアクセス対象リソースを、当該包含している側のアクセス制御ルールに記載のアクセス対象リソースを展開したものから除いて当該包含している側のアクセス制御ルールのアクセス対象リソースに記載することにより前記変換を行うことを特徴とするアクセス制御リスト変換装置。
【０１２９】
（付記４）  統合アクセス制御サーバと、前記統合アクセス制御サーバに接続された制御対象マシンとを有するアクセス制御リスト配付システムの前記統合アクセス制御サーバであって、
付記１乃至３の何れか１に記載のアクセス制御リスト変換装置と、
アクセス制御リストを記憶するアクセス制御リストデーターベースと、
前記アクセス制御リスト変換装置が変換したアクセス制御リストと、前記アクセス制御リストデーターベースに記憶されているアクセス制御リストと、の差分を抽出する差分抽出部と、
抽出した前記差分を前記制御対象マシンに配信する配信部と、
を備えることを特徴とする統合アクセス制御サーバ。
【０１３０】
（付記５）  アクセス対象となるリソースの状況を記録しているリソースデータベースに接続されているアクセス制御リスト変換装置において、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換方法であって、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部を用意するステップと、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定ステップと、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定ステップと、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定ステップと、
前記第２のルール判定ステップの判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開ステップと、
を備えることを特徴とするアクセス制御リスト変換方法。
【０１３１】
（付記６）  アクセス対象となるリソースの状況を記録しているリソースデータベースに接続されているアクセス制御リスト変換装置において、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換方法であって、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部を用意するステップと、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定ステップと、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定ステップと、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定ステップと、
前記第２のルール判定ステップの判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開ステップと、
を備えることを特徴とするアクセス制御リスト変換方法。
【０１３２】
（付記７）  付記５又は６に記載のアクセス制御リスト変換方法において、
前記リソース展開ステップにおいて、包含している側のアクセス制御ルールに記載のアクセス対象リソースの全リソース情報を参照し、包含されている側のアクセス制御ルールに記載のアクセス対象リソースを表現できる集合あるいは要素に展開し、当該包含されている側のアクセス制御ルールに記載のアクセス対象リソースと重複するアクセス対象リソースを、当該包含している側のアクセス制御ルールに記載のアクセス対象リソースを展開したものから除いて当該包含している側のアクセス制御ルールのアクセス対象リソースに記載することにより前記変換を行うことを特徴とするアクセス制御リスト変換方法。
【０１３３】
（付記８）  付記５乃至７の何れか１に記載のアクセス制御リスト変換方法において、
アクセス制御リストを記憶するアクセス制御リストデーターベースを用意するステップと、
前記変換したアクセス制御リストと、前記アクセス制御リストデーターベースに記憶されているアクセス制御リストと、の差分を抽出する差分抽出ステップと、
抽出した前記差分を制御対象マシンに配信する配信ステップと、
を備えることを特徴とするアクセス制御リスト変換方法。
【０１３４】
（付記９）  アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置に搭載される、アクセス制御リスト変換プログラムにおいて、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、許可ルールであれば、前記一時記憶部に記録する第１のルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが禁止ルールであれば、当該禁止ルールが、前記一時記憶部に記憶されている前記許可ルールと相反するか否かを判定し、相反していない場合は、当該禁止ルールを前記一時記憶部に記憶する第２のルール判定部と、
前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該禁止ルールに記載されているアクセス対象リソースから前記許可ルールに記載されているアクセス対象リソースを除いた禁止ルールに変換し、前記一時記憶部に記憶するリソース展開部と、
を備えるアクセス制御リスト変換装置としてコンピュータを機能させるアクセス制御リスト変換プログラム。
【０１３５】
（付記１０）  アクセス対象となるリソースの状況を記録しているリソースデータベースに接続され、前記リソースに対するアクセスを制御するためのルールの集合であるアクセス制御リストを用いてアクセス制御ルールを更新するアクセス制御リスト変換装置に搭載される、アクセス制御リスト変換プログラムにおいて、
前記アクセス制御の対象となる主体が前記リソースにアクセスできる旨を規定する「許可ルール」と、前記リソースにアクセスできない旨を規定する「禁止ルール」と、を予め記憶している一時記憶部と、
受け付けた前記アクセス制御リストからルールを読み込み、当該読み込んだルールが前記一時記憶部に予め記憶されている許可ルール及び禁止ルールに包含されているか判定する既出ルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが、禁止ルールであれば、前記一時記憶部に記録する第１のルール判定部と、
前記判定の結果、包含されていなかった場合に当該読み込んだルールが許可ルールであれば、当該許可ルールが、前記一時記憶部に記憶されている前記禁止ルールと相反するか否かを判定し、相反していない場合は、当該許可ルールを前記一時記憶部に記憶する第２のルール判定部と、
前記第２のルール判定部の判定の結果、相反している場合は、前記リソースデータベースのリソース情報に基づいて、当該許可ルールに記載されているアクセス対象リソースから前記禁止ルールに記載されているアクセス対象リソースを除いた許可ルールに変換し、前記一時記憶部に記憶するリソース展開部と、
を備えるアクセス制御リスト変換装置としてコンピュータを機能させるアクセス制御リスト変換プログラム。
【０１３６】
（付記１１）  付記９又は１０に記載のアクセス制御リスト変換プログラムにおいて、
前記リソース展開部は、包含している側のアクセス制御ルールに記載のアクセス対象リソースの全リソース情報を参照し、包含されている側のアクセス制御ルールに記載のアクセス対象リソースを表現できる集合あるいは要素に展開し、当該包含されている側のアクセス制御ルールに記載のアクセス対象リソースと重複するアクセス対象リソースを、当該包含している側のアクセス制御ルールに記載のアクセス対象リソースを展開したものから除いて当該包含している側のアクセス制御ルールのアクセス対象リソースに記載することにより前記変換を行うことを特徴とするアクセス制御リスト変換プログラム。
【０１３７】
（付記１２）  付記９乃至１１の何れか１に記載のアクセス制御リスト変換プログラムにおいて、
前記アクセス制御リスト変換装置が、
アクセス制御リストを記憶するアクセス制御リストデーターベースと、
前記変換したアクセス制御リストと、前記アクセス制御リストデーターベースに記憶されているアクセス制御リストと、の差分を抽出する差分抽出部と、
抽出した前記差分を制御対象マシンに配信する配信部と、
を更に備えることを特徴とするアクセス制御リスト変換プログラム。
【産業上の利用可能性】
【０１３８】
本発明は、アクセス制御リストとして表現されるポリシの変更時に変更者の意図を確認する場合や、変更部の一貫性を保証しつつ差分配信を行いたい場合に好適である。【０１３９】
また、本発明は、アクセス制御リストを複数のアクセス制御実施機構に対して生成、あるいは、アクセス制御リストの変更を複数のアクセス制御実施機構に対して反映するために、アクセス制御リストを新規に生成あるいは変更したい場合にも好適である。
【図１】
0005569814.tif 000002
【図２】
0005569814.tif 000003
【図３】
0005569814.tif 000004
【図４】
0005569814.tif 000005
【図５】
0005569814.tif 000006
【図６】
0005569814.tif 000007
【図７】
0005569814.tif 000008
【図８】
0005569814.tif 000009
【図９】
0005569814.tif 000010
【図１０】
0005569814.tif 000011
【図１１】
0005569814.tif 000012
【図１２】
0005569814.tif 000013