cas實(shí)現(xiàn)單點(diǎn)登錄PPT_第1頁
cas實(shí)現(xiàn)單點(diǎn)登錄PPT_第2頁
cas實(shí)現(xiàn)單點(diǎn)登錄PPT_第3頁
cas實(shí)現(xiàn)單點(diǎn)登錄PPT_第4頁
cas實(shí)現(xiàn)單點(diǎn)登錄PPT_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、,CAS實(shí)現(xiàn)SSO單點(diǎn)登錄,1、開源的、多協(xié)議的SSO解決方案;Protocols:Custom Protocol、CAS、OAuth、OpenID、RESTful API、SAML1.1、SAML2.0等。 2、支持多種認(rèn)證機(jī)制:Active Directory、JAAS、JDBC、LDAP、X.509 Certificates等; 3、安全策略:使用票據(jù)(Ticket)來實(shí)現(xiàn)支持的認(rèn)證協(xié)議; 4、支持授權(quán):可以決定哪些服務(wù)可以請(qǐng)求和驗(yàn)證服務(wù)票據(jù)(Service Ticket); 5、提供高可用性:通過把認(rèn)證過的狀態(tài)數(shù)據(jù)存儲(chǔ)在TicketRegistry組件中,這些組件有很多支持分布式環(huán)境的

2、實(shí)現(xiàn),如:BerkleyDB、Default、EhcacheTicketRegistry、JDBCTicketRegistry、JBOSS TreeCache、JpaTicketRegistry、MemcacheTicketRegistry等; 6、支持多種客戶端:Java、.Net、PHP、Perl、Apache, uPortal等。,CAS簡介,主要特性,單點(diǎn)登錄(Single Sign-On ,簡稱SSO)是目前比較流行的服務(wù)于企業(yè)業(yè)務(wù)整合的解決方案之一,SSO使得在多個(gè)應(yīng)用系統(tǒng)中,用戶只需要登錄一次就可以訪問所有相互信任的應(yīng)用系統(tǒng)。,SSO單點(diǎn)登錄原理,什么是SSO,SSO 認(rèn)證中心(

3、1個(gè)),User (多個(gè)),Web 應(yīng)用(多個(gè)),SSO原理,SSO體系中的角色,SSO 認(rèn)證中心和所有的 Web 應(yīng)用建立一種信任關(guān)系, 也就是說 web 應(yīng)用必須信任認(rèn)證中心。(單點(diǎn)信任),SSO 認(rèn)證中心通過一些方法來告訴 Web 應(yīng)用 當(dāng)前訪問用戶究竟是不是已通過認(rèn)證的用戶,所有的認(rèn)證登錄都在 SSO 認(rèn)證中心進(jìn)行,SSO原理,SSO實(shí)現(xiàn)模式的原則,CAS Server,CAS Client,CAS Server 負(fù)責(zé)完成對(duì)用戶的認(rèn)證工作 , 需要獨(dú)立部署 , CAS Server 會(huì)處理用戶名 / 密碼等憑證(Credentials),負(fù)責(zé)處理對(duì)客戶端受保護(hù)資源的訪問請(qǐng)求,需要對(duì)請(qǐng)求

4、方進(jìn)行身份認(rèn)證時(shí),重定向到 CAS Server 進(jìn)行認(rèn)證。(原則上,客戶端應(yīng)用不再接受任何的用戶名密碼等 Credentials )。 CAS Client 與受保護(hù)的客戶端應(yīng)用部署在一起,以 Filter 方式保護(hù)受保護(hù)的資源。,CAS 的基本原理,結(jié)構(gòu)體系,基礎(chǔ)模式 SSO 訪問流程主要有以下步驟: 1. 訪問服務(wù): SSO 客戶端發(fā)送請(qǐng)求訪問應(yīng)用系統(tǒng)提供的服務(wù)資源。 2. 定向認(rèn)證: SSO 客戶端會(huì)重定向用戶請(qǐng)求到 SSO 服務(wù)器。 3. 用戶認(rèn)證:用戶身份認(rèn)證。 4. 發(fā)放票據(jù): SSO 服務(wù)器會(huì)產(chǎn)生一個(gè)隨機(jī)的 Service Ticket 。 5. 驗(yàn)證票據(jù): SSO 服務(wù)器驗(yàn)證

