asp.net encryption viewstate

asp.net viewstate encryption



(1)

Los controles en la página pueden solicitar que se use el cifrado para ViewState, pero incluso esta solicitud puede ser anulada por la configuración de la página.

La enumeración ViewStateEncryptionMode tiene tres valores: Auto, Siempre y Nunca. El valor predeterminado es Auto.

ViewStateEncryptionMode.Auto

En este modo, ASP.NET encriptará ViewState para una página si algún control en la página lo solicita. Tenga en cuenta que esto significa que todo ViewState está encriptado, no solo ViewState para el control que lo solicita. Una gran parte del costo de rendimiento asociado con el cifrado está en la parte superior. Por lo tanto, encriptar todo el ViewState es más rápido que realizar operaciones de cifrado por separado si más de un control realiza la solicitud.

ViewStateEncryptionMode.Never

Como era de esperar, en este modo ASP.NET no cifrará ViewState, incluso si la aplicación está configurada para el cifrado y los controles en la página lo han solicitado. Si sabe que no es necesario codificar los datos involucrados en la página, entonces puede ser seguro establecer el modo Nunca. Sin embargo, en este momento es raro que la documentación sobre un control revele lo que se está guardando en ViewState, por lo que deberá tener cuidado si existe la posibilidad de que se expongan los datos confidenciales.

ViewStateEncryptionMode.Always

En este modo, ASP.NET no espera un control en la página para solicitar el cifrado. ViewState siempre está encriptado. Al trabajar con datos confidenciales, es una buena práctica utilizar el cifrado.

Fuente: http://msdn.microsoft.com/en-us/library/aa479501.aspx

Tengo algunas preguntas sobre cuándo y cómo se encripta viewstate en asp.net 3.5. Por ejemplo, si tengo una entrada de tecla de máquina en mi web.config como: decryptionKey = "AutoGenerate, IsolateApps" validation = "AES" decryption = "Auto" />

¿Viewstate está encriptado en este punto? ¿O debo especificar viewStateEncryptionMode en la sección de la página también?

Además, ¿es posible encriptar una cookie de autenticación de formularios, pero no encriptar ViewState al mismo tiempo?

Gracias por cualquier ayuda.