<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    lbom

    小江西

      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      18 隨筆 :: 21 文章 :: 69 評(píng)論 :: 0 Trackbacks

    需求:

    系統(tǒng)A與系統(tǒng)B分別部署在不同域的兩臺(tái)服務(wù)器中,但它們的身份都統(tǒng)一在身份認(rèn)證服務(wù)器中;身份認(rèn)證信息以Session方式存貯于各自系統(tǒng)中,并輔以cookie進(jìn)行使用。

    當(dāng)用戶在A系統(tǒng)登錄后,訪問B系統(tǒng)時(shí),由于是跨域訪問,導(dǎo)致身份信息不能正確的傳遞到B系統(tǒng)中,從而致使用戶需在B系統(tǒng)中重新登錄。

    clip_image001[6]

    解決方案:

    處理這類跨域訪問時(shí),我們最先使用從B系統(tǒng)向C通過HttpRequest(類AJAX請(qǐng)求)的方式獲取身份信息,此方式好處是同步處理,方便用使用;但其限制諸多,如需設(shè)置信任站點(diǎn)、用戶訪問確認(rèn)等,甚至,在對(duì)應(yīng)用服務(wù)器作了一次安全升級(jí)后,根本無(wú)法訪問了。因此,需另行開辟途徑,于是,在同事建議下,我們使用IFrame內(nèi)嵌跨域驗(yàn)證網(wǎng)頁(yè),來(lái)解決此問題。

    1、原理設(shè)計(jì):用戶在訪問B系統(tǒng)時(shí),先使用一內(nèi)置的iframe,并將iframe的src指向身份認(rèn)證服務(wù)器系統(tǒng)代理驗(yàn)證接口;如果用戶已經(jīng)在A系統(tǒng)中進(jìn)行過登錄,即A域了中已存在著身份認(rèn)證信息后,身份認(rèn)證服務(wù)器中也將具有其身份信息將其附帶著身份認(rèn)證信息后重定向訪問B系統(tǒng)代理接口;B系統(tǒng)代理驗(yàn)證接口在接收到由A系統(tǒng)傳遞而來(lái)的身份認(rèn)證信息后,通過身份認(rèn)證服務(wù)器驗(yàn)證后,在B系統(tǒng)所在域重建身份認(rèn)證信息。

    2、實(shí)現(xiàn)邏輯貼碼:

    1)B系統(tǒng)代理驗(yàn)證接口:

    (1)IFrame邏輯貼碼:

    clip_image002[6]

    (2)JS檢測(cè)是否通過認(rèn)證邏輯貼碼:

    clip_image003[6]

    2)身份認(rèn)證服務(wù)器端接口(JSP):

    clip_image004[6]

    3、注意事項(xiàng):

    1)由于身份認(rèn)證中心使用cookie作為身份標(biāo)識(shí),因此,需要用戶在瀏覽器中允許使用cookie的設(shè)置;

    2)由于在iframe中進(jìn)行跨域重定向,因此需在IE安全中的跨域?yàn)g覽子框架項(xiàng)設(shè)為啟用:

    clip_image005[6]

    4、源碼文件:

    ……

    posted on 2010-02-08 17:55 lbom 閱讀(3500) 評(píng)論(3)  編輯  收藏

    評(píng)論

    # re: 使用內(nèi)嵌IFrame,處理系統(tǒng)跨域身份認(rèn)證的方案與實(shí)現(xiàn) 2010-02-08 19:45 凡客誠(chéng)品官方網(wǎng)站
    實(shí)施的方式的發(fā)生的  回復(fù)  更多評(píng)論
      

    # re: 使用內(nèi)嵌IFrame,處理系統(tǒng)跨域身份認(rèn)證的方案與實(shí)現(xiàn) 2010-02-09 11:43 ljwan12
    系統(tǒng)大了,就統(tǒng)一管理session唄  回復(fù)  更多評(píng)論
      

    # re: 使用內(nèi)嵌IFrame,處理系統(tǒng)跨域身份認(rèn)證的方案與實(shí)現(xiàn) 2010-02-09 15:08 lbom
    @ljwan12
    這些系統(tǒng)分屬不同的業(yè)務(wù)范疇,從硬件、軟件、安全、投資方面,都無(wú)法將它們部署在一起,從而實(shí)現(xiàn)Session的統(tǒng)一管理。
    因此,我們從系統(tǒng)集成角度出發(fā),來(lái)解決此問題!為此,在身份認(rèn)證服務(wù)器和系統(tǒng)端都開發(fā)了代理,通過代理解決系統(tǒng)間的單點(diǎn)登錄,使問題得到解決  回復(fù)  更多評(píng)論
      


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲中文字幕无码亚洲成A人片| 亚洲综合色丁香婷婷六月图片| 在线观看免费播放av片| 亚洲中文无码亚洲人成影院| 亚洲国产人成在线观看69网站| 在线视频精品免费| 亚洲av无码一区二区三区在线播放 | 国产成人精品亚洲一区| 亚洲日本乱码一区二区在线二产线 | 国产一区二区三区在线观看免费 | 无码成A毛片免费| 国产va免费精品| 91香蕉成人免费网站| 成在人线av无码免费高潮喷水| 亚洲精品免费在线| 亚洲AV日韩精品久久久久| 亚洲精品色午夜无码专区日韩| 99re热免费精品视频观看| 久久免费精品一区二区| 中文字幕永久免费视频| 国产精品免费久久久久久久久| 亚洲人妖女同在线播放| 亚洲一区视频在线播放| 亚洲国产主播精品极品网红| 免费一级毛片一级毛片aa| 在线观看91精品国产不卡免费| 久久免费区一区二区三波多野| 亚洲另类激情综合偷自拍图| 亚洲福利精品一区二区三区| 亚洲?V无码成人精品区日韩| 最近中文字幕mv免费高清在线 | 在线观看免费宅男视频| 免费久久人人爽人人爽av| 国产精品九九久久免费视频| 亚洲人妖女同在线播放| 亚洲精品国产国语| 亚洲韩国—中文字幕| 久久亚洲精品中文字幕| 亚洲毛片基地日韩毛片基地| 亚洲一级毛片在线播放| 亚洲乱码一二三四区乱码|