下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
千里之行,始于足下。第2頁(yè)/共2頁(yè)精品文檔推薦HTTPS的3種實(shí)現(xiàn)辦法HTTPS的3種實(shí)現(xiàn)辦法.
分類:java2010-04-3010:17164人閱讀評(píng)論(0)收藏舉報(bào)
引用自:/blog/289650
文章如下:HTTPS實(shí)際是SSLoverHTTP,該協(xié)議經(jīng)過SSL在發(fā)送方把原始數(shù)據(jù)舉行加密,在接收方解密,所以,所傳送的數(shù)據(jù)別容易被網(wǎng)絡(luò)黑客截獲和破解。本文介紹HTTPS的三種實(shí)現(xiàn)辦法。
辦法一靜態(tài)超鏈接這是目前網(wǎng)站中使用得較多的辦法,也最簡(jiǎn)單。
在要求使用SSL舉行傳輸?shù)腤eb網(wǎng)頁(yè)鏈接中直截了當(dāng)標(biāo)明使用HTTPS協(xié)議,以下是指向需要使用SSL的網(wǎng)頁(yè)的超鏈接:SSL例子需要講明的是,在網(wǎng)頁(yè)里的超鏈接假如使用相對(duì)路徑的話,其默認(rèn)啟用協(xié)議與引用該超鏈接的網(wǎng)頁(yè)或資源的傳輸協(xié)議相同,例如在某超鏈接“HTTPS://00/ok/login.jps”的網(wǎng)頁(yè)中包含如下兩個(gè)超鏈接:SSL鏈接非SSL鏈接這么,第一具鏈接使用與“HTTPS://00/ok/login.jsp”相同的傳輸協(xié)議HTTPS,第二個(gè)鏈接使用本身所標(biāo)識(shí)的協(xié)議HTTP。
使用靜態(tài)超鏈接的好處是容易實(shí)現(xiàn),別需要額外開辟。但是,它卻別容易維護(hù)治理;因?yàn)樵谝痪邚氐资褂肏TTP協(xié)議拜訪的Web應(yīng)用里,每個(gè)資源都存放在該應(yīng)用特定根名目下的各個(gè)子名目里,資源的鏈接路徑都使用相對(duì)路徑,如此做是為了方便應(yīng)用的遷移同時(shí)易于治理。但如果該應(yīng)用的某些資源要用到HTTPS協(xié)議,引用的鏈接就必須使用完整的路徑,因此當(dāng)應(yīng)用遷移或需要更改URL中所涉及的任何部分如:域名、名目、文件名等,維護(hù)者都需要對(duì)每個(gè)超鏈接修改,工作量之大可想而知。再者,假如客戶在掃瞄器地址欄里手工輸入HTTPS協(xié)議的資源,這么所有敏感機(jī)密數(shù)據(jù)在傳輸中就得別到愛護(hù),非常容易被黑客截獲和篡改!
辦法二資源拜訪限制為了愛護(hù)Web應(yīng)用中的敏感數(shù)據(jù),防止資源的非法拜訪和保證傳輸?shù)陌踩?,JavaServlet2.2規(guī)范定義了安全約束(Security-Constraint)元件,它用于指定一具或多個(gè)Web資源集的安全約束條件;用戶數(shù)據(jù)約束(User-Data-Constraint)元件是安全約束元件的子類,它用于指定在客戶端和容器之間傳輸?shù)臄?shù)據(jù)是怎么被愛護(hù)的。
用戶數(shù)據(jù)約束元件還包括了傳輸保證(Transport-Guarantee)元件,它規(guī)定了客戶機(jī)和服務(wù)器之間的通信必須是以下三種模式之一:None、Integral、Confidential。None表示被指定的Web資源別需要任何傳輸保證;Integral表示客戶機(jī)與服務(wù)器之間傳送的數(shù)據(jù)在傳送過程中不可能被篡改;Confidential表示數(shù)據(jù)在傳送過程中被加密。大多數(shù)事情下,Integral或Confidential是使用SSL實(shí)現(xiàn)。
這個(gè)地方以BEA的WebLogicServer6.1為例介紹事實(shí)上現(xiàn)辦法,WebLogic是一具性能卓越的J2EE服務(wù)器,它能夠?qū)λ卫淼腤eb資源,包括EJB、JSP、Servlet應(yīng)用程序設(shè)置拜訪操縱條款。
假設(shè)某個(gè)應(yīng)用建立在WeblogicServer里的/mywebAPP名目下,其中一部分Servlets、JSPs要
求使用SSL傳輸,這么可將它們都放在/mywebAPP/sslsource/名目里,然后編輯/secureAPP/Web-INF/web.xml文件,經(jīng)過對(duì)web.xml的設(shè)置可達(dá)到對(duì)Web用戶實(shí)現(xiàn)拜訪操縱。當(dāng)Web用戶試圖經(jīng)過HTTP拜訪/sslsource名目下的資源時(shí),WeblogicServer就會(huì)查找web.xml里的拜訪約束定義,返回提示信息:NeedSSLconnectiontoaccessthisresource。
資源拜訪限制與靜態(tài)超鏈接結(jié)合使用,別僅繼承了靜態(tài)超鏈接辦法的簡(jiǎn)單易用性,而且有效愛護(hù)了敏感資源數(shù)據(jù)。但是,如此就會(huì)存在一具咨詢題:如果Web客戶使用HTTP協(xié)議拜訪需要使用SSL的網(wǎng)絡(luò)資源時(shí)看到彈出的提示信息:NeedSSLconnectiontoaccessthisresource,大部分人也許都別懂應(yīng)該用HTTPS去拜訪該網(wǎng)頁(yè),造成的后果是用戶會(huì)放棄拜訪該網(wǎng)頁(yè),這是Web應(yīng)用服務(wù)提供商別情愿看到的情況。
辦法三鏈接重定向綜觀目前商業(yè)網(wǎng)站資源數(shù)據(jù)的交互拜訪,要求嚴(yán)格加密傳輸?shù)臄?shù)據(jù)只占其中一小部分,也算是講在一具具體Web應(yīng)用中需要使用SSL的服務(wù)程序只占整體的一小部分。這么,我們能夠從應(yīng)用開辟方面思考解決辦法,對(duì)需要使用HTTPS協(xié)議的那部分JSPs、Servlets或EJBs舉行處理,使程序本身在接收到拜訪請(qǐng)求時(shí)首先推斷該請(qǐng)求使用的協(xié)議是否符合本程序的要求,即來訪請(qǐng)求是否使用HTTPS協(xié)議,假如別是就將其拜訪協(xié)議重定向?yàn)镠TTPS,如此就幸免了客戶使用HTTP協(xié)議拜訪要求使用HTTPS協(xié)議的Web資源時(shí),看到錯(cuò)誤提示信息無所適從的事情,這些處理對(duì)Web客戶來講是透明的。
實(shí)現(xiàn)思想是:
首先創(chuàng)建一具類,該類辦法能夠?qū)崿F(xiàn)自動(dòng)引導(dǎo)Web客戶的拜訪請(qǐng)求使用HTTPS協(xié)議,每個(gè)要求使用SSL舉行傳輸?shù)腟ervlets或JSPs在程序開始時(shí)調(diào)用它舉行協(xié)議重定向,最終才舉行數(shù)據(jù)應(yīng)用處理。J2EE提供了兩種鏈接重定向機(jī)制。第一種機(jī)制是RequestDispatcher接口里的forward()辦法。使用MVC(Model-View-Controller)機(jī)制的Web應(yīng)用通常都使用那個(gè)辦法從Servlet轉(zhuǎn)移請(qǐng)求到JSP。但這種轉(zhuǎn)向只能是同種協(xié)議間的轉(zhuǎn)向,并別能重定向到別同的協(xié)議。
第二種機(jī)制是使用HTTPServletReponse接口里的sendRedirect()辦法,它能使用任何協(xié)議重定向到任何URL,例如:BeSslResponse.sendRedirect(“HTTPS://00/order”);此外,我們還需使用到JavaServletAPI中的兩個(gè)辦法:ServletRequest接口中的getScheme(),它用于獵取拜訪請(qǐng)求使用的傳輸協(xié)議;HTTPUtils類中的getRequestUrl(),它用于獵取拜訪請(qǐng)求的URL,要注意的是該辦法在Servlet2.3中已被移到HTTPServletRequest接口。
以下是實(shí)現(xiàn)協(xié)議重定向的基本步驟:
1.獵取拜訪的請(qǐng)求所使用的協(xié)議;
2.假如請(qǐng)求協(xié)議符合被拜訪的Servlet所要求的協(xié)議,就講明差不多使用HTTPS協(xié)議了,別需做任何處理;
3.假如別符合,使用Servlet所要求的協(xié)議(HTTPS)重定向到相同的URL。例如,某Web用戶使用HTTP協(xié)議拜訪要求使用HTTPS協(xié)議的資源BeSslServlet,敲入“URL:HTTP://00/BeSslServlet”,在執(zhí)行BeSslServlet時(shí)首先使用ProcessSslServlet.processSsl()重定向到HTTPS://00/BeSslServlet,然后BeSslServlet與客戶掃瞄器之間就經(jīng)過HTTPS協(xié)議舉行數(shù)據(jù)傳輸。
以上介紹的僅是最簡(jiǎn)單的例子,是為了對(duì)這種重定向的辦法有個(gè)初步的認(rèn)識(shí)。如果想真正在Web應(yīng)用中實(shí)現(xiàn),還必須思考如下幾個(gè)咨詢題:
●在Web應(yīng)用中常常會(huì)用到GET或Post辦法,拜訪請(qǐng)求的URL中就會(huì)帶上一些查詢字串,這些字串是使用getRequesUrl()時(shí)獵取別到的,而且在重定向之后會(huì)丟失,因此必須在重定向之前將它們加入到新的URL里。我們能夠使用request.getQueryString()來獵取GET的查詢字串,關(guān)于Post的Request參數(shù),能夠把它們轉(zhuǎn)換成查詢串再舉行處理。
●某些Web應(yīng)用請(qǐng)求中會(huì)使用對(duì)象作為其屬性,必須在重定向之前將這些屬性保存在該Session中,以便重定向后使用。
●大多數(shù)掃瞄器會(huì)把對(duì)同一具主機(jī)的別同端口的拜訪
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025民用航空運(yùn)輸行業(yè)市場(chǎng)預(yù)測(cè)與技術(shù)演進(jìn)
- 中班藝術(shù)親子活動(dòng)策劃方案三篇
- 資信評(píng)估合同
- 酒店客房合同書
- 國(guó)內(nèi)工業(yè)研發(fā)設(shè)計(jì)軟件市場(chǎng)現(xiàn)狀
- 粉刷承包合同
- 部編版七年級(jí)道德與法治上冊(cè)《1.1.2少年有夢(mèng)》聽課評(píng)課記錄
- 個(gè)人黑色奔馳出租合同
- 廚房設(shè)備購(gòu)銷合同書
- 農(nóng)業(yè)種植項(xiàng)目投資合同
- 2024年新華文軒出版?zhèn)髅焦煞萦邢薰菊衅腹P試參考題庫(kù)含答案解析
- 課件:曝光三要素
- 春節(jié)文化研究手冊(cè)
- 小學(xué)綜合實(shí)踐《我們的傳統(tǒng)節(jié)日》說課稿
- 《鋁及鋁合金產(chǎn)品殘余應(yīng)力評(píng)價(jià)方法》
- IATF-16949:2016質(zhì)量管理體系培訓(xùn)講義
- 記賬憑證封面直接打印模板
- 人教版八年級(jí)美術(shù)下冊(cè)全冊(cè)完整課件
- 北京房地產(chǎn)典當(dāng)合同
- 檔案工作管理情況自查表
- 畢業(yè)論文-基于51單片機(jī)的智能LED照明燈的設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論