2009-02-15 19 views
16

¿De qué maneras diferentes son útiles las teclas de máquina en asp.net? Creo que los siguientes son correctos, pero pensé que podría haber más.Usos para MachineKey en ASP.NET

  1. Múltiples aplicaciones pueden usar la misma cookie
  2. servidores múltiples pueden trabajar con el mismo estado de vista
+0

@Ben encontró esta pregunta mientras buscaba otra información, agregó información faltante en una respuesta. – eglasius

Respuesta

20

MachineKey se utiliza para:

  • cifrado ViewState y validación
  • autenticación de formularios (o autenticación federada) utiliza esta clave para firmar el vale de autenticación

Tener una aplicación Web instalado en múltiples servidores requiere la misma clave de máquina configurada en todos ellos para que funcione el equilibrio de carga.

Para ver todos los detalles, se refieren a: MSDN How To: Configure MachineKey in ASP.NET 2.0

-3

Cifrado - muy común.

+0

Los valores en las cookies y viewstate se cifran según la MachineKey. ¿Podrías decir qué más está siendo encriptado? – BenMaddox

+0

f.e. las contraseñas del proveedor de membresía se pueden encriptar usando la clave de máquina – mikus

+1

@mikus: Lo cual es una mala idea. Por el contrario, se debe usar Hashing con una sal única por usuario. –

17

clave de la máquina también se utiliza para cifrar/descifrar los parámetros webresources.axd.

Incluso en un solo servidor, la clave de la máquina debe estar configurada, ya que cualquier reciclaje del dominio de la aplicación generará una nueva clave cuando se establezca en automático. Esto provoca que la próxima devolución de datos solo para páginas procesadas antes del reciclaje, para causar un error de validación de viewstate, y también problemas con los recursos durante ese tiempo.