ASP.NET MVC3WebサービスでjQueryとFormsAuthenticationを使用して認証を実装しようとしています。アイデアは、フォーム認証を実行してCookieまたはトークンを返すWebサービスにjQuery AJAX投稿を行い、データアクセス呼び出しごとに、Webアプリケーション(jQuery)がそのCookieまたはトークンを使用することです。
私が持っているもの-
ASP.NET WebサービスへのAJAX呼び出しを設定し、Webサービスを次のように設定しました。
public ActionResult Login(string userName, string password, bool rememberMe, string returnUrl)
{
if (ModelState.IsValid)
{
if (Membership.ValidateUser(userName, password))
{
return Json(FormsAuthentication.GetAuthCookie(userName, rememberMe), JsonRequestBehavior.AllowGet);
}
else
{
return Json("Authentication Failed", JsonRequestBehavior.AllowGet);
}
}
}
これは、正しいクレデンシャルを使用してAJAX呼び出しを行うと、JSONでCookieが返され、そうでない場合は、認証に失敗した文字列が返されるように機能しています。
わからないこと-JSONCookieを受け取ったらどうするか。これをHTML5ローカルストレージに保存することはできますが、データアクセス呼び出しで返送する部分(または全体)、およびそれを解釈してWebサービス側でCookieを確認する方法がわかりません。Cookieを使用するべきではない場合、ある種のトークンを生成して使用する方法はありますか?