桌面应用程序凭据存储的最佳做法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了桌面应用程序凭据存储的最佳做法?相关的知识,希望对你有一定的参考价值。

我正在开发一个桌面应用程序,我希望用户只需在安装后登录一次。凭证/代币应该如何存储?

答案

如果你正在使用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
    {
    }
}

您可以使用密码属性作为密码或令牌。

以上是关于桌面应用程序凭据存储的最佳做法?的主要内容,如果未能解决你的问题,请参考以下文章

执行 Redshift 复制命令时获取凭据的最佳实践

在片段中调用 getActivity() 以使其不返回 null 的最佳做法是啥? [复制]

数据库凭据以纯文本形式存储可以吗?

在 Java 中存储用户凭据的推荐做法是啥? [关闭]

在 Flutter 应用程序中存储 API 凭据

存储推送通知的最佳做法是啥?离子 3