Case Keenum threw a pair of touchdown passes, including the go-ahead score on the first play of the fourth quarter, but the guys on the other side of the line were largely responsible for the Vikings extending their winning streak to eight in a row Sunday with a grind-it-out, 14-9 victory over the Falcons.

“It was a hard one,” coach Mike Zimmer said. “We’ve got a good bunch of fighters on this football team, and I think maybe they really believe now.”

Keenum strengthened his hold on the starting job by going 25 of 30 for 227 yards. He hooked up with Jerick McKinnon on a 2-yard scoring play in the second quarter and went to Kyle Rudolph for a 6-yard touchdown on the first play of the fourth quarter , capping an 89-yard drive that consumed more than 8 minutes.

Minnesota (10-2) turned in a stellar defensive effort against a team that led the league in scoring a year ago and seemed to be finding its stride during a three-game winning streak, averaging nearly 32 points.

The Falcons (7-5) were held without a touchdown for the first time since Dec. 13, 2015, when they were blanked 38-0 by Carolina . Ryan’s streak of 30 straight games with a TD pass also ended, going down as the eighth-longest in NFL history.

The league’s reigning MVP, Ryan finished 16 of 29 for just 173 yards — his lowest output since he threw for 172 yards in a 33-10 loss to Seattle in 2013.

“They are a very good defense,” Ryan said. “We knew it was going to be tough sledding at times, but we’ve got to be more productive.”

Jones was held to a pair of catches for 24 yards, one week after he had 12 receptions for 253 yards in a victory over Tampa Bay.

“We know how great a player he is, how talented he is,” Zimmer said. “It’s important that we try to take away some of the opponent’s strengths each week.”

With the win and Detroit’s loss to Baltimore, the Vikings took a four-game lead in the NFC North and kept pace with Philadelphia in the race for the NFC’s top seed. The Eagles (10-1) played at Seattle Sunday night.

The loss could be a crucial one for Atlanta, which came into the day trailing New Orleans and Carolina by a single game in the NFC South. The Saints and the Panthers met later Sunday in a matchup of 8-3 teams. And a win by Seattle would put the Falcons out of position for a wild card.

After Matt Bryant’s third field goal gave the Falcons a 9-7 lead early in the third quarter, the Vikings took control with a bruising drive that included three third-down conversions. Once they flipped ends of the field at the end of the third quarter, Keenum found Rudolph all alone in the back of the end zone for the go-ahead score. The tight end beat cornerback Blidi Wreh-Wilson, who took over with Desmond Trufant held out because of a concussion.

While Rudolph and his teammates celebrated, Wreh-Wilson looked around as though he was expecting help.

Atlanta’s last gasp ended when Bryant missed a 45-yard field goal with 4:58 remaining after the Falcons passed on a chance to go for it on fourth-and-4.

Minnesota held the ball the rest of the game , essentially sealing the victory when Keenum connected with Adam Thielen on a third-down pass that went for 22 yards. The Vikings kneeled down deep in Falcons territory as the clock ran out.

THIRD DOWN DIFFERENCE

The Falcons were leading the league with a 48 percent conversion rate on third down.

They finished 1 of 10 against the Vikings.

Minnesota, on the other hand, converted 6 of 10 third-down chances.

“That really ended up being a big factor in the game,” Zimmer said.

REMEMBRANCES OF `98

McKinnon, an Atlanta native, celebrated his touchdown by breaking into the “Dirty Bird,” the end-zone dance made famous by Jamal Anderson during the Falcons’ run to the Super Bowl in 1998.

“It was a tribute to my hometown,” he said. “I grew up watching the Falcons. I’ll give myself an `A’ for it.”

The Falcons also remembered that season by honoring Hall of Fame kicker Morten Andersen, whose 38-yard field goal in the NFC championship game gave Atlanta a stunning 30-27 overtime victory over heavily favored Minnesota.

INJURY REPORT

Vikings: TE David Morgan went out in the first quarter with a concussion. He was the top backup to Rudolph.

Falcons: G Andy Levitre sustained a triceps injury in the first quarter and didn’t return. Ben Garland took his spot on the offensive line. In addition to Trufant, the defense was missing nickel back Brian Poole (back), who appeared to make progress during the week but was downgraded to questionable on Saturday.

UP NEXT

Vikings: Their third straight road game will be against another NFC South opponent, Carolina.

Falcons: Face a short turnaround before hosting a must-win Thursday night game against their bitter division rival, the Saints.