作者taco2548 (T@cO)
看板AndroidDev
標題[問題] Firebase如何防堵作弊
時間Sun Oct 29 11:19:28 2017
昨天發現有人作弊修改了Database內的數值
想請問一下如何解決,以下是程式碼
https://i.imgur.com/DmEisFv.png
我是用事務處理去取目前Database上的值
取回來+1之後,在上傳至Database
當中可能+1後被竄改了數值,然後上傳至Database
雖然後來調整了Database的規則,限制了超過+1不給上傳
但這不是個好方法,這代表以後都只能+1而以
想幫他額外加30都不行
請問這種狀況該如何解決,有人有好方法嗎QQ
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.138.241.144
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1509247172.A.F61.html
1F:推 typepeter: auth rule 10/29 22:28
2F:→ NCTUFAIWEN: 弄個數值加密加上驗證回傳數值有沒有符合運算應該可以 10/30 07:28
3F:→ NCTUFAIWEN: 大幅降低修改的難度吧?我的想法而已 沒有實做過 10/30 07:28
4F:推 mshockwave: authentication rule 動動手指幾秒鐘就可 10/30 17:07
5F:→ NCTUFAIWEN: 應該不能設rule吧?看起來就是要透過用戶的手機存取 10/30 17:12
6F:→ NCTUFAIWEN: database啊 還是有別的rule可以設? 10/30 17:12
7F:→ taco2548: rule確實是可以設定,但是我也提出了用rule的問題 10/30 17:39
8F:→ taco2548: 如果真要用rule不是要寫很長一串嗎? 不然就只能最高+1 10/30 17:41
10F:推 jake255121: 在db裡面加一組唯讀的資料去定義管理者名單,uid不在 11/07 20:53
11F:→ jake255121: 裡面的情況才套用限制就解決了。 11/07 20:53
12F:推 jake255121: 小專案的話直接寫死if(uid!==※※※)這樣也行吧 11/07 20:56
13F:推 fbifxxkma: 不用改啊 +30 就做30次+1就好了啊~ 11/14 11:20
14F:→ yzfr6: 又是對岸的術語翻譯 12/12 06:03