After reading & responding to Ashish’s thoughts on the recently changed Microsoft name for InfoCard (now CardSpace), I’ve gone back and read some of my own pre-name-change blog entries, and it turns out that after blathering away about how articles (the, a) made all the difference, I wasn’t even consistent with my own usage.
I naively thought, ‘Hey, why don’t I just quickly write out what I mean when I use these terms, so that I am at least consistent in my own writings’.
Ha. Yeah right.
Turns out that attempting to exactly define things raises more questions than it answers. For example, in order to differentiate between the Identity Metasystem and an Identity Metasystem, I first have to explicity state what an Identity Metasystem is! I have my own understanding of what that is, but is that understanding definitive? Probably not – and do I really want to publish a poorly thought-out definition on the big ol’ internet? Nope. Well, so much for ‘quickly writing things out’.
Next comes the term “Identity Selector”. Does the presence of such a term automatically define the process of using that Identity Selector as ‘identity selection’? I’ve never used that term, but it occurs to me that it would be nice to have a term to refer to that process. Can I just make it up? Who knows.
After that, I define Identity Provider (IdP) and Relying Party (RP) – but I’d like to restrict the meanings of those terms to the exact functionality of ‘the Identity Metasystem’. In reality, those terms are used in many other technical contexts. Do I need to qualify the names in order to let people know that I’m specifically talking about entities that do very specific things like kick off WS-* enabled Identity Selector clients and communicate security policies via WS-*? If so, how do I qualify them? ID-WSF has Identity Providers, Relying Parties, and Identity Selectors too, I think. How do I differentiate without writing long verbage every single time? Do I abbreviate like this: IM-IdP, IM-RP, IM-IS, ID-WSF-IdP, ID-WSF-RP, ID-WSF-IS? What about the IdP and RP in an ADFS context? Where do you limit the scope, I ask? Oh, the humanity…
I hate getting all uptight about naming. I know I could continue with my current semi-ambiguous names; anyone who would find this blog remotely interesting is probably already familiar with the concepts. Still, it makes me feel that if I can’t definitively state what it is I’m talking about, then perhaps I shouldn’t be talking about it in the first place.
I have to admit – I’d much rather go play with the protocols… just writing this much about it has me contemplating an alternate future career in macrame :-)
Maybe someday I’ll be brave enough to take the naming bull by the horns.