如何存储附加数据或将附加数据与 PasswordCredential 相关联?
How do I store or associate additional data with a PasswordCredential?
我的 UWP 应用程序使用多个帐户登录到多个 Web 服务。每个都包含一个 URL、密码和用户名以及其他信息,例如开发人员密钥等。我想将它们安全地存储为分配给 Windows 用户帐户的漫游设置。
UWP 的 Credential Locker 似乎可以安全地存储凭据部分、用户名和密码。它还与用户一起漫游,我可以忍受它的 10 个凭据存储限制(Credential Locker)不幸的是,似乎没有明确的方法可以使用唯一 ID 将其包含或关联到我的帐户:
//
//Add a credential to PasswordVault by supplying resource, username, and password
//
Windows.Security.Credentials.PasswordVault vault = new Windows.Security.Credentials.PasswordVault();
PasswordCredential cred = new PasswordCredential(InputResourceValue.Text, InputUserNameValue.Text, InputPasswordValue.Password);
vault.Add(cred);
PasswordVault 需要用户名、资源字符串和密码。虽然我可以使用用户名检索凭据,但不能保证它是唯一的。尽管资源密钥是唯一的,但尚不清楚它是否标识实际凭据或其容器。
关于如何解决这个问题有什么想法吗?
不同的应用程序对此使用不同的方法。有些应用程序有一个单一的资源名称,如AppName
,然后使用UserName
存储不同种类的"keys",所以它们有AccessKey
、Password
等
另一种方法是使用不同的 Resource
值,例如,对于 AppName.Facebook
、AppName.Local
等不同的身份验证提供程序,使用 UserName
作为用户名密码或访问令牌的密码。
最后 - 因为您不受存储在 Password
中的字符串类型的限制,您可以创建一个包含多个属性的复杂类型,例如在存储之前用 JSON 序列化它进入密码库。这样您就可以通过一个条目存储更多信息。
我的 UWP 应用程序使用多个帐户登录到多个 Web 服务。每个都包含一个 URL、密码和用户名以及其他信息,例如开发人员密钥等。我想将它们安全地存储为分配给 Windows 用户帐户的漫游设置。
UWP 的 Credential Locker 似乎可以安全地存储凭据部分、用户名和密码。它还与用户一起漫游,我可以忍受它的 10 个凭据存储限制(Credential Locker)不幸的是,似乎没有明确的方法可以使用唯一 ID 将其包含或关联到我的帐户:
//
//Add a credential to PasswordVault by supplying resource, username, and password
//
Windows.Security.Credentials.PasswordVault vault = new Windows.Security.Credentials.PasswordVault();
PasswordCredential cred = new PasswordCredential(InputResourceValue.Text, InputUserNameValue.Text, InputPasswordValue.Password);
vault.Add(cred);
PasswordVault 需要用户名、资源字符串和密码。虽然我可以使用用户名检索凭据,但不能保证它是唯一的。尽管资源密钥是唯一的,但尚不清楚它是否标识实际凭据或其容器。
关于如何解决这个问题有什么想法吗?
不同的应用程序对此使用不同的方法。有些应用程序有一个单一的资源名称,如AppName
,然后使用UserName
存储不同种类的"keys",所以它们有AccessKey
、Password
等
另一种方法是使用不同的 Resource
值,例如,对于 AppName.Facebook
、AppName.Local
等不同的身份验证提供程序,使用 UserName
作为用户名密码或访问令牌的密码。
最后 - 因为您不受存储在 Password
中的字符串类型的限制,您可以创建一个包含多个属性的复杂类型,例如在存储之前用 JSON 序列化它进入密码库。这样您就可以通过一个条目存储更多信息。