1樓:匿名使用者
如果閒麻煩,直接**gworg 幫你處理。
web service在企業應用中常常被用作不同系統之間的介面方式。但是如果沒有任何安全機制的話,顯然是難以委以重任的。比較直接的web service加密方式就是使用https方式(ssl證書加密)加密連線,並且只允許持有信任證書的客戶端連線,即ssl雙向認證。
這樣就保證了連線**的可信度以及資料在傳輸過程中沒有被竊取或篡改。通過https加密方式訪問web service具體方法如下:
【準備工作】
(1)檢查jdk的環境變數是否正確。本文使用jdk 1.6
(2)準備web伺服器,這裡選用tomcat 6.0
(3)準備web service服務端和客戶端。
【生成證書】
這裡用到的檔案,這裡存放在d:/ssl/資料夾內,其中d:/ssl/server/內的檔案是要交給伺服器用的,d:/ssl/client/內的檔案是要交給客戶端用的。
1生成服務端證書
開始-執行-cmd-在dos視窗執行下執行命令:
keytool -genkey -v -aliastomcat -keyalg rsa -keystore d:/ssl/server/tomcat.keystore -dname"cn=127.
0.0.1,ou=zlj,o=zlj,l=peking,st=peking,c=cn" -validity 3650-storepass zljzlj -keypass zljzlj
說明:keytool 是jdk提供的證書生成工具,所有引數的用法參見keytool –help
-genkey 建立新證書
-v 詳細資訊
-alias tomcat 以」tomcat」作為該證書的別名。這裡可以根據需要修改
-keyalg rsa 指定演算法
-keystored:/ssl/server/tomcat.keystore 儲存路徑及檔名
-dname"cn=127.0.0.
1,ou=zlj,o=zlj,l=peking,st=peking,c=cn" 證書發行者身份,這裡的cn要與發布後的訪問網域名稱一致。但由於這裡是自簽證書,如果在瀏覽器訪問,仍然會有警告提示。真正場景中建議申請ca機構(wosign)簽發的ssl證書更安全。
-validity 3650證書有效期,單位為天
-storepass zljzlj 證書的訪問密碼
-keypass zljzlj 證書的私鑰
2 生成客戶端證書
執行命令:
keytool ‐genkey ‐v ‐aliasclient ‐keyalg rsa ‐storetype pkcs12 ‐keystore d:/ssl/client/client.p12 ‐dname"cn=client,ou=zlj,o=zlj,l=bj,st=bj,c=cn" ‐validity 3650 ‐storepassclient ‐keypass client
說明:引數說明同上。這裡的-dname 證書發行者身份可以和前面不同,到目前為止,這2個證書可以沒有任何關係。下面要做的工作才是建立2者之間的信任關係。
3 匯出客戶端證書
執行命令:
keytool ‐export ‐aliasclient ‐keystore d:/ssl/client/client.p12 ‐storetype pkcs12 ‐storepass client‐rfc ‐file d:
/ssl/client/client.cer
說明:-export 執行匯出
-file 匯出檔案的檔案路徑
4 把客戶端證書加入服務端證書信任列表
執行命令:
keytool ‐import ‐aliasclient ‐v ‐file d:/ssl/client/client.cer ‐keystored:
/ssl/server/tomcat.keystore ‐storepass zljzl
說明:引數說明同前。這裡提供的密碼是服務端證書的訪問密碼。
5 匯出服務端證書
執行命令:
keytool -export -aliastomcat -keystore d:/ssl/server/tomcat.keystore -storepass zljzlj -rfc -filed:
/ssl/server/tomcat.cer
說明:把服務端證書匯出。這裡提供的密碼也是服務端證書的密碼。
6 生成客戶端信任列表
執行命令:
keytool -import -filed:/ssl/server/tomcat.cer -storepass zljzlj -keystored:
/ssl/client/client.truststore -alias tomcat –noprompt
說明:讓客戶端信任服務端證書
【 配置服務端為只允許https連線】
1 配置tomcat 目錄下的/conf/server.xml
xml**:
說明:在server.xml裡面這段內容本來是被注釋掉的,如果想使用https的預設埠443,請修改這裡的port引數。
其中的clientauth="true" 指定了雙向證書認證。
2 配置服務端專案web.xml
在之後增加xml**:
ssl/service/*
ssl required
怎麼用eclipse修改web工程的訪問路徑
千鋒教育 是指修改上下文路徑嗎?右鍵專案屬性裡面找到一個 web project setttings選項選單,裡面有一個context root可以設定 eclipse匯入專案不能通過configure的選項轉換為facets時 可以新建專案 然後手動複製新建專案.settings目錄的org.ec...
怎樣在eclipse中設定tomcat伺服器
在eclipse中開發web專案經常需要在eclipse中新增tomcat伺服器,在這裡我就詳細的介紹一下配置的步驟。開啟eclipse開發平台介面,找到頭部的工具欄中的 window 點選window中的preferences選項,在開啟的preferences面板中找到server,點選runt...
linu怎麼在eclipse裡面開發javaweb就是怎麼搭
eclipse是開發工具,是一個ide。這和你linux發行版無關。就是說無論哪個版本的linux都是可以裝上eclipse的。當然說的太絕對是錯的,如果你的linux沒有圖形介面,我猜eclipse是肯定裝不上,裝上了也跑不起來,不過還好,發行版的linux中,除了debain沒有自帶圖形介面外,...