我正在评估第三方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资源管理器的功能,提示用户名和密码,然后记住这些。