Cómo: Utilizar ASP.NET para proteger los tipos de archivo

Resumen

En este artículo paso a paso se describe cómo agregar tipos de archivo adicionales a una aplicación de ASP.NET para proteger determinados tipos de archivos. De forma predeterminada, ASP.NET está configurado para interceptar y detener las solicitudes de los diferentes tipos de archivo que se utilizan en aplicaciones de ASP.NET. Estos tipos de archivos son los que no se debe recuperar por los usuarios. Estos tipos de archivo incluyen archivos .config que almacenan información de configuración para los archivos de aplicación y .cs que almacenar el código fuente de la aplicación. ASP.NET garantiza la privacidad de estos archivos mediante la asociación de ambos tipos de archivo a System.Web.HttpForbiddenHandler. System.Web.HttpForbiddenHandler devuelve un error para el usuario que solicita el archivo. Puede utilizarse este método de protección de archivos de cualquier tipo de archivo. Este método es útil para proteger los archivos que existen en la carpeta de la aplicación Web y nunca deben ser recuperados por los usuarios.

Volver al principio

Modificar las asignaciones de secuencia de comandos en el Administrador de servicios Internet

Microsoft Internet Information Services (IIS) 5.0 determina cómo se controlan las solicitudes según la asignación de secuencia de comandos para la extensión de nombre de archivo de la solicitud. Estas asignaciones de secuencia de comandos se ajustan mediante el Administrador de servicios Internet. De ASP.NET a bloquear tipos de archivo, primero debe configurar IIS 5.0 para reenviar las solicitudes a ASP.NET. Para ello, siga estos pasos:
  1. En la barra de tareas, haga clic en Inicio, elija
    Configuracióny, a continuación, haga clic en Panel de Control.
  2. Haga doble clic para abrir la carpeta Herramientas administrativas y, a continuación, haga doble clic para ejecutar el Administrador de servicios Internet.
  3. Haga clic en el servidor virtual o la carpeta virtual que contiene la aplicación ASP.NET y, a continuación, haga clic en
    Propiedades.
  4. Seleccione el directorio principal o la
    Ficha directorio . Si no se ha creado una aplicación para la carpeta virtual, haga clic en crear bajo Configuración de la aplicación.
  5. En Configuración de la aplicación, haga clic en
    Configuración.
  6. Para identificar la ubicación del archivo Aspnet_isapi.dll que controla las solicitudes ASP.NET, seleccione la asignación de aplicación .aspx y, a continuación, haga clic en Editar.
  7. Aparece el cuadro de diálogo Agregar o modificar asignación de extensión de aplicación. Seleccione el texto en el campo ejecutable y, a continuación, presione CTRL+C para copiar el texto al Portapapeles.
  8. Haga clic en Cancelar para volver a la
    Cuadro de diálogo Configuración de la aplicación .
  9. Ahora, agregue asignaciones de aplicación para cada extensión que desee que ASP.NET para bloquear. Para ello, haga clic en Agregar. A continuación, en el
    Archivo ejecutable de campo, presione CTRL+V para pegar la ruta de acceso del archivo Aspnet_isapi.dll.
  10. En la sección de verbos , seleccione el
    Opción Todos los verbos . Compruebe que está activada la casilla de verificación Motor de secuencias de comandos y que no está activada la casilla de verificación Comprobar si el archivo existe .
  11. Haga clic en Aceptar.
  12. Repita este procedimiento para cada extensión de nombre de archivo que desea que haya procesado por ASP.NET.
Volver al principio

Configurar un tipo de archivo que desee bloqueado

Para bloquear tipos de archivo adicionales para una aplicación ASP.NET, siga estos pasos:
  1. Abra el archivo Web.config en un editor de texto como el Bloc de notas. El archivo Web.config se encuentra en el directorio raíz de la aplicación Web.
  2. En el archivo Web.config archivo agregue el elemento de configuración < httpHandlers > bajo el elemento < system.web > .

    Nota: No debe copiar el elemento < httpHandlers > del archivo Machine.config. La razón que no debe copiar el elemento < httpHandlers > es que el elemento < httpHandlers > permite agregar tipos de archivo adicionales sin reemplazar completamente la configuración de Machine.config.
  3. En el elemento < httpHandlers > , utilice las etiquetas < Agregar > sub para especificar otros tipos de archivo que quiere bloquear. Establezca el atributo del verbo "*". Al hacerlo, se especifica que se bloquean todos los tipos de solicitudes HTTP. Definir el atributo de ruta de acceso como un carácter comodín que coincide con los tipos de archivos que desea bloquear. Por ejemplo, puede especificar "*.mdb". Por último, establezca el atributo de tipo en "System.Web.HttpForbiddenHandler". El ejemplo de código siguiente muestra cómo configurar la sección "httpHandlers" en el archivo Web.config:
    <system.web>    <httpHandlers>
    <add verb="*" path="*.mdb" type="System.Web.HttpForbiddenHandler" />
    <add verb="*" path="*.csv" type="System.Web.HttpForbiddenHandler" />
    <add verb="*" path="*.private" type="System.Web.HttpForbiddenHandler" />
    </httpHandlers>
    </system.web>

  4. Guarde el archivo Web.config. La aplicación ASP.NET se reiniciará automáticamente.
Volver al principio

Referencias

Para obtener información adicional, haga clic en los números de artículo siguientes para verlos en Microsoft Knowledge Base:
315736 Cómo: proteger una aplicación ASP.NET utilizando la seguridad de Windows
315588 Cómo: proteger una aplicación ASP.NET utilizando certificados de cliente
818014 Cómo: proteger las aplicaciones que se basan en el.NET Framework
Volver al principio
Propiedades

Id. de artículo: 815152 - Última revisión: 17 ene. 2017 - Revisión: 1

Comentarios