2017-09-25 64 views
0

我在.NET开发4.0.30319一个大的web应用工作的视图状态。我们将ViewState关闭,将页面EnableViewState的属性设置为false;由于我没有加密ViewState,因此提出了一个安全漏洞。谁创造了asp.net

我意识到,某些数据被存储在ViewState并且只是Base64编码。它只有50个字节包含一个数字(看起来像一个Id)和一个包含单词控制的字符串。

谁存储这些数据,是通过违约ASP .NET创建的ViewState虽然被关闭?由于EnableViewState设置为false,没有应用程序相关的数据应该存储在ViewState,对吗?

回答

0

视图状态是一个ASP.net或服务器端对象(实体),因此它遵循它的存在(保存)在服务器上,而是来回发送(在后背上)。

你的问题没有说清楚什么是你试图通过禁用ViewState的实现,但总的来讲,你会做这个主要是为了解决性能问题的目标。如果这不是客观的,我会重新考虑启用它。正如您可能收集的一样,ViewState在页面和控制级别默认启用。

这里有一些有用的MSDN链接:

https://msdn.microsoft.com/en-us/library/ms972976.aspx

https://msdn.microsoft.com/en-us/library/system.web.ui.control.enableviewstate(v=vs.110).aspx