1
グローバルAuthorize
アトリビュートをFilterConfig.cs
に登録すると、認証されたユーザだけが各アクションメソッドにアクセスできるようになり、一部のコントローラを[Authorize(Role="Admin")]
に修飾して管理者だけがアクセスできるようになります。これらのコントローラーで2回?それを防ぐために私は何ができますか?ASP.NET MVC承認フィルタ
グローバルAuthorize
アトリビュートをFilterConfig.cs
に登録すると、認証されたユーザだけが各アクションメソッドにアクセスできるようになり、一部のコントローラを[Authorize(Role="Admin")]
に修飾して管理者だけがアクセスできるようになります。これらのコントローラーで2回?それを防ぐために私は何ができますか?ASP.NET MVC承認フィルタ
ASP.NET MVC "FilterProvider"プロバイダを使用できます。これが行うことは、特定のコントローラとアクションから関連するすべてのフィルタを取得するのに役立ちます。
独自のプロバイダを定義し、デフォルトプロバイダの代わりにそのプロバイダを登録することができます。これはasp.netフィルタを完全に制御し、必要に応じていくつかのフィルタを削除することができます。
次のコントローラがあるとします。
[Authorize]
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult Whatever()
{
return View();
}
}
私はあなたが次のように何かをする方法を探していると思います。あなたが探しているものthatsのが、このArticle
あなたがここにあなたがアクションまたはのコントローラに飾ら取得すべき属性を定義することができます。..重複フィルタを回避するために、条件付きフィルタを使用することができますが表示された場合はインデックスアクション
に集中あなたの選択。 http://haacked.com/archive/2011/04/25/conditional-filters.aspx/ –