public IActionResult Index(UserLoginViewModel userViewModel) { //Wenn kein model -> eigentlich technischer Fehler if (userViewModel == null) { userViewModel.NonTechnicalError = Const.ErrorConst.UnvollstaendigerUser; return(View("Index", userViewModel)); } //User suchen var dbProvider = new Provider.MongoDbProvider(); var userFromDb = dbProvider.GetUser(userViewModel.User.Name); //User nicht gefunden -> Fehler if (userFromDb == null) { userViewModel.NonTechnicalError = Const.ErrorConst.UngueltigerUserOderPwd; return(View("Index", userViewModel)); } //Password passt nicht -> gleicher Fehler if (Provider.CryptoProvider.ComputeSha256Hash(userViewModel.User.Password) != userFromDb.Password) { userViewModel.NonTechnicalError = Const.ErrorConst.UngueltigerUserOderPwd; return(View("Index", userViewModel)); } //Usercookie setzen SetUserCookie(userViewModel.User.Name); //Weiter zu Bucketlists return(Redirect("~/Home/BucketListOverview")); }
/// <summary> /// holt user zu session aus cookie /// </summary> /// <returns>User zu Session</returns> protected User GetSignedInUser() { var userName = Request.Cookies["moviedbsiteusername"]; var provider = new Provider.MongoDbProvider(); return(provider.GetUser(userName)); }
public IActionResult CreateUser(UserLoginViewModel newUser) { var dbProvider = new Provider.MongoDbProvider(); if (dbProvider.GetUser(newUser.User.Name) != null) { newUser.NonTechnicalError = Const.ErrorConst.NutzerExistiertSchon; return(View("CreateUser", newUser)); } //Passwort hashen -> minimal security newUser.User.Password = Provider.CryptoProvider.ComputeSha256Hash(newUser.User.Password); dbProvider.AddAsync <User>(newUser.User, Const.MongoDbConst.CollectionUsers).Wait(); SetUserCookie(newUser.User.Name); return(Redirect("Index")); }
public String GetExistingUser(string userName) { var provider = new Provider.MongoDbProvider(); return provider.GetUser(userName)?.ToString() ?? String.Empty; }