WPF发布程序后未授予信任的解决办法
WPF发布程序后未授予信任的解决办法
基于浏览器的WPF应用程序由于需要比较高的操作权限,所以在项目的安全性属性中选择了“这是完全可信的应用程序”选项。可是,在发布部署后,在其他电脑上打开xbap文件的时候,提示“未授予信任无法部署该应用,因为它不受信任并且可能不安全。”的错误。打开log文件发现在下载程序时候触发了TrustNotGrantedException异常。
解决办法:
大步骤分为3步:制作特定域名访问的证书;使用该证书为程序集签名;把该证书导入到客户端的证书管理器中。
详细步骤如下:
1、生成用于192.168.0.130这个域名访问的,加密算法是2048位的,并指定存储位置的证明书:
makecert -r -n "CN=192.168.0.130" -b 01/01/2012 -e 01/01/2030 -a sha1 -len 2048 -ss CA -sr localmachine -sv WpfBrowserApp_Key.pvk WpfBrowserApp_Key.cer
按提示设置私钥密码(也可以不使用密码)即可在当前目录生成相关文件
2、利用X.509证书(.cer)创建发行者证书 (.spc),用到cert2spc工具,命令如下:
cert2spc WpfBrowserApp_Key.cer WpfBrowserApp_Key.spc
3、从.pvk和.spc格式转换成.pfx格式,用到pvkimprt工具,命令如下:
pvkimprt -pfx WpfBrowserApp_Key.spc WpfBrowserApp_Key.pvk
按提示操作可导出.pfx证书,若第1步设置了私钥密码,此处需要输入验证
4、在vs项目的ClickOnce清单签名的证书设置处点击“从文件选择”浏览定位到第3步导出的.pfx证书,此处需要验证第3步中设置的证书私钥密码。
5、使用证书为程序集签名。如下图。
6、在客户端电脑上导入该证书到“受信任的根证书发布机构”、“受信任的发行者”、“受信任人”和“个人”中。
运行——mmc——添加删除管理单元——添加——证书——账户选择为“本地计算机”,然后再分别导入证书到不同的目录下。
最新文章
- sublime通用快捷键 汉化 安装 插件
- spark操作elasticsearch数据的限制
- 一些Demo链接
- nginx log记录请求的头信息
- 简单的ROT13码编码与解码
- Ubuntu搭建mysql,Navicat Premium连接
- AngularJS学习篇(七)
- Java——静态变量/方法与实例变量/方法的区别
- Linux恢复误删除的文件或者目录(转)
- mysql 开发进阶篇系列 22 磁盘I/O问题(从linux操作系统上优化)
- Java并发——Fork/Join框架与ForkJoinPool
- P1186 玛丽卡 删边最短路最大值
- qtftp 客户端
- 递归获取包下的class文件
- kafka学习之-集群配置及安装
- 机器学习入门-贝叶斯中文新闻分类任务 1. .map(做标签数字替换) 2.CountVectorizer(词频向量映射) 3.TfidfVectorizer(TFDIF向量映射) 4.MultinomialNB()贝叶斯模型构建
- oracle判断查询结果是否为空
- Html5 拖拽行为和AngularJs的结合
- 类的扩展之 DataReader的扩展
- oracle 存储过程 示例