Webアプリケーションに認証を追加しています。これは、asp.netmvcシングルページアプリケーションです。現在、Webアプリケーションは認証のためにasp.netmvcを使用しています。ログインページを提供するよりも認証されていない場合は、AppControllerでRequest.IsAuthenticatedを確認します(そうでない場合は、app.htmlページを保存します)。AccountControllerには、次のログオンアクションがあります。
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public ActionResult LogOn(LogOnModel model, string returnUrl)
{
if (ModelState.IsValid)
{
//VALIDATE USER NAME AND PASSWORD
if (Repository_Security.CheckUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/") && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\\\"))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Index", "App");
}
}
else
{
ModelState.AddModelError("", "The user name or password provided is incorrect.");
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
実際には、ユーザー名とパスワードを取得してデータベースに対して検証するだけです。合格した場合にAuthCookieを設定するより。
私の質問は、javascriptとajaxデータ呼び出しでブラウザでこれを完全にクライアントサイドで行う場合、これは可能ですか?クライアント側のコードにチェックを追加して、ユーザーが認証されているかどうかを確認するよりも、そうでない場合はログインページにユーザーをスローしますか?
何か案は?ありがとう。