(57)【要約】【課題】  複数の組織に属するユーザをメンバとして含んでいるユーザグループについてのアクセス制御リストを生成できるようにし、また、効率的にアクセス制御リストを更新できるようにする。【解決手段】  ポリシ格納手段１０２２は、アドホックグループにリソース（アクセス先）を共有させるための設定情報の集合であるアクセス制御ポリシを格納する。アクセス制御ポリシの一部が編集されると、ポリシ解析手段１０３２は、編集されたアクセス制御ポリシから生成されるルールを更新する。このとき、ユーザが複数のユーザグループに属することを表現可能なデータ構造を有するオブジェクト知識を用いてルールを更新する。アクセス制御リスト設定手段１０６２は、更新されたルールに基づいて、アクセス制御リストの一部を更新する。【選択図】  図１９
2006012117.tif 000002
【特許請求の範囲】
【請求項１】
少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、前記リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、または前記リソースと当該リソースを識別可能なアクセス先識別情報との関係を示す情報を記憶する知識データベースと、
前記知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述したアクセス制御ポリシを記憶し、前記アクセス制御ポリシと前記知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成し、前記アクセス制御リストを既存のアクセス制御装置に設定するポリシエンジンとを備えた
ことを特徴とするアクセス制御システム。
【請求項２】
ポリシエンジンは、知識データベースが記憶する情報を用いて、アクセス制御ポリシに記述された内容のうち少なくとも位置とリソースをそれぞれ、アクセス元識別情報、アクセス先識別情報に置換することによって、特定のアクセス制御装置に依存する記述を含まないルールの集合である中間言語を生成するポリシ解析手段を含む
請求項１に記載のアクセス制御システム。
【請求項３】
ポリシ解析手段は、更新されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する
請求項２に記載のアクセス制御システム。
【請求項４】
知識データベースは、
グループとユーザ識別情報または装置識別情報との関係を示す情報を、一のグループから他のグループ、ユーザ識別情報または装置識別情報への経路を有する有向グラフとして記憶し、位置とアクセス元識別情報との関係を示す情報を、一の位置から他の位置またはアクセス元識別情報への経路を有する有向グラフとして記憶し、リソースとアクセス先識別情報との関係を示す情報を、一のリソースから他のリソースまたはアクセス先識別情報への経路を有する有向グラフとして記憶する知識格納手段を含む
請求項１から請求項３のうちのいずれか１項に記載のアクセス制御システム。
【請求項５】
知識データベースは、
グループとユーザ識別情報または装置識別情報との関係を示す情報を、一のグループから他のグループ、ユーザ識別情報または装置識別情報への経路を有する有向グラフとして記憶し、位置とアクセス元識別情報との関係を示す情報を、一の位置から他の位置またはアクセス元識別情報への経路を有する有向グラフとして記憶し、リソースとアクセス先識別情報との関係を示す情報を、一のリソースから他のリソースまたはアクセス先識別情報への経路を有する有向グラフとして記憶する知識格納手段と、
前記知識格納手段が記憶する有向グラフが更新されたときに、有向グラフの更新部分に関わるグループ、位置、またはリソースの情報をポリシエンジンに通知する更新グループ等通知手段とを含み、
ポリシエンジンは、前記更新グループ等通知手段から通知されたグループ、位置、またはリソースの情報を含むアクセス制御ポリシを特定するポリシ特定手段を含み、
ポリシ解析手段は、前記ポリシ特定手段によって特定されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する
請求項２または請求項３に記載のアクセス制御システム。
【請求項６】
各ユーザの現在位置の情報を保持し、ユーザの移動にともなう現在位置の変化が生じたときには、少なくとも移動したユーザのユーザ識別情報と移動先を識別可能な現在位置識別情報とを含む移動情報を知識データベースに通知するプレゼンス管理手段を備え、
知識格納手段は、各ユーザのユーザ識別情報と各ユーザの現在位置識別情報との関係を示す情報を、ユーザ識別情報から現在位置識別情報への経路を有する有向グラフとして記憶し、
知識データベースは、前記プレゼンス管理手段から通知される移動情報に基づいて、前記有向グラフを更新するユーザ位置情報更新手段を含み、
更新グループ等通知手段は、前記ユーザ位置情報更新手段によって前記有向グラフが更新された場合に、更新部分に関わるユーザ識別情報をポリシエンジンに通知し、
ポリシ特定手段は、前記更新グループ等通知手段から通知されたユーザ識別情報に基づいてアクセス制御ポリシを特定し、
ポリシ解析手段は、前記ポリシ特定手段によって特定されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する
請求項５に記載のアクセス制御システム。
【請求項７】
各ユーザまたは各装置の現在位置の情報を保持し、ユーザまたは装置の移動にともなう現在位置の変化が生じたときには、少なくとも移動したユーザのユーザ識別情報または移動した装置の装置識別情報と移動先を識別可能な現在位置識別情報とを含む移動情報を知識データベースに通知するプレゼンス管理手段と、
知識データベースが記憶する情報のうちポリシ特定手段に受け渡すべき情報を判定して前記情報を知識データベースからポリシ特定手段に受け渡す知識解析手段とを備え、
ポリシ特定手段は、有効となる条件が記述されたアクセス制御ポリシであって、グループに応じたユーザまたは装置と重複するかあるいは異なるユーザまたは装置を随伴者として記述したアクセス制御ポリシを記憶するポリシ格納手段を含み、
知識格納手段は、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を、ユーザ識別情報または装置識別情報から現在位置識別情報への経路を有する有向グラフとして記憶し、
知識データベースは、前記プレゼンス管理手段から通知される移動情報に基づいて、前記有向グラフを更新する位置情報更新手段を含み、
更新グループ等通知手段は、前記位置情報更新手段によって前記有向グラフが更新された場合に、更新部分に関わるユーザ識別情報または装置識別情報をポリシエンジンに通知し、
ポリシ特定手段は、
各アクセス制御ポリシに記述されたユーザまたは装置のグループおよび随伴者の情報を前記知識解析手段に出力することにより、前記知識解析手段から前記ユーザまたは装置のグループおよび前記随伴者に応じた各ユーザ識別情報または各装置識別情報を入力し、当該ユーザ識別情報または当該装置識別情報と、前記更新グループ等通知手段から通知されたユーザ識別情報または装置識別情報とに基づいてアクセス制御ポリシを特定し、特定したアクセス制御ポリシに記述されたグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を前記知識解析手段に出力することにより、前記知識解析手段から前記各ユーザ識別情報または各装置識別情報に応じた各ユーザまたは各装置の現在位置識別情報を入力し、入力した情報と前記アクセス制御ポリシに記述された条件とに基づいて有効となるアクセス制御ポリシを判定し、
ポリシ解析手段は、有効と判定されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する
請求項５に記載のアクセス制御システム。
【請求項８】
ポリシエンジンに接続されている複数のアクセス制御装置の稼働状況に関する情報を保持し、アクセス制御装置の稼働状況が変化したときには、当該アクセス制御装置の識別情報と変化後の稼働状況の情報とを含む構成情報を知識データベースに通知するシステム構成管理手段を備え、
知識格納手段は、各アクセス制御装置の識別情報と稼働状況との関係を示す情報を、各アクセス制御装置の識別情報から稼働状況への経路を有する有向グラフとして記憶し、
知識データベースは、前記システム構成管理手段から通知される構成情報に基づいて、前記有向グラフを更新する稼働状況更新手段を含み、
更新グループ等通知手段は、前記稼働状況更新手段によって前記有向グラフが更新された場合に、更新部分に関わるアクセス制御装置の識別情報をポリシエンジンに通知し、
ポリシ特定手段は、前記更新グループ等通知手段から通知されたアクセス制御装置の識別情報に基づいてアクセス制御ポリシを特定し、
ポリシ解析手段は、前記ポリシ特定手段によって特定されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する
請求項５から請求項７のうちのいずれか１項に記載のアクセス制御システム。
【請求項９】
知識データベースは、
知識格納手段に任意のグループ、位置またはリソースから有向グラフを探索させて、ユーザ識別情報または装置識別情報の集合、アクセス元識別情報の集合、またはアクセス先識別情報の集合を抽出する知識管理手段を含む
請求項４から請求項８のうちのいずれか１項に記載のアクセス制御システム。
【請求項１０】
知識データベースは、知識格納手段が記憶している有向グラフを編集するためのユーザインタフェースを提供する有向グラフ編集手段を含む
請求項４から請求項９のうちのいずれか１項に記載のアクセス制御システム。
【請求項１１】
有向グラフ編集手段は、一のグループから経路を延ばす他のグループを選択する選択欄と、前記一のグループから経路を延ばすユーザ識別情報または装置識別情報を入力する入力欄と、前記一のグループから経路が延ばされているユーザ識別情報または装置識別情報のうち、削除するユーザ識別情報または装置識別情報の指定欄とを有するユーザインタフェースを提供する
請求項１０に記載のアクセス制御システム。
【請求項１２】
有向グラフ編集手段は、一の位置から経路を延ばす他の位置を選択する選択欄と、前記一の位置から経路を延ばすアクセス元識別情報を入力する入力欄と、前記一のグループから経路が延ばされているアクセス元識別情報のうち、削除するアクセス元識別情報の指定欄とを有するユーザインタフェースを提供する
請求項１０または請求項１１に記載のアクセス制御システム。
【請求項１３】
有向グラフ編集手段は、一のリソースから経路を延ばす他のリソースを選択する選択欄と、前記一のリソースから経路を延ばすアクセス先識別情報を入力する入力欄と、前記一のグループから経路が延ばされているアクセス先識別情報のうち、削除するアクセス先識別情報の指定欄とを有するユーザインタフェースを提供する
請求項１０から請求項１２のうちのいずれか１項に記載のアクセス制御システム。
【請求項１４】
ポリシエンジンは、
知識データベースが記憶する情報を用いて、アクセス制御ポリシに記述された内容のうち少なくとも位置とリソースをそれぞれ、アクセス元識別情報、アクセス先識別情報に置換することによって、特定のアクセス制御装置に依存する記述を含まないルールの集合である中間言語を生成するポリシ解析手段と、
生成された中間言語を、アクセス制御リストの設定対象となるアクセス制御装置の機種に応じたアクセス制御リストに変換し、当該アクセス制御リストを前記アクセス制御装置に設定するアクセス制御リスト設定手段とを含む
請求項１から請求項１３のうちのいずれか１項に記載のアクセス制御システム。
【請求項１５】
ポリシ解析手段は、更新されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成するとともに、前記ルールに生成元となったアクセス制御ポリシのＩＤを付与し、
アクセス制御リスト設定手段は、アクセス制御リストの構成要素である行をルールに基づいて生成するとともに、前記行に生成元となったルールに付与されいるＩＤを付与し、前記ポリシ解析手段によって一部のルールが新たに生成された場合には、当該ルールに付与されたＩＤと同一のＩＤが付与されている行を更新する
請求項１４に記載のアクセス制御システム。
【請求項１６】
ポリシエンジンは、
アクセス制御ポリシに含まれる情報のうち、少なくともグループと位置とリソースを編集するためのユーザインタフェースを提供するポリシ編集手段を含む
請求項１から請求項１５のうちのいずれか１項に記載のアクセス制御システム。
【請求項１７】
ポリシ編集手段は、グループのリスト、位置のリスト、およびリソースのリストを表示し、各リストにおいてそれぞれグループ、位置、リソースの選択を受け付けるユーザインタフェースを提供する
請求項１６に記載のアクセス制御システム。
【請求項１８】
ポリシエンジンは、
アクセス制御ポリシに含まれる情報のうち、少なくともグループと位置とリソースと随伴者を編集するためのユーザインタフェースを提供するポリシ編集手段を含む
請求項７に記載のアクセス制御システム。
【請求項１９】
ポリシ編集手段は、リソースを使用するユーザまたは装置のグループのリスト、位置のリスト、リソースのリスト、および随伴者のグループのリストを表示し、各リストにおいてそれぞれユーザまたは装置のグループ、位置、リソース、随伴者のグループの選択を受け付けるユーザインタフェースを提供する
請求項１８に記載のアクセス制御システム。
【請求項２０】
少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、前記リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、前記リソースと当該リソースを識別可能なアクセス先識別情報との関係、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を記憶する知識データベースと、
前記知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述するとともに、前記グループに応じたユーザまたは装置と重複するかあるいは異なるユーザまたは装置を随伴者として記述したアクセス制御ポリシを記憶し、有効なアクセス制御ポリシと前記知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成し、前記アクセス制御リストを既存のアクセス制御装置に設定するポリシエンジンと、
各ユーザまたは各装置の現在位置の情報を保持し、ユーザまたは装置の移動にともなう現在位置の変化が生じたときには、少なくとも移動したユーザのユーザ識別情報または移動した装置の装置識別情報と移動先を識別可能な現在位置識別情報とを含む移動情報を知識データベースに通知するプレゼンス管理手段とを備え、
前記知識データベースは、前記プレゼンス管理手段から通知される移動情報に基づいて、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を更新し、更新部分に関わるユーザ識別情報または装置識別情報を前記ポリシエンジンに通知し、
前記ポリシエンジンは、
各アクセス制御ポリシに記述されたユーザまたは装置のグループおよび随伴者の情報を出力して前記ユーザまたは装置のグループおよび前記随伴者に応じた各ユーザ識別情報または各装置識別情報を入力し、当該ユーザ識別情報または当該装置識別情報と、前記知識データベースから通知されたユーザ識別情報または装置識別情報とに基づいてアクセス制御ポリシを特定し、特定したアクセス制御ポリシに記述されたグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を出力して前記各ユーザ識別情報または各装置識別情報に応じた各ユーザまたは各装置の現在位置識別情報を入力し、入力した情報とアクセス制御ポリシ毎に定められた条件とに基づいて有効となるアクセス制御ポリシを判定するポリシ特定手段を含む
ことを特徴とするアクセス制御システム。
【請求項２１】
ポリシエンジンは、
アクセス制御ポリシに含まれる情報のうち、少なくともグループと位置とリソースと随伴者を編集するためのユーザインタフェースを提供するポリシ編集手段を含む
請求項２０に記載のアクセス制御システム。
【請求項２２】
知識データベースが、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、前記リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、または前記リソースと当該リソースを識別可能なアクセス先識別情報との関係を示す情報を記憶し、
ポリシエンジンが、前記知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述したアクセス制御ポリシを記憶し、前記アクセス制御ポリシと前記知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成し、前記アクセス制御リストを既存のアクセス制御装置に設定する
ことを特徴とするアクセス制御方法。
【請求項２３】
知識データベースが、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、前記リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、前記リソースと当該リソースを識別可能なアクセス先識別情報との関係、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を記憶し、
ポリシエンジンが、前記知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述するとともに、前記グループに応じたユーザまたは装置と重複するかあるいは異なるユーザまたは装置を随伴者として記述したアクセス制御ポリシを記憶し、
プレゼンス管理手段が、各ユーザまたは各装置の現在位置の情報を保持し、ユーザまたは装置の移動にともなう現在位置の変化が生じたときには、少なくとも移動したユーザのユーザ識別情報または移動した装置の装置識別情報と移動先を識別可能な現在位置識別情報とを含む移動情報を知識データベースに通知し、
知識データベースが、前記プレゼンス管理手段から通知される移動情報に基づいて、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を更新し、更新部分に関わるユーザ識別情報または装置識別情報を前記ポリシエンジンに通知し、
ポリシエンジンが、各アクセス制御ポリシに記述されたユーザまたは装置のグループおよび随伴者の情報を出力して前記ユーザまたは装置のグループおよび前記随伴者に応じた各ユーザ識別情報または各装置識別情報を入力し、当該ユーザ識別情報または当該装置識別情報と、前記知識データベースから通知されたユーザ識別情報または装置識別情報とに基づいてアクセス制御ポリシを特定し、特定したアクセス制御ポリシに記述されたグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を出力して前記各ユーザ識別情報または各装置識別情報に応じた各ユーザまたは各装置の現在位置識別情報を入力し、入力した情報とアクセス制御ポリシ毎に定められた条件とに基づいて有効となるアクセス制御ポリシを判定し、
ポリシエンジンが、有効と判定したアクセス制御ポリシと前記知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成し、前記アクセス制御リストを既存のアクセス制御装置に設定する
ことを特徴とするアクセス制御方法。
【請求項２４】
少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、前記リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、または前記リソースと当該リソースを識別可能なアクセス先識別情報との関係を示す情報を記憶する知識データベースに接続され、前記知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述したアクセス制御ポリシを記憶するポリシ記憶手段を備えたコンピュータに、
前記アクセス制御ポリシと前記知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成する処理、および
前記アクセス制御リストを既存のアクセス制御装置に設定させる処理
を実行させるためのアクセス制御プログラム。
【請求項２５】
少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、前記リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、前記リソースと当該リソースを識別可能なアクセス先識別情報との関係、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を記憶する知識データベースと接続され、前記知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述するとともに、前記グループに応じたユーザまたは装置と重複するかあるいは異なるユーザまたは装置を随伴者として記述したアクセス制御ポリシを記憶するポリシ記憶手段を備えたコンピュータに、
各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報における更新部分に関わるユーザ識別情報または装置識別情報を前記ポリシエンジンから入力する更新情報入力処理、
各アクセス制御ポリシに記述されたユーザまたは装置のグループおよび随伴者の情報を出力して前記ユーザまたは装置のグループおよび前記随伴者に応じた各ユーザ識別情報または各装置識別情報を入力する識別情報入力処理、
識別情報入力処理で入力したユーザ識別情報または装置識別情報と、更新情報入力処理で入力したユーザ識別情報または装置識別情報とに基づいてアクセス制御ポリシを特定する特定処理、
特定したアクセス制御ポリシに記述されたグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を出力して前記各ユーザ識別情報または各装置識別情報に応じた各ユーザまたは各装置の現在位置識別情報を入力する現在位置識別情報入力処理、
入力した情報とアクセス制御ポリシ毎に定められた条件とに基づいて有効となるアクセス制御ポリシを判定する有効ポリシ判定処理、
有効なアクセス制御ポリシと前記知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成するリスト生成処理、および、
前記アクセス制御リストを既存のアクセス制御装置に設定させる処理
を実行させるためのアクセス制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はアクセス制御システム、アクセス制御方法およびアクセス制御用プログラムに関し、特に複数の組織に属するユーザまたはそのユーザが使用する装置が共有リソースにアクセスする場合のアクセス制御を実現できるアクセス制御システム、アクセス制御方法およびアクセス制御用プログラムに関する。
【背景技術】
【０００２】
従来より、アクセス制御システムやアクセス制御システムにおいて利用できる機能等が提案されている（例えば、特許文献１〜４参照。）。
【０００３】
特許文献１に記載のアクセス制御リスト生成方法は、アクセス主体種別と、アクセス対象種別と、組織構造に基づく制約条件によって記述されたアクセス制御ルールから、アクセス主体と、アクセス対象によって記述されたアクセス制御リストを生成する方法である。そして、特許文献１に記載のアクセス制御リスト生成方法は、主体（アクセス主体）と主体種別とを直接に対応付ける主体種別グループ情報と、対象（アクセス対象）と対象種別とを直接に対応付ける対象種別グループ情報と、主体および対象と組織との対応付けを単一の木構造で表現した組織構造情報とを持ち、これを使用して制約条件を満足するアクセス制御リストのみを生成可能としている。
【０００４】
また、特許文献２に記載のストレージ装置は、ネットワーク上に置かれ、特定のユーザがいつどこにいるのかを示すスケジュール管理表により、登録された時刻および場所からのアクセスのみを許可し、それ以外からのアクセスを拒否する。
【０００５】
また、特許文献３に記載のディスク共用制御方法は、複数のアクセス元装置において、各アクセス元装置に論理アドレスを割り当て、論理アドレスから特定の物理ディスク装置上の位置をあらわす物理アドレスへ変換するテーブルを用いることにより、アクセス元装置同士で物理ディスク装置の共用状態に基づいたアクセス制御を可能としている。
【０００６】
また、特許文献４に記載の匿名通信方法は、ユーザ認証結果と、送信先によって、パケットに付加されるユーザ識別情報を置き換える。この際、ユーザ毎のＩＤとパスワードによる認証手段と、認証結果によって設定できる内容を区別する手段と、送信元と送信先の組と付加するユーザ識別情報との対応付けをユーザ識別情報送信ポリシとして管理する手段と、ユーザ識別情報送信ポリシを設定するインタフェースを提供する手段とを用いる。
【０００７】
【特許文献１】特開平１１−３１３１０２号公報（第６頁、図１）
【特許文献２】特開２００３−１４０９６８号公報（第３−６頁、図５）
【特許文献３】特開２００３−２４１９０１号公報（第３−６頁、図２）
【特許文献４】特開２００３−３１６７４２号公報（第３−６頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来のアクセス制御システムでは、複数の組織に属するユーザをメンバとして含んでいるユーザグループからのアクセス制御を行えないという問題があった。例えば、特許文献１に記載のアクセス制御リスト生成方法では、ユーザグループとそのメンバであるユーザ、およびユーザグループ間の組織構成が木構造によって表現され、任意のメンバが一つのユーザグループのみに所属することを強制される。そのため、複数の組織に属するユーザをメンバとして含んでいるユーザグループからのアクセス制御を行うことはできない。
【０００９】
また、アクセス制御リストを更新する場合、変更の必要なアクセス制御リストのみを削除したり生成したりして、アクセス制御リスト更新を効率化できることが好ましい。しかし、従来のアクセス制御方法やアクセス制御装置では、変更を要するアクセス制御リストの範囲を特定することができなかったため、上記のようなアクセス制御リスト更新の効率化を実現できなかった。
【００１０】
そこで、本発明は、複数の組織に属するユーザをメンバとして含んでいるユーザグループについてのアクセス制御リストを生成できるアクセス制御システム、アクセス制御方法およびアクセス制御用プログラムを提供することを目的とする。また、効率的にアクセス制御リストを更新できるアクセス制御システム、アクセス制御方法およびアクセス制御用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明によるアクセス制御システムは、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、またはリソースと当該リソースを識別可能なアクセス先識別情報との関係を示す情報を記憶する知識データベースと、知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述したアクセス制御ポリシを記憶し、アクセス制御ポリシと知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成し、アクセス制御リストを既存のアクセス制御装置に設定するポリシエンジンとを備えたことを特徴とする。
【００１２】
ポリシエンジンが、知識データベースが記憶する情報を用いて、アクセス制御ポリシに記述された内容のうち少なくとも位置とリソースをそれぞれ、アクセス元識別情報、アクセス先識別情報に置換することによって、特定のアクセス制御装置に依存する記述を含まないルールの集合である中間言語を生成するポリシ解析手段を含む構成であってもよい。
【００１３】
ポリシ解析手段が、更新されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する構成であってもよい。そのような構成によれば、アクセス制御リストを効率的に更新することができる。
【００１４】
知識データベースが、グループとユーザ識別情報または装置識別情報との関係を示す情報を、一のグループから他のグループ、ユーザ識別情報または装置識別情報への経路を有する有向グラフとして記憶し、位置とアクセス元識別情報との関係を示す情報を、一の位置から他の位置またはアクセス元識別情報への経路を有する有向グラフとして記憶し、リソースとアクセス先識別情報との関係を示す情報を、一のリソースから他のリソースまたはアクセス先識別情報への経路を有する有向グラフとして記憶する知識格納手段を含む構成であってもよい。
【００１５】
知識データベースが、グループとユーザ識別情報または装置識別情報との関係を示す情報を、一のグループから他のグループ、ユーザ識別情報または装置識別情報への経路を有する有向グラフとして記憶し、位置とアクセス元識別情報との関係を示す情報を、一の位置から他の位置またはアクセス元識別情報への経路を有する有向グラフとして記憶し、リソースとアクセス先識別情報との関係を示す情報を、一のリソースから他のリソースまたはアクセス先識別情報への経路を有する有向グラフとして記憶する知識格納手段と、知識格納手段が記憶する有向グラフが更新されたときに、有向グラフの更新部分に関わるグループ、位置、またはリソースの情報をポリシエンジンに通知する更新グループ等通知手段とを含み、ポリシエンジンが、更新グループ等通知手段から通知されたグループ、位置、またはリソースの情報を含むアクセス制御ポリシを特定するポリシ特定手段を含み、ポリシ解析手段は、ポリシ特定手段によって特定されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する構成であってもよい。そのような構成によれば、有向グラフの更新に伴うアクセス制御リストの更新を効率的に行うことができる。
【００１６】
各ユーザの現在位置の情報を保持し、ユーザの移動にともなう現在位置の変化が生じたときには、少なくとも移動したユーザのユーザ識別情報と移動先を識別可能な現在位置識別情報とを含む移動情報を知識データベースに通知するプレゼンス管理手段を備え、知識格納手段が、各ユーザのユーザ識別情報と各ユーザの現在位置識別情報との関係を示す情報を、ユーザ識別情報から現在位置識別情報への経路を有する有向グラフとして記憶し、知識データベースが、プレゼンス管理手段から通知される移動情報に基づいて、有向グラフを更新するユーザ位置情報更新手段を含み、更新グループ等通知手段は、ユーザ位置情報更新手段によって有向グラフが更新された場合に、更新部分に関わるユーザ識別情報をポリシエンジンに通知し、ポリシ特定手段が、更新グループ等通知手段から通知されたユーザ識別情報に基づいてアクセス制御ポリシを特定し、ポリシ解析手段が、ポリシ特定手段によって特定されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する構成であってもよい。そのような構成によれば、ユーザの移動に伴うアクセス制御リストの更新を効率的に行うことができる。
【００１７】
各ユーザまたは各装置の現在位置の情報を保持し、ユーザまたは装置の移動にともなう現在位置の変化が生じたときには、少なくとも移動したユーザのユーザ識別情報または移動した装置の装置識別情報と移動先を識別可能な現在位置識別情報とを含む移動情報を知識データベースに通知するプレゼンス管理手段と、知識データベースが記憶する情報のうちポリシ特定手段に受け渡すべき情報を判定して情報を知識データベースからポリシ特定手段に受け渡す知識解析手段とを備え、ポリシ特定手段が、有効となる条件が記述されたアクセス制御ポリシであって、グループに応じたユーザまたは装置と重複するかあるいは異なるユーザまたは装置を随伴者として記述したアクセス制御ポリシを記憶するポリシ格納手段を含み、知識格納手段が、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を、ユーザ識別情報または装置識別情報から現在位置識別情報への経路を有する有向グラフとして記憶し、知識データベースが、プレゼンス管理手段から通知される移動情報に基づいて、有向グラフを更新する位置情報更新手段を含み、更新グループ等通知手段が、位置情報更新手段によって有向グラフが更新された場合に、更新部分に関わるユーザ識別情報または装置識別情報をポリシエンジンに通知し、ポリシ特定手段が、各アクセス制御ポリシに記述されたユーザまたは装置のグループおよび随伴者の情報を知識解析手段に出力することにより、知識解析手段からユーザまたは装置のグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を入力し、当該ユーザ識別情報または当該装置識別情報と、更新グループ等通知手段から通知されたユーザ識別情報または装置識別情報とに基づいてアクセス制御ポリシを特定し、特定したアクセス制御ポリシに記述されたグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を知識解析手段に出力することにより、知識解析手段から各ユーザ識別情報または各装置識別情報に応じた各ユーザまたは各装置の現在位置識別情報を入力し、入力した情報とアクセス制御ポリシに記述された条件とに基づいて有効となるアクセス制御ポリシを判定し、ポリシ解析手段が、有効と判定されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する構成であってもよい。そのような構成によれば、ユーザや随伴者の移動に伴って、ユーザと随伴者とが特定の関係にあることを条件に有効となるアクセス制御ポリシを選別し、条件を満たした有効なアクセス制御ポリシに基づくアクセス制御を行うことができる。
【００１８】
ポリシエンジンに接続されている複数のアクセス制御装置の稼働状況に関する情報を保持し、アクセス制御装置の稼働状況が変化したときには、当該アクセス制御装置の識別情報と変化後の稼働状況の情報とを含む構成情報を知識データベースに通知するシステム構成管理手段を備え、知識格納手段が、各アクセス制御装置の識別情報と稼働状況との関係を示す情報を、各アクセス制御装置の識別情報から稼働状況への経路を有する有向グラフとして記憶し、知識データベースが、システム構成管理手段から通知される構成情報に基づいて、有向グラフを更新する稼働状況更新手段を含み、更新グループ等通知手段が、稼働状況更新手段によって有向グラフが更新された場合に、更新部分に関わるアクセス制御装置の識別情報をポリシエンジンに通知し、ポリシ特定手段が、更新グループ等通知手段から通知されたアクセス制御装置の識別情報に基づいてアクセス制御ポリシを特定し、ポリシ解析手段が、ポリシ特定手段によって特定されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成する構成であってもよい。そのような構成によれば、アクセス制御装置の稼働状況の変化に伴うアクセス制御リストの更新を効率的に行うことができる。
【００１９】
知識データベースが、知識格納手段に任意のグループ、位置またはリソースから有向グラフを探索させて、ユーザ識別情報または装置識別情報の集合、アクセス元識別情報の集合、またはアクセス先識別情報の集合を抽出する知識管理手段を含む構成であってもよい。
【００２０】
知識データベースが、知識格納手段が記憶している有向グラフを編集するためのユーザインタフェースを提供する有向グラフ編集手段を含む構成であってもよい。
請求項４から請求項８のうちのいずれか１項に記載のアクセス制御システム。
【００２１】
有向グラフ編集手段が、一のグループから経路を延ばす他のグループを選択する選択欄と、一のグループから経路を延ばすユーザ識別情報または装置識別情報を入力する入力欄と、一のグループから経路が延ばされているユーザ識別情報または装置識別情報のうち、削除するユーザ識別情報または装置識別情報の指定欄とを有するユーザインタフェースを提供する構成であってもよい。
【００２２】
有向グラフ編集手段が、一の位置から経路を延ばす他の位置を選択する選択欄と、一の位置から経路を延ばすアクセス元識別情報を入力する入力欄と、一のグループから経路が延ばされているアクセス元識別情報のうち、削除するアクセス元識別情報の指定欄とを有するユーザインタフェースを提供する構成であってもよい。
【００２３】
有向グラフ編集手段が、一のリソースから経路を延ばす他のリソースを選択する選択欄と、一のリソースから経路を延ばすアクセス先識別情報を入力する入力欄と、一のグループから経路が延ばされているアクセス先識別情報のうち、削除するアクセス先識別情報の指定欄とを有するユーザインタフェースを提供する構成であってもよい。
【００２４】
ポリシエンジンが、知識データベースが記憶する情報を用いて、アクセス制御ポリシに記述された内容のうち少なくとも位置とリソースをそれぞれ、アクセス元識別情報、アクセス先識別情報に置換することによって、特定のアクセス制御装置に依存する記述を含まないルールの集合である中間言語を生成するポリシ解析手段と、生成された中間言語を、アクセス制御リストの設定対象となるアクセス制御装置の機種に応じたアクセス制御リストに変換し、当該アクセス制御リストをアクセス制御装置に設定するアクセス制御リスト設定手段とを含む構成であってもよい。
【００２５】
ポリシ解析手段が、更新されたアクセス制御ポリシに基づいて、中間言語を構成するルールを生成するとともに、ルールに生成元となったアクセス制御ポリシのＩＤを付与し、アクセス制御リスト設定手段が、アクセス制御リストの構成要素である行をルールに基づいて生成するとともに、行に生成元となったルールに付与されいるＩＤを付与し、ポリシ解析手段によって一部のルールが新たに生成された場合には、当該ルールに付与されたＩＤと同一のＩＤが付与されている行を更新する構成であってもよい。そのような構成によれば、アクセス制御リストを効率的に更新することができる。
【００２６】
ポリシエンジンが、アクセス制御ポリシに含まれる情報のうち、少なくともグループと位置とリソースを編集するためのユーザインタフェースを提供するポリシ編集手段を含む構成であってもよい。
【００２７】
ポリシ編集手段が、グループのリスト、位置のリスト、およびリソースのリストを表示し、各リストにおいてそれぞれグループ、位置、リソースの選択を受け付けるユーザインタフェースを提供する構成であってもよい。
【００２８】
ポリシエンジンが、アクセス制御ポリシに含まれる情報のうち、少なくともグループと位置とリソースと随伴者を編集するためのユーザインタフェースを提供するポリシ編集手段を含む構成であってもよい。
【００２９】
ポリシ編集手段が、リソースを使用するユーザまたは装置のグループのリスト、位置のリスト、リソースのリスト、および随伴者のグループのリストを表示し、各リストにおいてそれぞれユーザまたは装置のグループ、位置、リソース、随伴者のグループの選択を受け付けるユーザインタフェースを提供する構成であってもよい。
【００３０】
また、本発明によるアクセス制御システムは、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、リソースと当該リソースを識別可能なアクセス先識別情報との関係、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を記憶する知識データベースと、知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述するとともに、グループに応じたユーザまたは装置と重複するかあるいは異なるユーザまたは装置を随伴者として記述したアクセス制御ポリシを記憶し、有効なアクセス制御ポリシと知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成し、アクセス制御リストを既存のアクセス制御装置に設定するポリシエンジンと、各ユーザまたは各装置の現在位置の情報を保持し、ユーザまたは装置の移動にともなう現在位置の変化が生じたときには、少なくとも移動したユーザのユーザ識別情報または移動した装置の装置識別情報と移動先を識別可能な現在位置識別情報とを含む移動情報を知識データベースに通知するプレゼンス管理手段とを備え、知識データベースが、プレゼンス管理手段から通知される移動情報に基づいて、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を更新し、更新部分に関わるユーザ識別情報または装置識別情報をポリシエンジンに通知し、ポリシエンジンが、各アクセス制御ポリシに記述されたユーザまたは装置のグループおよび随伴者の情報を出力してユーザまたは装置のグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を入力し、当該ユーザ識別情報または当該装置識別情報と、知識データベースから通知されたユーザ識別情報または装置識別情報とに基づいてアクセス制御ポリシを特定し、特定したアクセス制御ポリシに記述されたグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を出力して各ユーザ識別情報または各装置識別情報に応じた各ユーザまたは各装置の現在位置識別情報を入力し、入力した情報とアクセス制御ポリシ毎に定められた条件とに基づいて有効となるアクセス制御ポリシを判定するポリシ特定手段を含むことを特徴とする。そのような構成によれば、ユーザや随伴者の移動に伴って、ユーザと随伴者とが特定の関係にあることを条件に有効となるアクセス制御ポリシを選別し、条件を満たした有効なアクセス制御ポリシに基づくアクセス制御を行うことができる。
【００３１】
ポリシエンジンが、アクセス制御ポリシに含まれる情報のうち、少なくともグループと位置とリソースと随伴者を編集するためのユーザインタフェースを提供するポリシ編集手段を含む構成であってもよい。
【００３２】
また、本発明によるアクセス制御方法は、知識データベースが、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、またはリソースと当該リソースを識別可能なアクセス先識別情報との関係を示す情報を記憶し、ポリシエンジンが、知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述したアクセス制御ポリシを記憶し、アクセス制御ポリシと知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成し、アクセス制御リストを既存のアクセス制御装置に設定することを特徴とする。
【００３３】
また、本発明によるアクセス制御方法は、知識データベースが、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、リソースと当該リソースを識別可能なアクセス先識別情報との関係、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を記憶し、ポリシエンジンが、知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述するとともに、グループに応じたユーザまたは装置と重複するかあるいは異なるユーザまたは装置を随伴者として記述したアクセス制御ポリシを記憶し、プレゼンス管理手段が、各ユーザまたは各装置の現在位置の情報を保持し、ユーザまたは装置の移動にともなう現在位置の変化が生じたときには、少なくとも移動したユーザのユーザ識別情報または移動した装置の装置識別情報と移動先を識別可能な現在位置識別情報とを含む移動情報を知識データベースに通知し、知識データベースが、プレゼンス管理手段から通知される移動情報に基づいて、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を更新し、更新部分に関わるユーザ識別情報または装置識別情報をポリシエンジンに通知し、ポリシエンジンが、各アクセス制御ポリシに記述されたユーザまたは装置のグループおよび随伴者の情報を出力してユーザまたは装置のグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を入力し、当該ユーザ識別情報または当該装置識別情報と、知識データベースから通知されたユーザ識別情報または装置識別情報とに基づいてアクセス制御ポリシを特定し、特定したアクセス制御ポリシに記述されたグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を出力して各ユーザ識別情報または各装置識別情報に応じた各ユーザまたは各装置の現在位置識別情報を入力し、入力した情報とアクセス制御ポリシ毎に定められた条件とに基づいて有効となるアクセス制御ポリシを判定し、ポリシエンジンが、有効と判定したアクセス制御ポリシと知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成し、アクセス制御リストを既存のアクセス制御装置に設定することを特徴とする。そのような方法によれば、ユーザや随伴者の移動に伴って、ユーザと随伴者とが特定の関係にあることを条件に有効となるアクセス制御ポリシを選別し、条件を満たした有効なアクセス制御ポリシに基づくアクセス制御を行うことができる。
【００３４】
また、本発明によるアクセス制御プログラムは、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、またはリソースと当該リソースを識別可能なアクセス先識別情報との関係を示す情報を記憶する知識データベースに接続され、知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述したアクセス制御ポリシを記憶するポリシ記憶手段を備えたコンピュータに、アクセス制御ポリシと知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成する処理、およびアクセス制御リストを既存のアクセス制御装置に設定させる処理を実行させることを特徴とする。
【００３５】
また、本発明によるアクセス制御プログラムは、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、リソースと当該リソースを識別可能なアクセス先識別情報との関係、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報を記憶する知識データベースと接続され、知識データベースが記憶する情報に含まれる情報のうちの少なくともグループと位置とリソースを記述するとともに、グループに応じたユーザまたは装置と重複するかあるいは異なるユーザまたは装置を随伴者として記述したアクセス制御ポリシを記憶するポリシ記憶手段を備えたコンピュータに、各ユーザのユーザ識別情報または各装置の装置識別情報と各ユーザまたは各装置の現在位置識別情報との関係を示す情報における更新部分に関わるユーザ識別情報または装置識別情報をポリシエンジンから入力する更新情報入力処理、各アクセス制御ポリシに記述されたユーザまたは装置のグループおよび随伴者の情報を出力してユーザまたは装置のグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を入力する識別情報入力処理、識別情報入力処理で入力したユーザ識別情報または装置識別情報と、更新情報入力処理で入力したユーザ識別情報または装置識別情報とに基づいてアクセス制御ポリシを特定する特定処理、特定したアクセス制御ポリシに記述されたグループおよび随伴者に応じた各ユーザ識別情報または各装置識別情報を出力して各ユーザ識別情報または各装置識別情報に応じた各ユーザまたは各装置の現在位置識別情報を入力する現在位置識別情報入力処理、入力した情報とアクセス制御ポリシ毎に定められた条件とに基づいて有効となるアクセス制御ポリシを判定する有効ポリシ判定処理、有効なアクセス制御ポリシと知識データベースが記憶する情報とを用いて、アクセス元からアクセス先へのアクセスの可否を示すアクセス制御リストを生成するリスト生成処理、および、アクセス制御リストを既存のアクセス制御装置に設定させる処理を実行させることを特徴とする。
【発明の効果】
【００３６】
本発明によれば、少なくともアクセス先となるリソースを使用するユーザまたは装置のグループと当該ユーザまたは当該装置を識別可能なユーザ識別情報または装置識別情報との関係、リソースへのアクセス元となる位置と当該位置を識別可能なアクセス元識別情報との関係、およびリソースと当該リソースを識別可能なアクセス先識別情報との関係を示す情報を記憶する知識データベースを備え、ユーザまたは装置が一つのグループにのみ属するという制限がないため、複数の組織に属するユーザをメンバとして含んでいるユーザグループについてのアクセス制御リストを生成できる。
【発明を実施するための最良の形態】
【００３７】
以下、発明を実施するための最良の形態を図面を参照して説明する。最初に、本発明の説明に用いる用語について説明する。
【００３８】
「アクセス制御リスト」は、あるアクセス元からあるアクセス先へのアクセスを認めるか否かを示す情報のリストである。リストとして列挙される情報は、１行毎に記述されることが一般的である。よって、リストとして列挙される個々の情報（あるアクセス元からあるアクセス先へのアクセスを認めるか否かを示す個々の情報）を「行」と記すことにする。ただし、リストとして列挙される情報は、必ず行毎に記述されなければならないわけではない。また、後述する「中間言語」が特定のアクセス制御装置に依存しない記述形式で表されるのに対し、アクセス制御リストは、各種アクセス制御装置に依存した記述形式で表される。
【００３９】
「アクセス制御ポリシ」は、アドホックグループにリソース（アクセス先）を共有させるための設定情報の集合である。また、「アドホックグループ」は、定められた属性を有するユーザをグループ化したものである。アドホックグループに属するユーザは、固定的に定められず、動的に変化する。すなわち、あるユーザが、定められた属性を有することになったならばアドホックグループに属することとなり、その属性を失ったならばアドホックグループから外されることとなる。ユーザの属性として、例えば、ユーザが属しているユーザグループ、ユーザの位置、ユーザがリソースにアクセス可能な時刻（時間帯）等がある。アクセス制御ポリシの記述には、例えば、ユーザグループ、ユーザの位置、リソースの名称や、ユーザがリソースにアクセス可能な時刻（時間帯）等が含まれる。ユーザグループの具体例としては、部課等の所属、プロジェクトチーム、役職等が挙げられる。ユーザの位置の具体例としては、事業所や部屋等が挙げられる。リソースの具体例としては、アクセス先となる装置、ファイル、アプリケーションソフトウェア等が挙げられる。なお、ここに示した時刻等以外の属性をアドホックグループに属するための条件として定めてもよい。例えば、「ユーザが何をしているところか、またはユーザ自身の状況」をユーザの属性としてもよい。より具体的には、「電話中」、「接客・打ち合わせ中」、「食事中」、「通勤中」、「睡眠・仮眠中」、「多忙」等をユーザの属性としてもよい。また、例えば、「ワークフロー（作業の進行状況）」をユーザの属性としてもよい。より具体的には、「〜の作業を終えた」、「チェックを通過した」、「〜の段階まで進んだ」、「〜を所持・携帯している」等をユーザの属性としてもよい。また、例えば、「ユーザが使用しているシステムの環境」をユーザの属性としてもよい。より具体的には、「ＯＳの種類・バージョン」、「パッチ・ウィルスチェックの状態」、「ハードウェアやソフトウェアの構成・導入・環境」等をユーザの属性としてもよい。
【００４０】
「オブジェクト」とは、アクセス制御ポリシに記述された内容（例えば、ユーザグループ、位置、リソース等）を表すデータや、そのデータに関連付けられたデータである。「オブジェクト」のうち、ユーザグループ、位置、リソース等のアクセス制御ポリシに記述された内容を表すオブジェクトを「名前型オブジェクト」と記すことにする。また、「オブジェクト」のうち、「名前型オブジェクト」に関連付けられたオブジェクトを「実体型オブジェクト」と記すことにする。例えば、ユーザグループの名称である「開発チーム」、「チームリーダ」等は、名前型オブジェクトに該当する。そして、「チームリーダ」という名前型オブジェクトに「i-takahashi 」、「s-watanabe」等の個人のＩＤが関連付けられている場合、このＩＤが実体型オブジェクトに該当する。また、位置の名称である「本社会議室Ａ」等は、名前型オブジェクトに該当する。そして、「本社会議室Ａ」という名前型オブジェクトにアクセス元のＩＰアドレス「1.1.1.0/24」が関連付けられている場合、このアクセス元のＩＰアドレスが実体型オブジェクトに該当する。また、リソースの名称である「関西オフィス共有資料サーバ」等は、名前型オブジェクトに該当する。そして、「関西オフィス共有資料サーバ」という名前型オブジェクトにアクセス先のＩＰアドレス「9.9.9.9」およびポート番号「８０」および「４４３」が関連付けられている場合、このアクセス先のＩＰアドレスおよびポート番号の組み合わせが実体型オブジェクトに該当する。なお、名前型オブジェクトは、ユーザグループ、位置、リソースの名称に限定されるわけではない。同様に、実体型オブジェクトは、個人のＩＤ、アクセス元のＩＰアドレス、アクセス先のＩＰアドレスとポート番号の組み合わせに限定されるわけではない。アクセス元のＩＰアドレスやネットワークドメイン、ポート番号やプロトコルなどを、位置を表す名前型オブジェクトに関連付けられる実体型オブジェクトとしてよい。また、アクセス先のＩＰアドレスやネットワークドメイン、ポート番号やプロトコル、ＵＲＬやファイルパス、操作や権限等を、リソースを表す名前型オブジェクトに関連付けられる実体型オブジェクトとしてよい。
【００４１】
アクセス元となる位置の名前型オブジェクトには、その位置を識別可能なアクセス元識別情報が実体型オブジェクトとして関連付けられる。また、アクセス先となるリソースの名前型オブジェクトには、そのリソースを識別可能なアクセス先識別情報が実体型オブジェクトとして関連付けられる。
【００４２】
「オブジェクト知識」は、オブジェクトと、オブジェクト同士の関係を示すデータである。図１は、オブジェクト知識のデータ構造の例を示す説明図である。図１に示すように、オブジェクト知識には、名前型オブジェクトおよび実体型オブジェクトが含まれ、さらにオブジェクト同士の関係（具体的には、オブジェクトから他のオブジェクトへの経路）の情報が含まれる。この経路は方向性を有する。従って、オブジェクト知識は有向グラフとして表される。図１に示すように、名前型オブジェクトは、他の名前型オブジェクトまたは実体型オブジェクトへの経路を０個以上有する。異なる名前型オブジェクトが、それぞれ同一の名前型オブジェクトまたは実体型オブジェクトへの経路を有していてもよい。実体型オブジェクトは、名前型または実体型に関わらず、他のオブジェクトへの経路を持たない。
【００４３】
ただし、実体型オブジェクトと同一内容のオブジェクトを名前型オブジェクトに含め、その名前型オブジェクトから実体型オブジェクトへの経路を持たせることにより、実質的に実体型オブジェクトが実体型オブジェクトへの経路を持っているのと同様のオブジェクト知識を作成してもよい。例えば、「s-watanabe」等の個人のＩＤをユーザグループの名称であるとみなして名前型オブジェクトとし、「s-watanabe」から「k-satou 」への経路を持たせるようにしてもよい。
【００４４】
また、ある名前型オブジェクトを起点として、実体型オブジェクトへ向かう経路を探索し、実体型オブジェクトの集合を得ること「展開」と記す。名前型オブジェクトを起点として実体型オブジェクトを得る過程で、名前型オブジェクトを辿ってもよい。探索の手法としては、例えば、深さ優先探索や幅優先探索を採用すればよい。ただし、探索手法はこれらに限定されるわけではない。図２は、展開の例を示す説明図である。図２に示す例では名前型オブジェクト「Ｅ」を起点として展開する場合の例を示している。名前型オブジェクト「Ｅ」は、名前型オブジェクト「Ｆ」および「Ｇ」への経路を有している。そして、名前型オブジェクト「Ｆ」は、実体型オブジェクト「γ」、「δ」および「ε」への経路を有し、名前型オブジェクト「Ｇ」は、実体型オブジェクト「ε」および「ζ」への経路を有している。従って、図２に示す例では、名前型オブジェクト「Ｅ」を起点とする展開によって、実体型オブジェクト「γ」、「δ」、「ε」および「ζ」が得られることになる。なお、既に探索した実体型オブジェクトに辿り着いた場合、その実体型オブジェクトを重複して取得することは行わない。例えば、図２に示す例において、名前型オブジェクト「Ｆ」からの探索により実体型オブジェクト「ε」を得ているとする。この場合、名前型オブジェクト「Ｇ」からの探索により再び実体型オブジェクト「ε」を得たならば、「Ｇ」からの探索により得た「ε」は破棄して、「ε」を重複して取得しないようにする。また、既に通過した名前型オブジェクトに再度辿り着いた場合、その名前型オブジェクトからの探索は行わない。例えば、図２に示す例では、名前型オブジェクト「Ｆ」は、名前型オブジェクト「Ｇ」への経路を有している。既に、名前型オブジェクト「Ｅ」から「Ｇ」を辿り、実体型オブジェクト「ε」および「ζ」を得ている場合に、名前型オブジェクト「Ｆ」から「Ｇ」に辿り着いたならば、その名前型オブジェクト「Ｇ」からの探索は行わない。
【００４５】
オブジェクト知識が変更されると、展開によって得られる実体型オブジェクトが変化する。図１に示す例において、名前型オブジェクト「Ｇ」が実体型オブジェクト「α」への経路を有するように変更されたとする。すると、名前型オブジェクト「Ｇ」から展開される実体型オブジェクトの集合には「ε」および「ζ」の他に「α」が追加される。また、名前型オブジェクト「Ｇ」を辿ることになる他の名前型オブジェクト（図１に示す例では「Ｅ」および「Ｆ」）から展開される実体型オブジェクトの集合にも「α」が追加されることになる。このとき、経路が変更された名前型オブジェクト（本例では「Ｇ」）のことを、「直接更新された名前型オブジェクト」と記す。また、「直接更新された名前型オブジェクト」を辿ることになる名前型オブジェクト（本例では「Ｅ」および「Ｆ」）のことを、「間接的に更新された名前型オブジェクト」と記す。
【００４６】
図１および図２に示すように、オブジェクト知識は木構造ではない。また、木構造では起点となるルートを一つだけ有するが、オブジェクト知識では、どの名前型オブジェクトも探索の起点となる。
【００４７】
図３は、オブジェクト知識の具体例を示す。図３では、名前型オブジェクトとしてユーザグループの名称を有し、実体型オブジェクトとして個人のＩＤを有するオブジェクト知識を例示している。図３に示すオブジェクト知識において、名前型オブジェクト「新システム導入プロジェクトメンバ」を起点に展開する場合を説明する。「新システム導入プロジェクトメンバ」は、２つの名前型オブジェクト「システム設計折衝メンバ」および「システム経費折衝メンバ」への経路を有している。さらに、この二つの名前型オブジェクトは、いずれも名前型オブジェクト「システム管理者」への経路を有している。そして、「システム設計折衝メンバ」、「システム経費折衝メンバ」および「システム管理者」は、それぞれ実体型オブジェクト「i-takahashi 」、「s-watanabe」、「m-itou」への経路を有している。従って、「新システム導入プロジェクトメンバ」を起点に展開する場合、実体型オブジェクト「i-takahashi 」、「s-watanabe」および「m-itou」が得られる。
【００４８】
また、名前型オブジェクトとしてユーザの位置の名称を有し、実体型オブジェクトとしてアクセス元のＩＰアドレスを有するオブジェクト知識（図示せず。）を例に説明する。この場合、例えば、名前型オブジェクト「本社オフィス会議室Ａ」を展開した場合、「1.1.1.0/24」等のＩＰアドレスが得られ、「関西オフィス討議室Ｂ」を展開した場合、「2.2.2.192/26」および「3.3.3.192/26」等のＩＰアドレスが得られる。同様に、名前型オブジェクトとしてリソースの名称を有し、実体型オブジェクトとしてアクセス先のＩＰアドレスとポート番号の組み合わせを有するオブジェクト知識（図示せず。）を例に説明する。この場合、例えば、名前型オブジェクト「本社共有資料サーバ」を展開すると、ＩＰアドレス「7.7.7.7 」とポート番号「１３８」、「１３９」との組み合わせ、およびＩＰアドレス「8.8.8.8 」とポート番号「８０」との組み合わせが得られる。なお、ここに示した位置やリソースの名称、各ＩＰアドレスおよび各ポート番号は例示である。
【００４９】
「中間言語」は、特定のアクセス制御装置に依存しない記述形式で書かれたアクセス制御の設定情報である。中間言語は、一つまたは複数のルールを含み、各ルールにはアクセス元とアクセス先の組み合わせを含んでいる。中間言語は、アクセス制御ポリシから生成される。そして、中間言語から、アクセス制御リストが生成される。図４は、アクセス制御ポリシからアクセス制御リストが生成される概念を示す概念図である。図４に示すように、一つのアクセス制御ポリシからは、一つまたは複数のルールが生成される。このルールの集合が中間言語となる。また、一つのルールからは、一つまたは複数の行が生成される。この行の集合がアクセス制御リストとなる。
【００５０】
以下、本発明の各実施の形態について説明する。
【００５１】
実施の形態１．
図５は、本発明によるアクセス制御システムの第１の実施の形態を示すブロック図である。図５に示すアクセス制御システムは、プログラム制御により動作するコンピュータであるポリシエンジン１１と、一つあるいは複数のデータ格納手段である知識データベース２１と、アクセス制御装置３１とを備えている。ここでは、ポリシエンジン１１と、知識データベース２１と、アクセス制御装置３１とがそれぞれ別個のコンピュータである場合を例に説明する。
【００５２】
アクセス制御装置３１は、例えば、アクセス制御リストに従ってアクセス制御を行う装置であればよい。例えば、ファイアウォールや、ＶＰＮゲートウェイ等の認証機能を有するアクセス制御装置や、外部から記憶しているファイルへのアクセス制御を行うサーバ装置等が、アクセス制御装置３１に該当する。この点は、後述する他の実施の形態においても同様である。
【００５３】
ポリシエンジン１１は、ポリシ編集手段１０１１と、ポリシ格納手段１０２１と、ポリシ解析手段１０３１と、アクセス制御リスト設定手段１０６１とを含む。知識データベース２１は、オブジェクト知識管理手段２０２１と、オブジェクト知識格納手段２０３１とを含む。アクセス制御装置３１は、アクセス制御リスト格納手段３０１１と、アクセス制御手段３０２とを含む。
【００５４】
ポリシ編集手段１０１１は、オブジェクト知識管理手段２０２１から得たオブジェクト知識を用いて、動的に変化するアドホックグループに対するアクセス制御を表現できるアクセス制御ポリシの編集を行うためのユーザインタフェースをユーザに提供する。そして、ポリシ編集手段１０１１は、ユーザの操作に応じて、ポリシ格納手段１０２１に対して、アクセス制御ポリシの検索、参照、追加、修正、削除の指示を行う。アクセス制御ポリシが追加、修正、削除されると、ポリシ編集手段１０１１は、ポリシ解析手段１０３１に対して、アクセス制御ポリシの更新通知を出力する。
【００５５】
ポリシ格納手段１０２１は、内部的に不揮発性メモリまたはハードディスク等の二次記憶手段を有する。そして、ポリシ編集手段１０１１からアクセス制御ポリシを受取り、その記憶手段にアクセス制御ポリシを格納する。また、ポリシ格納手段１０２１は、ポリシ編集手段１０１１からの指示に応じて、アクセス制御ポリシの検索、参照、追加、修正、削除を行う。また、ポリシ格納手段１０２１は、ポリシ解析手段１０３１からの指示に応じて、格納しているアクセス制御ポリシをポリシ解析手段１０３１に出力する。
【００５６】
ポリシ解析手段１０３１は、ポリシ編集手段１０１１から更新通知を受け取ると、ポリシ格納手段１０２１に格納されたアクセス制御ポリシを読み込む。そして、ポリシ解析手段１０３１は、読み込んだアクセス制御ポリシに記載された名前型オブジェクトを、オブジェクト知識管理手段２０２１を介して得た実体型オブジェクトの集合に置き換えながら、中間言語を生成する。ポリシ解析手段１０３１は、生成した中間言語をアクセス制御リスト設定手段１０６１に出力する。
【００５７】
アクセス制御リスト設定手段１０６１は、ポリシ解析手段１０３１から中間言語を受け取り、アクセス制御装置３１において用いられるアクセス制御リストを中間言語から生成する。アクセス制御リスト設定手段１０６１は、アクセス制御リスト格納手段３０１１にアクセス制御リストを出力し、アクセス制御リスト格納手段３０１１に記憶されている既存のアクセス制御リストを、中間言語から生成したアクセス制御リストに置換えて更新する。アクセス制御リスト設定手段１０６１は、アクセス制御リストを更新した後、アクセス制御手段３０２にアクセス制御の設定変更を指示する。
【００５８】
ポリシ編集手段１０１１は、例えば、プログラムに従って動作するＣＰＵ、入力装置（キーボードやマウス等）および出力装置（ディスプレイ装置等）によって実現される。ポリシ格納手段１０２１は、例えば、プログラムに従って動作するＣＰＵと記憶装置によって実現される。ポリシ解析手段１０３１は、例えば、プログラムに従って動作するＣＰＵによって実現される。アクセス制御リスト設定手段１０６１は、例えば、プログラムに従って動作するＣＰＵと、アクセス制御装置３１との通信インタフェースとによって実現される。ここに挙げた各手段を実現するためのＣＰＵは、共通のＣＰＵであってよい。この点は、後述する他の実施の形態においても同様である。
【００５９】
アクセス制御リスト格納手段３０１１は、アクセス制御装置３１において用いられるアクセス制御リストを格納する記憶装置を有する。アクセス制御リスト格納手段３０１１は、アクセス制御リスト設定手段１０６１から指示やアクセス制御リストを受け取り、格納しているアクセス制御リストの更新を行う。また、アクセス制御リスト格納手段３０１１は、アクセス制御手段３０２からの指示に応じて、格納しているアクセス制御リストをアクセス制御手段３０２に出力する。
【００６０】
アクセス制御手段３０２は、アクセス制御リスト設定手段１０６１からアクセス制御の設定変更の指示を受け取ると、アクセス制御リスト格納手段３０１１に記憶されているアクセス制御リストを読み込み、その内容に従ってアクセス制御の設定を変更する。そして、変更した設定に従って、実際にネットワーク接続のアクセス制御を行う。
【００６１】
アクセス制御リスト格納手段３０１１は、例えば、プログラムに従って動作するＣＰＵ、記憶装置およびポリシエンジン１１との通信インタフェースによって実現される。アクセス制御手段３０２は、プログラムに従って動作するＣＰＵ、およびポリシエンジン１１との通信インタフェースによって実現される。ここに挙げた各手段を実現するためのＣＰＵは、共通のＣＰＵであってよい。この点は、後述する他の実施の形態においても同様である。
【００６２】
オブジェクト知識管理手段２０２１は、ポリシ編集手段１０１１やポリシ解析手段１０３１からの名前型オブジェクトのリストの要求や、名前型オブジェクトから展開される０個以上の実体型オブジェクト集合の要求などに応じて、オブジェクト知識格納手段２０３１に対して、オブジェクト知識の検索、参照を指示する。そして、オブジェクト知識格納手段２０３１から得られた結果を、ポリシ編集手段１０１１やポリシ解析手段１０３１に出力する。
【００６３】
オブジェクト知識格納手段２０３１は、オブジェクト知識を格納する記憶装置を備える。オブジェクト知識格納手段２０３１は、オブジェクト知識管理手段２０２１からの指示に応じて、格納しているオブジェクト知識の検索、参照を行い、オブジェクト知識管理手段２０２１に検索等の結果を出力する。オブジェクト知識格納手段２０３１は、名前型オブジェクトとしてグループの名称を有するオブジェクト知識、名前型オブジェクトとして位置の名称を有するオブジェクト知識、または名前型オブジェクトとしてリソースの名称を有するオブジェクト知識を格納する。これらの各オブジェクト知識をそれぞれ格納していてもよい。また、ここに挙げたオブジェクト知識以外のオブジェクト知識を格納していてもよい。
【００６４】
オブジェクト知識管理手段２０２１は、例えば、プログラムに従って動作するＣＰＵ、およびポリシエンジン１１との通信インタフェースによって実現される。オブジェクト知識格納手段２０３１は、例えば、プログラムに従って動作するＣＰＵ、および記憶装置によって実現される。ここに挙げた各手段を実現するためのＣＰＵは、共通のＣＰＵであってよい。この点は、後述する他の実施の形態においても同様である。
【００６５】
第１の実施の形態によるアクセス制御システムは、上記のような構成により、ポリシ編集手段１０１１が提供するユーザインタフェースを介してアクセス制御ポリシを編集されると、オブジェクト知識を使用してアクセス制御ポリシから中間言語を生成する。そして、その中間言語からアクセス制御リストを生成する。
【００６６】
次に、アクセス制御ポリシ、中間言語およびアクセス制御リストの具体例について説明する。図６は、アクセス制御ポリシの具体例を示す説明図である。アクセス制御ポリシは、個々のアクセス制御ポリシを特定するＩＤを有する。なお、各アクセス制御ポリシのＩＤは、各アクセス制御ポリシが新規に作成されたときにポリシ編集手段１０１１（またはポリシ格納手段１０２１でもよい。）が割り当てる。アクセス可否は、ユーザグループ、位置およびリソースの条件が満たされた場合にアクセスを許可するのか否かを示す。ユーザグループ、位置（アクセス元となるユーザの位置）、リソース（アクセス先となるリソース）には、それぞれ０個以上の名前型オブジェクトが記述される。なお、名前型オブジェクトが０個の場合、位置等に該当する実体型オブジェクトがないことを明示的に表している。アクセス制御ポリシに記述される名前型オブジェクトは、知識データベース２１に格納されているオブジェクト知識の中に含まれている。
【００６７】
図７は、中間言語の具体例を示す説明図である。中間言語は、生成元のアクセス制御ポリシを特定するＩＤを有する。また、アクセスを許可するのか否かを示すアクセス可否を有する。さらに、中間言語は、アクセス制御ポリシに記述されたユーザグループから展開されたユーザ個人のＩＤ（以下、ユーザＩＤと記す。）を有する。また、アクセス制御ポリシに記述された位置から展開されたアクセス元の情報（例えば、アクセス元のＩＰアドレスやポート番号やプロトコル等）を有する。また、アクセス制御ポリシに記述されたリソースから展開されたアクセス先の情報（例えば、アクセス先のＩＰアドレスやポート番号やプロトコル等）を有する。
【００６８】
図７に示すユーザＩＤ「ＵｓｅｒＡ」および「ＵｓｅｒＢ」は、図６に示す「ポリシ会議メンバから展開された実体型オブジェクトである。同様に、図７にアクセス元の情報「1.1.1.0/255.255.255.0 」等は、図６に示す「本社オフィス会議室Ａ」等から展開された実体型オブジェクトである。また、図７に示す「3.3.3.3:138(tcp)」は、「本社資料ファイルサーバ」等から展開された実体型オブジェクトである。
【００６９】
図８は、アクセス制御リストの具体例を示す説明図である。図８に示す例では、アクセス制御リストでは、アクセス可否と、プロトコルと、アクセス元ＩＰアドレスと、アクセス先ＩＰアドレスと、アクセス元ポート番号と、アクセス先ポート番号と、ユーザＩＤとの、１つずつの組を行とする。そして、行の集合がアクセス制御リストとなる。中間言語に含まれる「アクセス可否」、「ユーザＩＤ」、「アクセス元」、「アクセス先」から一つずつの要素を抽出し、その要素の組み合わせによって各行が生成される。
【００７０】
なお、中間言語には、アクセス元となる実体型オブジェクトの集合と、アクセス先となる実体型オブジェクトの集合とを有するルールが含まれる。各ルールには、それぞれ生成元となるアクセス制御ポリシのＩＤが記述される。図７に示す例では、アクセス制御ポリシから生成された一つのルールのみを含んでいる場合を示している。図９は、アクセス制御ポリシの他の例を示している。そして、図１０および図１１は、図９に示すアクセス制御ポリシから生成された９個のルールを示している。このように、一つのアクセス制御ポリシからは１つまたは複数のルールが生成される。なお、図１２は、図１０および図１１に示す９個のルールから生成されたアクセス制御リストの例を示している。ただし、図１２は、９個のルールから生成されたアクセス制御リストの一部を抜粋して示したものである。
【００７１】
次に、動作について説明する。
図１３は、本実施の形態のアクセス制御システムの動作の例を示すフローチャートである。まず、ポリシ編集手段１０１１は、ユーザに対して、アクセス制御ポリシの編集を行うためのユーザインタフェースを提示する（ステップＡ１０）。図１４および図１５は、ステップＡ１０で提示するユーザインタフェースの例を示す。図１４は、アクセス制御ポリシの選択に用いられるユーザインタフェースである。図１５は、アクセス制御ポリシの編集用ユーザインタフェースである。ポリシ編集手段１０１１は、ステップＡ１０において、ユーザが参照、編集することのできる既存のアクセス制御ポリシのリストの中から参照または編集したいポリシを選べるように、ポリシ格納手段１０２１にアクセス制御ポリシのリストを要求し、ユーザインタフェース上でそのリストを表示する（図１４参照）。ポリシ編集手段１０１１は、図１４に示すようにリストと共に選択ボタン５１を表示し、ユーザにアクセス制御ポリシの選択を促す。
【００７２】
ポリシ編集手段１０１１は、選択されたアクセス制御ポリシをポリシ格納手段１０２１に要求し、図１５に例示するアクセス制御ポリシの編集用インタフェースを提示する。このとき、ポリシ編集手段１０１１は、ユーザグループ、位置およびリソースそれぞれに該当する名前型オブジェクトのリストをオブジェクト知識管理手段２０２１に要求し、オブジェクト知識管理手段２０２１から得た名前型オブジェクトのリストを表示する。なお、オブジェクト知識管理手段２０２１は、ポリシ編集手段１０１１からの要求に応じて、オブジェクト知識格納手段２０３１から名前型オブジェクトのリストを抽出し、ポリシ編集手段１０１１に出力する。
【００７３】
図１５に示す例では、ポリシ編集手段１０１１は、「ユーザグループの選択」欄に、ユーザグループの名前型オブジェクトのリストを選択ボタンと共に表示している。同様に、「位置の選択」欄、「リソースの選択」欄それぞれに、位置の名前型オブジェクトのリストおよび選択ボタン、リソースの名前型オブジェクトのリストおよび選択ボタンを表示している。このとき、ポリシ編集手段１０１１は、ポリシ格納手段１０２１から得たポリシ制御リストの記述内容に応じて、既に設定されている内容に該当する選択ボタンを所定の表示態様で表示する。図１５に示す例では、既に設定されている内容に該当する選択ボタンを黒色で表示している。ポリシ編集手段１０１１は、図１５に示す各選択ボタンをマウスクリックすることによりポリシ制御リストの内容を更新するようにユーザに促す。
【００７４】
なお、図１４に例示するユーザインタフェースにおいて「新規」が選択された場合、ポリシ編集手段１０１１は、ポリシ格納手段１０２１にアクセス制御ポリシを要求しなくてよい。また、オブジェクト知識管理手段２０２１から得た名前型オブジェクトのリストと共に表示する各選択ボタンは初期状態（例えば、白色表示の状態）とすればよい。
【００７５】
また、図１５に例示する「ポリシの説明」には、例えば、ユーザがアクセス制御ポリシを認識できるようなアクセス制御ポリシの名称が入力される。ポリシ編集手段１０１１は、図１５に示す「ポリシの説明」に入力された内容を、アクセス制御ポリシと対応させてポリシ格納手段１０２１に格納させる。ポリシ格納手段１０２１は、アクセス制御ポリシのリストを要求された場合には、「ポリシの説明」に入力されたアクセス制御ポリシの名称のリストを出力すればよい。すなわち、図１５に示す「ポリシの説明」に入力された記述内容のリストが図１４に示すユーザインタフェース上に表示されることになる。
【００７６】
ポリシ編集手段１０１１は、図１５に例示する「編集中止」ボタンがマウスクリックされたならば、編集用ユーザインタフェース上で編集された内容を破棄する。
【００７７】
また、ポリシ編集手段１０１１は、図１５に例示する「ポリシ決定」ボタンがマウスクリックされたならば、編集用ユーザインタフェース上で編集されたアクセス制御ポリシおよび追加、修正、削除の指示をポリシ格納手段１０２１に受け渡す。ポリシ格納手段１０２１は、ポリシ編集手段１０１１から受け取った指示に従ってアクセス制御ポリシを更新する。（ステップＡ２０）。
【００７８】
また、新規に作成されたアクセス制御ポリシに対しては、ポリシ編集手段１０１１（または、ポリシ格納手段１０２１でもよい。）は、アクセス可否の情報（図６参照）を付加する。アクセス可否の情報として、一律に「許可」を付与してもよいし、一律に「不許可」を付与してもよい。また、アクセス可否の情報を「許可」と「不許可」のいずれにするのかをユーザに入力させてもよい。
【００７９】
ポリシ編集手段１０１１は、アクセス制御ポリシが更新された後、ポリシ解析手段１０３１にアクセス制御ポリシの更新通知を受け渡す（ステップＡ３０）。ポリシ解析手段１０３１は、更新通知を受け取ると、ポリシ格納手段１０２１から、すべてのアクセス制御ポリシを読み出して、内容の解析を行う。そして、そのすべてのアクセス制御ポリシから得られるルールをすべて生成して、そのルールの集合である中間言語をアクセス制御リスト設定手段１０６１に受け渡す（ステップＡ４０）。
【００８０】
図１６は、ステップＡ４０の中間言語生成処理の処理経過の例を示すフローチャートである。ポリシ解析手段１０３１は、ポリシ編集手段１０１１から、更新通知を受け取る（ステップＡ４０１）。ポリシ解析手段１０３１は、ポリシ格納手段１０２１から、すべてのアクセス制御ポリシを読み込む（Ａ０４０２）。ポリシ解析手段１０３１は、読み込んだアクセス制御ポリシの中に未展開の名前型オブジェクトがあるかどうかを判別する（ステップＡ４０３）。未展開の名前型オブジェクトがあった場合、ポリシ解析手段１０３１は、オブジェクト知識管理手段２０２１に対して、その名前型オブジェクトを受け渡し、その名前型オブジェクトを起点とする展開を要求する（ステップＡ４０４）。
【００８１】
オブジェクト知識管理手段２０２１は、ポリシ解析手段１０３１から名前型オブジェクトを受け取り、その名前型オブジェクトを起点としてオブジェクト知識格納手段に展開を行わせ、実体型オブジェクトの集合を得る（ステップＡ４０５）。すなわち、実体型オブジェクトへ向かう経路を探索し、実体型オブジェクトの集合を得る。このときの探索手法は、既に述べたとおり、深さ優先探索や幅優先探索を採用すればよい。例えば、オブジェクト知識管理手段２０２１は、既に探索した実体型オブジェクトに辿り着いた場合、その実体型オブジェクトを重複して取得することは行わない。また、また、既に通過した名前型オブジェクトに再度辿り着いた場合、その名前型オブジェクトからの探索は行わない。
【００８２】
オブジェクト知識管理手段２０２１は、展開によって０個以上の実体型オブジェクトの集合を得たならば、その集合をポリシ解析手段１０３１に受け渡す。
【００８３】
ポリシ解析手段１０３１は、オブジェクト知識管理手段２０２１から実体型オブジェクトの集合を受け取り、アクセス制御ポリシ中に記述された名前型オブジェクトを、実体型オブジェクトの集合に置き換える。例えば、図６に示す「ポリシ会議メンバ」という名前型オブジェクトを、オブジェクト知識管理手段２０２１から受け取った「ＵｓｅｒＡ」および「ＵｓｅｒＢ」という実体型オブジェクトの集合に置き換える（ステップＡ４０６）。
【００８４】
ポリシ解析手段１０３１および知識データベース２１は、ステップＡ４０４〜Ａ４０６の処理を、ポリシ制御リスト中に未展開の名前型オブジェクトがなくなるまで繰り返す。この過程で、ユーザグループ、位置およびリソース等として記述された各名前型オブジェクトはいずれも実体型オブジェクトの集合に置き換えられる。ポリシ格納手段１０２１から読み込んだすべてのポリシ制御リスト中に未展開の名前型オブジェクトがなくなったならば（ステップＡ４０３のＮ）、ポリシ解析手段１０３１は、名前型オブジェクトから展開された実体型オブジェクトを含むアクセス制御ポリシを中間言語の記述形式に変換し、中間言語を生成する（ステップＡ４０７）。本実施形態では、ポリシ格納手段１０２１からすべてのアクセス制御ポリシを読み込み、そのアクセス制御ポリシに基づいて中間言語を生成している。従って、ステップＡ４０７で生成される中間言語には、すべてのアクセス制御ポリシから得られるルールがすべて含まれている。ポリシ解析手段１０３１は、生成した中間言語をアクセス制御リスト設定手段１０６１に受け渡す（ステップＡ４０８）。
【００８５】
続いて、アクセス制御リスト設定手段１０６１は、ポリシ解析手段１０３１から中間言語を受け取り、この中間言語を変換してアクセス制御リストを生成し、アクセス制御リスト格納手段３０１１に受け渡す（ステップＡ５０、図２参照。）。
【００８６】
図１７は、ステップＡ５０のアクセス制御リスト生成処理の処理経過の例を示すフローチャートである。アクセス制御リスト設定手段１０６１は、ポリシ解析手段１０３１から中間言語を受け取る（ステップＡ５０１）。アクセス制御リスト設定手段１０６１は、中間言語の中に後述のステップＡ５０３（組み合わせ生成処理）を行っていないルールがあるか否かを判別する（ステップＡ５０２）。組み合わせ生成処理を行っていないルールがある場合、アクセス制御リスト設定手段１０６１は、その中間言語のルールから、アクセス制御リストの行として記述することのできる各組み合わせを生成する（ステップＡ５０３）。組み合わせを生成する場合、ルールに含まれる実体型オブジェクトの集合に含まれる要素を、ユーザＩＤ、アクセス元およびアクセス先毎に１つずつ取り出す。そして、ユーザＩＤ、アクセス元およびアクセス先から１つずつ取り出した要素を組み合わせて一つの行とする。ただし、一つの要素となる項目は不変とは限らず、目的とするアクセス制御リストに応じて変わる。例えば、図７に例示した中間言語に含まれるルールでは、アクセス元に対応する要素は一つであり、アクセス元ＩＰアドレスが一つの要素となっている。また、アクセス先に対応する要素も一つであり、ＩＰアドレスとポート番号とプロトコルの組み合わせが一つの要素となっている。一方、図１０および図１１に例示した中間言語に含まれるルールでは、アクセス元に対応する要素は二つであり、ＩＰアドレスとポート番号がそれぞれ別々の要素となっている。また、アクセス先に対応する要素も二つであり、ＩＰアドレスが一つの要素となり、ポート番号とプロトコルの組み合わせがもう一つの要素となっている。
【００８７】
図７に例示する一つのルールからなる中間言語から、図８に例示するアクセス制御リストへ変換する場合を例に説明する。図７に例示するルールにおいて、ユーザＩＤに対応する要素の種類は２種類ある。同様に、アクセス元に対応する要素（ＩＰアドレス）の種類も２種類あり、アクセス先に対応する要素（ＩＰアドレスとポート番号とプロトコルの組み合わせ）は４種類ある。従って、ユーザＩＤ、アクセス元およびアクセス先から１つずつ取り出した要素を組み合わせて一つの行としていくと、図８に示すように１６の行が得られる。
【００８８】
別の具体例として、図１０および図１１に例示する９個のルールからなる中間言語から図１２に例示するアクセス制御リストへ変換する場合を説明する。ここでは、図１０に示す１番目のルールに着目して説明する。このルールでは、ユーザＩＤに対応する要素の種類として、「i-takahashi 」から「h-suzuki」までの５種類がある。アクセス元に対応する二つの要素のうちの一つ（ＩＰアドレス）の種類は１種類である。アクセス元に対応する二つの要素のうちの他方（ポート番号）の種類も１種類である。アクセス先に対応する二つの要素のうちの一つ（ＩＰアドレス）の種類は１種類である。アクセス先に対応する二つの要素のうちの他方（ポート番号とプロトコルの組み合わせ）の種類は、「１３７−１３８（ｕｄｐ）」等５種類ある。従って、これらの各要素毎に得られる内容の組み合わせから図１２に例示する１行目から２５行目までの行が得られる。図１０および図１１に示す他のルールからも同様に行が得られる。
【００８９】
なお、ユーザＩＤの要素として得られる各内容を行毎に分けずに、１行にまとめて記述してもよい。例えば、図１０に示す１番目のルールにおける５種類のユーザＩＤを１つの行にまとめて記述してもよい。図１０および図１１に例示するルールから行を生成する際に、１つのルールに含まれるユーザＩＤを１行にまとめて記述するようにした場合の行の例を、図１８に示す。また、図１０および図１１に示すルールでは、アクセス先に対応する要素である「ポート番号とプロトコルの組み合わせ」として、「１３７−１３８（ｕｄｐ）」という内容がある。このように複数のポート番号を含む場合、「１３７（ｕｄｐ）」および「１３８（ｕｄｐ）」として分けて処理してもよい。
【００９０】
中間言語の中から組み合わせ生成処理（ステップＡ５０３）を行っていないルールがなくなったならば（ステップＡ５０２のＮ）、アクセス制御リスト設定手段１０６１は、生成された各組み合わせをアクセス制御リスト（行）の記述形式に変換し、アクセス制御リストを生成する（ステップＡ５０４）。中間言語には、すべてのアクセス制御ポリシから得られるルールがすべて含まれている。従って、アクセス制御リストには、すべてのルールに基づいて生成される行がすべて含まれている。アクセス制御リスト設定手段１０６１は、アクセス制御リストをアクセス制御リスト格納手段３０１１に受け渡す（ステップＡ５０５）。
【００９１】
続いて、アクセス制御リスト格納手段３０１１は、アクセス制御リスト設定手段１０６１からアクセス制御リスト受け取り、アクセス制御リスト格納手段３０１１に格納されている既存のアクセス制御リストを、受け取ったアクセス制御リストに置き換える（ステップＡ６０、図２参照。）。
【００９２】
アクセス制御リストが置き換えられた後、アクセス制御リスト設定手段１０６１は、アクセス制御手段３０２に対して、アクセス制御の設定を指示する。設定指示を受け取ったアクセス制御手段３０２は、アクセス制御リスト格納手段３０１１からアクセス制御リストを読み込んで、その内容に沿ったアクセス制御を実行する（Ａ０７０）。
【００９３】
本実施の形態では、編集や入力が判りやすく簡便なアクセス制御ポリシの編集を行うことにより、詳細で複雑なアクセス制御リストの生成を行うことができる。また、複数の名前型オブジェクトが同一の実体型オブジェクトへの経路を有するオブジェクト知識を用いて、ユーザグループからユーザＩＤへの展開を行う。従って、複数の組織に属するユーザをメンバとして含んでいるユーザグループについてのアクセス制御リストを生成できる。
【００９４】
実施の形態２．
図１９は、本発明によるアクセス制御システムの第２の実施の形態を示すブロック図である。図１９に示すアクセス制御システムは、プログラム制御により動作するコンピュータであるポリシエンジン１２と、一つあるいは複数のデータ格納手段である知識データベース２２と、アクセス制御装置３とを備えている。ここでは、ポリシエンジン１２と、知識データベース２２と、アクセス制御装置３とがそれぞれ別個のコンピュータである場合を例に説明する。
【００９５】
ポリシエンジン１２は、ポリシ編集手段１０１２と、ポリシ格納手段１０２２と、ポリシ解析手段１０３２と、アクセス制御リスト設定手段１０６２とを含む。知識データベース２２は、オブジェクト知識管理手段２０２２と、オブジェクト知識格納手段２０３２とを含む。アクセス制御装置３は、アクセス制御リスト格納手段３０１と、アクセス制御手段３０２を含む。
【００９６】
ポリシ編集手段１０１２、ポリシ格納手段１０２２、ポリシ解析手段１０３２およびアクセス制御リスト設定手段１０６２の構成および動作は、以下の点を除き、第１の実施の形態に示したポリシ編集手段１０１１、ポリシ格納手段１０２１、ポリシ解析手段１０３１およびアクセス制御リスト設定手段１０６１と同様である。ポリシ編集手段１０１２は、アクセス制御ポリシが新規に作成されたり変更されたりすると、そのアクセス制御ポリシのＩＤを含む更新通知をポリシ解析手段１０３２に出力する。ポリシ解析手段１０３２は、そのＩＤによって特定されるアクセス制御ポリシのみをポリシ格納手段１０２２から読み出し、そのアクセス制御ポリシに対応するルールのみを生成し、そのルールをアクセス制御リスト設定手段１０６２に出力する。アクセス制御リスト設定手段１０６２は、ポリシ解析手段１０３２から受け渡されたルールのみから行を作成し、アクセス制御リストのうちその行に相当する箇所のみの更新をアクセス制御リスト格納手段３０１に行わせる。
【００９７】
オブジェクト知識管理手段２０２２およびオブジェクト知識格納手段２０３２の構成および動作は、第１の実施の形態に示したオブジェクト知識管理手段２０２１およびオブジェクト知識格納手段２０３１と同様である。
【００９８】
アクセス制御リスト格納手段３０１およびアクセス制御手段３０２の構成および動作は、以下の点を除き、第１の実施の形態に示したアクセス制御リスト格納手段３０１１およびアクセス制御手段３０２と同様である。アクセス制御リスト格納手段３０１１は、第１の実施の形態のようにアクセス制御リスト全体を更新するのではなく、アクセス制御リストのうち、アクセス制御リスト設定手段１０６２に指定された行のみを更新する。
【００９９】
次に、動作について説明する。
図２０は、本実施の形態のアクセス制御システムの動作の例を示すフローチャートである。ここで、ポリシ格納手段１０２２には、複数のアクセス制御ポリシが格納されているものとする。また、各アクセス制御ポリシから生成される中間言語（ルール）およびアクセス制御リスト（行）には、生成元のアクセス制御ポリシのＩＤが、引き継がれて付与されるとする。
【０１００】
ポリシ編集手段１０１２は、ユーザに対して、アクセス制御ポリシの編集を行うためのユーザインタフェースを提示する（ステップＢ１０）。ユーザインタフェースの提示態様は、第１の実施の形態と同様である。ポリシ編集手段１０１２は、アクセス制御ポリシが編集されたならば、ポリシ格納手段１０２２に対して、編集されたアクセス制御ポリシや、追加、修正、削除の指示を受け渡す。ポリシ格納手段１０２２は、受け取った指示に従ってアクセス制御ポリシを更新する。（ステップＢ２０）。ステップＢ１０，Ｂ２０の動作は、ステップＡ１０，Ａ２０の動作と同様である。
【０１０１】
アクセス制御ポリシが更新された後、ポリシ編集手段１０１２は、ポリシ解析手段１０３２に対して、更新通知を受け渡す（ステップＢ３０）。このとき、ポリシ編集手段１０１２は、更新通知に、例えば、アクセス制御ポリシ、中間言語、アクセス制御リストなどの更新部分を特定するＩＤ（すなわち、更新されたアクセス制御ポリシのＩＤ）と、その更新部分に対して行われた操作の種類を含める。操作の種類には、例えば、追加、修正、削除などがある。ポリシ解析手段１０３２は、更新通知を受け取ると、アクセス制御リスト設定手段１０６２に対して、更新されたアクセス制御ポリシのＩＤを含んだ更新通知を受け渡す（ステップＢ４０）。
【０１０２】
アクセス制御リスト設定手段１０６２は、ポリシ解析手段１０３２から更新通知を受け取ると、アクセス制御リスト格納手段３０１に格納されているアクセス制御リストの中に、更新通知に含まれるＩＤが付与されている行が有るかどうかを判別する（ステップＢ５０）。更新通知に含まれるＩＤが付与されている行が存在する場合、アクセス制御リスト設定手段１６０２は、アクセス制御リスト格納手段３０１に格納されているアクセス制御リストから、その行を削除する（ステップＢ６０）。
【０１０３】
また、ポリシ解析手段１０３２は、更新通知に含まれる操作の種類を判別する（ステップＢ７０）。操作の種類が例えば追加、修正である場合、ポリシ解析手段１０３２は、ポリシ格納手段１０２２から、更新通知に含まれるＩＤから特定されるアクセス制御ポリシのみを読み出して解析を行い、そのアクセス制御ポリシに基づいてルールを生成する。そして、そのルールをアクセス制御リスト設定手段１０６２に受け渡す（ステップＢ８０）。ステップＢ８０では、更新通知に含まれるＩＤから特定されるアクセス制御ポリシのみに基づいてルールを生成する。従って、ステップＢ８０で生成されるルールは、図４に示す概念図における中間言語に含まれるルールのうちの一部である。
【０１０４】
図２１は、ステップＢ８０の中間言語の一部の生成処理の処理経過の例を示すフローチャートである。ポリシ解析手段１０３２は、ポリシ編集手段１０１２から、ＩＤを含んだ更新通知を受け取る（ステップＢ８０１）。なお、このステップＢ８０１の動作は、ステップＢ３０のポリシ編集手段１０１２の動作に応じたものである。
【０１０５】
ポリシ解析手段１０３２は、更新通知に含まれるＩＤによって特定されるアクセス制御ポリシのみをポリシ格納手段１０２２から読み込む（ステップＢ８０２）。ポリシ解析手段１０３２は、読み込んだアクセス制御ポリシの中に未展開の名前型オブジェクトがあるかどうかを判別する（ステップＢ８０３）。未展開の名前型オブジェクトがあった場合、ポリシ解析手段１０３２は、オブジェクト知識管理手段２０２２に対して、その名前型オブジェクトを受け渡し、その名前型オブジェクトを起点とする展開を要求する（ステップＢ８０４）。
【０１０６】
オブジェクト知識管理手段２０２２は、ポリシ解析手段１０３２から名前型オブジェクトを受け取り、その名前型オブジェクトを起点としてオブジェクト知識格納手段に展開を行わせ、実体型オブジェクトの集合を得る（ステップＢ８０５）。オブジェクト知識管理手段２０２２は、展開によって０個以上の実体型オブジェクトの集合を得たならば、その集合をポリシ解析手段１０３２に受け渡す。ポリシ解析手段１０３２は、オブジェクト知識管理手段２０２２から実体型オブジェクトの集合を受け取り、アクセス制御ポリシ中に記述された名前型オブジェクトを、実体型オブジェクトの集合に置き換える（ステップＢ８０６）。ステップＢ８０５，Ｂ８０６の動作は、ステップＡ４０５，Ａ４０６と同様である。
【０１０７】
ポリシ解析手段１０３１および知識データベース２１は、ステップＢ８０４〜Ｂ８０６の処理を、読み込んだポリシ制御リスト中に未展開の名前型オブジェクトがなくなるまで繰り返す。この過程で、更新通知に含まれるＩＤから特定されるアクセス制御ポリシ（すなわち、新規のまたは編集されたアクセス制御ポリシ）において、ユーザグループ、位置およびリソース等として記述された各名前型オブジェクトはいずれも実体型オブジェクトの集合に置き換えられる。ポリシ格納手段１０２２から読み込んだすべてのポリシ制御リスト中に未展開の名前型オブジェクトがなくなったならば（ステップＡ８０３のＮ）、ポリシ解析手段１０３２は、名前型オブジェクトから展開された実体型オブジェクトを含むアクセス制御ポリシを中間言語の記述形式に変換し、ルール（中間言語の一部）を生成する（ステップＡ８０７）。なお、ポリシ解析手段１０３２は、生成したルールに、生成元のアクセス制御ポリシのＩＤを付与する。ポリシ解析手段１０３２は、生成元のアクセス制御ポリシのＩＤを付与したルールをアクセス制御リスト設定手段１０６２に受け渡す（ステップＢ８０８）。
【０１０８】
続いて、アクセス制御リスト設定手段１０６２は、ポリシ解析手段１０３２からそのルールを受け取り、そのルールを変換して、アクセス制御リストの行を生成し、アクセス制御リスト格納手段３０１に受け渡す（ステップＢ９０、図２０参照。）。
【０１０９】
図２２は、ステップＢ９０の行生成処理の処理過程の例を示すフローチャートである。アクセス制御リスト設定手段１０６２は、ポリシ解析手段１０３２から、ルールを受け取る（ステップＢ９０１）。アクセス制御リスト設定手段１０６２は、受け取ったルールの中に後述のステップＢ９０３（組み合わせ生成処理）を行っていないルールがあるか否かを判別する（ステップＢ９０２）。組み合わせ生成処理を行っていないルールがある場合、アクセス制御リスト設定手段１０６２は、そのルールから、アクセス制御リストの行として記述することのできる各組み合わせを生成する（ステップＢ９０３）。ステップＢ９０３は、ステップＡ５０３と同様の処理である。
【０１１０】
ポリシ解析手段１０３２から受け取ったルールの中から組み合わせ生成処理（ステップＢ９０３）を行っていないルールがなくなったならば（ステップＢ９０２のＮ）、アクセス制御リスト設定手段１０６２は、生成された各組み合わせをアクセス制御リスト（行）の記述形式に変換し、行を生成する（ステップＢ９０４）。アクセス制御リスト設定手段１０６２は、生成した行に生成元のアクセス制御ポリシのＩＤを付与する。このＩＤは、ルールに引き継がれて付与されているので、行の生成元となったルールに付与されているＩＤを行に付与すればよい。なお、ステップＢ９０４で生成された行は、アクセス制御リストの一部となる。アクセス制御リスト設定手段１０６２は、生成した各行を、アクセス制御リスト格納手段３０１に受け渡す（ステップＢ９０５）。
【０１１１】
続いて、アクセス制御リスト格納手段３０１は、アクセス制御リスト設定手段１０６２から行を受け取り、アクセス制御リスト格納手段３０１に格納されている既存のアクセス制御リストに受け取った行を追加し、アクセス制御リストを更新する（ステップＢ１００、図２０参照。）。アクセス制御リストが更新されたことを受けて、アクセス制御リスト設定手段１０６２は、アクセス制御手段に対して、アクセス制御の設定を指示する。設定指示を受け取ったアクセス制御手段３０２は、アクセス制御リスト格納手段３０１からアクセス制御リストを読み込んで、その内容に沿ったアクセス制御を実行する（ステップＢ１１０）。
【０１１２】
また、更新通知に含まれる操作の種類の判別（ステップＢ７０）の結果が、例えば、削除だった場合、ポリシ解析手段１０３２は、アクセス制御リスト設定手段１０６２を介して、アクセス制御手段３０２にアクセス制御の設定処理（ステップＢ１１０）を実行させる。この場合、ステップＢ８０〜Ｂ１００の処理は行わない。
【０１１３】
本実施の形態では、新規のまたは編集されたアクセス制御ポリシに対応するルールおよび行のみを変更するので、アクセス制御リスト格納手段３０１に格納されるアクセス制御リストの更新処理の付加を大幅に減少させることができる。すなわち、アクセス制御リスト全体を更新するのではなく、新規のまたは編集されたアクセス制御ポリシに対応する行のみを差分更新するので処理量を大幅に減少させることができる。また、例えば、管理者が直接アクセス制御装置３１を操作して手作業によりアクセス制御リストの一部を書き換えることもある。本実施の形態では、このような態様によって書き換えられた行とは別の行に対応するアクセス制御ポリシが更新された場合、そのアクセス制御ポリシに応じた行のみが更新される。従って、管理者が手作業によって行を書き換えるような他の態様による書き換え部分は、そのまま残されることになる。従って、ポリシエンジン１２を用いた行の書き換えと、他の態様による行の書き換えとの独立性を向上させることができる。
【０１１４】
実施の形態３．
図２３は、本発明によるアクセス制御システムの第３の実施の形態を示すブロック図である。図２３に示すアクセス制御システムは、プログラム制御により動作するコンピュータであるポリシエンジン１３と、一つあるいは複数のデータ格納手段である知識データベース２３と、アクセス制御装置３とを備えている。ここでは、ポリシエンジン１３と、知識データベース２３と、アクセス制御装置３とがそれぞれ別個のコンピュータである場合を例に説明する。
【０１１５】
ポリシエンジン１３は、ポリシ格納手段１０２３と、ポリシ解析手段１０３３と、アクセス制御リスト設定手段１０６３とを含む。知識データベース２３は、オブジェクト知識編集手段２０１と、オブジェクト知識管理手段２０２３と、オブジェクト知識格納手段２０３とを含む。アクセス制御装置３の構成および動作は、第２の実施形態におけるアクセス制御装置３の構成および動作と同様である。
【０１１６】
オブジェクト知識編集手段２０１は、ユーザが、オブジェクト知識の編集を行うためのユーザインタフェースを提供する。オブジェクト知識編集手段２０１は、オブジェクト知識管理手段２０２３を介してオブジェクト知識格納手段２０３から、名前型オブジェクトのリストや、名前型オブジェクトから展開される実体型オブジェクトの集合を取得し、それらの情報に基づいて、オブジェクト知識の編集用ユーザインタフェースを構築する。オブジェクト知識編集手段２０１は、ユーザによって作成されたオブジェクトを、追加、修正、削除などの指示とともにオブジェクト知識管理手段２０２３に受け渡す。
【０１１７】
オブジェクト知識編集手段２０１は、例えば、プログラムに従って動作するＣＰＵ、入力装置（キーボードやマウス等）および出力装置（ディスプレイ装置等）によって実現される。知識データベース２３が備える各手段を実現するためのＣＰＵは、共通のＣＰＵであってよい。
【０１１８】
オブジェクト知識管理手段２０２３は、オブジェクト知識編集手段２０１から、検索、参照、追加、修正、削除などの要求、指示や、ユーザによって作成されたオブジェクトを受け取ると、オブジェクト知識格納手段２０３に対して、オブジェクトの検索、参照、追加、修正、削除などの要求、指示やオブジェクトを受け渡す。オブジェクト知識管理手段２０２３は、これらの操作によってオブジェクトの更新が行われた場合、操作の対象となり直接更新された名前型オブジェクトのほかに、例えば、直接更新された名前型オブジェクトを辿ることになる名前型オブジェクトなど、操作の影響で間接的に更新された名前型オブジェクトを、オブジェクト知識格納手段２０３に収集させる。そして、その名前型オブジェクトの集合を、オブジェクト更新通知としてポリシ解析手段１０３３に受け渡す。また、オブジェクト知識管理手段２０２３は、ポリシ解析手段１０３３から受け取った名前型オブジェクトに応じた実体型オブジェクトの参照要求などに応じて、オブジェクト知識格納手段２０３に展開を要求し、展開の結果得られる実体型オブジェクトの集合をポリシ解析手段１０３３に返す。
【０１１９】
オブジェクト知識格納手段２０３は、オブジェクト知識管理手段２０２３から、操作の指示やオブジェクトを受け取り、要求された操作の指示や、受け渡されたオブジェクトに応じて、オブジェクト知識の検索、参照、追加、修正、削除を行い、その結果をオブジェクト知識管理手段２０２３に返す。
【０１２０】
ポリシ格納手段１０２３は、０個以上のアクセス制御ポリシを格納し、ポリシ解析手段１０３３からの要求に応じてアクセス制御ポリシをポリシ解析手段１０３３に受け渡す。このときアクセス制御ポリシのＩＤを指定された場合には、そのＩＤから特定されるアクセス制御ポリシをポリシ解析手段１０３３に受け渡す。また、名前型オブジェクトを指定された場合には、その名前型オブジェクトを含むアクセス制御ポリシのＩＤをポリシ解析手段１０３３に受け渡す。
【０１２１】
ポリシ解析手段１０３３は、オブジェクト知識管理手段２０２３からオブジェクト更新通知を受け取ると、ポリシ格納手段１０２３に対して、名前型オブジェクトを使用しているアクセス制御ポリシの検索を指示し、該当するアクセス制御ポリシの集合を受け取る。  その後、ポリシ解析手段１０３３は、受け取ったアクセス制御ポリシ中で使用されている名前型オブジェクトを起点とする展開を知識データベース２３に要求し、展開の結果得られる実体型オブジェクトを用いてルール（中間言語の一部）を作成する。そして、そのルールをアクセス制御リスト設定手段１０６３に受け渡す。
【０１２２】
アクセス制御リスト設定手段１０６３は、ポリシ解析手段１０３３からルールを受け取り、ルールからアクセス制御装置３におけるアクセス制御リストの行を生成する。そして、その行に基づいて、アクセス制御リスト格納手段３０１に記憶されている既存のアクセス制御リストの一部を更新する。また、アクセス制御リスト設定手段１０６３は、アクセス制御リストを更新した後、アクセス制御手段３０２に対して、アクセス制御の設定変更を指示する。
【０１２３】
アクセス制御手段３０２は、アクセス制御リスト設定手段１０６３からアクセス制御の設定変更の指示を受け取ると、アクセス制御リスト格納手段３０１に記憶されているアクセス制御リストを読み込む。そして、その内容に従ってアクセス制御の設定を変更し、その設定に従ってアクセス制御を行う。
【０１２４】
次に、動作について説明する。
図２４は、本実施の形態のアクセス制御システムの動作の例を示すフローチャートである。まず、オブジェクト知識編集手段２０１は、ユーザに対して、オブジェクト知識の編集を行うためのユーザインタフェースを提示する（ステップＣ１０）。図２５および図２６は、ステップＣ１０で提示するユーザインタフェースの例を示す。図２５は、名前型オブジェクトの選択に用いられるユーザインタフェースの例であり、図２５ではユーザグループを表す名前型オブジェクトの選択を促す場合の例を示している。図２６は、オブジェクト知識の編集用ユーザインタフェースであり、図２６ではユーザグループに関するオブジェクト知識の編集を促す場合の例を示している。オブジェクト知識編集手段２０１は、ステップＣ１０において、ユーザが参照、編集することのできる既存の名前型オブジェクトのリストの中から参照または編集したい名前型オブジェクトを選べるように、オブジェクト知識管理手段２０２３に名前型オブジェクトのリストを要求する。オブジェクト知識管理手段２０２３は、この要求に応じてオブジェクト知識格納手段２０３から名前型オブジェクトのリストを取得し、オブジェクト知識編集手段２０１に出力する。オブジェクト知識編集手段２０１は、その名前型オブジェクトのリストをユーザインタフェース上に表示する（図２５参照）。オブジェクト知識編集手段２０１は、図２５に例示するようにリストと共に選択ボタンを表示し、ユーザに名前型オブジェクトの選択を促す。
【０１２５】
オブジェクト知識編集手段２０１は、選択された名前型オブジェクトから展開される実体型オブジェクトの集合をオブジェクト知識管理手段２０２３に要求する。オブジェクト知識管理手段２０２３は、この要求に応じてオブジェクト知識格納手段２０３に展開を実行させ、その結果得られる実体型オブジェクトの集合をオブジェクト知識編集手段２０１に出力する。オブジェクト知識編集手段２０１は、その実体型オブジェクトの集合を含む編集用ユーザインタフェースを提示する。
【０１２６】
図２６を例に、編集用ユーザインタフェースの例を説明する。図２６に例示する「ユーザグループの名称」欄には、ユーザに選択された名前型オブジェクトが表示される。また、ユーザによって新たに名前型オブジェクトが指定される場合、その名前型オブジェクトは図２６に例示する「ユーザグループの名称」欄に入力される。
【０１２７】
また、図２６に例示する「追加されたユーザＩＤの一覧」欄には、選択された名前型オブジェクトの展開によって得られた実体型オブジェクトのリストが選択ボタンとともに表示される。ユーザによって名前型オブジェクトからの経路を有する新たな実体型オブジェクトが指定される場合、その実体型オブジェクトは、図２６に例示する「追加するユーザＩＤの入力」欄に入力される。そして、図２６に例示する「追加」ボタンがマウスクリックされると、オブジェクト知識編集手段２０１は、その実体型オブジェクトを、選択ボタンと共に「追加されたユーザＩＤの一覧」欄に追加する。また、「追加されたユーザＩＤの一覧」欄において、選択ボタンがマウスクリックされ、図２６に例示する「削除」ボタンがマウスクリックされると、オブジェクト知識編集手段２０１は、名前型オブジェクトからの経路を有する実体型オブジェクトの中から、選択された実体型オブジェクトを削除するという指示を受け付ける。さらに、「追加されたユーザＩＤの一覧」欄に表示された各実体型オブジェクトへの経路を有する新たな名前型オブジェクトが指定される場合には、図２６に例示する「含めるユーザグループの選択」欄において、新たに指定される名前型オブジェクトに対応する選択ボタンがマウスクリックされる。すると、オブジェクト知識編集手段２０１は、「ユーザグループの名称」欄に表示している名前型オブジェクトから経路を延ばされる名前型オブジェクトを追加するという指示を受け付ける。なお、「含めるユーザグループの選択」欄には、図２５と同様に、名前型オブジェクトのリストと共に選択ボタンが表示される。
【０１２８】
オブジェクト知識編集手段２０１は、図２６に例示する「決定」ボタンがマウスクリックされたならば、編集用ユーザインタフェース上で編集されたオブジェクトや、追加、修正、削除の指示をオブジェクト知識管理手段２０２３に受け渡す。なお、図２６では、ユーザグループに関するオブジェクト知識を編集する場合のユーザインタフェースを例示したが、位置やリソースに関するオブジェクト知識を編集する場合のユーザインタフェースも同様である。
【０１２９】
オブジェクト知識管理手段２０２３は、編集されたオブジェクトや、追加、修正、削除の指示を入力されると、オブジェクト知識格納手段２０３にそのオブジェクトや指示を受け渡し、オブジェクト知識を更新させる。（ステップＣ２０）。
【０１３０】
オブジェクト知識格納手段２０３にオブジェクト知識を更新させた後、オブジェクト知識管理手段２０２３は、オブジェクト知識格納手段２０３に対して、直接更新された名前型オブジェクトと、間接的に更新された名前型オブジェクトの検索指示を出力する。オブジェクト知識格納手段２０３は、直接更新された名前型オブジェクト（直接更新された名前型オブジェクト）と検索指示を受け取り、直接更新された名前型オブジェクトを辿ることになる名前型オブジェクト（間接的に更新された名前型オブジェクト）を検索する。間接的に更新された名前型オブジェクトを検索した場合、さらにその名前型オブジェクトを辿ることになる名前型オブジェクトを検索することにより、間接的に更新された名前型オブジェクトの検索を繰り返す。オブジェクト知識格納手段２０３は、検索結果をオブジェクト知識管理手段２０２３に受け渡す。このとき、例えば、直接更新された名前型オブジェクトと、検索結果として得られた、間接的に更新された名前型オブジェクトを検索結果をオブジェクト知識管理手段２０２３に受け渡す。
【０１３１】
オブジェクト知識管理手段２０２３は、オブジェクト知識格納手段２０３から直接更新された名前型オブジェクトおよび間接的に更新された名前型オブジェクトを入力されると、その名前型オブジェクトをオブジェクト更新通知としてポリシ解析手段１０３３に受け渡す（ステップＣ３０）。
【０１３２】
ポリシ解析手段１０３３は、名前型オブジェクトの更新通知を受け取ると、受け取った名前型オブジェクトを使用しているアクセス制御ポリシのＩＤのリストの検索をポリシ格納手段１０２１に要求し、ＩＤのリストを取得する。このとき、その名前型オブジェクトを使用しているアクセス制御ポリシが存在しない場合、すなわちＩＤが一つも取得できない場合（ステップＣ４０のＮ）、処理を終了する。
【０１３３】
また、その名前型オブジェクトを使用しているアクセス制御ポリシが存在している場合、すなわちアクセス制御ポリシのＩＤを取得できた場合（ステップＣ４０のＹ）、ポリシ解析手段１０３３は、得られたＩＤのリストをアクセス制御リスト設定手段１０６３に受け渡し、ＩＤに該当する既存のアクセス制御リストの削除を要求する（ステップＣ５０）。
【０１３４】
アクセス制御リスト設定手段１０６３は、ポリシ解析手段１０３３からアクセス制御ポリシのＩＤのリストを受け取ると、そのＩＤが付与された行がアクセス制御リスト格納手段３０１に格納された既存のアクセス制御リスト内に有るか否かを判別する（ステップＣ６０）。ＩＤが付与された行がアクセス制御リスト内に存在する場合、アクセス制御リスト設定手段１０６３はその行を削除する（ステップＣ７０）。
【０１３５】
また、ポリシ解析手段１０３３は、更新通知として受け取った名前型オブジェクトを使用しているアクセス制御ポリシのＩＤのリストを、以前の処理（ステップＣ４０）で取得している。ポリシ解析手段１０３３は、このＩＤによって特定されるアクセス制御ポリシをポリシ格納手段１０２３から読み出し、そのアクセス制御ポリシに基づいてルールを生成する。そして、そのルールをアクセス制御リスト設定手段１０６３に受け渡す（ステップＣ８０）。ステップＣ８０では、更新された名前型オブジェクトを使用するアクセス制御ポリシのみに基づいてルールを生成する。従って、ステップＣ８０で生成されるルールは、図４に示す概念図における中間言語に含まれるルールのうちの一部である。
【０１３６】
アクセス制御リスト設定手段１０６３は、ポリシ解析手段１０３３からルールを受け取ると、そのルールを変換して、アクセス制御リストの行を生成し、アクセス制御リスト格納手段３０１に受け渡す（ステップＣ９０）。アクセス制御リスト格納手段３０１は、アクセス制御リスト設定手段１０６３から行を受け取り、アクセス制御リスト格納手段３０１に格納されている既存のアクセス制御リストに受け取った行を追加し、アクセス制御リストを更新する（ステップＣ１００）。アクセス制御リストが更新されたことを受けて、アクセス制御リスト設定手段１０６３は、アクセス制御手段３０２に対して、アクセス制御の設定を指示する。設定指示を受け取ったアクセス制御手段３０２は、アクセス制御リスト格納手段３０１からアクセス制御リストを読み込んで、その内容に沿ったアクセス制御を実行する（ステップＣ１１０）。ステップＣ８０〜Ｃ１１０の処理は、ステップＢ８０〜Ｂ１１０の処理と同様である。
【０１３７】
本実施の形態では、オブジェクト知識編集手段２０１がオブジェクト知識の編集を受け付けるので、アドホックグループの編集に対応することができる。例えば、ユーザグループに関して、実体型オブジェクトであるユーザＩＤや名前型オブジェクトであるユーザグループを、オブジェクト編集手段２０１を用いて、ユーザが自由に編集することによってアドホックに構成が変化するような場合でも、オブジェクト知識管理手段２０２３からポリシ解析手段１０３へオブジェクト知識の変化が伝達される。そして、アクセス制御ポリシを変更しなくとも、アクセス制御リストの必要な行のみを動的に再生成することができる。
【０１３８】
また、本実施の形態では、システム構成の変化に対応することができる。例えば、アクセス先のリソースについて、サーバやファイルのアドレスなどの情報が変化したとしても、それらの情報を実体型オブジェクトとして扱い、アクセス制御ポリシでは、名前型オブジェクトで記述することで実体型オブジェクトを隠蔽している。そのため、オブジェクト知識管理手段２０２３からのオブジェクト知識の変化の伝達によって、ユーザがアクセス制御ポリシを編集しなくとも、オブジェクト知識の変化に対応したアクセス制御リストを生成することができる。
【０１３９】
また、本実施の形態では、部門の引越しや、部屋などの目的変化に対応することができる。例えば、アクセス元の位置について、引越しによって別の場所に移ったり、内部関係者のみが使える部屋だった場所が、来訪者も使用する場所に変化するなどの状態の変化があった場合、その変化に応じて名前型オブジェクトやオブジェクトを編集すればよい。すると、オブジェクト知識管理手段２０２３からポリシエンジン１３にオブジェクト知識の変化が伝達され、ユーザがアクセス制御ポリシを編集しなくとも、変化に対応したアクセス制御リストを生成することができる。
【０１４０】
なお、本実施の形態において、第１の実施の形態や第２の実施の形態と同様に、ポリシエンジン１３がポリシ編集手段を備えていてもよい。
【０１４１】
実施の形態４．
図２７は、本発明によるアクセス制御システムの第４の実施の形態を示すブロック図である。本発明の第４の実施の形態は、第１または第２の実施形態におけるポリシエンジン１１，１２のかわりにポリシエンジン１を備える。図２７に示すアクセス制御システムは、プログラム制御により動作するコンピュータであるポリシエンジン１と、一つあるいは複数のデータ格納手段である知識データベース２と、アクセス制御装置３とを備えている。ここでは、ポリシエンジン１と、知識データベース２と、アクセス制御装置３とがそれぞれ別個のコンピュータである場合を例に説明する。
【０１４２】
ポリシエンジン１は、ポリシ編集手段１０１と、ポリシ格納手段１０２と、ポリシ解析手段１０３と、中間言語格納手段１０４と、時刻管理手段１０５と、アクセス制御リスト設定手段１０６とを含む。知識データベース２は、オブジェクト知識編集手段２０１と、オブジェクト知識管理手段２０２と、オブジェクト知識格納手段２０３とを含む。アクセス制御装置３の構成および動作は、第２の実施形態および第３の実施の形態におけるアクセス制御装置３の構成および動作と同様である。
【０１４３】
ポリシ編集手段１０１は、オブジェクト知識管理手段２０２から得たオブジェクト知識を用いて、動的に変化するアドホックグループに対するアクセス制御を表現できるアクセス制御ポリシの編集を行うためのユーザインタフェースをユーザに提供する。このユーザインタフェースは、時刻情報の入力も受け付けるユーザインタフェースである。ポリシ編集手段１０１は、ユーザの操作に応じて、ポリシ格納手段１０２に対してアクセス制御ポリシの検索、参照、追加、修正、削除の指示を行う。また、アクセス制御ポリシが変更されると、ポリシ編集手段１０１は、ポリシ解析手段１０３に対して、更新通知、例えば、更新されたアクセス制御ポリシのＩＤ、操作の種類および時刻の情報を受け渡す。
【０１４４】
ポリシ格納手段１０２は、ポリシ編集手段１０１によって編集されたアクセス制御ポリシを受け取って格納する。また、ポリシ格納手段１０２は、ポリシ編集手段１０１およびポリシ解析手段１０３からの指示や受け取ったアクセス制御ポリシに応じて、アクセス制御ポリシの検索、参照、追加、修正、削除を行い、要求されたアクセス制御ポリシに関する情報、例えば、指定されたＩＤによって特定されるアクセス制御ポリシや、指定された名前型オブジェクトを含むアクセス制御ポリシを受け渡す。指定された名前型オブジェクトを含むアクセス制御ポリシのＩＤを受け渡してもよい。
【０１４５】
ポリシ解析手段１０３は、ポリシ編集手段１０１から更新通知を受け取ると、ポリシ格納手段１０２に対して、更新通知に含まれるＩＤにより特定されるアクセス制御ポリシを要求する。また、ポリシ解析手段１０３は、オブジェクト知識管理手段２０２からオブジェクト更新通知を受け取ると、ポリシ格納手段１０２に対して、オブジェクト更新通知に含まれる名前型オブジェクトを使用しているアクセス制御ポリシを要求する。また、ポリシ解析手段１０３は、ポリシ格納手段１０２からアクセス制御ポリシを受け取り、受け取ったアクセス制御ポリシ中で使用されている名前型オブジェクトについて、オブジェクト知識管理手段２０２に展開を要求する。そして、展開によって得られる０個以上の実体型オブジェクトで名前型オブジェクトを置き換え、機器に依存しない書式で記述されるルール（中間言語の一部）を生成する。ポリシ解析手段１０３は、生成したルールを中間言語格納手段１０４に受け渡す。また、ポリシ解析手段１０３は、時刻管理手段１０５に対して、生成したルールの時刻条件に基づくイベントを受け渡す。イベントとは、例えば、生成元のアクセス制御ポリシから引き継がれて付与されたＩＤを有するルールの追加や削除等である。また、イベントと対になる時刻条件（時刻情報）は、ポリシ編集手段１０１を介して入力される。
【０１４６】
中間言語格納手段１０４は、ポリシ解析手段１０３が生成したルールを受け取って格納する。また、中間言語格納手段１０４は、アクセス制御リスト設定手段１０６からの要求に応じて、要求されたルールを受け渡す。
【０１４７】
時刻管理手段１０５は、生成されたルールの時刻条件に基づくイベントをポリシ解析手段１０３から受け取って記憶する。時刻管理手段１０５は、受け取ったイベントを、既に記憶しているイベントとともに、時刻順に並べ替えて記憶する。時刻管理手段１０５は、それまでに記憶しているイベントの集合をスケジュールとして管理する。そして、条件によって指定された時刻になると、アクセス制御リスト設定手段１０６に対して、時刻通知（例えば、時刻と、ルールに付与されたＩＤと、追加、削除などの動作の種類との組み合わせ）を受け渡す。
【０１４８】
アクセス制御リスト設定手段１０６は、時刻管理手段１０５から、時刻通知を受け取ると、中間言語格納手段１０４に対して、時刻通知のＩＤに該当するルールを要求する。アクセス制御リスト設定手段１０６は、中間言語格納手段１０４から該当するルールを受け取ると、そのルールから行を生成する。アクセス制御リスト設定手段１０６は、その行にＩＤを付与し、アクセス制御リスト格納手段３０１にその行と指示を受け渡す。そして、アクセス制御リスト格納手段３０１に記憶されているアクセス制御リストを更新する。アクセス制御リストを更新した後、アクセス制御手段３０２に対して、アクセス制御リストの更新通知を受け渡す。
【０１４９】
アクセス制御手段３０２は、アクセス制御リスト設定手段１０６からアクセス制御リストの更新通知を受け取ると、アクセス制御リスト格納手段３０１に記憶されているアクセス制御リストを読み込み、その内容に従って設定を変更し、その設定に応じたアクセス制御を行う。
【０１５０】
中間言語格納手段１０４は、例えば、プログラムに従って動作するＣＰＵおよび記憶装置によって実現される。時刻管理手段１０５は、例えば、プログラムに従って動作するＣＰＵによって実現される。ポリシエンジン１が備える各手段を実現するためのＣＰＵは、共通のＣＰＵであってよい。
【０１５１】
オブジェクト知識２０１、オブジェクト知識管理手段２０２およびオブジェクト知識格納手段２０３の構成および動作は、第３の実施の形態におけるオブジェクト知識２０１、オブジェクト知識管理手段２０２３およびオブジェクト知識格納手段２０３と同様である。
【０１５２】
なお、第４の実施形態では、オブジェクト知識編集手段２０１を備えていなくてもよい。また、アクセス制御ポリシが有効となる時間帯（時刻情報）を指定する手段を備えていれば、ポリシ編集手段１０１を備えていなくてもよい。
【０１５３】
また、本実施の形態におけるアクセス制御ポリシには、図６に示す「ＩＤ」、「アクセス可否」、「ユーザグループ」、「位置」および「リソース」の他に、アクセス制御ポリシが有効となる時刻（有効時間帯の開始時刻および終了時刻）の情報が記述される。
【０１５４】
次に、動作について説明する。
第４の実施形態における動作は、２つの動作に大別される。１つ目は、ユーザにアクセス制御ポリシやオブジェクト知識を編集されることによって、中間言語格納手段１０４に中間言語（ルール）を格納し、時刻管理手段１０５にイベントを登録するまでの動作である。この動作については、図２８〜図３０を用いて説明する。２つ目は、登録されたイベントの指定時刻になることによって、時刻管理手段１０５からアクセス制御リスト設定手段に対して、該当するルールを指定し、ルールから行を生成し、アクセス制御リストを更新するまでの動作である。この動作については、図３１〜図３３を用いて説明する。
【０１５５】
図２８は、アクセス制御ポリシを編集され、イベントを登録する場合の処理経過の例を示すフローチャートである。ポリシ編集手段１０１は、第１の実施の形態におけるポリシ編集手段１０１１と同様に、アクセス制御ポリシの編集用ユーザインタフェースを提供する（ステップＤ１０）。ただし、本実施の形態では、アクセス制御ポリシが有効となる時間帯の開始時刻および終了時刻の入力欄を有する編集用ユーザインタフェースを提供する。図２９は、このような編集用ユーザインタフェースの例を示す。図２９に例示するユーザインタフェースにおいて「時刻条件」欄が、アクセス制御ポリシが有効となる時間帯の開始時刻および終了時刻の入力欄となる。既に作成したアクセス制御ポリシにおける時刻の情報を変更する場合には、この入力欄に新たな時刻情報を入力すればよい。図２９に例示するインタフェースにおける他の欄は、図１５に例示するユーザインタフェースと同様である。ポリシ編集手段１０１は、編集用ユーザインタフェース上で編集されたアクセス制御ポリシおよび追加、修正、削除の指示をポリシ格納手段１０２に受け渡す。ポリシ格納手段１０２は、ポリシ編集手段１０１から受け取った指示に従ってアクセス制御ポリシを更新する。（ステップＤ２０）。
【０１５６】
アクセス制御ポリシが更新されると、ポリシ編集手段１０１は、更新通知、例えば、更新されたアクセス制御ポリシのＩＤと操作の種類を、ポリシ解析手段１０３に受け渡す（Ｄ３０）。このとき、ポリシ編集手段１０１は、編集されたアクセス制御ポリシが有効となる時間帯の開始時刻および終了時刻の情報もポリシ解析手段１０３に受け渡す。
【０１５７】
ポリシ解析手段１０３は、ポリシ編集手段１０１から更新通知および時刻の情報を受け取る。そして、更新通知のＩＤと操作の種類に応じて、ポリシ格納手段１０２からＩＤに
よって特定されるアクセス制御ポリシを読み出し、そのアクセス制御ポリシからルール（中間言語の一部）を作成する（ステップＤ４０）。作成するルールには、生成元のアクセス制御ポリシのＩＤを付与する。ポリシ解析手段１０３は、生成したルールを中間言語格納手段１０４に受け渡し、中間言語の更新を指示する。中間言語格納手段１０４は、ポリシ解析手段１０３から受け取ったルールを用いて、記憶している既存の中間言語を更新し、格納する（ステップＤ５０）。
【０１５８】
中間言語が更新された後、ポリシ解析手段１０３は、時刻管理手段１０５に対して、生成したルール、ルールに付与されているＩＤ、時刻情報、および操作の種類（イベント）を受け渡す。例えば、編集されたアクセス制御ポリシが時刻Ａから時刻Ｂまで有効であるとする。この場合、ポリシ解析手段１０３は、そのアクセス制御ポリシから作成されたルール、そのルールに付加されているＩＤ（アクセス制御ポリシのＩＤ）、時刻Ａの情報、および「追加」というイベントを時刻管理手段１０５に受け渡す。また、ポリシ解析手段１０３は、そのアクセス制御ポリシから作成されたルール、そのルールに付加されているＩＤ、時刻Ｂの情報、および「削除」というイベントを時刻管理手段１０５に受け渡す。時刻管理手段１０５は、ポリシ解析手段１０３から受け取ったイベントを、時刻管理手段１０５が記憶している既存のイベントとともに、時刻順に並べ替えて記憶する（ステップＤ６０）。
【０１５９】
ポリシ編集手段１０１を介して、アクセス制御ポリシが編集された場合、ポリシ解析手段１０３は、中間言語格納手段１０４に格納されている中間言語のうち、編集されたアクセス制御ポリシのＩＤが付与されているルールを更新する。このとき、ポリシ解析手段１０３は、そのＩＤとともに時刻管理手段１０５に登録されているイベントの情報も更新する。また、ポリシ編集手段１０１を介して、アクセス制御ポリシが削除されると、ポリシ解析手段１０３は、削除されたアクセス制御ポリシのＩＤが付与されたルールを中間言語格納手段１０４に格納されている中間言語から削除する。このとき、ポリシ解析手段１０３は、そのＩＤとともに対応付けられたイベントの情報も時刻管理手段１０５から削除する。
【０１６０】
図３０は、オブジェクト知識を編集され、イベントを登録する場合の処理経過の例を示すフローチャートである。オブジェクト知識編集手段２０１は、第３の実施の形態の場合と同様に、オブジェクト知識の編集用ユーザインタフェースを提供する（ステップＤ１１）。オブジェクト知識編集手段２０１は、編集用ユーザインタフェース上で編集されたオブジェクトや、追加、修正、削除の指示をオブジェクト知識管理手段２０２に受け渡す。オブジェクト知識管理手段２０２は、編集されたオブジェクトや、追加、修正、削除の指示を入力されると、オブジェクト知識格納手段２０３にそのオブジェクトや指示を受け渡し、オブジェクト知識を更新させる。（ステップＤ２１）。
【０１６１】
オブジェクト知識が更新されると、オブジェクト知識管理手段２０２は、オブジェクト知識格納手段２０３に対して、直接更新された名前型オブジェクトと、間接的に更新されたオブジェクトの検索指示を受け渡す。オブジェクト知識格納手段２０３は、直接更新された名前型オブジェクト（直接更新された名前型オブジェクト）と検索指示を受け取り、間接的に更新された名前型オブジェクトを検索する。そして、検索結果をオブジェクト管理手段２０２に受け渡す。このとき、例えば、直接更新された名前型オブジェクトと、検索結果として得られた、間接的に更新された名前型オブジェクトを検索結果をオブジェクト知識管理手段２０２に受け渡す。オブジェクト知識管理手段２０２は、オブジェクト知識格納手段２０３から直接更新された名前型オブジェクトおよび間接的に更新された名前型オブジェクトを入力されると、その名前型オブジェクトをオブジェクト更新通知としてポリシ解析手段１０３に受け渡す（ステップＤ３１）。ステップＤ３１の動作は、ステップＣ３０の動作と同様の動作である。
【０１６２】
ポリシ解析手段１０３は、名前型オブジェクトの更新通知を受け取ると、その名前型オブジェクトを使用しているアクセス制御ポリシの検索をポリシ格納手段１０２に要求する。検索の結果、該当するアクセス制御ポリシが存在しなければ、アクセス制御の更新は必要ないため、以降の処理は行わずに終了する（ステップＤ３２のＮ）。
【０１６３】
検索の結果、該当するアクセス制御ポリシが存在したならば（ステップＤ３２のＹ）、ポリシ解析手段１０３は、そのアクセス制御ポリシを読み出し、読み出したアクセス制御ポリシからルール（中間言語の一部）を作成する（ステップＤ４１）。作成するルールには、生成元のアクセス制御ポリシのＩＤを付与する。ポリシ解析手段１０３は、生成したルールを中間言語格納手段１０４に受け渡し、中間言語の更新を指示する。中間言語格納手段１０４は、ポリシ解析手段１０３から受け取ったルールを用いて、記憶している既存の中間言語を更新し、格納する（ステップＤ５０）。この処理は、図２８に示すステップＤ５０と同様の処理である。
【０１６４】
中間言語が更新された後、ポリシ解析手段１０３は、時刻管理手段１０５に対して、生成したルール、ルールに付与されているＩＤ、時刻情報、および操作の種類（イベント）を受け渡す。時刻管理手段１０５は、ポリシ解析手段１０３から受け取ったイベントを、時刻管理手段１０５が記憶している既存のイベントとともに、時刻順に並べ替えて記憶する（ステップＤ６０）。
【０１６５】
オブジェクト知識編集手段２０１を介して、名前型オブジェクトが更新された場合、ポリシ解析手段１０３は、その名前型オブジェクトを使用しているアクセス制御ポリシのＩＤを取得して、中間言語格納手段１０４に格納されている中間言語のうち、そのＩＤが付与されているルールを更新する。このとき、ポリシ解析手段１０３は、そのＩＤとともに時刻管理手段１０５に登録されているイベントの情報も更新する。また、例えば、ある名前型オブジェクトから展開される実体型オブジェクトが一つだけであり、その実体型オブジェクトが削除された場合、ポリシ解析手段１０３は、その名前型オブジェクトを使用しているアクセス制御ポリシのＩＤを取得する。そして、ポリシ解析手段１０３は、中間言語格納手段１０４に格納されている中間言語のうち、そのＩＤが付与されているルールを削除する。このとき、ポリシ解析手段１０３は、そのＩＤとともに対応付けられたイベントの情報も時刻管理手段１０５から削除する。
【０１６６】
図３１は、時刻管理手段１０５にイベントが記憶された状態で実行される時刻管理処理の処理経過の例を示すフローチャートである。時刻管理手段１０５は、時刻管理手段１０５が記憶している時刻順のイベントの集合であるスケジュールの中で、最も時刻の古いイベントから順に読込みを開始する（ステップＤ７０）。時刻管理手段１０５は、読み込んだイベントの時刻指定が、現在時刻以前かどうか判別する（ステップＤ８０）。
【０１６７】
現在時刻以前であれば（ステップＤ８０のＹ）、時刻管理手段１０５は、そのイベントのＩＤ（そのイベントとともに記憶されたルールのＩＤ）と操作の種類を一時的に記憶していく（Ｃ０９０）。そして、時刻管理手段１０５は、順に次のイベントを読み込み（ステップＤ７０）、読み込んだイベントの時刻指定が、現在時刻以前でなくなるまで繰り返す。
【０１６８】
読み込んだイベントの時刻指定が、現在時刻より未来の時刻となり、現在時刻以前でなくなると（ステップＤ８０のＮ）、それまでに読み込んで一時的に記憶していたＩＤと操作の種類を、時刻通知としてアクセス制御リスト設定手段１０６に受け渡す（ステップＤ１００）。
【０１６９】
ただし、読込みを開始したスケジュールの一番最初のイベントに対応する時刻情報が現在時刻より未来を示していて、アクセス制御リスト設定手段１０６に受け渡す時刻通知がない場合、時刻管理手段１０５は、何もせずに終了する。
【０１７０】
時刻管理手段１０５は、以上の動作を、一定間隔で繰り返し実行する。
【０１７１】
図３２は、アクセス制御リストの更新処理の処理経過の例を示すフローチャートである。アクセス制御リスト設定手段１０６は、時刻管理手段１０５から、時刻通知として、例えば、ＩＤと操作の種類を受け取ると、起動して処理を開始する（ステップＤ１１０）。アクセス制御リスト設定手段１０６がＩＤと操作の種類を受け取るステップＤ１１０の処理は、時刻管理手段１０５によるステップＤ１００の処理に応じた処理である。アクセス制御リスト設定手段１０６は、アクセス制御リスト格納手段３０１に対して、アクセス制御リスト格納手段３０１が格納しているアクセス制御リストの中から、時刻通知として受け取ったＩＤに該当するアクセス制御リストの行の検索と削除を指示する。時刻通知として受け取ったＩＤは、アクセス制御ポリシから引き継がれたＩＤである。従って、更新されたアクセス制御ポリシから生成された既存の行の検索および削除を指示していることになる。アクセス制御リスト格納手段３０１は、指定されたＩＤが付与された行が存在するならば（ステップＤ１２０のＹ）、そのＩＤが付与された行を削除する（ステップＤ１３０）。そのＩＤが付与された行が存在しなければ、ステップＤ１３０を行うことなく、ステップＤ１４０に移行する。
【０１７２】
アクセス制御リスト格納手段３０１に行を削除させた後、アクセス制御リスト設定手段１０６は、時刻通知として受け取った操作の種類を判別する（ステップＤ１４０）。操作の種類が「追加」であった場合、アクセス制御リスト設定手段１０６は、時刻通知として受け取ったＩＤが付与されている中間言語内のルールから、行を生成する（ステップＤ１５０）。
【０１７３】
図３３は、ステップＤ１５０の行生成処理の処理経過の例を示すフローチャートである。アクセス制御リスト生成手段１０６は、中間言語格納手段１０４に対して、時刻通知として受け取ったＩＤが付与されている中間言語内のルールを要求し、そのルール読み込む（ステップＤ１５０１）。アクセス制御リスト生成手段１０６は、読み込んだルールの中に後述のステップＤ１５０３（組み合わせ生成処理）を行っていないルールが有るか否かを判別する（ステップＤ１５０２）。組み合わせ生成処理を行っていないルールがある場合（ステップＤ１５０２のＹ）、アクセス制御リスト生成手段１０６は、そのルールから、アクセス制御リストの行として記述することのできる各組み合わせを生成する（ステップＤ１５０３）。ステップＤ１５０３は、ステップＡ５０３と同様の処理である。
【０１７４】
中間言語格納手段１０４から読み込んだルールの中から組み合わせ生成処理（ステップＤ１５０３）を行っていないルールがなくなったならば（ステップＤ１５０２のＮ）、アクセス制御リスト設定手段１０６は、生成された各組み合わせをアクセス制御リスト（行）の記述形式に変換し、行を生成する（ステップＤ１５０４）。
【０１７５】
続いて、アクセス制御リスト設定手段１０６は、アクセス制御リスト格納手段３０１に対して、生成した行を受け渡す。アクセス制御リスト格納手段３０１は、アクセス制御リスト設定手段１０６から行を受け取り、アクセス制御リスト格納手段３０１に格納されている既存のアクセス制御リストに受け取った行を追加し、アクセス制御リストを更新する（ステップＤ１６０）。アクセス制御リストを更新した後、アクセス制御リスト設定手段１０６は、アクセス制御手段３０２に対して、アクセス制御の設定を指示する。設定指示を受け取ったアクセス制御手段３０２は、アクセス制御リスト格納手段３０１からアクセス制御リストを読み込んで、その内容に沿ったアクセス制御を実行する（ステップＤ１７０）。
【０１７６】
また、ステップＤ１４０の判別において、操作の種類が「削除」であった場合には、アクセス制御リスト設定手段１０６は、ステップＤ１５０，Ｄ１６０の処理を行わずに、ステップＤ１７０の処理を行う。すなわち、ステップＤ１３０で、行を削除したアクセス制御リストに基づいて、アクセス制御手段３０２にアクセス制御を実行させる。
【０１７７】
本実施の形態では、中間言語格納手段１０４と、時刻管理手段１０５とを持つよう構成されているため、時刻を扱うアクセス制御ポリシを記述し、記述された時間帯でそのアクセス制御ポリシを有効にすることができる。例えば、特定の時間帯においてのみ存在するアドホックグループに対するアクセス制御ポリシを記述することにより、そのグループからその時間帯だけアクセスが可能になるよう、動的に、必要な行のみをアクセス制御リストに追加したり、不必要となった行をアクセス制御リストから削除したりすることができる。
【０１７８】
上記の説明では、ポリシエンジン１が図２９に例示するユーザインタフェースを介して時間帯（時刻）の情報を直接入力される場合を示した。時間帯を直接入力されるのではなく、例えば、「昼休み」、「平日定時」等の時間帯を表す単語等をユーザインタフェースを介して入力され、その単語等が示す時間帯を特定する構成であってもよい。この場合、オブジェクト知識格納手段は、例えば、「昼休み」、「平日定時」、「休日（土日祝日）」、「月曜日」、「火曜日」、「１限目」、「２限目」、「１コマ目」、「２コマ目」、「試験期間」、「休暇期間」、「入学式」や「卒業式」等の式典名、「学園祭」や「オープンキャンパス」等の行事といった単語等を名前型オブジェクトとし、時間帯や時刻を実体型オブジェクトとするオブジェクト知識を格納すればよい。そして、ポリシ解析手段１０３は、ポリシ編集手段１０１から時刻の代わりにこれらの単語を受け渡されたときには、その単語を起点とする展開を知識データベース２に実行させて、時間帯や時刻の情報を知識データベース２から取得すればよい。他の動作は、第４の実施の形態として説明した動作と同様である。また、ここでは名前型オブジェクトの例として「昼休み」等を挙げたが、これらは例示であり、名前型オブジェクトは、時間帯や時刻に対応する言葉であればよい。
【０１７９】
実施の形態５．
図３４は、本発明によるアクセス制御システムの第５の実施の形態を示すブロック図である。第５の実施形態におけるアクセス制御システムは、第３の実施形態におけるアクセス制御システムの構成に加えて、システム構成管理手段５０を備える。また、ポリシエンジン１３は、複数のアクセス制御装置３を備える。なお、本実施の形態では、図２３に示すオブジェクト知識編集手段２０１を備えていなくてもよい。
【０１８０】
システム構成管理手段５０は、少なくともアクセス制御装置３の構成情報を記憶するための構成情報格納手段５０１を有する。ここでは、システム構成管理手段５０が、知識データベース２３、各アクセス制御装置３およびポリシエンジン１３とは別個の、プログラム従って動作するコンピュータである場合を例にして説明する。システム構成管理手段５０は、少なくともポリシエンジンと接続された各アクセス制御装置３と接続されている。システム構成管理手段５０は、各アクセス制御装置３の稼動状態や配置状況などの構成情報を構成情報格納手段５０１に格納する。そして、いずれかのアクセス制御装置３の停止や新たなアクセス制御装置３の設置などにより、構成情報（各アクセス制御装置３の稼動状態や配置状況など）に変化があった際に、その変化を知識データベース２３のオブジェクト知識管理手段２０２３に伝達する。
【０１８１】
また、本実施の形態では、オブジェクト知識格納手段２０３は、アクセス制御装置に関するオブジェクト知識を格納する。アクセス制御装置に関するオブジェクト知識に含まれる名前型オブジェクトは、ポリシエンジン１３に接続されている各アクセス制御装置３の識別子を表す。すなわち、個々のアクセス制御装置３を識別するための識別子が名前型オブジェクトになる。また、アクセス制御装置に関するオブジェクト知識に含まれる実体型オブジェクトは、「稼働中」、「停止」等のアクセス制御装置の状態を表す。
【０１８２】
ポリシエンジン１３が備えるポリシ格納手段１０２３（図３４において図示せず。図２３参照。）は、アクセス制御ポリシを格納する。本実施の形態におけるアクセス制御ポリシは、アクセス制御ポリシが有効となる条件として、アクセス制御装置３の状態によって記述される条件を定めている。例えば、『識別子が「ＦＷ００１」であるアクセス制御装置が「稼働中」であるならば有効』等の条件がアクセス制御ポリシに記述されている。
【０１８３】
次に、動作について説明する。
図３５は、本実施の形態のアクセス制御システムの動作の例を示すフローチャートである。まず、システム構成管理手段５０は、定期的に各アクセス制御装置３に対して死活確認信号を発信して、アクセス制御装置３の現在の状態、状況を検査する（ステップＳ５０１）。死活確認信号を受信したアクセス制御装置３は、システム構成管理手段５０に応答信号を発信する。システム構成管理手段５０は、応答信号の受信成否によって各アクセス制御装置３の現在の状態等を検査する。すなわち、応答信号を受信した場合、その応答信号を発信したアクセス制御装置３は稼働中であると判定し、応答信号を受信できなかったアクセス制御装置３は停止状態であると判定する。
【０１８４】
システム構成管理手段５０は、ステップＳ５０１の検査結果に応じて構成情報を更新し、現在の構成情報を記憶する（ステップＳ５０２）。構成情報のデータ構造の例を図３６に示す。図３６に示すように、構成情報は、アクセス制御装置３の識別子と、「稼働中」または「停止」を示す稼働状況フラグとの組み合わせによって表される。システム構成管理手段５０は、稼働中であると判定したアクセス制御装置に対応する稼働状況フラグを「稼働中」に設定し、停止状態であると判定したアクセス制御装置に対応する稼働状況フラグを「停止」に設定し、その構成情報を記憶する。
【０１８５】
ステップＳ５０１の検査態様についてより具体的に説明する。例えば、システム構成管理手段５０と各アクセス制御装置３とはＩＰネットワークで接続され、死活確認信号および応答信号としてＳＮＭＰ（Simple Network Management Protocol）パケットもしくはＩＣＭＰ（Internet Control Message Protocol）パケットを用いればよい。このような検査態様により、システム構成管理手段５０１は、稼動中のアクセス制御装置３の構成情報をリアルタイムに管理することができる。
【０１８６】
また、他の検査態様として、各アクセス制御装置３から定期的にアクセス制御装置自身の識別子を含むハートビート信号をシステム構成管理手段５０に向けて発信し、システム構成管理手段５０が、受信したハートビート信号を基に、稼動中のアクセス制御装置３の構成情報を管理するようにしてもよい。
【０１８７】
ステップＳ５０２の後、システム構成管理手段５０は、ステップＳ５０２において、記憶していた構成情報が変化したか否かを確認する（ステップＳ５０３）。確認方法の好適な一例としては、ステップＳ５０２で構成情報を構成情報格納手段５０１に格納する際に、既に存在する識別子の稼動状態を更新したこと、および新たな識別子および稼動状態の組を追加したことを示す「更新フラグ」を構成情報格納手段５０１に保持させておけばよい。システム構成管理手段５０は更新フラグを参照して構成情報の変化の有無を確認できる。別の好適な一例としては、構成情報格納手段５０１に少なくとも２つのメモリスロットを設けておき、ステップＳ５０２で構成情報を格納（記憶）する際に、前回格納したメモリスロットと相異なるメモリスロットに構成情報を格納する態様がある。システム構成管理手段５０は前回分および今回分の２つのメモリスロットの内容を比較することで構成情報の変化を確認することができる。
【０１８８】
構成情報が変化していたならば（ステップＳ５０３のＹ）、システム構成管理手段５０は、停止状態に変化したアクセス制御装置３の識別子または新たに稼動を開始したアクセス制御装置３の識別子と変化後の稼動状態との組をオブジェクト知識単位として生成し、変化のあった全てのアクセス制御装置３についてのオブジェクト知識単位の集合を、オブジェクト知識管理手段２０２３に入力する（ステップＳ５０４）。図３７は、オブジェクト知識単位の例を示す説明図である。稼働状態が変化した識別子と、変化後の稼働状態との組み合わせが一つのオブジェクト知識単位となる。例えば、オブジェクト知識単位は、アクセス制御装置３の識別子と稼動状態の２つのカラムから成り、オブジェクト知識単位を列として並べたデータをオブジェクト知識単位の集合として生成する（図３７参照）。
【０１８９】
そして、オブジェクト知識管理手段２０２３は、システム構成管理手段５０から入力されたオブジェクト知識単位の集合を、オブジェクト知識格納手段２０３へ格納する（ステップＳ５０５）。このとき、すでに同じ識別子の名前型オブジェクトがオブジェクト知識格納手段２０３に格納ずみである場合には、オブジェクト知識管理手段２０２３は、その名前型オブジェクトから展開される実体型オブジェクトの内容を、オブジェクト知識単位に含まれる稼働状態に置き換える。また、新たな識別子をもつオブジェクト知識単位については、その新たな識別子を名前型オブジェクトとして、オブジェクト知識に追加する。さらに、新たな識別子に対応する稼働状態を、追加した名前型オブジェクトから展開される実体型オブジェクトとしてオブジェクト知識に追加する。
【０１９０】
その後、オブジェクト知識管理手段２０２は、第３の実施形態におけるオブジェクト知識管理手段２０２３と同様に、オブジェクト知識の変更をポリシエンジン１３に通知することで、格納ずみアクセス制御ポリシに従ってアクセス制御リストの更新を行う。すなわち、実体型オブジェクト（稼働状態）が変更された名前型オブジェクト（識別子）および新たに追加された名前型オブジェクト（識別子）をポリシ解析手段１０３３（図３４において図示せず。図２３参照。）に通知する。その後は、ステップＣ４０以降の動作を行えばよい。アクセス制御ポリシには、例えば、『識別子が「ＦＷ００１」であるアクセス制御装置が「稼働中」であるならば有効』等の条件が記述されているので、ステップＣ４０において、名前型オブジェクト（識別子）がアクセス制御ポリシで使用されているか否かの判定を行うことができる。ステップＣ４０以降の動作は、第３の実施の形態と同様である。
【０１９１】
本実施形態におけるアクセス制御システムは、アクセス制御装置３の停止や再開および削除や追加といったシステム構成の変化に対して、自動的に適切なアクセス制御リストを設定することができる。
【０１９２】
実施の形態６．
図３８は、本発明によるアクセス制御システムの第６の実施の形態を示すブロック図である。第６の実施形態におけるアクセス制御システムは、第４の実施形態におけるアクセス制御システムの構成に加えて、メールサーバ６０と、メール解析手段６１を備える。ただし、第６の実施の形態におけるポリシエンジン６２は、第４の実施形態におけるポリシエンジン１のポリシ編集手段１０１に代えて、ポリシ生成手段６２１を備える点で異なる。
【０１９３】
メール解析手段６１は、メールの配送を行うメールサーバ６０から新たに配送するメールの入力を受ける。メール解析手段６１は、そのメールの内容を解析して会議開催通知かどうかを判定し、会議開催通知であった場合に、会議開催情報をポリシ生成手段６２１へ入力する。ここでは、メール解析手段６１が、ポリシエンジン６１、知識データベース２およびアクセス制御装置３とは別個の、プログラム従って動作するコンピュータである場合を例にして説明する。
【０１９４】
ポリシ生成手段６２１は、メール解析手段６１からの会議開催情報の入力を受けて、その会議開催情報を基に自動的にアクセス制御ポリシを生成して、ポリシ格納手段１０２に格納する。ポリシ生成手段６２１は、例えば、プログラムに従って動作するＣＰＵおよびメール解析手段６１との通信インタフェースによって実現される。ポリシエンジン６２が備える各手段を実現するためのＣＰＵは、共通のＣＰＵであってよい。
【０１９５】
次に、動作について説明する。
図３９は、本実施の形態のアクセス制御システムが受信したメールに基づいてアクセス制御設定を行う処理の処理経過の例をを示すフローチャートである。まず、メールサーバ６０は新たに配送を依頼されたメールを、実際の宛先に配送する前に、メール解析手段６１に入力する（ステップＳ６１１）。
【０１９６】
メール解析手段６１では、メールサーバ６０から新たなメールの入力を受けるたびに、メールの内容を、Subject フィールド、To／Ccフィールド、本文などの構成ごとに形態素解析を行い、所定の会議開催通知パタンと照合する（ステップＳ６１２）。会議開催通知パタンの具体的な例としては、Subject フィールドや本文における「○月○日」、「会議」、「件」等の語句の生起パタンなどを用いることができる。
【０１９７】
続いて、メール解析手段６１はステップ６１２における照合処理の結果から、入力されたメールが会議開催通知であるかどうかを判定する（ステップＳ６１３）。入力されたメールが所定の会議開催通知パタンに合致しない場合（ステップＳ６１３のＮ）、メール解析手段６１は、以後の処理を中断し、ステップＳ６１１において、新たにメールが入力されるまで待機する。一方、入力されたメールが会議開催通知パタンに合致する場合は（ステップＳ６１３のＹ）、メール解析手段６１は、そのメールの内容から少なくとも会議の日時、場所、メンバを含む「会議開催情報」を抽出し、ポリシエンジン６２のポリシ生成手段６２１へ入力する（ステップＳ６１４）。
【０１９８】
次に、ポリシ生成手段６２１は、入力された会議開催情報から適切なアクセス制御ポリシを生成する（ステップＳ６２１）。より具体的には、会議開催情報に含まれる会議の日時および場所と、場所ごとの参加メンバとから、ユーザグループ定義を生成する。また、異なる場所、すなわち異なるネットワークドメインの間で利用されるサービスを決定し、共有リソースグループ定義を生成する。サービスの決定にあたっては通常ファイル共有のために用いられることの多いサービスとして、ＨＴＴＰ（ＴＣＰ８０番ポート）やＷｉｎｄｏｗｓ（登録商標）ネットワーク共有サービス（ＴＣＰ１３７〜１３９番ポート）などを規定しておけばよい。
【０１９９】
図４０は、ユーザグループ定義および共有リソース定義の生成状況を示す説明図である。ポリシ生成手段６２１は、予め、会議に参加すると想定されるメンバの所属や氏名とそのメンバのユーザＩＤとの対応関係を示す情報を記憶しておく。そして、入力された会議開催情報に含まれる各メンバの所属や氏名に基づいて、対応するユーザＩＤを抽出する。このユーザＩＤの集合がユーザグループ定義である。また、ポリシ生成手段６２１は、予め規定している各種サービスと、会議開催通知情報に含まれる各位置情報とを組み合わせる。この処理によって得られる各組み合わせの集合が、共有リソースグループ定義である。ポリシ生成手段６２１は、ユーザグループの代わりに、ユーザグループ定義（ユーザＩＤ）を用いてアクセス制御ポリシを作成する。従って、この場合、ユーザグループに関しては最初から実体型オブジェクトが記述されることになる。また、ポリシ生成手段６２１は、「位置」として、会議開催情報に含まれる位置（例えば、図４０に例示する「東京本社  ＴＶ会議室１８０３」等）をアクセス制御ポリシに記述する。また、ポリシ生成手段６２１は、「リソース」として、共有リソースグループ定義を記述する。すなわち、この場合、「リソース」として、サーバ等の名称を直接記述するのではなく、「東京本社  ＴＶ会議室１８０３  ファイル共有」等の位置とサービスの組み合わせを記述することになる。本例では、「東京本社のＴＶ会議室１８０３でファイル共有を行う場合の用いるリソース」を意味する。なお、知識データベース２には、「東京本社  ＴＶ会議室１８０３  ファイル共有」等を名前型オブジェクトとし、そのような名前型オブジェクトから他のオブジェクトに経路を有するオブジェクト知識（リソースに関するオブジェクト知識）が格納されている。従って、「東京本社  ＴＶ会議室１８０３  ファイル共有」等の共有リソースグループ定義に含まれる名前型オブジェクトから実体型オブジェクトを展開することができる。
【０２００】
また、ポリシ生成手段６２１は、会議開催通知情報に含まれる時刻情報を、アクセス制御ポリシを有効とする時間帯の開始時刻や終了時刻として、アクセス制御ポリシに記述する。
【０２０１】
ポリシ生成手段６２１は、生成したアクセス制御ポリシをポリシ格納手段１０２に格納する（ステップＳ６２２）。このとき、ポリシ編集手段１０１１（またはポリシ格納手段１０２１でもよい。）は、生成したアクセス制御ポリシにＩＤを割り当てる。その後、第４の実施の形態におけるポリシエンジン１と同様にして、新たに格納されたアクセス制御ポリシからアクセス制御リストに変換して、会議開催時刻に合わせて、そのアクセス制御リストをアクセス制御装置３に設定する（ステップＳ６２３）。ステップＳ６２３の動作は、具体的には、第４の実施の形態におけるステップＤ３０〜Ｄ６０、ステップＤ７０〜Ｄ１００、およびステップＤ１１０〜Ｄ１７０と同様の動作である。
【０２０２】
図４１は、第６の実施の形態の変形例を示すブロック図である。図４１に示すように、メール解析手段６１は、ＬＡＮ６３のトラフィックを監視して、ＳＭＴＰトラフィックを解析し、新たなメールの伝達を検知してもよい。メール解析手段６１が新たなメールを検知した後の動作は、ステップＳ６１２以降の動作と同様である。
【０２０３】
本実施の形態によれば、遠隔会議で必要となる異なるネットワークドメイン間の相互通信を行うにあたって、追加的なアクセス制御ポリシの編集操作を行う必要がなく、日常的にやり取りされるメールによる会議開催通知から自動的に適切なアクセス制御リストを設定することができる。従って、ユーザの利便性をさらに向上させることができる。
【０２０４】
実施の形態７．
図４２は、本発明によるアクセス制御システムの第７の実施の形態を示すブロック図である。第７の実施形態におけるアクセス制御システムは、第６の実施の形態におけるアクセス制御システムのメール解析手段６１に代えて、スケジュール解析手段７０を備える。スケジュール解析手段７０は、ＬＡＮ６３を介して、少なくとも１つ以上のユーザ端末７１と接続されている。ここでは、スケジュール解析手段７０が、ポリシエンジン６１、知識データベース２およびアクセス制御装置３とは別個の、プログラム従って動作するコンピュータである場合を例にして説明する。
【０２０５】
ユーザ端末７１は、ユーザから入力されたスケジュールを格納して管理するためのスケジュール管理手段７１１を備える。スケジュール管理手段７１１は、新たにスケジュール情報が入力される度にその内容を、ＬＡＮ６３を介して、スケジュール解析手段７０に送信する。ユーザ端末７１は、スケジュール情報の入力、格納、スケジュール解析手段７０への送信を行うことができる装置であればよい。
【０２０６】
スケジュール解析手段７０は、ＬＡＮ６３を介して、ユーザ端末７１から送信された最新のスケジュール情報を受信する。そして、そのスケジュール情報を解析して、会議開催情報を抽出し、ポリシエンジン６２へ入力する。
【０２０７】
次に、動作について説明する。
図４３は、本実施の形態のアクセス制御システムが受信したスケジュール情報に基づいてアクセス制御設定を行う処理の処理経過の例をを示すフローチャートである。まず、任意のユーザ端末７１のスケジュール管理手段７１１が、そのユーザに対して、スケジュール入力用ユーザインタフェースを提示し、スケジュール情報の入力を促す。
【０２０８】
図４４から図４６は、それぞれスケジュール入力用ユーザインタフェースの例を示す。スケジュール管理手段７１１は、例えば、図４４に例示する日付入力画面を提示し、予定を定める日付の入力を促す。日付が入力されると、スケジュール管理手段７１１は、図４５に提示する時間帯入力画面を提示し、予定を定める時間帯の入力を促す。時間帯が入力されると、スケジュール管理手段７１１は、図４６に提示する行動入力画面を提示し、入力された日付および時間帯における行動の入力を促す。スケジュール管理手段７１１は、例えば「会議」等の行動をプルダウンメニューにより選択される。また、行動予定場所や、共に行動する参加メンバの入力欄も表示し、行動予定場所や参加メンバの情報も入力される。図４６に例示する画面において「登録」ボタンがマウスクリック等されると、スケジュール管理手段７１１は、入力されたスケジュール情報（日付、時間帯、行動内容、行動予定場所、参加メンバ等）を格納する（ステップＳ７００）。また、ステップＳ７１１においてスケジュール情報を格納すると、スケジュール管理手段７１１は、そのスケジュール情報を、ＬＡＮ６３を介してスケジュール解析手段７０に送信する。
【０２０９】
次に、スケジュール解析手段７０は、スケジュール管理手段７１１から入力されたスケジュール情報の内容を解析して、所定の会議予定パタンと照合する（ステップＳ７０１）。例えば「会議」「打ち合わせ」などの会議に相当もしくは関連するキーワード列を会議予定パタンとして用意しておき、そのキーワード列と、受信したスケジュール情報に含まれる行動内容の情報とを照合すればよい。
【０２１０】
そして、スケジュール解析手段７０はステップＳ７０１における照合処理の結果から、入力されたスケジュール情報が会議予定を表しているか否かを判定する（ステップＳ７０２）。スケジュール情報が会議予定パタンに合致しない場合（ステップＳ７０２のＮ）、スケジュール解析手段７０は、以降の処理を中断し、ステップＳ７００において、新たにスケジュール情報が入力されるまで待機する。一方、入力されたスケジュール情報が会議予定パタンに合致する場合（ステップＳ７０２のＹ）、スケジュール解析手段７０は、そのスケジュール情報の内容から少なくとも会議の日時、場所および参加メンバを含む「会議開催情報」を抽出し、ポリシエンジン６２に入力する（ステップＳ７０３）。スケジュール解析手段７０は、第６の実施の形態におけるメール解析手段６１がメールから抽出する会議開催情報と同様の会議開催情報を抽出する。
【０２１１】
その後、ポリシエンジン６２は、第６の実施の形態の場合と同様に、ポリシ生成手段６２１（図４２において図示せず。図３８参照。）で会議開催情報からアクセス制御ポリシを生成して、ポリシ格納手段１０２に格納した後、新たに格納されたアクセス制御ポリシからアクセス制御リストに変換し、会議開催時刻に合わせて、そのアクセス制御リストをアクセス制御装置３に設定する（ステップＳ６２１〜Ｓ６２３）。このステップＳ６２１〜Ｓ６２３の動作は、第６の実施の形態で示したステップＳ６２１〜Ｓ６２３の動作と同様である。
【０２１２】
本実施の形態によれば、遠隔会議で必要となる異なるネットワークドメイン間の相互通信を行うにあたって、追加的なアクセス制御ポリシの編集操作を行う必要がなく、日常的なスケジュール管理行為により、自動的に適切なアクセス制御リストを設定することができる。従って、ユーザの利便性をさらに向上させることができる。
【０２１３】
なお、各ユーザ端末７１におけるスケジュール管理手段７１１は、ＬＡＮ６３から切り離されたオフライン状態で、新たなスケジュール情報を入力された場合、そのスケジュール情報をスケジュール管理手段７１１自身が有する記憶装置等に格納しておく。そして、ユーザ端末７１がＬＡＮ６３に接続されたときに、格納していたスケジュール情報を一度にスケジュール解析手段７０に送信してもよい。このような、スケジュール情報の送信態様は、ユーザ端末７１が携帯型の端末機器である場合に特に適している。
【０２１４】
実施の形態８．
図４７は、本発明によるアクセス制御システムの第８の実施の形態を示すブロック図である。第８の実施形態におけるアクセス制御システムは、第３の実施形態におけるアクセス制御システムの構成に加えて、プレゼンス管理手段８０と位置検知手段８１とを備える。なお、本実施の形態では、図２３に示すオブジェクト知識編集手段２０１を備えていなくてもよい。
【０２１５】
位置検知手段８１は、内部的に無線受信手段やセンサ手段などを有しており、無線タグなどをもつユーザの現在位置を検知したとき、少なくともそのユーザの現在位置情報をプレゼンス管理手段８０に通知する。
【０２１６】
プレゼンス管理手段８０は、少なくとも任意のユーザとその現在位置との対応を示す情報を格納するデータベース（図４７において図示せず。）を有している。図４８は、このデータベースが記憶する情報の例を示す説明図である。図４８に例示するように「Ｍｏｒｉｔａ」等のユーザ識別子と、そのユーザの現在位置を表す「関西オフィス」等の現在位置識別子とが対応づけられて、データベースに記憶される。プレゼンス管理手段８０は、位置検知手段８１から各ユーザの現在位置情報を受け取って、ユーザの移動の有無を判定する。そして、移動したユーザの現在位置をデータベース上で更新し、少なくとも移動したユーザのユーザ識別子および現在位置識別子との組を知識データベース２３のオブジェクト知識管理手段２０２３に入力する。なお、ここでは、プレゼンス管理手段８０が、知識データベース２３、アクセス制御装置３およびポリシエンジン１３とは別個の、プログラム従って動作するコンピュータである場合を例にして説明する。また、以下の説明では、図４８に例示するユーザ識別子が、ユーザグループから展開されるユーザＩＤであるものとして説明する。
【０２１７】
本実施の形態では、オブジェクト知識格納手段２０３は、各ユーザに関するオブジェクト知識を格納する。各ユーザに関するオブジェクト知識に含まれる名前型オブジェクトは、各ユーザのユーザ識別子（ユーザＩＤ）を表す。従って、ユーザＩＤは、各ユーザに関するオブジェクト知識においては、名前型オブジェクトとして扱われ、ユーザグループに関するオブジェクト知識においては、実体型オブジェクトとして扱われる。また、各ユーザに関するオブジェクト知識に含まれる名前型オブジェクトは、現在位置識別子を表す。
【０２１８】
ポリシエンジン１３が備えるポリシ格納手段１０２３（図４７において図示せず。図２３参照。）は、アクセス制御ポリシを格納する。本実施の形態におけるアクセス制御ポリシは、アクセス制御ポリシが有効となる条件として、ユーザの現在位置によって記述される条件を定めている。例えば、『ユーザ識別子が「Ｋａｔｏ」であるユーザの現在位置が「関西オフィス」であるならば有効』等の条件がアクセス制御ポリシに記述されている。
【０２１９】
次に、位置検知手段８１がユーザの現在位置を検知してプレゼンス管理手段８０に現在位置の情報を通知する態様について説明する。図４９は、ユーザ端末がユーザの操作に応じて現在位置情報を入力され、その現在位置情報をプレゼンス管理手段８０に送信する態様を示している。図４９に示すユーザ端末（位置検知手段）８１は、ユーザ８３の操作により、例えばユーザＩＤ「ｎａｋａｅ」および現在位置「関西オフィス」という情報を入力される。さらに、ユーザ端末８１は、ユーザ８３の操作により、入力された情報をプレゼンス管理手段８０に送信する。プレゼンス管理手段８０は、ユーザ端末８１から受信した情報に基づき、データベースを更新する。
【０２２０】
図５０は、特定の場所（例えば社屋等）に設置されたセンサが、各ユーザの無線タグを検出し、そのセンサが各ユーザの現在位置をプレゼンス管理手段８０に送信する態様を示している。ユーザ端末には無線タグ（ＲＦＩＤ：Radio Frequency  Identification）８２が貼り付けられ、社屋等に設置されたセンサ（位置検知手段）８１が、無線タグ８２を検出する。なお、ここではユーザ端末は、ユーザによって携帯される携帯端末であるものとする。センサ８１は、無線タグ８２を検出することによって得られたユーザＩＤおよびユーザ端末８２の現在位置（すなわちユーザの現在位置）をプレゼンス管理手段８０に送信する。プレゼンス管理手段８０は、センサ８１から受信した情報に基づき、データベースを更新する。
【０２２１】
図５０は、携帯端末８１が自動的に現在位置を算出し、ユーザＩＤとともに送信する態様を示している。ユーザによって携帯される携帯端末（位置検知手段）８１は、例えばＧＰＳ衛星からの電波により、現在位置情報を算出する。また、携帯端末８１は、予めユーザＩＤを登録される。携帯端末８１は、定期的に現在位置情報を算出する。そして、算出した現在位置情報と、登録されているユーザＩＤととを基地局を介してプレゼンス管理手段８０に送信する。プレゼンス管理手段８０は、携帯端末８１から受信した情報に基づき、データベースを更新する。
【０２２２】
なお、位置検出手段８１からプレゼンス管理手段８０への位置情報送信態様は、図４９から図５１に示した態様に限定されるわけではない。例えば、ユーザが所持したり身につけたりする機器（携帯端末等のユーザ端末に限らない。）であって、所有者のユーザＩＤを電波等で送信する機器と、予め定められた所定位置に設置され、その機器から送信される電波等を受信するセンサとを用いてもよい。この場合、センサは、電波等を受信したときにユーザＩＤを特定し、そのユーザＩＤとともに、センサの設置位置をユーザの現在位置としてプレゼンス管理手段８０に送信すればよい。また、機器が最初に電波等を送信するのではなく、予め定められた位置に設置された無線基地局等が最初に電波等を送信し、ユーザに所持された機器が無線基地局等の近くに移動して機器が無線基地局等からの電波等を検出したときに、ユーザＩＤを電波等で送信してもよい。ユーザに所持された機器からの電波等を受信した無線基地局等の動作は、上記のセンサの動作と同様である。上記の例では電波による送受信を行う場合を示したが、赤外線通信等の他の方法で情報を送受信してもよい。
【０２２３】
また、通行人を撮影するカメラやモニタ等を設置しておき、撮影した通行人の顔から通行人がどのユーザであるのかを特定する通行人識別手段によりカメラやモニタ近傍のユーザを特定してもよい。通行人識別手段は、特定したユーザのユーザＩＤとカメラやモニタの設置位置（すなわちユーザの現在位置）をプレゼンス管理手段８０に送信すればよい。また、アクセス制御の対象となる機器やその他のパーソナルコンピュータ（以下ＰＣと記す。）等が、使用者に対して認証処理等を行うことにより使用者を特定し、その使用者のユーザＩＤおよび機器やＰＣの設置位置（ユーザの現在位置）をプレゼンス管理手段８０に送信してもよい。
【０２２４】
また、ＰＣのディスプレイ装置が、ユーザを撮影してユーザがディスプレイ装置を見ていることを検知するとともにユーザＩＤを特定するユーザ検知手段を備え、そのユーザ検知手段が、特定したユーザＩＤおよびＰＣの設置位置（ユーザの現在位置）をプレゼンス管理手段８０に送信してもよい。
【０２２５】
また、航空機用等の大型のものから携帯機器用の小型・簡易なものまでの様々なジャイロやそれに準ずる機器等によりユーザの現在位置の座標、高度、ユーザの向きを検知して、検知した座標、高度、および向きを現在位置の情報としてユーザＩＤとともにプレゼンス管理手段８０に送信してもよい。なお、大型のジャイロは、乗り物等に設置し、その乗り物等の中にいるユーザの位置情報を送信する場合に用いればよい。また、ＧＰＳ、ＩＴＳ（Intelligent Transport Systems ）、無線ＬＡＮ、赤外線通信を利用する機器（特に、携帯電話機、ＰＤＡ、カーナビゲーションシステム等）が、ユーザの位置や向きを検知して、検知した位置や向きを現在位置情報としてプレゼンス管理手段８０に送信してもよい。
【０２２６】
また、ユーザの存在を確認してからそのユーザのユーザＩＤを検知する構成であってもよい。ユーザの存在を確認する手段として、例えば、赤外線等の光、圧力、温度等の変化を検知する各種センサを用いればよい。
【０２２７】
また、通信ネットワーク上におけるユーザの位置を位置情報として検知してもよい。この場合、通信ネットワークに含まれる機器やその機器に搭載されているソフトウェアが、ログインしたユーザのユーザＩＤを特定するとともに、ユーザの位置を検知して、ユーザＩＤおよびユーザの位置情報をプレゼンス管理手段８０に送信してもよい。このとき、ユーザＩＤを特定する機器やソフトウェアの位置（より具体的にはソフトウェアが搭載された機器の位置）をユーザの位置して検知してもよい。この場合、アクセス制御ポリシを記述する際に、通信ネットワークに含まれる機器やソフトウェアの位置をユーザの位置として記述してもよい。
【０２２８】
上記のような各態様において、プレゼンス管理手段８０に位置情報を送信する機器が位置検出手段８１に相当する。
【０２２９】
次に、動作について説明する。
図５２は、各ユーザの現在位置を知識データベースに通知する処理の処理経過の一例を示すフローチャートである。まず、位置検知手段８１は、任意のあるいは特定のユーザの現在位置を検知して、少なくともユーザの識別子と現在位置の識別子とを含む現在位置情報をプレゼンス管理手段８０に通知する（ステップＳ８０１）。そして、プレゼンス管理手段８０は、受け取った現在位置情報に基づいて、内部的に備えるデータベース（図４７において図示せず。）を更新する（ステップＳ８０２）。
【０２３０】
プレゼンス管理手段８０は、そのデータベースにおいて既存の現在位置情報が更新されたことなどに基づいて、現在位置が変化したユーザの存在を検知したとき、そのユーザのユーザ識別子と現在位置識別子との組からなる移動情報を生成する。そして、プレゼンス管理手段８０は、その移動情報を知識データベース２３のオブジェクト知識管理手段２０２３に通知する（ステップＳ８０３）。なお、同時に複数ユーザが移動して、それぞれの現在位置が変化した場合には、各ユーザの移動情報をすべてオブジェクト知識管理手段２０２３へ入力する。
【０２３１】
オブジェクト知識管理手段２０２３は、移動情報を受け取ると、その移動情報に基づいて、各ユーザに関するオブジェクト知識を更新する。すなわち、移動情報に含まれるユーザ識別子（ユーザＩＤ）から展開される実体型オブジェクトの内容を、移動情報に含まれている現在位置に更新する。オブジェクト知識管理手段２０２３は、展開される実体型オブジェクトを更新した名前型オブジェクト（ユーザＩＤ）を、ポリシ解析手段１０３３（図４７において図示せず。図２３参照。）に受け渡す。また、そのユーザＩＤに対応する現在位置情報もポリシ解析手段１０３３に受け渡す。
【０２３２】
続いて、ポリシ解析手段１０３３は、各アクセス制御ポリシを読み出し、各アクセス制御ポリシに含まれているユーザグループを抽出し、知識データベース２３に各ユーザグループに基づく展開を実行させる。ポリシ解析手段１０３３は、この展開によって得られるユーザＩＤの中に、オブジェクト知識管理手段２０２３から名前型オブジェクトとして受け渡されたユーザＩＤを含んでいるアクセス制御ポリシを特定する。さらに、ポリシ解析手段１０３３は、そのアクセス制御ポリシに記述されているユーザの現在位置に関する条件（例えば、『ユーザ識別子が「Ｋａｔｏ」であるユーザの現在位置が「関西オフィス」であるならば有効』等の条件）を参照する。そして、オブジェクト知識管理手段２０２３から受け渡されたユーザＩＤおよび現在位置情報と、アクセス制御ポリシに記述されている条件とに基づいて、有効と判定されるアクセス制御ポリシを選別する。このアクセス制御ポリシは、ユーザの移動により有効となったポリシである。この後、ポリシエンジン１３は、有効となったアクセス制御ポリシのＩＤを読み取り、第３の実施の形態におけるステップＣ４０〜Ｃ１１０と同様の動作を行えばよい。この結果、ユーザの現在位置の変化に応じて、アクセス制御リストが更新され、更新後のアクセス制御リストに基づくアクセス制御設定が行われることになる。
【０２３３】
また、本実施の形態において、知識データベース２３以外の機器であるプレゼンス管理手段８０、位置検知手段８１、その他の機器が、オブジェクト知識と同様のデータ構造あるいはオブジェクト知識に準ずるデータ構造によって、ユーザ識別子と現在位置識別子との組み合わせの生成や記憶等を行ってもよい。また、知識データベース２３、プレゼンス管理手段８０、位置検知手段８１、その他の機器が、ユーザ毎に現在位置識別子の履歴を管理してもよい。そして、アクセス制御ポリシを有効にする条件として、ユーザが「今」いる位置に関する条件以外に、ユーザの現在位置識別子の履歴を表す事項と位置とによって定めた条件がアクセス制御ポリシに記述されていてもよい。例えば、「この１０秒以内の間、常に」、「この２４時間以内に一度でも」、「１０分前から５分前までの間に３回以上」等の現在位置識別子の履歴を表す事項と位置とを組み合わせた「この１０秒以内の間、常に、会議室Ａにいるならば有効」等の条件がアクセス制御ポリシーに記述されていてもよい。この場合、ポリシ解析手段１０３３は、知識データベース２３からユーザの現在位置識別子の履歴を表す情報を受信し、その履歴を用いて、有効と判定されるアクセス制御ポリシを選別すればよい。
【０２３４】
また、ユーザ識別子（本例ではユーザＩＤ）から展開される実体型オブジェクトが表す位置の精度（位置の広さ）は特に限定されない。例えば、「関西オフィス」のような区画であってもよいし、より狭い「特定の座席」等であってもよい。また、実体型オブジェクトは、位置として「建造物」等を表してもよいし、より広い「街」、「国」等を表していてもよい。また、ユーザ識別子から展開される実体型オブジェクトは、緯度および経度による座標（例えば、北緯３４度４５分７秒、東経１３５度等）、高度（例えば、地上５階、海抜マイナス２００ｍ等）、ユーザやユーザの使用機器の向いている方向を表していてもよい。また、通信ネットワーク上におけるユーザの位置を表す場合には、実体型オブジェクトは、例えば、ユーザがログオンしているシステム（機器）、ユーザが利用しているファイルやディレクトリ等の各種アドレスやパス等を位置として表していてもよい。通信ネットワーク上におけるユーザの位置を表す場合における位置の精度も特に限定されない。また、１つのユーザＩＤを表す名前型オブジェクトから位置を表す実体型オブジェクトが複数展開されてもよい。例えば、あるユーザＩＤから「本社ビル」および「地上８階」等の複数の位置情報が展開されてもよい。この場合、ポリシ解析手段１０３３は、アクセス制御ポリシに記述されているユーザの現在位置に関する条件（アクセス制御ポリシを有効にする条件）と、展開により得られた複数の位置情報とを照合して、有効なアクセス制御ポリシを選別すればよい。
【０２３５】
本実施の形態によれば、ユーザの位置変化に応じてアクセス制御リストを自動的に更新するため、場所に関する制約を記載したアクセス制御ポリシを用いる場合に、予定外のユーザ移動などにも対応したアクセス制御を行うことができる。
【０２３６】
実施の形態９．
本実施の形態では、各アクセス制御ポリシにはそのアクセス制御ポリシを有効（または無効）にする条件が記述される。第８の実施の形態では、「あるユーザが特定の場所に存在すること」をアクセス制御ポリシを有効にする条件としていた。それに対し、第９の実施の形態では、あるユーザと、そのユーザとは異なる他のユーザ（以下、随伴者と呼ぶ。）とが特定の関係にあることを、アクセス制御ポリシを有効（または無効）にする条件とする。「特定の関係」とは、例えば、位置に関する関係である。以下、あるユーザと随伴者とが特定の位置関係になっていることを条件にアクセス制御ポリシーが有効になっているものとする。この条件の具体例として、例えば、『ユーザ識別子（ユーザＩＤ）が「satou 」であるユーザの現在位置と、ユーザ識別子が「suzuki」であるユーザの現在位置が同一であること』等の条件が挙げられる。この場合、ユーザ識別子が「satou」であるユーザの現在位置と、ユーザ識別子が「suzuki」であるユーザの現在位置とが同一である場合に、その条件が記述されたアクセス制御ポリシが有効とされる。ここでは、ユーザと随伴者の位置が同一であることを条件とする場合を示したが、位置が異なることを条件としてもよい。また、ユーザ（または随伴者）の現在位置が、随伴者（またはユーザ）の現在位置に包含されていることを条件としてもよい。例えば、通信ネットワーク上における位置をＩＰアドレスで表す場合、ユーザの現在位置を表すＩＰアドレスが、随伴者の現在位置を表すＩＰアドレスに包含されていること等を条件としてもよい。また、一致、相違、包含以外の位置関係を条件としてもよい。
【０２３７】
また、特定の位置関係にあること（例えば、現在位置が一致していること等）に加え、その位置が特定の場所であるということも条件にしてもよい。例えば、『ユーザ識別子が「satou」であるユーザの現在位置と、ユーザ識別子が「suzuki」であるユーザの現在位置が同一であり、かつ、その場所が「関西オフィス」であること』等の条件を定めてもよい。
【０２３８】
また、ユーザ識別子を用いて直接的に条件を定めるのではなく、ユーザグループおよび随伴者の名前型オブジェクトによって条件を定めてもよい。例えば、ユーザグループ「構内管理者」から展開されるユーザＩＤによって特定されるユーザと、ユーザグループ「ネットワーク管理者」から展開されるユーザＩＤによって特定される者の現在位置の関係を、アクセス制御ポリシが有効となる条件として定めてもよい。なお、「構内管理者」や「ネットワーク管理者」等の名前型オブジェクトから展開されるユーザＩＤは１つとは限らない。この場合、各名前型オブジェクトから展開されたユーザＩＤの一部あるいは全部について、現在位置が一致等していることを、アクセス制御ポリシが有効となる条件としてもよい。また、特定の人数について現在位置が一致等していることを、アクセス制御ポリシが有効となる条件としてもよい。特定のユーザと特定の随伴者との組み合わせにおいて現在位置が一致等していることを、アクセス制御ポリシが有効となる条件としてもよい。また、アクセス制御ポリシからルールを作成する際に、現在位置が随伴者と一致しているユーザのユーザＩＤを用いてルールを作成してもよい。この場合、現在位置が随伴者と一致しているユーザに関する行のみが生成されることになる。
【０２３９】
また、第８の実施の形態で説明したように、通信ネットワーク上におけるユーザの位置を表す場合には、ユーザがログオンしているシステム（機器）、ユーザが利用しているファイルやディレクトリ等の各種アドレスやパス等を位置として表してもよい。本実施の形態においても、ユーザがログオンしているシステム（機器）、ユーザが利用しているファイルやディレクトリ等の各種アドレスやパス等をユーザの位置として表し、その位置によって条件を定めてもよい。例えば、ファイルのアドレスをユーザの位置として表す場合、『ユーザ識別子が「satou 」であるユーザが現在アクセスしているファイルのアドレスと、ユーザ識別子が「suzuki」であるユーザが現在アクセスしているファイルのアドレスが同一であること（または異なること、あるいはアクセス制御ポリシで定められたその他の特定の関係にあること）』等を、アクセス制御ポリシが有効となる条件としてもよい。
【０２４０】
なお、随伴者は、アクセス制御ポリシにおいて、具体的な随伴者を展開するための名前型オブジェクトとして記述される。例えば、「上司」等の名前型オブジェクトとしてアクセス制御ポリシ内に記述される。ただし、個々の随伴者を識別する具体的なユーザＩＤを随伴者のデータとしてアクセス制御ポリシに記述することを認めてもよい。
【０２４１】
図５３は、本実施の形態におけるアクセス制御ポリシのデータ構造の例を示す。図５３に示すように、アクセス制御ポリシーは、ＩＤ（アクセス制御ポリシのＩＤ）、アクセス可否、ユーザグループ、位置、およびリソースのデータを含む。また、図５３に示す例では、随伴者のデータを位置のデータの一部として含んでいる。図５３では、ユーザと随伴者とが特定の位置関係にある場合に有効となるアクセス可否、ユーザグループ、随伴者のデータを含む位置の具体例を記述している。このような記述により、『ユーザグループから展開されるあるユーザと、随伴者とが、同一の場所に存在し、その場所がアクセス制御ポリシに表された位置であるならば、アクセス制御ポリシを有効にする』ということを示すものとする。すなわち、図５３に示す例では、位置としてアクセス制御ポリシに記述された場所は、ルール作成のための展開に用いられるだけではなく、そのアクセス制御ポリシが有効であるか否かを判定するための条件としても用いられる。なお、図５３に示すデータ構造は例示であり、本実施の形態におけるアクセス制御ポリシのデータ構造は図５３に示すデータ構造に限定されない。例えば、随伴者のデータをリソースのデータの一部として含むようなデータ構造であってもよい。
【０２４２】
また、『ユーザ識別子が「satou」であるユーザの現在位置と、ユーザ識別子が「suzuki」であるユーザの現在位置が同一であり、かつ、その場所が「関西オフィス」であること』等のように、具体的なユーザＩＤを含む条件を定める場合には、ユーザグループや随伴者としてユーザＩＤを記述すればよい。あるいは、そのような具体的なユーザＩＤを含む条件を別途、アクセス制御ポリシー内に記述しておけばよい。以下の説明では、アクセス制御ポリシ内のユーザグループや随伴者は、ユーザＩＤではなく、展開によってユーザＩＤを得る名前型オブジェクト（例えば、「部下」、「上司」等）で記述される場合を例にして説明する。
【０２４３】
図５４は、本発明によるアクセス制御システムの第９の実施の形態を示すブロック図である。第９の実施形態におけるアクセス制御システムは、第８の実施形態におけるアクセス制御システムの構成に加えて、オブジェクト知識解析手段９０とポリシ編集手段１０１９とを備える。プレゼンス管理手段８０、位置検知手段８１、知識データベース２３の構成や動作は第８の実施の形態と同様である。また、オブジェクト知識格納手段２０３に記憶されるオブジェクト知識も、第８の実施の形態におけるオブジェクト知識と同様である。
【０２４４】
オブジェクト知識解析手段９０は、ポリシ解析手段１０３３とオブジェクト知識管理手段２０２３との通信を中継する。オブジェクト知識解析手段９０は、オブジェクト知識の更新に伴い、オブジェクト知識管理手段２０２３がユーザＩＤとそのユーザの現在位置情報とを出力する場合、そのユーザＩＤ等を受け取り、ポリシ解析手段１０３３に受け渡す。また、ポリシ解析手段１０３３が名前型オブジェクトを展開させようとする場合、オブジェクト知識解析手段９０は、その名前型オブジェクトから展開される実体型オブジェクトとして何を表す実体型オブジェクトを展開すればよいのかを判定し、展開すべき実体型オブジェクトの実行をオブジェクト知識管理手段２０２３に行わせる。なお、ここでは、オブジェクト知識解析手段９０が、ポリシエンジン１３や知識データベース２３とは別個の、プログラム従って動作するコンピュータである場合を例にして説明する。
【０２４５】
本実施の形態では、ポリシ解析手段１０３３は、ユーザが移動したことを通知されると、各アクセス制御ポリシに記述されているユーザグループおよび随伴者の名前型オブジェクトからの展開を行う。このときオブジェクト知識解析手段９０は、ユーザＩＤを表す実体型オブジェクトを展開すべきと判定し、ユーザグループおよび随伴者の名前型オブジェクトからユーザＩＤを表す実体型オブジェクトへの展開をオブジェクト知識管理手段２０２３に実行させる。また、ポリシ解析手段１０３３は、この展開の結果得られるユーザＩＤを用いて、ユーザＩＤを名前型オブジェクトとして展開を行う。このとき、オブジェクト知識解析手段９０は、位置情報を示す実態型オブジェクトを展開すべきと判定し、ユーザＩＤから位置情報を表す実体型オブジェクトへの展開をオブジェクト知識管理手段２０２３に実行させる。この後、ポリシ解析手段１０３３は、ルールを作成する際にも展開を行う。この場合、オブジェクト知識解析手段９０は、ステップＢ８０５やステップＡ４０５と同様の展開を行えばよいと判定し、ステップＢ８０５やステップＡ４０５と同様の展開をオブジェクト知識管理手段２０２３に実行させる。オブジェクト知識解析手段９０は、オブジェクト知識の更新に起因して、ユーザＩＤとそのユーザの現在位置情報をポリシ解析手段１０３３に出力した後の１回目の展開では、ユーザＩＤを表す実体型オブジェクトを展開すべきと判定すればよい。また、２回目の展開では、位置情報を示す実態型オブジェクトを展開すべきと判定すればよい。その後の展開では、ステップＢ８０５やステップＡ４０５と同様の展開を行うと判定すればよい。
【０２４６】
ポリシ編集手段１０１９は、出力するユーザインタフェースが一部異なる点を除き、第２の実施の形態におけるポリシ編集手段１０１２（図１９参照。）と同様の動作を行う。ポリシ編集手段１０１９が出力するアクセス制御ポリシの編集用インタフェースの例を、図５５に示す。図５５に示すにおけるユーザインタフェースにおいて、「ユーザグループの選択」欄、「リソースの選択」欄、「ポリシの説明」欄は、図１５に示す「ユーザグループの選択」欄、「リソースの選択」欄、「ポリシの説明」欄と同様である。すなわち、ポリシ編集手段１０１９は、図１５に示す「ユーザグループの選択」欄、「リソースの選択」欄、「ポリシの説明」欄と同様に、これらの各欄を表示すればよい。また、ポリシ編集手段１０１９は、「位置の選択」欄では、図１５に示す「位置の選択」欄と同様の表示を行うとともに、さらに「位置の選択」欄内に「随伴すべきユーザグループの選択」欄を表示する。図５５に示す例では、ポリシ編集手段１０１９は、「随伴すべきユーザグループの選択」欄に、随伴者の名前型オブジェクトのリストと選択ボタンとを共に表示している。ポリシ編集手段１０１９は、選択ボタンで選択された随伴者の名前型オブジェクトを図５３に示す随伴者のデータとしてアクセス制御ポリシ内に記述する。また、この場合、「ユーザグループによって特定されるユーザが随伴者と同一の位置にいる」等の特定の位置関係が満たされたときには、そのユーザによるアクセスを許可しなければならない。よって、ポリシ編集手段１０１９は、アクセス制御ポリシにおける「アクセス可否」のデータとして「許可」を記述する。
【０２４７】
なお、ポリシ編集手段１０１９は、ユーザＩＤを展開するための名前型オブジェクトではなく、随伴者となる者のユーザＩＤのリストを表示して、随伴者のユーザＩＤを選択させるユーザインタフェースを表示してもよい。同様に、「ユーザグループの選択」欄の代わりに、ユーザＩＤを選択させるユーザインタフェースを表示してもよい。この場合、図５３に示す随伴者やユーザグループのデータには、ユーザＩＤが記述される。ただし、ここでは、図５４に例示するユーザインタフェースを表示し、アクセス制御ポリシ内のユーザグループや随伴者には、ユーザＩＤではなく、展開によってユーザＩＤを得る名前型オブジェクトが記述されるものとする。
【０２４８】
次に、動作について説明する。
まず、オブジェクト知識解析手段９０の動作について説明する。図５６は、オブジェクト知識解析手段９０がオブジェクト知識管理手段２０２３から出力されたユーザ識別子（ユーザＩＤ）と現在位置情報との組み合わせを中継するときの動作を示すフローチャートである。まず、オブジェクト知識解析手段９０は、ユーザ識別子と現在位置情報の組をオブジェクト知識管理手段２０２３から受け取る（ステップＳ９０１）。次に、オブジェクト知識解析手段９０は、受け取ったユーザ識別子と現在位置情報の組をポリシ解析手段１０３３に受け渡す。
【０２４９】
図５７は、ユーザ識別子と現在位置情報をポリシ解析手段１０３３に中継した後、ポリシ解析手段１０３３が有効なアクセス制御ポリシを選別するまでの間におけるオブジェクト知識解析手段９０の動作を示す説明図である。オブジェクト知識解析手段９０は、各アクセス制御ポリシに記述されているユーザグループおよび随伴者の名前型オブジェクトをポリシ解析手段１０３３から受け取る（ステップＳ９１１）。続いて、オブジェクト知識解析手段９０は、ユーザＩＤを表す実体型オブジェクトを展開すべきと判定し、ステップＳ９１１で受け取った名前型オブジェクトからユーザＩＤを表す実体型オブジェクトへの展開をオブジェクト知識管理手段２０２３に実行させ、ユーザＩＤを得る（ステップＳ９１２）。オブジェクト知識解析手段９０は、このユーザＩＤをポリシ解析手段１０３３に渡す。次に、ポリシ解析手段１０３３から名前型オブジェクトとしてユーザＩＤを受け取る。このとき、オブジェクト知識解析手段９０は、位置情報を示す実態型オブジェクトを展開すべきと判定し、受け取ったユーザＩＤから位置情報を表す実体型オブジェクトへの展開をオブジェクト知識管理手段２０２３に実行させ、ユーザの現在位置情報を得る（ステップＳ９１３）。続いて、オブジェクト知識解析手段９０は、ユーザＩＤとステップＳ９１３で得た現在位置情報の組をポリシ解析手段１０３３に通知する（ステップＳ９１３）。
【０２５０】
次に、アクセス制御システム全体としての動作について説明する。プレゼンス管理手段８０が備えるデータベースの更新は、第８の実施の形態と同様に行う。プレゼンス管理手段８０は、そのデータベースにおいて既存の現在位置情報が更新されたことなどに基づいて、現在位置が変化したユーザの存在を検知したとき、そのユーザのユーザ識別子と現在位置識別子との組からなる移動情報を生成する。そして、プレゼンス管理手段８０は、その移動情報を知識データベース２３のオブジェクト知識管理手段２０２３に通知する。なお、同時に複数ユーザが移動して、それぞれの現在位置が変化した場合には、各ユーザの移動情報をすべてオブジェクト知識管理手段２０２３へ入力する。
【０２５１】
オブジェクト知識管理手段２０２３は、移動情報を受け取ると、その移動情報に基づいて、各ユーザに関するオブジェクト知識を更新する。すなわち、移動情報に含まれるユーザ識別子（ユーザＩＤ）から展開される実体型オブジェクトの内容を、移動情報に含まれている現在位置に更新する。オブジェクト知識管理手段２０２３は、展開される実体型オブジェクトを更新した名前型オブジェクト（ユーザＩＤ）を、ポリシ解析手段１０３３に受け渡す。また、そのユーザＩＤに対応する現在位置情報もポリシ解析手段１０３３に受け渡す。このときオブジェクト知識解析手段９０は、ステップＳ９０１，Ｓ９０２（図５６参照。）の動作を行い、ユーザＩＤおよび現在位置情報をオブジェクト知識管理手段２０２３からポリシ解析手段１０３３に中継する。
【０２５２】
続いて、ポリシ解析手段１０３３は、各アクセス制御ポリシを読み出し、各アクセス制御ポリシに含まれているユーザグループおよび随伴者を抽出し、このユーザグループおよび随伴者に基づく展開を実行させる。このとき、ポリシ解析手段１０３３は、抽出したユーザグループおよび随伴者の名前型オブジェクトをオブジェクト知識解析手段９０に渡す。すると、オブジェクト知識解析手段９０は、ステップＳ９１１，Ｓ９１２（図５７参照。）の動作を行い、展開によって得られたユーザＩＤをポリシ解析手段１０３３に渡す。
【０２５３】
次に、ポリシ解析手段１０３３は、上記の展開によって得られたユーザＩＤと、ユーザの移動に起因するオブジェクト知識の更新に伴ってオブジェクト知識管理手段２０２３から現在位置情報とともに受け渡されたユーザＩＤとを照合する。そして、一致するユーザＩＤが存在するならば、そのユーザＩＤを展開させた名前型オブジェクト（ユーザグループまたは随伴者）を含んでいたアクセス制御ポリシを特定する。
【０２５４】
ポリシ解析手段１０３３は、特定したアクセス制御ポリシから抽出したユーザグループおよび随伴者に基づく展開の結果得られたユーザＩＤによる展開を、オブジェクト知識解析手段９０を介して知識データベース２３に実行させる。このとき、ポリシ解析手段１０３３は、そのユーザＩＤをオブジェクト知識解析手段９０に渡す。すると、オブジェクト知識解析手段９０は、ステップＳ９１３，Ｓ９１４（図５７参照。）の動作を行い、ポリシ解析手段１０３３から渡されたユーザＩＤとそのユーザＩＤに対応する現在位置情報を組にしてポリシ解析手段１０３３に渡す。
【０２５５】
ポリシ解析手段１０３３は、ユーザグループから展開されたユーザＩＤおよびそのユーザＩＤに対応する現在位置情報と、随伴者から展開されたユーザＩＤおよびそのユーザＩＤに対応する現在位置情報とに基づいて、ユーザ（ユーザグループから展開されたユーザＩＤが表すユーザ）と随伴者との位置関係が、アクセス制御ポリシが定めている条件（例えば、（例えば、『ユーザグループから展開されたユーザＩＤによって特定されるユーザの現在位置が、随伴者から展開されたユーザＩＤによって特定されるユーザの現在位置と同一であること』等の条件）を満たしているか否かを判定する。そして、ポリシ解析手段１０３３は、ユーザと随伴者の位置関係の条件が満たされているアクセス制御ポリシを、有効なアクセス制御ポリシとして選別する。このアクセス制御ポリシは、ユーザや随伴者の移動により有効となったポリシである。この後、ポリシエンジン１３は、有効となったアクセス制御ポリシのＩＤを読み取り、第３の実施の形態におけるステップＣ４０〜Ｃ１１０と同様の動作を行えばよい。この結果、ユーザの現在位置の変化に応じて、アクセス制御リストが更新され、更新後のアクセス制御リストに基づくアクセス制御設定が行われることになる。
【０２５６】
また、ポリシ解析手段１０３３は、ユーザＩＤに基づいて特定したアクセス制御ポリシのうち、有効でないと判定したアクセス制御ポリシのＩＤをアクセス制御リスト設定手段３０１に出力する。アクセス制御リスト設定手段１０６３は、そのＩＤを有する行の削除をアクセス制御リスト格納手段３０１に実行させる。ステップＣ１１０（図２４参照。）の処理は、この後に実行する。
【０２５７】
なお、ポリシ解析手段１０３３は、ステップＣ８０（図２４参照。）でルールを作成するときにも展開を行う。このとき、オブジェクト知識解析手段９０は、ステップＢ８０５やステップＡ４０５と同様の展開を行えばよいと判定し、ステップＢ８０５やステップＡ４０５と同様の展開をオブジェクト知識管理手段２０２３に実行させる。
【０２５８】
また、アクセス制御ポリシ内に記述される位置は、具体的な位置を展開するための名前型オブジェクトとして記述されていてもよい。例えば、「本社会議室」を名前型オブジェクトとし、その名前型オブジェクトから展開される実体型オブジェクトとして「本社会議室Ａ」、「本社会議室Ｂ」を含むオブジェクト知識がオブジェクト知識格納手段２０３に記憶されているとする。このような場合、アクセス制御ポリシ内に位置として「本社会議室」等の名前型オブジェクトを記述しておいてもよい。この場合、ポリシ解析手段１０３３は、本社会議室」等の名前型オブジェクトから「本社会議室Ａ」、「本社会議室Ｂ」等の実体型オブジェクトを展開し、ユーザや随伴者が「本社会議室Ａ」、「本社会議室Ｂ」等に存在するか否かを判定して、予め定められた条件（例えば、『ユーザおよび随伴者がともに「本社会議室Ａ」または「本社会議室Ｂ」に存在すること』等）を満たしているかを判定してもよい。
【０２５９】
次に、本実施の形態における動作（特に、有効なアクセス制御ポリシを選別する動作）の具体例を示す。本例では、部下と上司が共に特定の位置に同席していることを条件に有効となるアクセス制御ポリシを選別する場合を示す。図５８は、このようなアクセス制御ポリシの例を示す説明図である。図５８に示すアクセス制御ポリシは、図５３に例示したデータ構造で記述されている。また、本例では、アクセス制御ポリシにおける「位置」に、ユーザＩＤから展開され得る現在位置（例えば、「関西オフィス」等）が記述されるものとする。また、本例では、簡単のため、図５８に示した「部下」、「関西オフィス」、「上司」、「関西人事管理サーバ」からはそれぞれ１つの実体型オブジェクトが展開されるものとする。具体的には、ユーザグループとして記述された名前型オブジェクト「部下」を展開すると、実体型オブジェクトとしてユーザＩＤ「Morita」が得られるものとする。また、随伴者として記述された名前型オブジェクト「上司」を展開すると、実体型オブジェクトとしてユーザＩＤ「Nakae 」が得られるものとする。同様に、位置として記述された名前型オブジェクト「関西オフィス」を展開すると、実体型オブジェクトとしてＩＰアドレス「3.2.1.0/24」が得られるものとする。また、リソースとして記述された名前型オブジェクト「関西人事管理サーバ」を展開すると、ＩＰアドレス「1.2.3.4 」とポート番号「１２３４５」との組が得られるものとする。
【０２６０】
「Nakae 」によって特定される者（本例では上司）が自宅から関西オフィスに移動したことにより、プレゼンス管理手段８０が、内部のデータベースに記憶しているユーザの位置情報を、図４８に示す状態から、図４９（図５０や図５１でもよい。）に示す状態に更新したとする。このとき、プレゼンス管理手段８０は、移動情報（本例では、「Nakae 」と更新後の現在位置識別子「関西オフィス」との組）をオブジェクト知識管理手段２０２３に通知する。
【０２６１】
オブジェクト知識管理手段２０２３は、移動情報を通知されると、その移動情報に基づいてオブジェクト知識格納手段２０３に記憶されているオブジェクト知識を更新する。本例では、位置を表す実体型オブジェクトであって、移動情報に含まれるユーザ識別子（ユーザＩＤ）「Nakae 」から展開される実体型オブジェクトの内容を、移動情報に含まれている「関西オフィス」に更新する。なお、「Morita」によって特定されるユーザは関西オフィスに存在しているので、「Morita」を名前型オブジェクトとし「関西オフィス」を実体型オブジェクトとするオブジェクト知識は、既にオブジェクト知識格納手段２０３に記憶されている。また、オブジェクト知識管理手段２０２３は、ユーザＩＤ「Nakae 」およびそのユーザＩＤに対応する現在位置情報「関西オフィス」の組を、オブジェクト知識解析手段９０を介して、ポリシ解析手段１０３３に送る。このとき、オブジェクト知識解析手段９０は、ステップＳ９０１，Ｓ９０２（図５６参照。）の動作を行い、「Nakae 」と「関西オフィス」の組をオブジェクト知識管理手段２０２３からポリシ解析手段１０３３に中継する。
【０２６２】
続いて、ポリシ解析手段１０３３は、各アクセス制御ポリシを読み出し、各アクセス制御ポリシに含まれているユーザグループおよび随伴者を抽出する。そして、ポリシ解析手段１０３３は、抽出した各ユーザグループおよび各随伴者に基づく展開を、オブジェクト知識解析手段９０を介して知識データベース２３に実行させる。このとき、ポリシ解析手段１０３３からオブジェクト知識解析手段９０に渡される各ユーザグループおよび各随伴者の情報の中には、図５８に示すアクセス制御ポリシから抽出されたユーザグループ「部下」や随伴者「上司」も含まれる。オブジェクト知識解析手段９０は、ステップＳ９１１，Ｓ９１２（図５７参照。）の動作を行い、ポリシ解析手段１０３３から渡された各ユーザグループおよび各随伴者に基づく展開によって得られたユーザＩＤをポリシ解析手段１０３３に渡す。このユーザＩＤの中には、「部下」から展開された「Morita」および「上司」から展開された「Nakae 」が含まれている。
【０２６３】
次に、ポリシ解析手段１０３３は、上記の展開によって得られたユーザＩＤと、ユーザの移動に起因するオブジェクト知識の更新に伴ってオブジェクト知識管理手段２０２３から現在位置情報とともに受け渡されたユーザＩＤ（本例では、「関西オフィス」とともに受け渡された「Nakae 」）とを照合する。そして、一致するユーザＩＤが存在するならば、そのユーザＩＤを展開させた名前型オブジェクトを含んでいたアクセス制御ポリシを特定する。図５８に例示したアクセス制御ポリシに含まれる「上司」から「Nakae 」が展開されている。従って、ポリシ解析手段１０３３が特定するアクセス制御ポリシの中に、図５８に例示するアクセス制御ポリシも含まれる。
【０２６４】
次に、ポリシ解析手段１０３３は、特定したアクセス制御ポリシ内のユーザグループおよび随伴者に基づく展開の結果得られたユーザＩＤによる展開を、オブジェクト知識解析手段９０を介して知識データベース２３に実行させる。このとき、ポリシ解析手段１０３３からオブジェクト知識解析手段９０に渡されるユーザＩＤの中には、「部下」から展開された「Morita」および「上司」から展開された「Nakae 」も含まれる。オブジェクト知識解析手段９０は、ステップＳ９１３，Ｓ９１４（図５７参照。）の動作を行い、ポリシ解析手段１０３３から渡されたユーザＩＤとそのユーザＩＤに対応する現在位置情報を組にしてポリシ解析手段１０３３に渡す。この組の中には、「Morita」と「関西オフィス」の組、および「Nakae 」と「関西オフィス」の組が含まれている。ポリシ解析手段１０３３は、特定したアクセス制御ポリシに示されている条件（そのアクセス制御ポリシを有効にする条件）と、そのアクセス制御ポリシ内のユーザグループと随伴者それぞれに対応するユーザＩＤと現在位置情報の組とに基づいて、特定した各アクセス制御ポリシが有効であるかを判定する。図５８に例示するアクセス制御ポリシは、部下の現在位置と上司の現在位置とが同一であり、かつ、その位置が「関西オフィス」であることを条件に有効とされることを示している。そして、「部下」から展開された「Morita」および「上司」から展開された「Nakae 」の展開によって、「Morita」と「関西オフィス」の組、および「Nakae 」と「関西オフィス」が得られている。従って、ポリシ解析手段１０３３は、「部下」である「Morita」の現在位置と「上司」である「Nakae 」の現在位置が同一であり、かつ、その位置が「関西オフィス」であることを認識し、『部下の現在位置と上司の現在位置とが同一であり、かつ、その位置が「関西オフィス」であること』という条件が満たされていると判定する。従って、ポリシ解析手段１０３３は、図５８に示すアクセス制御ポリシが有効であると判定する。ポリシ解析手段１０３３は、特定した他のアクセス制御ポリシについても同様に有効であるかを判定し、有効なアクセス制御ポリシを選別する。
【０２６５】
この後、ポリシエンジン１３は、有効となったアクセス制御ポリシのＩＤを読み取り、第３の実施の形態におけるステップＣ４０〜Ｃ１１０と同様の動作を行う。ステップＣ８０では、有効と判定されたアクセス制御ポリシによってルールを作成する。このとき、ポリシ解析手段１０３３は、オブジェクト知識解析手段９０を介して展開を実行させる。オブジェクト知識解析手段９０は、ステップＢ８０５やステップＡ４０５と同様の展開を行えばよいと判定し、ステップＢ８０５やステップＡ４０５と同様の展開をオブジェクト知識管理手段２０２３に実行させる。図５８に示すアクセス制御ポリシからルールを作成する際には、ユーザグループとして記述された名前型オブジェクト「部下」からの展開によりユーザＩＤ「Morita」が得られる。また、位置として記述された名前型オブジェクト「関西オフィス」からの展開によりＩＰアドレス「3.2.1.0/24」が得られる。また、リソースとして記述された「関西人事管理サーバ」の展開によりＩＰアドレス「1.2.3.4 」とポート番号「１２３４５」との組が得られる。ポリシ解析手段１０３３は、展開により得られたこれらの情報を用いて、図５９に例示するルールを作成する。
【０２６６】
ポリシ解析手段１０３３は、このルールをアクセス制御リスト設定手段１０６３に出力し、アクセス制御リスト設定手段１０６３は、ルールを変換して図６０に例示する行を生成する。さらに、アクセス制御リスト設定手段１０６３は、図６０に例示する行をアクセス制御リスト格納手段３０１に記憶させ、その後、アクセス制御手段３０２にアクセス制御の設定を実行させる。この結果、「Morita」によるＩＰアドレス「3.2.1.0/24」からＩＰアドレス「1.2.3.4 」、ポート番号「１２３４５」へのアクセスが許可される。
【０２６７】
その後、ユーザＩＤが「Nakae 」であるユーザ（上司）が「関西オフィス」から「本社オフィス」に移動して、「Nakae 」から展開される実体型オブジェクトの内容が「本社オフィス」に更新されたとする。すると、既に説明した場合と同様に、オブジェクト知識管理手段２０２３は、ユーザＩＤ「Nakae 」およびそのユーザＩＤに対応する現在位置情報「本社オフィス」の組を、オブジェクト知識解析手段９０を介して、ポリシ解析手段１０３３に送る。
【０２６８】
続いて、ポリシ解析手段１０３３は、各アクセス制御ポリシを読み出し、各アクセス制御ポリシに含まれているユーザグループおよび随伴者を抽出し、抽出した各ユーザグループおよび各随伴者に基づく展開を、オブジェクト知識解析手段９０を介して知識データベース２３に実行させる。ポリシ解析手段１０３３は、既に説明した場合と同様に、この結果得られるユーザＩＤと、通知されたユーザＩＤ「Nakae 」とを照合して、「Nakae 」を展開させた名前型オブジェクトを含んでいたアクセス制御ポリシを特定する。このとき特定されるアクセス制御ポリシの中に、図５８に例示するアクセス制御ポリシも含まれる。次に、ポリシ解析手段１０３３は、特定したアクセス制御ポリシ内のユーザグループおよび随伴者に基づく展開の結果得られたユーザＩＤによる展開を、オブジェクト知識解析手段９０を介して知識データベース２３に実行させる。この展開により、今度は、「Morita」と「関西オフィス」の組、および「Nakae 」と「本社オフィス」の組が得られる。従って、『部下の現在位置と上司の現在位置とが同一であり、かつ、その位置が「関西オフィス」であること』が満たされなくなる。よって、ポリシ解析手段１０３３は、図５８に示すアクセス制御ポリシが有効でないと判定する。
【０２６９】
この場合、図５８に示すアクセス制御ポリシは、ユーザＩＤに基づいて特定されるアクセス制御ポリシには含まれるが、有効ではないと判定される。ポリシ解析手段１０３３は、このようなアクセス制御ポリシのＩＤをアクセス制御リスト設定手段３０１に出力する。アクセス制御リスト設定手段１０６３は、そのＩＤを有する行の削除をアクセス制御リスト格納手段３０１に実行させる。この結果、図６０に示す行は削除される。この後、ステップＣ１１０の処理（図２４参照。）を実行することにより、「Morita」によるＩＰアドレス「3.2.1.0/24」からＩＰアドレス「1.2.3.4 」、ポート番号「１２３４５」へのアクセスが許可されなくなる。
【０２７０】
さらに、ユーザＩＤが「Morita」であるユーザが「関西オフィス」から「本社オフィス」に移動して、「Morita」から展開される実体型オブジェクトの内容が「本社オフィス」に更新されたとする。この場合の、オブジェクト知識管理手段２０２３、オブジェクト知識解析手段９０、ポリシ解析手段１０３３の動作は、上記の場合と同様である。この場合、ポリシ解析手段１０３３は、「Morita」と「本社オフィス」の組、および「Nakae 」と「本社オフィス」の組を得る。「Morita」と「Nakae 」に対応する現在位置は一致するが、その位置は「関西オフィス」ではない。よって、図５８に例示するアクセス制御ポリシは有効と判定されず、「Morita」によるＩＰアドレス「3.2.1.0/24」からＩＰアドレス「1.2.3.4 」、ポート番号「１２３４５」へのアクセスが許可されない状態が維持される。
【０２７１】
以上の説明では、簡単のため、図５８に示した「部下」、「関西オフィス」、「上司」、「関西人事管理サーバ」からはそれぞれ１つの実体型オブジェクトが展開されるものとした。ユーザグループ、位置、随伴者、リソースから展開される実体型オブジェクトの数が複数となってもよい。ユーザグループに基づいて導出されるユーザＩＤおよび現在位置情報の組と、随伴者に基づいて導出されるユーザＩＤおよび現在位置情報の組がそれぞれ複数となった場合には、ポリシ解析手段１０３３は、例えば、以下のように動作すればよい。ポリシ解析手段１０３３は、ステップＣ８０と同様にルールを生成する際に、ルール中に記述するユーザＩＤとして、例えば、ユーザグループから導出されたユーザＩＤのうち、随伴者から導出されたユーザＩＤと現在位置情報が同一であったユーザＩＤ（あるいは、随伴者から導出されたユーザＩＤと現在位置情報が同一であり、かつ、現在位置が「関西オフィス」等の特定の位置であるユーザＩＤ）を用いればよい。また、アクセス制御リスト設定手段１０６３は、そのルールから行を生成すればよい。この結果、随伴者と現在位置が一致している等の条件を満たしているユーザに関する行のみが作成され、そのユーザに関するアクセス制御が設定される。
【０２７２】
また、展開の際に起点となる名前型オブジェクトから実体型オブジェクトへの経路は、起点となる名前型オブジェクトから他の名前型オブジェクトを辿り実体型オブジェクトに到達するような経路であってもよい。
【０２７３】
本例では、アクセス制御ポリシにおける「位置」には、ユーザＩＤから展開され得る現在位置（例えば、「関西オフィス」等）が記述される。ユーザＩＤから展開されることがない場所をアクセス制御ポリシにおける「位置」として記述してもよい。例えば、「本社会議室Ａ」または「本社会議室Ｂ」等はユーザＩＤから展開される実体型オブジェクトとしてオブジェクト知識に含まれる場合があるが、その上位概念である「本社会議室」は、ユーザＩＤから展開される実体型オブジェクトとしてオブジェクト知識に含まれることはないものとする。このような場合に、アクセス制御ポリシにおける「位置」として、「本社会議室」を記述してもよい。ただし、この場合、ユーザＩＤから展開される現在位置と、アクセス制御ポリシに記述された「位置」との同一性を判定可能にする必要がある。そのため、ユーザＩＤから展開され得る現在位置の上位概念（本例では「本社会議室」）を名前型オブジェクトとし、ユーザＩＤから展開され得る現在位置（本例では「本社会議室Ａ」、「本社会議室Ｂ」）を実体型オブジェクトとするオブジェクト知識をオブジェクト知識格納手段に記憶させておけばよい。ポリシ解析手段１０３３は、アクセス制御ポリシが有効になるための条件が満たされているかを判定するときには、ユーザＩＤから展開される現在位置と、「位置」としてアクセス制御ポリシに記述された上位概念から展開される位置との同一性を判定すればよい。
【０２７４】
また、図５５に例示する編集用ユーザインタフェースでは、「随伴すべきユーザグループ」の選択をオペレータに促す構成になっている。ポリシ編集手段１０１９は、「随伴してはならないユーザグループ」の選択をオペレータに促す編集用ユーザインタフェースを表示してもよい。この編集用ユーザインタフェースでは、随伴してはならないユーザグループのリストおよび選択ボタンを明示的に表示する。ポリシ編集手段１０１９は、「随伴してはならないユーザグループ」が選択されると、そのユーザグループをアクセス制御ポリシにおける随伴者として記述する。また、この場合、「ユーザが、その随伴者と同一の位置にいる」等の特定の位置関係が満たされたときには、そのユーザによるアクセスを禁止させなければならない。よって、ポリシ編集手段１０１９は、アクセス制御ポリシにおける「アクセス可否」のデータとして「不許可」を記述する。
【０２７５】
また、上記の具体例では、オフィスにおけるサーバへのアクセス制御を例にしたが、本実施の形態は、他の場合にも適用できる。例えば、『商談を行う展示会において、説明員と、一部の重要顧客が同じ場所にいるときにのみ、「販売戦略に関する資料」へのアクセスを許可する』等のアクセス制御にも適用可能である。また、「説明員と重要顧客が同一の場所にいること」をアクセス制御ポリシが有効となる条件として定め、かつ、「説明員と重要顧客と一般顧客が同一の場所にいること」をアクセス制御ポリシが無効となる条件として定めていてもよい。この場合、説明員と重要顧客と一般顧客が同一の場所にいるときには、「販売戦略に関する資料」へのアクセスを許可する旨を記述したアクセス制御ポリシは無効とされ、「販売戦略に関する資料」へのアクセスが許可されなくなる。また、説明員と重要顧客が同一の場所にいて、その場所に他の者がいないときには、「販売戦略に関する資料」へのアクセスを許可する旨を記述したアクセス制御ポリシは有効とされ、アクセスが許可される。
【０２７６】
また第９の実施の形態は、例えば、『会議を行う際に、「所定の会議室に会議メンバが全員揃う (一緒に居る)」ことによってアクセス制御ポリシが有効となり、会議で用いるサービスや資料などへのアクセスを許可する』等のアクセス制御にも適用可能である。また、「会議メンバが同一の場所に全員揃っていること」をアクセス制御ポリシが有効となる条件として定め、かつ、「会議メンバと会議メンバ以外の人が同一の場所に居ること」をアクセス制御ポリシが無効となる (あるいは「不許可」のポリシとして有効となる) 条件として定めていてもよい。この場合、会議メンバが欠けた際や、会議メンバ以外の人が含まれた場合には、会議で用いるサービスや資料などへのアクセスを許可する旨を記述したアクセス制御ポリシは無効 (あるいは、アクセスを不許可とする旨を記述したアクセス制御ポリシが有効) とされ、会議で用いるサービスや資料などへのアクセスは許可されなくなる。また、会議メンバ以外の人がその場所から居なくなり、会議メンバ全員が揃っているときには、会議で用いるサービスや資料などへのアクセスを許可する旨を記述したアクセス制御ポリシは有効とされ、アクセスが許可される。また、会議メンバ以外にも、『個人情報などの重要データに対してアクセスを行う際に、関係する監督者全員が揃っているときのみ、アクセスを許可する』等、他のアクセス制御にも適用可能である。
【０２７７】
このような適用例では、図５８に例示するようなアクセス制御ポリシを作成する際に、ユーザグループとして記述されるグループに属するユーザと、随伴者として記述されるグループに属するユーザとが重複する。例えば、ユーザグループおよび随伴者として、会議参加者全員を含むグループを記述すればよい。また、ユーザグループおよび随伴者として、異なるグループが記述されていてもよい。例えば、オペレータは、ユーザグループとして、「会議メンバのうち、社内のある役職のユーザ」のグループＡ１を指定し、随伴者として、「グループＡ１のユーザを包含する会議参加者全員」のグループＢを指定し、リソースとしてグループＡ１向けのリソースＣ１（機密情報を含む資料等）を指定するアクセス制御ポリシを編集すればよい。この場合、グループＡ１のユーザは、グループＢのユーザが全員一緒にいるときだけ、リソースＣ１へのアクセスが許可される。また、ユーザグループとして、「会議メンバのうち、社外のある企業の社員」のグループＡ２を指定し、随伴者として、「グループＡ２のユーザを包含する会議参加者全員」のグループＢを指定し、リソースとしてグループＡ２向けのリソースＣ２（外部に公開してよい資料等）を指定するアクセス制御ポリシを編集してもよい。この場合、グループＡ２のユーザは、グループＢのユーザが全員一緒にいるときだけ、リソースＣ２へのアクセスが許可される。また、ユーザグループとして、「会議で使用するシステムのオペレータ」のグループＡ９を指定し、随伴者として、「グループＡ９のユーザを包含する会議参加者全員」のグループＢ」を指定し、リソースとしてグループＡ９向けのリソースＣ９（会議で使用するシステムの管理端末等）を指定するアクセス制御ポリシを編集してもよい。この場合、グループＡ９のユーザは、グループＢのユーザが全員一緒にいるときだけ、リソースＣ９へのアクセスが許可される。
【０２７８】
このような適用例では、時刻に基づいてアクセス制御を変更するのではなく、会議参加者が全員揃ったという事実上の会議の開始にあわせた柔軟なアクセス制御の変更が可能となる。会議終了時も同様である。また、例示したような簡単なアクセス制御ポリシを作成することで、会議参加者以外への情報漏洩を防止することができる。
【０２７９】
人と同様に、サーバやＰＣ、携帯端末などの装置の位置の関係を、アクセス制御ポリシが有効となる条件として定めてもよい。 人と装置の場合、例えば、『ある端末を、特別なユーザが所持している (端末とユーザが同じ場所に居る) ときのみ、その端末から特定のリソースへのアクセスを許可する』等のアクセス制御や、逆に『あるユーザが、特別な端末を所持している (ユーザと端末が同じ場所に居る) ときのみ、そのユーザから特定のリソースへのアクセスを許可する』等のアクセス制御にも適用可能である。また、「あるユーザと特別な端末が同一の場所に居ること」をアクセス制御ポリシが有効となる条件として定め、かつ、「あるユーザと特別な端末と他のユーザが同一の場所に居ること」や「あるユーザと特別な端末と他の端末が同一の場所に居ること」をアクセス制御ポリシが無効となる (あるいは「不許可」のポリシとして有効となる) 条件として定めていてもよい。同様に、『ユーザとサーバが同一の場所に居るとき (ユーザがサーバのある場所に居るとき) のみ、そのサーバ上のリソースへのアクセスを許可する』、『端末とサーバが同一の場所に居るとき (端末がサーバのある場所にあるとき) のみ、そのサーバ上のリソースへのアクセスを許可する』、『端末と端末が同一の場所に居るとき (端末同士を近づけたとき) のみ、互いの端末上のリソースへのアクセスを許可する』等のアクセス制御にも適用可能である。
【０２８０】
このような適用例では、図５８に例示するようなアクセス制御ポリシを作成する際に、ユーザグループや随伴者のグループとして装置のグループを指定するアクセス制御ポリシを作成すればよい。また、装置の位置を管理するためには、プレゼンス管理手段８０は、装置の識別子と、装置の現在位置識別子とを管理すればよい。装置の現在位置をプレゼンス管理手段８０に通知する態様は、ユーザの現在位置を通知する場合と同様である。また、プレゼンス管理手段８０は、現在位置が変化した装置の存在を検知したとき、その装置の識別子と現在位置識別子との組からなる移動情報を生成し、オブジェクト知識管理手段２０２３に通知すればよい。また、オブジェクト知識格納手段２０３は、装置の識別子を名前型オブジェクトとし、装置の現在位置情報を実態型オブジェクトとするオブジェクト知識を記憶する。ただし、本適用例では、装置の識別子、装置の現在位置識別子を用いて処理を行うが、処理そのものは第９の実施の形態で説明した処理と同様である。
【０２８１】
第８の実施の形態で説明したように、ＰＣのディスプレイ装置が、ユーザを撮影してユーザがディスプレイ装置を見ていることを検知するとともにユーザＩＤを特定するユーザ検知手段を備え、そのユーザ検知手段が、特定したユーザＩＤおよびＰＣの設置位置（ユーザの現在位置）をプレゼンス管理手段８０に送信してもよい。この場合、ＰＣの設置場所に所定のユーザのみが存在するときにはそのユーザにアクセスを許可するが、その場所に所定のユーザがいたとしても他のユーザも一緒にディスプレイを見ているときには、所定のユーザにアクセスを許可しないという条件が定められていてもよい。
【０２８２】
本実施の形態によれば、アクセス制御対象となるユーザの位置と、アクセス制御の基準となるユーザである随伴者 (例えば、随行者、説明員、監視・監督者、警備員、管理者、上司等) の位置がどのような関係 (一致、不一致、その他特定の関係) にあるかを、アクセス制御ポリシを有効（または無効）にする条件として定め、その条件をアクセス制御ポリシに記述する。そして、それらのユーザの位置変化に応じて、アクセス制御リストの有効、無効を自動的に更新する。従って、場所に関する制約を記載したアクセス制御ポリシを用いる場合に、静的な場所を指定する以外に、基準となるユーザ（随伴者）の位置を動的な場所として指定し、アクセス制御を行うことができる。
【０２８３】
また、本発明によるアクセス制御システムは、上記の各実施の形態のいずれか同士を組み合わせた構成としてもよい。
【０２８４】
上記の各実施の形態では、ポリシエンジンと、アクセス制御装置と、知識データベースとが別個のコンピュータである場合を例に説明したが、ポリシエンジンとアクセス制御装置とが同一のコンピュータによって実現されていてもよい。また、ポリシエンジンと、知識データベースとが同一のコンピュータによって実現されていてもよい。さらに、ポリシエンジン、アクセス制御装置、および知識データベースが同一のコンピュータによって実現されていてもよい。
【０２８５】
また、第５の実施の形態において、システム構成管理手段５０は、ポリシエンジン、知識データベース、またはいずれかのアクセス制御装置と同一のコンピュータによって実現されていてもよい。第６の実施の形態において、メール解析手段６１は、ポリシエンジン、知識データベース、またはアクセス制御装置と同一のコンピュータによって実現されていてもよい。第７の実施の形態において、スケジュール解析手段７０は、ポリシエンジン、知識データベース、またはアクセス制御装置と同一のコンピュータによって実現されていてもよい。第８の実施の形態において、プレゼンス管理手段８０は、ポリシエンジン、知識データベース、またはアクセス制御装置と同一のコンピュータによって実現されていてもよい。第９の実施の形態において、オブジェクト知識解析手段９０は、ポリシエンジン、知識データベース、またはアクセス制御装置と同一のコンピュータによって実現されていてもよい。
【０２８６】
また、第６の実施の形態および第７の実施の形態で示したＬＡＮ６３の代わりに、他の通信ネットワークを利用してもよい。
【０２８７】
また、上記の各実施の形態では、アクセス制御ポリシの中にユーザグループを記述している。ユーザグループの名称の代わりに、装置のグループの名称をアクセス制御ポリシに記述してもよい。この場合、オブジェクト知識格納手段は、装置のグループに関するオブジェクト知識を格納する。装置のグループに関するオブジェクト知識は、名前型オブジェクトとして装置のグループの名称を含み、実体型オブジェクトとして各装置を識別する装置ＩＤを実体型オブジェクトとして含んでいればよい。また、装置のグループの名称を表す名前型オブジェクトは、他の名前型オブジェクトまたは装置ＩＤを表す実体型オブジェクトへの経路を有していればよい。アクセス制御ポリシに装置のグループの名称が記述される場合であっても、各実施の形態における動作は、既に説明した動作と同様である。この場合、図２６に例示するユーザインタフェース上では、「追加するユーザＩＤの入力」欄の代わりに「追加する装置ＩＤの入力」欄を設ければよい。また、「追加されたユーザＩＤの一覧」欄の代わりに「追加された装置ＩＤの一覧」欄を設ければよい。
【０２８８】
なお、特許請求の範囲に記載の知識格納手段は、上記の実施の形態におけるオブジェクト知識格納手段に相当する。更新グループ等通知手段は、上記の実施の形態におけるオブジェクト知識管理手段に相当する。ポリシ特定手段は、上記の実施の形態におけるポリシ解析手段およびポリシ格納手段に相当する。ユーザ位置情報更新手段は、上記の実施の形態におけるオブジェクト知識管理手段およびオブジェクト知識格納手段に相当する。稼働状況更新手段は、上記の実施の形態におけるオブジェクト知識管理手段およびオブジェクト知識格納手段に相当する。知識管理手段は、上記の実施の形態におけるオブジェクト知識管理手段に相当する。有向グラフ編集手段は、上記の実施の形態におけるオブジェクト知識編集手段に相当する。知識解析手段は、上記の実施の形態におけるオブジェクト知識解析手段に相当する。
【産業上の利用可能性】
【０２８９】
本発明は、例えば、既存の仮想プライベートネットワーク（ＶＰＮ）環境のように、ＶＰＮゲートウェイやファイアウォールなどのセキュリティ装置がすでに設置されたネットワークシステムにおいて、会議中の共有サーバを介した情報共有を安全に行うといった用途に適用できる。また、企業間における機密情報の交換においても、所定のユーザグループ外への機密漏えいを防止するといった用途にも適用可能である。
【図面の簡単な説明】
【０２９０】
【図１】オブジェクト知識のデータ構造の例を示す説明図である。
【図２】展開の例を示す説明図である。
【図３】オブジェクト知識の具体例を示す説明図である。
【図４】アクセス制御ポリシからアクセス制御リストが生成される概念を示す概念図である。
【図５】本発明によるアクセス制御システムの第１の実施の形態を示すブロック図である。
【図６】アクセス制御ポリシの具体例を示す説明図である。
【図７】中間言語の具体例を示す説明図である。
【図８】アクセス制御リストの具体例を示す説明図である。
【図９】アクセス制御ポリシの他の具体例を示す説明図である。
【図１０】複数のルールの具体例を示す説明図である。
【図１１】複数のルールの具体例を示す説明図である。
【図１２】アクセス制御リストの他の具体例を示す説明図である。
【図１３】第１の実施の形態のアクセス制御システムの動作の例を示すフローチャートである。
【図１４】アクセス制御ポリシの選択に用いられるユーザインタフェースの例を示す説明図である。
【図１５】アクセス制御ポリシの編集用ユーザインタフェースの例を示す説明図である。
【図１６】中間言語生成処理の処理経過の例を示すフローチャートである。
【図１７】アクセス制御リスト生成処理の処理経過の例を示すフローチャートである。
【図１８】１つのルールに含まれるユーザＩＤを１行にまとめて記述するようにした場合の行の例を示す説明図である。
【図１９】本発明によるアクセス制御システムの第２の実施の形態を示すブロック図である。
【図２０】第２の実施の形態のアクセス制御システムの動作の例を示すフローチャートである。
【図２１】中間言語の一部の生成処理の処理経過の例を示すフローチャートである。
【図２２】行生成処理の処理過程の例を示すフローチャートである。
【図２３】本発明によるアクセス制御システムの第３の実施の形態を示すブロック図である。
【図２４】第３の実施の形態のアクセス制御システムの動作の例を示すフローチャートである。
【図２５】名前型オブジェクトの選択に用いられるユーザインタフェースの例を示す説明図である。
【図２６】オブジェクト知識の編集用ユーザインタフェースの具体例を示す説明図である。
【図２７】本発明によるアクセス制御システムの第４の実施の形態を示すブロック図である。
【図２８】アクセス制御ポリシを編集され、イベントを登録する場合の処理経過の例を示すフローチャートである。
【図２９】時刻の入力欄を有する編集用ユーザインタフェースの例を示す説明図である。
【図３０】オブジェクト知識を編集され、イベントを登録する場合の処理経過の例を示すフローチャートである。
【図３１】時刻管理処理の処理経過の例を示すフローチャートである。
【図３２】アクセス制御リストの更新処理の処理経過の例を示すフローチャートである。
【図３３】行生成処理の処理経過の例を示すフローチャートである。
【図３４】本発明によるアクセス制御システムの第５の実施の形態を示すブロック図である。
【図３５】第５の実施の形態のアクセス制御システムの動作の例を示すフローチャートである。
【図３６】構成情報のデータ構造の例を示す説明図である。
【図３７】オブジェクト知識単位の例を示す説明図である。
【図３８】本発明によるアクセス制御システムの第６の実施の形態を示すブロック図である。
【図３９】受信したメールに基づいてアクセス制御設定を行う処理の処理経過の例をを示すフローチャートである。
【図４０】ユーザグループ定義および共有リソース定義の生成状況を示す説明図である。
【図４１】第６の実施の形態の変形例を示すブロック図である。
【図４２】本発明によるアクセス制御システムの第７の実施の形態を示すブロック図である。
【図４３】受信したスケジュール情報に基づいてアクセス制御設定を行う処理の処理経過の例をを示すフローチャートである。
【図４４】スケジュール入力用ユーザインタフェースの例を示す説明図である。
【図４５】スケジュール入力用ユーザインタフェースの例を示す説明図である。
【図４６】スケジュール入力用ユーザインタフェースの例を示す説明図である。
【図４７】本発明によるアクセス制御システムの第８の実施の形態を示すブロック図である。
【図４８】プレゼンス管理手段が有するデータベースが記憶する情報の例を示す説明図である。
【図４９】位置検知手段がプレゼンス管理手段に現在位置の情報を通知する態様の例を示す説明図である。
【図５０】位置検知手段がプレゼンス管理手段に現在位置の情報を通知する態様の例を示す説明図である。
【図５１】位置検知手段がプレゼンス管理手段に現在位置の情報を通知する態様の例を示す説明図である。
【図５２】各ユーザの現在位置を知識データベースに通知する処理の処理経過の一例を示すフローチャートである。
【図５３】第９の実施の形態におけるアクセス制御ポリシのデータ構造の例を示す説明図である。
【図５４】本発明によるアクセス制御システムの第９の実施の形態を示すブロック図である。
【図５５】第９の実施の形態におけるアクセス制御ポリシの編集用インタフェースの例を示す説明図である。
【図５６】オブジェクト知識解析手段がオブジェクト知識管理手段から出力されたユーザ識別子と現在位置情報との組み合わせを中継するときの動作を示すフローチャートである。
【図５７】ユーザ識別子と現在位置情報をポリシ解析手段に中継した後、ポリシ解析手段が有効なアクセス制御ポリシを選別するまでの間におけるオブジェクト知識解析手段の動作を示す説明図である。
【図５８】第９の実施の形態におけるアクセス制御ポリシの例を示す説明図である。
【図５９】第９の実施の形態におけるルールの例を示す説明図である。
【図６０】第９の実施の形態における行の例を示す説明図である。
【符号の説明】
【０２９１】
１１  ポリシエンジン
２１  知識データベース
３１  アクセス制御装置
３０２  アクセス制御手段
１０１１  ポリシ編集手段
１０２１  ポリシ格納手段
１０３１  ポリシ解析手段
１０６１  アクセス制御リスト設定手段
２０２１  オブジェクト知識管理手段
２０３１  オブジェクト知識格納手段
３０１１  アクセス制御リスト格納手段
【図１】
2006012117.tif 000003
【図２】
2006012117.tif 000004
【図３】
2006012117.tif 000005
【図４】
2006012117.tif 000006
【図５】
2006012117.tif 000007
【図６】
2006012117.tif 000008
【図７】
2006012117.tif 000009
【図８】
2006012117.tif 000010
【図９】
2006012117.tif 000011
【図１０】
2006012117.tif 000012
【図１１】
2006012117.tif 000013
【図１２】
2006012117.tif 000014
【図１３】
2006012117.tif 000015
【図１４】
2006012117.tif 000016
【図１５】
2006012117.tif 000017
【図１６】
2006012117.tif 000018
【図１７】
2006012117.tif 000019
【図１８】
2006012117.tif 000020
【図１９】
2006012117.tif 000021
【図２０】
2006012117.tif 000022
【図２１】
2006012117.tif 000023
【図２２】
2006012117.tif 000024
【図２３】
2006012117.tif 000025
【図２４】
2006012117.tif 000026
【図２５】
2006012117.tif 000027
【図２６】
2006012117.tif 000028
【図２７】
2006012117.tif 000029
【図２８】
2006012117.tif 000030
【図２９】
2006012117.tif 000031
【図３０】
2006012117.tif 000032
【図３１】
2006012117.tif 000033
【図３２】
2006012117.tif 000034
【図３３】
2006012117.tif 000035
【図３４】
2006012117.tif 000036
【図３５】
2006012117.tif 000037
【図３６】
2006012117.tif 000038
【図３７】
2006012117.tif 000039
【図３８】
2006012117.tif 000040
【図３９】
2006012117.tif 000041
【図４０】
2006012117.tif 000042
【図４１】
2006012117.tif 000043
【図４２】
2006012117.tif 000044
【図４３】
2006012117.tif 000045
【図４４】
2006012117.tif 000046
【図４５】
2006012117.tif 000047
【図４６】
2006012117.tif 000048
【図４７】
2006012117.tif 000049
【図４８】
2006012117.tif 000050
【図４９】
2006012117.tif 000051
【図５０】
2006012117.tif 000052
【図５１】
2006012117.tif 000053
【図５２】
2006012117.tif 000054
【図５３】
2006012117.tif 000055
【図５４】
2006012117.tif 000056
【図５５】
2006012117.tif 000057
【図５６】
2006012117.tif 000058
【図５７】
2006012117.tif 000059
【図５８】
2006012117.tif 000060
【図５９】
2006012117.tif 000061
【図６０】
2006012117.tif 000062