我有一个C#应用程序,它使用rasapi32.dll
创建拨号连接。当我在Windows7下创建这样的连接时,凭据将作为一个名为*session
的条目存储在credential manager
中。
credential manager
中的*session
条目会导致与其他资源(网络共享、数据库连接)的现有连接无效。有没有办法告诉Windows不要存储凭据?
我已经知道一个解决方案,但这将禁用整个系统的凭据存储:设置注册表值HKEY_LOCAL_MACHINESystemCurrentControlSetControlLsaDisableDomainCreds to 1
。
我只想为我的应用程序禁用它。
您只需删除存储的凭据使用Advapi32中的CredDelete()http://msdn.microsoft.com/en-us/library/windows/desktop/aa374787(v=vs.85).aspxWindows 8中有一个新的托管库来处理Windows vaulthttp://msdn.microsoft.com/library/windows/apps/windows.security.credentials.passwordvault.aspx?cs-保存lang=1&cs lang=csharp#code-snippet-1