Type.IsSecurityCritical Propriedade

Definição

Obtém um valor que indica se o tipo atual é crítico para segurança ou para segurança no nível de confiança atual, podendo assim executar operações críticas.

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

Valor de Propriedade

true se o tipo atual for crítico para a segurança ou para segurança-crítico ao nível de confiança atual; false Se for transparente.

Observações

As IsSecurityCriticalpropriedades , IsSecuritySafeCritical, e IsSecurityTransparent reportam o nível de transparência do tipo no seu nível de confiança atual, conforme determinado pelo runtime de linguagem comum (CLR). As combinações destas propriedades são apresentadas na tabela seguinte:

Nível de segurança ÉCríticoParaSegurança IsSecuritySafeCritical IsSecurityTransparent
Crítico true false false
Segurança crítica true true false
Transparent false false true

Usar essas propriedades é muito mais simples do que examinar as anotações de segurança de um assembly e seus tipos, verificar o nível de confiança atual e tentar duplicar as regras do tempo de execução.

Importante

Para assembleias de confiança parcial, o valor desta propriedade depende do nível de confiança atual da assembleia. Se o assembly for carregado num domínio de aplicação parcialmente confiável (por exemplo, num domínio sandbox), então o runtime ignora as anotações de segurança do assembly. O conjunto e todos os seus tipos são tratados como transparentes. O runtime presta atenção às anotações de segurança de um assembly de confiança parcial apenas quando esse assembly está carregado num domínio de aplicação totalmente confiável (por exemplo, no domínio de aplicação padrão de uma aplicação de ambiente de trabalho). Em contraste, um assembly de confiança (ou seja, um assembly com nome forte instalado na cache global de assembly) está sempre carregado com total confiança independentemente do nível de confiança do domínio de aplicação, pelo que o seu nível de confiança atual é sempre totalmente confiável. Pode determinar os níveis atuais de confiança dos assemblies e domínios de aplicação usando as Assembly.IsFullyTrusted propriedades e.AppDomain.IsFullyTrusted

Para mais informações sobre reflexão e transparência, consulte Considerações de Segurança para a Reflexão. Para informações sobre transparência, consulte Alterações de Segurança.

Aplica-se a

Ver também