makecert -r -pe -n "cn=頒發給" -ss my -sky exchange
此為證書的生成命令,其中「頒發給」需要替換成具體的機器。
頒發給誰,則要使用對應的方式來訪問服務
如頒發給www.abc.com則在引用服務的web.config中address就應該是
同樣,機器名,公網ip和內網ip。
如果你辦法給內網ip,而使用https://公網ip/service.svc來訪問,他倆本來就是一台機器,但是因為證書不匹配,所以會包證書錯誤
對於一般的https**,可選用網域名稱,公網ip,內網ip,機器名等。
但是iis7上https預設不能指定主機名,所以網域名稱不考慮
在web farm中加入機器時,只能使用ip,不能使用機器名,所以機器名也不考慮。
剩下2種選擇,公網ip或內網ip。
一般來說,web farm伺服器和具體的web伺服器都是在同乙個區域網的,所以web farm訪問web伺服器可用內網ip,也就是具體的web伺服器的證書可頒發給內網ip
web farm本身,如果服務是對外開放的,則需要是公網ip,如果也是內部使用,則可以使用內網ip。
以web farm與web都是內網為例(2臺web服務),
我們首先需要製作3個證書,分別頒發給3個伺服器的內網ip。
在各自的機器上(ctrl+r mmc 中)匯入自己ip的證書到
匯入到這裡是為了建立https**使用的
web伺服器上分別建立ssl站點,承載wcf
繫結的使用,ssl證書選擇自己的ip相同的證書
此處客戶端證書一定要忽略。因為最終是web farm來訪問這個的。如果不忽略,web farm 502。
在web farm伺服器中
受信任的,匯入2臺web伺服器的證書,因為web farm服務要呼叫具體的web伺服器,所以需要加入到受信任的根
這裡加入自己的,用於做https**
建立乙個https**,設定與web伺服器一直,證書選用web farm自己的。
這個**是為了web farm負載用的,如果沒有這個**,web farm本根就負載不起來。
建立farm
servers在新增的時候,必須填web伺服器的內網ip,相當於在web.config裡填寫的address的ip
將預設建立的arr url重寫規則修改,http改為https,可以進一步定義更多的條件。
web伺服器上wcf的web.config每台都不太一樣
此處配置需要與自己的內網ip一致,他其實找的是證書,因為證書頒發給的是內網ip,所以這裡和內網ip一致。
呼叫wcf的web.config。
在證書儲存區中找不到清單簽名證書
解決 在證書儲存區中找不到清單簽名證書 這個問題似乎以前碰到過,不過記不太清了。程式重新生成,提示錯誤 在證書儲存區中找不到清單簽名證書。可能是之前部署的程式證書被我刪掉了或是證書過期了,結果出現這個問題。解決方案如下 方案1 右擊專案屬性 簽名 為clickonce清單簽名,將勾掉的選項去掉。方案...
https證書在Android中的使用
我們在使用https訪問伺服器的時候都需要校驗證書,測試的時候為了方便預設信任的所有的證書,但是在上線的時候就需要設定證書了,乙個比較簡單的方式就是在客戶端內建證書,設定給網路框架,比如okhttp,這樣在網路訪問的時候客戶端就會校驗伺服器的證書是不是和本地的證書一致。具體 如下 param inp...
C 在證書儲存區中找不到清單簽名證書
從別人那邊拿來的vs專案,打不開,先清理再重新生成後,提示錯誤 在證書儲存區中找不到清單簽名證書。執行不成功。可能是之前部署的程式證書被我刪掉了或是證書過期了,結果出現這個問題。解決方案如下 方案1 右擊專案屬性 簽名 為clickonce清單簽名,將勾掉的選項去掉。方案2 在簽名中建立乙個新的簽名...