From 4228cb0f9ff33e4baa4be0ac904eb927f8d84a19 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期六, 11 十月 2025 14:28:27 +0800
Subject: [PATCH] 提交代码
---
management/guns-admin/src/main/java/com/stylefeng/guns/config/web/WebConfig.java | 97 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 97 insertions(+), 0 deletions(-)
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/config/web/WebConfig.java b/management/guns-admin/src/main/java/com/stylefeng/guns/config/web/WebConfig.java
index a94beb7..c0fdd46 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/config/web/WebConfig.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/config/web/WebConfig.java
@@ -11,10 +11,14 @@
import com.stylefeng.guns.core.intercept.RestApiInteceptor;
import com.stylefeng.guns.core.listener.ConfigListener;
import com.stylefeng.guns.core.xss.XssFilter;
+import edu.yale.its.tp.cas.client.filter.OnconMDCasFilter;
+import org.jasig.cas.client.session.SingleSignOutFilter;
+import org.jasig.cas.client.session.SingleSignOutHttpSessionListener;
import org.springframework.aop.Advisor;
import org.springframework.aop.support.DefaultPointcutAdvisor;
import org.springframework.aop.support.JdkRegexpMethodPointcut;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletListenerRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
@@ -25,7 +29,9 @@
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
+import java.util.ArrayList;
import java.util.Arrays;
+import java.util.List;
import java.util.Properties;
/**
@@ -39,6 +45,9 @@
@Autowired
private GunsProperties gunsProperties;
+
+ @Value("${spring.profiles.active}")
+ private String activeProfile;
/**
* 增加swagger的支持
@@ -173,4 +182,92 @@
defaultKaptcha.setConfig(config);
return defaultKaptcha;
}
+
+
+ /********************黔云通单点登录拦截器**********************/
+
+ @Bean
+ public FilterRegistrationBean getOnconMDCasFilter() {
+ OnconMDCasFilter onconMDCasFilter = new OnconMDCasFilter();
+ FilterRegistrationBean registrationBean = new FilterRegistrationBean();
+ if("dev".equals(activeProfile)){
+ registrationBean.setFilter(onconMDCasFilter);
+ List<String> urlPatterns = new ArrayList<String>();
+ urlPatterns.add("/*");
+ registrationBean.setUrlPatterns(urlPatterns);
+ registrationBean.setOrder(2);
+
+ registrationBean.addInitParameter("oncon.com.security.urls", "/**");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.noCheckUrl", "/index.html,/static/**,/upload/**");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.nologinstatus", "/*");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.loginstatus", "/*");
+ registrationBean.addInitParameter("com.oncon.sso.urlparams.nologin", "code,code2");
+
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.loginUrl", "https://testsso1.teamshub.com/login");
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.validateUrl", "https://testsso1.teamshub.com/serviceValidate");
+ registrationBean.addInitParameter("com.oncon.md.loginUrl", "https://testsso1.teamshub.com/sso-session/login");
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.serverName", "http://127.0.0.1:8010");
+ }
+ if("test".equals(activeProfile)){
+ registrationBean.setFilter(onconMDCasFilter);
+ List<String> urlPatterns = new ArrayList<String>();
+ urlPatterns.add("/*");
+ registrationBean.setUrlPatterns(urlPatterns);
+ registrationBean.setOrder(2);
+
+ registrationBean.addInitParameter("oncon.com.security.urls", "/**");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.noCheckUrl", "/index.html,/static/**,/upload/**");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.nologinstatus", "/*");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.loginstatus", "/*");
+ registrationBean.addInitParameter("com.oncon.sso.urlparams.nologin", "code,code2");
+
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.loginUrl", "https://testsso1.teamshub.com/login");
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.validateUrl", "https://testsso1.teamshub.com/serviceValidate");
+ registrationBean.addInitParameter("com.oncon.md.loginUrl", "https://testsso1.teamshub.com/sso-session/login");
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.serverName", "https://test-qncx.sitechcloud.com:443/djadmin/login");
+ }
+ if("prod".equals(activeProfile)){
+ registrationBean.setFilter(onconMDCasFilter);
+ List<String> urlPatterns = new ArrayList<String>();
+ urlPatterns.add("/*");
+ registrationBean.setUrlPatterns(urlPatterns);
+ registrationBean.setOrder(2);
+
+ registrationBean.addInitParameter("oncon.com.security.urls", "/**");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.noCheckUrl", "/index.html,/static/**,/upload/**");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.nologinstatus", "/*");
+ registrationBean.addInitParameter("erp.si-tech.com.cn.loginstatus", "/*");
+ registrationBean.addInitParameter("com.oncon.sso.urlparams.nologin", "code,code2");
+
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.loginUrl", "https://sso.teamshub.com/login");
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.validateUrl", "https://sso.teamshub.com/serviceValidate");
+ registrationBean.addInitParameter("com.oncon.md.loginUrl", "https://passport.teamshub.com/login");
+ registrationBean.addInitParameter("edu.yale.its.tp.cas.client.filter.serverName", "https://traffic.qytzt.cn:443/djadmin/login");
+ }
+ return registrationBean;
+ }
+
+ @Bean
+ public FilterRegistrationBean getSingleSignOutFilter() {
+ SingleSignOutFilter singleSignOutFilter = new SingleSignOutFilter();
+ FilterRegistrationBean registrationBean = new FilterRegistrationBean();
+ registrationBean.setFilter(singleSignOutFilter);
+ List<String> urlPatterns = new ArrayList<String>();
+ urlPatterns.add("/*");//拦截路径,可以添加多个
+ registrationBean.setUrlPatterns(urlPatterns);
+ registrationBean.setOrder(1);
+
+ registrationBean.addInitParameter("wmall.flag", "false");
+
+ return registrationBean;
+ }
+
+
+ @Bean
+ public ServletListenerRegistrationBean<SingleSignOutHttpSessionListener> getSingleSignOutHttpSessionListener() {
+ ServletListenerRegistrationBean<SingleSignOutHttpSessionListener> servletListenerRegistrationBean
+ = new ServletListenerRegistrationBean<>();
+ servletListenerRegistrationBean.setListener(new SingleSignOutHttpSessionListener());
+ return servletListenerRegistrationBean;
+ }
}
--
Gitblit v1.7.1