2016-09-25 89 views
-1

添加安全問題,以便用戶在超過最大嘗試次數時可以重置密碼。對身份驗證機制使用隱藏字段這樣做不好嗎?用戶可以編輯隱藏字段嗎?

<input type="hidden" name="securityAnswered" value=true> 
<input type="hidden" name="exceededAttempts" value=true> 

用戶可以從客戶端進入並編輯這些隱藏字段嗎?

+0

如果您使用的是谷歌瀏覽器或Firefox,只需右鍵單擊並選擇檢查元素項目,然後就可以更改客戶端事物的值 –

+0

還有其他一些程序可以執行此操作,如螢火蟲, ... –

+0

在您的控制檯中,執行:'document.querySelector(「input [name = securityAnswered]」)。value =「wibble」' – Tibrogargan

回答

4

用戶可以從客戶端進入並編輯這些隱藏字段嗎?

當然!客戶端上的任何內容都可以編輯。你不能阻止用戶這樣做。

您必須記住,客戶端可以隨時向服務器發佈任何內容。當然

+0

好吧,那麼將另一種方式將此信息從表單發送到服務器? – rtd353

+1

@ rtd353驗證應該在服務器上完成。沒有其他辦法:客戶端發佈數據,服務器接收並**驗證**。 –

+0

這是真的,但我只想補充一點,如果你真的想在客戶端保存數據,你仍然可以使用安全會話。 –

0

是的,任何一個都可以通過點擊ctrl+maj+i