add public key data mapper type and use in user model