基於 Cookie 的 SSO 中間件 kisso


kisso   cookie sso

基於 Cookie 的 SSO 中間件,它是一把快速開發 java Web 登錄系統(SSO)的瑞士軍刀。歡迎大家使用 kisso !! 


kisso 幫助文檔下載

1、支持單點登錄

2、支持登錄Cookie緩存

3、支持防止 xss攻擊, SQL注入,腳本注入

4、支持 Base64 / MD5 / AES / PBE / RSA 算法

5、支持瀏覽器客戶端校驗

6、支持Cookie參數配置及擴展

7、支持跨域登錄,模擬登錄

8、支持在線人數統計

9、支持生成動態圖片驗證碼

10、支持 app 移動端 api 服務驗證,采用微信公眾平台 api 驗證機制認證

11、自帶權限驗證邏輯,支持基礎 Shiro , SpringSecurity 權限系統

kisso 依賴 jars

kisso_oauth2 演示 demo

kisso_ApiServer 移動 APP 端 API 演示 demo

kisso_JFinal 演示 demo

kisso_SpringMvc 演示 demo

kisso_crossdomain 跨域演示 demo

實例演示 SSM 架構后台管理系統


Maven 坐標:

http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.baomidou%22%20AND%20a%3A%22kisso%22

?
1
2
3
4
5
<dependency>
     <groupId>com.baomidou</groupId>
     <artifactId>kisso</artifactId>
     <version>Maven 官方最新版本為准</version>
</dependency>



(1)、kisso 是什么,與 cas 區別 ?

               1、cas 是單點登錄系統,它給你制定好了規則按照它的要求做就可以,配置(復雜)好一切即可實現單點登錄。

               2、kisso 是一個中間件,提供 cookie 搭建 java web sso 的組件式解決方案。你不管使用任何架構都可以使用它,就像一個 U 盤需要使用就插入、不用就拔掉。

               3、cas 集中驗證,所有請求都由 cas 集中驗證,缺點cas服務壓力巨大。kisso 分散驗證,由各個系統驗證 cookie 合法性,缺點秘鑰要保護好。



(2)、為什么是 cookie 而不是 session 它們有何區別 ?

               kisso 采用的是加密會話 cookie 瀏覽器關閉立即失效,同時支持后台登錄超時自動退出,支持客戶端瀏覽器驗證、訪問 ip 及 cookie 安全配置等。

                1、session 存放在服務器端,cookie 存放在客戶端,存在 2 種狀態:“ 第一種:持久 cookie 具有時效性,以文件的形式存放在客戶機硬盤中,時間一到生命周期結束自動被刪除。第二種:臨時 cookie 又叫會話 cookie 放在瀏覽器內存中,瀏覽器關閉生命周期結束自動失效 ”。

                2、單純不做任何改變而言 session 更安全,如果 cookie 采取各種安全保護措施,此時的 cookie 一樣安全。

               3、cookie 輕松實現分布式服務部署,單點登錄跨域訪問等問題,換成 session 需要處理 session 復制及各種問題實現困難。


(3)、經常被問及的問題 ?

               在此重申下,下載源碼的朋友先按照 demo 提供的例子運行跑通后,再修改不要上來就急急忙忙改,不會了就截圖發問,這樣一則沒有理解透徹實現原理,二則耽誤別人的時間,實在是得不償失。


             1、跨域是什么 ? 這里跨域有 2 種  :


         第一種、同一個根域名不同子域名,比如 my.baomidou.com 、  sso.baomidou.com  、other.baomidou.com 此時配置  domain 只需要配置   .baomidou.com  即可。

        查看普通 demo : kisso_JFinal 演示 demo   kisso_SpringMvc 演示 demo



        第二種、完全不同的域名,比如  sso.baomidou.com     git.oschina.net 此時比較復雜 kisso 采用的是 rsa 加密詢問驗證(較復雜)

        查看跨域 demo: kisso_crossdomain 跨域演示 demo


         2、改成 ip 支持么 ?

        支持! 注意訪問時候使用 ip 訪問,domain 的配置 ip 即可,不要是  .192.168.1.3  注意此時不要在前面加個  .  點。


        3、sso.properties  怎么去配置 ?

    除了密鑰、域名、必須修改,其他默認配置或根據需要選擇配置即可 查考點擊 根據自己的需求選擇配置。


    很多朋友問?都誰在用 kisso !?

      不要問我星星有幾顆, 我會告訴你很多很多!!(保密)



(1)sso 登錄狀態 




(2)跨域登錄


hosts:

127.0.0.1 sso.test.com

127.0.0.1 my.web.com

訪問 my.web.com:8090/index.html 如果未登錄會重定向至sso域登錄頁面 


登錄成功 my.web.com 如圖 


普通登錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM