В нашем веб-приложении у нас есть опция для загрузки файлов пользователем.мы проверяем расширения файлов на стороне клиента и содержимое файлов на стороне сервера.Теперь мы хотели бы добавить несколько фильтров на уровне 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.