如何将网络凭据保存到Windows凭据缓存/保险库?

时间:2012-03-21 19:48:10

标签: .net credentials networkcredentials defaultnetworkcredentials credentialscache

我正在评估第三方API WebDAV.NET,以获取对SharePoint网络文件夹的访问权限。此API接受标准.Net网络凭据,并提供两个选项:

ICredentials credential = CredentialCache.DefaultCredentials;

NetworkCredential credential = new NetworkCredential("[user]", "[password]");

如果我通过Windows资源管理器连接到网络位置(Web文件夹)并且需要身份验证,Windows将自动提示我输入用户名和密码。然后,我可以选择记住凭据,Windows将存储它们。完成此操作后,我可以使用上面CredentialCache.DefaultCredentials上面的第一个方法使用此第三方API连接到SharePoint Web文件夹。

但是,如果我没有先通过Windows资源管理器连接,我可以使用第二个选项并提供用户名和密码。但是,这些凭据不会被保存,也不会被记住。

我不想创建自己的机制来保护和存储这些凭据。我想要做的是提示用户输入他的用户名和密码,创建网络凭据并将其存储到Windows保险库,以便我可以转而使用第一种方法CredentialCache.DefaultCredentials连接到SharePoint网络文件夹。

我基本上想要完成Windows资源管理器的功能,提示用户名和密码,然后记住这些。

0 个答案:

没有答案