1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
In login.cs I used this function
private bool Authentifier(string strUtilisateur, string strMotDePasse)
{
bool bOk = false;
// chemin vers la BD (SQL serveur 2005):
string urlSqlServer = GetConnectionString();
try
{
// objet de connexion :
SqlConnection connexion;
connexion = new SqlConnection(urlSqlServer);
// ouvrir la connexion :
connexion.Open();
// préparation de la requête effective :
string Requete = "SELECT * FROM Utilisateurs WHERE Nom='" + strUtilisateur + "'";
SqlCommand cmdSqlServ = new SqlCommand(Requete, connexion);
//lecture de plusieurs lignes :
SqlDataReader lignesRead;
lignesRead = cmdSqlServ.ExecuteReader();
// Parcours de la liste des utilisateurs
while (lignesRead.Read())
{
if (lignesRead["Mp"].ToString() == strMotDePasse)
{
bOk = true; break;
}
}
// fermer la connexion :
connexion.Close();
}
catch
{
bOk = false;
}
return bOk;
}
protected void Button1_Click(object sender, EventArgs e)
{
if (Authentifier(txtUtilisateur.Text, txtMotDePasse.Text))
{
FormsAuthentication.RedirectFromLoginPage(txtUtilisateur.Text, RememberMe.Checked);
}
else
{
lbMessage.Text = "Erreur d'authentification, l'utilisateur ou le mot de passe n'existent pas!";
}
} ********************************************
in global.asax i use that:
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
if (Request.IsAuthenticated)
{
SqlDataReader reader1 = SqlHelper.ExecuteReader(urlSqlServer1, CommandType.StoredProcedure, "RolesDesUtilisateurs",
new SqlParameter("@Nom", User.Identity.Name));
ArrayList roleList = new ArrayList();while (reader1.Read())
{
roleList.Add(reader1["Nom"]);
}
String[] roleListArray = (String[])roleList.ToArray(typeof(String));
HttpContext.Current.User = new GenericPrincipal(User.Identity, roleListArray);
} |
Partager