在記住安全性的同時,表單提交的最佳做法是什麼?
這可能是一個問題,但我擔心人們可能會改變一些數據,因爲它被提交。以我爲例:
我有一個隱藏輸入的表單,用於存儲用戶唯一的Facebook ID。我拿這個Facebook ID並從它創建一個用戶帳戶。如果我使用jQuery,是否有些用戶不能更改發佈的數據?
在記住安全性的同時,表單提交的最佳做法是什麼?
這可能是一個問題,但我擔心人們可能會改變一些數據,因爲它被提交。以我爲例:
我有一個隱藏輸入的表單,用於存儲用戶唯一的Facebook ID。我拿這個Facebook ID並從它創建一個用戶帳戶。如果我使用jQuery,是否有些用戶不能更改發佈的數據?
它和常規表單一樣安全。這兩種方法都可以被劫持和注入數據。關鍵是你的服務器端腳本如何驗證數據以及身份驗證,會話,防僞令牌等
用戶將始終可以將他們喜歡的任何數據發佈到您的服務器。你無法做任何改變,用JavaScript。使用一個體面的瀏覽器很容易找到隱藏的表單域,取消隱藏它們,並把任何你想要的。更熟練的用戶可以手工製作一個http帖子併發送他們喜歡的任何內容。安全性必須在服務器上完成,而不是在客戶端上完成。
因此,沒有辦法阻止他們發送無效的FB ID? – st4ck0v3rfl0w 2010-07-18 06:53:02
不是,除了檢查Facebook以某種方式查看它們是否存在於他們的網站上。 – 2010-07-18 06:57:16
查看上面的評論:沒有辦法阻止用戶發送無效的Facebook標識,而不是當前會話中的內容? – st4ck0v3rfl0w 2010-07-18 06:53:32
我不會在沒有加密的隱藏字段中放置重要的ID。我會將該值存儲在會話cookie中 – redsquare 2010-07-18 06:56:29