Ulster boosted their hopes of earning a play-off place as they took a bonus-point win over a battling Dragons side in Friday's Pro12 clash at Ravenhill.
Jason Tovey's early penalty gave the Dragons a deserved lead but tries from Robbie Diack and Ruan Pienaar helped Ulster move 15-9 ahead by half-time.
Tovey's fourth penalty cut the margin before Craig Gilroy's 51st-minute try.
Further Dragons pressure failed to produce a score and Stefan Terblanche's late try secured the bonus point.
Ulster had to make a late change to their line-up with Paddy Wallace having to dash to Paris to join the Ireland squad because of doubts over Jonathan Sexton's fitness, and Nevin Spence was drafted in.
The Dragons bossed the opening minutes and threatened the Ulster line before Ian Humphreys' interception had the visitors having to scamper back to defend in their own 22.
Tovey's opening penalty put the Dragons ahead on 12 minutes but the lead was shortlived as Diack ran from the back of a line-out to take a short throw from Andi Kyriacou before charging over for Ulster's first try.
Ulster were suddenly 12-3 up two minutes later as a glorious flowing move from their own 10-metre line saw quick hands from at least nine players before Pienaar ran in the try past the breached Dragons defence.
To their credit, the Dragons kept battling and two Tovey penalties left only three between the sides before Pienaar had the final scoring say in the opening period to extend Ulster's advantage to 15-9.
Tovey's fourth successful penalty after the break cut Ulster's lead to three in the 50th minute but the home side notched their third try immediately after the restart as Gilroy finished off another flowing move.
The Dragons responded with further pressure and Ulster had both Willie Faloon and Ian Whitten sin-binned in the closing 25 minutes of the contest.
However, the visitors lacked the necessary composure to breach the Ulster line and, after Pienaar's 78th-minute penalty ended any slim hopes of a Dragons fightback, replacement Ali Birch's charge set up Terblanche's to notch the bonus-point clinching try in the closing seconds.
Ulster: Adam D'Arcy; Craig Gilroy, Ian Whitten, Nevin Spence, Stefan Terblanche; Ian Humphreys, Ruan Pienaar; Callum Black, Andi Kyriacou, John Afoa (capt); Lewis Stevenson, Dan Tuohy; Michael McComish, Willie Faloon, Robbie Diack.
Replacements: Simon Danielli for D'Arcy 57, Paul Marshall for Humphreys 64, Paddy McAllister for Black 48, Nigel Brady for Kyriacou 55, Tim Barker for Stevenson (73), Ali Birch for Faloon (64).
Not Used: Macklin, Allen.
Newport Gwent Dragons: Martyn Thomas; Jamie Smith, Adam Hughes, Ashley Smith (capt), Aled Brew; Jason Tovey, Wayne Evans; Nathan Williams, Steve Jones, Nathan Buck, Adam Jones, Rob Sidoli, Jevon Groves, Darren Waters, Gavin Thomas.
Replacements: Andy Tuilagi for J Smith 68, Joe Bedford for W Evans 68, Rhys Buckley for S Jones 61, Dan Way for Buck 59, Tom Brown for A Jones 60, Hugo Ellis for Waters 74.
Not Used: Price, Robling.
Referee: Carlo Damasco (Italy)
Assistant Referees: Paul Haycock, David Keane (both IRFU)
Citing Commissioner: Denis Templeton (IRFU)
TMO: Peter Ferguson (IRFU)