PDC Microsoft's notorious Hailstorm project, announced in 2001 but scrapped before it was launched, sought to make Passport the core of the whole world's web identity. In 2008, major web properties like Google and Facebook are still fighting identity wars.
"Microsoft just gave that up," Microsoft's chief architect of identity Kim Cameron said at Microsoft's Professional Developers' Conference (PDC). "That's the importance of the announcements we gave yesterday. Microsoft said 'no'."
Those announcements, made at the show, were about the identity product codenamed Geneva, which includes a server, a code library for applications, and the CardSpace client buried in Internet Explorer 7 and 8.
Let's start with CardSpace. It was released in 2006 and widely ignored, even by Microsoft. I had assumed it was destined to join Bob in the Microsoft graveyard. That would be a shame, because CardSpace is damn clever, and reflects Cameron's work on the Laws of Identity, which like Isaac Asimov's Three Laws of Robotics are intended to prevent technology from doing us harm.
CardSpace has its own user interface, built into the browser, so it is hard for a phishing site to fake it and steal credentials. When you log in, the server that wants to know who you are - Relying Party, in identity lingo - requests a security token. CardSpace passes on the request to the identity provider, normally a directory of some sort, and at this point, the user gives credentials such as username and password, or something better, to the identity provider.
The directory issues the token, complete with the requested information in encrypted form, and sends it back to CardSpace, which then forwards it to the Relying Party. Wins: no phishing, only the information requested is sent, no actual credentials are sent to the Relying Party, and the user is in control. The security token cannot easily be faked, since only the real identity provider can sign it with the right digital certificate.
If the technology is so great, why has nobody used it? One reason is that Microsoft only delivered the client. Creating the necessary Security Token Service (STS) for an identity provider was hard.
"We've tortured developers," said Cameron. "We ourselves didn't have any server software that would work with it. There was no product on the back end. Now our whole marketing team is going to take this out.
Microsoft delivers the missing piece
Geneva Server is this missing piece. It makes any Active Directory an STS for CardSpace. Geneva will also interoperate with other identity providers that support WS-Trust or SAML 2.0, the two key standards in this space. SAML 2.0 support is new.
"One more barrier is gone when it comes to you and me federating," said Cameron. The significance of federation is that applications can work with multiple identity providers. Geneva lets you create web applications that authenticate users against both your directory service, and those of partners, even if the web server is outside the corporate network.
Microsoft has announced its own Federation Gateway, which lets organizations sign into Live Services using their own Active Directory, using a cut-down version of Geneva called Microsoft Services Connector.
Geneva will not necessarily sweep all before it. One snag is that CardSpace clients are not common outside IE, though there is an Information Card Foundation promoting broader adoption. Another problem is that the Geneva Framework, a library that simplifies development, is only for .NET.
Why doesn't Microsoft just use OpenID? "We've been big supporters of OpenID," Cameron said. "It's just another federation protocol. It doesn't use cryptography, it just uses DNS. That means it's subject to all the attacks that DNS is subject to.
"That's OK in certain environments. OpenID because of its nature is phishable. That raises people's consciousness of what is possible. We can also give them solutions like CardSpace."
He added Microsoft is enabling all its Live ID accounts to act as OpenID accounts. What about accepting OpenID log-ins? "That's under investigation. We're doing it already with HealthVault but that's with OpenID providers who follow Kim's rules. They provide the option of strong authentication.
Geneva is set for full release in the second half of 2009. It has the potential to solve real problems in the enterprise and deserves more attention than Microsoft has given it at this PDC.
The question now: Will the company really give Geneva the resources, the marketing, and the public adoption on Microsoft's own properties that it needs to succeed? Or will it continue to languish like the original CardSpace? Sometimes Microsoft is its own worst enemy. ®