MVC 4の新機能。MVC4に付属している組み込みのアカウント管理を使用します。ただし、Views、AccountModel、およびAccountControllerの下にAccountフォルダーを作成しました。
私がやりたいのは、アカウントフォルダ内のビューへのアクセスを制限することです。このために、私のAccountControllerでは、次を使用します。
[Authorize]
public class AccountController : Controller
{
[AllowAnonymous]
public ActionResult Login(string returnUrl)
{
ViewBag.ReturnUrl = returnUrl;
return View();
}
public ActionResult bob()
{
return View();
}...
ホームページに、アカウントビューの下にあるbobビューへのリンクがあり、ログインページに再ルーティングされます(これは正しいです)。
これで、フォームを送信すると、適切な資格情報(何でもかまいません)でbobが表示されるはずですが、許可されていないため、代わりにログインにリダイレクトされます。コード:
public ActionResult Login(LoginModel model, string returnUrl)
{
if (ModelState.IsValid)
{
return RedirectToLocal(returnUrl);
}...
DBへの組み込みの接続を使用したくないのですが、bobを表示できるように、ユーザー名を文字列と照合して、authorization = trueを維持するために何をする必要がありますか?
長期的には、DBに接続し、SPROCを使用して情報をプルバックする予定です。そのため、現時点では、チェックされた文字列に基づいてユーザーを認証する必要があります。