我们正在使用HttpWebRequest进行ClientCertificate身份验证。对于客户端证书身份验证,我们从Pfx文件创建X509Certificate并附加到传出的HttpWebRequest。
我们看到的是,在创建请求后,我们看到文件夹中有许多临时文件:C:\ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys
随着我们提出更多请求,我们看到在C:\ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys文件夹中创建的临时文件数量不断增加。
我们从pfx文件创建证书,然后设置密钥容器。使用CryptoKeySecurity和CryptKeyAccessRule授予Expilicity访问权限。私有方法SetKeyContainerSecurity接受CspKeyContainerInfo和CryptoSecurity。然后它使用CryptAcquirecontext和CryptSetProvParam来设置密钥容器的安全性。
我们面临的问题是在磁盘的位置创建了大量临时文件:C:\ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys。
确保删除这些临时文件的正确方法是什么。
答案 0 :(得分:1)
http://support.microsoft.com/kb/931908处的修补程序是否相关?它解决了以下问题:在基于Windows Server 2003或基于Windows Server 2008的客户端计算机上,系统不会删除在应用程序调用“CryptQueryObject”函数时创建的临时文件“