Pregunta

Estoy implementando una clase de identidad personalizada para un sitio ASP.NET 4.0 con autenticación de formularios basado en este tutorial:
Formularios Configuración de autenticación y temas avanzados

Me gustaría almacenar información adicional del usuario (primer/apellido, género, región geográfica, nombre de archivo de miniatura de perfil, etc.) en el Authcookie. Hay una advertencia en msdn.microsoft.com Acerca de limitar el tamaño de la propiedad de datos de usuario.

No he podido encontrar un límite de caracteres definitivo para la propiedad de los datos de usuarios. Solo que todo encriptado La cookie debe estar por debajo de 4096 bytes.

¿Alguien sabe un límite de caracteres máximo que debería asumir en mi código? ¿O tiene una mejor idea sobre cómo almacenar estas piezas de información del usuario necesarias con frecuencia?

Gracias

¿Fue útil?

Solución

No hay un límite explícito: el tamaño máximo dependerá, por ejemplo, de la longitud del nombre de usuario. Además, el tamaño máximo de una cookie (o de una URL si está utilizando boletos de Cookieles) depende del navegador.

Puede almacenar ese tipo de servidor de información del lado del servidor (por ejemplo), posiblemente con algún tipo de clave / ID en la cookie. Una forma de hacer esto sería Implementar una personalización ProfileProvider.

Una desventaja de almacenar información específica de la aplicación, como el que describe en la cookie de forma de formato es que necesitará algún rediseño si alguna vez su aplicación necesita cambiar de formación de forma a algún otro método de autenticación (por ejemplo, WindowsAuthentication).

Personalmente, solo almacenaría información que sea relevante para la autenticación y posiblemente la autorización en la cookie de forma de forma, como cualquier otra cosa lo haría Aumentar el acoplamiento.

Otros consejos

Depende de la longitud máxima de las galletas del navegador. Este artículo puede ayudar: Límite de galletas de navegadores

Y este artículo también le ayuda a verificar el tamaño del boleto de su autenticación actual:Verificación de boletos de autenticación ASP.NET

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top