我的VIEWSTATE是加密的吗?

Jez*_*Jez 8 asp.net security encryption viewstate

我有点困惑.我没有明确设置Web.config <pages ViewStateEncryptionMode="Always" />,所以这个MSDN页面说它应该默认为Auto. 此MSDN页面表示,Auto如果控件通过调用RegisterRequiresViewStateEncryption方法请求加密,则应使视图状态信息加密.但是,我的控件都没有调用该方法.所以看起来我的观点状态实际上应该不加密.

但是,当我将视图状态复制/粘贴到各种在线 视图状态 解码器之一时,我被告知视图状态序列化数据无效.那么,我的viewstate是否加密?有一些明显的方法可以说明吗?是否更改了默认的ASP.net行为以通过defualt对viewstate进行编码,除非您禁用它?

Yet*_*ser 3

如果将其设置为“始终”或“自动”,则所有控件状态都将被加密。所有调用RegisterRequiresViewStateEncryption视图状态的控件都将被加密,与“自动”/“始终”无关。如果您的“自定义控件”需要加密,请调用此方法。

在MSDN上查看此内容

如果您正在开发处理潜在敏感信息的自定义控件,请调用 RegisterRequiresViewStateEncryption 方法向页面注册该控件,并确保该控件的视图状态已加密。

如果 ViewStateEncryptionMode 设置为 Auto 或 Always,则整个页面状态将被加密。