Stade powered away from the Ospreys in the final quarter
Stade Francais: (9) 27
Tries: Mirco Bergamasco, Roncero
Pens: Skrela (3), Beauxis
Ospreys: (7) 14
Tries: Parker, Byrne
Cons: Henson, Hook
The Ospreys' challenge faded in the final quarter as a lacklustre Stade Francais claimed a Heineken Cup win.
Sonny Parker scored an excellent early try as the visitors started brightly, but Gavin Henson missed four kicks.
David Skrela's three penalties gave Stade the half-time lead, and after the break Mirco Bergamasco's quick strike from turnover ball took them away.
Rodrigo Roncero's controversial try meant that Lee Byrne's late effort was slim consolation to the wasteful Welsh.
With Stade's guest Jonah Lomu watching, it was the Ospreys - missing their star wing Shane Williams to a ear infection - who started brightest at the Stade Jean Bouin.
We had chances to put them away, but we made too many errors at crucial points in the game
Ospreys scrum-half Justin Marshall
But repeated thrusts at the French league leaders' line were repelled and it was Stade outside-half Skrela who opened the scoring with a 10th-minute penalty.
An aimless Henson up-and-under was dropped by home full-back Juan Martin Hernandez in his own 22, and from the central scrum the Ospreys struck.
Justin Marshall dummied right, but Ryan Jones went left and delivered a fine pass to Henson, whose switch move with Parker sent the centre in for the opening try.
A botched Marshall box kick allowed the home side to fire straight back, but the unfortunate Hernandez lost the ball as he crossed the line following a powerful drive.
Parker scored in a confident opening by the Ospreys
Indiscipline cost the visitors as Steve Tandy dragged down a driving maul to give Skrela his second penalty.
Unnecessary use of the boot on the floor then saw Filo Tiatia sin-binned, Skrela landing the resultant penalty - his last before departing with a calf problem - to take his side back in front.
The 14-man Ospreys - who have never won in France - impressed and dominated territory, but two missed drop goals from Henson meant it stayed 9-7 at the break.
Hernandez and Nikki Walker each failed with drop goals early in the second period, and Henson missed two penalties, the second after Marshall was stopped inches short of a try.
The visitors were made to pay for their profligacy, Lionel Beauxis notching a penalty before Christophe Dominici set off on a blind-side break from turnover ball.
The veteran wing fed inside to Roncero, who sent Bergamasco under the posts for a converted try.
The kicking was the difference between the two sides
Stade Francais coach Fabien Galthie
Ospreys full-back Byrne failed to gather a dangerous up-and-under, replacement prop Roncero swooping on what looked to be a Stade knock-on for a clear 20-yard run-in.
The Welsh side refused to give up, replacement outside-half James Hook giving a nice touch in midfield and Byrne having the strength to break a tackle for his try.
Back-rower Sergio Parisse then hit an unlikely 30-yard drop goal to round off Stade's 25th win from 26 home Heineken Cup games.
Ospreys scrum-half Justin Marshall:
"We were up against one of the best sides in Europe, but it still hurts that we failed to capitalise on our opportunities.
"We had chances to put them away, but we made too many errors at crucial points in the game.
"There are mixed feelings in the shed, because we were so competitive against such a tough side to beat at home. We just didn't see the job through."
Stade Francais coach Fabien Galthie:
"That was the closest we've been run by a Welsh team here and a very difficult match, my side are very tired.
"The Ospreys are an excellent team, the kicking was the difference between the two sides.
"This is a very challenging group that will go all the way."
Stade Francais: Martin Hernandez, Saubade, Messina, M. Bergamasco, Dominici, Skrela, Albouy, Marconnet, Szarzewski, De Villiers, Auradou, du Plooy, M. Bergamasco, Martin, Parisse.
Replacements: Corleto for Messina (68), Beauxis for Skrela (40), Fillol for Albouy (17), Roncero for Marconnet (59), Blin for Szarzewski (67), M. James for Auradou (57), Samo for du Plooy (78).
Ospreys: Byrne, Walker, Parker, A. Bishop, Mustoe, Henson, Marshall, D. Jones, Bennett, A. Jones, Cockbain, Evans, Tiatia, Tandy, R. Jones.
Replacements: Terblanche for Mustoe (78), Spice for Marshall (75), A. Jones for Cockbain (40), Thomas for Tiatia (45). Not Used: B. Williams, James, Hook.
Sin Bin: Tiatia (31).
Referee: Alain Rolland (Ireland).