Estructura y configuración del web.config

Programación

¿Qué es el web.config?

Archivo básico de configuración para toda aplicación asp.net. En él, mediante un etiquetado XML, se configura todo lo referente a seguridad, sessiones, compilación, variables de sistema, etc... También puede ser usado para almacenar parámetros de la aplicación, como cadenas de conexión o variables globales.

El web.config suele colocarse en el directorio raíz de la aplicación, pero pueden existir más dentro de las carpetas para dar configuraciones parciales para los distintos segmentos de las aplicaciones.

Secciones de un web.config

Como hemos comentado hay múltiples secciones que pueden ser configurados dentro del web.config, a continuación vemos un ejemplo con las más comunes:


<configuration>
  <configSections>
      	…
  </configSections>
 
  <!--Sección de variables de app. 
  Aquí pueden declararse variables a usar en toda la aplicación.-->
  <appSettings>
    <add key="key1" value="value1" />
    <add key="key2" value="value2" />
  </appSettings>

  <system.web>
     <httpModules>
   
     </httpModules>

     <!--Tamaño máximo de las peticiones-->
     <httpRuntime  maxRequestLength="1024000" executionTimeout="3600" />

     <!--Configuración de las sessiones-->
     <sessionState timeout="60" />

     <!--Habilitando y estableciendo duración de las cookies-->
     <sessionState cookieless="true" timeout="10"/>

     <!--Permisos de seguridad-->
     <authorization>	
        ...
     </authorization>

     <compilation>
        <!--Ensamblados de la app-->
        <assemblies>
          ... 
        </assemblies>
     </compilation>
  </system.web>
</configuration>

Cómo se ve, la configuración es muy sencilla, usando etiquetas xml es posible configurar casi todos los parámetros del servidor.

Otros modulos configurables en el web.config

  • Establecer permisos de seguridad para cada sección de la web. Es posible añadir un web.config particular en una carpeta en la que desees establecer un nivel de seguridad con un rol de usuario. Para ello es tan sencillo como crear un nuevo web.config y añadir las siguientes líneas:
    <system.web>
       <authorization>
          <allow roles="Administrador,Editor" />
          <deny users="*" />
      </authorization>
    </system.web>
    
    En este ejemplo vemos como permitimos la entrada a esta sección a los administradores y editores, negándoselo al resto de usuarios.
  • También es posible establecer reglas de enrutamiento para las urls de la aplicación. Con esto podemos crear url’s amigables en cualquier web.
  • Puede ser usado para muchas más cosas como declarar y configurar módulos externos de .net, como librerías para el cache, filtrados de rangos de ips, etc..
Si quieres leer más articulos como este, sigueme: @ander_gs
Compartir en: