De la Seguridad del acceso a datos en aplicaciones ASP ... - Willy .Net
De la Seguridad del acceso a datos en aplicaciones ASP ... - Willy .Net
De la Seguridad del acceso a datos en aplicaciones ASP ... - Willy .Net
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Empresariales (COM+) que se ejecute bajo una id<strong>en</strong>tidad específica o bi<strong>en</strong> se puede<br />
escribir código que utilice <strong>la</strong> API LogonUser para llevar a cabo <strong>la</strong> sup<strong>la</strong>ntación.<br />
El uso de compon<strong>en</strong>tes revisados fuera <strong>del</strong> proceso aum<strong>en</strong>ta <strong>la</strong> seguridad ya que los<br />
saltos de proceso dificultan <strong>la</strong> tarea <strong>del</strong> atacante, especialm<strong>en</strong>te si los procesos se<br />
ejecutan con id<strong>en</strong>tidades difer<strong>en</strong>tes. La otra v<strong>en</strong>taja es que se puede ais<strong>la</strong>r <strong>del</strong> resto<br />
de <strong>la</strong> aplicación el código que requiera más privilegios.<br />
L<strong>la</strong>mar a LogonUser y sup<strong>la</strong>ntar <strong>la</strong> id<strong>en</strong>tidad específica de<br />
Windows<br />
No debería l<strong>la</strong>mar a LogonUser directam<strong>en</strong>te desde <strong>ASP</strong>.NET. En Windows 2000,<br />
esta opción requiere proporcionar al proceso <strong>ASP</strong>.NET <strong>la</strong> id<strong>en</strong>tidad "Actuar como<br />
parte <strong>del</strong> sistema operativo".<br />
Se prefiere <strong>la</strong> opción de l<strong>la</strong>mar a LogonUser fuera <strong>del</strong> proceso <strong>ASP</strong>.NET mediante<br />
un compon<strong>en</strong>te revisado <strong>en</strong> una aplicación de servidor de Servicios Empresariales,<br />
tal y como se ha explicado anteriorm<strong>en</strong>te.<br />
Utilizar <strong>la</strong> id<strong>en</strong>tidad <strong>del</strong> l<strong>la</strong>mador original<br />
Para que funcione, es necesario utilizar <strong>la</strong> <strong>del</strong>egación Kerberos y sup<strong>la</strong>ntar el<br />
l<strong>la</strong>mador <strong>en</strong> <strong>la</strong> base de <strong>datos</strong>, directam<strong>en</strong>te desde <strong>ASP</strong>.NET o desde un compon<strong>en</strong>te<br />
revisado.<br />
<strong>De</strong>sde <strong>ASP</strong>.NET, agregue el sigui<strong>en</strong>te código al archivo Web.config de <strong>la</strong> aplicación.<br />
<br />
<strong>De</strong>sde un compon<strong>en</strong>te revisado, l<strong>la</strong>me a CoImpersonateCli<strong>en</strong>t.<br />
Utilizar <strong>la</strong> cu<strong>en</strong>ta anónima de usuario de Internet<br />
Como variación de <strong>la</strong> opción anterior, <strong>en</strong> los esc<strong>en</strong>arios <strong>en</strong> los que <strong>la</strong> aplicación<br />
utiliza <strong>la</strong> aut<strong>en</strong>ticación por formu<strong>la</strong>rios o de Passport (lo que implica <strong>la</strong> aut<strong>en</strong>ticación<br />
anónima de IIS), puede habilitar <strong>la</strong> sup<strong>la</strong>ntación <strong>en</strong> el archivo Web.config de <strong>la</strong><br />
aplicación para poder utilizar <strong>la</strong> cu<strong>en</strong>ta anónima de usuario de Internet para t<strong>en</strong>er<br />
<strong>acceso</strong> a <strong>la</strong> base de <strong>datos</strong>.<br />
<br />
Con IIS configurado para <strong>la</strong> aut<strong>en</strong>ticación anónima, esta configuración provoca que<br />
el código de <strong>la</strong> aplicación Web se ejecute con el testigo de sup<strong>la</strong>ntación <strong>del</strong> usuario<br />
de Internet anónimo. En un <strong>en</strong>torno de alojami<strong>en</strong>to Web, ti<strong>en</strong>e <strong>la</strong> v<strong>en</strong>taja de que<br />
permite realizar por separado <strong>la</strong> auditoría y el seguimi<strong>en</strong>to <strong>del</strong> <strong>acceso</strong> a <strong>la</strong> base de<br />
<strong>datos</strong> desde varias <strong>aplicaciones</strong> Web.<br />
Más información<br />
Para obt<strong>en</strong>er más información y detalles acerca de <strong>la</strong> implem<strong>en</strong>tación<br />
utilizando <strong>la</strong> id<strong>en</strong>tidad <strong>del</strong> l<strong>la</strong>mador original, consulte "Transmitir el l<strong>la</strong>mador<br />
original a <strong>la</strong> base de <strong>datos</strong>" <strong>en</strong> el capítulo 5, "<strong>Seguridad</strong> de intranet."<br />
Para obt<strong>en</strong>er más información acerca de cómo configurar IIS para utilizar <strong>la</strong><br />
cu<strong>en</strong>ta de usuario anónimo, consulte el capítulo 8, "<strong>Seguridad</strong> de <strong>ASP</strong>.NET."<br />
¿Cuándo no se puede utilizar <strong>la</strong> aut<strong>en</strong>ticación de Windows?<br />
En determinados esc<strong>en</strong>arios de <strong>aplicaciones</strong> no es posible utilizar <strong>la</strong> aut<strong>en</strong>ticación de<br />
Windows. Por ejemplo:<br />
El cli<strong>en</strong>te y el servidor de <strong>la</strong> base de <strong>datos</strong> están separados por un servidor de<br />
seguridad que no permite <strong>la</strong> aut<strong>en</strong>ticación de Windows.