使用X509Certificate Pfx进行客户端证书身份验证在C:\ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys中创建了太多临时文件

时间:2012-07-26 13:28:03

标签: x509certificate2

我们正在使用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。

确保删除这些临时文件的正确方法是什么。

1 个答案:

答案 0 :(得分:1)

http://support.microsoft.com/kb/931908处的修补程序是否相关?它解决了以下问题:在基于Windows Server 2003或基于Windows Server 2008的客户端计算机上,系统不会删除在应用程序调用“CryptQueryObject”函数时创建的临时文件“