App Pool Identities en IIS 7.5 y superior


-- Descargar App Pool Identities en IIS 7.5 y superior como PDF --


Resumen

IIS 7.5 viene con una nueva manera de manejar las identities(el usuario con el cual corre un sitio), se basa en que cada application pool tiene una identidad independiente de las otras. La complicación viene a la hora de darle permisos sobre la carpeta del sitio, ya que estos usuarios no son visibles(son virtuales)

Detalles:

A partir de Windows 7 y 2008 R2, IIS viene en su versión 7.5. Esta versión es muy distinta a la anterior, 6.0, lo cual supone problemas para los que veníamos acostumbrados al viejito.

Es cierto que esto tiene una razón, que es la seguridad. Si tenemos en cuenta que IIS corre como un usuario interno en lugar de utilizar el de un usuario logueado(ya que hace falta que IIS corra aún cuando el usuario se desloguee)

Las últimas versiones de IIS corrían con el usuario network service, el cual tiene los permisos de un usuario estándar. Esto implica que de ser comprometido, el impacto no alcanzaría al servidor en sí. El problema vino cuando muchos otros serivicios comenzaron a usar este mismo usuario, por lo que el riesgo aumentó considerablemente. Sobre todo tratándose de aplicaciones de terceros que corran sobre IIS.

image

Como decíamos antes, a partir de la versión 7.5, cada application pool, al ser creado, genera una nueva identidad con el nombre del app pool. Cabe aclarar, que esto podía lograrse antes, pero de manera manual y los diferentes app pools aún usaban el usuario network service(ya nos expandiremos en esto más abajo). De hecho servía también para evitar que problemas en un sitio en particular, (tales como algún bug en el código que provocara que el app pool se detuviera anormalmente) afectaran al resto de los sitios usando el mismo app pool.

En la situación que mencionábamos antes, al momento de dar permisos a nuestro sitio sobre la carpeta de archivos propios. Si, por ejemplo, colocamos los archivos LUEGO de haber creado el sitio en IIS, la asignación de permisos no va a ser automática y vamos a tener que lidiar con ello. En versiones anteriores de IIS, simplemente dábamos permisos al usuario network service, que SI era un usuario real. Ahora en cambio, no se trata de usuarios visibles desde la interfaz gráfica de administración de usuarios o de permisos.

Por suerte, hay una manera. Siendo que buscar el usuario no funcionará, debemos tipearlo a mano, con la siguiente sintaxis:

IIS APPPOOL\<nombre del pool>
image

Al comprobar el usuario con «Check Names» veremos que, efectivamente lo reconoce

image

Pueden ver el artículo original aquí:

http://blogs.msdn.com/b/warnov/archive/2011/07/05/configurando-identidades-y-accesos-en-iis-7-5.aspx?CommentPosted=true#commentmessage

Una complicación adicional puede darse si montas tu servidor web en un Controlador de Dominio(Práctica no muy recomendable, a mi gusto, pero que puede darse)

En este caso, la única manera de resolverlo, es a través de la línea de comandos, usando icacls:

icacls c:\wwwroot /grant «IIS AppPool\DefaultAppPool»:(CI)(OI)(M)

Fuente: http://serverfault.com/questions/351898/is-it-possible-to-use-iis-7-application-pool-identities-on-a-2008-domain-control

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *