ApplicationPoolIdentity no tiene permiso de escritura para ASP.NET App_Data carpeta

Este artículo le ayuda a resolver el problema que se produce un error (acceso denegado) cuando una aplicación web escribe datos en la carpeta ASP.NET App_Data web.

Versión original del producto:   Internet Information Services 7.5 y versiones posteriores
Número KB original:   2005172

Síntomas

Se crea una aplicación web con Microsoft Visual Studio y, a continuación, se publica en Internet Information Services (IIS) 7.5 o una versión posterior. Como parte del procesamiento de solicitudes de la aplicación, debe escribir datos en la carpeta App_Data del servidor. Por ejemplo, la aplicación usa un SQLDataSource o XMLDataSource . Cuando intenta hacerlo, se muestra un mensaje de error similar al siguiente:

Detalles de la excepción: System.UnauthorizedAccessException: se deniega el acceso a la ruta de acceso [ruta App_Data carpeta].

Causa

A partir de IIS 7.5 y versiones posteriores, la identidad predeterminada de un grupo de aplicaciones es ApplicationPoolIdentity. Cuando se crea una aplicación web mediante Visual Studio, la carpeta App_Data no se configura automáticamente para permitir el acceso de escritura para ApplicationPoolIdentity. Por lo tanto, se producirá un error al intentar escribir en App_Data carpeta.

Solución

Para evitar este comportamiento, conceda permisos de ACL de lectura y escritura a ApplicationPoolIdentity (IIS APPPOOL\ApplicationPool) en la carpeta App_Data escritura.

Más información

ApplicationPoolIdentity es una cuenta de servicio administrada, que es un nuevo concepto introducido en Windows Server 2008 R2. Para obtener más información sobre las cuentas de servicio administradas, vea Novedades de las cuentas de servicio