<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="RSS_xslt_style.asp" version="1.0" ?>
<rss version="2.0" xmlns:WebWizForums="http://syndication.webwiz.co.uk/rss_namespace/">
 <channel>
  <title>DevForce Community Forum : WIF and DevForce</title>
  <link>http://www.ideablade.com/forum/</link>
  <description>This is an XML content feed of; DevForce Community Forum : DevForce 2010 : WIF and DevForce</description>
  <pubDate>Wed, 13 May 2026 14:12:19 -700</pubDate>
  <lastBuildDate>Wed, 21 Dec 2011 16:38:44 -700</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Web Wiz Forums 9.69</generator>
  <ttl>360</ttl>
  <WebWizForums:feedURL>www.ideablade.com/forum/RSS_post_feed.asp?TID=3165</WebWizForums:feedURL>
  <image>
   <title>DevForce Community Forum</title>
   <url>http://www.ideablade.com/forum/forum_images/IdeaBlade_logo_tm.png</url>
   <link>http://www.ideablade.com/forum/</link>
  </image>
  <item>
   <title>WIF and DevForce :  I&amp;#039;m not familiar with the...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=3165&amp;PID=12298#12298</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=477" rel="nofollow">ting</a><br /><strong>Subject:</strong> 3165<br /><strong>Posted:</strong> 21-Dec-2011 at 4:38pm<br /><br /><div style="margin-left: 1px; margin-top: 1px; margin-right: 1px; margin-bottom: 1px; line-height: 1.4; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; -: n&#111;ne; ">I'm not familiar with the Thinktecture Identity Server. However, based on the documentation from their website, I believe you would implement the DevForce IEntityLoginManager and in the implementation, authenticate against their service by requesting a token from the credentials that you collect from the client (username &amp; hashed password).<div><br></div><div>You can find more information about implementing custom authentication with the IEntityLoginManager here:</div><div><a href="http://drc.ideablade.com/xwiki/bin/view/&#068;ocumentati&#111;n/authenticati&#111;n-details#HImplementingIEntityLoginManager" target="_blank">http://drc.ideablade.com/xwiki/bin/view/Documentation/authentication-details#HImplementingIEntityLoginManager</a></div><div><br></div><div>This code to request a token was taken from the Thinktecture docs:</div><div><p ="rvps2"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 13px; font: inherit; vertical-align: line; text-align: left; font-family: Arial, Helvetica, sans-serif; line-height: normal; "><span ="rvts21"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb0, 0, 255; ">&nbsp; private</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp;</span><span ="rvts21"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb0, 0, 255; ">string</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp;RequestToken()&nbsp;</span><span style="font-family: c&#111;nsolas; font-size: 11pt; ">{</span></p><p ="rvps2"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 13px; font: inherit; vertical-align: line; text-align: left; font-family: Arial, Helvetica, sans-serif; line-height: normal; "><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp; &nbsp; &nbsp;</span><span ="rvts21"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb0, 0, 255; ">var</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp;client =&nbsp;</span><span ="rvts21"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb0, 0, 255; ">new</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp;</span><span ="rvts28"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb43, 145, 175; ">HttpClient</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">();</span></p><p ="rvps2"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 13px; font: inherit; vertical-align: line; text-align: left; font-family: Arial, Helvetica, sans-serif; line-height: normal; "><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp; &nbsp; &nbsp;client.DefaultRequestHeaders.Authorization =&nbsp;</span><span ="rvts21"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb0, 0, 255; ">new</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp;</span><span ="rvts28"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb43, 145, 175; ">BasicAuthenticationHeaderValue</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">(</span><span ="rvts22"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb163, 21, 21; ">"username"</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">,</span><span ="rvts22"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb163, 21, 21; ">"password"</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">);</span></p><p ="rvps2"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 13px; font: inherit; vertical-align: line; text-align: left; font-family: Arial, Helvetica, sans-serif; line-height: normal; "><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; "><br></span></p><p ="rvps2"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 13px; font: inherit; vertical-align: line; text-align: left; font-family: Arial, Helvetica, sans-serif; line-height: normal; "><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp; &nbsp; &nbsp;</span><span ="rvts21"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb0, 0, 255; ">var</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp;result = client.GetAsync(baseAddress + "?realm=https://server/rp/").Result;</span></p><p ="rvps2"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 13px; font: inherit; vertical-align: line; text-align: left; font-family: Arial, Helvetica, sans-serif; line-height: normal; "><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp; &nbsp; &nbsp;</span><span ="rvts21"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; color: rgb0, 0, 255; ">return</span><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp;result.Content.ReadAsStringAsync().Result;</span></p><p ="rvps2"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 13px; font: inherit; vertical-align: line; text-align: left; font-family: Arial, Helvetica, sans-serif; line-height: normal; "><span ="rvts23"="" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-: initial; font-size: 11pt; font: inherit; vertical-align: line; font-family: c&#111;nsolas; ">&nbsp; }</span></p></div><div><br></div><div>You can place the token into the IPrincipal that is returned by the IEntityLoginManager so that you can use it to check against authorization rights later.</div><div><br></div><div>I know there's a way for Silverlight to inherit a security token from the website, but I can't remember the code/configuration to do this.</div><div><br></div><div>Our professional services team is in a better position to recommend best practices in security, but I hope this helps.</div><div><br></div><div>Best,</div><div>Ting</div><div><br></div></div><span style="font-size:10px"><br /><br />Edited by ting - 21-Dec-2011 at 4:43pm</span>]]>
   </description>
   <pubDate>Wed, 21 Dec 2011 16:38:44 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=3165&amp;PID=12298#12298</guid>
  </item> 
  <item>
   <title>WIF and DevForce : I&amp;#039;m looking for a high-level...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=3165&amp;PID=12275#12275</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=1363" rel="nofollow">francoisw</a><br /><strong>Subject:</strong> 3165<br /><strong>Posted:</strong> 19-Dec-2011 at 8:59pm<br /><br />I'm looking for a high-level process sequence on how to integrate WIF and Devforce Silverlight during authentication. I'm planning to use Thinktecture Identity Server (<span style="font-style: italic;"><span style="font-weight: bold;">identityserver</span></span><cite><b></b>.codeplex.com)</cite> as the STS which is essentially backed with a membership database.<br><br>What would be the best practice with regards to this? <br><br>I will also have a website (asp.Net) which I want seamless integration with and where I would login via the website if the silverlight application is running in-browser and via the silverlight app in a out-of-browser case.<br><br>Should rather perform the authentication with the STS and setup an ASP.Net session before the login and then just perform a default login (no credentials) or is there another prefer process.<br><br>Thank you in advance for the awesome reply :-)<br><br>]]>
   </description>
   <pubDate>Mon, 19 Dec 2011 20:59:53 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=3165&amp;PID=12275#12275</guid>
  </item> 
 </channel>
</rss>