[.NET] ClickOnce 憑證展期
當我們用 ClickOnce 的方式來部署應用程式,按下發佈後
PS.別真的發佈,這時會跳出FTP驗證,取消發佈
這時,就能看到VS幫我們產生了憑証,同時也會安裝到電腦裡
VS幫我們在安裝電安裝了腦憑
同時也會幫我們在專案裡產生*.pfx
不過,這個憑證預設的憑證只有一年的時間,假設我們還沒有發佈,我們可以利用 Makecert.exe 來工作,它在
VS2010:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin
VS2012:C:\Program Files (x86)\Windows Kits\8.0\bin\x86
或是直接調用cmd for VS2012
Step1.建立*.pvk / *.cer檔案
在cmd輸入以下
Makecert -sv CertExpand1_TemporaryKey.pvk -n "CN=Yao" CertExpand1_TemporaryKey.cer -b 03/25/2013 -e 03/25/2020 -r
ps.
- 由於預設本機的憑証是根憑証,所以加了 –r ,請適憑證狀況產生,Makecert 的文件可以提供很大的幫助
http://msdn.microsoft.com/zh-tw/library/bfsktky3%28v=vs.110%29.aspx - CN 也必須要與展期前的名稱一樣
跳出密碼設定
輸入密碼
成功
完成後便會多出*.pvk / *.cer 兩個檔案
Step2.建立新的憑證檔案
在cmd輸入以下
Pvk2pfx -pvk CertExpand1_TemporaryKey.pvk -spc CertExpand1_TemporaryKey.cer -pfx NewCertExpand_TemporaryKey.pfx -po pass@w0rd1~
完成後就會多一個新的*.pfx
回到VS2012選擇我們剛剛的檔案,就可以得到展期後的憑證了
接下來就可以選擇這個比較長命的憑證來發佈了
Create Test Certificate
如果不喜歡VS幫我們產生的憑證,也可以自己產生
又產生新的憑證了
若是要對這憑證括展,用法跟上面步驟一模一樣
參考資源:
http://msdn.microsoft.com/en-us/library/ff369721.aspx
假設憑證已經到期了,我們可以使用RenewCert.exe
Step1.下載。並解壓縮
http://goldmailrobin.blob.core.windows.net/robindotnet/RenewCertBinaries.zip
Step2.然後把我們要括展的憑證擺過去
Step3.在cmd下切換到正確的檔案目錄
然後輸入以下命令
RenewCert.exe CertExpand1_1_TemporaryKey.pfx NewCertExpand1_1_TemporaryKey.pfx cn="Yao" pass@w0rd1~
產生新的檔案
Step4.重新選擇檔案
延長5年
參考來源:
若有謬誤,煩請告知,新手發帖請多包涵
Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET