- OpenId is open source and can be implemented by anyone.
- In both cases my credentials are held on a third party server.
- The only advantage I can think of for using Microsoft Passport is the reliability of Microsoft.
views:
309answers:
4OpenID is a decentralized authentication system while Passport is centralized.
If you use OpenID, you'll not relying on any single third party provider which can shut down services or act as a big brother or ... because you are using a distributed authentication mechanism.
And you can have much more users sign in easily as all major providers (including Microsoft) are going to support OpenID in the near future. You are not forcing users to create accounts on any OpenID provider. If they want, they can run their own authentication server to sign in to your site.
Passport is tied to one vendor, open ID seems to me to be a phishing nightmare waiting to happen.
I would say use open ID for single sign on where the security isn't vital (blog/forums/etc), and something more like microsoft cardspace for things where security is more important (ecommerce)
http://dotnetslackers.com/articles/security/microsoft_cardspace_getting_started.aspx
If you use OpenID, you can choose who your backend authentication provider is and change it at will. If you have your own web page, then a bit of code at the top can point to your authentication provider. If you don't like that one any more, change it to something else.
Also, if you prefer, you can run your own OpenID authentication provider. Then your authentication credentials aren't held by anybody else at all.
Microsoft Passport only supports username/password authentication. Lots of OpenID Providers support Cardspace login, X509, or other phishing resistant means. That means that your OpenID can actually be more secure than MS Passport.