安全通道以及防止跨站请求伪造

一.

HTTP提交是一个风险极大的事,所以用HTTPS加密运输可以保护用户信息的安全。

在configre的HttpSecurity对象提供了一个方法,requiresChannel()方法,借助这个方法,可以为各种url提供要求的通道。

如果想用https的通道

.requiresChannel
.antMatchers("/").requiresSecure()

如果还是想用http传送

.requiresChannel
.antMatchers("/").requiresInecure()


二.

跨站请求伪造也是CSRF攻击。为了防止攻击,security通过一个同步的token的方式实现防护

它会拦截状态变化的请求,并检查CSRF token。如果请求中不包含CSRF token的话,或者token和服务器的不匹配

那么请求就失败,抛出CsrfExceotion异常

解决方法:要在页面中添加一个隐藏域

如果在Thymeleaf中   用

在action中应用Thymeleaf的命名空间就会自动生成一个隐藏域

如果在JSP中的话


你可能感兴趣的:(spring)