Descripción de las cuentas de usuario y de grupo integradas en IIS 7

por Saad Ladki

Introducción

En versiones anteriores de IIS, se crea una cuenta local denominada IUSR_MachineName durante la instalación. IIS usó la cuenta de IUSR_MachineName de forma predeterminada siempre que se habilitaba la autenticación anónima. Esto lo usaron los servicios FTP y HTTP.

También había un grupo denominado IIS_WPG, que se usaba como contenedor para todas las identidades del grupo de aplicaciones. Durante la instalación de IIS, a todos los recursos adecuados en el sistema se les concedían los derechos de usuario correctos para el grupo de IIS_WPG, de modo que un administrador solo tuviera que agregar su identidad a ese grupo cuando creaba una nueva cuenta de grupo de aplicaciones.

Este modelo funcionó bien, pero tuvo sus inconvenientes: la cuenta de IUSR_MachineName y el grupo de IIS_WPG eran locales para el sistema en el que se crearon. A cada cuenta y grupo de Windows se le asigna un número único denominado identificador de seguridad (SID) que lo distingue de otras cuentas. Cuando se crea una ACL, solo se usa el SID. Como parte del diseño en versiones anteriores de IIS, IUSR_MachineName se incluyó en el archivo metabase.xml de modo que si intentaba copiar el metabase.xml de un equipo a otro, no funcionaría. La cuenta del otro equipo tendría un nombre diferente.

Además, no se podían "xcopy /o" ACL de un equipo a otro, ya que los SID eran diferentes de equipo a equipo. Una solución alternativa era usar cuentas de dominio, pero eso requería agregar un directorio activo a la infraestructura. El grupo IIS_WPG tenía problemas similares con los permisos del usuario. Si establecía las ACL en el sistema de archivos de un equipo para IIS_WPG e intentaba "xcopy /o" aquellas en otro equipo, se produciría un error. Esta experiencia se ha mejorado en IIS 7 y versiones posteriores mediante una cuenta y un grupo integrados.

El sistema operativo garantiza que una cuenta y un grupo integrados tengan siempre un SID único. IIS 7 y versiones posteriores han llevado esto más allá y se han asegurado de que los nombres reales utilizados por la nueva cuenta y grupo nunca se localizarán. Por ejemplo, independientemente del idioma de Windows que instale, el nombre de la cuenta de IIS siempre será IUSR y el nombre del grupo será IIS_IUSRS.

En resumen, IIS 7 y versiones posteriores ofrecen lo siguiente:

  • La cuenta integrada IUSR reemplaza la cuenta IUSR_MachineName.
  • El grupo integrado de IIS_IUSRS reemplaza al grupo de IIS_WPG.

La cuenta IUSR ya no necesita una contraseña porque es una cuenta integrada. Lógicamente, puede considerar que es igual que las cuentas NETWORKSERVICE o LOCALSERVICE. Tanto la nueva cuenta IUSR como el grupo de IIS_IUSRS se describen en mayor profundidad en las secciones siguientes.

Descripción de la nueva cuenta IUSR

La cuenta IUSR reemplaza la cuenta de IUSR_MachineName en IIS 7 y versiones posteriores. La cuenta de IUSR_MachineName se seguirá creando y usando si instala el servidor compatible con FTP 6 que se incluye en Windows Server 2008. Si no instala el servidor FTP que se incluye con Windows Server 2008, no se creará esta cuenta.

Esta cuenta integrada no necesita una contraseña y será la identidad predeterminada que se usa cuando se habilita la autenticación anónima. Si busca en el archivo applicationHost.config, verá la siguiente definición:

<anonymousAuthentication enabled="true" userName="IUSR" defaultLogonDomain="" />

Esto indica a IIS que use la nueva cuenta integrada para todas las solicitudes de autenticación anónimas. Las mayores ventajas son las siguientes:

  • Establezca los permisos del sistema de archivos para la cuenta IUSR mediante el Explorador de Windows o cualquiera de las muchas herramientas de línea de comandos.
  • Ya no es necesario preocuparse por la expiración de contraseñas para esta cuenta.
  • Use xcopy /o para copiar archivos junto con su propiedad y la información de ACL en diferentes equipos sin problemas.

Nota:

La cuenta IUSR es similar a LOCALSERVICE respecto a la manera en que actúa de forma anónima en la red. Las cuentas NETWORKSERVICE y LOCALSYSTEM pueden actuar como identidad de máquina, pero la cuenta IUSR no puede porque requeriría una elevación de derechos de usuario. Si necesita que la cuenta anónima tenga derechos en la red, debe crear una nueva cuenta de usuario y establecer manualmente el nombre de usuario y la contraseña, como hizo en el pasado para la autenticación anónima.

Para conceder derechos de cuenta anónima en la red mediante el Administrador de IIS:

  1. Haga clic en Inicio, escribaINetMgr.exe y, a continuación, haga clic enEntrar. Si se le solicita, haga clic en Continuar para elevar los permisos.
  2. En la sección Conexiones, haga clic en el botón + situado junto al nombre del equipo.
  3. En el Administrador de IIS, haga doble clic en el sitio que desea administrar.
  4. En la vista Características, haga doble clic en Autenticación.
  5. Seleccione Autenticación anónima y, a continuación, haga clic en Editar en el panel Acciones.
  6. En el cuadro de diálogo Editar credenciales de autenticación anónima, haga clic en la opción Usuario específico y, a continuación, haga clic en Establecer.
  7. En el cuadro de diálogo Establecer credenciales, escriba el nombre de usuario y la contraseña deseados y, a continuación, haga clic en Aceptar.

Descripción del nuevo grupo de IIS_IUSRS

El grupo de IIS_IUSRS reemplaza al grupo de IIS_WPG. Este grupo integrado tiene acceso a todos los recursos del sistema y archivos necesarios para que una cuenta, cuando se agregue a este grupo, pueda actuar sin problemas como una identidad del grupo de aplicaciones.

Al igual que con la cuenta integrada, este grupo integrado resuelve varios obstáculos de implementación de xcopy. Si establece permisos en los archivos del grupo de IIS_WPG (que estaba disponible en los sistemas IIS 6.0) e intentó copiar esos archivos en otro equipo Windows, el SID del grupo sería diferente en todos los equipos y las configuraciones del sitio se romperían.

Dado que el SID de grupo en IIS 7 y versiones posteriores es el mismo en todos los sistemas que ejecutan Windows Server 2008, puede usar "xcopy /o" para conservar la información de propiedad y de la ACL a medida que mueve archivos de equipo a equipo. Esto facilita las implementaciones de xcopy.

IIS 7 y versiones posteriores también facilitan el proceso de configuración de una identidad del grupo de aplicaciones y la realización de todos los cambios necesarios. Cuando IIS inicia un proceso de trabajo, debe crear un token que usará el proceso. Cuando se crea este token, IIS agrega automáticamente la pertenencia a IIS_IUSRS al token de procesos de trabajo en tiempo de ejecución. Las cuentas que se ejecutan como "identidades de grupo de aplicaciones" ya no necesitan ser una parte explícita del grupo de IIS_IUSRS. Este cambio le ayuda a configurar sus sistemas con menos obstáculos y hace que su experiencia general sea más favorable.

Si desea deshabilitar esta característica y agregar manualmente cuentas al grupo de IIS_IUSRS, deshabilite esta nueva característica estableciendo el valor manualGroupMembership en "true". En el ejemplo siguiente se muestra cómo se puede hacer esto en defaultAppPool:

<applicationPools>
    <add name="DefaultAppPool">
        <processModel manualGroupMembership="true" />
    </add>
</applicationPools >