拒绝IIS中的特定文件扩展名类型

时间:2019-05-02 02:03:53

标签: asp.net iis

在我们的Web应用程序中,用户可以选择上传文件。我们正在验证客户端的文件扩展名和服务器端的文件内容。现在,我们想在IIS级别添加一些过滤器,以禁止使用特定的文件扩展名类型。是否可以在IIS级别上配置一些过滤器以拒绝以“ * .PDF”为扩展名的上传请求?在IIS请求过滤模块中,我添加了拒绝文件扩展名的规则,但是没有运气。当我用谷歌搜索这个问题时,大多数时候我以代码的形式找到了解决方案,但不是在IIS级别。请告知。

客户端代码

 <asp:RegularExpressionValidator 
         ID="regValidateFileExtension" runat="server" ControlToValidate="upfile" 
         ErrorMessage="Selected file type not allowed in the system." 
         ValidationExpression="^([0-9a-zA-Z_\-~ :\\])+(.XLS|.XLSX|.CSV)$"></asp:RegularExpressionValidator>

服务器端代码:

if (fi.Extension.ToUpper() == ".XLS" || fi.Extension.ToUpper() == ".XLSX" || fi.Extension.ToUpper() == ".CSV")
 {
          //call third party dll to check for virus.               
 }

我们的供应商进行安全扫描时,他们已经对上传功能提出了担忧。根据与他们的初步交谈,他们可以拦截请求并将无效的文件扩展名发送到应用程序,因此我们正在考虑是否可以在IIS级别上创建一些过滤器来停止特定的扩展名或mime类型。

0 个答案:

没有答案