Если я правильно понимаю ваш вопрос, вы обслуживаете статические файлы и хотите, чтобы у вас была возможность обработать запрос статического файла, чтобы определить, имеет ли пользователь доступ к этому файлу. (на основе типа MIME)
Если вы отобразите все запросы к файлам через пользовательский IHttpHandler (см. Раздел обработчиков вашего файла web.config), вы сможете выполнить это.
В ProcessRequest (или BeginProcessRequest, если вы реализуете асинхронный обработчик), вы можете вызвать HttpContext.Current.Server.MapPath ("~" + HttpContext.Current.Request.Path) (может быть, лучший способ сделать это) для получить текущий запрашиваемый статический файл.
Затем вы можете проанализировать расширение этого файла, чтобы принять решение.
Не уверен, что это то, что вы хотите, но, надеюсь, это поможет