Have your own OpenID URL without becoming a provider

  • April 13, 2008
  • Avatar for jacob

Many services, such as AOL and myOpenID, provide OpenID accounts to use on whatever site that accepts them. You simply type in your OpenID url and hit Enter. But what if your given ID was randomly generated, or the username you wanted wasn't available?

I'd like to introduce a less-widely-known feature of OpenIDs: Delegation. Delegation allows you to have another URL point to your real OpenID. The best part? No domain or DNS setup is necessary, and the only knowledge you need to know is how to use HTML.

Open the page that you want your OpenID URL to be. This most likely the index page of a domain name, since you probably want to keep it short. In the <head> section, add the following code:

<link rel="openid.server" href="http://openid.provider/server" />
<link rel="openid.delegate" href="http://original.open.id" />

The first "server" parameter can be found by visiting your provider's site for the server location. AOL users, use https://api.screenname.aol.com/auth/openidServer. myOpenID users can use http://www.myopenid.com/server. Yahoo users are out of luck; Yahoo does not provide the server URL.

If your provider also supports OpenID 2, it is a good idea to add these as well:
<link rel="openid2.provider" href="http://openid.provider/server" />
<link rel="openid2.local_id" href="http://original.open.id" />

Use the same options for server as described above.

Now whenever you want to sign in to a site that accepts OpenID, simply use your new delegated name. The login process will be redirected to your actual provider to sign in, but everyone else will see your domain.

Avatar for jacob Jacob Peddicord

Home » Articles »