XxlSsoConfig.java 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package com.mokamrp.privates.config;
  2. import com.xxl.sso.core.conf.Conf;
  3. import com.xxl.sso.core.filter.XxlSsoWebVueFilter;
  4. import com.xxl.sso.core.util.JedisUtil;
  5. import org.springframework.beans.factory.DisposableBean;
  6. import org.springframework.beans.factory.annotation.Value;
  7. import org.springframework.boot.web.servlet.FilterRegistrationBean;
  8. import org.springframework.context.annotation.Bean;
  9. import org.springframework.context.annotation.Configuration;
  10. /**
  11. * @author xuxueli 2018-11-15
  12. */
  13. @Configuration
  14. public class XxlSsoConfig implements DisposableBean {
  15. @Value("${xxl.sso.server}")
  16. private String xxlSsoServer;
  17. @Value("${xxl.sso.logout.path}")
  18. private String xxlSsoLogoutPath;
  19. @Value("${xxl-sso.excluded.paths}")
  20. private String xxlSsoExcludedPaths;
  21. @Value("${xxl.sso.redis.address}")
  22. private String xxlSsoRedisAddress;
  23. @Bean
  24. public FilterRegistrationBean exxlSsoFilterRgistration() {
  25. // xxl-sso, redis init
  26. JedisUtil.init(xxlSsoRedisAddress);
  27. // xxl-sso, filter init
  28. FilterRegistrationBean registration = new FilterRegistrationBean();
  29. registration.setName("XxlSsoWebFilter");
  30. registration.setOrder(1);
  31. registration.addUrlPatterns("/*");
  32. registration.setFilter(new XxlSsoWebVueFilter());
  33. registration.addInitParameter(Conf.SSO_SERVER, xxlSsoServer);
  34. registration.addInitParameter(Conf.SSO_LOGOUT_PATH, xxlSsoLogoutPath);
  35. registration.addInitParameter(Conf.SSO_EXCLUDED_PATHS, xxlSsoExcludedPaths);
  36. return registration;
  37. }
  38. @Override
  39. public void destroy() throws Exception {
  40. // xxl-sso, redis close
  41. JedisUtil.close();
  42. }
  43. }