<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>herveyw&#039;s blog</title>
	<atom:link href="http://www.dynamic-cast.com/index.xml" rel="self" type="application/rss+xml" />
	<link>http://www.dynamic-cast.com</link>
	<description>Identity, Claims, etc.</description>
	<lastBuildDate>Sun, 24 Jan 2010 04:56:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Using ACS? Read the WRAP specification</title>
		<link>http://www.dynamic-cast.com/?p=26</link>
		<comments>http://www.dynamic-cast.com/?p=26#comments</comments>
		<pubDate>Sun, 24 Jan 2010 04:56:05 +0000</pubDate>
		<dc:creator>herveyw</dc:creator>
				<category><![CDATA[AppFabric Access Control Service]]></category>

		<guid isPermaLink="false">http://www.dynamic-cast.com/?p=26</guid>
		<description><![CDATA[It&#8217;s easy to base your understanding of an API or service on the documentation, a few samples from the SDK or blog posts from all the experts but, unfortunately, these don&#8217;t always paint a complete picture. When it comes to identity, you really need to try to gain an understanding of the overall problem space [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s easy to base your understanding of an API or service on the documentation, a few samples from the SDK or blog posts from all the experts but, unfortunately, these don&#8217;t always paint a complete picture. When it comes to identity, you really need to try to gain an understanding of the overall problem space and the many protocol specifications to better understand the various components of the system and how they were intended to be used. If you don&#8217;t gain this grounding, then you can make assumptions and build on shaky foundations. With the Web Resource Authorization Protocol (WRAP) the volume of material isn&#8217;t huge and reading the specification will leave you in a better position to understand ACS.</p>
<p>You can find the WRAP specification <a title="WRAP 0.9.7.2 Specification" href="http://oauth-wrap-wg.googlegroups.com/web/WRAP-v0.9.7.2.pdf" target="_blank">here</a>. When you&#8217;ve gone through it, remember that ACS today only implements the Client Account and Assertion profiles &#8211; 5.1 and 5.2 &#8211; and, importantly, that a &#8220;Client&#8221; in the WRAP specification isn&#8217;t the same thing as an end-user, something that I obliquely refer to <a href="http://www.dynamic-cast.com/?p=20" target="_self">here</a>. In the absence of the three profiles that deal with end-users but armed with the knowledge that we&#8217;re working to fill out the WRAP implementation and add more protocols (including the usual suspects), you should be able to plan your use of ACS more effectively.</p>
<p>The <a title="Developers Guide to the AppFabric Access Control Service" href="http://go.microsoft.com/fwlink/?LinkID=150835" target="_blank">Developers Guide</a> whitepaper is also good overview material.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamic-cast.com/?feed=rss2&amp;p=26</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Access Control Service as an Identity Provider?</title>
		<link>http://www.dynamic-cast.com/?p=20</link>
		<comments>http://www.dynamic-cast.com/?p=20#comments</comments>
		<pubDate>Mon, 18 Jan 2010 17:10:56 +0000</pubDate>
		<dc:creator>herveyw</dc:creator>
				<category><![CDATA[AppFabric Access Control Service]]></category>

		<guid isPermaLink="false">http://www.dynamic-cast.com/?p=20</guid>
		<description><![CDATA[Take care, that&#8217;s my view.
ACS can accept identities using several mechanisms &#8211; a SAML security token signed by an X.509 Certificate, a Simple Web Token signed with a shared secret, and a form of name/password. The last one causes the confusion, especially since you can authenticate using a name/password or build a Simple Web Token [...]]]></description>
			<content:encoded><![CDATA[<p>Take care, that&#8217;s my view.</p>
<p>ACS can accept identities using several mechanisms &#8211; a SAML security token signed by an X.509 Certificate, a Simple Web Token signed with a shared secret, and a form of name/password. The last one causes the confusion, especially since you can authenticate using a name/password or build a Simple Web Token using the same name/password. They&#8217;re interchangeable. But ACS wasn&#8217;t built to be an Identity Provider in the complete sense of that term.</p>
<p>For example, if the name/passwords really represented users, a real Identity Provider would provide mechanisms that would allow users to create accounts, add claims, choose and reset their passwords and so on. It would also support one of the browser-based logon protocols so that web sites could easily make use of the identities stored at ACS. None of these are features of ACS. Instead, the closest you can get to per-user claims is for an administrator of the ACS solution to edit the rules to generate claims unique to a users identity. And this model doesn&#8217;t scale well in terms of manageability &#8211; it leaves the administrator to provide the end-user management capabilities and you have to edit the rule set to make it work.</p>
<p>When is an &#8220;issuer&#8221; an authority giving out tokens and when is it an individual entity, be that a Service or an end-user? I believe that the distinction between these cases is important, it affects how we trust those entities in the system and that affects the security of the system. ACS stores the name/password values in one table and they can be validated directly as either name/password or name/key for Simple Web Tokens, the distinction is left to the administrator to decide for their usage of the service.</p>
<p>This is all great, you have some flexibility to decide for yourself. However, as we move forward with the architecture and design for ACS2 the distinction becomes more important if we&#8217;re reach our goals for the next version. Unfortunately I can&#8217;t give out details of ACS2 yet &#8211; we&#8217;re still planning and firming up our ideas &#8211; but one theme is starting to emerge and that theme means that ACS may need to more clearly recognize the distinction between authorities and users. With everything stored in a single table today that&#8217;s going to make migration tricky, especially if you&#8217;ve stored thousands of name/passwords representing your users in ACS and even you can&#8217;t distinguish them from authorities handing out identities.</p>
<p>As I said, take care.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamic-cast.com/?feed=rss2&amp;p=20</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Identity Foundation Release Candidate</title>
		<link>http://www.dynamic-cast.com/?p=15</link>
		<comments>http://www.dynamic-cast.com/?p=15#comments</comments>
		<pubDate>Sat, 07 Nov 2009 07:33:32 +0000</pubDate>
		<dc:creator>herveyw</dc:creator>
				<category><![CDATA[Claims]]></category>

		<guid isPermaLink="false">http://www.dynamic-cast.com/?p=15</guid>
		<description><![CDATA[Get it at http://www.microsoft.com/downloads/details.aspx?displaylang=en&#38;FamilyID=defd2019-a61f-4327-9332-6a4b6103527a
]]></description>
			<content:encoded><![CDATA[<p>Get it at <a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=defd2019-a61f-4327-9332-6a4b6103527a" target="_blank">http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=defd2019-a61f-4327-9332-6a4b6103527a</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamic-cast.com/?feed=rss2&amp;p=15</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Musical Chairs</title>
		<link>http://www.dynamic-cast.com/?p=12</link>
		<comments>http://www.dynamic-cast.com/?p=12#comments</comments>
		<pubDate>Thu, 22 Oct 2009 06:33:13 +0000</pubDate>
		<dc:creator>herveyw</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.dynamic-cast.com/?p=12</guid>
		<description><![CDATA[The Windows Identity Foundation is nearly finished and ADFS 2 is heading toward the end-game, the music is about to stop and so it must be time to pick a chair for the next &#8220;wave&#8221;. I&#8217;ve been interested in Windows Azure for some time, in particular learning how to design, build and operate an internet [...]]]></description>
			<content:encoded><![CDATA[<p>The Windows Identity Foundation is nearly finished and ADFS 2 is heading toward the end-game, the music is about to stop and so it must be time to pick a chair for the next &#8220;wave&#8221;. I&#8217;ve been interested in Windows Azure for some time, in particular learning how to design, build and operate an internet scale service, and I was fortunate to find an opening that allows me to do this while building on my work in the Identity space. At the end of this week I&#8217;ll be moving to the <a href="http://www.microsoft.com/windowsazure/dotnetservices/" target="_blank">.NET Services</a> team.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamic-cast.com/?feed=rss2&amp;p=12</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Identity Foundation in Windows Azure</title>
		<link>http://www.dynamic-cast.com/?p=6</link>
		<comments>http://www.dynamic-cast.com/?p=6#comments</comments>
		<pubDate>Sat, 08 Aug 2009 16:28:11 +0000</pubDate>
		<dc:creator>herveyw</dc:creator>
				<category><![CDATA[Azure]]></category>

		<guid isPermaLink="false">http://www.dynamic-cast.com/?p=6</guid>
		<description><![CDATA[Vittorio posted the first sample in what we hope will be a series that show the use of the Windows Identity Foundation in Windows Azure. As you will observe, it&#8217;s a little clunky on the WIF Beta2 release but we&#8217;ve already made a number of changes to the product to reduce the complexity and have [...]]]></description>
			<content:encoded><![CDATA[<p>Vittorio <a href="http://blogs.msdn.com/vbertocci/archive/2009/08/04/a-guide-for-enabling-federated-authentication-on-windows-azure-webroles-using-windows-identity-foundation.aspx" target="_blank">posted</a> the first sample in what we hope will be a series that show the use of the Windows Identity Foundation in Windows Azure. As you will observe, it&#8217;s a little clunky on the WIF Beta2 release but we&#8217;ve already made a number of changes to the product to reduce the complexity and have more sample code to do other interesting things.</p>
<p>The biggest issue with the current samples is that we&#8217;re loading Certificates with private keys out of web.config while we wait and hope for additional certificate support from Azure. We don&#8217;t consider this a safe practice for a production site but it is a reasonable compromise to enable you to start prototyping and experimentation with WIF in Azure now.</p>
<p>The next sample will be a simple STS using WCF and WIF together in Azure and we hope to post that as soon as possible after Vittorio gets back from a well deserved vacation.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamic-cast.com/?feed=rss2&amp;p=6</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Reset</title>
		<link>http://www.dynamic-cast.com/?p=3</link>
		<comments>http://www.dynamic-cast.com/?p=3#comments</comments>
		<pubDate>Thu, 16 Jul 2009 07:03:37 +0000</pubDate>
		<dc:creator>herveyw</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.dynamic-cast.com/?p=3</guid>
		<description><![CDATA[Welcome to a blank slate.
]]></description>
			<content:encoded><![CDATA[<p>Welcome to a blank slate.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dynamic-cast.com/?feed=rss2&amp;p=3</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