5、票據(jù) Service Ticket 的合法性,驗(yàn)證通過后,允許客戶端訪問服務(wù)。 6. 傳輸用戶信息: SSO 服務(wù)器驗(yàn)證票據(jù)通過后,傳輸用戶認(rèn)證結(jié)果信息給客戶端。,CAS 原理和協(xié)議,什么是SSO,CAS 原理和協(xié)議,CAS 請(qǐng)求認(rèn)證時(shí)序圖,CAS 原理和協(xié)議,CAS 如何實(shí)現(xiàn) SSO,當(dāng)用戶訪問另一個(gè)應(yīng)用的服務(wù)再次被重定向到CAS Server的時(shí)候,CAS Server會(huì)主動(dòng)獲到這個(gè)TGC cookie,然后做下面的事情: 1)如果User持有TGC且其還沒失效,那么就走基礎(chǔ)協(xié)議圖的Step4,達(dá)到了SSO的效果; 2)如果TGC失效,那么用戶還是要重新認(rèn)證(走基礎(chǔ)協(xié)議圖的Step3)。,

6、CAS 原理和協(xié)議,CAS 代理模式,該模式形式為用戶訪問App1,App1又依賴于App2來獲取一些信息,如:User -App1 -App2。 這種情況下,假設(shè)App2也是需要對(duì)User進(jìn)行身份驗(yàn)證才能訪問,那么,為了不影響用戶體驗(yàn)(過多的重定向?qū)е耈ser的IE窗口不停地閃動(dòng)),CAS引入了一種Proxy認(rèn)證機(jī)制,即CAS Client可以代理用戶去訪問其它Web應(yīng)用。 代理的前提是需要CAS Client擁有用戶的身份信息(類似憑據(jù))。之前我們提到的TGC是用戶持有對(duì)自己身份信息的一種憑據(jù),這里的PGT就是CAS Client端持有的對(duì)用戶身份信息的一種憑據(jù)。憑借TGC,User可以免

7、去輸入密碼以獲取訪問其它服務(wù)的Service Ticket,所以,這里憑借PGT,Web應(yīng)用可以代理用戶去實(shí)現(xiàn)后端的認(rèn)證,而無需前端用戶的參與。 下面為代理應(yīng)用(helloService)獲取PGT的過程:(注:PGTURL用于表示一個(gè)Proxy服務(wù),是一個(gè)回調(diào)鏈接;PGT相當(dāng)于代理證;PGTIOU為取代理證的鑰匙,用來與PGT做關(guān)聯(lián)關(guān)系;),CAS 原理和協(xié)議,CAS 代理模式,代理認(rèn)證和提供服務(wù)的過程,CAS 安全性,TGC/PGT 安全性,對(duì)于一個(gè) CAS 用戶來說,最重要是要保護(hù)它的 TGC ,如果 TGC 不慎被 CAS Server 以外的實(shí)體獲得, Hacker 能夠找到該 TG

8、C ,然后冒充 CAS 用戶訪問 所有 授權(quán)資源。 PGT 的角色跟 TGC 是一樣的。 從基礎(chǔ)模式可以看出, TGC 是 CAS Server 通過 SSL 方式發(fā)送給終端用戶,因此,要截取 TGC 難度非常大,從而確保 CAS 的安全性。 TGT 的存活周期默認(rèn)為 120 分鐘。,CAS 安全性,ST/PT 安全性,ST ( Service Ticket )是通過 Http 傳送的,因此網(wǎng)絡(luò)中的其他人可以 Sniffer 到其他人的 Ticket 。 CAS 通過以下幾方面來使 ST 變得更加安全(事實(shí)上都是可以配置的): 1、 ST 只能使用一次 CAS 協(xié)議規(guī)定,無論 Service Ticket 驗(yàn)證是否成功, CAS Server 都會(huì)清除服務(wù)端緩存中的該Ticket ,從而可以確保一個(gè) Service Ticket 不被使用兩次。 2、 ST 在一段時(shí)間內(nèi)失效 CAS 規(guī)定 ST 只能存活一定的時(shí)間,然后 CAS Server 會(huì)讓它失效。默認(rèn)有效時(shí)間為 5 分鐘。 3、 ST 是基于隨機(jī)數(shù)生成的 ST 必須足夠隨機(jī),如果 ST 生成規(guī)則被猜出, Hacker 就等于繞過 CAS 認(rèn)證,直接訪問 對(duì)應(yīng)的服務(wù)。,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論