2

Asp.Net MVC 3、C# を ApplicationServices Membership (MS Sql 2008 db を訴える標準的な方法) と一緒に使用します。

私のフォルダ構造は

CONTROLLERS
-- PageAController.cs
-- ADMIN
   -- PageBController.cs

ロール「AdminRole」を持つユーザーと、ルールが関連付けられていないユーザー(匿名)がいます。

特定のコントローラーへのアクセスを拒否し、「 AdminRole」が関連付けられていないユーザーPageAController.csのフォルダー内のすべてのコントローラーのログインページを表示したいと思います。ADMIN

  • 行き方は?
  • Web.Config をセットアップする必要がありますか? どのように?
4

1 に答える 1

9

お役に立てれば

AuthorizeAttribute を使用する

MVC アプリケーションを保護するためにルーティングまたは web.config ファイルを使用することはできません。MVC アプリケーションを保護するためにサポートされている唯一の方法は、[Authorize] 属性を各コントローラーとアクション メソッド (ログイン/登録メソッドを除く) に適用することです。現在の領域に基づいてセキュリティの決定を下すことは非常に悪いことであり、アプリケーションを脆弱性にさらすことになります

[Authorize(Roles="AdminRole")]
public class PageAController
{

}

[Authorize(Roles="AdminRole,AnotherRole")]
public class PageBController
{

}
于 2012-10-04T08:59:53.383 に答える