给WPF Browser Application创建数字证书(转)
原文地址:http://hi.csdn.net/link.php?url=http://blog.csdn.net%2Fstarlee
在开发完一个WPF Browser Application并准备将它发布到一个Web Server上的时候,一般会在工程的属性选项面板中选择“Security”项,并点击“Calculate Permissions”来计算该应用程序的安全设置。如果应用程序里面包含了一些不安全的网络操作(比如对本地磁盘的读写等),那么计算的结果就是“This is a full trust application”单选按钮被选中。当然,也可以不经过计算而直接选择这个选项。
如果这个时候把应用程序发布到Web Server,并在一个客户端用浏览器访问的话,就会遇到下面的这个“Trust Not Granted”错误。
这是由于Windows的安全机制判断该应用程序属于非信任站点。要想解决这个问题,就要给这个应用程序创建一个数字证书,并且在客户端安装该数字证书。
下面就是创建数字证书的步骤:
1. 在工程的属性面板中选择“Signing”选项,点击“More Details...”按钮。
2. 在弹出的“Certificate”对话框中选择“Details”项,点击“Copy to File...”按钮。
3. 在弹出的“Certificate Export Wizard”向导对话框中点击“Next”按钮,在下面这个对话框中选择“DER encoded binary X.509 (.CER)”单选按钮。
4. 点击“Next”直到创建好一个数字证书(后缀名为.cer的文件)。
这样就为WPF Browser Application创建好了一个数字证书。
下面是在客户端安装数字证书的步骤:
1. 首先将数字证书文件拷贝到客户端电脑上。
2. 双击该数字证书文件(后缀名为.cer的文件),在弹出的“Certificate”对话框上点击“Install Certiciate...”按钮。
3. 在弹出的“Certificate Import Wizard”对话框上选择“Place all certificates in the following store”单选按钮后点击“Browse...”按钮。
4. 在弹出的“Select Certificate Store”对话框中选择“Trusted Root Certification Authorities”项并点击“OK”按钮。
5. 在“Certificate Import Wizard”向导对话框上点击“Next”按钮直到数字证书安装完毕。
6. 重复上面的2,3两步,在弹出的“Select Certificate Store”对话框中选择“Trusted Publishers”项并点击“OK”按钮。
7. 在“Certificate Import Wizard”向导对话框上点击“Next”按钮直到数字证书安装完毕。
这样,WPF Browser Application的数字证书就被安装到了客户端的电脑上。
现在,在安装过数字证书的客户端电脑上用浏览器访问该WPF Browser Application,就不会再出现任何“Trust Not Granted”错误了。
通过上面的方法和步骤,才算是创建了一个真正的“full trust”的WPF Browser Application。