歡迎來到DIVCSS5查找CSS資料與學習DIV CSS布局技術!
  1、什么是CSRF攻擊?
 
  CSRF是跨站請求偽造(Cross-siterequestforgery)的英文縮寫\
 
  Laravel框架中避免CSRF攻擊很簡單:Laravel自動為每個用戶Session生成了一個CSRFToken,該Token可用于驗證登錄用戶和發起請求者是否是同一人,如果不是則請求失敗?!驹撛砗万炞C碼的原理是一致】
 
  Laravel提供了一個全局幫助函數csrf_token來獲取該Token值,因此只需在視圖提交表單中添加如下HTML代碼即可在請求中帶上Token:
 
  <inputtype="hidden"name="_token"value="<?phpechocsrf_token();?>">
 
  2.Laravel中如何避免CSRF攻擊
  Laravel框架是默認開啟了csrf認證的(必須)。
 
  可以在表單中添加一個隱藏域:
 
  {{csrf_token()}}:表示直接輸出token值;
 
  {{csrf_field()}}:表示的是直接輸出整個隱藏域的input框;
 
  場景選擇:一般在視圖里用csrf_field即可,大部分的時候在JavaScript代碼段中(特別是在做ajax異步提交的時候)可以考慮用csrf_token。
 
  CSRF驗證機制與圖形驗證碼的原理是一致的,都是將用戶提交的值與與session中的值進行比對,如果一致則通過,否則不通過。
 
  針對csrf_token與csrf_field的選擇問題:
 
  如果只需要使用值(例如,在ajax的post提交的時候),則使用csrf_token,如果需要的是隱藏域(在表單里),則使用csrf_field。
 
  3、從CSRF驗證中排除例外路由
 
  并不是所有請求都需要避免CSRF攻擊,比如去第三方API獲取數據的請求。
 
  可以通過在VerifyCsrfToken(app/Http/Middleware/VerifyCsrfToken.php)中間件中將要排除的請求URL添加到$except屬性數組中:
 
  

如需轉載,請注明文章出處和來源網址:http://www.4389979.live/html/h54899.shtml

河南十一选五大小 pk10计划软件免费版 体彩排列五走势图表连线图表 江苏快3稳赚公式世界杯 陕西十一选五中奖金额 幸运农场有什么规律 3d试机号一语定胆与子同袍 甘肃省11选五最大遗漏 秒速赛车技巧规律 粤36选7最新开奖查询 内蒙古快3玩法绝招