Chances were few and far between in a disappointing first half, with both sides unable to string more than a couple of passes together.
It became a match of fouls and free-kicks with neither side able to make the most of their set-pieces and the goalkeepers were virtual spectators.
The crucial goal came just before the break. Robert Snodgrass was awarded a controversial free-kick after referee Andre Marriner adjudged he had been fouled on the edge of the area by Andy Wilkinson, who went into the book. His curling free-kick found his former Leeds United team-mate Johnson who headed the ball into the back of the net.
Stoke were unhappy about the goal but hadn’t contributed to the game, their tactic of launching the ball up to Peter Crouch often falling short.
The visitors were slightly improved after the break with substitute Kenwyne Jones creating a couple of chances which he and Crouch were unable to convert. However, they lacked a real cutting edge and Norwich were comfortably able to hold on to claim the win.
The three points move Norwich above Stoke to 14th in the table and stretches their unbeaten run to four games. The Potters, meanwhile, are without an away win in the league in 15 games and slip to 15th.
Rangers centre-back Russell Martin will miss Scotland's friendlies against Costa Rica and Hungary through injury.
Jonathan Walters is ready to continue his Republic of Ireland career when he returns to full fitness, according to Martin O'Neill.