There are only $10^{10} \approx 2^{33}$ 10-digit numbers.
Therefore, brute-forcing seems always possible, except if evaluating the hash function is very slow.
But there is another problem: a hash table associating the hash of any swedish social security number to its security number requires only about 100 GB, since each social security number can be encoded using 5 bytes.
And such a hash table would enable to invert the number from the hash very quickly.
Since this big hash table needs only to be computed once, the scheme seems highly insecure.
Edit: In the original version of the post, the size of the hash table was not computed correctly.
100 GB is a rough approximation of the size of the hash table assuming elements (social security numbers) are encoded using 5 B, and that storing 10 G such elements takes about 2*5*10 GB.