Both sides showed huge commitment in a passionate encounter
Sale 8 (0)
Try: Fernandez Lobbe
Ospreys 18 (15)
Tries: Tandy, Terblanche
Pens: Hook, Henson
The Ospreys beat Sale in a breathless game to finish second in Pool Three, but Leicester's win in Munster means they miss out on a quarter-final spot.
The Welsh side raced into a 15-0 lead after 15 minutes with tries from Steve Tandy and Stefan Terblanche and five points from the boot of James Hook.
Sale finally got on the board through Juan Martin Fernandez Lobbe's converted try after 53 minutes.
But the Ospreys added a Gavin Henson penalty and held out to clinch victory.
The failure to secure a bonus point meant they could not claim a best runners-up spot ahead of Northampton or Biarritz, though, and the Tigers' memorable victory at Thomond Park left Munster taking the other best second-placed spot.
Both sides started playing with pace and adventure but that played into the Ospreys' hands.
Their first try came after just five minutes when Tandy finished off from close-range after a sweeping Ospreys attack following a line-out.
Hook missed the conversion but was on target soon after when Terblanche ran straight through the Sale team to score under the posts after a Sharks counter-attack floundered.
A penalty from the young fly-half took them 15-0 up and although Sale then lifted their game their momentum was hit when Sebastien Chabal was yellow carded for stamping with the Sharks just a yard short of the Ospreys line.
Both sides had already had a man apiece sin-binned earlier in the game for fighting and 10 minutes into the second half the Ospreys lost Hook when he was yellow carded for cynically halting a threatening Sale attack.
With their increasingly vociferous crowd roaring them on the hosts immediately took advantage as Fernandez Lobbe went over from a slick tap penalty move, with Daniel Larrechea adding the extras.
Henson edged the Ospreys into an 11-point lead five minutes later and although Sale launched a series of powerful attacks the visitors held out to claim a low-scoring but hugely entertaining encounter.
Mike Powell was stretchered off late on with a neck injury, while the Ospreys must now wait and see if Leicester can displace them as one of the two best runners-up.
Stade Francais wrapped up the group when they hammered Italian minnows Calvisano 47-6.
Sale director of rugby Philippe Saint Andre criticised referee Alain Rolland:
"We need consistency in the Heineken Cup. It was completely different to refereeing in the Premiership, with offsides and killing the ball.
"When you play 16 against 15, it's not easy. I know he is an international referee but he had a bad day."
Ospreys coach Lyn Jones defended Rolland:
"I would never criticise the ref. They have a job to do and they make decisions as they see fit. Alain Rolland is one of the best referees in the world.
"We came here to win and we're happy to do that. The defence was quite magnificent throughout the game."
Sale: Larrechea; Hanley, Mayor, Taylor, Ripol; Wigglesworth, Foden; Faure, Bruno, Turner, Jones, Schofield, J Fernandez Lobbe, Lund, Chabal.
Replacements: Bell for Larrechea (68), Roberts for Faure (28), Titterrell for Bruno 63), Stewart for Turner (63), Day for Schofield (61), Hills for Chabal (80).
Not Used: Bryant.
Sin Bin: Schofield (16), Chabal (32).
Ospreys: Terblanche; Walker, A Bishop, Henson, S Williams; Hook, Marshall; D Jones, B Williams, A Jones, Cockbain, A Jones, Lloyd, Tandy, R Jones, Powell.
Replacements: Selley for S. Williams (54), Bennett for A. Jones (70), Connor for A. Jones (80), Powell for Lloyd (55), Pugh for Tandy (63), Spice for Powell (80).
Not Used: James.
Sin Bin: Lloyd (16), Hook (50).
Referee: Alain Rolland (Ireland)