Using CardSpace without using WCF or Browser

Getting CardSpace Tokens Programmatically

The wrapper allows you to  basically pass in the required details (issuer and target URI, the target identity as well as required/optional claims) and get back the encrypted XML token. 

This code snippet shows how to use the wrapper to get a token for a self issued card:

IdentitySelector selector = new IdentitySelector();

selector.IssuerUri =   new Uri("http://schemas.xmlsoap.org/ws/2005/05/identity/issuer/self");
selector.TargetUri = new Uri("http://relyingParty");
selector.SetTargetCertificate("RelyingParty",
    X509FindType.FindBySubjectName,
    StoreLocation.CurrentUser,
    StoreName.AddressBook);

selector.RequiredClaims.Add(ClaimTypes.GivenName);
selector.RequiredClaims.Add(ClaimTypes.Surname);
selector.RequiredClaims.Add(ClaimTypes.Email);

string tokenString = selector.GetTokenString();

From this point on it is up to you to use this token in whatever way you want.

It is as easy a shipping a string to your relying party.

Download here

Via www.leastprivilege.com - Getting CardSpace Tokens Programmatically

Using Windows CardSpace with WebService and Non-Browser Applications