REVISIÓN: ASP.NET no funciona con la cuenta ASPNET predeterminada en un controlador de dominio

Seleccione idioma Seleccione idioma
Id. de artículo: 315158 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

Síntomas

Después de instalar Microsoft Visual Studio .NET o Microsoft .NET Framework en un controlador de dominio o en un controlador de dominio de reserva, si intenta ejecutar una aplicación ASP.NET, el explorador muestra el siguiente mensaje de error:
Aplicación de servidor no disponible

La aplicación web a la que está intentando obtener acceso en este servidor web no está disponible en este momento.

Presione el botón "Actualizar" del explorador web para reintentar la solicitud.
Además, se registra el suceso siguiente en el registro de sucesos de aplicación del sistema:
aspnet_wp.exe no se pudo lanzar porque el nombre de usuario o la contraseña proporcionados en la sección processModel del archivo de configuración no son válidos.
aspnet_wp.exe no se pudo iniciar.
HRESULT del error: 80004005
Esto se aplica a Internet Information Services (IIS) 5.0 o posterior.

Causa

De manera predeterminada, ASP.NET ejecuta su proceso de trabajo (Aspnet_wp.exe) con una cuenta débil (la cuenta de la máquina local, denominada ASPNET) para proporcionar un entorno más seguro. En un controlador de dominio o en uno de reserva, todas las cuentas de usuario son cuentas de dominio y no son cuentas de máquina local. Por tanto, Aspnet_wp.exe no se inicia porque no puede encontrar una cuenta local llamada "nombre_máquina_local\ASPNET". Para proporcionar una cuenta de usuario válida en el controlador de dominio, debe especificar una cuenta explícita en la sección <processModel> del archivo Machine.config o debe usar la cuenta SYSTEM.

Nota: si intenta depurar (haga clic en el botón Inicio) antes de explorar la página, puede experimentar el mismo problema.

Solución

Como solución alternativa para este problema, utilice uno de los métodos siguientes:
  • Cree una cuenta débil que tenga los permisos correctos y, después, configure la sección <processModel> del archivo Machine.config para usar esa cuenta.
  • Configure el atributo userName como SYSTEM en la sección <processModel> del archivo Machine.config.
  • Configure la sección <processModel> del archivo Machine.config para usar una cuenta de administrador.
Nota: permitir que las aplicaciones ASP.NET se ejecuten como SYSTEM o como una cuenta de administrador tiene graves implicaciones de seguridad. Si usa cualquiera de estos métodos de evitar el problema, el código que se ejecuta en el proceso Aspnet_wp.exe tendrá acceso al controlador de dominio y a la configuración del dominio. Los archivos ejecutables que se iniciaron desde el proceso Aspnet_wp.exe se ejecutan en el mismo contexto y también tienen acceso al controlador de dominio.

Por tanto, Microsoft recomienda que use el primer modo de evitar el problema. Para utilizar el primer modo de evitar el problema, siga estos pasos:
  1. Cree una cuenta de usuario en el equipo llamado ASPUSER y agregue después esta cuenta al grupo Usuarios.

    Nota: también puede usar la cuenta ASPNET que creó .NET Framework si cambia la contraseña de esta cuenta. Debe conocer la contraseña de esta cuenta, porque más adelante en estos pasos la agrega a la sección <processModel>.
  2. Otorgue a la cuenta ASPUSER o a la cuenta ASPNET el derecho de usuario Iniciar sesión como proceso por lotes. Asegúrese de que aparece este cambio en la configuración de la directiva de seguridad local.

    Nota: para otorgar el derecho de usuario Iniciar sesión como proceso por lotes a esta cuenta, quizá tenga que otorgar ese derecho de usuario a cada una de las siguientes directivas de seguridad (Desde el Panel de control/Herramientas administrativas):

    • Directiva de seguridad del controlador de dominio
    • Directiva de seguridad de dominio
    • Directiva de seguridad local

    Nota: quizá tenga que reiniciar el servidor para que estos cambios surtan efecto.
  3. Asegúrese de que la cuenta ASPUSER o la cuenta ASPNET tiene permiso para obtener acceso a todos los directorios y archivos necesarios para iniciar el proceso Aspnet_wp.exe y servir las páginas ASP.NET. Para obtener información adicional acerca de qué permisos debe otorgar a esta cuenta, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    317012 Identidad de proceso y solicitud en ASP.NET
  4. Abra el archivo Machine.config. La ruta de acceso al archivo es: %Systemroot%\Microsoft.NET\Framework\v1.0.3705\CONFIG.
  5. En la sección <processModel> del archivo Machine.config, cambie los atributos userName y password por el nombre y la contraseña de la cuenta que creó en el paso 1. Por ejemplo:
    userName="DomainName\ASPUSER" password="ASPUSERpassword"
  6. Guarde los cambios en el archivo Machine.config.

Estado

Microsoft ha confirmado que se trata de un error de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a". Este error se corrigió en ASP.NET (que se incluye con .NET Framework) 1.1.

Referencias

Para obtener información adicional acerca de la seguridad de ASP.NET, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
306590 Introducción a la seguridad de ASP.NET
Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
316989 Aparece un mensaje de error cuando crea una conexión de datos de confianza desde ASP.NET a SQL Server: "Error al iniciar la sesión para el usuario 'nombre_de_cuenta'"
329290 Cómo emplear la utilidad de ASP.NET para cifrar credenciales y cadenas de conexión de estado de sesión
317012 Identidad de proceso y solicitud en ASP.NET

Propiedades

Id. de artículo: 315158 - Última revisión: viernes, 01 de febrero de 2008 - Versión: 5.4
La información de este artículo se refiere a:
  • Microsoft ASP.NET 1.0
  • Microsoft Internet Information Services 5.0
  • Microsoft Mobile Internet Toolkit 1.0
Palabras clave: 
kbproductlink kbfix kbbug kbconfig kbhttpruntime kbreadme kbsecurity KB315158
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com