單點登錄二

這篇文章主要是針對單點登錄一中的框架結構進行對應的改造與優化,具體的改造優化主要包括以下幾點:

  • 整合分佈式服務框架dubbo
    改造前:通過HttpClient方式發送http請求到認證中心
    改造後:通過dubbo微服務方式暴露認證中心接口服務

  • 把oa與pro系統的攔截器提取出來
    子系統中攔截器的實現邏輯基本相同,提取出來根據方便維護管理,同時也減少了代碼的冗餘。

  • 提取代碼中常量的配置,通過在xml文件中進行常量配置

    <property name="authenticationConfig">
         <bean class="com.sso.client.authc.AuthenticationConfig">
            <property name="loginUrl" value="/login" />
            <property name="excludeUrls" value="^/$,^/login$,.+\.js,.+\.ico,.+\.css" />
            <property name="cookieName" value="SSO_PLATEFORM" />
            <property name="cookieDomain" value="sso.com"></property>
         </bean>
     </property> 
     
     <property name="authenticationCache">
         <bean class="com.sso.client.support.cache.RedisCache" init-method="init">
             <property name="host" value="127.0.0.1"/>
             <property name="port" value="6379"/>
             <property name="timeout" value="7200"/>
         </bean>
     </property>
    
  • 在cookie中存放用戶憑證的時候設置二級域名爲sso.com

springboot+dubbo+redis代碼實現https://github.com/lx-sunday/sso-dubbo.git

啓動項目步驟
1:在本地安裝並開啓zookeeper
2:在本地安裝並開啓redis
3:啓動項目sso-server pro-client oa-client
5:綁定host 127.0.0.1 oa.test.sso.com,訪問oa系統 oa.test.sso.com:8089,需要輸入用戶登錄信息
6:綁定host 127.0.0.1 pro.test.sso.com,訪問pro系統 pro.test.sso.com:8090,不需要輸入用戶登錄信息
7:pro系統退出登錄,刷新oa系統發現需要再次輸入登錄用戶信息

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章