Escribir bibliotecas de clases seguras

Los errores de programación en las bibliotecas de clases pueden exponer puntos vulnerables en la seguridad porque éstas suelen tener acceso a los recursos protegidos y a código no administrado. Si diseña bibliotecas de clases, necesita saber en qué consiste la seguridad de acceso del código y recordar que debe proteger la biblioteca de clases.

En la tabla siguiente se describen los tres elementos principales que se deben tener en cuenta al proteger una biblioteca de clases.

Elemento de seguridad

Descripción

Petición de seguridad

Las peticiones se aplican en el nivel de clase y de método como un mecanismo para exigir que los llamadores del código tengan los permisos que se desea concederles. Las peticiones invocan un recorrido de pila, que consiste en que todos los llamadores que llaman directa o indirectamente al código se comprueban en la pila cuando se llama al código. Normalmente, las peticiones se utilizan en las bibliotecas de clases para ayudar a proteger los recursos.

Reemplazo de seguridad

Los reemplazos se aplican en el ámbito de clases y métodos como medio de anular determinadas decisiones de seguridad tomadas por el motor en tiempo de ejecución. Se invocan cuando los llamadores utilizan el código. Se utilizan para detener los recorridos de pila y limitar el acceso de los llamadores a los que ya se han concedido ciertos permisos.

NotaNota
Los cambios de seguridad en .NET Framework 4 han hecho que algunos reemplazos se hayan quedado obsoletos.Para obtener información sobre estos cambios, vea Cambios de seguridad en .NET Framework.
Nota de precauciónPrecaución
Los reemplazos pueden ser peligrosos y se deben utilizar con cuidado.

Optimización de seguridad

La transparencia, que se introdujo en .NET Framework 4, proporciona nuevas maneras de optimizar la seguridad de acceso del código. Para obtener más información, vea Código transparente en seguridad.

Vea también

Conceptos

Peticiones de seguridad

Invalidar comprobaciones de seguridad

Seguridad declarativa utilizada con ámbito de clase y miembro

Optimizaciones de seguridad

Otros recursos

Seguridad de acceso del código