gpt4 book ai didi

c# - 拒绝 HTTP 动词的 MVC3 自定义属性

转载 作者:太空宇宙 更新时间:2023-11-03 20:59:20 25 4
gpt4 key购买 nike

在 Asp.net web 应用程序中,我们可以在 web.config 文件中使用以下代码行来拒绝 HttpVerbs,但 MVC 使用 Action Controller 进行路由,使用 Authorize 属性进行授权。

所以我们想创建自定义属性来处理这个问题。

如何创建自定义属性以在所有操作方法上默认拒绝某些 HTTP 动词并且仅允许 HTTPGet 和 HTTPPost。

<deny verbs="*" users="*" /> 

最佳答案

如果您想禁止所有动词 GET 和 POST 除外,您可以在 web.config 文件中执行以下操作。

<configuration>
<system.webServer>
<security>
<requestFiltering>
<verbs allowUnlisted="false">
<add verb="GET" allowed="true" />
<add verb="POST" allowed="true" />
</verbs>
</requestFiltering>
</security>
</system.webServer>
</configuration>

示例代码和其他阅读 Material here

通过将它放在 web.config 中,您可以“短路”.NET 管道并允许 IIS 选择它是否应该响应请求(这对您的应用程序更有效)。

关于c# - 拒绝 HTTP 动词的 MVC3 自定义属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47223918/

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