It's safe to say that few IT pros enjoy maintaining compliance with software licensing agreements. Some of us put in enough effort to ensure that we'll emerge from an audit relatively unscathed, but few delve into the details to know precisely what we can and can't do with the software we've purchased -- er, licensed. In fact, I'd hazard a guess that not one person reading this has actually read the license agreements for all the software they run.
However, as the cloud becomes more popular and more of us start to use it, we may need to all get used to reading the fine print. Although the problems are more apparent in larger enterprise-class software suites, the license agreements for a wide range of software today actually prohibit their use on hardware that isn't owned by the licensee -- effectively ruling out use in the cloud. Worse still, others prohibit use in virtualized environments or impose potentially crippling licensing costs should you want to run in a virtualized environment -- cloud or not.
The fact that these kinds of license restrictions exist isn't always apparent to the users and IT pros installing them. As most people who've used the cloud or virtualization know, pretty much any kind of software without inherent hardware dependencies will run just about anywhere. Chances are that the software and the license key you've paid for will work whether you're installing it on a "legal" bare-metal server or an "illegal" cloud-hosted virtual instance.