MST uniqueness: Is there a necessary and sufficient condition?

Is there a necessary and sufficient condition for a minimum spanning tree to be unique?

I've searched and found a sufficient condition like this:

If each edge has a distinct weight then there will be only one, unique minimum spanning tree.

But I can't find a necessary condition!

For any graph $G$, let $E'$ be the set of edges such that $e$ is the lightest (not necessarily unique) edge across some partition. $G$ has a unique MST $\iff$ $E'$ forms a spanning tree.
If $G$ has a unique MST, then there are exactly $|V|-1$ edges which appear in every MST. Those edges must be unique lightest edges. Suppose not, and that there is an edge $e$ and $e'$ which are lightest edges across a cut. Then the MST in $G$ is not unique. This means that the edges in the MST are also all of the edges in $E'$, so $E'$ forms a spanning tree.
If $E'$ is a spanning tree, then it has $|V|-1$ edges which connect the graph. This means that every edge must be a unique lightest edge. Suppose not. Then across some edge, there exists $e$ and $e'$ which are both lightest edges, so $E'$ contains at least $|V|$ edges, and is no longer a spanning tree. By the Unique Cut Property, every lightest unique edge must appear in every MST.