{"id":716,"date":"2007-03-18T16:45:34","date_gmt":"2007-03-19T00:45:34","guid":{"rendered":"\/?p=716"},"modified":"2007-03-19T12:33:04","modified_gmt":"2007-03-19T20:33:04","slug":"new-visual-studio-toolkit-for-cardspace","status":"publish","type":"post","link":"https:\/\/www.identityblog.com\/?p=716","title":{"rendered":"New Visual Studio Toolkit for CardSpace"},"content":{"rendered":"<p><img align=\"left\" src=\"\/wp-content\/images\/people\/christian.arnold.jpg\" hspace=\"10\" \/>If you use visual studio and are interested in CardSpace, you&#39;ll be interested in Christian Arnold&#39;s brand new &#8220;<a href=\"http:\/\/www.codecomplete.de\/blogs\/digitalidentity\/archive\/2007\/03\/18\/22.aspx\">Visual Studio 2005 Toolbox for Windows CardSpace&#8221;<\/a>.&nbsp; It&nbsp;looks like it makes&nbsp;the task of CardSpace enabling .NET 2.0 apps as easy as pie.&nbsp; I&#39;m out of the country now but can&#39;t wait to try it.<\/p>\n<p>You can <strong>download the tools <\/strong><a href=\"http:\/\/www.codecomplete.de\/files\/folders\/ditools\/entry23.aspx\"><strong>here<\/strong><\/a>.&nbsp; Christian also runs what he calls a &#8220;<a href=\"http:\/\/www.codecomplete.de\/forums\/12\/ShowForum.aspx\">little support forum<\/a>&#8220;.<\/p>\n<p>The ToolBox provides an easy way to use Windows CardSpace in your ASP.NET 2.0 Web-Application to register and validate your users. It\u00b4s also possible to use the controls to receive a SAML token and get the decrypted values of provided claims. The token decrypting process is build based on the <a href=\"http:\/\/cardspace.netfx3.com\/files\/folders\/samples_rc_1\/entry5998.aspx\" class=\"broken_link\">community sample<\/a>.<\/p>\n<p>The install process looks pretty straightforward&nbsp;&#8211; you just add the tools to your toolbox:<\/p>\n<p><img src=\"\/wp-content\/images\/2007\/03\/toolboxitems.jpg\" \/>&nbsp;<\/p>\n<p>That adds&nbsp;two new controls to&nbsp;your Visual Studio 2005 ToolBox:<\/p>\n<p><img src=\"\/wp-content\/images\/2007\/03\/cardspacetoolbox.png\" \/><\/p>\n<p>Here&#39;s a taste of how you use the CreateCardSpaceUserWizard Control:<\/p>\n<p><img src=\"\/wp-content\/images\/2007\/03\/buildinregistration.png\" \/>&nbsp;<\/p>\n<p>You need to add a little configuration:<\/p>\n<p style=\"margin-left: 30px\">&lt;cc1:CreateCardSpaceUserWizard ID=&#8221;CreateCardSpaceUserWizard1&#8243; runat=&#8221;server&#8221; BuildInRegistration=&#8221;False&#8221; OnUserRegistered=&#8221;CreateCardSpaceUserWizard1_UserRegistered1&#8243;&gt;<\/p>\n<p style=\"margin-left: 60px\">&lt;cc1:IdentityClaim ClaimUri= &#8220;<a href=\"http:\/\/schemas.xmlsoap.org\/ws\/2005\/05\/identity\/claims\/privatepersonalidentifier\" class=\"broken_link\">http:\/\/schemas.xmlsoap.org\/ws\/2005\/05\/identity\/claims\/privatepersonalidentifier<\/a>&#8221; \/&gt;<\/p>\n<p style=\"margin-left: 60px\">&lt;cc1:IdentityClaim ClaimUri= &#8220;<a href=\"http:\/\/schemas.xmlsoap.org\/ws\/2005\/05\/identity\/claims\/emailaddress\" class=\"broken_link\">http:\/\/schemas.xmlsoap.org\/ws\/2005\/05\/identity\/claims\/emailaddress<\/a>&#8221; \/&gt;<\/p>\n<p style=\"margin-left: 30px\">&lt;\/cc1:CreateCardSpaceUserWizard&gt;<\/p>\n<p>Christian explains that this causes the system to request the privatepersonalidentifier and the emailadress of a new user powered with CardSpace or other Information Card identity selector.<\/p>\n<p>He explains that by defining&nbsp;the claim<\/p>\n<p style=\"margin-left: 30px\"><a href=\"http:\/\/schemas.xmlsoap.org\/ws\/2005\/05\/identity\/claims\/emailaddress\" class=\"broken_link\">http:\/\/schemas.xmlsoap.org\/ws\/2005\/05\/identity\/claims\/emailaddress<\/a><\/p>\n<p>the control will store the emailaddress automatically, so you don&#39;t have not to worry about this \ud83d\ude42<\/p>\n<p>After registration the control will fire the UserRegistered Event. The eventargs will tell you the result of the operation and the provided claims as a NameValueCollection.<br \/>\n\u00e2\u20ac\u0192<br \/>\nChristian goes on to&nbsp;explain how to use the system&nbsp;<strong>with&nbsp;the default ASP.NET 2.0 Membership-Provider.<\/strong>&nbsp;<\/p>\n<p>Clearly, there are a great many sites built on this Membership-provider technology and the emergence of this toolkit in the identity ecosystem is a major event.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This toolkit should be of interest to anyone using the ASP.NET 2.0 Membership Provider&#8230;<\/p>\n","protected":false},"author":68,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[19,15,5,4],"tags":[],"_links":{"self":[{"href":"https:\/\/www.identityblog.com\/index.php?rest_route=\/wp\/v2\/posts\/716"}],"collection":[{"href":"https:\/\/www.identityblog.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.identityblog.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.identityblog.com\/index.php?rest_route=\/wp\/v2\/users\/68"}],"replies":[{"embeddable":true,"href":"https:\/\/www.identityblog.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=716"}],"version-history":[{"count":0,"href":"https:\/\/www.identityblog.com\/index.php?rest_route=\/wp\/v2\/posts\/716\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.identityblog.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=716"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.identityblog.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=716"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.identityblog.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=716"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}