28.11.2012 Views

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

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

{Insert figure: CH12 - SQL Application Roles.gif}<br />

Ilustración 12.5<br />

Utilizar varias funciones de aplicación SQL<br />

En <strong>la</strong> ilustración 12.5, <strong>la</strong> id<strong>en</strong>tidad ServiceId<strong>en</strong>tity1 que se utiliza para t<strong>en</strong>er <strong>acceso</strong><br />

a <strong>la</strong> base de <strong>datos</strong> se obti<strong>en</strong>e normalm<strong>en</strong>te <strong>del</strong> proceso de trabajo de <strong>ASP</strong>.NET o de<br />

una id<strong>en</strong>tidad <strong>del</strong> proceso de <strong>la</strong> aplicación de servidor de Servicios Empresariales.<br />

En esta opción, se utiliza <strong>la</strong> misma id<strong>en</strong>tidad de servicio (y por lo tanto <strong>la</strong> misma<br />

conexión) para conectarse a SQL Server. Las funciones de aplicación SQL se<br />

activan con el procedimi<strong>en</strong>to almac<strong>en</strong>ado integrado sp_setapprole, que se basa <strong>en</strong><br />

<strong>la</strong> pert<strong>en</strong><strong>en</strong>cia a <strong>la</strong> función <strong>del</strong> l<strong>la</strong>mador. Este procedimi<strong>en</strong>to almac<strong>en</strong>ado requiere el<br />

nombre de <strong>la</strong> función y una contraseña.<br />

Si utiliza esta opción, debe almac<strong>en</strong>ar de forma segura <strong>la</strong>s cred<strong>en</strong>ciales <strong>del</strong> nombre<br />

de <strong>la</strong> función y <strong>la</strong> contraseña. Para obt<strong>en</strong>er más consejos y técnicas de<br />

almac<strong>en</strong>ami<strong>en</strong>to de secretos, consulte "Almac<strong>en</strong>ar cad<strong>en</strong>as de conexión a bases de<br />

<strong>datos</strong> de forma segura" más ade<strong>la</strong>nte <strong>en</strong> este capítulo.<br />

Limitaciones de <strong>la</strong>s funciones de aplicación SQL<br />

<strong>De</strong>be t<strong>en</strong>er <strong>en</strong> cu<strong>en</strong>ta los sigui<strong>en</strong>tes puntos principales antes de elegir el uso de <strong>la</strong>s<br />

funciones de aplicación SQL:<br />

Necesita administrar cred<strong>en</strong>ciales de <strong>la</strong>s funciones de aplicación SQL. <strong>De</strong>be<br />

l<strong>la</strong>mar al procedimi<strong>en</strong>to almac<strong>en</strong>ado sp_setapprole; para ello, pase un<br />

nombre de <strong>la</strong> función y una contraseña para cada conexión. Si está activando<br />

una función de aplicación SQL desde código administrado, no será seguro<br />

t<strong>en</strong>er incrustada <strong>en</strong> el <strong>en</strong>samb<strong>la</strong>do una contraseña con texto sin cifrar.<br />

Las cred<strong>en</strong>ciales de <strong>la</strong> función de aplicación SQL se pasan a <strong>la</strong> base de <strong>datos</strong><br />

como texto sin cifrar. <strong>De</strong>bería asegurar<strong>la</strong>s <strong>en</strong> <strong>la</strong> red mediante IPSec o SSL<br />

<strong>en</strong>tre el servidor de <strong>aplicaciones</strong> y el servidor de base de <strong>datos</strong>.<br />

Una vez que se activa una función de aplicación SQL <strong>en</strong> una conexión, ya no<br />

puede desactivarse. Permanece activa hasta que se cierra <strong>la</strong> conexión.<br />

Tampoco es posible intercambiar dos o más funciones <strong>en</strong> <strong>la</strong> misma conexión.<br />

Utilice funciones de aplicación SQL únicam<strong>en</strong>te cuando <strong>la</strong> aplicación utilice<br />

una id<strong>en</strong>tidad fija única para conectarse a <strong>la</strong> base de <strong>datos</strong>. En otras pa<strong>la</strong>bras,<br />

utilíce<strong>la</strong>s únicam<strong>en</strong>te cuando <strong>la</strong> aplicación utilice el mo<strong>del</strong>o de subsistema de<br />

confianza.<br />

Si cambia el contexto de seguridad de <strong>la</strong> conexión (por ejemplo, si se utilizara<br />

el contexto <strong>del</strong> l<strong>la</strong>mador original para conectarse a <strong>la</strong> base de <strong>datos</strong>), <strong>la</strong>s<br />

funciones de aplicación SQL no funcionan junto con <strong>la</strong> agrupación de <strong>la</strong><br />

conexión.<br />

Para obt<strong>en</strong>er más información, consulte el artículo Q229564, "PRB: SQL<br />

Application Role Errors with OLE DB Resource Pooling" (<strong>en</strong> inglés), <strong>en</strong><br />

Microsoft Knowledge Base.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!