Me gustaría tener una lista blanca de tipos de archivos que los usuarios están autorizados a cargar a mi servidor IIS (estoy usando IIS v7.5).Cómo restringir/validar archivos subir tipos de archivos del lado del servidor en IIS
¿Cuáles son las opciones que tengo? Por ejemplo, para restringir el tamaño del archivo de 5 MB para una acción específica en mi controlador, he añadido esta sección para mi webconfig:
<location path="home/fileupload">
<system.web>
<!-- maxRequestLength is in kilobytes (KB) -->
<httpRuntime maxRequestLength="5120" /> <!-- 5MB -->
</system.web>
<system.webServer>
<security>
<requestFiltering>
<!-- maxAllowedContentLength is in bytes -->
<requestLimits maxAllowedContentLength="5242880"/> <!-- 5MB -->
</requestFiltering>
</security>
</system.webServer>
</location>
¿Hay una opción en el webconfig para configurar una lista blanca de tipos de archivo permitidos? ¿O la única opción es validar los tipos de archivos en el código cuando el archivo está completamente cargado? ¿Cuál es la técnica recomendada? ¿Cómo puedo estar seguro de que el .docx, .pdf, .jpg, etc. son realmente lo que son?
¿Hay alguna razón para no validarlo en el lado del cliente? –
porque no todos los navegadores admiten esta característica y también porque todo debe validarse del lado del servidor. –
@AlexandreJobin ¿cómo de seguro quieres que el archivo ES lo que el usuario dice que es? – Jared