作者rocairforce (拾貳)
看板PHP
標題[請益] 權限的判斷
時間Mon Apr 15 12:12:09 2013
這個問題一直讓我挺苦惱的
假設狀況是這樣
我有個電子報的功能
要新增需要有新增的權限,修改、刪除、查詢各有權限
權限的判斷基本上不是什麼大問題,問題在於
我的後端怎麼知道現在是什麼階段
例如 當我進入要新增時,我擁有權限則理所當然的可以新增
但如果今天不知什麼原因,有人要編輯他,不管他怎麼進去的
我想後端應該是最後一道防線,我該怎麼去判斷現在的階段是什麼
也就是說,我怎麼知道現在要新增或是要修改刪除了
在此先謝過大家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.208.2
1F:→ MOONRAKER:你後端只有一個程式在接收前端? 04/15 12:21
2F:→ buganini:狀態要存在各自的session 不是所有人共用 04/15 14:04
3F:→ rocairforce:是的 接收的地方有一個,存在SESSION我試過 04/15 14:38
4F:→ rocairforce:不過我一直有個盲點,不管是session、cookie還是直接 04/15 14:38
5F:→ rocairforce:POST給我的,我都不相信,我只管這個登入者的ID 04/15 14:39
6F:→ MOONRAKER:這不是毫無信賴可言 要怎麼寫程式 04/15 14:41
7F:→ rocairforce:有時會思考,我是不是over design了 04/15 14:41
8F:→ MOONRAKER:頂多你用sha系列的hash和時間碼、IP、和其他特徵產生一 04/15 15:13
9F:→ MOONRAKER:個大hash放在form裡面 當然也包含這個form要執行的工作 04/15 15:14
10F:→ MOONRAKER:在後端可以重建來比對,這就夠強了 04/15 15:15
11F:→ MOONRAKER:但是管理介面一般而言已經是限縮使用群了 那麼緊張的設 04/15 15:16
12F:→ MOONRAKER:計到底有沒有必要 有些事應該要由sysadm和硬體來處理的 04/15 15:17
13F:→ qwertmn:可以學google..他用cookie or session 搭配template 產js 04/15 16:05
14F:→ qwertmn:的密碼程式..再把result 塞回form 理面驗證.. 04/15 16:06
15F:→ qwertmn:ps:密碼程式的參數會隨狀態改變... 04/15 16:07
16F:→ qwertmn:沒辦法執行js..也幾乎是無解了... 04/15 16:09
17F:→ qwertmn:最少我沒找到規律.. 04/15 16:09
18F:→ buganini:session是你自己存在server side的 為何不可信? 04/16 12:25
19F:→ buganini:即使session id放在cookie,他也是設計成一個不容易被 04/16 12:26
20F:→ buganini:猜到hijack的長度,大不了你再加ip/ua檢查抵擋hijack 04/16 12:26
21F:→ buganini:或是自訂session id,再怎麼樣,不需要把擋hijack的成本 04/16 12:27
22F:→ buganini:弄的太over就是了…除非連tcp防hijack的能力和ssl都不信 04/16 12:29
23F:→ rocairforce:抱歉現在才回,感謝各位的回覆,主要還是卡在RBAC 04/18 09:58
24F:→ rocairforce:如何帶入到須求裡,專案告一段落再來分享這次的經驗 04/18 09:58