單點登陸(Single Sign On , 簡稱 SSO )是目前比較流行的服務於企業業務整合的解決方案之一, SSO 使得在多個應用系統中,用戶只須要登陸一次就能夠訪問全部相互信任的應用系統。CAS(Central Authentication Service)是一款不錯的針對 Web 應用的單點登陸框架。web
CAS(Central Authentication Service)是一款不錯的針對 Web 應用的單點登陸框架。數據庫
CAS 包含兩個部分: CAS Server 和 CAS Client。瀏覽器
CAS Server 須要獨立部署,主要負責對用戶的認證工做;緩存
CAS Client 負責處理對客戶端受保護資源的訪問請求,須要登陸時,重定向到 CAS Server。安全
CAS Client 與受保護的客戶端應用部署在一塊兒,以 Filter 方式保護受保護的資源。對於訪問受保護資源的每一個 Web 請求,CAS Client 會分析該請求的 Http 請求中是否包含 Service Ticket,若是沒有,則說明當前用戶還沒有登陸,因而將請求重定向到指定好的 CAS Server 登陸地址,並傳遞 Service (也就是要訪問的目的資源地址),以便登陸成功事後轉回該地址。用戶在第 3 步中輸入認證信息,若是登陸成功,CAS Server 隨機產生一個至關長度、惟1、不可僞造的 Service Ticket,並緩存以待未來驗證,以後系統自動重定向到 Service 所在地址,併爲客戶端瀏覽器設置一個 Ticket Granted Cookie(TGC),CAS Client 在拿到 Service 和新產生的 Ticket 事後,在第 5,6 步中與 CAS Server 進行身份合適,以確保 Service Ticket 的合法性。框架
在該協議中,全部與 CAS 的交互均採用 SSL 協議,確保,ST 和 TGC 的安全性。協議工做過程當中會有 2 次重定向的過程,可是 CAS Client 與 CAS Server 之間進行 Ticket 驗證的過程對於用戶是透明的。優化
另外,CAS 協議中還提供了 Proxy (代理)模式,以適應更加高級、複雜的應用場景,具體介紹能夠參考 CAS 官方網站上的相關文檔。網站
LDAP(輕量級目錄訪問協議,Lightweight Directory Access Protocol)是實現提供被稱爲目錄服務的信息服務。目錄服務是一種特殊的數據庫系統,其專門針對讀取,瀏覽和搜索操做進行了特定的優化。目錄通常用來包含描述性的,基於屬性的信息並支持精細複雜的過濾能力。目錄通常不支持通用數據庫針對大量更新操做操做須要的複雜的事務管理或回捲策略。而目錄服務的更新則通常都很是簡單。這種目錄能夠存儲包括我的信息、web鏈結、jpeg圖像等各類信息。爲了訪問存儲在目錄中的信息,就須要使用運行在TCP/IP 之上的訪問協議—LDAP。spa