equation solving – Unexpected Output from Solve with assumptions on symbolic Exponents

Why doesn’t Mathematica output $a = b^{frac{1}{x}}$ for the input below?

Solve[{a^x - b == 0, x > 0}, a, Reals]

Instead I get an error from Solve:

This system cannot be solved with the methods available to Solve.

It works if I specify $a>0$, but why is that necessary?