一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - Java教程 - spring security CSRF防護的示例代碼

spring security CSRF防護的示例代碼

2021-07-20 16:06yjclsx Java教程

這篇文章主要介紹了spring security CSRF防護的示例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

csrf是指跨站請求偽造(cross-site request forgery),是web常見的攻擊之一。

從spring security 4.0開始,默認情況下會啟用csrf保護,以防止csrf攻擊應用程序,spring security csrf會針對patch,post,put和delete方法進行防護。

我這邊是spring boot項目,在啟用了@enablewebsecurity注解后,csrf保護就自動生效了。

所以在默認配置下,即便已經登錄了,頁面中發起patch,post,put和delete請求依然會被拒絕,并返回403,需要在請求接口的時候加入csrftoken才行。

如果你使用了freemarker之類的模板引擎或者jsp,針對表單提交,可以在表單中增加如下隱藏域:

?
1
<input type = “hidden” name = “${_csrf.parametername}” value = “${_csrf.token}” />

如果您使用的是json,則無法在http參數中提交csrf令牌。相反,您可以在http頭中提交令牌。一個典型的模式是將csrf令牌包含在元標記中。下面顯示了一個jsp示例:

?
1
2
3
4
5
6
<html>
<head>
  <meta name = “_csrf” content = “${_csrf.token}” />
  <!-- 默認標題名稱是x-csrf-token -->
  <meta name = “_csrf_header” content = “${_csrf.headername}” />
</ head>

然后,您可以將令牌包含在所有ajax請求中。如果您使用jquery,可以使用以下方法完成此操作:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
var token = $("meta[name='_csrf']").attr("content");
var header = $("meta[name='_csrf_header']").attr("content");
$.ajax({
  url:url,
  type:'post',
  async:false,
  datatype:'json'//返回的數據格式:json/xml/html/script/jsonp/text
  beforesend: function(xhr) {
    xhr.setrequestheader(header, token); //發送請求前將csrftoken設置到請求頭中
  },
  success:function(data,textstatus,jqxhr){
  }
});

如果你不想啟用csrf保護,可以在spring security配置中取消csrf,如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
@configuration
@enablewebsecurity
public class websecurityconfig extends websecurityconfigureradapter {
  @override
  protected void configure(httpsecurity http) throws exception {
    http.authorizerequests()
        .antmatchers("/login").permitall()
        .anyrequest().authenticated()
        .and()
        ...
    http.csrf().disable(); //取消csrf防護
  }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/yjclsx/article/details/80349906

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 四虎影视e456fcom四虎影视 | 亚洲男人天堂影院 | 日韩在线毛片 | 欧美日韩精品一区二区三区视频 | 网站久久| 好姑娘在线观看完整版免费 | 成人激情| 日本乱中文字幕系列在线观看 | 午夜国产精品 | 日韩毛片网 | 日韩a级片视频 | 精品一区二区三区高清免费不卡 | 91视频免费观看网站 | 大陆日韩欧美 | 国产欧美亚洲精品第一页青草 | 色综合色狠狠天天综合色 | 暖暖免费观看高清在线 | 色综合视频一区二区三区 | 亚洲社区在线观看 | 久久观看视频 | 国产主播99 | 日韩在线一区二区 | 久久久久久久电影 | 日韩中文在线 | 国产片在线看 | 亚洲图片综合区 | 久久久免费观成人影院 | 国产网站免费看 | 9久re热视频这里只有精品 | 99在线精品免费视频九九视 | 成人特级毛片69免费观看 | 狠狠色狠狠色综合婷婷tag | 成年人在线播放视频 | 国内精品91久久久久 | 摸逼小说 | 欧美3p大片在线观看完整版 | 亚洲国产自拍在线 | 亚洲美女aⅴ久久久91 | 好男人免费高清在线观看2019 | 国产欧美日韩成人 | 九色PORNY丨视频入口 |