1

重複の可能性:
Fluent Security - パラメーター化されたコントローラー アクションの構成

ASP.NET MVC アプリケーションでセキュリティ ポリシーを適用するために Fluent Security を試していますが、パラメーターを受け取るコントローラー メソッドのポリシーを定義できません。私が言いたいことの例として、次のコード スニペットは、保護する必要があるコントローラーを示しています。

public class AccountController : Controller
{
    ...

    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult LogOff()
    {
        return RedirectToAction("Index", "Home");
    }

    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Disassociate(string provider, string providerUserId)
    {
        return View();
    }
}

そして、このコード スニペットは、2 つのコントローラー メソッドへの認証済みアクセスを許可するように Fluent Security を構成しようとしている方法を (概念的に) 示しています。

SecurityConfigurator.Configure(config => {
    config.For<AccountController>().DenyAuthenticatedAccess();
    config.For<AccountController>(x => x.LogOff()).DenyAnonymousAccess();
    config.For<AccountController>(x => x.Disassociate()).DenyAnonymousAccess();
});

ただし、 への引数がないため、後者のコードはビルドされませんDisassociate。コンパイラは次のように報告します: No overload for method 'Disassociate' takes 0 arguments.

メソッドの Fluent Security を構成するにはどうすればよいAccountController.Disassociate(string, string)ですか?

4

1 に答える 1