Identity in .NET 4.5–Part 1: Status Quo (Beta 1)
- by Your DisplayName here!
.NET 4.5 is a big release for claims-based identity. WIF becomes part of the base
class library and structural classes like Claim, ClaimsPrincipal and ClaimsIdentity even
go straight into mscorlib. You will be able to access all WIF functionality now from
prominent namespaces like ‘System.Security.Claims’ and ‘System.IdentityModel’ (yay!).
But it is more than simply merging assemblies; in fact claims are now a first class
citizen in the whole .NET Framework. All built-in identity classes, like FormsIdentity for
ASP.NET and WindowsIdentity now derive from ClaimsIdentity. Likewise
all built-in principal classes like GenericPrincipal and WindowsPrincipal derive
from ClaimsPrincipal. In other words, the moment you compile your .NET application
against 4.5, you are claims-based. That’s a big (and excellent) change.
While the classes are designed in a way that you won’t “feel” a difference by default,
having the power of claims under the hood (and by default) will change the way how
to design security features with the new .NET framework. I am currently doing a number
of proof of concepts and will write about that in the future.
There are a number of nice “little” features, like FindAll(), FindFirst(), HasClaim() methods
on both ClaimsIdentity and ClaimsPrincipal. This makes querying
claims much more streamlined. I also had to smile when I saw ClaimsPrincipal.Current (have
a look at the code yourself) ;) With all the goodness also comes a number of breaking
changes. I will write about that, too.
In addition Vittorio announced
just today the beta availability of a new wizard/configuration tool that
makes it easier to do common things like federating with an IdP or creating a test
STS.
Go get the Beta and the tools and start writing claims-enabled applications! Interesting
times ahead!