|
环境:
在本机配置了两个 tomcat ,两个端口,改 hosts 设置了两个域名,创建两个数据库,启动两个3.7.1版本的 JEECG 平台
服务端配置按系统原来的配置不变:
sso.properties:
sso.secretkey=Kisso4springMvc80mAS
sso.cookie.name=uid
sso.cookie.domain=.test.com
客户端配置:
sso.properties:
sso.secretkey=h2wmABdfM7i3K801my
sso.cookie.name=client
sso.cookie.domain=.test.com
# Default RC4 , You can choose [ DES , AES , BLOWFISH , RC2 , RC4 ]
#sso.encrypt.algorithm=BLOWFISH
sso.login.url=http://sso.test.com/loginController.do?login
spring配置:
<!-- 拦截器 -->
<mvc:interceptors>
<!-- SSO 登录验证拦截器
path 对所有的请求拦截使用/**,对某个模块下的请求拦截使用:/myPath/* -->
<mvc:interceptor>
<mvc:mapping path="/**" />
<bean class="com.baomidou.kisso.web.interceptor.SSOSpringInterceptor" />
</mvc:interceptor>
<!-- SSO 系统权限拦截器 TODO 需要自己实现拦截器来控制权限处理(菜单权限,功能权限控制) -->
<mvc:interceptor>
<mvc:mapping path="/**" />
<bean class="org.jeecgframework.core.interceptors.EncodingInterceptor" />
</mvc:interceptor>
<mvc:interceptor>
<mvc:mapping path="/api/**" />
<bean class="org.jeecgframework.core.interceptors.SignInterceptor" />
</mvc:interceptor>
<!--add-end-dangzhenghui 20170402 for 添加 api延签拦截器 对签名统处理-->
<mvc:interceptor>
<mvc:mapping path="/**" />
<bean class="org.jeecgframework.core.interceptors.AuthInterceptor">
<property name="excludeUrls">
<list>
<value>loginController.do?goPwdInit</value>
<value>loginController.do?pwdInit</value>
<value>loginController.do?login</value>
<value>loginController.do?logout</value>
<value>loginController.do?changeDefaultOrg</value>
<value>loginController.do?login2</value>
<value>loginController.do?login3</value>
<value>loginController.do?checkuser</value>
<value>loginController.do?checkuser=</value>
<value>repairController.do?repair</value>
<value>systemController.do?saveFiles</value>
<value>repairController.do?deleteAndRepair</value>
<value>userController.do?userOrgSelect</value>
<!--移动图表-->
<value>cgDynamGraphController.do?design</value>
<value>cgDynamGraphController.do?datagrid</value>
<!--online表单对外接口-->
<!--<value>cgFormDataController.do?getFormInfo</value>
<value>cgFormDataController.do?deleteFormInfo</value>
<value>cgFormDataController.do?addFormInfo</value>
<value>cgFormDataController.do?updateFormInfo</value>-->
<!-- 菜单样式图标预览 -->
<value>webpage/common/functionIconStyleList.jsp</value>
<value>timeTaskController.do?remoteTask</value>
</list>
</property>
<!-- 模糊匹配 -->
<property name="excludeContainUrls">
<list>
<value>toLogin.do</value>
</list>
</property>
</bean>
</mvc:interceptor>
</mvc:interceptors>
两个平台都能正常跑起来,用 my.web.com:8080 做客户端, 用 sso.test.com:80 做服务端,但客户端登录不了,checkUser 返回的是html而不是json,是不是被拦截的原因,如果不拦截就能按客户端登录,但没实现单点登录功能
现在我有两个疑问:
1.上面配置对不对?
2.要实现单点登录功能自己要改哪些代码,要实现什么功能?
希望知道的帮我解答一下.谢谢!
|
|