public ActionResult Controle()
        {
            try
            {
                // on récupère les données du formulaire

                String login = Request["login"];
                String mdp   = Request["pwd"];
                try
                {
                    ServiceUtilisateur unService     = new ServiceUtilisateur();
                    Utilisateur        unUtilisateur = unService.getUtilisateur(login);

                    if (unUtilisateur != null)
                    {
                        try
                        {
                            String sel = unUtilisateur.Salt;
                            // on récupère le sel
                            Byte[] salt = MonMotPassHash.transformeEnBytes(unUtilisateur.Salt);
                            // on génère le mot de passe
                            Byte[] tempo = MonMotPassHash.PasswordHashe(mdp, salt);
                            if (MonMotPassHash.VerifyPassword(salt, mdp, tempo))
                            {
                                Session["id"]     = unUtilisateur.NumUtil;
                                Session["role"]   = unUtilisateur.Role;
                                Session["Prenom"] = unUtilisateur.PrenomUtil;
                            }
                            else
                            {
                                ModelState.AddModelError("Erreur", "Erreur lors du contrôle  du mot de passe pour : " + login);
                                return(RedirectToAction("Index", "Connexion"));
                            }
                        }
                        catch (Exception e)
                        {
                            ModelState.AddModelError("Erreur", "Erreur lors du contrôle : " + e.Message);
                            return(RedirectToAction("Index", "Connexion"));
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("Erreur", "Erreur  login erroné : " + login);
                        return(RedirectToAction("Index", "Connexion"));
                    }
                }
                catch (MonException e)
                {
                    ModelState.AddModelError("Erreur", "Erreur lors de l'authentification : " + e.Message);
                    return(RedirectToAction("Index", "Connexion"));
                }
                return(RedirectToAction("Index", "Home"));
            }
            catch (MonException e)
            {
                ModelState.AddModelError("Erreur", "Erreur lors de l'authentification : " + e.Message);
                return(RedirectToAction("Index", "Connexion"));
            }
        }
Beispiel #2
0
        public static List <UtilisateurViewModel> GetAll()
        {
            List <UtilisateurViewModel> retour       = new List <UtilisateurViewModel>();
            List <Utilisateur>          utilisateurs = ServiceUtilisateur.GetAll();

            foreach (Utilisateur li in utilisateurs)
            {
                retour.Add(new UtilisateurViewModel(li));
            }
            return(retour);
        }
Beispiel #3
0
 public void Save()
 {
     if (this.ID == Guid.Empty)
     {
         //insert
         ServiceUtilisateur.Insert(this.Metier);
     }
     else
     {
         //update
         ServiceUtilisateur.Update(this.Metier);
     }
 }
Beispiel #4
0
        // GET: Utilisateur
        public ActionResult Index()
        {
            List <UtilisateurViewModel> utilisateursVM = new List <UtilisateurViewModel>();


            List <Utilisateur> utilisateurs = ServiceUtilisateur.GetAll();

            foreach (Utilisateur utilisateur in utilisateurs)
            {
                utilisateursVM.Add(new UtilisateurViewModel(utilisateur));
            }

            return(View(utilisateursVM));
        }
Beispiel #5
0
        /// <summary>
        /// retourne un utilisateur ViewModel
        /// </summary>
        /// <param name="id">Identifiant nullable du utilisateur</param>
        /// <returns>si id null, retourne un viewModel avec un utilisateur initialisé; Si id a une valeur retourne le viewModel avec le utilisateur en BDD
        /// </returns>
        public static UtilisateurViewModel Get(Guid?id)
        {
            UtilisateurViewModel retour = null;

            if (id.HasValue)
            {
                retour = new UtilisateurViewModel(ServiceUtilisateur.Get(id.Value));
            }
            else
            {
                Utilisateur l = new Utilisateur()
                {
                    ID = Guid.Empty, Nom = "Default"
                };
                retour = new UtilisateurViewModel(l);
            }

            return(retour);
        }
Beispiel #6
0
        public ActionResult Create(UtilisateurViewModel uVM)
        {
            Utilisateur utilisateur = new Utilisateur()
            {
                Email    = uVM.Email,
                ID       = Guid.NewGuid(),
                Nom      = uVM.Nom,
                Password = uVM.Password,
            };

            try
            {
                using (ServiceUtilisateur dal = new ServiceUtilisateur())
                {
                    dal.creerUtilisateur(utilisateur);
                }
                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
Beispiel #7
0
        // GET: Utilisateur/Details/5
        public ActionResult Details(Guid?id)
        {
            UtilisateurViewModel uVM = new UtilisateurViewModel(ServiceUtilisateur.GetAll().FirstOrDefault(u => u.ID == id));

            return(View(uVM));
        }
 public ActionResult Controle()
 {
     try
     {
         // on récupère les données du formulaire
         string login = Request.Form["login"];
         string mdp   = Request.Form["pwd"];
         try
         {
             ServiceUtilisateur unService     = new ServiceUtilisateur();
             Utilisateur        unUtilisateur = unService.getUtilistateur(login);
             if (unUtilisateur != null)
             {
                 try
                 {
                     Byte[] selmdp  = MonMotPassHash.GenerateSalt();
                     Byte[] mdpByte = MonMotPassHash.PasswordHashe("secret", selmdp);
                     String mdpS    = MonMotPassHash.BytesToString(mdpByte);
                     String saltS   = MonMotPassHash.BytesToString(selmdp);
                     String sel     = unUtilisateur.Salt;
                     // on récupère le sel
                     Byte[] salt = MonMotPassHash.transformeEnBytes(unUtilisateur.Salt);
                     // on génère le mot de passe
                     Byte[] tempo = MonMotPassHash.transformeEnBytes(unUtilisateur.MotPasse);
                     if (MonMotPassHash.VerifyPassword(salt, mdp, tempo) == false)
                     {
                         ModelState.AddModelError("Erreur", "Erreur lors du contrôle  du mot de passe pour : " + login);
                         return(RedirectToAction("Index", "Connexion"));
                     }
                     else
                     {
                         HttpContext.Session.SetString("Pseudo", unUtilisateur.NomUtil);
                         HttpContext.Session.SetString("Role", unUtilisateur.Role);
                         Utilisateur.SetConnected(true);
                         Utilisateur.SetAdmin(unUtilisateur.Role.Equals("admin"));
                         return(RedirectToAction("Index", "Home"));
                     }
                 }
                 catch (Exception e)
                 {
                     ModelState.AddModelError("Erreur", "Erreur lors du contrôle : " + e.Message);
                     return(RedirectToAction("Index", "Connexion"));
                 }
             }
             else
             {
                 ModelState.AddModelError("Erreur", "Erreur  login erroné : " + login);
                 return(RedirectToAction("Index", "Connexion"));
             }
         }
         catch (MonException e)
         {
             ModelState.AddModelError("Erreur", "Erreur lors de l'authentification : " + e.Message);
             return(RedirectToAction("Index", "Connexion"));
         }
     }
     catch (MonException e)
     {
         ModelState.AddModelError("Erreur", "Erreur lors de l'authentification : " + e.Message);
         return(RedirectToAction("Index", "Connexion"));
     }
 }