2010-06-01 50 views
2

我在asp.net-mvc中有一個登錄視圖。我想,用戶可以不能以用戶名或密碼字段中輸入標籤阻止用戶在asp.net mvc視圖中輸入腳本標籤

+0

爲什麼?什麼樣的標籤?我的密碼可以 ... – 2010-06-01 14:02:52

+0

這就是爲什麼我想在其中用戶可以輸入任何字符,但默認情況下如果我的用戶名進入標籤,它只是爆炸和黃屏來 – 2010-06-01 14:05:28

+0

FRAZ您的問題說,相反,你應該糾正任何解決方案問題標題和文本,可能更改爲阻止允許,並且用戶不能爲用戶 – 2010-06-01 19:30:43

回答

4

爲什麼要防止用戶輸入標籤?讓他進入他想要的任何東西。爲什麼要阻止某人輸入密碼,如<script>alert('hello');</script> - 它看起來像一個非常強大的密碼。就我個人而言,我討厭限制我對密碼的選擇的網站。

只要確保你編碼你的意見,內部輸出的一切:

所以不是:

<div>Hello <%= Model.Username %></div> 

始終使用:

<div>Hello <%= Html.Encode(Model.Username) %></div> 

或:

<div>Hello <%: Model.Username %></div> 

如果您正在使用ASP.NET 4.0

此外,正如@Jab在註釋部分中指出的那樣,爲了接受來自用戶的這種輸入,您可能需要修飾將處理提交的控制器操作[ValidateInput(false)]屬性。

+2

要接受輸入在用戶名文本框黃色屏幕出現,它說:「一個潛在危險的Request.Form從客戶端檢測到值(username =「