This is one of the results of Lovasz' "Steinitz representations of polyhedra and the Colin de Verdière number".
The condition is similar to the equilibrium condition on the plane, only this time the sum of the forces at each vertex must not be zero but collinear with the radius-vector of the vertex: $$ \sum_j w_{ij}(p_i-p_j) = c_i p_i $$ Given a collection of weights $w_{ij}=w_{ji}$ satisfying the above condition, we can construct a dual polyhedron with faces $F_i$ orthogonal to the radius-vectors $p_i$. Namely, note that $$ \sum_j w_{ij} (p_i \times p_j) = p_i \times \sum_j w_{ij} p_j = 0 $$ Therefore for every $i$ the vectors $w_{ij} (p_i \times p_j)$ form a closed polygonal line in a plane orthogonal to $p_i$. This will be our face $F_i$. These faces can be fitted together to form a polyhedron. The polar dual of this polyhedron has the desired combinatorics, and its vertices are multiples of $p_i$.
If all weights $w_{ij}$ were positive, the resulting polyhedron is convex. Otherwise self-intersections can happen. Is this bad or good, depends on your situation.