|
@@ -6,6 +6,8 @@ import net.unicon.cas.client.configuration.EnableCasClient;
|
|
import org.jasig.cas.client.authentication.AuthenticationFilter;
|
|
import org.jasig.cas.client.authentication.AuthenticationFilter;
|
|
import org.jasig.cas.client.proxy.ProxyGrantingTicketStorageImpl;
|
|
import org.jasig.cas.client.proxy.ProxyGrantingTicketStorageImpl;
|
|
import org.jasig.cas.client.util.HttpServletRequestWrapperFilter;
|
|
import org.jasig.cas.client.util.HttpServletRequestWrapperFilter;
|
|
|
|
+import org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter;
|
|
|
|
+import org.jasig.cas.client.validation.Cas20ServiceTicketValidator;
|
|
import org.jasig.cas.client.validation.Cas30ProxyTicketValidator;
|
|
import org.jasig.cas.client.validation.Cas30ProxyTicketValidator;
|
|
import org.jasig.cas.client.validation.TicketValidator;
|
|
import org.jasig.cas.client.validation.TicketValidator;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
@@ -57,4 +59,34 @@ public class CasConfig {
|
|
|
|
|
|
return registration;
|
|
return registration;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 配置ticket校验器
|
|
|
|
+ *
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ @Bean
|
|
|
|
+ public Cas20ServiceTicketValidator cas20ServiceTicketValidator() {
|
|
|
|
+ // 配置上服务端的校验ticket地址
|
|
|
|
+ Cas20ServiceTicketValidator validator = new Cas20ServiceTicketValidator(serverUrlPrefix);
|
|
|
|
+ validator.setEncoding("UTF-8");
|
|
|
|
+
|
|
|
|
+ return validator;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Bean
|
|
|
|
+ public FilterRegistrationBean filterCasTicketValidationRegistration() {
|
|
|
|
+ Cas20ProxyReceivingTicketValidationFilter filter = new Cas20ProxyReceivingTicketValidationFilter();
|
|
|
|
+ filter.setServerName(clientHostUrl);
|
|
|
|
+ filter.setTicketValidator(cas20ServiceTicketValidator());
|
|
|
|
+
|
|
|
|
+ FilterRegistrationBean registration = new FilterRegistrationBean();
|
|
|
|
+
|
|
|
|
+ registration.setFilter(filter);
|
|
|
|
+
|
|
|
|
+ // 设定匹配的路径
|
|
|
|
+ registration.addUrlPatterns("/auth/*");
|
|
|
|
+
|
|
|
|
+ return registration;
|
|
|
|
+ }
|
|
}
|
|
}
|