JP2007519076A - コンピューティング環境において使用するためのアイデンティティシステム - Google Patents

コンピューティング環境において使用するためのアイデンティティシステム Download PDF

Info

Publication number
JP2007519076A
JP2007519076A JP2006536582A JP2006536582A JP2007519076A JP 2007519076 A JP2007519076 A JP 2007519076A JP 2006536582 A JP2006536582 A JP 2006536582A JP 2006536582 A JP2006536582 A JP 2006536582A JP 2007519076 A JP2007519076 A JP 2007519076A
Authority
JP
Japan
Prior art keywords
principal
identity
assertion
resource
computing environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006536582A
Other languages
English (en)
Other versions
JP2007519076A5 (ja
JP4660483B2 (ja
Inventor
キャメロン キム
ジェイ.ハシャール ドナルド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2007519076A publication Critical patent/JP2007519076A/ja
Publication of JP2007519076A5 publication Critical patent/JP2007519076A5/ja
Application granted granted Critical
Publication of JP4660483B2 publication Critical patent/JP4660483B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment

Abstract

コンピューティング環境内のプリンシパルを識別するためのシステムが開示される。このシステムは、アイデンティティクレームを含むプリンシパルオブジェクトを含んでいる。このプリンシパルオブジェクトをこの環境内のコンピュータプロセスが使用して活性化されたリソースオブジェクトに対するプリンシパルの関連付けに関係するタスクを実施する。例示のプリンシパルは、個人、個人のグループ、組織、ならびにコンピュータモジュールおよびデバイスを含んでいる。各アイデンティティクレームは、特定のスキーム内の特定のプリンシパルを一意に識別する。これを実現するために、各アイデンティティクレームは、この関連するスキーム内のプリンシパルに特有の識別ストリングを指定するアサーションを含んでいる。個人についての例示のスキームは、電子メールアカウント、電話番号、クレジットカードアカウント番号、およびソーシャルセキュリティ番号を含んでいる。したがって、個人についての例示の識別ストリングは、特定の電子メールアドレス、特定の電話番号などである。個人のグループ、および組織についての例示のスキームは、電話番号およびウェブページアドレスを含んでいる。このシステムはまた、2つのプリンシパルオブジェクトが競合するか否かを判定し、それによってアイデンティティフォールトがもたらされる。

Description

本発明は、結び付けられたシステム内においてエンティティを識別することに関し、より詳細にはコンピューティング環境内におけるプリンシパル(principal)の識別に関する。
インターネットや組織におけるイントラネットなど分散コンピュータネットワークは、例えばデータストレージディスクに対するファイルを節約し、このディスクを他のコンピューティングシステムに対して物理的に配布するなど、以前の方法に比べてずっと高速なペースで他のユーザと情報を交換する能力をユーザに提供する。これらの分散環境内においては、電子メールメカニズム、ファイル共用メカニズム、または他の従来からの情報転送メカニズムを手段として情報を転送することを可能にする通信媒体が、少なくとも2つのコンピュータの間で確立される。分散環境は、確かに情報交換について以前の方法に優る利点を有するが、これらの以前の実施に伴ってもたらされたその同じ欠点の多くが、この分散コンピューティングの世界に持ち越されてしまっている。
かかる1つの問題が、受信側のユーザの、他のユーザから送信された情報を閲覧し操作する能力に関連した認証である。すなわち、情報を受信またはアクセスするユーザが、本当にその情報を受信またはアクセスすることが認証されたユーザであることについてのセキュリティ上の問題がある。別の同様な問題は、その情報を送信しているユーザが本当にそのユーザがそうであると主張しているエンティティであるか否かに関連している。これらの問題は両方とも、1つの基礎となる概念−識別に基づいている。実際に、これらのシステムが1つのスタンドアローンのコンピュータを具現するものか、または分散環境内で相互接続された複数のコンピュータを具現するものであるかにかかわらず、現行のシステムでは、その上に実装されるすべてのリソースによってそのシステム全体にわたって使用することができる識別フレームワークが提供されていない。
本発明が開発されてきたのは、これらおよび他の考察に関連している。
本発明によれば、以上および他の問題は、コンピューティング環境内でプリンシパルを識別するためのアイデンティティシステム(identity system)によって解決される。このアイデンティティシステムは、このコンピューティング環境内でデジタルアクションを実施することが認証された特定のものにそれぞれ対応する複数のプリンシパルオブジェクト(principal object)を使用して実装される。これらの各プリンシパルオブジェクトは、このコンピューティング環境内のコンピュータプロセスが使用してこのプリンシパルオブジェクトに対応するその特定のプリンシパルに少なくとも1つのリソースオブジェクト(resource object)を関連付けるように動作可能である。これらプリンシパルオブジェクトのうちの少なくとも1つは少なくとも2つのアイデンティティクレーム(identity claim)に関連付けられる。このプリンシパルに関連付けられる両方のアイデンティティクレームは、このオブジェクトをこの特定のプリンシパルと別々にまた一意に同じであるものと識別する。
一実施形態によれば、本発明は、このコンピュータ環境内でデジタルアクションを実施することが認証されたプリンシパルを識別する際にこのコンピュータプロセスが使用するためのデータ構造の形で実施される。このデータ構造は、特定の識別スキーム内のプリンシパルを一意に識別するバリューアサーション(value assertion)と、このバリューアサーションに対応する特定の識別スキームを指し示すタイプアサーション(type assertion)とを含めて、様々なアサーションを含んでいる。さらに、このデータ構造は、このプリンシパルが、この特定の識別スキーム内でバリューアサーションによって一意に識別されるタイムフレームを指定するタイムリファレンスアサーション(time reference assertion)を含んでいる。一実施形態においては、このデータ構造は、この上記のパラグラフにおいて要約されたこのアイデンティティシステムのアイデンティティクレームを表現する。
本発明の実施形態によれば、このデータ構造は、コンピュータプログラム製品やコンピュータ読取り可能媒体など製造業者の商品上に符号化される。このコンピュータプログラム製品は、コンピュータシステムによって読み取り可能であり、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化しているコンピュータストレージ媒体でもよい。このコンピュータプログラム製品はまた、コンピュータシステムによって読み取り可能であり、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化している、搬送波上で伝搬される信号であってもよい。
さらに他の実施形態によれば、本発明は、コンピューティング環境内でデジタルアクションを実施することが認証されたプリンシパルを識別するための方法を対象としている。最初に、プリンシパルオブジェクトが、このコンピューティング環境内でコンピュータプロセスが使用してこのプリンシパルが複数のリソースオブジェクトに関連付けられるものとして識別するために作成される。これらのリソースオブジェクトは、このコンピューティング環境内で保持される。次に、このプリンシパルオブジェクトは、特定の識別スキーム内でこのプリンシパルを一意に識別するアイデンティティクレームに関連付けられる。かかる一意の識別は、一意の識別ストリングをプリンシパルのグループに割り当てることによって達成され、ここで、このプリンシパルは、このグループの一部分である。
次いで、この方法は、複数のリソースオブジェクトを受信する工程を含んでいる。これらのリソースオブジェクトは、複数のアプリケーションプログラムに関連するリソースを表す。さらに、これら複数の各リソースオブジェクトは、各リソースオブジェクトをこのプリンシパルオブジェクトにリンクする宣言を含むアイデンティティリファレンス(identity reference)に関連付けられる。次いで、この方法は、この関連するアイデンティティリファレンスに含まれるこれらの宣言リンクに基づいてこれらの受信された各リソースオブジェクトをこのプリンシパルに関連するものとして識別する。次いで、このコンピュータプロセスは、このプリンシパルが、これらの各リソースオブジェクトに関連するものとして識別されることを利用するタスクを実施する。
以上のパラグラフで説明された実施形態による方法は、コンピュータプログラム製品やコンピュータ読取り可能媒体など製造業者の製品上または製品中において符号化される命令に由来するコンピュータプロセスとして一実施形態に従って実装される。このコンピュータプログラム製品は、コンピュータシステムによって読み取り可能であり、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化しているコンピュータストレージ媒体でもよい。このコンピュータプログラム製品はまた、コンピュータシステムによって読み取り可能であり、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化している、搬送波上で伝搬される信号であってもよい。
このようにして、本発明を一般論として説明してきたが、次に添付図面を参照されたい。これらの図面は、必ずしもスケール変更して描く必要はない。
次に、本発明の実施形態が示される添付図面を参照して本発明を以下にさらに十分に説明することにする。しかし、本発明は多くの異なる形態で実施することができ、本明細書中に記述される実施形態に限定されるものと解釈すべきではない。そうではなくて、これらの実施形態は、この開示が十分で完全となるように、当業者に本発明の範囲を十分に伝えるようにするために提供されている。同様な参照番号は、全体にわたって同様な要素を指している。
一般に、本発明は、コンピューティング環境内でプリンシパルを識別することに関する。本発明の代替実施形態によれば、このコンピューティング環境は、1式のスタンドアロンコンピュータシステム、またはインターネットやイントラネットなどの分散コンピュータネットワークを形成するために相互接続された複数のコンピュータシステムのどちらであってもよい。
本明細書中で定義されるように、プリンシパルとは、コンピューティング環境中で何らかのアクションを実施するどのような個人、個人のグループ、またはコンピュータモジュールであってもよい。例示的なプリンシパルには、オペレーティングシステム、オペレーティングシステム上に実装されたコンピュータアプリケーションプログラムおよびプロセス、個人、ならびに人々のグループ(例えば、世帯、会社、組織など)が含まれる。
本明細書中では、リソースは、電子ファイルを構成するような方法で構成される機械読み取り可能な形式のデータとして定義される。例示的なリソースには、制限なしに、ウェブページ、電子ドキュメント(電子メール、ワードプロセッシングドキュメント、スプレッドシート、図面、グラフィックスなど)、サウンドファイル、映画ファイル、またはコンピュータシステムによって読み取り可能なデータの他の任意部分が含まれる。本発明の実施形態を明確に示すために、本明細書中で示し説明する例示のリソースは、ワードプロセッシングドキュメントである。したがって、用語「プリンシパル」および「リソース」についての定義を組み合わせると、コンピューティング環境内のプリンシパルが実施することができるアクションの一例は、ワードプロセッシングドキュメントの作成、アクセス、改訂または削除になるはずである。本発明が同様に他のすべてのリソース形態に適用可能であることが、当業者には理解されよう。
これらの定義および例示の実施形態を考慮して、図1は、本発明の実施形態が実行されるコンピューティング環境100の論理的な図を示すものである。このコンピューティング環境100は、通信ネットワーク150によって相互接続されて「分散」コンピューティング環境を形成する複数のコンピュータシステム142を含んでいる。このコンピュータシステム142は、クライアントマシンまたはサーバマシンのどちらであってもよい。例えば、コンピュータシステム142のうちの少なくとも1台が複数のクライアントマシン間の情報交換を管理するために動作可能なサーバマシンであることが、本発明の実施形態内では企図されている。クライアントマシンはまた、通信ネットワーク150を手段として、このサーバマシンおよび他のクライアントマシン上のファイルにアクセスすることもできる。
この通信ネットワーク150は、当業者に知られているどのようなタイプのネットワークまたはそれに対する等価物でもよいことを理解されたい。一部の例示のネットワークには、制限なしに、インターネット、イントラネット、専用回線ネットワーク、またはコンピュータシステム142の間の直接通信リンクでさえ含まれる。この通信ネットワーク150は、この実施形態が必要とするファンクションに応じて任意数の通信技術を利用することができることを理解されたい。この通信ネットワーク150において使用が企図される特定の技術の実施例には、制限なしに、インターネットに対する地上波接続、セルラ接続、衛星接続、短波接続、およびマイクロ波接続と、モデムまたは他のインターフェースデバイスを使用した設備間の直接接続と、ローカルエリアネットワークやワイドエリアネットワークなど他の通信ネットワークを介した接続とが含まれる。これらまたは他の通信ネットワークの任意の組合せを、本発明の範囲内にとどめながら利用することができる。
本発明によれば、このコンピューティング環境100中でプリンシパルを識別するためのシステムは、この環境100中における少なくとも1つのコンピューティングシステム142上に実装される。命名の目的では、図1に示す様々な構造の集まりの形で実施されるこのシステムは、以降では「アイデンティティシステム」と称される。図示するために、このアイデンティティシステムは、図1に示され、1式のコンピュータシステム142’上で実装されているものとして以下で説明される。しかし、本明細書中で説明するこのアイデンティティシステムは、実際には、この環境100中の他のコンピュータシステム142上で実装される。本発明の一実施形態によれば、このアイデンティティシステムは、すべてのシステム142上で実装される。あるいは、このアイデンティティシステムは、この環境100中のすべてのシステム142よりも少ないシステム上で実装することもできる。
このアイデンティティシステムは、本明細書中で「プリンシパルオブジェクト」110と称されるプリンシパルの電子表現を含んでいる。「プリンシパルオブジェクト」以外のこれらの電子表現を表すために使用することができる他の名前は、「アイデンティティ情報オブジェクト(identity information object)」および「アイデンティティ情報ドキュメント(identity information document)」である。このプリンシパルオブジェクト110は、各オブジェクト110が対応するこのプリンシパルを一意に識別するアイデンティティクレーム134と、このプリンシパルをさらに記述するプロパティデータオブジェクト(property data object)138に関連している。このアイデンティティクレーム134とプロパティデータオブジェクト138の間の違いは、プロパティデータオブジェクト138は、この関連するプリンシパルを一意に識別しないが、その代わりにこのプリンシパルに関連する特徴と他のプロパティを簡単に記述する情報を含んでいることである。
アイデンティティクレーム134は、このクレーム134が関連するプリンシパルオブジェクト110を一意に識別する(本明細書中で「アサーション」と呼んでいる)情報を含むデータ構造の形で実施される。アイデンティティクレーム134を形成するために使用することができる例示のアサーションには、それだけには限定されないが、電子メールアドレス、電話番号(地上通信線およびモバイル)、クレジットカードアカウント番号、ソーシャルセキュリティ番号、運転免許番号などが含まれる。プリンシパルは、複数のアサーション(すなわち、ほとんどの人々が、少なくとも電子メールアドレスおよび電話番号をもつ)を使用して一意に識別することができるので、このアイデンティティシステム中の各プリンシパルオブジェクト110は、複数のアイデンティティクレーム134に関連付けられるように動作可能である。アイデンティティクレーム134からのプロパティデータオブジェクト138の違いを簡単に際立たせるために、個人であるプリンシパルについての例示のプロパティデータオブジェクト138は、その個人の年齢、性別、身長および体重に関連したデータを含んでいる。この情報はどの個人に対しても一意的ではないので、このタイプの情報は、アイデンティティクレーム134のためのアサーションとはなり得ない。
プリンシパルオブジェクト110、アイデンティティクレーム134、およびプロパティデータオブジェクト138のほかに、このアイデンティティシステムは、アイデンティティリファレンス136も含んでいる。アイデンティティリファレンス136は、このコンピューティング環境100中のリソース104を関連するプリンシパルにリンクするアイデンティティクレーム134に対するリファレンスである。例えば、ワードプロセッシングドキュメントに関連付けられることになるプリンシパルの一例は、著者である。ワードプロセッシングドキュメントについての他の例示のアイデンティティリファレンス136は、このドキュメントを閲覧および/または改訂することが認可されたプリンシパルに関連付けられたアイデンティティクレーム134にリンクするリファレンス136のこともある。アイデンティティクレーム134とアイデンティティリファレンス136の間の関係と違いについては、図3〜5に関連して以下でより詳細に説明される。
一実施形態においては、このプリンシパルオブジェクト110、アイデンティティクレーム134、アイデンティティリファレンス136、およびプロパティデータオブジェクト138は、COM(Component Object Modelコンポーネントオブジェクトモデル)に準拠したオブジェクトである。したがって、このコンピューティング環境100中の任意のコンピュータシステム142のプロセスおよび他のオブジェクトは、各オブジェクト110に関連するAPI(application program interfaceアプリケーションプログラムインターフェース)128を手段としてこれらのオブジェクト110と通信可能に対話する。当業者に知られているように、API128は、オブジェクト(例えば、110、134、136および138)のプロパティおよびメソッド(データおよびファンクションメンバ)をコンピューティング環境(例えば、100)内のプロセスおよび他のオブジェクトに対して公開する。
このアイデンティティリファレンス136、アイデンティティクレーム134、およびプロパティデータオブジェクト138は、他のオブジェクトによって囲まれているので、これらの囲まれたオブジェクトはそれぞれ、このコンピューティング環境100内のこの囲んでいるオブジェクト(すなわち、このアイデンティティクレーム134についてのプリンシパルオブジェクト110と、このアイデンティティリファレンス136についてのプロパティデータオブジェクト138およびリソースオブジェクト104)に対してのみ公開され他のオブジェクトに対しては公開されないAPI128を含んでいる。したがって、アイデンティティクレーム134またはプロパティデータオブジェクト138に対してアクセスを要求する、コンピューティング環境100内のオブジェクトまたはプロセスについては、オブジェクトまたはプロセスは、このオブジェクト110についてのAPI128を介して関連するプリンシパルオブジェクト110に対してかかる要求を発行し、これが、次にどちらが要求されたとしても、このアイデンティティクレーム134またはプロパティデータオブジェクト138についてのAPI128を介してこの要求されたデータにアクセスする。
コンピュータシステム142上のプロセスまたはモジュールがこのプリンシパルオブジェクト110を利用し、したがってその上のオブジェクト(例えばアイデンティティクレーム134およびプロパティデータ138)上に含まれるデータを利用するために、これらのオブジェクトは、COMに準拠した他の任意のオブジェクトと同様に、最初にインスタンス化される(instantiated)必要がある。このオブジェクト110を形成するデータがメモリにロードされ、このアイデンティティクレーム134のデータおよびプロパティデータ138、ならびにこのオブジェクト110の任意のファンクションメンバ(すなわち、メソッド)が他のオブジェクトにとって使用可能になる場合に、プリンシパルオブジェクト110は、「インスタンス化されている」と言われる。この専門用語は、プリンシパルオブジェクト110と、このオブジェクト110をインスタンス化するためにメモリに読み込む必要がある生データとを区別する際に有用である。しかし、説明する目的、およびこの明細書の全体にわたって明確にするために、図3〜7に関連して提供される本発明の様々な実施形態の記述では、オブジェクト(例えば、プリンシパルオブジェクト110、アイデンティティクレーム134、アイデンティティリファレンス136、およびプロパティデータオブジェクト138)の生の形式上で実施されるプロセスと、オブジェクトのインスタンス化された形式上で実施されるプロセスとの間で区別が行われない。むしろこれら両方の形式は、単に用語「オブジェクト」の形で実施される。それにもかかわらず、図1では、このコンピュータシステム142’上で、このプリンシパルオブジェクト110を形成するために使用される生データである「プリンシパルデータ(principal data)」をこのデータストア108内部に含め、ならびにアイデンティティクレーム134およびプロパティデータ138を含めることにより、この違いが示されている。
図2は、本発明の実施形態を実装することができる適切なコンピューティングシステム200の一実施例を示すものである。したがって、このシステム200は、この分散コンピューティング環境100中のコンピュータシステム142として機能するように使用することができるシステムを表している。その最も基本的な構成においては、システム200は、少なくとも1つの処理装置202およびメモリ204を含んでいる。コンピューティングデバイスの厳密な構成およびタイプに応じて、メモリ204は、(RAMなどのような)揮発性、(ROMやフラッシュメモリなどのような)不揮発性、またはこれら2つの何らかの組合せでもよい。この最も基本的な構成は、図2に破線206によって示されている。
メモリ204に加えて、このシステム200は、少なくとも1つの他の形式のコンピュータ読取り可能媒体を含むことができる。「コンピュータプログラム製品」とも呼ばれるコンピュータ読取り可能媒体は、このシステム200がアクセスすることができる使用可能な任意の媒体とすることができる。一例として、限定するものではないが、コンピュータ読取り可能媒体は、コンピュータストレージ媒体および通信媒体を含むこともある。
コンピュータストレージ媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、他のデータなどの情報を記憶するための任意の方法または技術の形で実装される揮発性および不揮発性の、着脱可能および固定の媒体を含んでいる。メモリ204、着脱可能なストレージ208、および固定のストレージ210は、すべてコンピュータストレージ媒体の実施例である。コンピュータストレージ媒体には、それだけには限定されないが、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、DVD(デジタル多用途ディスク)または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、あるいは所望の情報を記憶するために使用することができシステム200によってアクセスすることができる他の任意の媒体が含まれる。かかる任意のコンピュータストレージ媒体は、システム200の一部分であってもよい。
例示のコンピューティングシステム200はまた、このシステムが他のデバイスと通信できるようにする1つまたは複数の通信接続212を含むこともできる。この通信接続212は、通信媒体の一実施例である。通信媒体は一般に、搬送波や他の搬送メカニズムなどの変調されたデータ信号の形のコンピュータ読取り可能命令、データ構造、プログラムモジュールまたは他のデータを実施し、任意の情報配信媒体を含んでいる。この用語「変調されたデータ信号」は、その1つまたは複数の特性が、その信号中の情報を符号化するようにして設定または変更された信号を意味する。一例として、限定するものではないが、通信媒体には、有線ネットワークや直接配線接続などの有線媒体と、音響、RF、赤外線、および他の無線媒体などの無線媒体とが含まれる。本明細書中で使用される用語、コンピュータ読取り可能媒体は、ストレージ媒体も通信媒体も含んでいる。
一実施形態によれば、このシステム200は、入力デバイス214および/または出力デバイス216などの周辺デバイスを含んでいる。例示の入力デバイス214には、限定するものではないが、キーボード、コンピュータマウス、ペンまたはスタイラス、音声入力デバイス、触覚入力デバイスなどが含まれる。例示の出力デバイス216には、限定するものではないが、ディスプレイ、スピーカ、およびプリンタが含まれる。これらの「周辺デバイス」は、当技術分野においてよく知られており、したがって、本明細書中では詳細に説明していない。
このコンピューティング環境を考慮して、本発明の実施形態は、本発明の様々な実施形態を実施するプロセスを実装するように実施される論理オペレーションに関して説明されている。これらの論理オペレーションは、(1)コンピューティングシステム上で実行されるコンピュータ実装されたステップまたはプログラムモジュールのシーケンスとして、および/または(2)このコンピューティングシステム内の相互接続されたマシンロジック回路または回路モジュールとして実装される。この実装は、本発明を実装するコンピューティングシステムの性能要件に応じた選択の問題である。したがって、本明細書中で説明される本発明の実施形態を構成する論理オペレーションは、オペレーション、構造デバイス、動作またはモジュールと様々に呼ばれる。これらのオペレーション、構造デバイス、動作およびモジュールは、添付の特許請求の範囲内に記載される本発明の趣旨および範囲を逸脱することなく、ソフトウェアの形、ファームウェアの形、特定目的のデジタルロジックの形、およびこれらの任意の組合せで実装することができることが当業者には理解されよう。
次に図3を参照すると、アイデンティティシステム300内のアイデンティティリファレンス136とアイデンティティクレーム134の間の関係が、本発明の一実施形態に従って論理的に示されている。より詳細には、図3は、複数のアイデンティティリファレンス136a、136bおよび136cの1つのアイデンティティクレーム134aに対するリンク、ならびに1つのアイデンティティリファレンス136dの1つのアイデンティティクレーム134bに対するリンクを示すものである。図3は、アイデンティティリファレンス136とアイデンティティクレーム134の間の関係の高レベルの図であり、任意数のアイデンティティリファレンス136を任意数のアイデンティティクレーム134aおよび134bのいずれかにリンクできることを理解されたい。
一実施形態においては、アイデンティティシステム300を構成するアイデンティティリファレンス136およびアイデンティティクレーム134が、この分散コンピューティング環境内の複数のコンピュータ上で実装される。例示の、アイデンティティリファレンス(例えば、136b)は、第1のコンピュータシステム142上に記憶されるリソースに関連付けることができるのに対して、このリファレンス136bがリンクされる対象のアイデンティティクレーム134aは、第2のコンピュータシステム142上に保持されるプリンシパルオブジェクト110中に含まれている。あるいは、このアイデンティティシステム300を構成するアイデンティティリファレンス136およびアイデンティティクレーム134は、1つのスタンドアロンコンピュータシステム142上に記憶される。アイデンティティリファレンス136とアイデンティティクレーム134の間のリンクの確立については、図4および5に関連して詳細に説明しており、したがって図3を説明する間には反復はしていない。その代わりに、これらのオブジェクトの間の論理的な関係についてだけ説明する。
この1つのアイデンティティクレーム134aにリンクされる各アイデンティティリファレンス136a、136bおよび136cは、異なるリソースに関連付けられる。例えば、アイデンティティリファレンス136aは、ワードプロセッシングドキュメントに関連付けることができ、アイデンティティリファレンス136bは、スプレッドシートドキュメントに関連付けることができ、アイデンティティリファレンス136cは、電子メールドキュメントに関連付けることができる。これらの各アイデンティティリファレンス(136a、136bおよび136c)は、同じアイデンティティクレーム134aにリンクされ、したがってこのアイデンティティクレーム134aに対応するプリンシパルに関連するものとしてこれらの各リソースを識別する。このプリンシパルは、例えば、これらの各ドキュメントを執筆した個人とすることができる。別の例示のプリンシパルとしては、この執筆する個人を雇用している組織でもよい。同様に、このアイデンティティリファレンス136dは、このリファレンス136dが関連するリソースをこのアイデンティティクレーム134bに対してリンクする。したがって、このリソースは、このクレーム134bに対応するプリンシパルに関連するものとしてこのアイデンティティシステム300によって識別される。
次に図4および5を参照すると、アイデンティティクレーム134およびアイデンティティリファレンス136についての例示のデータ構造が、それぞれ本発明の一実施形態に従って示されている。一実施形態によれば、これらの各データ構造は、XML(Extensible Markup Language拡張マークアップ言語)ベースのソフトウェアモジュールであるが、他のプログラミング言語を使用してこれらのデータ構造を作成することもでき、これらの他の言語も、本発明の範囲内に含まれるものと企図されている。具体的に図4を参照すると、このアイデンティティクレーム134は、1つのプリンシパルを一括して一意に識別する様々なアサーション402〜414を含んでいる。前述のように、このプリンシパルは、コンピュータエンティティまたはデバイス、コンピュータエンティティまたはデバイスのグループ、個人、あるいは個人のグループのこともある。しかし、本発明の実施形態について例示するために、このアイデンティティクレーム134は、以下では1人の個人を識別するものとして説明される。
このアイデンティティクレーム134についてのデータ構造は、アイデンティティクレーム134であるものとしてその構造を識別するタイプ宣言400を含んでいる。したがって、このタイプ宣言400は、「IdentityClaim」というフレーズで表現される。このデータ構造は、タイプアサーション402およびバリューアサーション404をさらに含んでいる。オプションとしてのアサーションは、ディスプレイアサーション406、ウェブサイトアサーション408、開始タイムフレームアサーション410、終了タイムフレームアサーション412、および署名アサーション414を含んでいる。
このタイプアサーション402は、このアイデンティティクレーム134に関連付けられることになる一意の識別子のタイプを示している。例示のタイプアサーション402には、制限なしに、以下のもの、すなわちその一意の識別子が電話番号であることを示す「tel」または「fax」と、その一意の識別子が電子メールアドレスであることを示す「mailto」と、その一意の識別子がウェブアドレスであることを示す「http」と、その一意の識別子がセキュリティ識別子であることを示す「sid」と、その一意の識別子がソーシャルセキュリティ番号であることを示す「ssn」と、その一意の識別子がクレジットカードアカウント番号であることを示す「cc#」が含まれる。他の多くのタイプの一意のアサーションが、本発明の範囲内に含まれるものと企図されるが、前記文章中にはリストアップされていない。実際に、アサーションが、1つの、しかもたった1つのプリンシパルに特有の値を指定するタイプのものである限りは、このアサーションは、タイプアサーション402として機能するように動作可能である。
このバリューアサーション404は、タイプアサーション402に基づいており、このプリンシパルを一意に識別するキャラクタシーケンス(アルファニューメリックおよび/またはシンボル)を示す。例示のバリューアサーション404には、制限なしに、以下のもの、すなわち電話番号(例えば、0018004568494)、電子メールアドレス(例えば、tempuser@sampleserver.com)、ウェブアドレス(例えば、www.tempcomany.com)、ソーシャルセキュリティ番号(例えば、427894478)、およびクレジットカードアカウント番号(例えば、4417354398478474)が含まれる。プリンシパルのアイデンティティは、バリューアサーション406に結び付けられる。バリューアサーション406は、個人またはデバイスを、あるいはその代わりに個人またはデバイスのグループを識別できることを理解されたい。例えば、電話番号は、個人、世帯、または会社を識別することができる。この電話番号が世帯または会社に属する場合、この識別されたプリンシパルは、グループを識別するのに対して、この電話番号が個人に属する場合には、この識別されたプリンシパルは、個人となる。
ある種のタイプアサーション402は、異なるタイムフレーム中に関連するバリューアサーション404が異なるプリンシパルを一意に識別できるというタイプのものであるので、アイデンティティクレーム134についてのデータ構造は、開始タイムフレームアサーション410および終了タイムフレームアサーション412をオプションとして含んでいる。例えば、これらのアサーション410および412は、これらのタイプが時間と共に変化する一意の識別子タイプを示すので、このタイプアサーションが「tel」、「fax」、または「mailto」というタイプのものであるときに使用される。
この開始タイムフレームアサーション410は、バリューアサーション404が、一意に識別するプリンシパルに関連付けられるようになる日付を指定する。この終了タイムフレームアサーション412は、この関連付けが終了された日付を指定する。例えば、1タイムフレームにおいて、某氏(John Doe)は、電話番号0018004763849によって一意に識別されることがあるのに対して、別のタイムフレームにおいては、代わりにJane Doeがこの電話番号によって一意に識別されることもある。この開始タイムフレームアサーション410および終了タイムフレームアサーション412は、これらの各タイムフレームについての開始日付および終了日付を指定し、それによってJohn DoeおよびJane Doeに対するこれらのアイデンティティクレーム134の一意の識別が完了される。終了タイムフレームアサーション412は提供されていないが開始タイムフレームアサーション412が提供されている場合には、このバリューアサーション404とそのプリンシパルの間の関連付けは、依然として継続していることを理解されたい。
別のオプションとしてのアサーションは、ディスプレイアサーション406である。このディスプレイアサーション406は、バリューアサーション404に基づいた、また人間にとって認識可能な形式のアルファニューメリックキャラクタのストリングである。例えば、このディスプレイアサーション406は、バリューアサーション404が電子メールアドレスである場合にこの個人の電子メールアドレスに関連して表示される個人の名前とすることができる。さらに別のオプションとしてのアサーションは、ウェブサイトアサーション408であり、これは、プリンシパルに関連したさらなる情報を見出すことができるウェブアドレスを示す。別のオプションとしてのアサーションは、署名アサーション414であり、これはプリンシパルの署名のデジタル表現を示す。
前述の各アサーションは、これらオプションとしてのアサーションを含めて、このアイデンティティクレーム134を特定のプリンシパルに一意にリンクするために使用される。このようなものが、アイデンティティクレーム134の意図である。他方、アイデンティティリファレンス136は、リソース(例えば、電子ドキュメント)をプリンシパルに関連付ける際に使用するためのものである。以上で指摘したように、これは、アイデンティティリファレンス136内の特定のアイデンティティクレーム134を参照することによって実現される。次に図5を参照すると、アイデンティティリファレンス136内で行われる宣言を示すデータ構造が、本発明の一実施形態に従って示されている。このアイデンティティリファレンス136についてのデータ構造は、アイデンティティリファレンス136であるものとしてこの構造を識別するタイプ宣言500を含んでいる。したがって、このタイプ宣言500は、「IdentityReference」というフレーズで表される。
特定のアイデンティティクレーム134を指定するために、このアイデンティティリファレンス136は、参照されているアイデンティティクレーム134に対応するタイプアサーション502およびバリューアサーション504を含んでいる。したがって、このリソースの開発業者は、このリソースの開発中に適切なアイデンティティクレーム134に対するリファレンスを確立する。リファレンス日付宣言506は、このアイデンティティリファレンス136についてのその構造内にも含まれ、このアイデンティティリファレンス136に関連するリソースが、該当するアイデンティティクレーム134に有効にリンクされる日付を指し示す。
コンピュータシステム142のオペレーティングシステムが、アイデンティティリファレンス136が関連付けられるリソースを活性化するときに、このオペレーティングシステムは、このアイデンティティリファレンス136をインスタンス化してこの適切なプリンシパルオブジェクト110のメソッドをインスタンス化し呼び出すように指示される。この適切なプリンシパルオブジェクト110は、どのアイデンティティクレーム134がこのアイデンティティリファレンス136によって参照されるかに基づいて決定される。この適切なプリンシパルオブジェクト110、したがってこの対応するアイデンティティクレーム134が、インスタンス化された後に、このリソースオブジェクト104上のメソッドは、このプリンシパルオブジェクト110に対応するこのプリンシパルにそのリソースを関連付ける、このプリンシパルオブジェクト110上のメソッドを呼び出す。次いで、このオペレーティングシステムは、このプリンシパルオブジェクト110に対するリソースの識別を利用する、このリソース上のタスクを実施する。例示のタスクには、制限なしに、このリソースを閲覧および/または改訂するための認可、このリソースに関連したプリンシパルの特徴およびプロパティの表示、ならびにこのリソースを介して通信媒体をこのプリンシパルに提供することが含まれる。
次に図6を参照すると、リソースとプリンシパルオブジェクト110の間の関連付けを確立するためのプロセス(以下では、「確立プロセス」)600が、本発明の一実施形態に従って示されている。この確立プロセス600は、開始オペレーション602で開始され、終了オペレーション618で終了されるオペレーションのフロー(「オペレーションフロー」)を使用して実施される。この開始オペレーション602は、リソースがコンピュータシステム142上のある方法でアクセスされているときに開始される。開始オペレーション602から、このオペレーションフローは、確立プロセス600中へとこのアクセスされたリソースを受信し、このリソースに関連するアイデンティティリファレンス136を位置決めする受信オペレーション604へと進む。この用語「受信する」は、一般的な意味で使用されて、このコンピュータシステム142のオペレーティングシステムによるこのリソースのアクセスを意味することを理解されたい。したがって、リソースの受信は、別のコンピュータシステム142からそのリソースの受信だけでなく、このリソースにアクセスするコンピュータシステム142にローカルなストレージからのこのリソースの受信も包含している。実際に、後者の場合には、このコンピュータシステム142のユーザは、このリソースが活性化されるように要求している。この受信オペレーション604から、このオペレーションフローは、第1のクエリオペレーション606へと進む。
この第1のクエリオペレーション606は、この活性化されたリソースに、この見出されたアイデンティティリファレンス136にマッピングするアイデンティティクレーム134を含むプリンシパルオブジェクト110が付随するか否かを検出する。付随する場合には、このプリンシパルオブジェクト110は、このリソースに対して「ピギーバックされる(piggy−backed)」と言われ、このオペレーションフローは、セーブオペレーション607へと進む。この場合には、このアイデンティティリファレンス136とその関連するアイデンティティクレーム134との間のリンクは、この関連するアイデンティティクレーム134を有するプリンシパルオブジェクト110に対応するプリンシパルで識別されるものとしてこのリソースを関連付ける。この識別関連付けをこのオペレーティングシステムが使用してある種の識別に関連したタスクが実施される。さらにこのセーブオペレーション607は、このアイデンティティクレーム134にリンクするこのアイデンティティリファレンス136と他のアイデンティティリファレンス136との間のリンクを実装する際に将来的に使用するためにこのプリンシパルオブジェクト110をこのデータストア108に保存する。このセーブオペレーション607から、このオペレーションフローは、その終了オペレーション618で終了する。
他方、この第1のクエリオペレーション606がこの受信されたリソースにピギーバックされたプリンシパルオブジェクト110を検出しない場合、このオペレーションフローは、アクセスデータストアオペレーション608へと渡される。このアクセスデータストアオペレーション608は、この位置が見出されたアイデンティティリファレンス136において指定されるタイプアサーション402およびバリューアサーション404を使用して、関連するアイデンティティクレーム134を含むプリンシパルオブジェクト110がすでにデータストア108に記憶されているか否かを調べる。このアクセスデータストアオペレーション608から、このオペレーションフローは、第2のクエリオペレーション610へと進む。
この第2のクエリオペレーション610は、このアクセスデータストアオペレーション608が、この位置が突き止められたアイデンティティリファレンス136において指定されたこのタイプアサーション502およびバリューアサーション504を有するアイデンティティクレーム134を含むプリンシパルオブジェクト110を見出したか否かを照会する。見出した場合には、このオペレーションフローは、リンクオペレーション612へと進む。このリンクオペレーション612は、このアイデンティティリファレンス136をそれに関連するアイデンティティクレーム134に対してリンクし、それによってこのオペレーティングシステムがこのリソース上の識別に関連したタスクを実施できるように、このプリンシパルオブジェクト110に対応するプリンシパルにこのリソースが関連付けられる。
他方、この第2のクエリオペレーション610が、この位置が突き止められたアイデンティティリファレンス136において指定されたタイプアサーション502およびバリューアサーション504を有するアイデンティティクレーム134を含むプリンシパルオブジェクト110の位置を突き止められない場合には、このオペレーションフローは、作成ファントムオブジェクトオペレーション614へと進む。このアイデンティティシステムにおいて現在、アイデンティティリファレンス136がリンクすることができるアイデンティティクレーム134がないので、この作成ファントムオブジェクトオペレーション614は、ファントムプリンシパルオブジェクトを作成する。このアイデンティティシステムがこの全体の分散コンピューティング環境100に及ぶ一実施形態においては、このデータストア108は、この環境100中のすべてのコンピュータシステム142に対して動作可能である。したがって、特定のアイデンティティリファレンス136に関連するアイデンティティクレーム134の位置を突き止めることに失敗することは、このクレーム134がこの分散環境100の一部分を形成しないシステム上で保持されることを意味する。このファントムプリンシパルオブジェクトは、このアイデンティティリファレンス136において指定されるタイプアサーション502およびバリューアサーション504を有するアイデンティティクレーム134を含むように構築される。作成された後に、このオペレーションフローは、第2のセーブオペレーション616へと進む。
この第2のセーブオペレーション616は、まずこのアイデンティティリファレンス136をファントムプリンシパルオブジェクトにリンクし、それによってこのオペレーティングシステムがこのリソース上で識別に関連したタスクを実施することができるようにファントムプリンシパルオブジェクトに対応するプリンシパルにこのリソースが関連付けられる。このファントムプリンシパルオブジェクトが記憶されるデータストア108は、この分散コンピューティング環境内の他のコンピュータシステム142によってリモートにアクセスすることができることを理解されたい。したがって、この第2のクエリオペレーション610をさらに反復することにより、このデータストア108に対するリモート接続上でこのファントムプリンシパルオブジェクトの位置を突き止め、検索することができる。あるいは、この環境がスタンドアロンコンピュータシステムである場合には、このファントムプリンシパルオブジェクトは、ローカルストレージから位置を突き止められ検索される。
次に、このオブジェクトが、このファントムオブジェクトに関連するものとしてこのリソースおよび他のリソースを識別するために将来において使用できるように、この第2のセーブオペレーション616は、このファントムプリンシパルオブジェクトをこのデータストア108に保存する。また、このファントムオブジェクト中に含まれる情報に補足しまたは追加するより多くの情報が受信される場合、この情報をこのファントムオブジェクト中にマージしてその後により完全なプリンシパルオブジェクトを構築することができる。あるいは、この新しい情報がプリンシパルオブジェクト110を実施する場合には、このファントムオブジェクトは、この新しい情報で置き換えられる。この第2のセーブオペレーション616から、このオペレーションフローは、終了オペレーション618で終了する。
図7は、受信したプリンシパルオブジェクト110が、この新しいプリンシパルオブジェクト110が受信される時刻にこのデータストア108に記憶される別のプリンシパルオブジェクト110と競合するか否かを検出するプロセス700を示している。かかる競合は、本明細書中では、「フォールト(fault)」と呼ばれ、受信されたプリンシパルオブジェクト110が、このデータストア108にすでに記憶されているプリンシパルオブジェクト110中に含まれるアイデンティティクレーム134中で指定されるアサーションと同一のアサーションを指定するアイデンティティクレーム134を含んでいる状況を意味する。この「検出」プロセス700は、開始オペレーション700を用いて開始され終了オペレーション720を用いて終了されるオペレーションフローを使用して実施される。
開始オペレーション702は、コンピューティング環境100において受信されるプリンシパルオブジェクト110に応答して開始される。この開始オペレーション702からこのオペレーションフローは、受信オペレーション704へと進み、この受信オペレーションは、このプリンシパルオブジェクトをこの検出プロセス700中へと受信する。このプリンシパルオブジェクト110は、少なくとも1つのアイデンティティクレーム134を含んでおり、オプションとしてプロパティデータオブジェクト(群)138を含んでいる。この検出プロセス700を簡単に説明するために、この受信されたプリンシパルオブジェクト110は、1つのアイデンティティクレーム134しか有さないものとして説明される。このプリンシパルオブジェクト110が複数のアイデンティティクレーム134を含むこともできることを理解されたい。複数のアイデンティティクレーム134がこの受信したプリンシパルオブジェクト110に付随する状況においては、このアクセスオペレーション706およびこのフォールトオペレーション708(共に以下で説明される)が、これら複数の各アイデンティティクレーム134について実施すべきであることを理解されたい。
図6の流れ図と同様に、用語「受信する」は、一般的な意味で使用されていて、このコンピュータシステム142のオペレーティングシステムによる任意のプリンシパルオブジェクトの受信を意味する。プリンシパルオブジェクト110の受信をもたらす例示のプロセスには、それだけには限定されないが、ユーザによるプリンシパルオブジェクト110の入力と、コンピュータシステム142間の通信ネットワーク150を横切るプリンシパルオブジェクト110の伝送とが含まれる。例えば、このプリンシパルオブジェクト110は、送信コンピュータシステム142から受信コンピュータシステム142へと送信されるリソースにピギーバックされていてもよい。このプリンシパルオブジェクト110が検出プロセス704へと受信された後に、このオペレーションフローは、アクセスオペレーション706へと進む。
このアクセスオペレーション706は、アイデンティティクレーム134中で指定されるタイプアサーション402およびバリューアサーション404を使用してアイデンティティクレーム134を含むプリンシパルオブジェクト110がすでにデータストア108に記憶されているか否かを調べる。アクセスオペレーション706から、このオペレーションフローは、第1のクエリオペレーション708へと進む。この第1のクエリオペレーション708は、このアクセスオペレーション706が、このアクセスオペレーション706により使用されてこのデータストア108中のルックアップを実施するこのアイデンティティクレーム134を含むプリンシパルオブジェクト110を見出したか否かを照会する。一実施形態においては、この検査は、タイプアサーション402およびバリューアサーション404に基づいて、またオプションとして、この受信されたプリンシパルオブジェクト110のアイデンティティクレーム134中で指定されるタイムフレームアサーション410および412に基づいて実施される。あるいは、他のアサーション(すなわち、署名アサーション414またはウェブページアサーション408)をこの検査において使用することができる。この評価されたアサーションを有するプリンシパルオブジェクト110がデータストア108中で見出されない場合には、フォールトは存在せず、このオペレーションフローは、セーブオペレーション710へと進む。このセーブオペレーション710は、このプリンシパルオブジェクトに含まれるアイデンティティクレーム134にリンクするアイデンティティリファレンス136に関連するリソースを識別する際に将来使用するためにこの受信されたプリンシパルオブジェクト110をこのデータストア108に保存する。このセーブオペレーション710から、このオペレーションフローは、終了オペレーション720で終了する。
この第1のクエリオペレーション708がこのアクセスオペレーション708によって評価されるものと同じアサーションを指定するアイデンティティクレーム134を含むプリンシパルオブジェクト110を見出す場合には、アイデンティティフォールトが検出され、このオペレーションフローは、第2のクエリオペレーション712へと進む。フォールトがこのアイデンティティシステム上で作成され得る多数の方法がある。かかる1つの方法は、ユーザが、このアイデンティティシステム上にすでに存在しているプリンシパルオブジェクト110を追加しようとするか否かである。フォールトが作成され得る第2の方法は、2つ以上のシステムがこの同じプリンシパルに対応するプリンシパルオブジェクトを含むときであり、個人またはアプリケーションがこれらのオブジェクトをこの分散環境100へと伝送するので、これらのオブジェクトは、最終的にこの同じアイデンティティシステム上にロードされてしまう。かかる第3の方法は、攻撃者が偽オブジェクトをこのアイデンティティシステム中に注入しようとするか否かである。
この第2のクエリオペレーション712は、このフォールトとなるプリンシパルオブジェクト110、すなわちこのデータストア108中で見出されたものを検査してこのオブジェクト110が、図6のこの確立プロセス600によって作成されるファントムオブジェクトなどのファントムオブジェクトであるか否かを判定する。このオブジェクトがファントムオブジェクトである場合、このオペレーションフローは、削除オペレーション714へと進む。この削除オペレーション714は、この受信されたプリンシパルオブジェクト110をこのセーブオペレーション710によってそのデータストアに保存できるようにしてこのファントムオブジェクトを削除する。したがって、この削除オペレーション714からこのオペレーションフローは、このセーブオペレーション710へと進み、以前に説明したように続行される。
他方、このフォールトとなるプリンシパルオブジェクト110がファントムオブジェクトでない場合には、このオペレーションフローは、マージオペレーション716へと進む。このマージオペレーション716は、この受信したプリンシパルオブジェクト110に関連するすべてのデータをこのフォールトとなるプリンシパルオブジェクト110中にマージする。例えば、この受信したプリンシパルオブジェクト110がディスプレイアサーション406を含んでいるが、このフォールトとなるプリンシパルオブジェクト110は含んでいない場合、このディスプレイアサーション406はこのフォールトとなるオブジェクト110中にコピーされる。同様に、このフォールトとなるオブジェクト110内に含まれない受信するプリンシパルオブジェクト110のプロパティデータオブジェクト138中に含まれるデータは、このフォールトとなるオブジェクト中にコピーされる。何らかの理由で、ある種のアサーションまたはデータのフィールドが、競合し、同じデータを指定しない(すなわち、受信されたオブジェクト110のディスプレイアサーション406についてのディスプレイストリングが、フォールトとなるオブジェクト110のディスプレイアサーション406とは異なる)場合には、このフォールトは、ユーザまたはコンピュータアプリケーションがこのフォールトとなるプリンシパルオブジェクト110内に含まれるべきこの2つの選択肢のうちの1つを選択するプロセスを使用して解決される。このマージオペレーション716から、このオペレーションフローはセーブオペレーション718へと進む。
このセーブオペレーション718は、この更新済みのプリンシパルオブジェクト中に含まれるアイデンティティクレーム134にリンクするアイデンティティリファレンス136に関連するリソースを識別する際に将来使用するためにこの更新済みのプリンシパルオブジェクト110をデータストア108に保存する。このセーブオペレーション718から、このオペレーションフローは、この終了オペレーション720において終了する。
以上で説明した様々な実施形態は、例示の手段としてのみ提供され、本発明を限定するものと解釈すべきではない。本明細書中で例示され説明される例示の実施形態および用途に従うことなく、また添付の特許請求の範囲に記載の本発明の真の趣旨および範囲を逸脱することなく本発明に対して行うことができる様々な修正形態および変更形態が当業者には簡単に理解されよう。
本発明によるアイデンティティシステムが、一実施形態に従って実行される例示の環境を示す図である。 本発明の特定の態様に従って使用することができるコンピュータシステムを示す図である。 図1に示すアイデンティティシステムのアイデンティティクレームとアイデンティティリファレンスの間の関係する態様を論理的に示すブロック図である。 本発明の一実施形態による、アイデンティティクレームを実施するデータ構造についてコードリストの例示の一部分を示す図である。 本発明の一実施形態による、アイデンティティリファレンスを実施するデータ構造についてコードリストの例示の一部分を示す図である。 本発明の一実施形態による、図1のコンピューティング環境内のリソースと、このアイデンティティシステム内のプリンシパルとの間の関連を識別するためのプロセスについての操作の特徴を示す流れ図である。 本発明の一実施形態による、図1のアイデンティティシステム内のアイデンティティクレーム間の競合を検出するためのプロセスを示す図である。

Claims (38)

  1. コンピューティング環境内のプリンシパルを識別するためのシステムであって、
    複数のプリンシパルオブジェクトであって、各プリンシパルオブジェクトは、前記コンピューティング環境内でデジタルアクションを実施することが認証された特定のプリンシパルに対応しており、各プリンシパルオブジェクトは、前記コンピューティング環境内のコンピュータプロセスが使用するために動作可能になっていて前記プリンシパルオブジェクトに対応する前記特定のプリンシパルに複数のリソースオブジェクトを関連付けるプリンシパルオブジェクトと、
    複数のアイデンティティクレームであって、各アイデンティティクレームは、各特定のプリンシパルオブジェクトに対応する前記特定のプリンシパルを一意に識別し、前記複数のプリンシパルオブジェクトの少なくとも1つは、前記少なくとも1つのプリンシパルオブジェクトに対応する前記特定のプリンシパルをそれぞれ一意に識別する2つまたは3つ以上のアイデンティティクレームを含む複数のアイデンティティクレームと
    を備えることを特徴とするシステム。
  2. 複数のアイデンティティリファレンスをさらに備え、前記複数の各アイデンティティリファレンスは、前記コンピューティング環境内のリソースオブジェクトに関連付けられ、前記複数の各アイデンティティリファレンスは、特定のアイデンティティクレームに対する前記アイデンティティリファレンス内のリンクアサーションに基づいて特定のプリンシパルに関連付けられるものとして前記関連するリソースオブジェクトを識別することを特徴とする請求項1に記載のシステム。
  3. 前記複数の各アイデンティティクレームは、前記各アイデンティティクレームが関連付けられる前記プリンシパルオブジェクトに対応する前記特定のプリンシパルを一括して識別するタイプアサーションおよびバリューアサーションを含むことを特徴とする請求項2に記載のシステム。
  4. 前記複数の各アイデンティティリファレンス内の前記リンクアサーションは、各アイデンティティリファレンスがリンクされる前記特定のアイデンティティクレームにおいて指定される前記タイプアサーションおよび前記バリューアサーションを含むことを特徴とする請求項3に記載のシステム。
  5. 第1のプリンシパルオブジェクトに関連付けられる第1のアイデンティティクレームについての第1のタイプアサーションは、前記第1のアイデンティティクレーム中の前記バリューアサーションが前記第1のプリンシパルオブジェクトに対応する第1のプリンシパルに一意に関連付けられる電子メールアドレスを含むことを示すことを特徴とする請求項4に記載のシステム。
  6. 前記第1のアイデンティティクレームは、前記電子メールアドレスが前記第1のプリンシパルに最初に関連付けられた時点を示す開始タイムリファレンスアサーションをさらに含むことを特徴とする請求項5に記載のシステム。
  7. 前記第1のアイデンティティクレームは、前記電子メールアドレスと前記第1のプリンシパルとの間の関連付けが消滅する時点を示す終了タイムリファレンスアサーションをさらに含むことを特徴とする請求項6に記載のシステム。
  8. 前記第1のプリンシパルオブジェクトに関連する第2のアイデンティティクレームについての第2のタイプアサーションは、前記第2のアイデンティティクレーム中の前記バリューアサーションが前記第1のプリンシパルに一意に関連付けられた電話番号を含むことを示すことを特徴とする請求項4に記載のシステム。
  9. 前記コンピューティング環境は、分散コンピューティングシステムであり、少なくとも1つのアイデンティティリファレンスは、前記アイデンティティリファレンスにリンクされた前記アイデンティティクレームが保持されるコンピュータシステムとは異なるコンピュータシステム上に保持されることを特徴とする請求項2に記載のシステム。
  10. コンピューティング環境内の第1のプリンシパルを識別するためのシステムであって、前記第1のプリンシパルは、前記コンピューティング環境内でデジタルアクションを実施することが認証されており、前記システムは、
    前記第1のプリンシパルに対応する第1のプリンシパルオブジェクトであって、前記第1のプリンシパルオブジェクトは、前記コンピューティング環境内のコンピュータプロセスが使用するために動作可能になっていて少なくとも1つのリソースオブジェクトを前記第1のプリンシパルに関連付けるプリンシパルオブジェクトと、
    各アイデンティティクレームが前記第1のプリンシパルを一意に識別する複数のアイデンティティクレームとを備え、前記第1のプリンシパルオブジェクトは、前記コンピュータプロセスが前記複数の任意のアイデンティティクレームを使用して前記少なくとも1つのリソースオブジェクトを前記第1のプリンシパルに関連付けることができるように複数のアイデンティティクレームを含むことを特徴とするシステム。
  11. 前記コンピューティング環境内の第1のリソースオブジェクトに関連付けられる第1のアイデンティティリファレンスをさらに備え、前記第1のアイデンティティリファレンスは、前記複数のアイデンティティクレーム中の第1のアイデンティティクレームに対する前記第1のアイデンティティリファレンス内の第1のリンクアサーションに基づいて前記第1のプリンシパルに関連するものとして前記第1のリソースオブジェクトを識別することを特徴とする請求項10に記載のシステム。
  12. 前記コンピューティング環境内の第2のリソースオブジェクトに関連する第2のアイデンティティリファレンスをさらに備え、前記第2のアイデンティティリファレンスは、前記第1のアイデンティティクレームに対する前記第2のアイデンティティリファレンス内の第2のリンクアサーションに基づいて前記第1のプリンシパルに関連するものとして前記第2のリソースオブジェクトを識別することを特徴とする請求項11に記載のシステム。
  13. 前記第1のリソースオブジェクトは、第1のアプリケーションプログラムに関連するファイルを表し、前記第2のリソースオブジェクトは、第2のアプリケーションプログラムに関連するファイルを表すことを特徴とする請求項12に記載のシステム。
  14. 前記第1のアプリケーションプログラムは、ワードプロセッシングアプリケーションプログラムであることを特徴とする請求項13に記載のシステム。
  15. 前記複数の各アイデンティティクレームは、前記第1のプリンシパルを一括して指定するタイプアサーションおよびバリューアサーションを含み、前記第1および第2のリンクアサーションは、前記第1および前記第2のアイデンティティリファレンスがリンクされる前記アイデンティティクレーム中で指定される前記タイプアサーションおよび前記バリューアサーションを含むことを特徴とする請求項12に記載のシステム。
  16. 前記第1のアイデンティティクレームについての第1のタイプアサーションは、前記第1のアイデンティティクレーム中の前記バリューアサーションが前記第1のプリンシパルに一意に関連付けられる電子メールアドレスを含むことを示すことを特徴とする請求項15に記載のシステム。
  17. 前記第1のアイデンティティクレームは、
    前記電子メールアドレスが前記第1のプリンシパルに最初に関連付けられた時点を示す開始タイムリファレンスアサーションと、
    前記電子メールアドレスと前記第1のプリンシパルとの間の関連付けが消滅する時点を示す終了タイムリファレンスアサーションと
    をさらに含むことを特徴とする請求項16に記載のシステム。
  18. 前記第1のプリンシパルは、前記コンピューティング環境内の個人、組織、およびモジュールからなる群から選択されることを特徴とする請求項10に記載のシステム。
  19. 前記コンピューティング環境は、分散コンピューティングシステムであることを特徴とする請求項10に記載のシステム。
  20. 前記コンピューティング環境は、スタンドアロンコンピューティングシステムであることを特徴とする請求項10に記載のシステム。
  21. コンピューティング環境内でデジタルアクションを実施することが認証されたプリンシパルを識別する際に使用するためのデータ構造がその上に記憶されているコンピュータ読取り可能媒体であって、前記データ構造は、
    特定の識別スキーム内の前記プリンシパルを一意に識別するバリューアサーションと、
    前記バリューアサーションに対応する前記特定の識別スキームを指し示すタイプアサーションと、
    前記プリンシパルが前記特定の識別スキーム内の前記バリューアサーションによって一意に識別されるタイムフレームを指定するタイムリファレンスアサーションと
    を含むことを特徴とするコンピュータ読取り可能媒体。
  22. 前記データ構造は、プリンシパルオブジェクトを前記プリンシパルに関連付けるアイデンティティクレームを表しており、前記プリンシパルオブジェクトは、前記コンピューティング環境内のコンピュータプロセスにより使用され、少なくとも1つのリソースオブジェクトを前記プリンシパルに関連付けるように動作可能であることを特徴とする請求項21に記載のコンピュータ読取り可能媒体。
  23. 前記タイムリファレンスは、
    前記バリューアサーションが前記プリンシパルに最初に関連付けられた時点を示す開始タイムリファレンスアサーションと、
    前記バリューアサーションと前記プリンシパルとの間の関連付けが消滅する時点を示す終了タイムリファレンスアサーションと
    を含むことを特徴とする請求項22に記載のコンピュータ読取り可能媒体。
  24. 前記データ構造は、
    前記コンピューティング環境内の人間のユーザに認識可能な形式でバリューアサーションを指定するディスプレイアサーションをさらに含み、前記コンピュータプロセスは、前記プリンシパルと前記少なくとも1つのリソースオブジェクトとの間の前記関連付けを閲覧するため、ユーザによる要求に応答して前記ディスプレイアサーションを前記ユーザに対して表示することを特徴とする請求項22に記載のコンピュータ読取り可能媒体。
  25. 前記プリンシパルは、前記コンピューティング環境内の個人、組織、およびモジュールからなる群から選択されることを特徴とする請求項21に記載のコンピュータ読取り可能媒体。
  26. 前記タイプアサーションは、前記バリューアサーションが、前記プリンシパルに一意に関連付けられる電子メールアドレスを含むことを示すことを特徴とする請求項21に記載のコンピュータ読取り可能媒体。
  27. 前記タイプアサーションは、前記バリューアサーションが、前記プリンシパルに一意に関連付けられる電話番号を含むことを示すことを特徴とする請求項21に記載のコンピュータ読取り可能媒体。
  28. コンピューティング環境内でデジタルアクションを実施することが認証された第1のプリンシパルを識別するための方法であって、
    前記コンピューティング環境内のコンピュータプロセスにより使用され、前記コンピューティング環境内に保持される複数のリソースオブジェクトに関連付けられるものとして前記第1のプリンシパルを識別するように動作可能なプリンシパルオブジェクトを作成する動作と、
    特定の識別スキーム内の前記第1のプリンシパルを一意に識別する第1のアイデンティティクレームを前記プリンシパルオブジェクトに関連付ける動作であって、前記特定の識別スキーム内の前記第1のプリンシパルの一意の識別は、複数の各プリンシパルに対する一意の識別ストリングの割当てによって実現される動作と、
    複数のアプリケーションプログラムに関連付けられる複数のリソースオブジェクトを受信する動作であって、前記複数の各リソースオブジェクトは、各リソースオブジェクトを前記プリンシパルオブジェクトにリンクする宣言を含むアイデンティティリファレンスに関連付けられる動作と、
    前記コンピューティング環境内で前記関連するアイデンティティリファレンス中に含まれる前記宣言リンクに基づいて前記第1のプリンシパルに関連付けられるものとして前記複数の各リソースオブジェクトを識別する動作とを備え、前記コンピュータプロセスは、前記第1のプリンシパルに対する前記複数の各リソースオブジェクトの識別を利用して識別された各リソースオブジェクトに関連して少なくとも1つのタスクを実施することを特徴とする方法。
  29. 前記受信する動作は、
    第1のアプリケーションプログラムに関連する第1のファイルを表す第1のリソースオブジェクトであって、該第1のリソースオブジェクトに関連して前記第1のプリンシパルに割り当てられた一意の識別ストリングを含む第1の宣言に基づいて前記第1のアイデンティティクレームにリンクされた第1のアイデンティティリファレンスを有する第1のリソースオブジェクトを受信する動作と、
    第2のアプリケーションプログラムに関連する第2のファイルを表す第2のリソースオブジェクトであって、該第2のリソースオブジェクトに関連して前記第1のプリンシパルに割り当てられた前記一意の識別ストリングを含む第2の宣言に基づいて前記第1のアイデンティティクレームにリンクされた第2のアイデンティティリファレンスを有する第2のリソースオブジェクトを受信する動作と
    を含むことを特徴とする請求項28に記載の方法。
  30. 前記識別する動作は、
    前記第1のアイデンティティリファレンスおよび前記第2のアイデンティティリファレンスの前記第1のアイデンティティクレームに対する前記リンクに基づいて前記第1のプリンシパルに関連するものとして前記第1のファイルおよび前記第2のファイルを識別する動作を含むことを特徴とする請求項29に記載の方法。
  31. 前記第1のプリンシパルに関連するプロパティを前記プリンシパルオブジェクトに関連付ける動作をさらに備え、前記識別する動作に応答して前記コンピュータプロセスが実施する前記タスクは、前記プリンシパルオブジェクトにリンクされる前記複数のリソースの少なくとも1つのグラフィック表現に関連して前記第1のプリンシパルに関連するプロパティのグラフィック表現を表示する動作を含むことを特徴とする請求項28に記載の方法。
  32. 前記第1のプリンシパルに関連するプロパティを前記プリンシパルオブジェクトに関連付ける動作をさらに備え、前記識別する動作に応答して前記コンピュータプロセスが実施する前記タスクは、前記プリンシパルオブジェクトにリンクされる前記複数のリソースの少なくとも1つに対する前記第1のプリンシパルによるアクセスを認証する動作を含むことを特徴とする請求項30に記載の方法。
  33. 前記作成する動作は、
    前記リソースオブジェクトを前記プリンシパルオブジェクトにリンクしない宣言であって、前記特定の識別スキーム内の第2のプリンシパルを一意に識別する識別ストリングを含む宣言を含むアイデンティティリファレンスを有するリソースオブジェクトを受信するのに応答して、前記第2のプリンシパルに割り当てられる前記識別ストリングを含めるために作成されるファントムプリンシパルオブジェクトを作成する動作と、
    前記第1のプリンシパルに対応する前記プリンシパルオブジェクトを含むデータストアに前記ファントムプリンシパルオブジェクトを保存する動作と
    を含むことを特徴とする請求項28に記載の方法。
  34. 前記第2のプリンシパルに割り当てられる前記識別ストリングを含む第2のアイデンティティクレームを含む第2のプリンシパルオブジェクトを受信する動作と、
    前記ファントムプリンシパルオブジェクトおよび前記第2のプリンシパルが共に前記第2のプリンシパルに対応することを判定するのに応答して、前記ファントムプリンシパルオブジェクトを前記データストアから削除し、前記第2のプリンシパルオブジェクトが前記識別する動作により使用されて動作可能となるように前記第2のプリンシパルオブジェクトを前記データストアに保存する動作と
    をさらに備えることを特徴とする請求項33に記載の方法。
  35. 前記第1のアイデンティティクレームは、前記コンピューティング環境中のデータストアに記憶され、前記方法は、
    前記データストアに記憶するために第2のアイデンティティクレームを受信することに応答して、前記第2のアイデンティティクレームおよび前記第1のアイデンティティクレームが共に同一の一意の識別ストリングを指定するか否かを判定する動作と、
    前記第1のアイデンティティクレームおよび前記第2のアイデンティティクレームが共に前記同一の一意の識別ストリングを指定することを判定することに応答して、フォールト解決プロセスを呼び出して、前記データストアに記憶され、かつ前記識別する動作にとって使用可能な主要なアイデンティティクレームを決定する動作と
    をさらに備えることを特徴とする請求項28に記載の方法。
  36. 前記呼び出す動作は、
    前記第2のアイデンティティクレームに記憶されるデータを前記第1のアイデンティティクレーム中にマージする動作を含むことを特徴とする請求項35に記載の方法。
  37. 前記呼び出す動作は、
    前記第1のアイデンティティクレームを削除する動作と、
    前記第2のアイデンティティクレームを前記データストアに記憶する動作と
    を含むことを特徴とする請求項35に記載の方法。
  38. コンピュータシステムによって読み取り可能であり、前記コンピュータシステムが実行可能な命令のプログラムを具体的に実施して請求項28に記載の方法を実施することを特徴とするコンピュータプログラム製品。
JP2006536582A 2003-10-23 2004-07-29 コンピューティング環境において使用するためのアイデンティティシステム Expired - Fee Related JP4660483B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/693,021 US7631060B2 (en) 2003-10-23 2003-10-23 Identity system for use in a computing environment
PCT/US2004/024342 WO2005045577A2 (en) 2003-10-23 2004-07-29 Identity system for use in a computing environment

Publications (3)

Publication Number Publication Date
JP2007519076A true JP2007519076A (ja) 2007-07-12
JP2007519076A5 JP2007519076A5 (ja) 2007-09-06
JP4660483B2 JP4660483B2 (ja) 2011-03-30

Family

ID=34522270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006536582A Expired - Fee Related JP4660483B2 (ja) 2003-10-23 2004-07-29 コンピューティング環境において使用するためのアイデンティティシステム

Country Status (11)

Country Link
US (1) US7631060B2 (ja)
EP (1) EP1682966A4 (ja)
JP (1) JP4660483B2 (ja)
KR (1) KR20060111253A (ja)
CN (1) CN101180825B (ja)
AU (1) AU2004279188A1 (ja)
BR (1) BRPI0406214A (ja)
CA (1) CA2501848C (ja)
MX (1) MXPA05006639A (ja)
RU (1) RU2377641C2 (ja)
WO (1) WO2005045577A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007509421A (ja) * 2003-10-23 2007-04-12 マイクロソフト コーポレーション 識別情報を同期させる方法およびシステム

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8180834B2 (en) * 2004-10-07 2012-05-15 Computer Associates Think, Inc. System, method, and computer program product for filtering messages and training a classification module
US8117459B2 (en) * 2006-02-24 2012-02-14 Microsoft Corporation Personal identification information schemas
US8104074B2 (en) * 2006-02-24 2012-01-24 Microsoft Corporation Identity providers in digital identity system
US20070203852A1 (en) * 2006-02-24 2007-08-30 Microsoft Corporation Identity information including reputation information
US8078880B2 (en) * 2006-07-28 2011-12-13 Microsoft Corporation Portable personal identity information
US8407767B2 (en) * 2007-01-18 2013-03-26 Microsoft Corporation Provisioning of digital identity representations
US8087072B2 (en) * 2007-01-18 2011-12-27 Microsoft Corporation Provisioning of digital identity representations
US8689296B2 (en) * 2007-01-26 2014-04-01 Microsoft Corporation Remote access of digital identities
US8990896B2 (en) 2008-06-24 2015-03-24 Microsoft Technology Licensing, Llc Extensible mechanism for securing objects using claims
US8689004B2 (en) 2010-11-05 2014-04-01 Microsoft Corporation Pluggable claim providers
EP3629663B1 (en) * 2014-04-29 2022-03-09 Huawei Technologies Co., Ltd. Resource reuse apparatus, user equipment, and resource reuse method
US9674200B2 (en) * 2015-07-14 2017-06-06 Mastercard International Incorporated Identity federation and token translation module for use with a web application

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002046873A2 (en) * 2000-12-06 2002-06-13 Waveset Technologies, Inc. System and method for managing information objects
US20030177356A1 (en) * 2002-03-15 2003-09-18 Noel Abela Method and system for internationally providing trusted universal identification over a global communications network
JP2003263471A (ja) * 2002-03-07 2003-09-19 Progress Interactive Inc 携帯情報端末を用いた印刷用データ送信・管理システム

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2724471B1 (fr) * 1994-09-13 1996-10-25 Bull Sa Dispositif de generation d'interfaces orientees objet pour des bases de donnees relationnelles et procede mis en oeuvre par ledit dispositif
US5542078A (en) * 1994-09-29 1996-07-30 Ontos, Inc. Object oriented data store integration environment for integration of object oriented databases and non-object oriented data facilities
US5634052A (en) * 1994-10-24 1997-05-27 International Business Machines Corporation System for reducing storage requirements and transmission loads in a backup subsystem in client-server environment by transmitting only delta files from client to server
US7562392B1 (en) * 1999-05-19 2009-07-14 Digimarc Corporation Methods of interacting with audio and ambient music
US5778395A (en) * 1995-10-23 1998-07-07 Stac, Inc. System for backing up files from disk volumes on multiple nodes of a computer network
US7192352B2 (en) * 1996-04-22 2007-03-20 Walker Digital, Llc System and method for facilitating play of a video game via a web site
US6182188B1 (en) * 1997-04-06 2001-01-30 Intel Corporation Method of performing reliable updates in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture
US6370566B2 (en) * 1998-04-10 2002-04-09 Microsoft Corporation Generating meeting requests and group scheduling from a mobile device
US6237035B1 (en) * 1997-12-18 2001-05-22 International Business Machines Corporation System and method for preventing duplicate transactions in an internet browser/internet server environment
US6292880B1 (en) * 1998-04-15 2001-09-18 Inktomi Corporation Alias-free content-indexed object cache
JP2000122975A (ja) * 1998-10-14 2000-04-28 Toshiba Corp バイオメトリクスによるユーザー確認システム及び記憶媒体
US6125378A (en) * 1999-01-13 2000-09-26 Barbano; Paolo Emilio Method and apparatus for generating families of code signals using multiscale shuffling
GB9903124D0 (en) * 1999-02-11 1999-04-07 Nokia Telecommunications Oy An authentication method
US6687823B1 (en) * 1999-05-05 2004-02-03 Sun Microsystems, Inc. Cryptographic authorization with prioritized and weighted authentication
WO2001009756A2 (en) * 1999-07-30 2001-02-08 Safewww, Inc. A system and method for secure network purchasing
US7137008B1 (en) * 2000-07-25 2006-11-14 Laurence Hamid Flexible method of user authentication
EP1195705A1 (en) * 2000-10-06 2002-04-10 Hewlett-Packard Company Method of performing transactions in an information technology network
US7130466B2 (en) * 2000-12-21 2006-10-31 Cobion Ag System and method for compiling images from a database and comparing the compiled images with known images
US7349970B2 (en) * 2001-03-29 2008-03-25 International Business Machines Corporation Workload management of stateful program entities
US7243343B2 (en) * 2001-04-10 2007-07-10 International Business Machines Corporation Method, compiler and platform independent framework for parsing and generating data structures
US7017162B2 (en) * 2001-07-10 2006-03-21 Microsoft Corporation Application program interface for network software platform
US20040128508A1 (en) * 2001-08-06 2004-07-01 Wheeler Lynn Henry Method and apparatus for access authentication entity
US8611919B2 (en) * 2002-05-23 2013-12-17 Wounder Gmbh., Llc System, method, and computer program product for providing location based services and mobile e-commerce
US7275087B2 (en) * 2002-06-19 2007-09-25 Microsoft Corporation System and method providing API interface between XML and SQL while interacting with a managed object environment
US7490332B2 (en) * 2003-04-04 2009-02-10 Sesma Systems, Inc. System and method for accessing ActiveX objects in a platform dependent environment from objects in a platform independent environment
US7660864B2 (en) * 2003-05-27 2010-02-09 Nokia Corporation System and method for user notification
US7386863B2 (en) * 2003-06-26 2008-06-10 International Business Machines Corporation Administering devices in dependence upon user metric vectors with multiple users

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002046873A2 (en) * 2000-12-06 2002-06-13 Waveset Technologies, Inc. System and method for managing information objects
JP2003263471A (ja) * 2002-03-07 2003-09-19 Progress Interactive Inc 携帯情報端末を用いた印刷用データ送信・管理システム
US20030177356A1 (en) * 2002-03-15 2003-09-18 Noel Abela Method and system for internationally providing trusted universal identification over a global communications network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007509421A (ja) * 2003-10-23 2007-04-12 マイクロソフト コーポレーション 識別情報を同期させる方法およびシステム

Also Published As

Publication number Publication date
CA2501848C (en) 2012-03-20
EP1682966A4 (en) 2012-05-30
US7631060B2 (en) 2009-12-08
KR20060111253A (ko) 2006-10-26
RU2005119658A (ru) 2006-01-20
WO2005045577A2 (en) 2005-05-19
MXPA05006639A (es) 2005-08-16
AU2004279188A8 (en) 2008-08-21
BRPI0406214A (pt) 2005-08-09
CN101180825A (zh) 2008-05-14
CN101180825B (zh) 2011-05-18
RU2377641C2 (ru) 2009-12-27
EP1682966A2 (en) 2006-07-26
AU2004279188A1 (en) 2006-02-16
JP4660483B2 (ja) 2011-03-30
CA2501848A1 (en) 2005-04-23
WO2005045577A3 (en) 2007-07-12
US20050091264A1 (en) 2005-04-28

Similar Documents

Publication Publication Date Title
US7627652B1 (en) Online shared data environment
US7913167B2 (en) Selective document redaction
JP5432888B2 (ja) ウェブサービスリソースへのアクセスの認可
JP6207519B2 (ja) 文書コラボレーション
AU2005220261B2 (en) System and method for restricting user access to a network document
US20200334374A1 (en) Application specific schema extensions for a hierarchical data structure
US20060259960A1 (en) Server, method and program product for management of password policy information
US20090100321A1 (en) Universal contextual actions menu across windows applications
US9305174B2 (en) Electronic clipboard protection
JP4839810B2 (ja) 電子文書管理システム、プログラム及び方法
US20090125977A1 (en) Language framework and infrastructure for safe and composable applications
US20100313252A1 (en) System, method and apparatus for creating and using a virtual layer within a web browsing environment
JP2010530589A (ja) 電子文書の統合的な共有
US8448260B1 (en) Electronic clipboard protection
US20080201234A1 (en) Live entities internet store service
JP4660483B2 (ja) コンピューティング環境において使用するためのアイデンティティシステム
US20160316002A1 (en) Access to supplemental data based on identifier derived from corresponding primary application data
CN106663083B (zh) 用于基于http的应用的网络浏览器策略
US8538980B1 (en) Accessing forms using a metadata registry
US20080320027A1 (en) Strongly typed tags
JP2007188239A (ja) 文書管理システム
CN104137073B (zh) 一种获取文件的方法和装置
JP2007304831A (ja) 承認管理システム
JPH1139341A (ja) Wwwシステムにおけるページ表示装置及びプログラムを記録した機械読み取り可能な記録媒体
JP2009104347A (ja) アクセス可能な電子文書を提供するアクセス制御装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070718

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100514

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100816

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100823

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100914

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100922

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101014

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101221

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101228

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4660483

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees