public override void OnAuthorization(HttpActionContext actionContext) { if (actionContext.Request.Headers.Authorization == null) { actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.Forbidden, "You must login with user name and password!"); return; } string authenticationToken = actionContext.Request.Headers.Authorization.Parameter; string decodedAuthenticationToken = Encoding.UTF8.GetString(Convert.FromBase64String(authenticationToken)); string[] userNameAndPasswordArray = decodedAuthenticationToken.Split(':'); string userName = userNameAndPasswordArray[0]; string password = userNameAndPasswordArray[1]; ILoginTokenBase loginToken = FlyingCenterSystem.GetInstance().Login("admin", "9999"); adminFacade = new LoggedInAdministratorFacade(); List <AirlineCompany> airlines = adminFacade.GetAllAirlineCompanies(); foreach (AirlineCompany airline in airlines) { if (userName == airline.USER_NAME && password == airline.PASSWORD) { ILoginTokenBase AirlineUserLoginToken = FlyingCenterSystem.GetInstance().Login(userName, password); actionContext.Request.Properties["login-airlineCompany"] = airline; actionContext.Request.Properties["airlineCompany-login-token"] = AirlineUserLoginToken; } if (userName == airline.USER_NAME && password != airline.PASSWORD) { actionContext.Request.CreateResponse(HttpStatusCode.Forbidden, "Wrong password"); return; } } actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized, "You are not allowed!"); }
public override void OnAuthorization(HttpActionContext actionContext) { if (actionContext.Request.Headers.Authorization == null) { actionContext.Request.CreateResponse(HttpStatusCode.Forbidden, "You must login with user name and password!"); return; } string authenticationToken = actionContext.Request.Headers.Authorization.Parameter; string decodedAuthenticationToken = Encoding.UTF8.GetString(Convert.FromBase64String(authenticationToken)); string[] userNameAndPasswordArray = decodedAuthenticationToken.Split(':'); string userName = userNameAndPasswordArray[0]; string password = userNameAndPasswordArray[1]; ILoginTokenBase loginToken = FlyingCenterSystem.GetInstance().Login("admin", "9999"); adminFacade = new LoggedInAdministratorFacade(); Customer customer = adminFacade.GetCustomerByUserName(userName); if (customer == null) { actionContext.Request.CreateResponse(HttpStatusCode.Forbidden, "This user name is not exist!"); return; } if (customer.PASSWORD == password) { ILoginTokenBase customerLoginToken = FlyingCenterSystem.GetInstance().Login(userName, password); actionContext.Request.Properties["login-customer"] = customerLoginToken; } actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized, "You are not allowed!"); }
public FacadeBase GetFacade(ILoginTokenBase token) { if (token is LoginToken <Administrator> ) { return(new LoggedInAdministratorFacade()); } if (token is LoginToken <AirlineCompany> ) { return(new LoggedInAirlineFacade()); } if (token is LoginToken <Customer> ) { return(new LoggedInCustomerFacade()); } else { return(new AnonymousUserFacade()); } }
public override void OnAuthorization(HttpActionContext actionContext) { if (actionContext.Request.Headers.Authorization == null) { actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.Forbidden, "You must login with user name and password!"); return; } string authenticationToken = actionContext.Request.Headers.Authorization.Parameter; string decodedAuthenticationToken = Encoding.UTF8.GetString(Convert.FromBase64String(authenticationToken)); string[] userNameAndPasswordArray = decodedAuthenticationToken.Split(':'); string userName = userNameAndPasswordArray[0]; string password = userNameAndPasswordArray[1]; if (userName == "admin" && password == "9999") { ILoginTokenBase login = FlyingCenterSystem.GetInstance().Login(userName, password); actionContext.Request.Properties["login-token"] = login; } actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized, "You are not allowed!"); }