Deception at times is necessary in the news media. Some people won't tell the truth for anything and must be deceived in order for the truth to come out. Whether that makes it moral is hard to say. One person being decieved is better than an entire audience of readers not knowing the truth about an important issue. Undercovering reporting also can also be necessary. Many important stories in the past would have gone undetected if it wasn't for undercover investigating. Many people can't be trusted to tell the truth. They go around deceiving people maybe they deserve to be deceived once in a while in if its for reason that is. In the service of a good cause I say go ahead deceive away.
Now Stephen Glass wasn't working for a good cause. He was working to inflate his ego with the praise from other people. Maybe he was a good story teller but a lot of people can tell good stories if they completely make them up. It's more work to find a truthful story and report that well than to completely fabricate a story. He was an enormous coward in every way imaginable.