Wednesday, March 10, 2010

¿Qué es La impersonalizacion? (impersonate Asp.Net - suplantacion)

El archivo Web.config es un archivo XML en el cual se definen las configuraciones de las aplicaciones asp.net, aqui es donde se especifica la impersonalización.

La impersonalización es un concepto a tomar en cuenta en la seguridad en las aplicaciones web. Sin duda, habrán recursos a los que no todo el mundo tendrá acceso, por tanto, por seguridad, estarán restringidos y se requerirá tener permisos para poder usarlos. La pregunta es ¿qué hacer para que cualquier usuario de nuestra aplicación web tenga permisos para usar recursos sin poner en peligro la seguridad?

Una respuesta (entre otras) sería la impersonalización. Cada aplicación web cuenta con su archivo de configuración (Web.config) dentro de este archivo definimos el usuario con el que se va a conectar la aplicación.

Con la etiqueta Identity del web.config podemos impersonar cada aplicación ASP.NET para que se ejecute con un usuario distinto al del framework. Tambien es posible indicar un usuario distinto al del IIS en la misma etiqueta Identity. Indicándole un nombre de usuario y contraseña podemos hacer que la aplicación ASP.NET arranque con este usuario.




Resumen:

**Si la impersonalización False está habilitada entonces la aplicación se ejecuta bajo el usuario definido en el processModel.


**Si la impersonalización está en TRUE, pero no hay definido un usuario perteneciente a una cuenta de Windows, ASP.NET impersona al usuario pasado por IIS.

**Si la impersonalización está en TRUE y hay definido un usuario de Windows, en este caso corre bajo la identidad del usuario definido en la entrada indentity