(57)【要約】  オブジェクトにアクセスするためのユーザからの要求を管理する方法、システム、および装置を含む各種技術の実施。一実施形態では、ユーザが、ポリシーに基づいてオブジェクトへのアクセスを拒否されるまたは認められるかどうかの決定がなされる（ステップａ）。ポリシーによって、ユーザがオブジェクトへのアクセスを拒否されることも認められることもない場合、オブジェクトに対するＡＣＬ（access control list）によって、ユーザはオブジェクトへのアクセスが認められるかどうかに関しての決定がなされる（ステップｂ）。ステップ（ａ）および（ｂ）によって決定されたように、ユーザがオブジェクトへのアクセスを有するかどうか結論が下される。
2009522694.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトにアクセスするためのユーザからの要求を管理する方法であって、
（ａ）前記ユーザが、ポリシーに基づいて前記オブヘクトへのアクセスを拒否されるまたは認められるかどうか決定すること、
（ｂ）前記ユーザが、前記ポリシーによって前記オブジェクトへのアクセスを拒否されることも認められることもない場合、前記オブジェクトに対するＡＣＬ（access control list）によって、前記ユーザに前記オブジェクトへのアクセスが認められるかどうか決定すること、および
（ｃ）ステップ（ａ）および（ｂ）によって決定されたように、前記ユーザが前記オブジェクトへのアクセスを有するかどうか結論を下すこと
を備えたことを特徴とする方法。
【請求項２】
ステップ（ａ）は、前記ユーザが前記オブジェクトを含むサーバへのアクセスを拒否されるまたは認められるかどうかの決定を備えたことを特徴とする請求項１に記載の方法。
【請求項３】
前記サーバは、仮想サーバであることを特徴とする請求項２に記載の方法。
【請求項４】
前記サーバは、ＨＴＴＰ（hypertext transfer protocol）サーバであることを特徴とする請求項２に記載の方法。
【請求項５】
前記ユーザが、前記ポリシーによって前記サーバへのアクセスを拒否された場合、前記ユーザが前記オブジェクトにアクセスするのを拒否されることをさらに備えたことを特徴とする請求項２に記載の方法。
【請求項６】
たとえ前記ユーザが、前記ＡＣＬによって前記オブジェクトへのアクセスが認められたとしても、前記ユーザは、前記オブジェクトへのアクセスを拒否されることを特徴とする請求項５に記載の方法。
【請求項７】
前記ユーザが、前記ポリシーによって前記サーバへのアクセスが認められた場合、前記ユーザが前記オブジェクトにアクセスするのを認めることをさらに備えたことを特徴とする請求項２に記載の方法。
【請求項８】
たとえ前記ユーザが、前記ＡＣＬによって前記オブジェクトへのアクセスが認められなかったとしても、前記ユーザは、前記オブジェクトへのアクセスを認められることを特徴とする請求項７に記載の方法。
【請求項９】
コンピュータ実行可能命令が格納されているコンピュータ読み取り可能媒体であって、コンピュータによって実行されると、前記コンピュータに、
（ａ）オブジェクトを含むサーバに対するポリシーが、前記サーバへのユーザアクセスを拒否するまたは認めるかどうか決定すること、
（ｂ）前記ポリシーが前記サーバへのユーザアクセスを拒否することも認めることもない場合、前記オブジェクトに対するＡＣＬは、前記ユーザが前記オブジェクトにアクセスするのを認めるかどうか決定すること、および
（ｃ）ステップ（ａ）および（ｂ）に基づいて前記オブジェクトへの前記ユーザアクセスを認めるまたは拒否すること
を実行させるコンピュータ読み取り可能媒体。
【請求項１０】
コンピュータによって実行されると、前記ポリシーが前記サーバへの前記ユーザアクセスを拒否する場合、前記コンピュータに前記ユーザが前記オブジェクトにアクセスするのを拒否させるコンピュータ実行可能命令をさらに備えたことを特徴とする請求項９に記載のコンピュータ読み取り可能媒体。
【請求項１１】
コンピュータによって実行されると、前記ポリシーが前記サーバへの前記ユーザアクセスを認める場合、前記コンピュータに前記オブジェクトへの前記ユーザアクセスを認めることを行わせるコンピュータ実行可能命令をさらに備えたことを特徴とする請求項９に記載のコンピュータ読み取り可能媒体。
【請求項１２】
前記サーバは、仮想サーバであることを特徴とする請求項９に記載のコンピュータ読み取り可能媒体。
【請求項１３】
前記サーバは、ＨＴＴＰ（hypertext transfer protocol）サーバであることを特徴とする請求項９に記載のコンピュータ読み取り可能媒体。
【請求項１４】
プロセッサで実行されているアプリケーションプログラムによってアクセスするデータを格納するメモリであって、
前記メモリの中に格納されたデータ構造であって、
前記データ構造は、サーバに対するアクセスマスクを備え、
前記アクセスマスクは、少なくとも１つの前記サーバへアクセスを許可するまたは拒否するための１または複数の許可を指定するデータ構造を
備えたことを特徴とするメモリ。
【請求項１５】
前記サーバは、ＨＴＴＰ（hypertext transfer protocol）サーバに存在する仮想サーバであることを特徴とする請求項１４に記載のメモリ。
【請求項１６】
前記サーバは、ＨＴＴＰ（hypertext transfer protocol）サーバであることを特徴とする請求項１４に記載のメモリ。
【請求項１７】
前記アクセスマスクは、前記サーバへのアクセスが認められているあらかじめ決められた一連のユーザを指定する一連の許可アクセスマスクを備えたことを特徴とする請求項１４に記載のメモリ。
【請求項１８】
前記アクセスマスクは、前記サーバへのアクセスが拒否されているあらかじめ決められた一連のユーザを指定する一連の拒否アクセスマスクを備えたことを特徴とする請求項１４に記載のメモリ。
【請求項１９】
前記データ構造は、前記サーバ内に含まれたオブジェクトに対するＡＣＬをさらに備えたことを特徴とする請求項１４に記載のメモリ。
【請求項２０】
前記ＡＣＬは、前記オブジェクトへのアクセスが認められているあらかじめ決められた一連のユーザを指定する一連の許可アクセスマスクを備えたことを特徴とする請求項１９に記載のメモリ。
【発明の詳細な説明】
【背景技術】
【０００１】
本発明は、オブジェクトへのユーザアクセスの管理に関する。
【技術分野】
【０００２】
情報を取り扱う場合、ある承認されたユーザのみが情報の特定部分にアクセスできるように、特定の部分へのアクセスを制限するのが望ましいことが多い。情報が物理的な文書（例えば印刷本または帳票）に含まれる場合、それらの文書を、錠および文書管理者等の物理的なアクセス制御を用いて保護することができる。しかしながら、今日では、膨大な情報量は、デジタルデータ形式で格納される。デジタルデータは、容易に作成、変更、複製、転送、および削除され、無数の場所に存在する膨大なデジタルデータ量の拡散を導く。物理的な文書と同様、デジタルデータの特定部分へのアクセスを制限するのが望ましいことが多い。しかしながら、莫大な量のデジタルデータ、ならびにそれらを容易に作成、複製、転送、変更、および削除できるため、デジタルデータの保護が課題となる。
【０００３】
デジタルデータを、一般的にファイル構造の中に格納することができる。ファイル構造を、デジタルデータを含むオブジェクトをフォルダの中に格納できるデータ記憶の階層システムとすることができる。オブジェクトを、プログラム、プロセス、ファイル、またはイベントにすることができる。オブジェクトは、セキュリティ記述子も有することができる。フォルダをさらに、他のフォルダの中に格納することができる。オブジェクトの中のデジタルデータに、項目ごとの様式を用いてアクセスすることができる。
【０００４】
所与のファイル構造に対して、ＡＣＬ（access control list）をオブジェクトごとに割り当てることができる。ＡＣＬは、コンピュータの各ユーザが所与のオブジェクトに対して有する許可またはアクセス権を、コンピュータのオペレーティングシステムに示すデータ構造である。ＡＣＬにより、特定のユーザまたはユーザのグループが、読み出し、書き込み、または実行の許可等のいくつかの許可を有することを指定することができる。従って、オブジェクトへのアクセスの要求に応じて、それらオブジェクトに対するＡＣＬにアクセスして、それらのオブジェクトに割り当てられた許可を決定することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
システム管理者は、特定のオブジェクトに対するアクセス要求に基づいてＡＣＬにおいて定義された初期設定のセキュリティ許可を変更かることができる。無数のオブジェクトがあることを考慮して、各オブジェクトに対するＡＣＬを見直すプロセスは、高額な費用、および単調なものになり得る。
【０００６】
さらにグループのネスト化により、正当なユーザのみが許可を有することをシステム管理者が保証することは困難である。例えば、ＡＣＬがユーザのグループに対してエントリを含む場合、これらグループの全てのユーザは、グループ内のグループを含み、許可が認められる。従って、システム管理者が、特定のユーザまたはユーザのグループがオブジェクトに対して許可を有しないように保証することは困難となり得る。
【課題を解決するための手段】
【０００７】
ユーザがオブジェクトにアクセスするリクエストを管理するための各種技術の実施をここに説明する。一実施形態では、ポリシーに基づいて、ユーザがオブジェクトへのアクセスを拒否されるまたは認められるかどうかに関しての決定がなされる（ステップａ）。そのポリシーによってユーザが、オブジェクトへのアクセスを拒否されることも認められることもない場合、そのオブジェクトに対するＡＣＬ（access control list）によって、ユーザがそのオブジェクトへのアクセスを認められるかどうかに関しての決定がなされる（ステップｂ）。次にステップ（ａ）および（ｂ）によって決定されたように、ユーザがそのオブジェクトへのアクセスを有するかどうかに関しての結論が下される。
【０００８】
もう一つの実施形態では、ユーザがそのオブジェクトを含むサーバへのアクセスを拒否されるまたは認められるかどうかに関しての決定がなされる。
【０００９】
さらにもう一つの実施形態では、そのサーバは、仮想サーバである。
【００１０】
また別の実施形態では、そのポリシーによってユーザがそのサーバへのアクセスを拒否された場合、たとえＡＣＬによってユーザがそのオブジェクトへのアクセスを認められたとしても、ユーザは、そのオブジェクトへのアクセスを拒否される。
【００１１】
さらにまたべつの実施形態では、そのポリシーによってユーザがそのサーバへのアクセスを認められた場合、たとえＡＣＬによってユーザがそのオブジェクトへのアクセスを認められなかったとしても、ユーザは、そのオブジェクトへのアクセスを認められる。
【００１２】
各種技術の実施では、コンピュータ実行可能命令が格納されているコンピュータ読み取り可能媒体も対象とされ、コンピュータによって実行されるとき、そのコンピュータに、（ａ）オブジェクトを含むサーバに対するポリシーは、そのサーバへのユーザアクセスを拒否するまたは認めるかどうか決定する、（ｂ）そのポリシーがそのサーバへのユーザアクセスを拒否することも認めることもない場合、そのオブジェクトに対するＡＣＬは、ユーザがそのオブジェクトにアクセスするのを認めるかどうか決定する、（ｃ）ステップ（ａ）および（ｂ）に基づいてそのオブジェクトへのユーザアクセスを認めるまたは拒否する、ことを実行させる。
【００１３】
各種技術の実施では、プロセッサで実行されているアプリケーションプログラムによって、アクセス用データを格納するメモリも対象とされる。そのメモリは、メモリの中に格納されたデータ構造を有する。それらのデータ構造は、サーバに対するアクセスマスクを有する。アクセスマスクは、サーバへのアクセスを認めるまたは拒否する１または複数の許可を指定する。
【００１４】
請求された発明の対象は、記載された欠点のいくつかまたはすべてを解決する実施に限定されない。さらに本発明の開示の項は、以下の詳細な説明の項でさらに説明されるものを簡略化した形式で、概念の選択を紹介するために提供される。本発明の開示は、請求された発明の対象の主要な機能または本質的な機能を明らかにするものでなければ、それらを使用して請求された発明の対象の範囲を制限するものでもない。
【発明を実施するための最良の形態】
【００１５】
図１に、本明細に説明された技術を組み込み、および実施できるネットワーク環境１００の説明図を示す。ネットワーク環境１００は、ＣＰＵ（central processing unit）１０、システムメモリ２０、およびシステムメモリ２０をＣＰＵ１０に結合するシステムバス３０を含む従来型デスクトップまたはサーバコンピュータ５を含むことができる。システムメモリ２０は、ＲＡＭ（random access memory）２５およびＲＯＭ（read-only memory）２８を含むことができる。起動時等の、コンピュータ内のコンポーネント間の情報転送に役立つ基本ルーティンを含む基本入出力システムは、ＲＯＭ２８の中に格納することができる。コンピューティングシステム５は、さらに、オペレーティングシステム４５、アプリケーションプログラム、および他のプログラムモジュールを格納する大容量記憶装置４０を含むことができ、以下により詳細に説明する。
【００１６】
本明細書に説明された各種技術の実施は、ＨＴＴＰ（hypertext transfer protocol）サーバ、携帯端末、マルチプロセッサシステム、マイクプロセッサ内蔵型またはプログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ等を含む他のコンピュータのシステム構成で行うことできることを当業者は認識するだろう。本明細書に説明された各種技術の実施を、例えば有線リンク、無線リンク、またはそれらの組み合わせ等を用いた通信ネットワークを介してリンクされるローカルおよびリモート処理装置によってタスクが行われる分散型コンピューティング環境でも行うことができる。分散型コンピューティング環境では、プログラムモジュールを、ローカルおよびリモートメモリ記憶装置の両方に配置できる。
【００１７】
大容量記憶装置４０を、システムバス３０および大容量記憶コントローラ（図示せず）を介してＣＰＵ１０に接続することができる。大容量記憶装置４０およびそれに関連するコンピュータ読み取り可能媒体は、コンピューティングシステム５のための不揮発性記憶装置を提供するために組み込まれる。本明細書に含まれるコンピュータ読み取り可能媒体の説明では、ハードディスクまたはＣＤ−ＲＯＭドライブ等の大容量記憶装置について言及しているが、コンピュータ読み取り可能媒体は、コンピューティングシステム５によってアクセスできる任意の利用可能な媒体になり得ることを当業者によって認識されたい。例えば、コンピュータ読み取り可能媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ読み取り可能命令、データ構造、プログラムモジュール、または他のデータ等の情報の記憶に対する任意の方法または技術を用いて実施される揮発性および不揮発性、ならびに取り外し可能および不可能な媒体を含む。コンピュータ記憶媒体はさらに、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ（erasable programmable read-only memory）、ＥＥＰＲＯＭ（electrically erasable programmable read-only memory）、フラッシュメモリ、または他の固体メモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ（digital versatile disk）、または、他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、もしくは他の磁気記憶装置、または、所望の情報を記憶するために使用できる、およびコンピューティングシステム５によってアクセスできるその他の媒体を含むが、これらに限定されない。
【００１８】
簡単に上述したように、大容量記憶装置４０は、ネットワーク化されたパーソナルコンピュータまたはサーバコンピュータの動作を制御するのに適したオペレーティングシステム４５を含むことができる。オペレーティングシステム４５は、Windows（登録商標）XP、MacOS（登録商標）X、Linux（登録商標）およびＢＳＤ（登録商標）のようなUnix（登録商標）の変形版等になり得る。大容量記憶装置４０はまた、１または複数のＡＣＬ（access control list）４２を含むことができ、ＡＣＬを使用して大容量記憶装置４０の中のオブジェクトに対してユーザが有することができる権利を決定する。図１には１つのＡＣＬのみ示されているが、ＡＣＬ４２は、いくつかのＡＣＬを表すことができ、各ＡＣＬは、そのＡＣＬに関連するオブジェクトに対して１または複数のユーザの権利を認めることができる。オブジェクトを一般的に、項目またはリソースとして言及することができる。オブジェクトを、プログラム、プロセス、ファイル、イベント、またはセキュリティ記述子を有するものにすることもできる。各ＡＣＬは、データ構造、通常は表を含むことができ、所与のオブジェクトに対するユーザまたはグループの権利を指定するＡＣＥ（access control entry）を含む。各ＡＣＥは、ユーザまたはグループ、ならびにそれらのユーザまたはグループによってどの動作が認められるまたは拒否されるか指定するアクセスマスクに対するセキュリティ識別子を含む。アクセスマスクは、ＡＣＬのＡＣＥにおいて認められるまたは拒否される許可を指定する値を含むことができる。
【００１９】
簡単に上述したように、大容量記憶装置４０は、プログラムモジュールを含むことができる。プログラムモジュールは、一般的に、ルーティン、プログラム、コンポーネント、データ構造、および特定のタスクを行うまたは特定の抽象データ型を実施する他の種類の構造を含む。典型的にはプログラムモジュールの機能性を、各種実施で所望されるように組み合わすまたは分配することができる。
【００２０】
一実施形態では、大容量記憶装置４０は、認証モジュール４４および承認モジュール４６を含む。認証モジュール４４は、ユーザの同一性を確認するために組み込まれる。例えば、ユーザを、多数のＳＩＤ（security identifier）によって識別することができる。各ＳＩＤは、ユーザまたはそのユーザが一員である各種グループを識別する可変長のデータ構造になっている。そのように認証モジュール４４は、どのＳＩＤが比較されるかに対する情報を有する認証情報のデータベースにアクセスできる。認証情報のデータベース（図示せず）を、大容量記憶装置４０の中に格納できる。本明細書に説明された各種技術の実施は、例えばユーザの同一性をパスワード、認可証、生体認証等の他の種類の識別子を用いて識別できるようなＳＩＤの使用によって限定されない。認証プロセスは、ユーザのコンピュータシステムであるケルベロス（Kerberos）のクライアントが、ユーザ名およびパスワードを管理者ドメインのケルベロスのサーバに提供するケルベロス認証技術等の標準の認証技術を含む任意の認証技術になり得る。ケルベロスのサーバは、ユーザ名およびパスワードを認証し、ユーザが、要求されたコンピュータシステムに対して認証が許可されたアクセス権を有することを保証する。そうであれば、そのユーザに「チケット」を提供する。そのチケットは、そのユーザが認証されたコンピュータシステムのオブジェクトにアクセスしようとする度に使用される。チケットが認証された場合、オブジェクトへのアクセスを、そのオブジェクトのＡＣＬ、およびそのオブジェクトを含むシステムのポリシーに従って決定および承認することができる。チケットが認証されない場合、アクセスは拒否される。これらの決定および承認プロセスを、以下の段落により詳細に説明する。一実施形態では、ユーザの同一性がいったん承認されると、オブジェクトにアクセスするユーザの権利を、承認モジュール４６によって決定することができ、そのことも以下の段落により詳細に説明する。
【００２１】
認証モジュール４４か承認モジュール４６のどちらか、またはそれらの両方は、一般的に、オンデマンドでロードできる、およびランタイムにリンクできる実行可能コードモジュールとして定義されるＤＬＬ（dynamic link library）等の任意の種類のプログラム可能コードとすることが可能であり、それらのコードがもはや必要でなく、動的共有オブジェクト等のときにアンロードされる。
【００２２】
図１に示すように、コンピューティングシステム５を、インターネット、イントラネット、またはエクストラネット等のネットワーク５０を介してリモートコンピュータへの論理結合を用いてネットワーク環境１００において動作することができる。コンピューティングシステム５を、システムバス３０に接続されたネットワークインタフェースユニット６０を介してネットワーク５０に接続することができる。ネットワークインタフェースユニット６０を用いて、他の種類のネットワークおよびリモートコンピュータシステムにも接続できることを認識されたい。コンピューティングシステム５は、キーボード、マウス、または電子ペン（図示せず）を含む多数の他の装置からの受信および入力処理のための入出力コントローラ７０も含むことができる。入出力コントローラ７０は、ディスプレイスクリーン、プリンタ、または他の種類の出力装置に出力を供給することができる。
【００２３】
一実施形態では、コンピューティングシステム５は、ポリシー（Policy）９０を含む中央構成記憶装置８０に接続される。ポリシー９０は、コンピュータシステム５を通じて適用できる一連のセキュリティ保護を含む。このようにポリシー９０は、一連のＡＣＥを含むことができる。各ＡＣＥは、ユーザまたはグループ、ならびにそれらのユーザまたはグループによるどの動作が認められるまたは拒否されるか指定するアクセスマスクに対するセキュリティ識別子を含むことができる。一実施形態では、それらのポリシーは、コンピュータシステム５にアクセスし得るあらかじめ決められた一連のユーザおよび／またはグループに対する一連の許可アクセスマスクおよび拒否アクセスマスクを含むことができる。そのポリシーにおいて権利が認められることにより、ユーザまたはグループは、そのオブジェクトに対するＡＣＬによって定義された許可にかかわらず、システム５のすべての保護されたオブジェクトに関しての権利を与えられる。同様に、そのポリシーにおいて権利が拒否されることにより、システム５のすべての保護されたオブジェクトに関してのユーザまたはグループの権利は遮断される。マスクの使用を参照して各種技術の実施を説明してきたが、マスクと同様の他の技術を、論理的なユーザの役割を用いた技術等の他の実施において使用できることが認識されるだろう。
【００２４】
一実施形態では、そのポリシーを、例えばＨＴＴＰ（hypertext transfer protocol）サーバ等のサーバに存在する仮想コンピュータとして定義できる仮想サーバを通じて適用できるが、ユーザに対しては別個のサーバとして現われる。いくつかの仮想サーバは、一つのコンピュータに存在でき、各々それ自体のプログラムの実行が可能であり、ならびに入力装置および周辺装置への個別のアクセスを有する。各仮想サーバは、それ自体のドメイン名およびＩＰアドレスを有することができる。各種実施を、コンピュータシステム５、または仮想サーバを参照して本明細書に説明したが、他の実施形態では、サイト収集、特定のサイト、サイトまたは特定の項目もしくは文書内のライブラリに適用できる。承認モジュール４６の機能性を含む本明細書に説明された各種技術の実施は、コンピュータシステム５の任意のレベルの粒度で適用することができる。
【００２５】
ＡＣＬ４２をサイト管理者によって管理できる一方、ポリシー９０を中央管理者によって管理できる。一実施形態では、サイト管理者はポリシー９０にアクセスすることが禁止されている一方、中央管理者はＡＣＬ４２にアクセスすることが禁止される場合がある。従って、本明細書に説明された各種技術の実施は、コンピュータシステム５を通じて中央管理者に、セキュリティポリシーの統一を強化させる方法を提供する。本明細書に説明された各種技術の実施はまた、中央管理者に、システム５へのアクセスの有無を制御する能力を保持しながら、日々のセキュリティ管理をサイト管理者に委任する方法を提供する。
【００２６】
図２に、本明細書に説明された各種技術の実施に従った１または複数のオブジェクトへのアクセスを管理する方法２００のフロー図を示す。ステップ２１０では、認証モジュール４４は、オブジェクトにアクセスするためにユーザからの要求を受信する。それらの要求を受信すると、そのユーザの同一性が認証される（ステップ２２０）。そのユーザの同一性は、パスワード、認可証、生体認証等の使用を含む任意の種類の認証プロセスによって認証できる。一実施形態では、認証モジュール４４は、ユーザに関連したすべてのＳＩＤの見直しおよび認証を行う（ステップ２２０）。いったんユーザのＳＩＤが認証されると、オブジェクトにアクセスするユーザの権利を、承認モジュール４６によって決定することができる。そのユーザの権利は、読み取り、挿入、更新、削除等とは異なる。
【００２７】
ステップ２３０では、任意のユーザのＳＩＤが、要求されたオブジェクトを含むコンピュータシステム５に対するポリシーにおいて指定されるかどうかに関しての決定がなされる。一実施形態では、そのポリシーが、ユーザにコンピュータシステム５にアクセスする権利を提供するかどうかに関しての決定がなされる。他の実施形態では、オブジェクトを含む仮想サーバに対してそれらの決定がなされる。ポリシーが存在しない場合、そのオブジェクトに対するＡＣＬが任意のユーザのＳＩＤに権利を認めるかどうかに関しての決定がなされるステップ２８０へ処理を継続する。
【００２８】
ポリシーが存在する場合、そのポリシーがコンピュータシステム５にアクセスする任意のユーザのＳＩＤの権利を拒否するかどうかに関しての決定がなされるステップ２４０へ処理を継続する。そのポリシーがコンピュータシステム５にアクセスする任意のユーザのＳＤＩの権利を拒否する場合、そのユーザは、要求されたオブジェクトへのアクセスを拒否される（ステップ２５０）。そのポリシーがコンピュータシステム５にアクセスする任意のユーザのＳＤＩの権利を拒否しない場合、そのポリシーがコンピュータシステム５にアクセスする任意のユーザのＳＩＤの権利を認めるかどうかに関しての決定がなされるステップ２６０へ処理を継続する。そのポリシーがコンピュータシステム５にアクセスする任意のユーザのＳＩＤの権利を認める場合、そのユーザは、要求されたオブジェクトへのアクセスが認められる（ステップ２７０）。
【００２９】
一方、ポリシーがそのオブジェクトにアクセスする任意のユーザのＳＤＩの権利を拒否することも認めることもない場合、そのオブジェクトに対するＡＣＬが、そのオブジェクトにアクセスする任意のユーザのＳＤＩの権利を認めるかどうかに関しての決定がなされるステップ２８０へ処理を継続する。ＡＣＬがそのオブジェクトにアクセスする任意のユーザのＳＤＩの権利を認める場合、そのユーザは、要求されたオブジェクトへのアクセスが認められる。しかしながら、ＡＣＥが、任意のユーザのＳＤＩに対するＡＣＬに存在しない場合、そのユーザは、要求されたオブジェクトへのアクセスを拒否される（ステップ２９０）。
【００３０】
これらの方法では、そのポリシーがユーザのコンピュータシステム５にアクセスする権利を拒否する場合、ＡＣＬがユーザにオブジェクトにアクセスする権利を認めるか認めないかにかかわらず、ユーザは、コンピュータシステム５に含まれたオブジェクトにアクセスする権利を拒否される。同様に、そのポリシーがユーザにコンピュータシステム５にアクセスする権利を認める場合、ＡＣＬがユーザにオブジェクトにアクセスする権利を認めるか認めないかにかかわらず、ユーザは、そのオブジェクトにアクセスする権利を認められる。コンピュータシステム５の代用として、本明細書に説明された各種技術の実施はまた、それらのオブジェクトを含む仮想サーバに適用できる。
【００３１】
一実施形態では、ポリシーによって定義されたアクセスマスクはランタイムに、ＡＣＬによって定義されたアクセスマスクと合体して、ユーザに対する効率的な一連の許可をもたらすことができる。図３において、本明細書に説明された技術の各種実施は、オブジェクトを含むシステムに対するポリシーアクセスマスクが、そのオブジェクトに対するユーザアクセスマスク３２０およびグループアクセスマスク３３０と合体することによって、どのように効率的な一連の許可をもたらすことができるかをフロー図３００に示す。フロー図３００の以下の説明は、図２の方法２００を参照して行われる。しかしながら、フロー図３００に示された動作は、方法２００によって行われるものに必ずしも限定されないことを理解されたい。さらに、操作上のフロー図３００は、動作の実行の特定の順番を示す一方、それらの動作は、他の実施において異なる順番で実行され得ることを理解されたい。
【００３２】
ポリシーアクセスマスク３１０は、特定のユーザまたはグループが、オブジェクトに対するある権利を有するかどうか指定する。それらの権利は、READ、INSERT、UPDATE、DELETE、およびETCの権利を含む。ETCの権利は、VIEW ITEM、OPEN ITEM、APPROVE ITEM、DESIGN LISTS、CREATE SUBWEBS、VIEW VERSION HISTORY、DELETE VERSIONS、MANAGE PERMISSIONS等のような他の権利を表すことができる。一実施形態では、ポリシーアクセスマスク３１０は、列Ｇの下のチェックマークによって示された一連の認められている権利、および列Ｄの下のチェックマークによって示された一連の拒否されている権利を指定する。図３に示すように、READの権利は認められたものとして示され、DELETEの権利は拒否されたものとして示され、およびETCの権利は認められたものとして示される。ポリシーアクセスマスク３１０は、INSERTおよびUPDATEの権利に関して何も示さない。
【００３３】
ユーザアクセスマスク３２０は、認められている権利のみ指定する。これらの特定の例では、列Ｇのチェックマークによって示されたように、READの権利およびINSERTの権利のみ認められている。ユーザアクセスマスク３２０のように、グループアクセスマスク３３０は、認められているそれらの権利のみ指定する。これらの特定の例では、列Ｇの下のチェックマークによって示されたように、READの権利、UPDATEの権利、およびDELETEの権利のみ認められている。
【００３４】
ポリシーアクセスマスク３１０はランタイムに、ユーザアクセスマスク３２０およびグループアクセスマスク３３０と合体して、ユーザに対する効率的な一連の許可３４０をもたらす。合体動作の後、効率的な一連の許可３４０は、ポリシーアクセスマスク３１０およびユーザアクセスマスク３２０によって指定されたように、READの権利が認められていることを示す。ユーザアクセスマスク３２０によって指定されたように、INSERTの権利も認められている。グループアクセスマスク３３０によって指定されたように、UPDATEの権利も認められている。しかしDELETEの権利は、たとえグループアクセスマスク３３０によって認められているとしても、ポリシーアクセスマスク３１０によって指定されたように拒否されている。同様にETCの権利は、たとえユーザアクセスマスク３２０にもグループアクセスマスク３３０にもETCの権利へのアクセスが認められないとしても、ポリシーアクセスマスク３１０によって指定されたように認められている。
【００３５】
発明の対象を、構造的機能および／または方法論的作用に特有な言語を用いて説明してきたが、添付の請求において定義された発明の対象は、上述の特有な機能または作用に必ずしも限定されないことを理解されたい。むしろ上述のそれらの特有な機能または作用は、本請求の実施形式の例として開示される。
【図面の簡単な説明】
【００３６】
【図１】本明細書に説明された技術を組み込み、および実施可能なネットワーク環境を示す説明図である。
【図２】本明細書に説明された技術にかかる１または複数のオブジェトへのアクセスを管理する方法を示すフロー図である。
【図３】本明細書に説明された技術の各種実施が、ポリシーアクセスマスクとＡＣＬアクセスマスクを合体させることによって、どのように効率的な一連の許可を作成できるかを示すフロー図である。
【図１】
2009522694.tif 000003
【図２】
2009522694.tif 000004
【図３】
2009522694.tif 000005
【国際調査報告】
2009522694.tif 000006
2009522694.tif 000007