public IHttpActionResult id(string X_Signature, string X_Key, string Id) { ClsToken login = new ClsToken(); login.X_Signature = X_Signature; login.X_Key = X_Key; login.Id = Id; if (login == null) { throw new HttpResponseException(HttpStatusCode.BadRequest); } Code_credencial usuario = new Code_credencial(); var ftusuario = new ClsCredencial(); ftusuario.Key = login.X_Key; if (usuario.getBuscarKey(ftusuario) == true && usuario.getToken(ftusuario).Equals(login.X_Signature) == true && usuario.getIdentifierId(login).Equals(login.Id) == true) { var mensaje = new ClsMessage(); mensaje.Message = usuario.getIdentifierMessage(login); return(Ok(mensaje)); } return(StatusCode(HttpStatusCode.Forbidden)); }
public IHttpActionResult Credential(ClsCredencial login) { if (login == null) { throw new HttpResponseException(HttpStatusCode.BadRequest); } Code_credencial usuario = new Code_credencial(); if (usuario.getBuscarKey(login) == false) { CodeHMAC hMac = new CodeHMAC(); var token = hMac.getHMAC256(login.Shared_Secret); usuario.setCrearCreden(login, token); var claimsIdentity = new ClaimsIdentity(new[] { new Claim(ClaimTypes.Name, login.Key), new Claim(ClaimTypes.Role, "Client"), }, "ApplicationCookie", ClaimTypes.Name, ClaimTypes.Role); var mToken = new ClsToken(); mToken.X_Signature = token; mToken.X_Key = login.Key; return(Ok(mToken)); //????????? //return StatusCode(HttpStatusCode.NoContent); } return(StatusCode(HttpStatusCode.Forbidden)); }
public IHttpActionResult message(ClsToken login) { if (login == null) { throw new HttpResponseException(HttpStatusCode.BadRequest); } Code_credencial usuario = new Code_credencial(); var ftusuario = new ClsCredencial(); ftusuario.Key = login.X_Key; if (usuario.getBuscarKey(ftusuario) == true && usuario.getToken(ftusuario).Equals(login.X_Signature) == true) { var mensaje = new ClsMessage(); //puede haber colision random semialeatorio Random rand = new Random(); int numeroRandom = rand.Next(1, 1000000); //mensaje.Message = login.Message; mensaje.Id = numeroRandom.ToString(); login.Id = numeroRandom.ToString(); usuario.setIdentifier(login); return(Ok(mensaje)); } return(StatusCode(HttpStatusCode.Forbidden)); }
public string getToken(ClsCredencial login) { string token = ""; var cacheT = MemoryCache.Default; if (cacheT != null && cacheT.Contains(login.Key) && cacheT.Get(login.Key) != null) { token = cacheT.Get(login.Key).ToString(); } return(token); }
public bool getBuscarKey(ClsCredencial login) { bool estado = false; var cacheT = MemoryCache.Default; if (cacheT != null && cacheT.Contains(login.Key) && cacheT.Get(login.Key) != null) { estado = true; } return(estado); }
public IHttpActionResult Authentication(ClsToken login) { if (login == null) { throw new HttpResponseException(HttpStatusCode.BadRequest); } Code_credencial usuario = new Code_credencial(); var ftusuario = new ClsCredencial(); ftusuario.Key = login.X_Key; if (usuario.getBuscarKey(ftusuario) == true && usuario.getToken(ftusuario).Equals(login.X_Signature) == true) { return(Ok()); } return(StatusCode(HttpStatusCode.Forbidden)); }
public IHttpActionResult tag(string X_Signature, string X_Key, string Tag) { ClsToken login = new ClsToken(); login.X_Signature = X_Signature; login.X_Key = X_Key; login.Tag = Tag; if (login == null) { throw new HttpResponseException(HttpStatusCode.BadRequest); } Code_credencial usuario = new Code_credencial(); var ftusuario = new ClsCredencial(); ftusuario.Key = login.X_Key; if (usuario.getBuscarKey(ftusuario) == true && usuario.getToken(ftusuario).Equals(login.X_Signature) == true) { var mensaje = new ClsMessage(); if (login.Tag.Equals("key")) { return(Ok(usuario.getAllKey())); } else if (login.Tag.Equals("value")) { return(Ok(usuario.getAllValue())); } else { return(StatusCode(HttpStatusCode.Forbidden)); } } return(StatusCode(HttpStatusCode.Forbidden)); }
public void setCrearCreden(ClsCredencial login, string token) { var cache = MemoryCache.Default; MemoryCache.Default.AddOrGetExisting(login.Key, token, DateTime.Now.AddMinutes(10)); }