Dortmund defend the title and have now won the trophy a record six times, moving past Bayern's total of five.
Jurgen Klopp's side made much of the early running at the Signal Iduna Park and they broke through the Bayern backline at the midway point of the first half.
Mkhitaryan drove forward from midfield and found the space to swipe home with his left foot after an attempted through-ball had been diverted inadvertently back into his path by Munich defender David Alaba.
Bayern then suffered a blow on the half-hour mark when Javi Martinez was forced off with what appeared to be a serious injury - possibly a torn anterior cruciate ligament.
Dortmund put the game to bed just after the hour mark when Aubameyang played a one-two with Lukasz Piszczek outside the box before charging into the area and powerfully heading into the corner after Piszczek managed to dig out a cross on the byline.
Mkhitaryan and Ciro Immobile could have put further gloss on the result late on, but both missed chances to increase the lead.
The Bundesliga season begins later this month, with Dortmund hosting Bayer Leverkusen in their opener while Pep Guardiola's Bayern welcome Wolfsburg to the Allianz Arena.