Solución:
Después de pasar horas en este problema, a continuación, se encuentra la solución que funcionó para mí en Windows 7 con IIS 7.5:
La identidad del grupo de aplicaciones asociada con el sitio no era miembro del grupo IIS_IUSRS. Para agregar la identidad del grupo de aplicaciones al grupo, utilicé los siguientes pasos:
- Desde el menú de inicio, seleccione Ejecutar… ingrese lusrmgr.msc y haga clic en Aceptar.
- Seleccione Grupos.
- Haga doble clic en el grupo IIS_IUSRS.
- Haga clic en el botón Agregar …
- Haga clic en el botón Ubicaciones …
- Seleccione el nombre de su computadora (debe estar en la parte superior de la lista) y haga clic en Aceptar.
- En el cuadro de texto debajo de “Ingrese los nombres de los objetos para seleccionar” ingrese: iis apppool
por ejemplo, es apppool dev - Haga clic en el botón Comprobar nombres. Si aparece un cuadro de diálogo Nombre no encontrado, verifique que la identidad del grupo de aplicaciones ingresada coincida con la identidad del grupo de aplicaciones asociada con el sitio. Si no aparece un cuadro de diálogo, haga clic en Aceptar.
Repita los pasos del 7 al 8 para cada identidad de grupo de aplicaciones que desee agregar. Haga clic en Aceptar.
Ahora, la identidad del grupo de aplicaciones es miembro del grupo IIS_IUSRS que ya debería tener acceso al directorio de archivos temporales de ASP.NET. Después de todo eso, todavía recibía el error y descubrí (gracias al monitor de proceso) que era porque la identidad del grupo de aplicaciones no podía escribir en el directorio temporal de Windows. Para resolver esto, agregué el grupo IIS_IUSRS al directorio temporal de Windows con permisos de lectura / escritura.
- Desde el menú de inicio, seleccione Ejecutar … ingrese% windir% y haga clic en Aceptar.
- Haga clic derecho en el directorio Temp y seleccione Propiedades.
- Haga clic en la pestaña Seguridad.
- Haga clic en el botón Editar …
- Haga clic en el botón Agregar …
- Haga clic en el botón Ubicaciones …
- Seleccione el nombre de su computadora (debe estar en la parte superior de la lista) y haga clic en Aceptar.
- En el cuadro de texto debajo de “Ingrese los nombres de los objetos para seleccionar” ingrese: iis_iusrs
- Haga clic en el botón Comprobar nombres. Si aparece un cuadro de diálogo Nombre no encontrado, compruebe si hay errores tipográficos. Si no aparece un cuadro de diálogo, haga clic en Aceptar.
- Seleccione el grupo IIS_IUSRS agregado y en el cuadro Permisos para todos a continuación seleccione: Permitir lectura y Permitir escritura
- Haga clic en Aceptar. Aparecerá un cuadro de diálogo que indica que “Está a punto de cambiar la configuración de permisos en las carpetas del sistema, lo que puede provocar problemas de acceso inesperados y reducir la seguridad. ¿Desea continuar?”
- Haga clic en Sí.
- Haga clic en Aceptar
Solucioné este problema configurando el control total para ‘SERVICIO DE RED’ a la temperatura del sistema:
C: Windows temp
El mensaje de error informado por el servidor web es un poco engañoso. Espero que esto ayude.
Estuve luchando con este problema por un tiempo. Encontré algunas soluciones en la web que implicaban establecer permisos en el directorio “Archivos temporales de ASP.NET” en el mensaje de error. Pero incluso abrirlo a “Todos” no funcionó.
Luego, finalmente, los siguientes pasos lo solucionaron:
- Vaya a IIS AppPool para este sitio
- Haga clic con el botón derecho en el grupo de aplicaciones y vaya a Configuración avanzada
- Cambiar la identidad de “ApplicationPoolIdentity” a “NetworkService”
También puede haber algunos otros pasos necesarios, que hice durante la resolución de problemas, pero este es el paso clave. Por alguna razón, no se concede acceso a la identidad del grupo de aplicaciones (como IIS_APPPOOL SiteName) cuando “Todos” sí. Estoy seguro de que alguien más puede arrojar algo de luz sobre por qué este es el caso … Esperamos que esto ayude a otros a resolver este frustrante problema.