public bool validateRequest(string email) { bool auth = false; string KeyAccess = string.Empty; Access access = new Access(); var path = _hostingEnvironment.ContentRootPath; // Or specify a specific name in a specific dir var MyIni = new IniFile(path + "\\auth.ini"); var mail = MyIni.Read("KeyAccess"); var pwd = MyIni.Read("KeySecret"); string authorization = string.Empty; //IEnumerable<string> headerValues = null; //HttpContext.Request.Headers.TryGetValue("Authorization", out headerValues); StringValues authValues = new StringValues(); HttpContext.Request.Headers.TryGetValue("Authorization", out authValues); var id = authValues.FirstOrDefault(); string SecretKey = authValues.ElementAt(authValues.Count() - 2); string signature = authValues.ElementAt(authValues.Count() - 1); //var credential = filterContext.HttpContext.Request.Headers["Authorization"].Substring(4).Split(':'); //var apiKey = Session.Query<ApiKey>().Where(k => k.AccessKey == credential[0]).FirstOrDefault(); if (SecretKey != null) { // check the date header is present & within 15 mins Encoding encoder = new UTF8Encoding(); HMACSHA1 signature2 = new HMACSHA1(encoder.GetBytes(SecretKey)); //string b64 = Convert.ToBase64String(signature2.ComputeHash(encoder.GetBytes(canonicalString.ToCharArray()))); if (signature2 == signature2) { auth = true; } } return(auth); }
public void Update(HttpRequest request) { foreach (var header in HttpHeadersOfInterest) { StringValues values = new StringValues(); if (request.Headers.TryGetValue(header, out values)) { HttpHeaders.Add(header, values.ElementAt(0)); } } }
/// <summary> /// Método que regista um novo passo para uma receita. /// </summary> /// <param name="model"></param> /// <param name="unidades"></param> /// <param name="quantidades"></param> public void registaPasso(NewPasso model, StringValues unidades, StringValues quantidades) { _context_r.Passo.Add(model.passo); _context_r.SaveChanges(); float quantidade; int x = 0; foreach (Ingrediente i in model.ingredientes) { quantidade = float.Parse(quantidades.ElementAt(x), CultureInfo.InvariantCulture); _context_ip.Add(new IngredientesPasso { passo_id = model.passo.id_passo, ingrediente_id = i.id_ingrediente, unidade_id = int.Parse(unidades.ElementAt(x++)), quantidade = quantidade }); } _context_ip.SaveChanges(); }