建立Full Trust的Browser Application
WPF 的 Browser Application,運(yùn)行于IE、Firefox(需要插件)等瀏覽器中,方便了部署,但也受至于瀏覽器的安全性限制。例如,有時(shí)候,需要訪問磁盤上某個(gè)文件時(shí),普通的Browser Application會(huì)出現(xiàn)“為授予信任(Trust not granted)”的錯(cuò)誤:
以下是解決方案
修改安全屬性
打開項(xiàng)目屬性,選擇Security選項(xiàng)卡,選擇“This is a full trust application”單選框:
也可以根據(jù)項(xiàng)目具體內(nèi)容,選擇“This is a partial trust application”,然后設(shè)置相應(yīng)權(quán)限。
添加代碼簽名
申請一個(gè)證書
在開發(fā)階段,可以通過點(diǎn)擊Create Test Certificate按鈕來生成一個(gè)測試證書
同樣的,還可以向Windows 證書服務(wù)器遞交證書申請,證書的類型選擇:“代碼簽名證書”,并將“標(biāo)記密鑰為可導(dǎo)出”選中:
完成后,把證書文件導(dǎo)出為pfx文件和cer文件,復(fù)制到項(xiàng)目文件夾下:
回到Visual Studio的Signing選項(xiàng)卡,點(diǎn)解“Select from File”,使用剛才導(dǎo)出的pfx文件:
該證書已被導(dǎo)入:
還可以點(diǎn)擊More Details來查看該證書:
PS,在默認(rèn)情況下,申請的證書有效期只有一年,可以通過修改證書服務(wù)器的注冊表來延長證書的有效期:
在證書服務(wù)器上運(yùn)行注冊表編輯器,找到
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\CertSvc\Configuration\<CAName>?
?
?
?
將
ValidityPeriod 修改為 Year
ValidityPeriodUnits 修改為 20(20年,夠用了)
重啟證書服務(wù)器,然后重新申請一個(gè)證書,現(xiàn)在,該證書的有效期變成20年了。
我們點(diǎn)擊Publish Now,重新發(fā)布這個(gè)應(yīng)用程序
在客戶端安裝證書
把上一步導(dǎo)出的cer文件復(fù)制到客戶端,雙擊該文件,選擇安裝證書:
把證書安裝到受信任的發(fā)行者
現(xiàn)在客戶端也能訪問了!
轉(zhuǎn)載于:https://www.cnblogs.com/carekee/articles/2039129.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的建立Full Trust的Browser Application的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python quirk
- 下一篇: poj 3384 Feng Shui 半