Compartir a través de


Cómo usar la compatibilidad de Metabase con IIS 7 y versiones posteriores

Por Tobin Titus

IIS 7 e IIS 8 permiten que las aplicaciones y scripts de configuración heredados sigan ejecutándose. Hay un componente de configuración opcional que habilita el sistema Metabase con sus interfaces mediante programación, Objetos base de administración (ABO) y proveedores ADSI y WMl, en él. El sistema intercepta las llamadas a ABO y las asigna al nuevo sistema de configuración. Los datos se conservan en applicationHost.config, pero el llamador de ABO se presenta con una vista heredada de la estructura de configuración.

Requisitos previos

  1. Asegúrese de que IIS esté instalado en la máquina seleccionando http://LocalHost en IE y observe que obtiene la página predeterminada "En construcción". Si IIS no está instalado, consulte el procedimiento de instalación para obtener instrucciones de instalación.
  2. Asegúrese de tener privilegios administrativos en la máquina. Estos privilegios no se tienen de forma predeterminada si se ha iniciado sesión como usuario distinto de la cuenta predefinida de administrador, aunque el usuario se haya agregado al grupo de administradores local en la máquina (se trata de una nueva característica de seguridad de Windows Server® 2008 y versiones posteriores con IIS, llamada LUA, fuera del ámbito de IIS). Asegúrese de iniciar sesión con la cuenta predefinida de administrador o invoque las aplicaciones de forma explícita como administrador predefinido, según sea necesario, mediante la herramienta de la línea de comandos "runas". Por ejemplo, para iniciar notepad.exe, podría ejecutar este comando: "runas /user:administrator notepad.exe". Se le pedirá la contraseña de la cuenta Administrador. Resulta útil tener un shell cmd-box que ya tenga privilegios elevados, mediante la ejecución de "runas /user:administrator cmd.exe". Todas las aplicaciones que ejecute desde ese cmd-box también tienen privilegios elevados y no tendrá que usar la sintaxis "runas" de ese cmd-box.
  3. Asegúrese de que se realiza una copia de seguridad del archivo de configuración maestro. Solo tiene que copiar applicationHost.config en otro archivo para poder restaurarlo más adelante. Encontrará applicationHost.config en el directorio inetsrv\, que a su vez se encuentra en el directorio del sistema. Tenga en cuenta que tendrá que ser administrador para hacerlo; consulte el punto anterior.
  4. Antes de empezar, asegúrese de que está en un "estado limpio". Para ello, revierta los cambios que pueda haber hecho en el archivo applicationHost.config en ejercicios anteriores (si usa una imagen de VPC, la manera más fácil de hacerlo es reiniciar la imagen sin guardar su estado).
  5. También se recomienda desactivar los mensajes de error HTTP descriptivos en IE (Herramientas > Opciones > Avanzado) para solucionar problemas más rápidos.

Nota:

Al copiar texto de archivos .html, también se copian caracteres ocultos. Al pegar el texto en un editor como Visual Studio o en una ventana de cuadro de comandos, es posible que el texto aparezca como si se hubiera copiado correctamente, pero el texto pegado podría no funcionar correctamente porque contiene caracteres ocultos. Esta situación puede ser difícil de depurar.

La mejor manera de copiar texto de los archivos .MHT es copiarlos, pegarlos en el Bloc de notas y, a continuación, copiarlos de nuevo desde el Bloc de notas. Así se quitan los caracteres ocultos. Si el texto es corto, a veces es más fácil escribirlo usted mismo en lugar de copiarlo y pegarlo.

Escritura de una configuración global mediante ABO

En este paso aprenderá a cambiar un valor en una configuración global mediante la interfaz AdminBaseObjects y escribirlo en el archivo applicationHost.config. Usará la herramienta MBExplorer.exe para realizar esta tarea.

En primer lugar, compruebe que el componente Compatibilidad con Metabase de IIS está instalado en el equipo. Este componente no está instalado de forma predeterminada. En Windows Server® 2008 y versiones posteriores, puede usar la herramienta Administrador del servidor (Inicio -> Herramientas administrativas -> Administrador del servidor) y comprobar el componente "Compatibilidad con la administración de IIS 6.0" para instalarlo. En un cmd-box, compruebe que el servicio NT IISADMIN está en funcionamiento ejecutando "net start iisadmin". Debería recibir un mensaje que indique que IISADMIN ya se está ejecutando.

