2009-11-10 133 views
0

I'm发展产生凭盖有一个文件用私钥要对其他应用程序后验证工具(ASP.NET页面问题与证书

I'm使用makecert证书创建:

makecert -sky "privatekey" -sk "MyCompany"-n "CN=MyCompany" -ss -pe CertFile.cert 

生成的证书是我开发的机器上。然后我运行此代码,它可以毫无问题地发现:

X509Store store = new X509Store(StoreName.My, StoreLocation.CurrentUser); 
X509Certificate2Collection certs; 

store.Open(OpenFlags.ReadOnly); 

X509Certificate2Collection certs = store.Certificates.Find(X509FindType.FindBySubjectName, "MyCompany", false); 

的证书变量不包含证书(在测试环境)

我使用双击并安装证书,使用mmc并导入证书,然后从我的计算机中导出证书,然后在测试服务器中导入,从而在测试服务器(Win 2003)上安装证书。

有没有我失踪的一步?

更新:

我认为这可能是问题所在。 ASPNET用户没有访问证书的权限,证书也没有安装在本机上,仅仅是本地用户。

I'm寻找此链接:http://geekswithblogs.net/lorint/archive/2005/12/30/64516.aspx

感谢

回答

2

命令行是不正确稍微......你需要指定存储“我”的“-ss”的说法后:

 
makecert -sky "privatekey" -sk "MyCompany" -n "CN=MyCompany" -ss "my" -pe CertFile.cert 

之后,我可以使用MMC证书管理单元找到证书。

+0

感谢哥们,我会试试这个,奇怪的是它在我的机器上工作,典型的jejej。 – 2009-11-10 23:48:46