[請益] ajax如何做到防修改

看板PHP作者 (james)時間10年前 (2015/04/18 22:38), 10年前編輯推噓6(6013)
留言19則, 6人參與, 最新討論串1/1
想請教網頁用大量的ajax去做post表單在把值傳回 但是資料會牽涉到資料存到資料庫 如果要做到防Client端修改值 只能寫程式 比對Client端的送出的值 與Server端送到Client端的值一樣嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.39.142.150 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1429367894.A.391.html ※ 編輯: linkhome (114.39.142.150), 04/18/2015 22:38:51 ※ 編輯: linkhome (114.39.142.150), 04/18/2015 22:39:53

04/18 22:49, , 1F
保證資料送出和送回一樣 那你何必還做ajax
04/18 22:49, 1F

04/18 22:50, , 2F
通通唯讀不就結了
04/18 22:50, 2F

04/18 23:04, , 3F
能夠詳細解釋一下是要防止什麼東西被怎樣修改嗎?
04/18 23:04, 3F

04/18 23:05, , 4F
單看這段敘述,直覺想到「線上遊戲擋外掛」..那是大工程
04/18 23:05, 4F

04/18 23:22, , 5F
我是想到一個「保證SELECT選項送出和送回一樣」那是當
04/18 23:22, 5F

04/18 23:23, , 6F
然的阿 你不自己建lookup table來對照沒人會幫你
04/18 23:23, 6F

04/19 00:16, , 7F
其實用Ajax的操作通常只是替代跳頁的表格提交
04/19 00:16, 7F

04/19 00:17, , 8F
這樣的話你對POST過來的資料做檢查就好了
04/19 00:17, 8F

04/19 00:18, , 9F
如果你是擔心CSRF的問題 就頁面帶一個token值順便放
04/19 00:18, 9F

04/19 00:19, , 10F
到session裡面 然後在ajax呼叫後端檢查token便可
04/19 00:19, 10F

04/19 00:23, , 11F
至於資料有沒有被修改 如果你是怕用戶送出到Server
04/19 00:23, 11F

04/19 00:23, , 12F
中間有人把資料修改 那你直接用https就可以保障資料
04/19 00:23, 12F

04/19 00:24, , 13F
安全了
04/19 00:24, 13F

04/19 00:28, , 14F
應該是在問token 樓上正解 我猜啦 XDD
04/19 00:28, 14F

04/22 22:32, , 15F
把要post 的資料整包做一次hash, 連 post 資料一起
04/22 22:32, 15F

04/22 22:32, , 16F
傳到server,然後server 收到資料,也做一次hash,再
04/22 22:32, 16F

04/22 22:32, , 17F
比對hash 的結果是不是一樣
04/22 22:32, 17F

04/23 11:52, , 18F
POST的資料做 hash ,要怎麼做? 在哪裡做? 誰來做?
04/23 11:52, 18F

04/23 11:59, , 19F
請參考crsf的做法,自行做變化
04/23 11:59, 19F
文章代碼(AID): #1LCcnMEH (PHP)
文章代碼(AID): #1LCcnMEH (PHP)