Spring Security4 CSRF 如何关闭CSRF功能
什么是CSRF?
csrf又称跨域请求伪造,攻击方通过伪造用户请求访问受信任站点。CSRF这种攻击方式在2000年已经被国外的安全人员提出,但在国内,直到06年才开始被关注,08年,国内外的多个大型社区和交互网站分别爆出CSRF漏洞,如:NYTimes.com(纽约时报)、Metafilter(一个大型的BLOG网站),YouTube和百度HI……而现在,互联网上的许多站点仍对此毫无防备,以至于安全业界称CSRF为“沉睡的巨人”。
举个例子,用户通过表单发送请求到银行网站,银行网站获取请求参数后对用户账户做出更改。在用户没有退出银行网站情况下,访问了攻击网站,攻击网站中有一段跨域访问的代码,可能自动触发也可能点击提交按钮,访问的url正是银行网站接受表单的url。因为都来自于用户的浏览器端,银行将请求看作是用户发起的,所以对请求进行了处理,造成的结果就是用户的银行账户被攻击网站修改。
解决方法基本上都是增加攻击网站无法获取到的一些表单信息,比如增加图片验证码,可以杜绝csrf攻击,但是除了登陆注册之外,其他的地方都不适合放验证码,因为降低了网站易用性
CSRF导致的接口访问问题
Could not verify the provided CSRF token because your session was not found in spring security
问题表现:
在开发人员使用Postman调试接口时,已经通过继承WebSecurityConfigurerAdapter过滤了Rest接口拦截的机制,但出现403错误并且提示信息为“Could not verify the provided CSRF token because your session was not found in spring security”。
解决方法:
/*** Web安全配置*/
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {@Overrideprotected void configure(HttpSecurity http) throws Exception {http// 关闭csrf保护功能(跨域访问).csrf().disable().authorizeRequests().antMatchers("/api/**").permitAll();//访问API下无需登录认证权限}}
Spring Security4 CSRF 如何关闭CSRF功能相关推荐
- spring security CSRF 问题 Invalid CSRF Token 'null' was found on ......
1. 问题 前面几篇博客 spring security在集成spring boot的微服务框架后,实现了cas认证和权限控制.但是在使用 postman 进行调用的时候出现这个问题 HTTP Sta ...
- 使用Spring Security和Thymeleaf进行CSRF保护
1. 简介 Thymeleaf是一个Java模板引擎,用于处理和创建HTML,XML,JavaScript,CSS和纯文本.有关Thymeleaf和Spring的介绍,请查看这篇文章. 在本文中,我们 ...
- 新版Jenkins关闭CSRF“HTTP ERROR 403 No valid crumb was included in the request“
新版Jenkins关闭CSRF hudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION = true & ...
- java ajax 登陆验证,Spring Security4实例(Java config版)——ajax登录,自定义验证
本文源码请看这里 首先添加起步依赖(如果不是springboot项目,自行切换为Spring Security依赖) org.springframework.boot spring-boot-star ...
- Spring Security入门01-22 登录验证功能
课程链接:SpringSecurity框架教程 开始时间:2022-07-17 快速入门 搭建一个Spring Boot项目 添加基础依赖和创建启动类和controller controller @R ...
- Spring Security 入门 Remember-Me 记住我功能
用户选择了"记住我"成功登录后,将会把username.随机生成的序列号.生成的token存入一个数据库表中,同时将它们的组合生成一个cookie发送给客户端浏览器. 当没有登录的 ...
- Spring boot中使用Spring Security的记住我 remember-me功能
Spring boot中使用Spring Security的记住我 remember-me功能 问题描述:Spring security新手,在登录时加上记住我功能,需要使用框架自带的记住我. 记住的 ...
- (转)Spring提供的CharacterEncoding和OpenSessionInView功能
http://blog.csdn.net/yerenyuan_pku/article/details/52902282 前面我们以一种更加优雅的方式集成了Spring4.2.5+Hibernate4. ...
- 解密电商系统-Spring boot快速开始及核心功能介绍(下)
上次说了Spring boot快速开始及核心功能介绍,本次说说配置文件相关的. Spring Boot属性配置文件详解(一) 修改端口 # application.properties: server ...
最新文章
- PHP Web 2.0开发实战
- 计算机争夺战作文,电脑争夺战作文600字
- delphi libeay32 各版本_Zbrush各版本合集
- java虚拟机读写其他进程的数据
- MATLAB库函数firls(最小二乘线性相位FIR滤波器设计)的C语言实现
- nlp构建_使用NLP构建自杀性推文分类器
- c++opencv汉字分割_机器学习小白,还不快pick一下——【视觉与图像:阈值分割】...
- 要养成良好的书写SQL的习惯
- shell调用hive客户端导致nohup后台进程stopped
- npm notice created a lockfile as package-lock.json. You should commit this file.
- php友情链接大于3换行,细节见真情 PHPWind v5.3友情链接功能改进
- layabox flash转html5,FlashBuilder中第一个H5程序“Hello Layabox”
- 网络云盘项目——总体介绍、附源码链接
- java poi PAGELAYOUT_Apache POI PPT - 幻灯片布局( Slide Layouts)
- 非安装版 Python 安装 PIP
- 30岁测试员在一家公司工作八年后,告别“体制化”终于跳槽,别再妄想靠公司养老了!
- 苹果怎么用微信链接服务器,苹果手机如何设置微信登陆锁
- [20130827]A Short History of Nearly Everything[serial]
- 数学在计算机科学上的应用文献,计算机科学技术在数学中应用浅析
- close函数 qt_QT5笔记:关闭应用程序和窗口的函数
热门文章
- imacros中使用变量
- 纪念Dropbox君
- Android persist类property 知识点
- 怎样在LaTeX中使用中文
- 【问题描述】在带头结点单链表中查找最大值,将其值与最后一个元素交换,输出交换后的单链表各元素。【输入形式】循环输入若干个整数,以字母结束输入,建立带头结点的单链表。【输出形式】输出最
- 2023电工杯数学建模思路 - 复盘:校园消费行为分析
- Linux桌面对应的路径
- win7系统如何备份还原,win7系统映像备份与恢复
- 数据结构进阶 哈希表
- 一文数学数模-相关性分析(二)斯皮尔曼相关(spearman)相关性分析一文详解+python实例代码