我正在尝试 Fluent Security 在 ASP.NET MVC 应用程序中强制实施安全策略,但我无法为采用参数的控制器方法定义策略。作为我的意思的一个例子,下面的代码片段显示了应该保护的控制器:
public class AccountController : Controller
{
...
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult LogOff()
{
return RedirectToAction("Index", "Home");
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Disassociate(string provider, string providerUserId)
{
return View();
}
}
而且,此代码片段(从概念上)显示了我如何尝试配置 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)
?