首页 新闻 会员 周边

asp.net 读取p12证书问题

0
悬赏园豆:200 [已解决问题] 解决于 2014-09-18 09:37

  X509Certificate2 tempSignCert = new X509Certificate2(HttpContext.Current.Server.MapPath("cert/20050104.p12"), "123456");

报:

 “System.Security.Cryptography.CryptographicException”类型的异常在 mscorlib.dll 中发生,但未在用户代码中进行处理

其他信息: 出现了内部错误。
 
本地运行是正常的,放到服务器上去就报错, 已排除权限问题。
问题补充:

独立服务器是行的 阿里云服务器上不行  现在只能咨询阿里云那边了

活陋阁的主页 活陋阁 | 初学一级 | 园豆:6
提问于:2014-09-17 16:09
< >
分享
最佳答案
0

可以参考下这篇文章:http://blog.csdn.net/xfworld/article/details/1493031 

例如:

1 X509Certificate2 tempSignCert = new X509Certificate2(
2 HttpContext.Current.Server.MapPath("cert/20050104.p12"), 
3 "123456",
4 X509KeyStorageFlags.PersistKeySet |X509KeyStorageFlags.MachineKeySet
5 ); 
收获园豆:200
goldbateau | 菜鸟二级 |园豆:402 | 2014-09-18 09:36
其他回答(3)
0

.net framework的版本跟你本地是一致的么?还是IIS上没设置好?

Alex_QY1987 | 园豆:1888 (小虾三级) | 2014-09-17 16:33

非常感谢亲的回答

.net framework的版本和本地是一致

IIS上设置我全部勾选了安装了

亲 在帮我看下

支持(0) 反对(0) 活陋阁 | 园豆:6 (初学一级) | 2014-09-17 16:50

@活陋阁: 你再看下你发布的程序里 cert/20050104.p12 这个文件是不是一并发布出去了,该不会没发布这个文件?或者是不是少了其它DLL导致的?

这种问题不太好查

支持(0) 反对(0) Alex_QY1987 | 园豆:1888 (小虾三级) | 2014-09-17 17:10

@Alex_QY1987: 谢谢

支持(0) 反对(0) 活陋阁 | 园豆:6 (初学一级) | 2014-09-17 17:19
0

1、按照楼上的方案,服务器与本地(包括配置、文件结构等)是否一致?

2、是否这个P12文件上传有损坏?

3、是否没有权限读P12文件?

4、错误到底层,捕获到没?怎么说?到了底层的代码~~~肯定是你数据有问题导致的了。

5、下载MS.NET的PDB文件,跟踪进去调试看问题点在哪里

519740105 | 园豆:5810 (大侠五级) | 2014-09-17 17:18

这个问题,自然可以申请阿里云提供协助。云主机也许对某些硬件是不支持的,而证书算法难免用到。

支持(0) 反对(0) 519740105 | 园豆:5810 (大侠五级) | 2014-09-17 17:39
0

看下系统日志的错误详细信息。

Firen | 园豆:5385 (大侠五级) | 2014-09-17 17:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册