はじめに
のんびりと更新を続けている、MVCシリーズです。今回はサインインしているユーザーを確認する方法を記事にしてみました。
まぁ、簡単なので記事にするほどでもないのですが、一連の流れですので簡単に書いてみます。
認証の確認をするには?
必要なところに、[Authorize]と書くだけでいい
サンプル
[Authorize] public ActionResult ChangePassword() { ViewData["PasswordLength"] = MembershipService.MinPasswordLength; return View(); }
たったこれだけで、認証によるページの制御ができます。
ChangePasswordのページへサインインしていないユーザーが訪れると、サインインの要求ページが表示されます。サインインしないとそのページが見れなくなります。
では、その時のサインインを求めるページはどこで定義されているのでしょうか?
「Web.Config」を開いてみてください。
<authentication mode="Forms"> <forms loginUrl="~/Account/LogOn" timeout="2880" /> </authentication>
認証されていなユーザーがアクセスした場合、loginUrlに記述していあるUrlへ移動します。
設定に関しては、以下のページに詳しく載っています。
■authentication の forms 要素 (ASP.NET 設定スキーマ)
http://msdn.microsoft.com/ja-jp/library/1d3t3c61(v=vs.80).aspx
おわりに
これで、認証ページの制御ができたので、簡単なアプリケーションなら作れるかと思います。次回は、もう少し機能の多いページを作るための記事を書いてみたいと思います。
ロールか? プロファイルか?
調査環境
VS2010 + MVC2ASP.NET
C#
