0

我有一个问题,如果我在 web.config 中设置了以下属性

viewStateEncryptionMode="Always" enableViewStateMac="true"

是否仍然可以篡改我的 Web 表单上的控件值?例如,如果我有一个包含 3 个可能值的下拉列表,例如“IND”、“AU”、“ML”,有人还能篡改这个下拉列表并发送垃圾数​​据$%^吗?

4

1 回答 1

0

使用这些设置,ViewState 应该可以防止类似的事情发生——如果在请求页面时返回的值不存在,您应该会收到Invalid Viewstate错误。

当然,对于其他输入控件(例如 TextBox 或 Hidden 字段),它们被设计为具有由客户端指定的值,而无需检查它是否是来自服务器的值列表之一。在这些情况下,不要只依赖 ViewState - 自己也验证输入。

于 2012-06-08T10:05:20.813 回答