Windows CardSpace

From Wikipedia, the free encyclopedia

Jump to: navigation, search
The Windows CardSpace user interface.

Windows CardSpace (codenamed InfoCard), is Microsoft's client software for the Identity Metasystem. CardSpace is an instance of a class of identity client software called an Identity Selector. CardSpace stores references to users' digital identities for them, presenting them to users as visual Information Cards. CardSpace provides a consistent UI that enables people to easily use these identities in applications and web sites where they are accepted.


[edit] Overview

When an Information Card-enabled application or website wishes to obtain information about the user, the application or website requests a particular set of claims from the user. The CardSpace UI then appears, switching the display to the CardSpace service, which displays the user's stored identities as visual Information Cards. The user selects the InfoCard to use and the CardSpace software contacts the issuer of the identity to obtain a digitally signed XML token that contains the requested information. CardSpace also allows users to create personal (also known as self-issued) Information Cards, which can contain one or more of 14 fields of telephone book-quality identity information (that is to say, labeled and categorized information, such as full name, address, etc., though most fields are optional). Other transactions may require a managed InfoCard; these are issued by a third party identity provider that makes the claims on the person's behalf, such as a bank, employer, or a government agency.

Windows CardSpace is built on top of the Web Services Protocol Stack, an open set of XML-based protocols, including WS-Security, WS-Trust, WS-MetadataExchange and WS-SecurityPolicy. This means that any technology or platform that supports WS-* protocols can integrate with CardSpace. In order to accept Information Cards, a website developer simply needs to declare an HTML <OBJECT> tag that specifies the claims the website is demanding from the user and then implement code to decrypt the returned token and extract the claim values. If an Identity Provider wants to issue tokens, they must provide a means by which a user can obtain a managed card and provide a Security Token Service (STS) which handles WS-Trust requests and returns an appropriate encrypted & signed token. If an Identity Provider does not wish to build an STS, they will be able to obtain one from a variety of vendors including PingID, BMC, Sun Microsystems, Microsoft, or Siemens, as well as other companies or organizations.

Because CardSpace and the Identity Metasystem upon which it is based are token-format-agnostic, CardSpace does not compete directly with other Internet identity architectures like OpenID and SAML. In some ways, these three approaches to identity can be seen as complementary.[1] Indeed, Information Cards can be used today for signing into OpenID providers, Windows Live ID accounts, SAML identity providers, and other kinds of services.

IBM and Novell will support[2] the Higgins trust framework to provide a development framework that includes support for Information Cards and the Web Services Protocol Stack underlying CardSpace within a broader, extensible framework also supporting other identity-related technologies, such as SAML and OpenID.

Microsoft initially shipped Windows CardSpace with the .NET Framework 3.0, which runs on Windows XP, Windows Server 2003, and Windows Vista. It is installed by default on Windows Vista and is available as a free download for XP and Server 2003 via Windows Update. An updated version of CardSpace shipped with the .NET Framework 3.5.

[edit] See also

[edit] References

[edit] Additional resources

  • Vittorio Bertocci, Garrett Serack, Caleb Baker: Understanding Windows CardSpace: An Introduction to the Concepts and Challenges of Digital Identities, December 27 2007, Addison-Wesley, ISBN 0-321-49684-1

[edit] External links

Software development
  • Microsoft Information Card Kit for ASP.NET 2.0ASP.NET Relying Party code to support CardSpace.
  • Microsoft Information Card Kit for HTML – platform-independent JavaScript and CSS code that detects if the client can use Information Cards and provides the corresponding UI support.
  • Open Source Ruby Relying Party code for accepting Information Cards.
  • Open Source Java Relying Party code for accepting Information Cards.
  • Open Source C and PHP Relying Party code for accepting Information Cards.
  • Open Source PHP Secure Token Service code for managed Information Cards.
  • Open Source C# Secure Token Service code for managed Information Cards.
  • Open Source WSO2 Identity Solution WSO2 Identity Solution is a set of Relying Party components and an Identity Provider to enable CardSpace and OpenID authentication.
Identity selectors
  • Kim Cameron's Identity Weblog – Information from Microsoft's architect for identity.
  • Mike Jones' blog – Information on CardSpace, Information Cards, and the Digital Identity from Microsoft's Director of Identity Partnerships.
  • Vittorio Bertocci's Weblog – Information on designing and developing with CardSpace from Microsoft's architect evangelist for Windows Server 2008.
  • CardSpace team blog – Information on CardSpace from the CardSpace team itself.
Personal tools