public override void OnAuthorization(HttpActionContext actionContext) { if (actionContext.Request.Headers.Authorization == null) { actionContext.Response = actionContext.Request.CreateResponse(System.Net.HttpStatusCode.Unauthorized); } else { string token = actionContext.Request.Headers.Authorization.Parameter; string decodedToken = Encoding.UTF8.GetString(Convert.FromBase64String(token)); string username = decodedToken.Split(':')[0]; string password = decodedToken.Split(':')[1]; AirBnbContext context = new AirBnbContext(); User user = context.Users.Where(x => x.UserName == username && x.Password == password).FirstOrDefault(); if (user != null) { string[] roles = new string[1]; roles[0] = user.Role.ToString(); Thread.CurrentPrincipal = new GenericPrincipal(new GenericIdentity(username), roles); } else { actionContext.Response = actionContext.Request.CreateResponse(System.Net.HttpStatusCode.Unauthorized); } } }
public static bool LogIn(string username, string password) { using (AirBnbContext context = new AirBnbContext()) { return(context.Users.Any(x => x.UserName == username && x.Password == password)); } }
public ReservationController() { context = AirBnbContext.Instance; }
public ApartmentController() { context = AirBnbContext.Instance; }
public UserController() { context = AirBnbContext.Instance; }
public AmenitieController() { context = AirBnbContext.Instance; }