Lo primero que debemos saber es que versión de IIS tenemos, ya que dependiendo de ello habrán unos valores por defecto:
- En IIS 7.5 se usa por defecto la identidad "AppPoolIdentiy" y la cuenta asociada es "IIS AppPool\<Nombre del Application Pool>". Así, si mi grupo de aplicaciones (Application Pool) se denomina "DefaultAppPool", esta sería la identidad que usaríamos para la asignación de permisos.
- En IIS 7, aunque disponemos también de la posibilidad de asignar la identidad AppPoolIdentiy, por defecto está asignada a "NetworkService", por tanto la identidad para los permisos es "Servicio de Red"
La respuesta anterior resuelve la mayoría de casos, pero no todos, si se ha modificado el modo de canalización o el grupo de aplicaciones por defecto, puede que tengas que leer un poco más y, de paso, aprenderemos como funciona todo esto.
Grupo de aplicaciones (Application Pool)
Grupos de aplicaciones en IIS |
Cuando añades un sitio Web a IIS lo puedes hacer de dos formas, copiando el proyecto directamente bajo la carpeta de publicación de IIS "Inetpub\wwwroot" o creando una aplicación IIS. En el primer caso utlizará el Application Pool por defecto y en el segundo el que hayas especificado al crear la aplicación.
Si vemos la configuración avanzada del Application Pool seleccionado (botón derecho y seleccionamos configuración avanzada), podremos determinar la identidad que tiene asociada:
Para modificarla, basta con pulsar el botón con los puntos suspensivos:
Y por fin aquí podemos observar las cuentas integradas que podemos asociar al Application Pool seleccionado, también podríamos utilizar, desde esta misma ventana, una cuenta del Sistema.
Según la opción seleccionada, ésta es la lista de cuentas que debemos usar al asignar permisos:
LocalService Servicio local LocalSystem System NetworkService Servicio de red ApplicationPoolIdentity <Nombre del grupo de aplicaciones>
Otra forma de deducir el usuario que necesitas para asignar permisos es ejecutando tu Web y observando que en la lista de procesos del sistema operativo, debería aparece uno denominado "w3wp.exe", que es el proceso asociado al Application Pool.
Asignación de permisos
Una vez hemos averiguado la cuenta, basta con acceder con el explorador de archivos a la carpeta en la que deseamos cambiar los permisos y asignar los permisos usando la identidad corresponde.
Ojo porque al crear un Application Pool, lo que realmente crea windows es un identificador de seguridad (SID), que lo podremos emplear en la asignación de permisos, pero no es una cuenta de usuario como tal y por tanto no aparecerá en el listado de cuentas del Sistema. Es por esto que debemos poner "a pelo" el nombre del identificador, si estamos usando "ApplicationPoolIdentity".
Conclusión
Tanto si has llegado por el camino corto, como por el largo, ahora deberíamos poder cambiar los permisos cuando de cualquier proyecto IIS.
Si quieres ampliar información sobre el funcionamiento del Application Pool te recomiendo algunos de estos enlaces:
No hay comentarios:
Publicar un comentario