VSIX - Visual Studio 2017 扩展的凭据存储位置



上下文:
我正在为 Visual Studio 2017 编写 VSIX 扩展,该扩展需要连接到需要用户身份验证的 REST API。 我决定使用 VSPackage 为我的扩展提供服务。

为了能够连接和验证用户,我想将用户凭据存储在某个地方,它可以是用户名和密码或 OAuth 令牌 - 没关系。

问:
存储 VSIX 凭据信息的最佳位置是什么?

要求:

  • 凭据不应存储为纯文本
  • 不应存储在文本文件中
  • 应该为每个用户存储(我们可以有多个窗口用户,一个窗口用户=一个VS用户
    )
  • 应该在所有正在运行的 Visual Studio 实例中可用
  • 应与VS2017(15.0+)社区,专业版和企业版一起使用

至于现在,我已经在VS的用户设置范围内查看了WritableSettingsStore,但它以纯文本形式存储在注册表中,我不想在此基础上实现自己的安全性

我还试图找到有关IVsCredentialStorageService的更多信息,但它的文档很少,并且缺乏有关如何正确使用它以及它是按用户还是按系统的信息。

您可以使用Windows凭据存储,允许您以安全的方式存储每个用户:https://www.nuget.org/packages/CredentialManagement/

最新更新