我正在开发一个wpf桌面应用程序,它只允许任何用户使用3个城域应用程序,例如FB,Skype,Viber。一旦用户通过我的应用程序结束他的会话,我必须删除用户登录这些应用程序使用的凭据。我发现这些城域应用程序存储了#34; Web凭证"中的凭据相关信息。 Credential Manager的一部分。我想使用c#以编程方式删除这些enteries,以便当任何其他用户通过我的应用程序打开metro应用程序时,他会看到登录屏幕。
答案 0 :(得分:1)
您可以使用PowerShell脚本来管理凭据管理器。
查看在MSDN Gallery脚本中发布的此脚本:
https://gallery.technet.microsoft.com/scriptcenter/PowerShell-Credentials-d44c3cde
然后,按照此示例从C#执行powershell命令:
http://blogs.msdn.com/b/kebab/archive/2014/04/28/executing-powershell-scripts-from-c.aspx
答案 1 :(得分:0)
看看这个How to store user credentials (XAML)。它将指导您处理Windows应用商店应用中的凭据。
答案 2 :(得分:0)
试试这段代码:
NetworkCredential networkCredential = new NetworkCredential("username", "password");
WebRequest webRequest = HttpWebRequest.Create("http://www.contoso.com/");
webRequest.Credentials = networkCredential;
CredentialCache credentialCache = new CredentialCache();
credentialCache.Add(new Uri("http://www.contoso.com/"), "Basic", networkCredential);
webRequest.Credentials = credentialCache;
credentialCache.Remove(webRequest.RequestUri, "Basic");
答案 3 :(得分:0)
我想告诉我用来清除网络凭据的方法。
注意:对于Point 2,应用程序必须以特定的用户权限运行,因为每个用户都有自己的配置文件。
答案 4 :(得分:0)
查看Windows内置的VaultCMD。