« - »

It all starts with Identity

2 February 2008

Like most people who build things, I have a list of things in my head that I would like to create for one reason or another. I always have these grand visions of useful tools that are simple and elegant and stand completely alone and can be loosely couple to other, similar simple and elegant tools that also stand completely alone, ready to be loosely coupled to yet even more simple and elegant tools, ad nauseam. Unfortunately, nothing really stands completely alone.

The one thing that comes up over and over again, is “Who is the current user?” There is a whole world of complexity surrounding issues like identity, authentication, single sign-on, and any attempt to come up with some kind of universally recognized indicator of who it is that is currently running the mouse and the keyboard. I don’t even want to think about solving all of those problems, but in order to make something that is actually useful outside of a very specific environment with very specific rules, you have to have some universal way to understand who’s clicking the buttons on the page.

Like all relatively new concepts, it has its own share of issues, but OpenID looks to me like it is the closest thing out there to what I would like to see available in this area. With OpenID, everyone is identified by a URI. Now, isn’t that RESTful! I like it. In fact, I decided that I better go get one, if for no other reason than to be able to use it for testing. I got mine from myOpenID:


It was easy. You can get one, too. Just go to https://www.myopenid.com/signup and fill out the simple form. Another cool thing about OpenID is that you don’t have to use the URI that was issued to you as your public URI if you don’t want to. There are instructions on the myOpenID web site that show you how to modify the head on any HTML document to make it a proxy for your OpenID. If you view the source for this page and look into the HEAD section of this HTML document, you will find these lines of code:

<link rel="openid.server" href="http://www.myopenid.com/server"/>
<link rel="openid.delegate" href="http://restafarian.myopenid.com/"/>
<link rel="openid2.local_id" href="http://restafarian.myopenid.com"/>
<link rel="openid2.provider" href="http://www.myopenid.com/server"/>
<meta http-equiv="X-XRDS-Location"


Of course, I haven’t tried it out yet to see if it will actually work, but it’s in there! So, theoretically, now my OpenID is:


Is that cool, or what?!


Comments are closed.

Sorry, the comment form is closed at this time.