Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在对特定API调用进行并发尝试后阻止IP地址_C#_Asp.net_Security_Azure - Fatal编程技术网

C# 在对特定API调用进行并发尝试后阻止IP地址

C# 在对特定API调用进行并发尝试后阻止IP地址,c#,asp.net,security,azure,C#,Asp.net,Security,Azure,我最近在我的网站上进行了渗透测试,因此有一个特定的API调用,我想实现一种基于IP的节流形式,以防止滥用 我正在寻找一种从黑名单中添加和删除IP地址的方法,该黑名单应用于我的azure网站。 我知道这是可能的,但我一直无法找到一种方法来实现这一点的程序 此外,我不能在运行中编辑web.config,因为这会回收我的应用程序池,导致我丢失会话和缓存数据,这可能会对用户产生不利影响 我曾考虑实施一个依赖于将黑名单存储在数据库上的解决方案,但由于这是为了防止自动攻击,我宁愿在此之前阻止它,以避免使用资

我最近在我的网站上进行了渗透测试,因此有一个特定的API调用,我想实现一种基于IP的节流形式,以防止滥用

我正在寻找一种从黑名单中添加和删除IP地址的方法,该黑名单应用于我的azure网站。

我知道这是可能的,但我一直无法找到一种方法来实现这一点的程序

此外,我不能在运行中编辑web.config,因为这会回收我的应用程序池,导致我丢失会话和缓存数据,这可能会对用户产生不利影响


我曾考虑实施一个依赖于将黑名单存储在数据库上的解决方案,但由于这是为了防止自动攻击,我宁愿在此之前阻止它,以避免使用资源查询数据库。

最简单的解决方案可能是将IP存储在缓存中,以便快速读/写,减少负载和“短时间”你有没有按照那页上的链接找到那页?这不是你想要的吗?@Damien_不信者是的,我已经读过那篇文章了。我认为这个解决方案太宽泛了,因为只有一个API会受到未经验证用户的威胁。我不想冒险在网站的其他区域造成副作用。我现在已经实现了Web.config方法,但有一些慷慨的限制,因为它非常快速和简单。然而,我将这个问题留待讨论,因为我认为知道一种针对特定API URL的方法会很好(如果您希望在站点的不同区域具有不同的安全级别)