2013-01-20 21 views
0

我需要通過Rails表單傳遞參數並在控制器中訪問它。我會使用隱藏字段標記,但我不希望用戶能夠在HTML中編輯這些數據並提交它。我該如何暗中傳遞這個參數,並通過parameter[:my_parameter]提交?通過Rails形式默認傳遞參數

回答

2

雖然用戶幾乎可以在任何現代瀏覽器中查看隱藏的字段數據,但它們不能直接在瀏覽器中對其進行修改。然而,他們可以建立表單數據並使用他們選擇的其他客戶端(捲曲,提琴手等)傳遞它 - 對此,您無能爲力。我建議不要依賴這種敏感數據的方法。

可能的解決方法是預先以某種形式加密它,這可以讓您確定它是否在發佈時被篡改。做這件事可能會很棘手,而且傳遞參數並不常見。

也許如果你能澄清你到底想要完成什麼,有人可能會提出一個合適的選擇。

1

像這樣的最佳實踐是不通過HTML傳遞參數,而是將其綁定到用戶的會話,並將實際的敏感數據存儲在數據庫或緩存中。您可以嘗試對其進行加密,但是,如果用戶有權訪問數據,則他們可以嘗試對其進行解密。