(57)【要約】コンピュータ資源上にユーザー許可を作成して維持するプロセスのために、アクセス制御リストにより使用される抽象化レイヤーが提供される。第１に、許可の組は、任意の数のコンピュータ資源に関連付けられることができる。また、コンピュータ資源は、許可の任意の数の組への参照を格納することができ、使用が要求された場合、これらの許可の組は、許可が付与されるかどうかを決定する、統合された組にまとめられる。付加的な抽象化レベルは、コンピュータ資源への許可を管理する個人に対して、それらの許可が設定された理由を理解する能力を与える付加的な情報レイヤーを生じる。また、付加的な情報レイヤーは、許可の組への複数の参照を格納することができるので、コンピュータ資源に対する許可の履歴を生じる。
2009507275.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステム上の資源に対するアクセス制御を提供する方法であって、
（ａ）  前記コンピュータ資源に対応する許可の組への１つ又は複数の参照を読み出すステップと、
（ｂ）  アクセス制御データベースに問い合わせて、前記１つ又は複数の参照のそれぞれに対応する許可の組を取得するステップと、
（ｃ）  前記ステップ（ｂ）から得られた許可の前記組を統合して、前記コンピュータ資源に対する許可の統合された組を取得するステップと、
（ｄ）  許可の前記統合された組を検索して、前記コンピュータ資源の使用を要求するエンティティが使用の許可を持つかどうかを識別するステップと
を含む方法。
【請求項２】
前記ステップ（ｃ）が、前記ステップ（ｂ）で戻された許可の前記組上でオア演算を使用して許可の前記組全てを統合するステップを更に含む、請求項１に記載の方法。
【請求項３】
それぞれの前記許可が、前記コンピュータ資源の所定の使用に対する許容許可又は拒否許可を含み、該拒否許可は、対応する許容許可をオーバーライドする、請求項２に記載の方法。
【請求項４】
前記ステップ（ａ）が、アクセス制御リスト（ＡＣＬ）からの前記１つ又は複数の参照を読み出すステップを含む、請求項１に記載の方法。
【請求項５】
前記ステップ（ａ）が、前記コンピュータ資源に対する明示的許可を読み出すステップを更に含み、前記ステップ（ｃ）が、前記明示的許可を前記ステップ（ｂ）からの許可の前記１つ又は複数の組と統合するステップを含む、請求項１に記載の方法。
【請求項６】
前記１つ又は複数の参照のうちの第１の参照が所定のリストに対応する、請求項１に記載の方法。
【請求項７】
前記１つ又は複数の参照のうちの第１の参照が所定のオートリストに対応する、請求項１に記載の方法。
【請求項８】
前記１つ又は複数の参照のうちの第１の参照が、ユーザーに選択された参照に対応する、請求項１に記載の方法。
【請求項９】
請求項１に記載の方法を実行するコンピュータ実行可能命令を格納する１つ又は複数のコンピュータ読み取り可能媒体。
【請求項１０】
コンピュータ資源に対するセキュリティ許可を設定する方法であって、
（ａ）セキュリティ許可の第１の組を定義するステップと、
（ｂ）セキュリティ許可の第２の組を定義するステップと、
（ｃ）セキュリティ許可の前記第１の組への第１の参照及びセキュリティ許可の前記第２の組への第２の参照を、前記コンピュータ資源に対応するセキュリティデータに格納するステップと
を含む方法。
【請求項１１】
前記コンピュータ資源がリストにより定義される、請求項１０に記載の方法。
【請求項１２】
前記コンピュータ資源がオートリストにより定義される、請求項１０に記載の方法。
【請求項１３】
請求項１０に記載の方法を実行するコンピュータ実行可能命令を格納する１つ又は複数のコンピュータ読み取り可能媒体。
【請求項１４】
データ構造体が格納される１つ又は複数のコンピュータ読み取り可能媒体であって、前記データ構造体が、
（ａ）前記データ構造体が対応するコンピュータ資源を識別する第１のデータフィールドと、
（ｂ）セキュリティ許可の組への第１の参照を含む第２のデータフィールドと、
（ｃ）セキュリティ許可の組への第２の参照を含む第３のデータフィールドと
を含むコンピュータ読み取り可能媒体。
【請求項１５】
前記データ構造体が、明示的許可を格納する第４のデータフィールドを更に含む、請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
今日存在しているコンピュータファイルシステムでは、ファイル及びフォルダに対しアクセス制御セキュリティを個別に設定し、これにより、ユーザーを同じファイルシステムにアクセスしている他のユーザーから分離することができる。例えば、第１のファイルは、ユーザーＡだけが第１のファイルにアクセスできるようにセキュリティ設定を施すことができる。第１のファイルにこのセキュリティを設定すると、他のユーザーＢは、自分が第１のファイルに間違ってアクセスしてしまうことを心配せずに、同じファイルシステムを使用することができる。同じファイルシステム上でユーザー同士を分離できれば、ファイルのプライバシーを確保できる。読み出し許可、書き込み許可、実行許可などの、ファイル及びフォルダに対応し得る一連の許可がある。更に、ユーザーは、必要とあれば、他のユーザーに一連の許可のどれかを与えるよう、ファイル及びフォルダのセキュリティ許可を変更することを選択できる。
【背景技術】
【０００２】
ワシントン州レッドモンド所在のマイクロソフト社のウィンドウズ（登録商標）ブランドのオペレーティングシステムでは、このセキュリティアーキテクチャは、アクセス制御リスト（ＡＣＬ）を通じて管理される。ＡＣＬは、特定のファイル又はフォルダに対し様々なユーザーがどのような権利を有するかを効果的に記述する。これらの権利は、とりわけ、読み出し許可、書き込み許可、実行許可、変更許可及びセキュリティ許可を含む。例えば、ユーザーに所定のファイルを見ることをまったく許さない、ファイルを読み出すことのみをユーザーに許す、ファイルを変更する権利をユーザーに与える、ファイルのＡＣＬを変更する権利をユーザーに与える、といったことが可能である。ここで述べた以上の全ての種類のＡＣＬ許可がある。
【０００３】
ウィンドウズ（登録商標）ＸＰブランドのオペレーティングシステムでは、与えられたアイテムに対する既定の許可は、そのアイテムが作成されたフォルダの許可から継承され得る。更に、フォルダが他のユーザーに共有される場合、そのフォルダの許可を変更すると、オペレーティングシステムは、そのフォルダの下にある全てのファイルを次々に辿り、共有フォルダ内のそれぞれのファイルについてＡＣＬにその変更を適用することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このモデルに伴う問題は、与えられたアイテムに対するＡＣＬは単純に「存在する」こと、つまり、許可は読み出せるが、それらの許可に対する履歴も理由も理解できないという点である。ＡＣＬは、ユーザー１がファイル又はフォルダへのアクセス許可を有するということを示すが、その許可を付与することの理由はＡＣＬには与えられない。更に、一群のファイルに対する許可を削除した場合、特定のファイルに対する許可が残るかどうかを判定することは不可能である。これは、許可が削除された一群のファイルに関係する理由とは無関係の理由で許可が与えられた、又は与えられたであろうからである。ユーザー１が理由１及び理由２によりファイル１にアクセスする許可を与えられている場合、理由１が空になり、ユーザー１に対するアクセス許可が削除されるときに、ＡＣＬから、理由２により許可が保持されるべきであると理解することは不可能である。
【０００５】
ウィンドウズ（登録商標）ＸＰブランドのオペレーティングシステムでは、更に、ユーザー及び／又は他のグループの集まりからなる「グループ」を作成することもできる。いったん作成された後、グループはＡＣＬ内で使用されることができ、これにより、許可を多数のユーザーに一度に適用し易くなる。グループユーティリティは有用なツールではあるが、許可に対する記録された理由を提供しない。グループがファイル又はフォルダへのアクセス権を有している場合、グループを作成することが動機であるという事実以外の、その許可が付与された理由を見つけ出す手段はない。また、グループユーティリティは、与えられた許可が、その許可が削除される理由と無関係の理由により保持されるべきだということも決定しない。グループ１が、理由１及び理由２によりファイル１にアクセスする許可を与えられている場合、理由１が空になり、グループ１に対するアクセス許可が削除されるときに、理由２により許可が保持されるべきであると、ＡＣＬから理解することは不可能である。それに加えて、グループ自体は、それと本質的に関連付けられている許可を有しない。
【課題を解決するための手段】
【０００６】
以下、本発明の幾つかの態様の基本的な内容を理解できるように、簡単に概括を述べる。この発明の開示は、本発明の概要を広範囲にわたって述べたものではない。本発明の鍵となる要素又は重要な要素を識別し又は本発明の範囲を定めることは、意図されていない。以下、後述の詳細な説明の前置きとして、本発明の幾つかの概念を簡略化した形式で述べる。
【０００７】
本発明の幾つかの態様は、以前のＡＣＬモデルに対する付加的な抽象化レベルを使用してアクセス制御リスト（ＡＣＬ）を作成し、維持することに関する。一態様によれば、この新しいモデルの例示的なコンポーネントは、ユーザー及び／又はグループとそれぞれの許可をリストにした、許可の組を含む。作成されると、許可の組は、任意の数のコンピュータ資源に関連付けられる。また、コンピュータ資源も、許可の任意の数の組への参照を格納することができ、使用が要求されると、これらの許可の組は結合されて統合された組になる。この統合された組は、許可が特定のユーザーによる特定の使用のために付与されるかどうかを決定する。
【０００８】
追加の抽象化レベルは、以前のＡＣＬモデルに勝る幾つかの利点を有する。付加的な情報レイヤーは、コンピュータ資源への許可を管理する個人に、それらの許可が格納されている理由を理解する能力を与える。許可の組は識別子を格納するので、管理者は識別子を参照して、それらの許可が存在する理由と特定のコンピュータ資源に関連付けられている理由とを理解することができる。また、付加的な情報レイヤーは、コンピュータ資源に対する許可の履歴を生じる。許可の複数の組への複数の参照を単一のコンピュータ資源に関連付けることができるので、すでに存在している参照に影響を及ぼすことなく参照を追加、削除することができる。
【０００９】
また、様々な特徴は、許可の組への参照を異なるコンピュータ資源に適用する２つの機構を導入する。機構の１つは「リスト」であり、これは、コンピュータ資源への参照のユーザーにより定義された組を含む独立したデータ構造体であることを除き、フォルダと同様に機能する。次いで、それへの参照がリストに含まれる資源が、許可の組へのリストの参照を継承する。他の機構は「オートリスト」であり、これはリストに似ているが、コンピュータ資源への参照のユーザーにより定義された組を含む代わりに、オートリストは、スコープと、どの資源がオートリスト内に含まれるかを決定するためにスコープ内の全てのコンピュータ資源に適用される１つ又は複数の一致基準とを含む規則のユーザーにより定義された組を格納する。次いで、オートリストに関連付けられると決定された資源は、許可の組へのオートリストの参照を継承する。
【００１０】
添付図面を考慮し、以下の説明を参照することにより、本発明の態様を一層完全に理解できる。同じ参照番号は同じ特徴を示している。
【発明を実施するための最良の形態】
【００１１】
例示的な態様の以下の説明では、該態様の一部をなし、本発明を実施できる様々な実施の形態を図示している、添付の図面を参照する。理解されるように、他の実施の形態を利用することができ、本発明の範囲から逸脱することなく構造的及び機能的修正を加えることができる。
【００１２】
例示的な動作環境
図１は、本発明を実施するのに適したコンピューティング環境１００の一例を示している。コンピューティング環境１００は好適なコンピューティング環境の一例にすぎず、本発明の用途又は機能性の範囲に関する制限を示唆するものではない。コンピューティング環境１００を、典型的な動作環境１００に例示されている１つのコンポーネント又はその組み合わせに関係する何らかの依存性又は要件を持つものと解釈すべきでない。
【００１３】
本発明は、他の数多くの汎用又は専用コンピューティングシステム環境又は構成で動作する。本発明とともに使用するのに適していると思われる周知のコンピューティングシステム、環境及び／又は構成の例は、パーソナルコンピュータ（ＰＣ）、サーバーコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、タブレットＰＣ又はラップトップＰＣなどのポータブル又はハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家電製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、ゲーム機、及び上記システム又はデバイスを含む分散コンピューティング環境などがあるが、これらに限定されるものではない。
【００１４】
本発明は、コンピュータによって実行されるプログラムモジュール等のコンピュータ実行可能命令の一般的な文脈において説明することができる。一般に、プログラムモジュールは、特定のタスクを実行する又は特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。また、本発明は、通信ネットワークを通じてリンクされている遠隔処理装置によりタスクが実行される分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールを、メモリ記憶装置を含む局所的な及び遠隔のコンピュータ記憶媒体に配置することができる。
【００１５】
図１を参照すると、本発明を実現する例示のシステムは、コンピュータ１１０の形の汎用コンピューティングデバイスを備えている。コンピュータ１１０が備えるコンポーネントは、演算処理ユニット１２０、システムメモリ１３０、及び、システムメモリ１３０を含む様々なシステムコンポーネントを演算処理ユニット１２０に結合するシステムバス１２１などを含むが、これらに限定されない。システムバス１２１は、メモリバス又はメモリコントローラ、周辺機器バス、及び、様々なバスアーキテクチャを使用するローカルバスを含む数種類のバス構造のうちのいずれでもよい。例えば、限定はしないが、このようなアーキテクチャとしては、産業標準アーキテクチャ（ＩＳＡ）バス、マイクロチャネルアーキテクチャ（ＭＣＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ビデオエレクトリニクス標準協会（ＶＥＳＡ）ローカルバス、改良型グラフィックスポート（ＡＧＰ）バス、及びメザニンバスとも呼ばれる周辺コンポーネントインターコネクト（ＰＣＩ）バスがある。
【００１６】
コンピュータ１１０は、典型的には、様々なコンピュータ読み取り可能媒体を備える。コンピュータ読み取り可能媒体は、コンピュータ１１０によってアクセスされることができる任意の利用可能な媒体であり得、揮発性及び不揮発性の媒体、取り外し可能な及び取り外し不可能な媒体を含む。例えば、限定はしないが、コンピュータ読み取り可能媒体はコンピュータ記憶媒体及び通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ読み取り可能命令、データ構造体、プログラムモジュール又はその他のデータなどの情報を格納する方法又は技術で実装される揮発性及び不揮発性の、取り外し可能な及び取り外し不可能な媒体を含む。コンピュータ記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ又はその他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ又はその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶デバイス、或いは、所望の情報を格納するために使用することができ、コンピュータ１１０によりアクセスできるその他の媒体を含むが、これらに限定されるものではない。通信媒体は、典型的には、コンピュータ読み取り可能命令、データ構造体、プログラムモジュール、又は、搬送波或いはその他のトランスポートメカニズムなどの変調データ信号によるその他のデータを具現するものであり、任意の情報配信媒体を含む。「変調データ信号」という用語は、信号内に情報を符号化するような方法で特性のうちの１つ又は複数が設定又は変更された信号を意味する。例えば、限定はしないが、通信媒体としては、有線ネットワーク又は直接配線接続などの有線媒体や、音響、ＲＦ、赤外線及びその他の無線媒体などの無線媒体がある。上記のいずれの組み合わせも、コンピュータ読み取り可能媒体の範囲に含まれるべきである。
【００１７】
システムメモリ１３０は、読み取り専用メモリ（ＲＯＭ）１３１及びランダムアクセスメモリ（ＲＡＭ）１３２などの揮発性及び／又は不揮発性メモリの形態のコンピュータ記憶媒体を含む。起動時などにコンピュータ１１０内の要素間の情報伝送を助ける基本ルーチンを含む基本入出力システム１３３（ＢＩＯＳ）は、典型的には、ＲＯＭ  １３１に格納される。通常、ＲＡＭ  １３２は、演算処理ユニット１２０に直接アクセス可能なデータ及び／又はプログラムモジュール、及び／又は、演算処理ユニット１２０によって現在操作されているデータ及び／又はプログラムモジュールを格納する。例えば、図１は、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６及びプログラムデータ１３７を例示しているが、これらに限定されない。
【００１８】
コンピュータ１１０は更に、その他の取り外し可能／取り外し不可能な揮発性／不揮発性のコンピュータ記憶媒体を備えることもできる。例にすぎないが、図１は、取り外し不可能な不揮発性磁気媒体の読み書きを行うハードディスクドライブ１４１、取り外し可能な不揮発性磁気ディスク１５２の読み書きを行う磁気ディスクドライブ１５１、及びＣＤＲＯＭ又はその他の光媒体などの取り外し可能な不揮発性光ディスク１５６の読み書きを行う光ディスクドライブ１５５を例示している。例示的な動作環境において使用できる他の取り外し可能／取り外し不可能な揮発性／不揮発性コンピュータ記憶媒体としては、限定はしないが、磁気テープカセット、フラッシュメモリカード、ＤＶＤ、デジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭなどがある。ハードディスクドライブ１４１は、典型的には、インターフェイス１４０などの取り外し不可能メモリインターフェイスを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１及び光ディスクドライブ１５５は、典型的には、インターフェイス１５０などの取り外し可能メモリインターフェイスによりシステムバス１２１に接続される。
【００１９】
図１に例示されている上記のドライブ及び関連コンピュータ記憶媒体は、コンピュータ１１０に対するコンピュータ読み取り可能命令、データ構造体、プログラムモジュール及びその他のデータを格納する機能を備える。例えば、図１では、ハードディスクドライブ１４１は、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６及びプログラムデータ１４７を格納するものとして例示されている。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６及びプログラムデータ１３７と同じである場合も、異なる場合もあることに留意されたい。ここでは、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６及びプログラムデータ１４７に対しては、少なくともそれらが異なるコピーであることを示すよう、異なる番号が割り当てられている。ユーザーは、キーボード１６２や、マウス、トラックボール又はタッチパッドと一般に呼ばれるポインティングデバイス１６１などの入力デバイスを介して、コンピュータ１１０にコマンド及び情報を入力することができる。他の入力デバイス（図示せず）としては、マイク、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどがある。これらの及び他の入力デバイスは、システムバスに結合されているユーザー入力インターフェイス１６０を介して演算処理ユニット１２０に接続されることが多いが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）又はＩＥＥＥ  １３９４シリアルバス（ファイヤワイヤ）などの他のインターフェイス及びバス構造により接続することもできる。少なくとも１つのモニタ１８４又はその他のタイプのディスプレイデバイスも、ビデオアダプタ１８３などのインターフェイスを介してシステムバス１２１に接続できる。ビデオアダプタ１８３は、専用プロセッサ及びメモリを備えることに加えて、高度な３Ｄグラフィックス機能をサポートすることができる。更に、コンピュータ１１０は、ユーザーがスタイラス入力デバイス１８６を使用して入力を行うためのデジタイザ１８５を備えることもできる。モニタのほかに、コンピュータは更にスピーカー１８９及びプリンタ１８８などの他の周辺出力デバイスも備えることができ、これらは出力周辺機器インターフェイス１８７を介して接続されることができる。
【００２０】
コンピュータ１１０は、遠隔コンピュータ１８０などの１つ又は複数の遠隔コンピュータへの論理接続を使用してネットワーク接続環境で動作することができる。遠隔コンピュータ１８０は、パーソナルコンピュータ、サーバー、ルーター、ネットワークＰＣ、ピアデバイス又はその他の共通ネットワークノードでもよく、典型的には、コンピュータ１１０に関係する上述の要素の多く又は全てを含むが、メモリ記憶装置１８１だけが図１に例示されている。図１に示されている論理接続は、ローカルエリアネットワーク（ＬＡＮ）１７１及びワイドエリアネットワーク（ＷＡＮ）１７３を含むが、他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィス、企業全体にわたるコンピュータネットワーク、イントラネット及びインターネットでは一般的である。
【００２１】
ＬＡＮネットワーキング環境で使用される場合、コンピュータ１１０は、ネットワークインターフェイス又はアダプタ１７０を介してＬＡＮ  １７１に接続される。ＷＡＮネットワーキング環境で使用される場合、コンピュータ１１０は、インターネットなどのＷＡＮ  １７３上で通信を確立するためのモデム１７２又はその他の手段を備えることができる。モデム１７２は内蔵でも外付けでもよく、ユーザー入力インターフェイス１６０又はその他の適切なメカニズムを介してシステムバス１２１に接続され得る。ネットワーク接続環境では、コンピュータ１１０又はその一部に対して図示されているプログラムモジュールは遠隔メモリ記憶装置デバイスに格納され得る。例えば、図１は遠隔アプリケーションプログラム１８２をメモリデバイス１８１に置かれているものとして例示しているが、これに限定されるものではない。理解されるように、図示されたネットワーク接続は例示であり、コンピュータ間の通信リンクを確立するのに他の手段が使用可能である。
【００２２】
本発明の１つ又は複数の態様は、１つ又は複数のコンピュータ又は他のデバイスにより実行される、１つ又は複数のプログラムモジュールなどにおけるコンピュータ実行可能命令で実現することができる。一般に、プログラムモジュールは、コンピュータ又は他のデバイス内のプロセッサにより実行されたとき、特定のタスクを実行する又は特定の抽象データタイプを実現するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。コンピュータ実行可能命令は、ハードディスク、光ディスク、取り外し可能記憶媒体、固体メモリ、ＲＡＭなどのコンピュータ読み取り可能媒体上に格納されることができる。当業者には理解されるところであるが、プログラムモジュールの機能は、様々な実施の形態において望ましい形で組み合わされ、又は分散させられる。更に、機能は、ファームウェア又は集積回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）などのハードウェア均等物で全体的に又は部分的に実現できる。
【００２３】
例示的な実施の形態
本発明の態様は、コンピュータ資源に対する許可の組を、それらの許可に対する履歴及び理由が保持されるように定義し、許可のそれぞれの組に名前を付け、名前を付けられた組の許可をコンピュータ資源に適用することによって抽象化レベルをセキュリティモデル及びアクセス制御リスト（ＡＣＬ）に追加するために使用されることができる。
【００２４】
本発明の１つ又は複数の態様は、１人又は複数のユーザー及び／又は１つ又は複数のグループと、それらに関連する許可の組とを、図２Ａ及び２Ｂに示すのと動作的に同様のデータ構造体に格納する。図２Ａは、コンピュータ資源（図示せず）に適用されたときに、ティム（Ｔｉｍ）及びディズ（Ｄｉｚ）は所望のアクションを実行できるが、シーズ（Ｃｅｅｓ）はコンピュータ資源から読み出すことのみができ、コリン（Ｃｏｌｉｎ）はコンピュータ資源への読み書きが行える許可の組２０１を例示している。図２Ｂは、コンピュータ資源（図示せず）に適用されたときに、Ｔｉｍは所望のアクションを実行できるが、Ｃｏｌｉｎとライアン（Ｌｙｏｎ）はコンピュータ資源から読み出すことのみができ、ジェイソン（Ｊａｓｏｎ）とカレム（Ｋｅｒｅｍ）はコンピュータ資源への読み書きが行える許可の他の組２０５を例示している。許可のそれぞれの組２０１及び２０５が作成された後、ユーザー又はシステムは（オペレーティングシステムなどを通じて）参照又は名前２０３、２０７を許可のそれぞれの組に割り当てることができる。この例では、許可の組２０５は青色２０７と呼ばれ、許可の組２０１は緑色２０３と呼ばれる。いずれか又は両方の参照は任意の数のコンピュータ資源と関連付けられるので、その結果、対応する許可がそれらのコンピュータ資源に適用される。本明細書で使用されているように、コンピュータ資源は、ファイル、フォルダ、リスト、オートリスト、電子メール連絡先リスト、電子メール、タスク、Ｉ／Ｏポート、他の識別可能なコンピュータ資源を含むことができるが、これらに限定されない。
【００２５】
図３Ａは、ここではファイルＩ１  ３０１であるコンピュータ資源を例示している。ファイルＩ１  ３０１は、対応するアクセス制御リスト３０２を有する。ＡＣＬ  ３０２はコンピュータ資源３０１内に例示されているが、当業者であれば理解するように、ＡＣＬは、代わりに、その対応のコンピュータ資源とは別に格納されることができる。ＡＣＬ  ３０２は、ファイルＩ１  ３０１が青色の許可の組２０５により定義された許可と明示的許可３０５とを継承することを示している。その結果、アイテムＩ１  ３０１は、Ｔｉｍには所望のアクションの実行を許し、Ｃｏｌｉｎ、Ｌｙｏｎ及びマイク（Ｍｉｋｅ）に読み出しのみを許し、Ｊａｓｏｎ、Ｋｅｒｅｍ及びジョン（Ｊｏｈｎ）に読み書きを許す許可を有するが、Ｌｙｏｎに対しは読み出しの許可を拒否する（ただし、「不許可」は、「〜」で表される）。
【００２６】
図３Ｂは、ここではファイルＩ２  ３０３であるコンピュータ資源を例示している。ファイルＩ２  ３０３は、対応するアクセス制御リスト３０４を有する。ＡＣＬ  ３０４はコンピュータ資源３０３内に例示されているが、当業者であれば理解するように、ＡＣＬは、代わりに、その対応のコンピュータ資源とは別に格納されることができる。ＡＣＬ  ３０４は、ファイルＩ２  ３０３が青色の許可の組２０５により定義された許可と緑色の許可の組２０１により定義された許可とを継承することを示す。アイテムＩ２  ３０３は、Ｔｉｍ及びＤｉｚに所望のアクションの実行を許し、Ｃｅｅｓ及びＬｙｏｎに読み出しのみを許し、Ｃｏｌｉｎ、Ｊａｓｏｎ及びＫｅｒｅｍに読み書きを許す許可を有する。許可それ自体のリストを作成する代わりに、追加の抽象化レベルを使用すること、つまり、ＡＣＬにおいて許可の組の名前を参照することにより、ユーザーは、後述のように、許可の出所を追跡することができる。
【００２７】
本発明の態様は、許可の組への参照を異なるコンピュータ資源に適用するために少なくとも２つの形態を取る継承機能を提供する。機構の１つは「リスト」であり、これはフォルダと同様に機能するが、図４Ａに示されているように、ユーザーによって定義された、コンピュータ資源への参照の組４０１を含む独立したデータ構造体である点で相違する。更にリストはオプションとして注釈を含み、また何らかの所定の順序を有する。更に、図４Ａは、許可の組２０５がリスト４０１に関連付けられることを示しており、該リスト４０１内のコンピュータ資源の全ては、該リストに関連付けられた許可の組（この例では、青色の許可の組）への参照を継承する。図４Ｂは継承の原理を例示しており、リストは許可の組２０５への参照を有し、リスト４０１に関連付けられた全てのコンピュータ資源は、その後に許可の組２０５への参照を格納する。
【００２８】
第２の機構は「オートリスト」であり、オートリストはリストに似ているが、ユーザーによって定義された、コンピュータ資源への参照の組を含む代わりに、オートリストは、スコープ５０の形で、及び、どの資源がオートリスト内に含まれるかを決定するためスコープ５０１内の全てのコンピュータ資源に対して適用される１つ又は複数の一致基準５０３の形で、ユーザーによって定義された規則の組を格納する。次いで、オートリストに関連付けられると決定された資源は、許可の組２０１へのオートリストの参照を継承する。スコープ５０１は、コンピュータがコンピュータ資源を評価するために注目しなければならない場所を定義し、基準５０３は、コンピュータ資源のメタデータを評価する際の規則を定義する。規則の可能な一例は図５Ａに示されており、オートリストの規則は、Ｃドライブ５０１全体を検索するスコープと、作成者がＣｅｅｓであるコンピュータ資源に適用する基準とを持つ。
【００２９】
特定の基準内にあり且つスコープ内に格納される全てのコンピュータ資源は、オートリストに関連付けられている許可の組への全ての参照を継承する。こうしたオートリストの結果が図５Ｂに示されており、そこでは、コンピュータ資源Ｉ２  ３０３及びＩ３  ５０７がスコープ内及び基準内にあり、したがって、オートリストに関連付けられている許可の（１つ又は複数の）組２０１への参照を継承する。アイテムＩ２は、前の例で説明したように、青色の許可の組２０５を更に参照するものとして例示されている。また、このシステムは、スコープ内の基準に一致しない全てのアイテムが、オートリストに対応する許可の（１つ又は複数の）組に関連付けられないことを保証する。更に、このシステムは、システムがアクセスできるが基準に一致しない全てのアイテムが、オートリストに対応する許可の（１つ又は複数の）組に関連付けられないことを保証することさえできる。
【００３０】
オートリストは動的に変化するので、例示的な機能は、正しいコンピュータ資源がオートリストにより表される許可に関連付けられるように、オートリストを更新することができる。オートリストは、手動操作で又は自動でチェック機構をトリガするように実装されることができる。手動操作は、限定はしないが、プログラムの実行又は操作開始ボタンのクリックなどのコンピュータアクションを必要とし得る。自動化の実装オプションは、１日に１回又は１時間に１回などの設定時間間隔で更新手順を実行するのと同じくらい単純であり、又は、コンピュータ資源が変更されたときにオートリストへの適切な変更を自動的に行うリスナーにより実装され得る。
【００３１】
単一のコンピュータ資源に対する異なる組の許可及び／又は明示的許可への複数の参照がある場合、そのコンピュータ資源の使用を求める要求が許されるべきかどうかを決定するために、許可の統合された組が作成される。例えば、上で示したように、アイテムＩ１  ２０１は、青色の許可の組２０５と追加の明示的許可３０５とを参照する（図３Ａ）。アイテムＩ２  ２０５は、青色の許可の組２０５及び緑色の許可の組２０１とを参照する（図３Ｂ）。例示的な統合プロセスが図６に示されており、そこでは、所定のデータオブジェクトに関連付けられた異なる組の許可及び明示的許可にオア演算が適用される。この例では、図６は、許可の組２０５及び明示的許可３０５によるコンピュータ資源Ｉ１  ３０１の統合を示している。オア演算の結果が図６のアイテム６０１に示されている。Ｃｏｌｉｎは許可の組２０５からの読み出しアクセス権のみを持っていたし、明示的許可３０５への読み書きアクセス権を持っていたので、統合期間に、オア演算の結果として読み書きアクセス権を受け取る。Ｌｙｏｎの拒否と許可はＬｙｏｎが１つのエントリのみを持つように組み合わされる。このエントリは読み出し許可を除去するが、これは拒否によりオーバーライドされるからである。代替の実施の形態は、１ユーザー当たり複数のエントリを使用し、それぞれのエントリは、組み合わされた許可から許可／拒否のうちの一部を提供する。
【００３２】
次いで、許可の統合された組６０１は、コンピュータ資源の使用を求める要求が許されるべきかどうかを決定するために使用されることができる。要求された使用は、統合された組内に許可が存在している場合にユーザーに対して認められる。例えば、６０１（図６）の情報を使用し、図７の流れ図に従って、ＬｙｏｎがＩ１  ３０１への読み出しアクセスを要求している場合、Ｉ１  ６０１に対する統合されたリストを作成した後（ステップ７０１）、コンピュータは、Ｌｙｏｎに関連付けられている読み出し許可があるかどうかをチェックする（ステップ７０３）。そのような許可が存在しない場合、又は拒否の許可がある場合、Ｌｙｏｎは読み出しアクセスを拒否される（ステップ７０５）。そのような許可がＬｙｏｎに対して存在しない場合、Ｌｙｏｎに読み出しアクセスが与えられる（ステップ７０７）。
【００３３】
本明細書で説明されている例示的な機能により作成される情報のレイヤーは、コンピュータ資源への許可を管理する個人に、それらの許可が設定された理由を理解する能力を与える。図８Ａに示すように、会社は現在のプロジェクトに関してチームを編成し、チームリーダーが完全な統制権を持ち且つ他のメンバーは読み書きアクセス権を取得する赤色８０１と呼ばれる許可の組を有する。図８Ｂに示すように、赤色の許可の組８０１を異なるコンピュータ資源Ｉ４  ８０３、Ｉ５  ８０５、Ｉ６  ８０７に適用した後、許可を維持している管理者は、その許可の組がプロジェクトの結果として作成されたことを理解することができる。これは許可の組が赤色識別子８０１を保持しているためである。したがって、この知識により、管理者は、コンピュータ資源からの許可を保持又は削除することができる。以前のＡＣＬモデルのグループユーティリティは、グループに関連付けられているユーザーに対して同一の許可を与えたが、本発明の態様によれば、上の例で説明したように、異なるユーザーは、同一グループ内で、異なる許可を持つことができる。
【００３４】
作成された付加的な情報レイヤーは、コンピュータ資源に対する許可の履歴を生じる。図９Ａに示すように、Ｍｉｋｅには、黄色と呼ばれる許可の第１の組９０１から読み出しアクセス権が与えられ、紫色と呼ばれる許可の第２の組９０３から読み書きアクセス権が与えられる。使用を求める要求が出されると、両方の組９０１、９０３からの許可は、図９Ｂに示すように、Ｍｉｋｅに読み書きアクセス権を与えるシステムにより統合される。これは、ファイルＩ７  ９０５が、紫色の許可の組９０３への参照と黄色の許可の組９０１への参照とを格納するからである。図９Ｃに示すように、紫色の許可の組９０３が何らかの理由により削除された場合も、ユーザーは、そのまま、黄色の許可の組９０１への参照からの読み出しアクセス権を保持する。以前のＡＣＬモデルでは、許可のリストのみが保存される。問題は、紫色の許可の組９０３に関連付けられていたユーザーの読み書きアクセス権を管理者が削除できることにある。読み出しアクセス権は、黄色の許可の組９０１に関連付けられていたという理由で許されてもいたために残っているとしても、黄色又は紫色の許可の組への参照は保存されないために削除され、許可それ自体だけが保存される。この問題は、許可の組への参照を適用する際に本発明の幾つかの態様に従って作成された履歴情報により解決される。
【００３５】
また、付加的な情報レイヤーは、許可を変更し、容易にコンピュータ資源に広めることができる。図１０Ａに示すように、図８からの赤色の許可の組８０１は、他のメンバーを加えるように変更することができる。変更された後、赤色の許可の組８０１は、この組８０１が関連付けられていたコンピュータ資源全てを更新する。図１０Ｂは、新しいメンバーが赤色の許可の組８０１に加えられた後、ファイルＩ４  ８０３、Ｉ５  ８０５及びＩ６  ８０７は新しいメンバーに関連付けられた許可を持つことを示している。この更新伝播は、ユーザーの削除、現在のユーザーの許可の変更、ユーザーの追加を含む更新により実行され得るが、これらに限定されない。
【００３６】
本発明の幾つかの態様により提供されるＡＣＬモデルの付加的な抽象化レベルは、以前のＡＣＬモデルに存在している多くの問題点を解決する情報レイヤーを作成する。コンピュータ資源は許可の組への複数の参照を格納し、アクセス権を付与する前に、それらの許可を結合して１つの統合された組にする。この付加的な抽象化レイヤーにより、コンピュータ資源のＡＣＬを管理している者に、それぞれの特定のコンピュータ資源にＡＣＬが適用された理由を記憶する手段が与えられる。また、コンピュータ資源はそれらの許可を正しく保持する結果となる。これは、許可の組への複数の参照を格納することができるので、許可の組への１つの参照が削除されても、残りは存続し、正しいＡＣＬが得られるからである。また、付加的なレイヤーは、許可への変更を容易にコンピュータ資源に広めることができる。本発明の幾つかの態様によるＡＣＬモデルは、許可の組を異なるコンピュータ資源に適用するのを容易にする機能をも備える。リストは、ユーザーが許可の１つ又は複数の組を当該リストに関連付けられたコンピュータ資源に適用できるようにする。オートリストは、ユーザーがコンピュータ資源メタデータに適用する規則の組を作成できるようにし、規則に合致する資源は当該オートリストに関連付けられた許可の組への参照を格納する。これらの機能は全て、以前のＡＣＬモデルの初期の技術に対する改善である。
【００３７】
本明細書で説明した本発明の様々な態様を具現化する例示的なシステム及び方法が図示されているが、当業者であれば理解するように、本発明はこれらの実施の形態に限定されるものではない。当業者であれば、上記の教示に特に照らして修正を行うことができる。例えば、前述の実施の形態の各要素は、単独で、又は他の実施の形態の要素とのコンビネーション又はサブコンビネーションにおいて使用することができる。また、評価され理解されるように、本発明の真の精神と範囲から逸脱することなく、修正を加えることができる。したがって、この説明は限定的ではなく、例示であるとみなされる。
【図面の簡単な説明】
【００３８】
【図１】本発明の１つ又は複数の例示的な態様が実行される動作環境を例示する図である。
【図２Ａ】本明細書で説明されている例示的な態様に係る、コンピュータ資源に関連付けられる許可の組を例示する図である。
【図２Ｂ】本明細書で説明されている例示的な態様に係る、コンピュータ資源に関連付けられる許可の組を例示する図である。
【図３Ａ】本明細書で説明されている例示的な態様に係る、許可及び明示的許可の組がコンピュータ資源に関連付けられる方法を例示する図である。
【図３Ｂ】本明細書で説明されている例示的な態様に係る、許可及び明示的許可の組がコンピュータ資源に関連付けられる方法を例示する図である。
【図４Ａ】本明細書で説明されている例示的な態様に係る、リスト及びそのコンポーネントを例示する図である。
【図４Ｂ】本明細書で説明されている例示的な態様に係る、リスト及びそのコンポーネントを例示する図である。
【図５Ａ】本明細書で説明されている例示的な態様に係る、オートリスト及びそのコンポーネントを例示する図である。
【図５Ｂ】本明細書で説明されている例示的な態様に係る、オートリスト及びそのコンポーネントを例示する図である。
【図６】本明細書で説明されている例示的な態様に係る、許可の統合された組の計算を例示する図である。
【図７】本明細書で説明されている例示的な態様に係る、コンピュータ資源の使用を求める要求が許されるべきかどうかを決定するための判定流れ図である。
【図８Ａ】本明細書で説明されている例示的な態様に係る、許可の組からの付加的な情報レイヤーを例示する図である。
【図８Ｂ】本明細書で説明されている例示的な態様に係る、許可の組からの付加的な情報レイヤーを例示する図である。
【図９Ａ】本明細書で説明されている例示的な態様に係る、許可の２つの組を例示する図である。
【図９Ｂ】本明細書で説明されている例示的な態様に係る、許可の両方の組が同じコンピュータ資源に関連付けられる場合に結果として得られる許可の統合された組を例示する図である。
【図９Ｃ】本明細書で説明されている例示的な態様に係る、許可の１つの組が削除されたときに正しい許可が保持されるように付加的な情報レイヤーがどのように履歴を生じるかを例示する図である。
【図１０Ａ】本明細書で説明されている例示的な態様に係る、許可の組からの付加的な情報レイヤーを更に例示する図である。
【図１０Ｂ】本明細書で説明されている例示的な態様に係る、許可の組からの付加的な情報レイヤーを更に例示する図である。
【図１】
2009507275.tif 000003
【図２Ａ】
2009507275.tif 000004
【図２Ｂ】
2009507275.tif 000005
【図３Ａ】
2009507275.tif 000006
【図３Ｂ】
2009507275.tif 000007
【図４Ａ】
2009507275.tif 000008
【図４Ｂ】
2009507275.tif 000009
【図５Ａ】
2009507275.tif 000010
【図５Ｂ】
2009507275.tif 000011
【図６】
2009507275.tif 000012
【図７】
2009507275.tif 000013
【図８Ａ】
2009507275.tif 000014
【図８Ｂ】
2009507275.tif 000015
【図９Ａ】
2009507275.tif 000016
【図９Ｂ】
2009507275.tif 000017
【図９Ｃ】
2009507275.tif 000018
【図１０Ａ】
2009507275.tif 000019
【図１０Ｂ】
2009507275.tif 000020