(57)【要約】      （修正有）【課題】適応型ラティス機構を用いてコンピュータ・セキュリティを実施する方法とシステムとに関する。【解決手段】該方法は、エンティティからの要求をコンピュータ・システムにおいて受信する工程から開始し得る。エンティティは、情報種類（１０２）又はコンピュータ・ファンクション（１０４）を表す第１ベース・ノード（１１０）に対するアクセスを行う所定のアクセス権限レベルを有し得る。当該システムは、アクセス要求が、エンティティの禁止時間アクセス・パターンを完備するかを判定する。当該システムは、第１ベース・ノードに対して設定される最小アクセス・レベルの、エンティティに割り当てられる所定のアクセス権限レベルとの比較も行う。その後、当該システムは、第１ベース・ノードに対する最小アクセス・レベルが所定のアクセス権限レベルを超えない場合にのみ、アクセス要求を許可し得る。【選択図】図１
2005259146.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ・システムをセキュアにアクセスする方法であって：
該コンピュータ・システムにおいて、情報種類とコンピュータ・システム・ファンクションとのうちの少なくとも１つを表す第１ベース・ノードに対するアクセスを行ううえでの所定のアクセス・レベルを伴うエンティティからの要求を受信する工程；
該アクセス要求が、該エンティティに対する禁止時間アクセス・パターンを完備するかを判定する工程；
該第１ベース・ノードに対して設定される最小アクセス・レベルを該所定アクセス・レベルと比較する工程；及び
該アクセス要求を、該アクセス要求が該エンティティに対する禁止時間アクセス・パターンを完備するものでなく、かつ、該第１ベース・ノードに対する該最小アクセス・レベルが該所定のアクセス・レベルを超えるものでない場合にのみ、許可する工程；
を備えることを特徴とする方法。
【請求項２】
請求項１記載の方法であって、更に：
該要求を、該アクセス要求が該エンティティに対する禁止時間アクセス・パターンを完備する場合に、却下する工程；
を備えることを特徴とする方法。
【請求項３】
請求項１記載の方法であって、更に：
該要求を、該第１ベース・ノードに対する該最小アクセス・レベルが該エンティティに対する該所定のアクセス・レベルを超える場合に、却下する工程；
を備えることを特徴とする方法。
【請求項４】
請求項１記載の方法であって、更に：
複数の、葉ノードと高位ノードとを有するツリー階層の形態に該コンピュータ・システムを論理的に編成する工程；
該複数のベース・ノードが、各々、該ツリー階層のうちの複数の葉ノードを備えるよう、規定する工程；及び
該高位ノードを該ベース・ノードのアグリゲーションとして規定する工程；
を備えることを特徴とする方法。
【請求項５】
請求項１記載の方法であって、更に：
該エンティティの所定のアクセス・レベルを、該第１ベース・ノードを含むベース・ノードのアグリゲーションである少なくとも１つの高位ノードの最小所要アクセス・レベルと比較する工程；及び
該第１ベース・ノードを備える何れかのアグリゲーションのメンバでもある何れかの該ベース・ノードの最小所要アクセス・レベルを、該アグリゲーションを備える該高位ノードに対する最小所要アクセス・レベルが該エンティティの所定アクセス・レベルよりも高い所要アクセス・レベルを有する場合に、更新する工程；
を備えることを特徴とする方法。
【請求項６】
セキュアなコンピュータ・システムであって：
情報種類とコンピュータ・システム・ファンクションとのうちの少なくとも１つを表す複数の論理的ベース・ノード；
ツリー階層の形態で該ベース・ノードとともに配置される複数の高位ノード；
第１ベース・ノードに対してアクセスするうえでの所定のアクセス・レベルを伴うエンティティからの要求を受信することができるコンピュータ・システム・インタフェース；
時間アクセス・テーブル；及び
該アクセス要求を該時間アクセス・テーブルと比較して、該アクセス要求が該エンティティに対する禁止時間アクセス・パターンを完備しているかを判定するようプログラム化され、かつ、該第１ベース・ノードに対して設定される最小アクセス・レベルを該所定アクセス・レベルと比較するようプログラム化される処理手段；
を備え；
該処理手段が、該アクセス要求を、該アクセス要求が該エンティティに対する禁止時間アクセス・パターンを完備するものでなく、かつ、該第１ベース・ノードに対する該最小アクセス・レベルが該所定のアクセス・レベルを超えるものでない場合のみ、許可することを特徴とするセキュアなコンピュータ・システム。
【請求項７】
請求項６記載のセキュアなコンピュータ・システムであって：
該処理手段が該要求を、該アクセス要求が該エンティティに対する禁止時間アクセス・パターンを完備する場合に、却下することを特徴とするセキュアなコンピュータ・システム。
【請求項８】
請求項６記載のセキュアなコンピュータ・システムであって：
該処理手段が該要求を、該第１ベース・ノードに対する該最小アクセス・レベルが該エンティティに対する該所定のアクセス・レベルを超える場合に、却下することを特徴とするセキュアなコンピュータ・システム。
【請求項９】
請求項６記載のセキュアなコンピュータ・システムであって、更に：
該高位ノードが、該ベース・ノードのアグリゲーションであることを特徴とするセキュアなコンピュータ・システム。
【請求項１０】
請求項６記載のセキュアなコンピュータ・システムであって、該処理手段が：
該エンティティの所定のアクセス・レベルを、該第１ベース・ノードを含むベース・ノードのアグリゲーションである少なくとも１つの高位ノードの最小所要アクセス・レベルと比較し；かつ
該第１ベース・ノードを備える何れかのアグリゲーションのメンバでもある何れかの該ベース・ノードの最小所要アクセス・レベルを、該アグリゲーションを備える該高位レベルに対する最小所要アクセス・レベルが該エンティティの所定アクセス・レベルよりも高い所要アクセス・レベルを有する場合に、更新することを特徴とするセキュアなコンピュータ・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ・システムへのセキュアなアクセスを行えるようにする方法に関する。
【背景技術】
【０００２】
該方法は、いくつかの工程を含み得る。該方法は、エンティティからの要求を該コンピュータ・システムにおいて受信する工程から開始され得る。該エンティティは、ユーザ又はプロセスであり得るものであり、情報種類又はコンピュータ・システム・ファンクションを表す第１ベース・ノードにアクセスするうえでの所定のアクセス権限レベルを有し得る。該コンピュータ・システムは、アクセス要求が該エンティティに対する禁止時間アクセス・パターンを完備するものであるかを判定する。そうである場合には、該要求は拒否される。さもなければ、該システムは、第１ベース・ノードに対して設定される最小アクセス・レベルを該エンティティに割り当てられる所定のアクセス権限レベルと比較し得る。その後、該システムは、該第１ベース・ノードに対する最小アクセス・レベルが所定のアクセス権限レベルを超えない場合のみ、アクセス要求を許可し得る。該方法は、第１ベース・ノードに対する最小アクセス・レベルが該エンティティに割り当てられる所定のアクセス権限レベルを超える場合に、該要求を却下する工程を含み得る。
【０００３】
該方法は、複数の、葉ノードと高位ノードとを有するツリー階層の形態に該コンピュータ・システムを論理的に編成する工程も含み得る。該複数のベース・ノードは各々、該ツリー階層の複数の葉ノードを備えるものとして規定し得る。高位ノードは、該ベース・ノードのアグリゲーションとして規定し得る。更に、該方法は、該階層内部で、第１ベース・ノードを備えるアグリゲーションである何れかの高位ノードを含み得る。
【０００４】
該方法は、該階層内部で第１ベース・ノードを備えるアグリゲーションである高位ノードの何れかの子を直接的又は間接的に備える何れかのノードを識別する工程を含み得る。最小所要エンティティ・アクセス・レベルはその後、第１ベース・ノードを備えるアグリゲーションである高位ノードの何れかの子を直接的又は間接的に備える何れかのベース・ノードについて更新し得る。
【０００５】
例えば、該更新する工程は、エンティティの所定のアクセス権限レベルを、第１ベース・ノードを備えるアグリゲーションの高位レベル・ノードの最小所要アクセス・レベルに対して、比較する工程を含み得る。その後、第１ベース・ノードを備える何れかのアグリゲーションのメンバでもある何れかのベース・ノードの最小所要アクセス・レベルは、該アグリゲーションを備える高位ノードに対する最小所要アクセス・レベルが、エンティティの所定のアクセス・レベルよりも高い所要アクセス・レベルを有する場合に、更新し得る。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、適応型ラティス機構を用いてコンピュータ・セキュリティを実施する方法とシステムとに関する。
【課題を解決するための手段】
【０００７】
データ・アクセス・セキュリティ・レベルとファンクション・アクセス・セキュリティ・レベルがアクセスを制御する当初のベースを構成する。これらのセキュリティ・アクセス・プリミティブは、半順序集合（ＰＯＳＥＴ）内部で編成されて、階層的な、有向グラフを規定し得る。セキュリティ・アクセス・プリミティブは階層的な、有向グラフにおいてベース・ノードを構成し得る。該グラフ内部の高位ノードは情報アグリゲーション集合及び／又はアクセス時間パターンを表す。該グラフにおける該ノード各々は、特定のアグリゲーション又はパターンに対する強制セキュリティ・レベルを表す関連セキュリティ・レベルを有し得る。アクセス権限がユーザ／プロセス毎に動的に維持され、それによってシステム・オブジェクトが各ユーザによる履歴アクセスに基づいて複数のアクセス分類レベルを有することを可能にするものである。
【発明を実施するための最良の形態】
【０００８】
本発明は、適応型ラティス機構を用いてコンピュータ・セキュリティを実施する方法とシステムとに関する。データ・アクセス・セキュリティ・レベルとファンクション・アクセス・セキュリティ・レベルがアクセスを制御する当初のベースを構成する。これらのセキュリティ・アクセス・プリミティブは、半順序集合（ＰＯＳＥＴ）内部に編成して階層的な、有向グラフを規定し得る。セキュリティ・アクセス・プリミティブは、階層的な、有向グラフにおいてベース・ノードを構成し得る。グラフ内部の高位ノードは、情報アグリゲーション集合及び／又はアクセス時間パターンを表す。グラフ内部のノード各々は、特定のアグリゲーション又はパターンに対する強制セキュリティ・レベルを表す関連セキュリティ・レベルを有し得る。アクセス権限は、各ユーザ／プロセス毎に動的に維持され、それによってシステム・オブジェクトが、各ユーザによるアクセス履歴を基にした、複数レベルのアクセス分類を有することを可能にする。
【０００９】
（実施例）
次に、図１を参照すれば、セキュアなコンピュータ・システムは、複数の、オブジェクト種類１０２１−１０２４とシステム・ファンクション１０４１−１０４３とを備え得る。オブジェクト種類は、１つ又は複数の情報種類Ａ，Ｂ，Ｃ，Ｄを含み得る。オブジェクト種類のインスタンシエーション１０６は、図示するような複数種類インスタンス１０８を含み得る。更に、各オブジェクト種類は、それと関連する最小所要セキュリティ・アクセス・レベルを有し得る。図１では、オブジェクト１０２１−１０２４に対する最小所要セキュリティ・アクセス・レベルは、情報種類を識別する記号とともに括弧内に表す。例えば、図１におけるオブジェクト１０２４は、「Ｄ（２）」として示す。括弧内の数字２は、情報種類Ｄが２の最小所要セキュリティ・アクセス・レベルを有することを示す。オブジェクト種類Ｄの何れかのインスタンシエーションをアクセスするよう要求する何れかのプロセス又はユーザは、２以上のセキュリティ・アクセス・レベルを有することを要する。同様に、Ｂ（１）として表す、オブジェクト１０２２へのアクセスは、１以上のセキュリティ・アクセス・レベルを要する。
【００１０】
システム・ファンクション１０４１−１０４３は、プロセス又はユーザによってアクセス可能なファンクションを表す。図１では、ファンクションは、ディレクトリ（ｄｉｒ）、実行（ｅｘｅｃ）、及び削除（ｄｅｌ）を含むものとして表す。しかし、これらは単にコンピュータ・システム・ファンクションの一部の例としてのものであることを意図するものであり、本発明は何れかの特定の種類のコンピュータ・システム・ファンクションに限定されないものとする。オブジェクト種類１０２１−１０２４に関する上記の表記と同様に、図１における各システム・ファンクション１０４１−１０４３には、括弧内の数字が後続する。この数字は、その特定のファンクションをアクセスするのに何れかのプロセス又はユーザが要する最小セキュリティ・アクセス・レベルを表す。したがって、例えば、ｅｘｅｃ（２）と示す「ｅｘｅｃ」システム・ファンクションは、そのファンクションをアクセスするために少なくとも２のセキュリティ・レベルを保有することを要する。
【００１１】
種々の、オブジェクト種類１０２１−１０２４とシステム・ファンクション１０４１−１０４３は、図１において表す階層ツリー・グラフにおいて表し得る。本発明の一特徴によれば、種々の、オブジェクト種類とシステム・ファンクションは、階層ツリー１００における複数の葉ノード又はベース・ノード１１０として規定し得る。更に、高位ノード１１２を構築してベース・ノード１１０のアグリゲーションを表し得る。図１に示すように、高位ノード１１２は、ベース・ノード１１０のアグリゲーション、更には高次アグリゲーション、すなわち、先行構築アグリゲーション、を含み得る。
【００１２】
本発明の一実施例によれば、図１の階層有向グラフは、オブジェクト種類１０２１−１０２４とシステム・ファンクション１０４１−１０４３とを半順序集合（ＰＯＳＥＴ）に編成することによって実現し得る。ＰＯＳＥＴは、エレメント集合中の、エレメント対間に存在する関係、例えば、ｘ→Ｒ→ｙを規定する。エレメント集合中に、関係Ｒが何ら存在しない、エレメント対、例えば、ｍ及びｎ、が存在する。よって、この集合は半順序集合である。その結果、ＰＯＳＥＴは、単一の根ノードと複数の葉ノードを有するツリー構造とは対照的に複数の根ノードと葉ノードとを有し得る。セキュリティ処理を実施する対象の情報アクセスと処理とのファンクションを表す根ノードが複数あるために、ＰＯＳＥＴはセキュリティ関係が複数あることを表すのに用いられる。図２Ａは、図１における階層ツリー１００について生成可能な推移閉包テーブル２０２を伴うそのようなＰＯＳＥＴ２００の例である。
【００１３】
もう一度図１を参照すれば、関係を時間アクセス・パターンに対してアサートすることが可能であることが分かる。本図では、Ｔ１と示す、曲線の矢印はアイテム１１４１及び１１４２によって規定されるアクセス間の時間順序を表す。したがって、アイテム１１４２については、時間順序は、アイテム１０４１と１０４２との間でアサートされる、例えば１０４１→１０４２。したがって、ノードｄ（３）は、１０４１と１０４２とによって表すプリミティブ・ファンクションのアグリゲーションを識別するのみならず、１０４１が１０４２より前にアクセスされるという明示的な時間順序が存在するということを規定する。したがって、アイテム１１４２に関係するセキュリティ・ポリシーを起動させるためには、１０４１と１０４２とを、アクセスすることを要するのみならず、時間関係によって示す順序でアクセスすることを要する。単一ノードに対するアクセス・アクティビティの時間順序を規定することに加えて、時間関係は、別のノード内でアグリゲーションによって包含させ得る。これは、図１にアイテム１１４１によって示す。アイテム１１４１はノードと関連する３つのアクセス・アイテム、アイテム１０２４、１１４２、１０４３、を有する。この図に表すように、１０２４→１１４２→１０４３を規定する時間順序が識別されている。しかし、アイテム１１４２は、アクセス処理のアグリゲーションである。したがって、アイテム１１４２によって識別される処理は、アイテム１１４１の全面的な時間順序に包含され、全面的な時間順序は、１０２４→１０４１→１０４２→１０４３であり、元の時間順序におけるアイテム１１４２はその構成部分によって置き換えられている、すなわち１０４１→１０４２。
【００１４】
図３は、上記の関係を捕捉する時間順序テーブル（ＴＯＴ）である。ＴＯＴは、アクションの相対的な時間順序を捕捉するのに有用であり、相対的又は近似的パターン照合を行って敵対的アクションを識別することを可能にする。したがって、ノードｄすなわちアイテム１１４２にアクセスするために、このテーブルは、ｄｉｒ処理すなわちアイテム１０４１が最初に行われ、ｅｘｅｃ処理すなわちアイテム１０４２が後続する。この順序は、「ｄ」と示す行に表し、アクセスの数値的順序を列にリストする。図３は更に、ノードｅすなわちアイテム１１４１について、当初のアクセスはデータ・クラスＤすなわちアイテム１０２４であり、ｄｉｒすなわちアイテム１０４１とｅｘｅｃすなわちアイテム１０４２との処理である、ノードｄすなわちアイテム１１４２の構成エレメントが後続する。この場合、「ｅ」と示す行は、アクセスの順序を数値を用いて記憶する。行「ｅ」の場合、ノードｄすなわちアイテム１１４２に関連するアクセス順序を含めることは、２．１と２．２．とに表し、これらは、ノードｅすなわちアイテム１１４についての時間順序における第２アイテムとしてグループ化され、これらのグループ化アイテムについての順序は、２に続く２番目の数字によって表す。
【００１５】
次に、図４Ａを参照すれば、本発明において用い得るプロセス／ユーザ・アクセス・テーブル（ＰＵＡＴ）の例を表す。ＰＵＡＴは、図１におけるオブジェクト種類１０２又はシステム・ファンクション１０４をアクセスするために各特定プロセス又はユーザが有することを要する最小セキュリティ・レベルを表すアクセス権限のテーブルである。例えば、図３は、ユーザ１−５が、情報種類Ｂをアクセスするのに少なくとも１のセキュリティ・アクセス・レベルを（少なくとも当初は）保有することを要する可能性があることを表す。図４Ａにおけるユーザ１−５は全て、少なくとも１のセキュリティ・アクセス・レベルを有するので、これは、全てのユーザが、少なくとも当初は、情報種類Ｂをアクセス可能であることを表す。
【００１６】
しかし、重要なことは、ＰＵＡＴが、特定のプロセス又はユーザが特定のオブジェクト種類１０２又はシステム・ファンクション１０４をアクセスするのに要する最小セキュリティ・レベルをアクセス履歴及び／又は識別時間パターンによって変更させ得るような動的テーブルであることである。このようにして、アクセス権限はユーザ毎に動的に維持されて、システム・オブジェクトが、特定のプロセス又はユーザによるアクセス履歴に基づいた複数のアクセス分類レベルを有することを可能にする。
【００１７】
アクセス処理とアグリゲーション・ノードの集合全体の推移閉包テーブルを図２Ａに示す。推移閉包テーブルは、アグリゲーション・ノード各々について行と列とをプリミティブ・アクションのテーブルに付加することによって得られる。これによって、行数と列数が等しく、行数と列数がプリミティブ処理数とアグリゲーション・ノード数の和に等しい、ｎ×ｎのテーブルが生成される。図２ＡのＰＯＳＥＴの推移閉包テーブルの部分集合である、アイテム２０２は更に、図５に示す組み合わせ分類テーブル（ＣＣＴ）を生成するのに用いられる。ＣＣＴは、列に表すアグリゲーションの集合と行に表すプリミティブ処理に相当する、推移閉包テーブルの部分集合、すなわちアイテム２０２を採用することによって得られる。この部分集合は、プリミティブ・アクセス処理と該処理が関連するアグリゲーションとの間の依存関係を識別する。この推移閉包の部分集合すなわちアイテム２０２を、更に、その対角線軸の周りで回転させることによって、図２Ｂに表すような、ａ乃至ｅを行とし、プリミティブ・アクセス処理を列とする、アグリゲーション・アイテムを生成する。最後に、各行は検査され、１のエントリを含む列毎に、数１がアグリゲーションに関連するセキュリティ・アクセス・レベルによって置き換えられる。これによって、図５に表す最終ＣＣＴが生成される。
【００１８】
本発明を理解するうえで有用な流れ図を図６と図７とに表す。それらに示すように、当該処理は、図６の工程６０２で、コンピュータ・システム・ユーザ及び／又はプロセスからの要求を監視することによって、開始し得る。メッセージは、工程６０４でテストされて、情報種類又はシステム・ファンクションをアクセスする要求を備えるかが判定される。そうである場合には、当該システムは、工程６０６に進み、該要求が特定ユーザについての時間アクセス・パターンを完備するものであるかを判定する。該要求が時間アクセス・パターンを完備する場合、これは、実行処理シーケンスが識別パターンに一致することを表し、その時間順序について規定されるセキュリティ・アクセス・レベルによる。工程６０７に示すよう、時間パターンが完備される場合、ユーザのアクセス・レベルが、要求アクセス・アクションに要求されるアクセス・レベルと比較される。なお、プリミティブ・アクセス処理の順序によって、当該処理が、実施する対象のセキュリティ・ポリシーに対して規定される順序で行われることが義務付けられている。したがって、図１では、１０４２が最初にアクセスされ、アイテム１０４１が続く場合、ノードｄすなわちアイテム１１４２に関連するセキュリティ・ポリシーは起動されることになるものでないが、それは時間順序が満たされなかったからである。ユーザのアクセス・レベルが要求アクションに対して十分でない場合には、当該要求は工程６０８で拒否される。
【００１９】
当該要求が、特定ユーザについての時間アクセス・パターンを完備するものでないか、ユーザのアクセス・レベルが完備時間パターンに対して十分である場合、当該システムは工程６１０に進み、当該要求を時間アクセス・テーブル（ＴＡＴ）に記録する。図４Ｂに表すように、時間アクセス・テーブルは、ユーザによって行われるプリミティブ処理の履歴を維持する。ユーザはプリミティブ・アクセス処理を行う権限が付与されているので、当該処理はタイムスタンプされ、ＴＡＴ内部に記憶される。該タイムスタンプは、図３の、時間順序テーブルにおいて識別される時間パターンと比較されて一致するものについて検査される。したがって、図４Ｂでは、ユーザ１は、時間１０２でｄｉｒ処理を行っており、時間１１２でｅｘｅｃ処理を要求している。１１２は１０２より後に来るので、この要求によって、図１のノードｄすなわち１１４２についての時間順序テーブルにおける一致を引き起こすことになり、当該要求は却下されることになる。しかし、ユーザ３の場合、ｅｘｅｃ処理が時間１０３で実行されており、続いて、ｄｉｒ処理が時間１１１で実行されている。この対は、規定時間順序と一致するものでなく、当該処理は許可される。
【００２０】
工程６１２では、当該コンピュータ・システムは、当該要求を行うユーザのセキュリティ・アクセス・レベルが、特定の情報種類に要求される現行の最小セキュリティ・アクセス・レベルよりも少ないか否かを判定する。この判定は、図４Ａにおけるテーブルを参照することによって完了することが可能である。ユーザが、少なくとも現行の最小所要セキュリティ・アクセス・レベルに対する権限を有するものでない場合、当該要求は拒否される。あるいは、ユーザが十分に高いセキュリティ・アクセス・レベルを有する場合、当該要求は工程６１６で許可される。
【００２１】
アグリゲーション・ノード１１２は、ベース・ノード１１０、別のアグリゲーション・ノード１１２、又はベース・ノードとアグリゲーション・ノードとの組み合わせであり得る２つ以上のノードを備える。したがって、そのようなアグリゲーション・ノードは多くの場合、ベース・ノード１１０を備える参加者の、情報種類及び／又はシステム・ファンクションに対するアクセスに要するセキュリティ・レベルと比較して、アクセスを許可するうえでの最小所要セキュリティ・レベルが高いものを有することになる。これは、アグリゲート・データが、多くの場合、コンテキストの大きいものを備え、種々の個々の情報種類間の関係を識別することが可能であるため、なお慎重な扱いを要する特性を有するものであるので、あてはまる。その結果、アグリゲート情報は、許可されていないユーザに対する関心を必然的に高め、システム管理者はそのアクセスに対してなお高位の制限を当然、課そうとすることになる。
【００２２】
それにもかかわらず、特定のアグリゲーション・ノードにおける参加者であるベース・ノード１１０と関連した情報種類又はシステム・ファンクションの全てに対するアクセスが、多くの場合、アグリゲート・ノードに直接アクセスすることに等しいものとする。したがって、特定のユーザ又はプロセスが特定の情報種類を、そのユーザ又はプロセスが特定の別の情報種類をアクセスすると、アクセスするのに必要なセキュリティ権限レベルを上昇させることが望ましいものであり得る。例えば、これは、データ種類の何れもが共通アグリゲーション種類における参加者である場合に当てはまり得る。そのような場合には、特定のユーザがベース・ノードをアクセスするのに要するセキュリティ権限レベルを、ベース・ノードが参加者であるアグリゲーション・ノードのセキュリティ権限レベルに少なくとも等しいレベルまで、上昇させることが望ましいものであり得る。
【００２３】
したがって、当該プロセスは、要求情報種類を含むベース・ノードが参加者である高位アグリゲーション・ノード１１２を全て識別することによって、図７の工程７０２に続くものであり得る。工程７０４では、コンピュータ・システムは、識別アグリゲーション・ノードにアクセスするうえでの最小所要セキュリティ・レベルが特定のユーザの許可セキュリティ・アクセス・レベルよりも大きいかを判定し得る。そうである場合、工程７０６で、コンピュータ・システムは、その特定のアグリゲーション・ノードにおける参加者でもあるベース・ノード全てを識別し得る。これは、識別アグリゲーション・ノードからの全てのパスをもう一度それらに相当するベース・ノードまでたどることによって達成し得る。
【００２４】
そのように識別されると、既にアクセスされている情報種類のベース・ノードをアクセスするうえでの最小所要セキュリティ・レベルは同じレベルにとどまる。しかし、ユーザが別の参加者の（すなわち、当初要求されたベース・ノード以外の）ベース・ノードを工程７０８で更新し得る。例えば、参加者ベース・ノードをアクセスするうえでの所要最小セキュリティ・レベルを特定ユーザについて、参加者のベース・ノードが参加者であるアグリゲーション・ノードをアクセスする最小所要セキュリティ・レベルを一致させるよう、上昇させ得る。
【００２５】
本発明は、当該プロセスを説明する以下の例を検討することによってよりよく理解することが可能である。
【００２６】
例１
図１及び８を参照すれば、ユーザ１−５に対するアクセス権限が図８ＡにおけるＰＵＡＴによって設定される場合を検討する。アクセス・レベル１を伴うユーザ２であるＵ２（１）は、工程６０４に関して前述した情報種類Ａのオブジェクト１０２１に対するアクセスを要求し得る。工程６０６によって、当該システムは、図８ＢのＴＯＴ（時間順序テーブル）を参照し、アクセス要求時間が時間アクセス・パターンを完備するものでないことを判定している。その後、当該要求は、工程６１０に備えるように、（時間アクセス・テーブルに）記録される。工程６１２によって、ユーザ２が十分に高いアクセス権限レベルを有するかを判定するよう、要求が検査される。この場合、Ｕ２（１）≧Ａ（０）であり、したがって、アクセスは工程６１６によって要求情報種類Ａに付与される。
【００２７】
その後、工程７０２では、コンピュータ・システムは、図８ＣでＣＣＴ（組み合わせ分類テーブル）を用いてオブジェクトＡを伴うアグリゲーションを識別し得る。工程７０４では、当該システムは、種類「ａ」のアグリゲーション・ノード１１２１をアクセスするうえでの最小所要セキュリティ・レベルは、ユーザの許可セキュリティ・アクセス・レベルよりも大きいかを判定するよう検査する。この場合、当該条件は、ユーザの許可セキュリティ・アクセス・レベルが１であり、種類「ａ」のアグリゲーション・ノード１１２１をアクセスするうえでの最小所要レベルが２に等しいものであるので、満たされる。したがって、当該システムは工程７０６に進み、種類「ａ」のアグリゲーション・ノード１１２１の一部である何れかの別のベース・ノード１１０を識別する。この場合、当該システムは、種類「ａ」のアグリゲーションにおける参加者であるものとして情報種類Ｂを識別する。
【００２８】
その後、工程７０８で、図８ＡにおけるＰＵＡＴは：（１）情報種類「Ａ」の元々要求されたベース・ノード１１０をアクセスするうえで要する最小セキュリティ・レベルが変わらないままであり；（２）アグリゲーション・ノード１１２１の別の参加者が更新されて；それらの最小所要セキュリティ・レベルをアグリゲーション・ノード「ａ」について設定される最小所要セキュリティ・レベルに等しくする：ように更新される。これは以下のように表すことが可能である：Ｉｆ  ＰＵＡＴ（ｉ）＜ＣＣＴ（ｉ）  ｔｈｅｎ  ＣＣＴ（ｉ）  →  ＰＵＡＴ（ｉ．  その結果は、図８Ｄに表す更新ＰＵＡＴテーブルである。
【００２９】
図８Ｄにおける更新テーブルは、情報種類Ａのベース・ノード１１０について、最小セキュリティ・アクセス・レベルはゼロであり続ける。図８Ｄにおける情報種類Ａについての表記０／１は、オブジェクトがゼロ・セキュリティ・レベルを有し、ユーザ２によってアクセスされる第１のものであることを示す。しかし、ユーザ２に関しては、図８ＤのＰＵＡＴにおける情報種類Ｂのオブジェクトをアクセスするうえでの最小セキュリティ・レベルはレベル２に上昇している。
【００３０】
その後、アクセス・レベル１を伴うユーザ２であるＵ２（１）が情報種類Ｂのオブジェクト１０２２に対するアクセスを要求する場合、当該システムは工程６０６で、アクセス要求時間が時間アクセス・パターンを完備するものでないことを判定する。これは、図８ＥにおけるＴＯＴとアクセス時間とを比較することによって達成される。ＴＯＴは図８Ｂにおけるその先行状態から変わらないので、当該要求は工程６０６で拒否されるものでない。しかし、工程６１２で、図８Ｄの更新ＰＵＡＴの検査によって、ユーザ２が種類Ｂの情報をアクセスするうえで必要な最小セキュリティ・レベルはこの場合、レベル２に設定される。したがって、該要求は工程６１４において拒否される。これは、Ｕ２（１）¬≧Ａ（２）  ｔｈｅｒｅｆｏｒｅ  アクセス却下、として表し得る。
【００３１】
例２
図１及び９を参照して、ユーザ１−５に対するアクセス権限が図９ＡにおけるＰＵＡＴによって設定される場合を検討する。アクセス・レベル２を伴うユーザ３であるＵ３（２）は、工程６０４に関する前述の情報種類Ａのオブジェクト１０２１にアクセスを要求し得る。工程６０６によって、当該システムは図９ＢにおけるＴＯＴ（時間順序テーブル）を照会し、アクセス要求時間が時間アクセス・パターンを完備するものでないことを判定している。その後、当該要求は、工程６１０に備えるように記録される。工程６１２によって、当該要求が、ユーザ３が十分に高いアクセス権限レベルを有するかを判定するよう、検査される。この場合、Ｕ３（２）≧Ａ（０）であるので、アクセスが、工程６１６によって要求オブジェクト１０２１に付与される。
【００３２】
その後、工程７０２でコンピュータ・システムは、図９ＣのＣＣＴ（組み合わせ分類テーブル）を用いてオブジェクトＡを伴うアグリゲーションを識別し得る。工程７０４では、当該システムは、種類「ａ」のアグリゲーション・ノード１１２１をアクセスするうえでの最小所要セキュリティ・レベルが、ユーザ３の許可セキュリティ・アクセス・レベルよりも大きいかを判定するよう検査する。この場合、当該条件は、ユーザの許可セキュリティ・アクセス・レベルが２であり、アグリゲーション・ノード１１２１（すなわち、種類「ａ」）をアクセスする最小所要レベルが等しいので、満たされない。したがって、当該システムは、ユーザが適切なセキュリティ・アクセス・レベルを有するというものであるという判断を下し、アグリゲーション・ノード１１２１の部分である何れかの別のベース・ノードを識別する工程７０６に続く。この場合、当該システムは、１０２２を（情報種類Ｂ）をアグリゲーションにおける参加者として識別する。
【００３３】
その後、工程７０８では、図９ＡにおけるＰＵＡＴは、（１）元々要求されたベース・ノード１１０（情報種類「Ａ」）をアクセスするのに要する最小セキュリティ・レベルが変わらないままであり；（２）種類「ａ」のアグリゲーション・ノード１１２１の別の参加者が更新されて、それらの最小所要セキュリティ・レベルを種類「ａ」のアグリゲーション・ノード１１２１について設定される最小所要セキュリティ・レベルに等しくなるように上昇させる；ように更新される。これは、以下のように表すことが可能である：Ｉｆ  ＰＵＡＴ（ｉ）＜ＣＣＴ（ｉ）  ｔｈｅｎ  ＣＣＴ（ｉ）  →  ＰＵＡＴ（ｉ）。その結果が、図９Ｄに表す更新ＰＵＡＴテーブルである。
【００３４】
図９Ｄの更新テーブルは、情報種類Ａのベース・ノード１０２１について、最小セキュリティ・アクセス・レベルがユーザ３に対してゼロであり続けることを表す。図９Ｄの情報種類Ａの表記０／１は、オブジェクトがゼロのセキュリティ・レベルを有し、ユーザ３によってアクセスされる第１の情報種類であったことを示す。しかし、図９ＤのＰＵＡＴにおける情報種類Ｂのオブジェクト１０２２をアクセスするうえでの最小セキュリティ・レベルは、レベル２に上昇している。
【００３５】
その後、アクセス・レベル２を伴うユーザ３であるＵ３（２）が情報種類Ｄのオブジェクト１０２４に対するアクセスを要求する場合、コンピュータ・システムは工程６０６で、アクセス要求時間が時間アクセス・パターンを完備しないことを判定することになる。これは、アクセス時間を図９ＥのＴＯＴと比較することによって達成される。ＴＯＴは図９Ｂの以前の状態から変わらないので、当該要求は工程６０６では拒否されるものでない。工程６１２では、図９Ｄの更新ＰＵＡＴの検査によって種類Ｄの情報をユーザ３がアクセスするのに要する最小セキュリティ・レベルが（当初と同様に）レベル２に設定されることが明らかになる。したがって、当該要求は工程６１６で許可される。これは、Ｕ３（２）≧Ｄ（２）  ｔｈｅｒｅｆｏｒｅ  アクセス許可、として表し得る。
【００３６】
その後、工程７０２で、コンピュータ・システムは、図９ＦのＣＣＴ（組み合わせ分類テーブル）を用いて情報種類Ｄのオブジェクトを伴うアグリゲーションを識別し得る。この場合、ノード１０２４（情報種類Ｄ）は種類「ｂ」のアグリゲーション・ノード１１２２における参加者である。工程７０４では、当該システムは、アグリゲーション・ノード１１２２をアクセスする最小所要セキュリティ・レベルがユーザの許可セキュリティ・アクセス・レベルよりも大きいかを判定するよう検査する。この場合、当該条件は、ユーザの許可セキュリティ・アクセス・レベルが２であり、種類「ｂ」のアグリゲーション・ノード１１２２をアクセスするのに要する最小レベルが３に等しいものであるので、満たされる。したがって、当該システムは工程７０６に続き、種類「ｂ」のアグリゲーション・ノード１１２２の一部である何れかの別のベース・ノード１１０を識別する。この場合、当該システムは、種類「ｂ」のノード１１２２のアグリゲーションにおける参加者である情報種類Ａ及びＢ（ノード１０２１及び１０２２）を識別する。
【００３７】
その後、工程７０８では、図９ＤにおけるＰＵＡＴは、（１）情報種類「Ｄ」の元々要求されたベース・ノード１０２４をアクセスするのに要する最小セキュリティ・レベルが変わらないままであり；（２）種類「ｂ」のアグリゲーション・ノード１１２２の別の参加者が更新されて、それらの最小所要セキュリティ・レベルが情報種類「ｂ」のアグリゲーション・ノード１１２２について設定される最小所要セキュリティ・レベルに等しくなるように上昇するように、更新される。これは、以下のように表し得る：Ｉｆ  ＰＵＡＴ（ｉ）  ＜  ＣＣＴ（ｉ）  ｔｈｅｎ  ＣＣＴ（ｉ）  →  ＰＵＡＴ（ｉ）。その結果は、図９Ｇに表す更新ＰＵＡＴテーブルである。
【００３８】
図９Ｇの更新テーブルは、情報種類Ｄのベース・ノード１０２４に対して、最小セキュリティ・アクセス・レベルが２であり続けることを表す。図９Ｇにおける情報種類Ｄの表記２／２は、オブジェクト１０２４が２のセキュリティ・レベルを有し、ユーザ３によってアクセスされる２番目のものであることを示す。しかし、ユーザ３に関しては、図９ＧのＰＵＡＴにおける情報種類Ｂのオブジェクトをアクセスするうえでの最小セキュリティ・レベルはレベル３に上昇している。
【００３９】
上記例について続けると、アクセス・レベル２を伴うユーザ３であるＵ３（２）は、情報種類Ｂのオブジェクト１０２２に対するアクセスを要求し得る。図９Ｈに示すように、アクセス要求時間は時間アクセス・パターンを完備するものでない（工程６０６）。しかし、工程６１２では、ユーザ３に対するセキュリティ権限レベルと、ユーザが図９ＧにおけるＰＵＡＴによって規定されるようなアクセスを行ううえで要求される最小セキュリティ・レベルとが比較される。この検査によって、ユーザ３（セキュリティ権限レベル２）が、少なくともユーザ３による要求に関して、３の最小要求セキュリティをその場合有する情報種類Ｂをアクセスするのに十分高いセキュリティ・レベルを有するものでない。これは、Ｕ３（２）¬≧Ｂ（３）として表し得る。したがって、アクセスする要求は、工程６１４で拒否される。
【００４０】
本明細書及び特許請求の範囲記載の本発明の装置は、各種のコンピュータ・システムとともに用い得る。これらは、スタンド・アロン・コンピュータ・システム、コンピュータ・ネットワーク又は図１０に表すようなクライアント・サーバ装置を含み得る。本発明は、コンピュータ・アプリケーション・ソフトウェア内部に一体化させ得るものであるか、既存のソフトウェア・システムへの外部構成部分として実施してモジュールのアクセス可能性を備え得る。更に、本発明は、何れかの特定の種類のソフトウェア・アプリケーションとともに用いることも、何れかの特定の種類のエンティティからの要求をアクセスすることも、制限されるものでない。したがって、本発明が本明細書及び特許請求の範囲にユーザ又はプロセスからの要求という点で記載されている範囲では、当業者には、本明細書及び特許請求の範囲記載の当該手法はなお広いアプリケーションを有し得ることとする。例えば、本発明は、データベースをアクセスするうえでのセキュリティを備えること、システム・コールを処理すること、及び／又はコンピュータ・ウィルス及びワームによって起動される遠隔アクセスの敵対的パターンを識別することに用い得る。
【００４１】
もう一度図１０を参照すれば、本発明は一コンピュータ・システム１０００においてソフトウェアで集中的な方法で実現し得るか、種々の構成要素が、いくつかの相互接続コンピュータ１０００、１００２にわたって分布する、分散的な方法で実施し得る。本明細書及び特許請求の範囲記載の当該方法を行うよう形成される何れかの種類のコンピュータ・システム又は別の装置が適している。通常の実現形態は、ロードされ、実行された場合に、コンピュータ・システムを、コンピュータ・システムが本明細書及び特許請求の範囲記載の方法を行うように、制御するコンピュータ・プログラムを伴う汎用コンピュータ・システムを含み得る。
【００４２】
本発明は、本明細書及び特許請求の範囲記載の方法の実現を可能にする全ての特徴を備え、コンピュータ・システムにロードした場合にこれらの方法をおこなうことができる、コンピュータ・プログラム・プロダクトにも組み込み得る。本発明の意味合いでのコンピュータ・プログラムは、情報処理能力を有するシステムに特定の機能を、直接か、ａ）別の言語、符号又は表記への変換；とｂ）別の材質形態での再生；との何れか又は両方の後に、行わせるよう意図される命令群の、何れかの言語、符号又は表記における何れかの表現を表す。
【図面の簡単な説明】
【００４３】
【図１】本発明を理解するうえで有用なデータ・プリミティブと階層グラフとを表す図である。
【図２Ａ】推移閉包テーブルを伴う半順序集合の例を表す図である。
【図２Ｂ】推移閉包テーブルを伴う半順序集合の例を表す別の図である。
【図３】時間順序テーブルの例を表す図である。
【図４Ａ】プロセス／ユーザ・アクセス・テーブルの例を表す図である。
【図４Ｂ】時間アクセス・テーブルの例を表す図である。
【図５】組み合わせ分類テーブルの例を表す図である。
【図６】本発明を理解するうえで有用な流れ図である。
【図７】本発明を理解するうえで有用な流れ図である。
【図８Ａ】本発明のプロセスが一例において動作可能な方法を理解するのに有用なテーブルを表す図である。
【図８Ｂ】本発明のプロセスが一例において動作可能な方法を理解するのに有用なテーブルを表す別の図である。
【図８Ｃ】本発明のプロセスが一例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図８Ｄ】本発明のプロセスが一例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図８Ｅ】本発明のプロセスが一例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図９Ａ】本発明のプロセスが第２の例において動作可能な方法を理解するのに有用なテーブルを表す図である。
【図９Ｂ】本発明のプロセスが第２の例において動作可能な方法を理解するのに有用なテーブルを表す別の図である。
【図９Ｃ】本発明のプロセスが第２の例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図９Ｄ】本発明のプロセスが第２の例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図９Ｅ】本発明のプロセスが第２の例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図９Ｆ】本発明のプロセスが第２の例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図９Ｇ】本発明のプロセスが第２の例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図９Ｈ】本発明のプロセスが第２の例において動作可能な方法を理解するのに有用なテーブルを表す更に別の図である。
【図１０】本発明の装置の実現形態を理解するうえで有用なコンピュータ・システムを表す図である。
【符号の説明】
【００４４】
１００  階層ツリー
１０２１  オブジェクト種類
１０２２  オブジェクト種類
１０２３  オブジェクト種類
１０２４  オブジェクト種類
１０４１  システム・ファンクション
１０４２  システム・ファンクション
１０４３  システム・ファンクション
１０６  インスタンシエーション
１０８  インスタンス
１１０  ベース・ノード
１１２  高位ノード
１１２１  高位ノード
１１２２  高位ノード
１１２３  高位ノード
１１４  アイテム
１１４１  アイテム
１１４２  アイテム
２０２  テーブル
６０２  工程
６０４  工程
６０６  工程
６０７  工程
６０８  工程
６１０  工程
６１２  工程
６１４  工程
６１６  工程
７０２  工程
７０４  工程
７０６  工程
７０８  工程
１０００  サーバ
Ａ  情報種類
Ｂ  情報種類
Ｃ  情報種類
Ｄ  情報種類
ｄｉｒ  ディレクトリ
ｅｘｅｃ  実行
ｄｅｌ  削除
ａ  アグリゲーション・アイテム
ｂ  アグリゲーション・アイテム
ｃ  アグリゲーション・アイテム
ｄ  アグリゲーション・アイテム
ｅ  アグリゲーション・アイテム
ＴＯＴ  時間順序テーブル
ＰＵＡＴ  プロセス／ユーザのアクセス・テーブル
Ｕｓｒ  ユーザ
１  ユーザ
２  ユーザ
３  ユーザ
４  ユーザ
５  ユーザ
ＣＣＴ  組み合わせ分類テーブル
【図１】
2005259146.tif 000003
【図２Ａ】
2005259146.tif 000004
【図２Ｂ】
2005259146.tif 000005
【図３】
2005259146.tif 000006
【図４Ａ】
2005259146.tif 000007
【図４Ｂ】
2005259146.tif 000008
【図５】
2005259146.tif 000009
【図６】
2005259146.tif 000010
【図７】
2005259146.tif 000011
【図８Ａ】
2005259146.tif 000012
【図８Ｂ】
2005259146.tif 000013
【図８Ｃ】
2005259146.tif 000014
【図８Ｄ】
2005259146.tif 000015
【図８Ｅ】
2005259146.tif 000016
【図９Ａ】
2005259146.tif 000017
【図９Ｂ】
2005259146.tif 000018
【図９Ｃ】
2005259146.tif 000019
【図９Ｄ】
2005259146.tif 000020
【図９Ｅ】
2005259146.tif 000021
【図９Ｆ】
2005259146.tif 000022
【図９Ｇ】
2005259146.tif 000023
【図９Ｈ】
2005259146.tif 000024
【図１０】
2005259146.tif 000025