Type.IsSecurityTransparent Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém um valor que indica que se o tipo atual é transparente no nível de confiança atual e, portanto, não pode realizar operações críticas.
public:
virtual property bool IsSecurityTransparent { bool get(); };
public virtual bool IsSecurityTransparent { get; }
member this.IsSecurityTransparent : bool
Public Overridable ReadOnly Property IsSecurityTransparent As Boolean
Valor da propriedade
true
se o tipo for transparente de segurança no nível de confiança atual; caso contrário, false
.
Comentários
Se essa propriedade retornar true
, as propriedades e IsSecurityCritical IsSecuritySafeCritical retornarão false
.
As propriedades , e relatam o nível de transparência do tipo em seu nível de confiança atual, conforme determinado pelo IsSecurityCritical IsSecuritySafeCritical IsSecurityTransparent CLR (Common Language Runtime). 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 runtime.
Importante
Para assemblies de confiança parcial, o valor desta propriedade depende do nível de confiança atual do 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 runtime irá ignorar as anotações de segurança do assembly. O assembly e todos os tipos são tratados como transparentes. O runtime 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). 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. É 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.
Para obter mais informações sobre reflexão e transparência, consulte Considerações de segurança para reflexão. Para obter informações sobre transparência, consulte Alterações de segurança.