java sso 基於 cookie 實現方案 kisso

基於 Cookie 的 SSO 中間件 kissohtml



kisso 依賴 jarsgit

kisso 驗證碼字體web

kisso_JFinal 演示 demospring

kisso_SpringMvc 演示 demosql

kisso_crossdomain 跨域演示 demo跨域


kisso 使用說明文檔:瀏覽器

-----------------------------------------------------------------
kisso 啓動  web.xml 配置
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

<!-- SSO 配置 -->
<context-param>
	<param-name>kissoConfigLocation</param-name>
	<param-value>classpath:properties/sso.properties</param-value>
</context-param>
<listener>
	<listener-class>com.baomidou.kisso.web.KissoConfigListener</listener-class>
</listener>

-----------------------------------------------------------------
Servlet 方式 SSO 攔截器  web.xml 配置 【可選】
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

<!-- SSOFilter use . -->
<filter>
	<filter-name>SSOFilter</filter-name>
	<filter-class>com.baomidou.kisso.web.filter.SSOFilter</filter-class>
	<init-param>
		<param-name>over.url</param-name>
		<param-value>/login.html</param-value>
	</init-param>
</filter>
<filter-mapping>
	<filter-name>SSOFilter</filter-name>
	<url-pattern>/*</url-pattern>
</filter-mapping>


-----------------------------------------------------------------
Spring SSO 攔截器配置 【選擇這種方式,SSOFilter 就不須要配置了】
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

<mvc:interceptors>
	<!-- SSO 攔截器 -->
	<!-- path 對全部的請求攔截使用/**,對某個模塊下的請求攔截使用:/myPath/* -->
	<mvc:interceptor>
		<mvc:mapping path="/**" />
		<bean class="com.baomidou.kisso.web.spring.SSOInterceptor" />
	</mvc:interceptor>
</mvc:interceptors>

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
Spring SSO 攔截器配置,此基礎上支持方法註解,以下跳過該方法登陸驗證。
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

@Login(action = Action.Skip)


-----------------------------------------------------------------
Servlet 方式 SSO 防火牆濾器  web.xml 配置 【可選】
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

<!-- WafFilter use . -->
<filter>
	<filter-name>WafFilter</filter-name>
	<filter-class>com.baomidou.kisso.web.filter.WafFilter</filter-class>
	<init-param>
		<param-name>over.url</param-name>
		<param-value>/test/a.html;/test/b.html</param-value>
	</init-param>
	<init-param>
      <param-name>filter_xss</param-name>
      <param-value>true</param-value>
    </init-param>
	<init-param>
      <param-name>filter_sql_injection</param-name>
      <param-value>true</param-value>
    </init-param>
</filter>
<filter-mapping>
	<filter-name>WafFilter</filter-name>
	<url-pattern>/*</url-pattern>
</filter-mapping>


-------------------------------------------------------------------
sso.properties 配置說明
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

sso.production.mode  模式配置,默認不帶後綴爲線上模式,
		     模式設置:_dev_mode 開發 ,_test_mode 測試 ,_online_mode 生產

sso.encoding		  編碼格式: 默認 UTF-8

sso.secretkey		  加密密鑰

------  cookie 設置部分 ------
sso.cookie.name			名稱,默認 uid

sso.cookie.secure		是否只能HTTPS訪問,默認 false       【客戶端配置可無】
sso.cookie.httponly 	是否設置 httponly腳本沒法訪問,默認 true   	 【客戶端配置可無】
sso.cookie.maxage		過時時間,默認 -1 關閉瀏覽器失效 	 【客戶端配置可無】
sso.cookie.domain		所在域,請設置根域,如 .baomidou.com 【客戶端配置可無】
sso.cookie.path			路徑,默認 / 			 【客戶端配置可無】

sso.cookie.browser		是否檢查瀏覽器,默認 true
sso.cookie.checkip		是否檢查登陸IP,默認 false
sso.encrypt.class		自定義對稱加密類,默認AES,自定義例如:com.baomidou.my.DES
sso.statistic.class		自定義在線人數統計類,必須實現  SSOStatistic 接口
sso.token.class			自定義票據,默認SSOToken,自定義例如:com.baomidou.bo.LoginToken

------  緩存部分 ------
sso.cache.class	自定義緩存實現:com.baomidou.cache.RedisCache
sso.cache.expires  單位s秒,設置 -1永不失效,大於 0 失效時間

------  SSO 請求地址設置 ------
sso.login.url_online_mode		線上模式,登陸地址:http://sso.testdemo.com/login.html
sso.login.url_dev_mode			開發模式,登陸地址:http://localhost:8080/login.html

sso.logout.url_online_mode		線上模式,退出地址:http://sso.testdemo.com/logout.html
sso.logout.url_dev_mode			開發模式,退出地址:http://localhost:8080/logout.html

sso.param.returl				重定向地址參數配置,默認:ReturnURL

------  跨域 cookie 設置部分 ------
sso.crossdomain.cookie.name		名稱pid,請不要與登陸 cookie 名稱一致
sso.crossdomain.cookie.maxage	        過時時間,默認 -1 關閉瀏覽器失效

-----------------------------------------------------------------
相關文章
相關標籤/搜索