gpt4 book ai didi

asp.net-mvc - 如何全局设置 ValidateAntiForgeryToken

转载 作者:行者123 更新时间:2023-12-03 22:17:44 27 4
gpt4 key购买 nike

安全第一。

MVC 最佳实践建议添加 [ValidateAntiForgeryToken]属性到每个 [HttpPost]行动。

如何在应用程序的一个独特点强制执行此规则?

最佳答案

以下类允许使用 FilterProvider 执行此操作

public IEnumerable<Filter> GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor)
{
List<Filter> result = new List<Filter>();

string incomingVerb = controllerContext.HttpContext.Request.HttpMethod;

if (String.Equals(incomingVerb, "POST", StringComparison.OrdinalIgnoreCase))
{
result.Add(new Filter(new ValidateAntiForgeryTokenAttribute(), FilterScope.Global, null));
}

return result;
}

要使用上述类,请将其添加到 RegisterGlobalFilters global.asx 中的方法文件:
...    
FilterProviders.Providers.Add(new AntiForgeryTokenFilterProvider ());
..

这样做,每个 [HttpPost]将检查 Html.AntiForgeryToken()在 View 中。

关于asp.net-mvc - 如何全局设置 ValidateAntiForgeryToken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5213345/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com