Type.IsSecuritySafeCritical Propriedade

Definição

Obtém um valor que indica se o tipo é crítico para segurança e disponível no código transparente no nível de confiança atual, ou seja, se ele pode realizar operações críticas e ser acessado por código transparente.Gets a value that indicates whether the current type is security-safe-critical at the current trust level; that is, whether it can perform critical operations and can be accessed by transparent code.

public:
 virtual property bool IsSecuritySafeCritical { bool get(); };
public virtual bool IsSecuritySafeCritical { get; }
member this.IsSecuritySafeCritical : bool
Public Overridable ReadOnly Property IsSecuritySafeCritical As Boolean

Valor da propriedade

trueSe o tipo atual for segurança-seguro – crítico no nível de confiança atual; false se for de segurança crítica ou transparente.true if the current type is security-safe-critical at the current trust level; false if it is security-critical or transparent.

Comentários

As IsSecurityCriticalpropriedades IsSecuritySafeCritical, eIsSecurityTransparent relatam o nível de transparência do tipo em seu nível de confiança atual, conforme determinado pelo Common Language Runtime (CLR).The IsSecurityCritical, IsSecuritySafeCritical, and IsSecurityTransparent properties report the transparency level of the type at its current trust level, as determined by the common language runtime (CLR). As combinações destas propriedades são mostradas na seguinte tabela:The combinations of these properties are shown in the following table:

Nível de segurançaSecurity level IsSecurityCriticalIsSecurityCritical IsSecuritySafeCriticalIsSecuritySafeCritical IsSecurityTransparentIsSecurityTransparent
CríticoCritical true false false
Segurança críticaSafe critical true true false
TransparenteTransparent false false true

Usar essas propriedade é muito mais simples que examinar as anotações de segurança de um assembly e seus tipos, verificando o nível de confiança atual e tentando duplicar as regras do tempo de execução.Using these properties is much simpler than examining the security annotations of an assembly and its types, checking the current trust level, and attempting to duplicate the runtime's rules.

Importante

Para assemblies de confiança parcial, o valor desta propriedade depende do nível de confiança atual do assembly.For partial-trust assemblies, the value of this property depends on the current trust level of the assembly. Se o assembly for carregado em um domínio de aplicativo parcialmente confiável (por exemplo, em um domínio de aplicativo em área restrita), o tempo de execução irá ignorar as anotações de segurança do assembly.If the assembly is loaded into a partially trusted application domain (for example, into a sandboxed application domain), then the runtime ignores the security annotations of the assembly. O assembly e todos os tipos são tratados como transparentes.The assembly and all its types are treated as transparent. O tempo de execução só presta atenção nas anotações de segurança de um assembly de confiança parcial quando o assembly é carregado em um domínio de aplicativo totalmente confiável (por exemplo, no domínio de aplicativo padrão de um aplicativo da área de trabalho).The runtime pays attention to the security annotations of a partial-trust assembly only when that assembly is loaded into a fully trusted application domain (for example, into the default application domain of a desktop application). Por outro lado, um assembly confiável (ou seja, um assembly de nome forte que está instalado no cache de assembly global) é sempre carregado com confiança total, independentemente do nível de confiança do domínio do aplicativo, logo, o nível de confiança atual sempre é totalmente confiável.By contrast, a trusted assembly (that is, a strong-named assembly that is installed in the global assembly cache) is always loaded with full trust regardless of the trust level of the application domain, so its current trust level is always fully trusted. É possível determinar os níveis de confiança atuais de assemblies e de domínios de aplicativo usando-se as propriedades Assembly.IsFullyTrusted e AppDomain.IsFullyTrusted.You can determine the current trust levels of assemblies and application domains by using the Assembly.IsFullyTrusted and AppDomain.IsFullyTrusted properties.

Para obter mais informações sobre reflexão e transparência, consulte considerações de segurança para reflexão.For more information about reflection and transparency, see Security Considerations for Reflection. Para obter informações sobre transparência, consulte Security Changes.For information about transparency, see Security Changes.

Aplica-se a

Veja também