public static void changeRole(User user) { try { deletePrivliges(user); String connStr = ConfigurationManager.ConnectionStrings["inzSNMConnectionString"].ConnectionString; using (SqlConnection Sqlcon = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand()) { Sqlcon.Open(); cmd.Connection = Sqlcon; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "CHANGE_ROLE"; cmd.Parameters.Add("@LOGIN", SqlDbType.VarChar); cmd.Parameters["@LOGIN"].Value = user.login; cmd.Parameters.Add("@ID_ROLE", SqlDbType.Int); cmd.Parameters["@ID_ROLE"].Value = user.rola.roleId; cmd.ExecuteNonQuery(); Sqlcon.Close(); } } } catch (Exception e) { throw new Exception("Zmiana uprawnień się nie powiodła!"); } }
protected void ResetPwdButton_Click(object sender, EventArgs e) { User user = new User(); user.login = LoginTxt.Text; inzPJATKSNM.Controllers.AuthenticationController.resetPassToken(user); Response.Redirect("ResetPassword.aspx"); }
protected void ChangesButton_Click(object sender, EventArgs e) { User user = new User(); user.login = Login1Txt.Text; user.token = TokenTxt.Text; inzPJATKSNM.Controllers.AuthenticationController.resetPass(user, user.token); Response.Redirect("LogInView.aspx"); }
protected void LogInButton_Click(object sender, EventArgs e) { User user = new User(); user.login = LoginTxt.Text; user.haslo = TextBox2.Text; if (inzPJATKSNM.Controllers.AuthenticationController.checkUser(user, user.haslo)) { Response.Redirect("ShowSurveys.aspx"); } }
protected void AcceptButton_Click(object sender, EventArgs e) { User user = new User(); Rola role = new Rola(); user.login = EmailTxt.Text; user.imie = NameTxt.Text; user.nazwisko = SurnameTxt.Text; role.roleId =Int32.Parse(RoleDDL.SelectedValue); user.rola = role; try { inzPJATKSNM.Controllers.AuthenticationController.saveUser(user); } catch (Exception ex) { Response.Redirect("NewUserView.aspx?err=" + ex); } }
public static void changePriviledges(User user) { try { deletePrivliges(user); String connStr = ConfigurationManager.ConnectionStrings["inzSNMConnectionString"].ConnectionString; foreach (Uprawnienia uprawnienie in user.uprawnieniaUsera) { using (SqlConnection Sqlcon = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand()) { Sqlcon.Open(); cmd.Connection = Sqlcon; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "CHANGE_PRIVILEDGE"; cmd.Parameters.Add("@ID_USER", SqlDbType.Int); cmd.Parameters["@ID_USER"].Value = user.userId; cmd.Parameters.Add("@ID_PRIV", SqlDbType.Int); cmd.Parameters["@ID_PRIV"].Value = uprawnienie.uprawnienieId; cmd.ExecuteNonQuery(); Sqlcon.Close(); } } } } catch (Exception e) { throw new Exception("Zmiana uprawnień się nie powiodła!"); } }
public static void sendResetPassTokenEmail(User user,String token) { String subject = "Reset hasła w systemie ankiet SNM"; String body = "Otrzymaliśmy prośbę o reset hasła w systemie ankiet SNM.\n Jeśli to nie Ty " + user.imie + " ją wysłałeś prosimy o natychmiastowe skontakotowanie się z Administratorem lub o wiadomość na adres [email protected] \n Twój token to: " + token + "\nProsimy o wpisanie go w odpowiednie pole w celu zresetowania hasła. \nPozdrawiamy, zespół systemu ankiet SNM"; try { MailMessage message = new MailMessage(); message.From = new MailAddress("*****@*****.**"); message.To.Add(new MailAddress(user.login)); message.Subject = subject; message.Body = body; SmtpClient client = new SmtpClient(); client.Send(message); } catch (Exception e) { throw new Exception("Błąd podczas wysyłania maila resetującego hasło"); } }
public static void sendRegisterEmail(User user) { String subject = "Witamy w platformie ankiet wydziału Sztuki Nowych Mediów PJATK!"; String body = "Witamy " + user.imie + "na platformie ankiet, \n Właśnie Twoje konto zostało utworzone w systemie! \n Od dzisiaj możesz logować się do systemu. \n Twój login: "******" \n Twoje hasło: " + user.haslo + "\nPo zalogowaniu się do aplikacji prosimy o zmianę hasła w zakładce zmień dane. \n Pozdrawiamy, \n zespół systemu ankiet SNM"; try { MailMessage message = new MailMessage(); message.From = new MailAddress("*****@*****.**"); message.To.Add(new MailAddress(user.login)); message.Subject = subject; message.Body = body; SmtpClient client = new SmtpClient(); client.Send(message); } catch (Exception e) { throw new Exception("Błąd podczas wysyłania maila rejestracyjnego"); } }
public static void sendDeleteUserEmail(User user,User administrator) { String subject = "Usunięcie użytkownika "+user.login; String body = "Użytkownik "+ user.login + " został usunięty. Od tego momentu nie może się logować do systemu.\n Pozdrawiamy, \n zespół systemu ankiet SNM"; try { MailMessage message = new MailMessage(); message.From = new MailAddress("*****@*****.**"); message.To.Add(new MailAddress(user.login,administrator.login)); message.Subject = subject; message.Body = body; SmtpClient client = new SmtpClient(); client.Send(message); } catch (Exception e) { throw new Exception("Błąd podczas wysyłania maila o usunięciu użytkownika hasło"); } }
public static void saveUser(User user) { user.haslo = passGen(); try{ String connStr = ConfigurationManager.ConnectionStrings["inzSNMConnectionString"].ConnectionString; using (SqlConnection Sqlcon = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand()) { Sqlcon.Open(); cmd.Connection = Sqlcon; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "INSERT_USER"; cmd.Parameters.Add("@LOGIN", SqlDbType.VarChar); cmd.Parameters["@LOGIN"].Value = user.login; cmd.Parameters.Add("@PWD", SqlDbType.VarChar); cmd.Parameters["@PWD"].Value = encryptPass(user.haslo); cmd.Parameters.Add("@NAME", SqlDbType.VarChar); cmd.Parameters["@NAME"].Value = user.imie; cmd.Parameters.Add("@SURNAME", SqlDbType.VarChar); cmd.Parameters["@SURNAME"].Value = user.nazwisko; cmd.Parameters.Add("@ID_ROLE", SqlDbType.Int); cmd.Parameters["@ID_ROLE"].Value = user.rola.roleId; cmd.ExecuteNonQuery(); Sqlcon.Close(); } } } catch (Exception e) { throw new Exception("Dodawanie użytkowmnika się nie powiodło!"); } sendRegisterEmail(user); }
public static void resetPassToken(User user) { String token = generateToken(); try { String connStr = ConfigurationManager.ConnectionStrings["inzSNMConnectionString"].ConnectionString; using (SqlConnection Sqlcon = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand()) { Sqlcon.Open(); cmd.Connection = Sqlcon; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "UPDATE_TOKEN"; cmd.Parameters.Add("@LOGIN", SqlDbType.VarChar); cmd.Parameters["@LOGIN"].Value = user.login; cmd.Parameters.Add("@TOKEN", SqlDbType.VarChar); cmd.Parameters["@TOKEN"].Value = token; cmd.ExecuteNonQuery(); Sqlcon.Close(); } } } catch (Exception e) { throw new Exception("Reset hasła się nie powiódł"); } sendResetPassTokenEmail(user,token); }
public static void resetPass(User user,String token) { if (token.Equals(user.token)) { user.haslo = passGen(); try { String connStr = ConfigurationManager.ConnectionStrings["inzSNMConnectionString"].ConnectionString; using (SqlConnection Sqlcon = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand()) { Sqlcon.Open(); cmd.Connection = Sqlcon; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "RESET_PASS"; cmd.Parameters.Add("@LOGIN", SqlDbType.VarChar); cmd.Parameters["@LOGIN"].Value = user.login; cmd.Parameters.Add("@PWD", SqlDbType.VarChar); cmd.Parameters["@PWD"].Value = encryptPass(user.haslo); cmd.ExecuteNonQuery(); Sqlcon.Close(); } } } catch (Exception e) { throw new Exception("Reset hasła się nie powiódł"); } sendResetPassEmail(user); } else { throw new Exception("Nieprawidłowa token! Hasło nie zostało zmienione"); } }
public static User getUser(String login) { User user = new User(); Rola role = new Rola(); String connStr = ConfigurationManager.ConnectionStrings["inzSNMConnectionString"].ConnectionString; // try // { using (SqlConnection Sqlcon = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand("GET_USER", Sqlcon)) { cmd.CommandType = CommandType.StoredProcedure; SqlParameter outPutParameter = new SqlParameter(); cmd.Parameters.Add("@ID_USER", SqlDbType.Int); cmd.Parameters["@ID_USER"].Direction = ParameterDirection.Output; cmd.Parameters.Add("@LOGIN", SqlDbType.VarChar); cmd.Parameters["@LOGIN"].Direction = ParameterDirection.Output; cmd.Parameters["@LOGIN"].Size = 250; cmd.Parameters.Add("@PWD", SqlDbType.VarChar); cmd.Parameters["@PWD"].Direction = ParameterDirection.Output; cmd.Parameters["@PWD"].Size = 250; cmd.Parameters.Add("@NAME", SqlDbType.VarChar); cmd.Parameters["@NAME"].Direction = ParameterDirection.Output; cmd.Parameters["@NAME"].Size = 250; cmd.Parameters.Add("@SURNAME", SqlDbType.VarChar); cmd.Parameters["@SURNAME"].Direction = ParameterDirection.Output; cmd.Parameters["@SURNAME"].Size = 250; cmd.Parameters.Add("@TOKEN", SqlDbType.VarChar); cmd.Parameters["@TOKEN"].Direction = ParameterDirection.Output; cmd.Parameters["@TOKEN"].Size = 250; cmd.Parameters.Add("@ID_ROLE", SqlDbType.Int); cmd.Parameters["@ID_ROLE"].Direction = ParameterDirection.Output; // try // { Sqlcon.Open(); cmd.Parameters.Add("@LOGIN2", SqlDbType.VarChar); cmd.Parameters["@LOGIN2"].Value = login; cmd.Parameters["@LOGIN2"].Size = 100; cmd.ExecuteNonQuery(); user.userId = Convert.ToInt32(cmd.Parameters["@ID_USER"].Value); user.login = cmd.Parameters["@LOGIN"].Value.ToString(); user.haslo = cmd.Parameters["@PWD"].Value.ToString(); user.imie = cmd.Parameters["@NAME"].Value.ToString(); user.nazwisko = cmd.Parameters["@SURNAME"].Value.ToString(); user.token = cmd.Parameters["@TOKEN"].Value.ToString(); role.roleId = Convert.ToInt32(cmd.Parameters["@ID_ROLE"].Value); user.rola = role; user.rola.roleId = role.roleId; } Sqlcon.Close(); } // } // catch (Exception e) // { // throw new Exception("Autor o podanym loginie nie istnieje w systemie!"); //} return user; }
public static void editUser(User user) { try { String connStr = ConfigurationManager.ConnectionStrings["inzSNMConnectionString"].ConnectionString; using (SqlConnection Sqlcon = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand()) { Sqlcon.Open(); cmd.Connection = Sqlcon; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "UPDATE_USER"; cmd.Parameters.Add("@PWD", SqlDbType.VarChar); cmd.Parameters["@PWD"].Value = encryptPass(user.haslo); cmd.ExecuteNonQuery(); Sqlcon.Close(); } } } catch (Exception e) { throw new Exception("Zmiana danych użytkownika się nie powiodła!"); } }
public static void deleteUser(User user, User administrator) { if(administrator.rola.roleId==1){ try { String connStr = ConfigurationManager.ConnectionStrings["inzSNMConnectionString"].ConnectionString; using (SqlConnection Sqlcon = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand()) { Sqlcon.Open(); cmd.Connection = Sqlcon; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "DELETE_USER"; cmd.Parameters.Add("@LOGIN", SqlDbType.VarChar); cmd.Parameters["@LOGIN"].Value = user.login; cmd.ExecuteNonQuery(); Sqlcon.Close(); } } } catch (Exception e) { throw new Exception("Usunięcie użytkowmnika się nie powiodło!"); } sendDeleteUserEmail(user,administrator); } }
public static Boolean checkUser(User user,String haslo) { Boolean isValid = false; String encryptedPass = getUser(user.login).haslo; String passPassed = encryptPass(haslo); if(encryptedPass.Equals(passPassed)) { return true; } return isValid; }