public bool Authenticate(ApiCredential credentials, HttpResponseBase response) { var apiClient = new ApiClient(credentials); if (!apiClient.Ping()) return false; var userData = credentials.ToNameValueCollection(); new FormsAuthentication().SetAuthCookie(response, "tinyPM User", true, userData); return true; }
public ApiCredentialProvider(HttpContextBase context) { var identity = context.User.Identity as FormsIdentity; var userData = identity != null && identity.IsAuthenticated ? identity.Ticket.GetStructuredUserData() : null; credential = userData != null ? ApiCredential.FromNameValueCollection(userData) : null; }
public ActionResult Login(ApiCredential credentials, string returnUrl) { if (!ModelState.IsValid) return View(credentials); var isLoginValid = securityService.Authenticate(credentials, Response); if (isLoginValid) { return Url.IsLocalUrl(returnUrl) ? (ActionResult)Redirect(returnUrl) : RedirectToRoute(RouteNames.ListProjects); } ModelState.AddModelError("login-failed", "The login failed."); return View(credentials); }