Windows CardSpace

Windows CardSpace は、アイデンティティメタシステムに対するマイクロソフトのクライアントソフトウェアである。マイクロソフト内のコード名は InfoCard。CardSpace は、アイデンティティセレクタと呼ばれるアイデンティティ・クライアントソフトウェアの一種である。CardSpaceはユーザーのデジタルアイデンティティへの参照を格納しており、それをユーザーに対して視覚的なインフォメーションカードとして提示する。CardSpaceは、アプリケーションやWebサイトが受け入れる各種アイデンティティを簡単に利用できる一貫したユーザインタフェース (UI) を提供する。
概要.
インフォメーションカードに対応したアプリケーションやWebサイトが、そのユーザーに関する情報を得たいとき、そのアプリケーションやWebサイトはユーザーに一連の情報提供を要求をする。すると、CardSpace UI が起動してCardSpaceサービスに画面が切り替わり、格納してある複数のアイデンティティを視覚的インフォメーションカードとして表示する。ユーザーが使用するインフォメーションカードを選択すると、CardSpaceソフトウェアはそのアイデンティティ発行者に接続し、デジタル署名されたXMLトークンを取得する。このトークンに元々要求されていた情報が含まれている。CardSpaceではまた、ユーザーが個人的な（自分で発行した）インフォメーションカードを作成でき、これには14フィールドからなる電話帳レベルのアイデンティティ情報が格納できる（これは例えば、フルネーム、住所などといったラベル付けされ分類された情報。ただし、その多くはオプション）。トランザクションによっては「管理された」インフォメーションカードを要求される。これはサードパーティの「アイデンティティプロバイダ」が発行するもので、銀行、雇用主、政府機関といった者のためにアイデンティティ情報を構成したものである。
Windows CardSpace は、WS-Security、WS-Trust、WS-MetadataExchange、WS-SecurityPolicy などのXMLベースのオープンなプロトコル群で構成されるWebサービスプロトコルスタック上に構築されている。すなわち、WS-* プロトコルをサポートしているテクノロジやプラットフォームなら、CardSpaceに統合可能である。あるWebサイトがインフォメーションカードに対応する場合、そのサイトがユーザーに対して要求するアイデンティティ情報をHTMLの <OBJECT> タグで宣言し、ユーザーから渡されたトークンを解釈し情報を抽出するコードを実装すればよい。トークンを発行するアイデンティティプロバイダ側は、ユーザーが管理されたカードを取得する手段を提供し、WS-Trust要求に対して適切に暗号化され署名されたトークンを返すセキュリティトークンサービス (STS) を提供すればよい。自前でSTSを構築できないアイデンティティプロバイダは、様々なベンダー（PingID、BMC、サン・マイクロシステムズ、マイクロソフト、シーメンスなど）がSTSを提供しているので、それを利用すればよい。
CardSpaceとその基盤であるアイデンティティメタシステムはトークンのフォーマットを関知しないので、CardSpaceはOpenIDやSAMLという他のインターネット用アイデンティティアーキテクチャと直接競合するものではない。これら3つのアプローチは、ある意味で相補的である。実際、OpenIDプロバイダ、Microsoft アカウント、SAMLアイデンティティプロバイダ、その他のサービスへのサインインにインフォメーションカードを使うことができる。
IBMとノベルは、Higginsプロジェクトへの参加を表明した。このプロジェクトは、CardSpaceとその基盤だけでなく、SAMLやOpenIDなどのアイデンティティ技術全般をサポートする広範囲なフレームワークを構築するものである。
マイクロソフトはまず、Windows XP、Windows Server 2003、Windows Vista で動作する .NET Framework 3.0 で Windows CardSpace をリリースした。Vista にはデフォルトでインストールされており、XPと Server 2003 には Microsoft Update でダウンロードできる。CardSpace の更新版は .NET Framework 3.5 に組み込まれてリリースされた。