我正在开发一个桌面应用程序,我希望用户只需在安装后登录一次。凭证/代币应该如何存储?
如果你正在使用UWP应用程序,你可能想要使用Credential locker,你可以找到样本来帮助你入门here
我建议使用Windows.Security.Credentials:
PasswordVault vault = new PasswordVault();
PasswordCredential credential = null;
try
{
credential = vault.FindAllByResource("SomeName").FirstOrDefault();
}
catch
{
}
if (credential!=null)
{
string username = credential.UserName;
credential.RetrievePassword();
string password = credential.Password;
}
else
{
try
{
//login
credential = new PasswordCredential("SomeName",username,password);
vault.Add(credential);
}
catch
{
}
}
您可以使用密码属性作为密码或令牌。