Proteja las aserciones
Actualización: noviembre 2007
TypeName |
SecureAsserts |
Identificador de comprobación |
CA2106 |
Category |
Microsoft.Security |
Cambio problemático |
Sí |
Motivo
Un método valida un permiso y no se realiza ninguna comprobación de seguridad en el llamador.
Descripción de la regla
Validar un permiso de seguridad sin realizar ninguna comprobación de seguridad puede dejar una debilidad de seguridad explotable en el código. Un recorrido de pila de seguridad se detiene cuando se valida un permiso de seguridad. Si valida un permiso sin realizar ninguna comprobación en el llamador, éste último podría ejecutar código indirectamente utilizando los permisos del usuario. Sólo debe permitir que se realicen validaciones sin comprobaciones de seguridad cuando esté absolutamente seguro de que la validación no se puede utilizar de manera dañina, a saber, si el código al que se llama es inofensivo, o si no existe ningún modo de que los usuarios pasen información arbitraria al código que llama.
Cómo corregir infracciones
Para corregir una infracción de esta regla, agregue una demanda de seguridad al método o a su tipo declarativo.
Cuándo suprimir advertencias
Únicamente suprima una advertencia de esta regla después de una revisión exhaustiva de la seguridad.