阻止用户在asp.net mvc视图中输入脚本标记

时间:2010-06-01 13:48:18

标签: asp.net-mvc

我在asp.net-mvc中有一个登录视图。我希望用户无法在用户名或密码字段中输入标签

2 个答案:

答案 0 :(得分: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)]属性处理提交的控制器操作。

答案 1 :(得分:0)

是否有某些原因导致常规卫生处理方法As described here无法与MVC一起使用?