public static int getIdUserSession() { UsuarioViewModels usuario2 = (UsuarioViewModels)JwtManager.obtenerSession <UsuarioViewModels>("Usuario"); FuncionesViewModels decode = new FuncionesViewModels(); return(int.Parse(decode.Base64_Decode(usuario2.idUsuario))); }
//private RepositoryGeneral _ir = new RepositoryGeneral(); private static bool TryRetrieveToken(HttpRequestMessage request, out string token) { RepositoryGeneral general = new RepositoryGeneral(); var usaSesionUsuario = general.ObtenerRegistro <Parametros>(z => z.idParametro == 13); token = null; IEnumerable <string> authzHeaders; if (!request.Headers.TryGetValues("Authorization", out authzHeaders) || authzHeaders.Count() > 1) { return(false); } var bearerToken = authzHeaders.ElementAt(0); token = bearerToken.StartsWith("Bearer ") ? bearerToken.Substring(7) : bearerToken; if (usaSesionUsuario.parametroJSON == "0") { return(true); } var jwt = token; var handler = new JwtSecurityTokenHandler(); var tokenRead = handler.ReadJwtToken(jwt); var user = tokenRead.Claims.FirstOrDefault(z => z.Type == "Usuario"); JavaScriptSerializer jsonSerializer = new JavaScriptSerializer(); dynamic j = jsonSerializer.Deserialize <dynamic>(user.Value);//deserializamos el objeto var fun = new FuncionesViewModels(); var idTransformado = fun.Base64_Decode(j["idUsuario"].ToString()); int id = Convert.ToInt32(idTransformado); var userData = general.ObtenerRegistro <UsuarioSesion>(z => z.idUsuario == id && z.vigente == true); if (userData != null) { if (userData.token == token) { return(true); } else { return(false); } } else { return(false); } }