CAS與MVC整合下的“迴圈重新導向”分析

來源:互聯網
上載者:User

標籤:style   blog   http   color   io   ar   for   檔案   sp   

公司項目組同事最近開發部署SSO單點登入;要求所有系統登入都切換到SSO登入,陸續上了幾個系統都運行正常;公司內部系統都是.net項目 因此都是利用 DotNetCasClient 用戶端接SSO。

而我負責的項目部署後 登入時卻偶爾出現迴圈重新導向問題;臨時的解決辦法就是重啟網站或修改下config檔案;

但這治標不治本;基本上把網上能查到的都了,有兩篇文章轉寄量相當大 一是園裡 刑少 同學的《CAS 與.net 整合的 “迴圈重新導向”問題分析》 二是360文檔中在PerformHttpGet方法加認證自動回調驗證;

但兩篇文章都沒解決我的問題

仔細思考 發現之前webform項目利用接SSO都沒有這樣的問題 但我的項目卻是一個mvc4的項目,卻出現這樣的問題。

對票據輸出,發現一天內由於迴圈重新導向,票據量上升了幾萬個

查系統日誌,終於發現關於DotNetCasClient的 錯誤資訊 不能將空值插入緩衝 

最終定位到ParseResponseFromServer方法 將一個string變數在沒有判斷是否為空白的情況下插入緩衝

加判斷;查看代碼邏輯;測試 發現沒問題 不會引發其它bug 最後上線 發現再沒有人反應迴圈重新導向問題。Ohyeah, 系統日誌灰常重要啊,還有網上解決方案不一定適合你啊,每個項目的環境畢竟不太一樣,在這上面浪費了不少時間。

if (CasAuthentication.ProxyTicketManager != null && !string.IsNullOrEmpty(proxyGrantingTicketIou))                {                    string proxyGrantingTicket = CasAuthentication.ProxyTicketManager.GetProxyGrantingTicket(proxyGrantingTicketIou);                    if (!string.IsNullOrEmpty(proxyGrantingTicketIou) && !string.IsNullOrEmpty(proxyGrantingTicket))                        CasAuthentication.ProxyTicketManager.InsertProxyGrantingTicketMapping(proxyGrantingTicketIou, proxyGrantingTicket);                }

 

CAS與MVC整合下的“迴圈重新導向”分析

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.