CAS实现过滤掉某些URL不走单点登录

本文档介绍了如何在CAS客户端实现自定义过滤器,以排除特定URL不进行单点登录。通过创建并配置CASAuthenticationFilter和CasTicketValidationFilter,避免了对某些URL应用CAS的认证和票证验证流程。
摘要由CSDN通过智能技术生成
Cas filter client端没有自带过滤掉某些url不进行单点登录的init-param ,需要实现自定义的Filter 取代org.jasig.cas.client.authentication.AuthenticationFilter和org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter
1.实现CASAuthenticationFilter extends AbstractCasFilter
因为cas自带的filter中org.jasig.cas.client.authentication.AuthenticationFilter 的doFilter方法是final的,无法重写,所以需要直接继承AbstractCasFilter
实现代码如下
[public class CASAuthenticationFilter extends AbstractCasFilter {
  
private final String ExcludeFile = "ExcludeFile"; //excludeFile 列表
private String casServerLoginUrl;
private boolean renew;
private boolean gateway;
private GatewayResolver gatewayStorage;
private String strExcludeFile;
private String[] arrExcludeFile = null;
public CASAuthenticationFilter(){
this.renew = false;

this.gateway = false;

this.gatewayStorage = new DefaultGatewayResolverImpl();
setStrExcludeFile("");
}

protected void initInternal(FilterConfig filterConfig) throws ServletException {
if (!(isIgnoreInitConfiguration())) {
super.initInternal(filterConfig);
setCasServerLoginUrl(getPropertyFromInitParams(filterConfig, "casServerLoginUrl", null));
this.log.trace("Loaded CasServerLoginUrl parameter: " + this.casServerLoginUrl);
setRenew(parseBoolean(getPropertyFromInitParams(filterConfig, "renew", "false")));
this.log.trace("Loaded renew parameter: " + this.renew);
setGateway(parseBoolean(getPropertyFromInitParams(filterConfig, "gateway", "false")));
this.log.trace("Loaded gateway parameter: " + this.gateway);

setStrExcludeFil
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值