嗨,大家好。今天我開(kāi)始要接手一個(gè)新的安全性較高的項(xiàng)目了,目前在進(jìn)行到設(shè)計(jì)表單的階段上遇到了一些以前不曾細(xì)想的安全問(wèn)題,那就是如何設(shè)計(jì)表單名。問(wèn)題如下:1、 如果表單設(shè)計(jì)如下,name屬性為“user_name”,那么這樣不是給別人猜到了數(shù)據(jù)庫(kù)的設(shè)計(jì)了嗎?<input type="text" name="user_name" />
<input type="password" name="user_pswd" />2、 設(shè)計(jì)如下表單,這種表單名在后端比較容易使用處理,直接$_POST['user']即可得到所有的相關(guān)值。那么相對(duì)于 1 中的表單名,下面的表單名會(huì)不會(huì)有什么隱患呢?<input type="text" name="user[user_name]" />
<input type="password" name="user[user_pswd]" />3、 設(shè)計(jì)表單名的時(shí)候,不直接對(duì)應(yīng)到數(shù)據(jù)庫(kù)字段名,然后表單提交到后端時(shí),在映射回對(duì)應(yīng)的數(shù)據(jù)庫(kù)字段名,這樣做需要寫許多獲取表單值的代碼了。<input type="text" name="user[nick_name]" />
<input type="password" name="user[a_password]" />以上,綜合安全性和開(kāi)發(fā)效率,選擇哪種好?或者還有其它方式?各位幫忙看看,謝謝~
Web表單名設(shè)計(jì)的安全問(wèn)題
慕尼黑5688855
2018-10-06 14:17:55