我正在运行一个IIS网站(使用ASP.NET / MVC构建),其中包括从多个代理收集通过BITS匿名上传文件的文件。
我需要确保IIS只接受从已知来源上传的文件以及匹配某些预定义文件名模式的文件。必须取消所有其他BITS上传尝试。
据我所知,BITS使用“BITS_POST”动词在HTTP 1.1上使用ad hoc协议。所以,理想情况下,我想挂钩进入IIS,分析BITS_POST请求信息,如果它不满足我的前提条件,请删除请求。
我尝试创建并注册一个实现IActionFilter.OnActionExecuting的过滤器,但似乎我的过滤器没有收到BITS_POST请求。
我很高兴听到有人实施了类似的BITS相关解决方案,以及如何做到这一点。无论如何,其他想法也是受欢迎的。
此致 纳坦
答案 0 :(得分:0)
我从未与BITS合作过,坦白说我不知道它是什么。
我通常做的是这种情况是实现HTTP模块。在其开始请求事件中,您可以迭代传入的HTTP请求数据,并决定在数据不符合要求时停止处理请求。您可以从HTTP模块代码完全访问HttpContext.Current.Request对象。
使用HTTP模块,您甚至可以在进入ASP.NET管道之前执行.NET代码。