public ActionResult Login(BenutzerLogin benutzerLogin) { Benutzer benutzer = new Benutzer(); rep = new RepositoryBenutzer(); rep.Open(); benutzer = rep.Login(benutzerLogin); rep.Close(); if (benutzer == null) { ModelState.AddModelError("Email", "EMail oder Passwort stimmen nicht!"); return(View(benutzerLogin)); } else { Session["loggedIn"] = benutzer; if (benutzer.Rolle == BenutzerRolle.admin) { Session["AdminSession"] = true; } else { Session["AdminSession"] = false; } return(RedirectToAction("index", "home")); } }
//Anmelden public IActionResult Anmeldung([FromBody] BenutzerLogin value) { try { var user = new SqlParameter("i_Benutzer", value.Benutzer); var password = new SqlParameter("i_Passwort", value.Passwort); SqlConnection conn = new SqlConnection(_configuration["ConnectionString"]); SqlCommand cmd = new SqlCommand("EXECUTE dbo.pda_Anmelden @i_Benutzer, @i_Passwort", conn); cmd.Parameters.Add(user); cmd.Parameters.Add(password); SqlDataAdapter da = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); conn.Open(); da.Fill(ds); conn.Close(); Anmelden result; if (ds.Tables[0].Rows.Count > 0) { DataRow row = ds.Tables[0].Rows[0]; result = new Anmelden() { Fehler = (int)row["Fehler"], FehlerMeldung = row["Fehlermeldung"].ToString(), Session = (int)row["SessionID"], Stufe = (int)row["Stufe"] }; } else { result = new Anmelden(); } return(Ok(result)); } catch (Exception ex) { return(BadRequest(ex.ToString())); } }
public Benutzer Login(BenutzerLogin user) { DbCommand cmdLogin = this._connection.CreateCommand(); cmdLogin.CommandText = "SELECT * FROM users WHERE email=@email AND password =sha2(@password, 256)"; DbParameter paramEmail = cmdLogin.CreateParameter(); paramEmail.ParameterName = "email"; paramEmail.Value = user.Email; paramEmail.DbType = DbType.String; DbParameter paramPassword = cmdLogin.CreateParameter(); paramPassword.ParameterName = "password"; paramPassword.Value = user.Password; paramPassword.DbType = DbType.String; cmdLogin.Parameters.Add(paramEmail); cmdLogin.Parameters.Add(paramPassword); using (DbDataReader reader = cmdLogin.ExecuteReader()) { if (!reader.HasRows) { return(null); } reader.Read(); return(new Benutzer { ID = Convert.ToInt32(reader["id"]), Firstname = Convert.ToString(reader["firstname"]), Lastname = Convert.ToString(reader["lastname"]), Email = Convert.ToString(reader["email"]), Rolle = (BenutzerRolle)Convert.ToInt32(reader["userRole"]), Password = "" }); } }