Brown's solo home run in the eighth inning closed out the scoring and put an end to the Rockies' nine-game losing streak.
Tyler Chatwood (5-5) allowed two runs on three hits over 5 2/3 innings and was credited with the win. Rafael Betancourt stranded two Arizona runners in the ninth to earn his 30th save.
Trevor Cahill (12-12) allowed three runs -- two earned -- on nine hits and struck out six over six innings in the loss.
Jason Kubel drove in Arizona's two runs with a home run in the fourth inning.