Estoy intentando cifrar algunos userData para crear mis propios objetos IPrincipal y IIdentity personalizados mediante la autenticación de formularios: he serializado un objeto que representa a mi usuario conectado a Json y he creado mi boleto FormsAuthentication así:System.Web.Security.FormsAuthentication.Encrypt devuelve nulo
string user_item = GetJsonOfLoggedinUser();/*get JSON representation of my logged in user*/
System.Web.Security.FormsAuthenticationTicket ticket =
new System.Web.Security.FormsAuthenticationTicket(1,
WAM.Utilities.SessionHelper.LoggedInEmployee.F_NAME + " "
+ WAM.Utilities.SessionHelper.LoggedInEmployee.L_NAME,
DateTime.Now, DateTime.Now.AddMinutes(30), false, user_item);
string encrypted_ticket = System.Web.Security.FormsAuthentication.Encrypt(ticket);
HttpCookie auth_cookie =
new HttpCookie(System.Web.Security.FormsAuthentication.FormsCookieName, encrypted_ticket);
Response.Cookies.Add(auth_cookie);
Sin embargo, la cadena encrypted_ticket
es siempre null
. ¿Hay un límite en la longitud de la cadena user_item
?
Gracias Mustafa
¿Algún progreso con esto? –
Para mí, si la propiedad Name en el ticket es nula, la función Encrypt devuelve null. El límite de 4 KB se aplica a la cookie y no al valor encriptado. Si el valor cifrado es superior a 4 KB, el intento de agregar una cookie fallará. – Mayo
mismo problema conmigo, pero con el mío @Mayo la respuesta se solucionó –