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

Supersedes #808