在我正在建設的網站上,我需要允許用戶編輯他們的訂單。很簡單。但是,如何確保用戶無法編輯其他用戶的訂單?我是否在模型或控制器中執行檢查以驗證訂單是否屬於經過驗證的用戶?我在哪裏阻止用戶訪問其他用戶的數據?
1
A
回答
0
很抱歉,您的網站沒有任何方式讓用戶嘗試編輯其他人的訂單。但是,如果仍然可以嘗試,可以將該邏輯放入模型或控制器中。這是一個意見問題。有些人會說控制器應該做訪問檢查等事情,而模型只知道如何修改自己。其他人會說「胖模型,瘦身控制器」,並說安全檢查需要在控制器之間重複使用,所以他們應該進入模型。這是你的電話。
1
在視圖(是,視圖)中進行檢查以快速響應用戶錯誤。
在控制器中進行檢查以確保數據完整性。例如,在基於網絡的應用程序中,您可能使用瀏覽器JavaScript檢查所有字段(包括用戶名),以便用戶快速響應以修復錯誤的事務。然而,回到你的服務器,你不能依靠瀏覽器來真正驗證數據,因爲瀏覽器不在你的控制之中 - 它可能被破壞,無論是有意還是無意,並且不按照你的意圖進行驗證。因此,您需要在服務器上重新驗證的所有內容以確保完整性。
+0
這是正確的,你應該首先在服務器上做驗證,解析等工作。然後,您可以使用JavaScript和AJAX等客戶端技術添加波蘭語。這種方法被稱爲[漸進式增強](http://en.wikipedia.org/wiki/Progressive_enhancement)。想象一下,依靠JavaScript的瀏覽器端驗證,可以輕鬆禁用! – szalski 2012-03-12 09:06:39
相關問題
- 1. 阻止訪問其他用戶
- 2. 阻止用戶訪問其他用戶帳戶
- 3. 阻止其他xmpp客戶端訪問我的ejabberd服務器
- 4. 如何阻止相同類型的用戶訪問Laravel中的其他數據?
- 5. 已登錄用戶可以訪問其他用戶的數據
- 6. 允許Facebook用戶在我的應用程序中阻止其他Facebook用戶
- 7. 如何防止用戶訪問其他用戶記錄?
- 8. 阻止用戶訪問應用程序
- 9. 如何阻止用戶刪除其他用戶的帖子?
- 10. 阻止用戶直接訪問頁面
- 11. 阻止用戶手動訪問頁面
- 12. 阻止SVN訪問某些用戶
- 13. 阻止用戶訪問網站
- 14. 阻止用戶訪問URL php文件
- 15. 如何防止用戶更改/刪除其他用戶數據
- 16. 如何阻止某些IP(用戶)訪問我的網站?
- 17. 如何防止用戶使用dotnet核心和RESTful API訪問其他用戶的數據?
- 18. 阻止IP會影響除我想禁止的用戶以外的其他人?
- 19. 新用戶可以訪問其他用戶上傳的照片
- 20. iOS中的活動指示器應阻止用戶訪問其他UI元素,直到其停止動畫
- 21. 用戶需要創建適用於其他用戶訪問組
- 22. 訪問數據庫已由其他用戶獨佔打開
- 23. 訪問用戶的數據
- 24. 防止其他登錄用戶訪問'編輯'頁面
- 25. 阻止訪問數據庫
- 26. 如何讓其他用戶訪問IBM Bluemix上的我的kubernetes?
- 27. 阻止用戶使用HTTP_REFERER訪問站點的內部
- 28. 阻止用戶打開表單,如果其他實例有此用戶
- 29. PHP禁止IP地址阻止用戶訪問網站
- 30. 訪問用戶數據
我不認爲這是表示無知的危險程度。他已經知道通過驗證身份驗證的用戶來確保網站的安全,但這似乎更像是一種編碼風格和MVC體系結構問題。標題有點誤導。 – Tesserex 2010-05-28 13:40:12