Make Configuration.BuildSignature() throw when user identity isn't configured

Supersedes #808
We are a bit inconsistent with `can not` vs `cannot`. It seems that `cannot` is currently more popular.