Tuesday, June 7, 2011

Enterprise as F@!#

Occasionally I come across software who's approach can only be described as "Enterprise as F@!#". My latest experience falling into this category is Shibboleth, the uber-lith of federated authentication schemes. The protocol is like technical turducken: auth payload -> encrypt + sign -> wrap in XML, base64 encode, and bake into some HTML.

My task is to come up with sensible Shibboleth implementation strategies for Ruby on Rails, PHP, and .NET across 20 vhosts on 6 servers (both IIS and Apache) (my solution to this is on Github). To clarify the enterprise as f@!# attitude (EAF), let's illustrate what a conversation with embodiment of this attitude would look like:

Programmer: How do I setup a server to comply with the protocol?
EAF: Create a pile of XML and email it to me.

Programmer: What should I include in the XML?
EAF: Figure it out, if its wrong, I won't reply to you. Ever. Don't forget to encrypt some stuff.

Programmer: Where should I go for help?
EAF: Why would you need help? Follow the instructions.

Programmer: Where are the instructions?
EAF: The internet.

Programmer: Thanks.
EAF: (no comment)