Yes to answer your question at the end. People getting a free ride off of tax payers should not be on drugs. IMO at least, and im sure im in the majority of what real americans would want.
Real Americans? I hear that term quite a lot in political discourse nowadays, but what are they? If you mean citizens, then yeah, a majority probably would agree with that misguided sentiment. However, it seems that many who use the term "real americans" don't consider those that use drugs to be in that group. Many Americans do in fact use drugs, but that doesn't make them any less American than the rest of us born/naturalized here. That I find disingenuous.
So what exactly is the objection and/or moral hazard here? Not all drugs even cost money to obtain such as MJ, so the moral hazard isn't necessarily that other taxpayers subsidize that drug use. (All you need is dirt and water down here in the South, plus the starter seeds. It can perpetuate itself with only the input of your own labor, similar to growing tomatoes, etc.) Somehow I don't think that a statistically significant amount of the money spent on social programs is spent on illegal drug use. This drug testing scheme seems like a solution in search of a problem, one that may possibly run afoul of the constitutional protections against unreasonable search.
Look, I'm against the use of all the illegal drugs mentioned so far in this thread. I've never felt the need to try any myself, nor will I ever. But to try and incorporate this type of oversight into programs that favor those in dire economic straits seems just plain silly. It smacks of trying to label poor people as drug users and of a sense of false moral superiority.