I'm looking at ASP.NET Identity for a website but the user administrative panel will not be part of the website, but rather rolled into a separate desktop application.
Boilerplate code for using ASP.NET Identity seems to involve:
var dataProtectionProvider = options.DataProtectionProvider;
if (dataProtectionProvider != null)
{
manager.UserTokenProvider =
new DataProtectorTokenProvider<ApplicationUser>(dataProtectionProvider.Create("ASP.NET Identity"));
}
where options is passed in from the OWIN framework, and manager is the UserManager. The point seems to be to generate an implementation of IDataProtector that implements some sort of reversable encryption.
The default implementation here relies on a machine key which won't be the same across all machines. I would strongly prefer not to get into doing a self-signed cert and getting it trusted among all client machines.
What is this for? Presumably it has nothing to do with one-way hashing of passwords. Other googled references seem to indicate it has something to do with resetting passwords, but I can't find any detailed reference as to what exactly is being encrypted.
It's hard to figure out what an appropriate implementation of this interface would be if I can't find documentation on what exactly it is trying to protect. Any ideas?