1

我已经使用 web.config 上的代码来强制执行动态 IP 限制,以在 10 秒内拒绝 10 个并发请求,同时拒绝 5 个请求等并发请求。

<security>
  <dynamicIpSecurity denyAction="Unauthorized">
  <denyByRequestRate enabled="true" maxRequest="10" RequestIntervalInMillisecond="10000"/>
  <denyByConcurrentRequests enabled="true" maxConcurrentRequests="5"/>
  </dynamicIpSecurity>
</security>

该应用程序是 .net 4.7 框架,它是一个 MVC 应用程序。当我在 Azure Web App 上发布相同内容时,它不起作用。

当我尝试在 Fiddler 上使用相同的 Azure URL 发送类似 35 的请求时,所有请求都以 200 OK 状态响应。

我已经尝试了 web.config 代码

<security>
  <dynamicIpSecurity denyAction="Unauthorized">
    <denyByRequestRate enabled="true" maxRequest="10" RequestIntervalInMillisecond="10000"/>
    <denyByConcurrentRequests enabled="true" maxConcurrentRequests="5"/>
  </dynamicIpSecurity>
</security>

<security>
  <dynamicIpSecurity denyAction="Unauthorized">
    <denyByRequestRate enabled="true" maxRequest="10" RequestIntervalInMillisecond="10000"/>
    <denyByConcurrentRequests enabled="true" maxConcurrentRequests="5"/>
  </dynamicIpSecurity>
</security>
4

1 回答 1

-1

你可以试试下面的标签,看看它是否有效。尝试 requestIntervalInMilliseconds 而不是 RequestIntervalInMillisecond。

<security>
  <dynamicIpSecurity denyAction="Unauthorized">
    <denyByRequestRate enabled="true" maxRequest="10" requestedIntervalInMilliseconds="10000"/>
    <denyByConcurrentRequests enabled="true" maxConcurrentRequests="5"/>
  </dynamicIpSecurity>
</security>
于 2019-08-13T06:37:02.450 回答