本篇是技術類忧便。
做vsto開發(fā)的知道,發(fā)布程序最簡單的方式是clickonce帽借,也是visual studio默認支持的珠增。clickonce做網(wǎng)絡發(fā)布非常好,自動安裝缺席的控件砍艾,自動更新蒂教,簡潔明了,用戶體驗佳脆荷。但毛病是需要數(shù)字簽名凝垛,否則通過網(wǎng)絡發(fā)布后,會提示用戶沒有認證蜓谋,然后就安裝不上去了梦皮。
數(shù)字證書是一套安全機制。具體啥機制的我也沒搞懂桃焕,哈哈剑肯。大家自行搜索吧。
進入正題观堂。數(shù)字簽名让网,要么通過CA機構買,要么自建一個师痕。
自建的數(shù)字證書溃睹,需要用戶先安裝證書才行;購買的就不需要胰坟。想想容易理解因篇。自建證書本質上是不被網(wǎng)絡信任的,用戶主動安裝你才算信任對吧腕铸。
本篇就講如何自建數(shù)字證書惜犀。
測試環(huán)境
- visual studio 2017
- vsto excel 2013
- windows 10
步驟
visual studio 2017 發(fā)布clickonce時需要用pfx文件去簽名。pfx是一種軟證書狠裹。我們的目標就是做一個pfx出來虽界。
我們需要signtools。做pfx的簽名工具涛菠。里面真實有用的莉御,只有三個文件撇吞。
pvkimp文件需要安裝。雙擊安裝礁叔。
makecert -r -n "CN=蘇州通商軟件" -b 01/01/2017 -e 01/01/2050 -sv my.pvk my.cer
過程中會出現(xiàn)要輸入密碼牍颈,輸入一摸一樣的密碼即可。CN= 后面的內(nèi)容改成自己公司名稱琅关。 -b和-e分別是證書有效期煮岁,你可以搞大一點。最后他會生成兩個文件my.pvk和my.cer涣易。待用画机。
cert2spc my.cer my.spc
把cer文件轉成spc文件。沒啥說的新症。
最后是
pvkimprt -pfx my.spc my.pvk
過程中也要輸入密碼步氏,用前面的密碼即可。這樣他就導出一個pfx文件了徒爹。這就是我們自建的荚醒,有三十年有效期的數(shù)字證書。
另外網(wǎng)上大量查到用pvk2pfx工具的隆嗅,這個工具在本環(huán)境下沒有界阁,不知道為什么。
Visual studio 內(nèi)導入簽名
選擇從文件選擇榛瓮。導入剛剛的pfx文件即可铺董。