SpringSecurity-ChannelProcessingFilter的作用
Posted zsxneil
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringSecurity-ChannelProcessingFilter的作用相关的知识,希望对你有一定的参考价值。
ChannelProcessingFilter决定的是web请求的通道,即http或https。
在springsecurity配置文件中添加这样一行
<intercept-url pattern=‘/**‘ requires-channel=‘https‘ />
ChannelProcessingFilter就会检查这个请求走的是否是https。如果是,就继续向下执行。否则,自动切换到对应的channel!
ChannelProcessingFilter有一个成员变量ChannelDecisionManager。
ChannelDecisionManager的decide方法即是判断channel是否正确。
ChannelDecisionManager的成员变量List<ChannelProcessor>默认有两个Processor:InsecureChannelProcessor和SecureChannelProcessor,
这两个Processor分别检查http和https的请求,如果请求的channel不正确,会自动切换(redirect)的对应的channel;
默认端口:http/80,https/443
public PortMapperImpl() { httpsPortMappings = new HashMap<Integer, Integer>(); httpsPortMappings.put(Integer.valueOf(80), Integer.valueOf(443)); httpsPortMappings.put(Integer.valueOf(8080), Integer.valueOf(8443)); }
以上是关于SpringSecurity-ChannelProcessingFilter的作用的主要内容,如果未能解决你的问题,请参考以下文章