I don't think the source of the money really makes that huge of a difference, what matters is how much money any one donor can give and how much money any one party can spend in total. I think I'd rather see caps on individual donations/corporate/union donations and a cap on the total spend allowed.
A cap is likely to result in a far more level playing field in general regardless of where a party's support comes from.
A party with a broad base of support doesn't make for a "good party" as sometimes popular ideas are dangerous. Conversely, a party propped up by corporate interests also may neglect its responsibilities to the population.
It is also important to remember that companies/organizations are run by people, and many companies and those who run them are genuinely "good corporate citizens" just as some unions are "good corporate citizens" - their voices do deserve to be heard as they are critical parts of society and the economy. Blocking them from participating in the political process may have adverse unintended consequences.