我一直在开发一个使用Azure移动服务存储帐户和其他信息的应用。我正在为用户添加一个选项,以便在本地保存/记住用户帐户,这样他们就不必每次都输入他们的电子邮件和密码。该应用程序将用于业务设置,并且多个用户将能够将他们的帐户保存到同一设备/计算机以实现快速用户切换,就像Windows 8 / 8.1具有多个用户帐户设置一样。我需要一个本地存储或数据库来保存帐户。它将存储加密密码,并且还可以选择将PIN添加到已保存的帐户。我已经研究了我熟悉的sqlite,但是有更好的方法吗?
答案 0 :(得分:0)
不是真的。如果你有几十个用户,Sqlite会是谨慎的,因为它会更容易管理。如果你只希望有2-10,你可能想尝试将它们存储在一个文件中并像这样保护
private static async Task<string> ProtectAsync(string data)
{
var clearBuffer = CryptographicBuffer.ConvertStringToBinary(data, BinaryStringEncoding.Utf8);
var provider = new DataProtectionProvider(Scope); // Scope being machine or user
var encryptedBuffer = await provider.ProtectAsync(clearBuffer);
return CryptographicBuffer.EncodeToBase64String(encryptedBuffer);
}