public Token(string tokenString) : base() { Inicializa(); try { string pass = string.Empty; // Desciframos la trama Cifrado.AES cifrado = new Cifrado.AES(); string strToken = cifrado.Decrypt(tokenString, pass, "inicializa cadena", "SHA1", 1, "BSHP-3512-BACRFA", 128); // La parseamos string[] tramas = strToken.Split('/'); // Cargamos el id_usuario this.Id_Usuario = Convert.ToInt32(tramas[0]); // Cargamos la fecha de caducidad long duracionToken = long.Parse(tramas[4]); if (duracionToken == 0) { duracionToken = DateTime.MaxValue.Ticks; } this.TickHora = duracionToken; // Almacenamos el token original this.TokenString = tokenString; // Validamos la fecha de expiración DateTime fchCaducidad = new DateTime(this.TickHora); // Establece el estado tras la carga if (fchCaducidad < DateTime.Now) { this._esValido = false; } else { this._esValido = true; } } catch (Exception) { this._esValido = false; /* * log.Error( * string.Format("TokenUsuario({0}, {1})", token, pass), * er); */ } }
//ILogger log = BSHP.LoggerManager.LogFactory.GetLogger(typeof(TokenManager).ToString()); /// <summary> /// Genera un nuevo token de usuario, devolviendo el string cifrado del mismo /// </summary> /// <param name="Id_Usuario"></param> /// <param name="Id_Idioma"></param> /// <param name="PermisoZonas"></param> /// <param name="TrickHoraCaducidad"></param> /// <param name="ClavePrivada"></param> /// <returns></returns> public string GenerateStringToken(int Id_Usuario, int Id_Device, long?TrickHoraCaducidad) { string strTokenCifrado = ""; try { // Creamos nuestra trama string strToken = Id_Usuario.ToString() + "/"; Cifrado.AES cifrado = new Cifrado.AES(); strTokenCifrado = cifrado.Encrypt(strToken, "", "inicializa cadena", "SHA1", 1, "BSHP-3512-BACRFA", 128); } catch (Exception er) { strTokenCifrado = ""; var exception = er; //log.Error("GenerateStringToken()", er); } return(strTokenCifrado); }