This is something they handled really well in Ultima VII, and I wish would have carried over into newer games. There were real moral consequences for your actions - you could steal from pretty much anyone if you had the skill to do so. However:
* people would call the guards if they caught you
* your companions might leave you if you stole too much or from the wrong types of people
* people you stole from might start attacking you, leaving you to decide if you should run away or fight back
Conversely, some of the hardest places to steal from were really worth it; this meant that, as a previous poster mentioned, it would be worthwhile to steal from the royal armory, but not from a peasant's hut (at least, not after the first few hours of the game).
This also meant that they didn't have the fake "choice" between good and evil paths found in most modern RPGs - where, sure, you can be evil, but you simply won't have as many available side quests or companions if you are (which strikes me as basically moralising to the player - see what happens when you aren't good, hmmm?). Providing you with an evil choice only makes sense if you get some benefit out of choosing that path.
Incidentally, this is one of the reasons I'm looking forward to The Old Republic - finally, you can roleplay more than just a Knight In Shining Armor or a Generally Good Guy Who Sometimes Does Crazy Chaotic Things.