Bonjour.
Je souhaite que mon application vérifie la présence d'un cookie sur le poste client pour authentification. Et ce depuis n'importe quelle page du site ! Mais sans utiliser le JavaScript svp, je trouve ça sale et trop lent...
Si le cookie existe, alors on logue la personne, en utilisant :
Puis on effectue une redirection sur un autre controller.
Code : Sélectionner tout - Visualiser dans une fenêtre à part WebSecurity.Login(login.UserName, login.Password, persistCookie: login.RememberMe)
Voilà mon architecture de controller :
J'ai prévu une méthode "SpeedLogin()" dans mon controller Account :BaseController : Controller
MesController : BaseController
Et voilà avec quoi je compte l’appeler :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public ActionResult SpeedLogin() { HttpCookie cookie = HttpContext.Request.Cookies.Get("LivDevis.Login"); WebSecurity.Login(cookie.Values.Get("UserName"), cookie.Values.Get("Password"), persistCookie: true); return RedirectToAction("Index", "DashBoard"); }
Ma question est : Où dois-je placer mon bout de code, et comment appeler la méthode "SpeedLogin()" ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 if (User.Identity.IsAuthenticated) { object o = Session["preferredName"]; if (o == null) { // appel de SpeedLogin() } }
Merci.
Partager