A continuación, debe descargar la herramienta MBExplorer fuera de la web. Use la búsqueda de MSN para buscarla; le dirigirá al centro de descarga de Microsoft.com, donde deberá descargar e instalar el kit de recursos de IIS 6.0. La herramienta MBExplorer se incluye en el kit de recursos. Después de la instalación, normalmente se encuentra en \Archivos de programa\Recursos de IIS\Metabase Explorer\MBExplorer.exe.

Screenshot of the I I S Metabase Explorer screen, showing an M B Explorer tool being highlighted.

  1. Ejecute MBExplorer.exe. Esta herramienta funciona sobre la interfaz AdminBaseObjects (ABO), por lo que presenta una vista ABO de la jerarquía de configuración.

  2. En el panel izquierdo, vaya al nivel LM > W3SVC. Este es el nivel global de la jerarquía de configuración, en una vista de ABO.

  3. Busque la propiedad AuthFlags.

    Sugerencia

    Es más fácil localizar la propiedad si las ordena haciendo clic en el encabezado de columna Nombre. El valor predeterminado es 1.

  4. Cambie el valor a un entero entre 1 y 7, ambos incluidos.

  5. Con un editor de texto como el Bloc de notas, abra el archivo ApplicationHost.config en la siguiente ubicación: %windir%\system32\inetsrv\config\ApplicationHost.config

  6. Busque el grupo de secciones de <autenticación>. Las secciones de <autenticación> están habilitadas según el valor que establezca. Por ejemplo, si establece AuthFlags=2, solo BasicAuthentication tendrá enabled="true" y las demás secciones de autenticación tendrán enabled="false". Esto se debe a que "2" se asigna a "AUTH_BASIC" en el esquema de IIS 6.0.

  7. Cambie el valor de MBExplorer y actualice la vista del archivo ApplicationHost.config. Al cambiar la propiedad AuthFlags en Metabase, habilitará y deshabilitará indirectamente los esquemas de autenticación del archivo ApplicationHost.config.

Escritura de una configuración de directorio virtual mediante ABO

En este paso aprenderá a cambiar un valor en un directorio virtual mediante ABO y a escribir el valor en applicationHost.config. Dado que no está cambiando una configuración global, la capa de compatibilidad de ABO genera una etiqueta de ubicación en el archivo applicationHost.config, con una ruta de acceso que corresponde al directorio virtual que ha cambiado. Tenga en cuenta que el componente Compatibilidad con Metabase no controla los archivos web.config.

Screenshot of the I I S Metabase Explorer screen showing a Virtual Directory being highlighted.

  1. Ejecute la herramienta MBExplorer.exe.
  2. En el panel izquierdo, vaya al nivel LM>W3SVC> 1 >ROOT. Esta es la aplicación raíz que se muestra en el sitio web predeterminado.
  3. Establezca un valor para la propiedad AuthFlags. Haga clic en ROOT en el panel izquierdo; luego, en el menú Editar, seleccione Nuevo registro DWORD y escriba 6000 como identificador de registro.
  4. Se creará una propiedad AuthFlags a este nivel con el valor 0. Haga doble clic en la propiedad en el panel derecho y cambie el valor a un entero entre 1 y 7, ambos incluidos.
  5. Con un editor de texto como el Bloc de notas, abra el archivo ApplicationHost.config en la siguiente ubicación: %windir%\system32\inetsrv\config\ApplicationHost.config
  6. En la parte inferior del archivo, anote una nueva etiqueta <location path="Default Web Site":> con las secciones de autenticación habilitadas o deshabilitadas según el valor establecido.

Resumen

En este documento ha aprendido a habilitar y usar la característica de compatibilidad del sistema de configuración. Ha usado una herramienta heredada para cambiar la configuración a nivel global y de directorio virtual y los ha escrito en applicationHost.config. Es posible que quiera usar otras herramientas, como adsutil.vbs, para realizar la asignación y la escritura a través. Es posible que quiera comprobar que los scripts y aplicaciones de ABO/ADSI/WMI existentes siguen funcionando en este entorno. También puede experimentar con la dirección inversa: cambiar los valores de applicationHost.config y comprobar que se reflejan en la vista ABO de MBExplorer o de cualquier otra herramienta o script.