2011-08-27 12 views
1

私のASP.NET MVC 3アプリケーションには、通常ユーザーと管理ユーザーという2種類のユーザーがあります。明らかに後者は前者よりも大きな特権を持っています。私は、ページレベルの権限の実装をその場に持っていますが、画面レベルの項目(管理者の場合はこのボタンを表示します)では、すべての画面でboolean IsAdminフラグを使用できるようにするには、私は、さまざまな方法のクッキー/セッション変数/ httpcontextを考えることができますが、私は何が生産の成功に使用されているのだろうかと思っています。任意の案内は事前にASP.NET MVC3 - IsAdmin情報を保存する最も適切な方法

おかげ

JP

答えて

0

を高く評価されViewBagは、簡単にフィット感と思われます。

ViewBag.UserIsAdmin = somevalue; 

すべてのビューで使用でき、モデルの一部ではないビューデータに使用されます。

唯一の欠点は、必要なビューですべての要求を取り込む必要があることですが、実際にはベースコントローラの初期化メソッドで行うことができます。

クッキーではなく、リクエスト間での保存方法については、それらは簡単に赦されます。セッションを使用して要求間に格納することもできますし、要求が速い(セッションを使用できない)場合は、要求ごとに単純に再投入することもできます。

0

タイムアウトかどうかをチェックする必要があるため、セッションを使用しないでください。多くの場所でコーディングするのは難しい(私の経験)。
ASP.NETメンバーシップを利用するフォーム認証を使用できます。次に、HttpContext.User.Identityを使用して、ユーザー特権を確認してください。