FieldInfo.IsSecurityTransparent Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene un valor que indica si el campo actual es transparente en el nivel de confianza actual.
public:
virtual property bool IsSecurityTransparent { bool get(); };
public virtual bool IsSecurityTransparent { get; }
member this.IsSecurityTransparent : bool
Public Overridable ReadOnly Property IsSecurityTransparent As Boolean
Valor de propiedad
Es true
si el campo es transparente para la seguridad en el nivel de confianza actual; de lo contrario, es false
.
Comentarios
Las IsSecurityCriticalpropiedades , IsSecuritySafeCriticaly IsSecurityTransparent notifican el nivel de transparencia del campo en su nivel de confianza actual, según lo determinado por Common Language Runtime (CLR). Las combinaciones de estas propiedades se muestran en la tabla siguiente:
Nivel de seguridad | IsSecurityCritical | IsSecuritySafeCritical | IsSecurityTransparent |
---|---|---|---|
Crítico | true |
false |
false |
Crítico para la seguridad | true |
true |
false |
Transparente | false |
false |
true |
El uso de estas propiedades es mucho más sencillo que examinar las anotaciones de seguridad de un ensamblado y sus tipos y miembros, comprobar el nivel de confianza actual e intentar duplicar las reglas del entorno de ejecución.
Importante
Para los ensamblados de confianza parcial, el valor de esta propiedad depende del nivel de confianza actual del ensamblado. Si el ensamblado se carga en un dominio de aplicación de confianza parcial (por ejemplo, en un dominio de aplicación de espacio aislado), el tiempo de ejecución omite las anotaciones de seguridad del ensamblado. El ensamblado y todos sus tipos se tratan como transparentes. El tiempo de ejecución presta atención a las anotaciones de seguridad de un ensamblado de confianza parcial solo cuando ese ensamblado se carga en un dominio de aplicación de plena confianza (por ejemplo, en el dominio de aplicación predeterminado de una aplicación de escritorio). Por el contrario, un ensamblado de confianza (es decir, un ensamblado con nombre seguro instalado en la caché global de ensamblados) siempre se carga con plena confianza, independientemente del nivel de confianza del dominio de aplicación, por lo que su nivel de confianza actual siempre es de plena confianza. Puede determinar los niveles de confianza actuales de ensamblados y dominios de aplicación mediante las Assembly.IsFullyTrusted propiedades y AppDomain.IsFullyTrusted .
Para obtener más información sobre la reflexión y la transparencia, vea Consideraciones de seguridad para la reflexión. Para obtener información sobre la transparencia, consulte Cambios de seguridad.